@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.
- package/dist/PanoTagPlugin/utils/audio/SharedAudio.d.ts +4 -3
- package/dist/PanoVideoPlugin/VideoMeshController.d.ts +7 -0
- package/dist/index.cjs.js +45 -45
- package/dist/index.js +1972 -1926
- package/dist/index.umd.js +38 -38
- package/dist/shared-utils/audio.d.ts +3 -0
- package/docs/classes/CSS3DRender.html +31 -31
- package/docs/classes/CruisePluginController.html +25 -25
- package/docs/classes/Magnifier.html +20 -20
- package/docs/classes/ModelRoomLabelController.html +11 -11
- package/docs/classes/Object3DHelperController.html +25 -25
- package/docs/classes/PaintBrush.html +15 -15
- package/docs/classes/PanoMeasurePluginLine.html +23 -23
- package/docs/classes/PanoMeasurePluginModel.html +22 -22
- package/docs/classes/PanoMeasurePluginPoint.html +14 -14
- package/docs/classes/PanoMeasurePluginPolyline.html +26 -26
- package/docs/classes/PanoTagPluginController.html +47 -47
- package/docs/classes/Util.BetterTween.html +8 -8
- package/docs/classes/Util.FivePointSelector.html +12 -12
- package/docs/classes/Util.Interval.html +12 -12
- package/docs/classes/Util.Magnifier.html +17 -17
- package/docs/classes/Util.PointDomHelper.html +11 -11
- package/docs/classes/Util.PointHelper.html +11 -11
- package/docs/classes/Util.Rectangle.html +13 -13
- package/docs/enums/CameraMovementEffect.html +7 -7
- package/docs/enums/ContentType.html +19 -19
- package/docs/enums/DIRECTION.html +9 -9
- package/docs/enums/DISPLAY_STRATEGY_TYPE.html +9 -9
- package/docs/enums/DimensionType.html +7 -7
- package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +8 -8
- package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +9 -9
- package/docs/enums/PaintBrushTypeEnum.html +8 -8
- package/docs/enums/PointType.html +7 -7
- package/docs/enums/Rotation.html +8 -8
- package/docs/functions/CSS3DRenderPlugin.html +4 -4
- package/docs/functions/CameraMovementPlugin.html +4 -4
- package/docs/functions/CruisePlugin.html +4 -4
- package/docs/functions/GuideLinePlugin.html +5 -5
- package/docs/functions/ItemLabelPlugin.html +4 -4
- package/docs/functions/MapviewFloorplanPlugin.html +4 -4
- package/docs/functions/ModelChassisCompassPlugin.html +4 -4
- package/docs/functions/ModelEntryDoorGuidePlugin.html +4 -4
- package/docs/functions/ModelFloorplanPlugin.html +4 -4
- package/docs/functions/ModelItemLabelPlugin.html +4 -4
- package/docs/functions/ModelRoomLabelPlugin.html +4 -4
- package/docs/functions/ModelTVVideoPlugin.html +4 -4
- package/docs/functions/ModelViewPlugin.html +4 -4
- package/docs/functions/Object3DHelperPlugin.html +4 -4
- package/docs/functions/PanoCompassPlugin.html +4 -4
- package/docs/functions/PanoCursorRaycasterPlugin.html +4 -4
- package/docs/functions/PanoDoorLabelPlugin.html +4 -4
- package/docs/functions/PanoFloorplanRadarPlugin.html +4 -4
- package/docs/functions/PanoMeasurePlugin.html +4 -4
- package/docs/functions/PanoRulerPlugin.html +4 -4
- package/docs/functions/PanoRulerProPlugin.html +4 -4
- package/docs/functions/PanoSpatialTagPlugin.html +4 -4
- package/docs/functions/PanoTagPlugin.html +4 -4
- package/docs/functions/PanoVideoPlugin.html +4 -4
- package/docs/functions/TopviewFloorplanPlugin.html +4 -4
- package/docs/functions/Util.getCoordsFromClient.html +5 -5
- package/docs/functions/Util.getCoordsFromElement.html +5 -5
- package/docs/functions/Util.getFrameTime.html +5 -5
- package/docs/functions/Util.getIntersectFromRelativePosition.html +5 -5
- package/docs/functions/Util.getRaycasterFromFivePointer.html +5 -5
- package/docs/functions/Util.isNil.html +5 -5
- package/docs/functions/Util.nextFrame.html +5 -5
- package/docs/functions/Util.notNil.html +5 -5
- package/docs/functions/Util.requestAnimationFrameInterval.html +5 -5
- package/docs/functions/Util.tweenProgress.html +5 -5
- package/docs/functions/pluginFlag.html +5 -5
- package/docs/index.html +4 -4
- package/docs/interfaces/AddTagConfig.html +6 -6
- package/docs/interfaces/CSS3DRenderPluginEventMap.html +11 -11
- package/docs/interfaces/CSS3DRenderPluginState.html +8 -8
- package/docs/interfaces/CameraMovementPluginExportType.html +7 -7
- package/docs/interfaces/EventMap.html +15 -15
- package/docs/interfaces/FloorplanBounding.html +8 -8
- package/docs/interfaces/FloorplanData.html +10 -10
- package/docs/interfaces/FloorplanEntrance.html +11 -11
- package/docs/interfaces/FloorplanExtraObject.html +10 -10
- package/docs/interfaces/FloorplanExtraObject3D.html +8 -8
- package/docs/interfaces/FloorplanFloorData.html +9 -9
- package/docs/interfaces/FloorplanImagePosition.html +7 -7
- package/docs/interfaces/FloorplanObserver.html +9 -9
- package/docs/interfaces/FloorplanOutlineItem.html +9 -9
- package/docs/interfaces/FloorplanPosition.html +7 -7
- package/docs/interfaces/FloorplanRoomItem.html +13 -13
- package/docs/interfaces/FloorplanRoomLabelItem.html +7 -7
- package/docs/interfaces/FloorplanServerBounding.html +8 -8
- package/docs/interfaces/FloorplanServerComputedData.html +10 -10
- package/docs/interfaces/FloorplanServerData.html +7 -7
- package/docs/interfaces/FloorplanServerDoorItem.html +10 -10
- package/docs/interfaces/FloorplanServerDoorPosition.html +8 -8
- package/docs/interfaces/FloorplanServerEntrance.html +11 -11
- package/docs/interfaces/FloorplanServerFloorData.html +9 -9
- package/docs/interfaces/FloorplanServerImagePosition.html +7 -7
- package/docs/interfaces/FloorplanServerObserver.html +9 -9
- package/docs/interfaces/FloorplanServerOutlineItem.html +9 -9
- package/docs/interfaces/FloorplanServerPosition.html +7 -7
- package/docs/interfaces/FloorplanServerRoomItem.html +14 -14
- package/docs/interfaces/FloorplanServerRoomLabelItem.html +7 -7
- package/docs/interfaces/HelperOffset.html +8 -8
- package/docs/interfaces/ItemLabelPluginData.html +6 -6
- package/docs/interfaces/ItemLabelPluginExportReturnsType.html +11 -11
- package/docs/interfaces/ItemLabelPluginParametersType.html +9 -9
- package/docs/interfaces/MinMax.html +7 -7
- package/docs/interfaces/ModelChassisCompassPluginData.html +7 -7
- package/docs/interfaces/ModelChassisCompassPluginExportType.html +8 -8
- package/docs/interfaces/ModelChassisCompassPluginParameterType.html +7 -7
- package/docs/interfaces/ModelEntryDoorGuidePluginData.html +8 -8
- package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +8 -8
- package/docs/interfaces/ModelItemLabelPluginData.html +6 -6
- package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +11 -11
- package/docs/interfaces/ModelItemLabelPluginParametersType.html +7 -7
- package/docs/interfaces/ModelRoomLabelPluginData.html +6 -6
- package/docs/interfaces/ModelTVVideoPluginData.html +9 -9
- package/docs/interfaces/ModelTVVideoPluginExportType.html +8 -8
- package/docs/interfaces/ModelTVVideoPluginParameterType.html +6 -6
- package/docs/interfaces/ModelViewPluginExportType.html +11 -11
- package/docs/interfaces/Object3DHelperState.html +8 -8
- package/docs/interfaces/ObjectHelperControllers.html +9 -9
- package/docs/interfaces/PaintBrushAction.html +12 -12
- package/docs/interfaces/PaintBrushConfigs.html +12 -12
- package/docs/interfaces/PaintBrushState.html +10 -10
- package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +10 -10
- package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +5 -5
- package/docs/interfaces/PanoMeasureParameterType.html +12 -12
- package/docs/interfaces/PanoMeasurePluginLineJson.html +8 -8
- package/docs/interfaces/PanoMeasurePluginOpenParameter.html +7 -7
- package/docs/interfaces/PanoMeasurePluginPointJson.html +7 -7
- package/docs/interfaces/PanoMeasurePluginPolylineJson.html +8 -8
- package/docs/interfaces/PanoRulerPluginExportType.html +10 -10
- package/docs/interfaces/PanoRulerPluginOptions.html +7 -7
- package/docs/interfaces/PanoRulerPluginParameterType.html +8 -8
- package/docs/interfaces/PanoRulerProPluginExportType.html +9 -9
- package/docs/interfaces/PanoRulerProPluginOptions.html +7 -7
- package/docs/interfaces/PanoRulerProPluginParameterType.html +7 -7
- package/docs/interfaces/PanoRulerProPluginState.html +8 -8
- package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +5 -5
- package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +5 -5
- package/docs/interfaces/PanoSpatialTagPluginData.html +11 -11
- package/docs/interfaces/PanoSpatialTagPluginDataElement.html +10 -10
- package/docs/interfaces/PanoSpatialTagPluginExportType.html +13 -13
- package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +10 -10
- package/docs/interfaces/PanoSpatialTagPluginParameterType.html +13 -13
- package/docs/interfaces/PanoSpatialTagPluginPointElement.html +11 -11
- package/docs/interfaces/PanoSpatialTagPluginTagElement.html +10 -10
- package/docs/interfaces/PanoVideoPluginType.LoadParams.html +6 -6
- package/docs/interfaces/PanoVideoPluginType.PanoVideoItem.html +8 -8
- package/docs/interfaces/PanoVideoPluginType.PluginData.html +6 -6
- package/docs/interfaces/PanoVideoPluginType.PluginEventMap.html +9 -9
- package/docs/interfaces/PanoVideoPluginType.PluginState.html +6 -6
- package/docs/interfaces/PanoVideoPluginType.VideoItem.html +8 -8
- package/docs/interfaces/PanoVideoPluginType.VideoMeshParams.html +10 -10
- package/docs/interfaces/Point.html +8 -8
- package/docs/interfaces/Room.html +9 -9
- package/docs/interfaces/RoomInfo.html +7 -7
- package/docs/interfaces/RoomLabel.html +14 -14
- package/docs/interfaces/RoomRules.html +5 -5
- package/docs/interfaces/Rooms.html +5 -5
- package/docs/interfaces/Scissor.html +9 -9
- package/docs/interfaces/State.html +8 -8
- package/docs/interfaces/TagCache.html +12 -12
- package/docs/interfaces/TagConfig.html +10 -10
- package/docs/interfaces/TagIconUrl.html +11 -11
- package/docs/interfaces/TagStyle.html +6 -6
- package/docs/interfaces/Tags.html +9 -9
- package/docs/interfaces/TemporaryState.html +6 -6
- package/docs/interfaces/Util.MagnifierParameter.html +11 -11
- package/docs/interfaces/Util.MouseGroupParameter.html +8 -8
- package/docs/modules/PanoVideoPluginType.html +5 -5
- package/docs/modules/Util.html +5 -5
- package/docs/modules.html +4 -4
- package/docs/types/ArrayPosition.html +5 -5
- package/docs/types/AudioAppearance.html +5 -5
- package/docs/types/AudioTagTypeConfigKey.html +5 -5
- package/docs/types/CSS3DRenderExportType.html +5 -5
- package/docs/types/CSS3DRenderPluginExportType.html +5 -5
- package/docs/types/CSS3DRenderPluginParameterType.html +5 -5
- package/docs/types/ClassFunctionParameters.html +5 -5
- package/docs/types/Color.html +5 -5
- package/docs/types/ContentTypeConfigKey.html +5 -5
- package/docs/types/ContentTypeConfigKeySplit.html +5 -5
- package/docs/types/ContentTypeMap.html +5 -5
- package/docs/types/Create3DDomContainerReturnType.html +5 -5
- package/docs/types/Create3DElementReturnType.html +5 -5
- package/docs/types/CruisePluginExportType.html +5 -5
- package/docs/types/Direction-1.html +5 -5
- package/docs/types/Direction4.html +5 -5
- package/docs/types/FloorplanRuleLabels.html +5 -5
- package/docs/types/FloorplanServerRuleLabels.html +5 -5
- package/docs/types/GuideLinePluginExportType.html +5 -5
- package/docs/types/HelperEventMap.html +5 -5
- package/docs/types/LoadTagConfig.html +5 -5
- package/docs/types/MapviewFloorplanPluginParameterType.html +5 -5
- package/docs/types/MapviewFloorplanPluginReturnType.html +5 -5
- package/docs/types/MediaData.html +5 -5
- package/docs/types/MediaStore.html +5 -5
- package/docs/types/ModelElement.html +5 -5
- package/docs/types/ModelEntryDoorGuidePluginParameterType.html +5 -5
- package/docs/types/ModelFloorplanPluginParameterType.html +5 -5
- package/docs/types/ModelFloorplanPluginReturnType.html +5 -5
- package/docs/types/ModelRoomLabelPluginParameters.html +5 -5
- package/docs/types/ModelRoomLabelPluginReturnType.html +5 -5
- package/docs/types/MoveArgs.html +5 -5
- package/docs/types/MoveOpts.html +5 -5
- package/docs/types/Object3DHelperEventMap.html +5 -5
- package/docs/types/ObjectFit.html +5 -5
- package/docs/types/PaintBrushEventMap.html +5 -5
- package/docs/types/PanoCompassPluginData.html +5 -5
- package/docs/types/PanoCompassPluginExportType.html +5 -5
- package/docs/types/PanoCompassPluginParameterType.html +5 -5
- package/docs/types/PanoFloorplanRadarPluginParameterType.html +5 -5
- package/docs/types/PanoFloorplanRadarPluginReturnType.html +5 -5
- package/docs/types/PanoIndex.html +5 -5
- package/docs/types/PanoMeasurePluginEvent.html +5 -5
- package/docs/types/PanoMeasureReturnType.html +5 -5
- package/docs/types/PanoSpatialTagPluginId.html +5 -5
- package/docs/types/PanoTagPluginExportInterface.html +5 -5
- package/docs/types/PanoTagPluginParamsInterface.html +5 -5
- package/docs/types/PanoVideoPluginParameterType.html +5 -5
- package/docs/types/PanoVideoPluginReturnType.html +5 -5
- package/docs/types/PlaneTag.html +5 -5
- package/docs/types/PlaneTagElement.html +5 -5
- package/docs/types/Point2DElement.html +5 -5
- package/docs/types/Point2DTag.html +5 -5
- package/docs/types/Point3DElement.html +5 -5
- package/docs/types/Point3DTag.html +5 -5
- package/docs/types/PointTag.html +5 -5
- package/docs/types/PointTagElement.html +5 -5
- package/docs/types/Position.html +5 -5
- package/docs/types/RotateArgs.html +5 -5
- package/docs/types/RotateOpts.html +5 -5
- package/docs/types/RuleLabelsKey.html +5 -5
- package/docs/types/RuleLabelsValue.html +5 -5
- package/docs/types/StickType.html +5 -5
- package/docs/types/Tag.html +5 -5
- package/docs/types/Tag2D.html +5 -5
- package/docs/types/Tag3D.html +5 -5
- package/docs/types/TagContentType.html +5 -5
- package/docs/types/TagDimensionType.html +5 -5
- package/docs/types/TagElement.html +5 -5
- package/docs/types/TagEvents.html +5 -5
- package/docs/types/TagGLTFObject.html +5 -5
- package/docs/types/TagHooks.html +5 -5
- package/docs/types/TagIconSize.html +5 -5
- package/docs/types/TagId.html +5 -5
- package/docs/types/TagPointType.html +5 -5
- package/docs/types/TopviewFloorplanPluginParameterType.html +5 -5
- package/docs/types/TopviewFloorplanPluginReturnType.html +5 -5
- package/docs/types/WorkCode.html +5 -5
- package/docs/variables/FLOOR_TYPE_MAP.html +5 -5
- package/docs/variables/PLUGIN.html +5 -5
- package/docs/variables/ROOM_FETILE_TYPE_MAP.html +5 -5
- package/docs/variables/ROOM_TYPE_MAP.html +5 -5
- package/docs/variables/VERSION.html +5 -5
- package/docs/variables/itemLabelPluginServerParams.html +5 -5
- package/docs/variables/modelItemLabelPluginServerParams.html +5 -5
- package/docs/variables/modelRoomLabelPluginServerParams.html +5 -5
- package/libs/CSS3DRenderPlugin/utils/three/CSS3DRenderer.js +10 -10
- package/libs/PanoTagPlugin/Components/Common/Audio.js +61 -42
- package/libs/PanoTagPlugin/Components/Tag/AudioTag/AudioPlaneTag.js +67 -64
- package/libs/PanoTagPlugin/Components/Tag/AudioTag/AudioTag.js +53 -50
- package/libs/PanoTagPlugin/Components/Tag/AudioTag/index.js +1 -1
- package/libs/PanoTagPlugin/Components/Tag/index.js +1 -1
- package/libs/PanoTagPlugin/Components/TagContainer.js +1 -1
- package/libs/PanoTagPlugin/Components/TagItem.js +1 -1
- package/libs/PanoTagPlugin/controller/index.js +61 -66
- package/libs/PanoTagPlugin/index.js +1 -1
- package/libs/PanoTagPlugin/utils/audio/SharedAudio.d.ts +4 -3
- package/libs/PanoTagPlugin/utils/audio/SharedAudio.js +69 -61
- package/libs/PanoVideoPlugin/VideoMeshController.d.ts +7 -0
- package/libs/PanoVideoPlugin/VideoMeshController.js +62 -39
- package/libs/base/BasePlugin.js +3 -3
- package/libs/index.js +1 -1
- package/libs/shared-utils/audio.d.ts +3 -0
- package/libs/shared-utils/audio.js +38 -60
- package/package.json +1 -1
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var t = (
|
|
4
|
-
import { vertexShader as E, fragmentShader as
|
|
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
|
|
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
|
|
12
|
-
import
|
|
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
|
|
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
|
|
42
|
-
const o = Math.PI,
|
|
43
|
-
|
|
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
|
|
46
|
-
return
|
|
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
|
|
50
|
-
const e = (
|
|
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:
|
|
55
|
-
this.videoMesh.position.fromArray([
|
|
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.
|
|
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 !== "" &&
|
|
94
|
-
|
|
95
|
-
|
|
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
|
|
102
|
-
this.five = e, this.panoIndex = i.panoIndex, this._id = i.renderID, this.url = i.url, this.origin = i.origin.slice(), this._enabled = (
|
|
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
|
|
128
|
+
const o = new D(this.video);
|
|
106
129
|
o.minFilter = m, o.magFilter = m;
|
|
107
|
-
const
|
|
130
|
+
const a = new P({
|
|
108
131
|
vertexShader: E,
|
|
109
|
-
fragmentShader:
|
|
132
|
+
fragmentShader: I,
|
|
110
133
|
uniforms: {
|
|
111
134
|
map: { value: o },
|
|
112
135
|
size: {
|
|
113
|
-
value: new
|
|
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
|
-
}),
|
|
119
|
-
|
|
120
|
-
const
|
|
121
|
-
|
|
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:
|
|
151
|
-
this.five.setState({ panoIndex: this.panoIndex, longitude: o, latitude:
|
|
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(), [
|
|
195
|
-
return n >=
|
|
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
|
-
|
|
222
|
+
Y as VideoMeshController
|
|
200
223
|
};
|
package/libs/base/BasePlugin.js
CHANGED
|
@@ -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
|
|
5
|
+
class x {
|
|
6
6
|
constructor(r, t) {
|
|
7
|
-
s(this, "VERSION", "2.11.0
|
|
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
|
-
|
|
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
|
|
2
|
-
var
|
|
3
|
-
var
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
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
|
|
28
|
-
|
|
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
|
|
43
|
-
t.push(new
|
|
14
|
+
for (let u = 0; u < n; u++)
|
|
15
|
+
t.push(new s(r));
|
|
44
16
|
}
|
|
45
|
-
class
|
|
46
|
-
constructor(
|
|
47
|
-
super(
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
this
|
|
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 = () =>
|
|
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 ===
|
|
34
|
+
return this.realSrc === r || !this.realSrc;
|
|
62
35
|
}
|
|
63
36
|
get src() {
|
|
64
37
|
return super.src;
|
|
65
38
|
}
|
|
66
|
-
set src(
|
|
67
|
-
super.src =
|
|
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.
|
|
49
|
+
this.currentTime = 0, this.src = r;
|
|
71
50
|
}
|
|
72
51
|
}
|
|
73
|
-
function
|
|
74
|
-
!V || V.inited || (V.src && (V.inited = !0, V.removeDocumentEventListener()), V.src ===
|
|
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
|
-
|
|
78
|
-
|
|
79
|
-
|
|
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
|
|
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*",
|