@realsee/dnalogel 2.0.0-alpha.35 → 2.0.0-alpha.36
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/ItemLabelPlugin/index.js +21 -41
- package/dist/ModelItemLabelPlugin/index.js +16 -36
- package/dist/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.d.ts +1 -1
- package/dist/PanoMeasurePlugin/Modules/UIController/HTML.d.ts +0 -4
- package/dist/PanoMeasurePlugin/Modules/UIController/MainBtnController.d.ts +0 -3
- package/dist/PanoMeasurePlugin/Modules/UIController/mobileHTML.d.ts +2 -0
- package/dist/PanoMeasurePlugin/Modules/UIController/{NewMainBtnController.d.ts → mobileMainBtnController.d.ts} +1 -1
- package/dist/PanoMeasurePlugin/Modules/UIController/style.d.ts +0 -3
- package/dist/PanoMeasurePlugin/Modules/rangePiece/html.d.ts +1 -1
- package/dist/PanoMeasurePlugin/Modules/rangePiece/index.d.ts +2 -0
- package/dist/PanoMeasurePlugin/index.js +298 -331
- package/dist/PanoMeasurePlugin/typings/data.d.ts +5 -0
- package/dist/PanoMeasurePlugin/utils/mouseGroup.d.ts +6 -1
- package/dist/base/BasePlugin.d.ts +100 -0
- package/dist/base/BasePluginWithData.d.ts +34 -0
- package/dist/floorplan/ModelFloorplanPlugin/Controller.d.ts +70 -78
- package/dist/floorplan/ModelFloorplanPlugin/index.d.ts +5 -7
- package/dist/floorplan/ModelFloorplanPlugin/index.js +1059 -569
- package/dist/floorplan/ModelFloorplanPlugin/typing.d.ts +107 -0
- package/dist/floorplan/PanoFloorplanRadarPlugin/Controller.d.ts +23 -14
- package/dist/floorplan/PanoFloorplanRadarPlugin/index.d.ts +5 -6
- package/dist/floorplan/PanoFloorplanRadarPlugin/index.js +489 -129
- package/dist/floorplan/PanoFloorplanRadarPlugin/typing.d.ts +52 -0
- package/dist/floorplan/TopviewFloorplanPlugin/Controller.d.ts +50 -58
- package/dist/floorplan/TopviewFloorplanPlugin/index.d.ts +5 -3
- package/dist/floorplan/TopviewFloorplanPlugin/index.js +1031 -443
- package/dist/floorplan/TopviewFloorplanPlugin/typing.d.ts +86 -0
- package/{libs/floorplan/ModelFloorplanPlugin → dist/floorplan}/utils/constant.d.ts +10 -3
- package/{libs/floorplan/ModelFloorplanPlugin → dist/floorplan}/utils/correctFiveState.d.ts +2 -1
- package/dist/index.es.js +2184 -1411
- package/dist/index.js +2188 -1415
- package/dist/index.umd.js +2142 -1369
- package/dist/shared-utils/five/changeMode.d.ts +4 -1
- package/dist/shared-utils/getPxmm.d.ts +8 -0
- package/docs/assets/search.js +1 -1
- package/docs/classes/Magnifier.html +4 -4
- package/docs/classes/ModelRoomLabelController.html +4 -4
- package/docs/enums/CameraMovementEffect.html +2 -2
- package/docs/enums/DIRECTION.html +1 -1
- package/docs/enums/DISPLAY_STRATEGY_TYPE.html +1 -1
- package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +1 -1
- package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +1 -1
- package/docs/enums/Rotation.html +2 -2
- package/docs/index.html +2 -2
- package/docs/interfaces/CSS3DRenderPluginExportType.html +2 -2
- package/docs/interfaces/CameraMovementPluginExportType.html +2 -2
- package/docs/interfaces/FloorplanBounding.html +4 -4
- package/docs/interfaces/FloorplanData.html +2 -2
- package/docs/interfaces/FloorplanEntrance.html +7 -7
- package/docs/interfaces/FloorplanExtraObject.html +3 -3
- package/docs/interfaces/FloorplanExtraObject3D.html +2 -2
- package/docs/interfaces/FloorplanFloorData.html +2 -2
- package/docs/interfaces/FloorplanImagePosition.html +2 -2
- package/docs/interfaces/FloorplanObserver.html +2 -2
- package/docs/interfaces/FloorplanOutlineItem.html +2 -2
- package/docs/interfaces/FloorplanPosition.html +2 -2
- package/docs/interfaces/FloorplanRoomItem.html +6 -6
- package/docs/interfaces/FloorplanRoomLabelItem.html +3 -3
- package/docs/interfaces/FloorplanServerBounding.html +4 -4
- package/docs/interfaces/FloorplanServerComputedData.html +1 -1
- package/docs/interfaces/FloorplanServerData.html +2 -2
- package/docs/interfaces/FloorplanServerEntrance.html +7 -7
- package/docs/interfaces/FloorplanServerFloorData.html +2 -2
- package/docs/interfaces/FloorplanServerImagePosition.html +2 -2
- package/docs/interfaces/FloorplanServerObserver.html +2 -2
- package/docs/interfaces/FloorplanServerOutlineItem.html +2 -2
- package/docs/interfaces/FloorplanServerPosition.html +2 -2
- package/docs/interfaces/FloorplanServerRoomItem.html +7 -7
- package/docs/interfaces/FloorplanServerRoomLabelItem.html +3 -3
- package/docs/interfaces/ItemLabelPluginData.html +1 -1
- package/docs/interfaces/ItemLabelPluginExportReturnsType.html +1 -1
- package/docs/interfaces/ItemLabelPluginParametersType.html +1 -1
- package/docs/interfaces/LineJson.html +1 -1
- package/docs/interfaces/ModelChassisCompassPluginData.html +1 -1
- package/docs/interfaces/ModelChassisCompassPluginExportType.html +1 -1
- package/docs/interfaces/ModelChassisCompassPluginParameterType.html +1 -1
- package/docs/interfaces/ModelEntryDoorGuidePluginData.html +1 -1
- package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +1 -1
- package/docs/interfaces/ModelItemLabelPluginData.html +1 -1
- package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +1 -1
- package/docs/interfaces/ModelItemLabelPluginParametersType.html +1 -1
- package/docs/interfaces/ModelRoomLabelPluginData.html +1 -1
- package/docs/interfaces/ModelTVVideoPluginData.html +1 -1
- package/docs/interfaces/ModelTVVideoPluginExportType.html +1 -1
- package/docs/interfaces/ModelTVVideoPluginParameterType.html +1 -1
- package/docs/interfaces/ModelViewPluginExportType.html +1 -1
- package/docs/interfaces/OpenParameter.html +2 -2
- package/docs/interfaces/PanoCompassPluginData.html +1 -1
- package/docs/interfaces/PanoCompassPluginParameterType.html +1 -1
- package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +6 -6
- package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +1 -1
- package/docs/interfaces/PanoMeasureParameterType.html +1 -1
- package/docs/interfaces/PanoRulerPluginExportType.html +1 -1
- package/docs/interfaces/PanoRulerPluginOptions.html +1 -1
- package/docs/interfaces/PanoRulerPluginParameterType.html +1 -1
- package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +1 -1
- package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +1 -1
- package/docs/interfaces/PanoSpatialTagPluginData.html +1 -1
- package/docs/interfaces/PanoSpatialTagPluginDataElement.html +1 -1
- package/docs/interfaces/PanoSpatialTagPluginExportType.html +1 -1
- package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +1 -1
- package/docs/interfaces/PanoSpatialTagPluginParameterType.html +1 -1
- package/docs/interfaces/PanoSpatialTagPluginPointElement.html +1 -1
- package/docs/interfaces/PanoSpatialTagPluginTagElement.html +1 -1
- package/docs/interfaces/Point.html +1 -1
- package/docs/interfaces/PointJson.html +1 -1
- package/docs/interfaces/Room.html +1 -1
- package/docs/interfaces/RoomInfo.html +1 -1
- package/docs/interfaces/RoomLabel.html +7 -7
- package/docs/interfaces/RoomRules.html +1 -1
- package/docs/interfaces/Rooms.html +1 -1
- package/docs/modules.html +17 -27
- package/libs/ItemLabelPlugin/ItemLabelComponent.js +21 -41
- package/libs/ModelItemLabelPlugin/ItemLabelComponent.js +16 -36
- package/libs/PanoMeasurePlugin/Controller/index.js +4 -2
- package/libs/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.d.ts +1 -1
- package/libs/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.js +1 -1
- package/libs/PanoMeasurePlugin/Modules/GuideController.js +2 -2
- package/libs/PanoMeasurePlugin/Modules/UIController/HTML.d.ts +0 -4
- package/libs/PanoMeasurePlugin/Modules/UIController/HTML.js +66 -55
- package/libs/PanoMeasurePlugin/Modules/UIController/MainBtnController.d.ts +0 -3
- package/libs/PanoMeasurePlugin/Modules/UIController/MainBtnController.js +51 -73
- package/libs/PanoMeasurePlugin/Modules/UIController/Revoke/index.js +7 -4
- package/libs/PanoMeasurePlugin/Modules/UIController/index.js +10 -12
- package/libs/PanoMeasurePlugin/Modules/UIController/mobileHTML.d.ts +2 -0
- package/libs/PanoMeasurePlugin/Modules/UIController/mobileHTML.js +2 -2
- package/libs/PanoMeasurePlugin/Modules/UIController/{NewMainBtnController.d.ts → mobileMainBtnController.d.ts} +1 -1
- package/libs/PanoMeasurePlugin/Modules/UIController/{NewMainBtnController.js → mobileMainBtnController.js} +4 -4
- package/libs/PanoMeasurePlugin/Modules/UIController/style.d.ts +0 -3
- package/libs/PanoMeasurePlugin/Modules/UIController/style.js +7 -24
- package/libs/PanoMeasurePlugin/Modules/rangePiece/html.d.ts +1 -1
- package/libs/PanoMeasurePlugin/Modules/rangePiece/html.js +1 -1
- package/libs/PanoMeasurePlugin/Modules/rangePiece/index.d.ts +2 -0
- package/libs/PanoMeasurePlugin/Modules/rangePiece/index.js +1 -2
- package/libs/PanoMeasurePlugin/typings/data.d.ts +5 -0
- package/libs/PanoMeasurePlugin/utils/mouseGroup.d.ts +6 -1
- package/libs/PanoMeasurePlugin/utils/mouseGroup.js +55 -7
- package/libs/base/BasePlugin.d.ts +100 -0
- package/libs/base/BasePlugin.js +31 -0
- package/libs/base/BasePluginWithData.d.ts +34 -0
- package/libs/base/BasePluginWithData.js +4 -0
- package/libs/floorplan/Components/Compass.js +11 -11
- package/libs/floorplan/Components/CurrentFloor.js +24 -11
- package/libs/floorplan/Components/Main.js +21 -15
- package/libs/floorplan/Components/RoomHighlight/Room.js +44 -5
- package/libs/floorplan/Components/RoomHighlight/RoomHighlight.js +29 -12
- package/libs/floorplan/Components/RoomLabels/RoomLabel.js +164 -15
- package/libs/floorplan/Components/RoomLabels/RoomLabels.js +68 -24
- package/libs/floorplan/Components/RoomMaterials/RoomMaterial_1.js +1 -0
- package/libs/floorplan/Components/RoomMaterials/RoomMaterial_2.js +11 -9
- package/libs/floorplan/Components/RuleLabels/RuleItem.js +2 -2
- package/libs/floorplan/ModelFloorplanPlugin/Controller.d.ts +70 -78
- package/libs/floorplan/ModelFloorplanPlugin/Controller.js +434 -274
- package/libs/floorplan/ModelFloorplanPlugin/index.d.ts +5 -7
- package/libs/floorplan/ModelFloorplanPlugin/index.js +2 -2
- package/libs/floorplan/ModelFloorplanPlugin/typing.d.ts +107 -0
- package/libs/floorplan/ModelFloorplanPlugin/{typings/events.type.js → typing.js} +0 -0
- package/libs/floorplan/PanoFloorplanRadarPlugin/Components/Camera.js +5 -5
- package/libs/floorplan/PanoFloorplanRadarPlugin/Components/Main.js +114 -53
- package/libs/floorplan/PanoFloorplanRadarPlugin/Controller.d.ts +23 -14
- package/libs/floorplan/PanoFloorplanRadarPlugin/Controller.js +162 -52
- package/libs/floorplan/PanoFloorplanRadarPlugin/index.d.ts +5 -6
- package/libs/floorplan/PanoFloorplanRadarPlugin/index.js +2 -2
- package/libs/floorplan/PanoFloorplanRadarPlugin/typing.d.ts +52 -0
- package/libs/floorplan/PanoFloorplanRadarPlugin/typing.js +1 -0
- package/libs/floorplan/TopviewFloorplanPlugin/Controller.d.ts +50 -58
- package/libs/floorplan/TopviewFloorplanPlugin/Controller.js +320 -174
- package/libs/floorplan/TopviewFloorplanPlugin/index.d.ts +5 -3
- package/libs/floorplan/TopviewFloorplanPlugin/index.js +2 -2
- package/libs/floorplan/TopviewFloorplanPlugin/style.js +1 -1
- package/libs/floorplan/TopviewFloorplanPlugin/typing.d.ts +86 -0
- package/libs/floorplan/TopviewFloorplanPlugin/typing.js +1 -0
- package/{dist/floorplan/ModelFloorplanPlugin → libs/floorplan}/utils/constant.d.ts +10 -3
- package/libs/floorplan/{ModelFloorplanPlugin/utils → utils}/constant.js +9 -2
- package/{dist/floorplan/ModelFloorplanPlugin → libs/floorplan}/utils/correctFiveState.d.ts +2 -1
- package/libs/floorplan/{ModelFloorplanPlugin/utils → utils}/correctFiveState.js +16 -16
- package/libs/shared-utils/five/changeMode.d.ts +4 -1
- package/libs/shared-utils/five/changeMode.js +34 -13
- package/libs/shared-utils/getPxmm.d.ts +8 -0
- package/libs/shared-utils/getPxmm.js +25 -20
- package/package.json +2 -2
- package/dist/floorplan/ModelFloorplanPlugin/typings/events.type.d.ts +0 -23
- package/docs/classes/PanoFloorplanRadarPluginController.html +0 -3
- package/docs/enums/ModelFloorplanErrorType.html +0 -1
- package/docs/interfaces/ModelFloorplanParameterType.html +0 -1
- package/docs/interfaces/ModelFloorplanViewEvent.html +0 -5
- package/docs/interfaces/PanoFloorplanRadarPluginControllerParameter.html +0 -1
- package/docs/interfaces/TopviewFloorplanPluginParameterType.html +0 -19
- package/libs/ModelSimulationPlugin/index.d.ts +0 -33
- package/libs/ModelSimulationPlugin/index.js +0 -166
- package/libs/ModelSimulationPlugin/shaders/fragment.d.ts +0 -2
- package/libs/ModelSimulationPlugin/shaders/fragment.js +0 -96
- package/libs/ModelSimulationPlugin/shaders/vertex.d.ts +0 -2
- package/libs/ModelSimulationPlugin/shaders/vertex.js +0 -23
- package/libs/floorplan/ModelFloorplanPlugin/Assets/compass.d.ts +0 -1
- package/libs/floorplan/ModelFloorplanPlugin/Assets/compass.js +0 -1
- package/libs/floorplan/ModelFloorplanPlugin/Components/Camera.js +0 -120
- package/libs/floorplan/ModelFloorplanPlugin/Components/Compass.js +0 -106
- package/libs/floorplan/ModelFloorplanPlugin/Components/CurrentFloor/CurrentFloor.js +0 -463
- package/libs/floorplan/ModelFloorplanPlugin/Components/Main.js +0 -375
- package/libs/floorplan/ModelFloorplanPlugin/Components/RoomLabels/RoomLabel.js +0 -171
- package/libs/floorplan/ModelFloorplanPlugin/Components/RoomLabels/RoomLabels.js +0 -265
- package/libs/floorplan/ModelFloorplanPlugin/Components/RuleLabels/RuleItem.js +0 -301
- package/libs/floorplan/ModelFloorplanPlugin/Components/RuleLabels/RuleLabels.js +0 -219
- package/libs/floorplan/ModelFloorplanPlugin/typings/events.type.d.ts +0 -23
- package/libs/shared-utils/five/useFivePlugin.d.ts +0 -1
- package/libs/shared-utils/five/useFivePlugin.js +0 -8
- package/libs/shared-utils/useDebounce.d.ts +0 -8
- package/libs/shared-utils/useDebounce.js +0 -22
- package/libs/shared-utils/useThrottle.d.ts +0 -8
- package/libs/shared-utils/useThrottle.js +0 -25
|
@@ -4,6 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var internal = require('svelte/internal');
|
|
6
6
|
var svelte = require('svelte');
|
|
7
|
+
var five = require('@realsee/five');
|
|
7
8
|
|
|
8
9
|
const CAMERA_IMAGE = 'data:image/png;base64,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';
|
|
9
10
|
|
|
@@ -118,11 +119,11 @@ function instance$8($$self, $$props, $$invalidate) {
|
|
|
118
119
|
svelte.onMount(() => {
|
|
119
120
|
five.on('panoWillArrive', onFivePanoWillArrive);
|
|
120
121
|
five.on('cameraDirectionUpdate', onFiveCameraDirectionUpdate);
|
|
121
|
-
});
|
|
122
122
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
123
|
+
return function dispose() {
|
|
124
|
+
five.off('panoWillArrive', onFivePanoWillArrive);
|
|
125
|
+
five.off('cameraDirectionUpdate', onFiveCameraDirectionUpdate);
|
|
126
|
+
};
|
|
126
127
|
});
|
|
127
128
|
|
|
128
129
|
$$self.$$set = $$props => {
|
|
@@ -437,7 +438,7 @@ function add_css$3(target) {
|
|
|
437
438
|
}
|
|
438
439
|
|
|
439
440
|
// (13:22)
|
|
440
|
-
function create_if_block_1(ctx) {
|
|
441
|
+
function create_if_block_1$1(ctx) {
|
|
441
442
|
let normalimage;
|
|
442
443
|
let current;
|
|
443
444
|
normalimage = new Normalmage({ props: { url: /*imageData*/ ctx[1].url } });
|
|
@@ -512,7 +513,7 @@ function create_fragment$4(ctx) {
|
|
|
512
513
|
let current_block_type_index;
|
|
513
514
|
let if_block;
|
|
514
515
|
let current;
|
|
515
|
-
const if_block_creators = [create_if_block$2, create_if_block_1];
|
|
516
|
+
const if_block_creators = [create_if_block$2, create_if_block_1$1];
|
|
516
517
|
const if_blocks = [];
|
|
517
518
|
|
|
518
519
|
function select_block_type(ctx, dirty) {
|
|
@@ -690,22 +691,35 @@ function add_css$2(target) {
|
|
|
690
691
|
|
|
691
692
|
function create_fragment$3(ctx) {
|
|
692
693
|
let path;
|
|
694
|
+
let mounted;
|
|
695
|
+
let dispose;
|
|
693
696
|
|
|
694
697
|
return {
|
|
695
698
|
c() {
|
|
696
699
|
path = internal.svg_element("path");
|
|
697
|
-
internal.attr(path, "d", /*_pathD*/ ctx[
|
|
700
|
+
internal.attr(path, "d", /*_pathD*/ ctx[2]);
|
|
698
701
|
internal.attr(path, "fill", `#fff`);
|
|
699
702
|
internal.attr(path, "class", "svelte-19uvvss");
|
|
700
703
|
},
|
|
701
704
|
m(target, anchor) {
|
|
702
705
|
internal.insert(target, path, anchor);
|
|
706
|
+
|
|
707
|
+
if (!mounted) {
|
|
708
|
+
dispose = [
|
|
709
|
+
internal.listen(path, "mouseenter", /*onMouseEnter*/ ctx[0]),
|
|
710
|
+
internal.listen(path, "mouseleave", /*onMouseLeave*/ ctx[1])
|
|
711
|
+
];
|
|
712
|
+
|
|
713
|
+
mounted = true;
|
|
714
|
+
}
|
|
703
715
|
},
|
|
704
716
|
p: internal.noop,
|
|
705
717
|
i: internal.noop,
|
|
706
718
|
o: internal.noop,
|
|
707
719
|
d(detaching) {
|
|
708
720
|
if (detaching) internal.detach(path);
|
|
721
|
+
mounted = false;
|
|
722
|
+
internal.run_all(dispose);
|
|
709
723
|
}
|
|
710
724
|
};
|
|
711
725
|
}
|
|
@@ -713,6 +727,16 @@ function create_fragment$3(ctx) {
|
|
|
713
727
|
function instance$3($$self, $$props, $$invalidate) {
|
|
714
728
|
let { room } = $$props;
|
|
715
729
|
let { floorplanData } = $$props;
|
|
730
|
+
let { hoveredRoom } = $$props;
|
|
731
|
+
|
|
732
|
+
function onMouseEnter() {
|
|
733
|
+
hoveredRoom.set(room);
|
|
734
|
+
}
|
|
735
|
+
|
|
736
|
+
function onMouseLeave() {
|
|
737
|
+
hoveredRoom.set(undefined);
|
|
738
|
+
}
|
|
739
|
+
|
|
716
740
|
const { bounding } = floorplanData;
|
|
717
741
|
|
|
718
742
|
const _pathD = pathD(room.path, {
|
|
@@ -721,17 +745,31 @@ function instance$3($$self, $$props, $$invalidate) {
|
|
|
721
745
|
});
|
|
722
746
|
|
|
723
747
|
$$self.$$set = $$props => {
|
|
724
|
-
if ('room' in $$props) $$invalidate(
|
|
725
|
-
if ('floorplanData' in $$props) $$invalidate(
|
|
748
|
+
if ('room' in $$props) $$invalidate(3, room = $$props.room);
|
|
749
|
+
if ('floorplanData' in $$props) $$invalidate(4, floorplanData = $$props.floorplanData);
|
|
750
|
+
if ('hoveredRoom' in $$props) $$invalidate(5, hoveredRoom = $$props.hoveredRoom);
|
|
726
751
|
};
|
|
727
752
|
|
|
728
|
-
return [_pathD, room, floorplanData];
|
|
753
|
+
return [onMouseEnter, onMouseLeave, _pathD, room, floorplanData, hoveredRoom];
|
|
729
754
|
}
|
|
730
755
|
|
|
731
756
|
class Room extends internal.SvelteComponent {
|
|
732
757
|
constructor(options) {
|
|
733
758
|
super();
|
|
734
|
-
|
|
759
|
+
|
|
760
|
+
internal.init(
|
|
761
|
+
this,
|
|
762
|
+
options,
|
|
763
|
+
instance$3,
|
|
764
|
+
create_fragment$3,
|
|
765
|
+
internal.safe_not_equal,
|
|
766
|
+
{
|
|
767
|
+
room: 3,
|
|
768
|
+
floorplanData: 4,
|
|
769
|
+
hoveredRoom: 5
|
|
770
|
+
},
|
|
771
|
+
add_css$2
|
|
772
|
+
);
|
|
735
773
|
}
|
|
736
774
|
}
|
|
737
775
|
|
|
@@ -743,11 +781,11 @@ function add_css$1(target) {
|
|
|
743
781
|
|
|
744
782
|
function get_each_context(ctx, list, i) {
|
|
745
783
|
const child_ctx = ctx.slice();
|
|
746
|
-
child_ctx[
|
|
784
|
+
child_ctx[5] = list[i];
|
|
747
785
|
return child_ctx;
|
|
748
786
|
}
|
|
749
787
|
|
|
750
|
-
// (
|
|
788
|
+
// (11:4) {#each floorplanData.floorDatas[floorIndex].rooms as room (room.id)}
|
|
751
789
|
function create_each_block(key_1, ctx) {
|
|
752
790
|
let first;
|
|
753
791
|
let room;
|
|
@@ -755,8 +793,9 @@ function create_each_block(key_1, ctx) {
|
|
|
755
793
|
|
|
756
794
|
const room_spread_levels = [
|
|
757
795
|
{
|
|
758
|
-
room: /*room*/ ctx[
|
|
759
|
-
floorplanData: /*floorplanData*/ ctx[1]
|
|
796
|
+
room: /*room*/ ctx[5],
|
|
797
|
+
floorplanData: /*floorplanData*/ ctx[1],
|
|
798
|
+
hoveredRoom: /*hoveredRoom*/ ctx[2]
|
|
760
799
|
}
|
|
761
800
|
];
|
|
762
801
|
|
|
@@ -784,11 +823,12 @@ function create_each_block(key_1, ctx) {
|
|
|
784
823
|
p(new_ctx, dirty) {
|
|
785
824
|
ctx = new_ctx;
|
|
786
825
|
|
|
787
|
-
const room_changes = (dirty & /*floorplanData, floorIndex*/
|
|
826
|
+
const room_changes = (dirty & /*floorplanData, floorIndex, hoveredRoom*/ 7)
|
|
788
827
|
? internal.get_spread_update(room_spread_levels, [
|
|
789
828
|
{
|
|
790
|
-
room: /*room*/ ctx[
|
|
791
|
-
floorplanData: /*floorplanData*/ ctx[1]
|
|
829
|
+
room: /*room*/ ctx[5],
|
|
830
|
+
floorplanData: /*floorplanData*/ ctx[1],
|
|
831
|
+
hoveredRoom: /*hoveredRoom*/ ctx[2]
|
|
792
832
|
}
|
|
793
833
|
])
|
|
794
834
|
: {};
|
|
@@ -818,7 +858,7 @@ function create_fragment$2(ctx) {
|
|
|
818
858
|
let each_1_lookup = new Map();
|
|
819
859
|
let current;
|
|
820
860
|
let each_value = /*floorplanData*/ ctx[1].floorDatas[/*floorIndex*/ ctx[0]].rooms;
|
|
821
|
-
const get_key = ctx => /*room*/ ctx[
|
|
861
|
+
const get_key = ctx => /*room*/ ctx[5].id;
|
|
822
862
|
|
|
823
863
|
for (let i = 0; i < each_value.length; i += 1) {
|
|
824
864
|
let child_ctx = get_each_context(ctx, each_value, i);
|
|
@@ -837,7 +877,7 @@ function create_fragment$2(ctx) {
|
|
|
837
877
|
|
|
838
878
|
internal.attr(svg, "width", "100%");
|
|
839
879
|
internal.attr(svg, "height", "100%");
|
|
840
|
-
internal.attr(svg, "viewBox", `0 0 ${/*boundingWidth*/ ctx[
|
|
880
|
+
internal.attr(svg, "viewBox", `0 0 ${/*boundingWidth*/ ctx[3]} ${/*boundingHeight*/ ctx[4]}`);
|
|
841
881
|
internal.attr(svg, "class", "svelte-1kqo6e4");
|
|
842
882
|
internal.attr(div, "class", "floorplan-plugin__room-highlight svelte-1kqo6e4");
|
|
843
883
|
},
|
|
@@ -852,7 +892,7 @@ function create_fragment$2(ctx) {
|
|
|
852
892
|
current = true;
|
|
853
893
|
},
|
|
854
894
|
p(ctx, [dirty]) {
|
|
855
|
-
if (dirty & /*floorplanData, floorIndex*/
|
|
895
|
+
if (dirty & /*floorplanData, floorIndex, hoveredRoom*/ 7) {
|
|
856
896
|
each_value = /*floorplanData*/ ctx[1].floorDatas[/*floorIndex*/ ctx[0]].rooms;
|
|
857
897
|
internal.group_outros();
|
|
858
898
|
each_blocks = internal.update_keyed_each(each_blocks, dirty, get_key, 1, ctx, each_value, each_1_lookup, svg, internal.outro_and_destroy_block, create_each_block, null, get_each_context);
|
|
@@ -888,21 +928,36 @@ function create_fragment$2(ctx) {
|
|
|
888
928
|
function instance$2($$self, $$props, $$invalidate) {
|
|
889
929
|
let { floorIndex } = $$props;
|
|
890
930
|
let { floorplanData } = $$props;
|
|
931
|
+
let { hoveredRoom } = $$props;
|
|
891
932
|
const boundingWidth = floorplanData.bounding.max.x - floorplanData.bounding.min.x;
|
|
892
933
|
const boundingHeight = floorplanData.bounding.max.y - floorplanData.bounding.min.y;
|
|
893
934
|
|
|
894
935
|
$$self.$$set = $$props => {
|
|
895
936
|
if ('floorIndex' in $$props) $$invalidate(0, floorIndex = $$props.floorIndex);
|
|
896
937
|
if ('floorplanData' in $$props) $$invalidate(1, floorplanData = $$props.floorplanData);
|
|
938
|
+
if ('hoveredRoom' in $$props) $$invalidate(2, hoveredRoom = $$props.hoveredRoom);
|
|
897
939
|
};
|
|
898
940
|
|
|
899
|
-
return [floorIndex, floorplanData, boundingWidth, boundingHeight];
|
|
941
|
+
return [floorIndex, floorplanData, hoveredRoom, boundingWidth, boundingHeight];
|
|
900
942
|
}
|
|
901
943
|
|
|
902
944
|
class RoomHighlight extends internal.SvelteComponent {
|
|
903
945
|
constructor(options) {
|
|
904
946
|
super();
|
|
905
|
-
|
|
947
|
+
|
|
948
|
+
internal.init(
|
|
949
|
+
this,
|
|
950
|
+
options,
|
|
951
|
+
instance$2,
|
|
952
|
+
create_fragment$2,
|
|
953
|
+
internal.safe_not_equal,
|
|
954
|
+
{
|
|
955
|
+
floorIndex: 0,
|
|
956
|
+
floorplanData: 1,
|
|
957
|
+
hoveredRoom: 2
|
|
958
|
+
},
|
|
959
|
+
add_css$1
|
|
960
|
+
);
|
|
906
961
|
}
|
|
907
962
|
}
|
|
908
963
|
|
|
@@ -1139,24 +1194,85 @@ function add_css(target) {
|
|
|
1139
1194
|
internal.append_styles(target, "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}");
|
|
1140
1195
|
}
|
|
1141
1196
|
|
|
1142
|
-
// (41:
|
|
1197
|
+
// (41:0) {#if visible}
|
|
1143
1198
|
function create_if_block(ctx) {
|
|
1199
|
+
let div;
|
|
1200
|
+
let div_resize_listener;
|
|
1201
|
+
let current;
|
|
1202
|
+
let if_block = /*clientWidth*/ ctx[6] !== 0 && create_if_block_1(ctx);
|
|
1203
|
+
|
|
1204
|
+
return {
|
|
1205
|
+
c() {
|
|
1206
|
+
div = internal.element("div");
|
|
1207
|
+
if (if_block) if_block.c();
|
|
1208
|
+
internal.attr(div, "class", "plugin-floorplan-radar svelte-1mvqyqq");
|
|
1209
|
+
internal.add_render_callback(() => /*div_elementresize_handler*/ ctx[12].call(div));
|
|
1210
|
+
},
|
|
1211
|
+
m(target, anchor) {
|
|
1212
|
+
internal.insert(target, div, anchor);
|
|
1213
|
+
if (if_block) if_block.m(div, null);
|
|
1214
|
+
div_resize_listener = internal.add_resize_listener(div, /*div_elementresize_handler*/ ctx[12].bind(div));
|
|
1215
|
+
current = true;
|
|
1216
|
+
},
|
|
1217
|
+
p(ctx, dirty) {
|
|
1218
|
+
if (/*clientWidth*/ ctx[6] !== 0) {
|
|
1219
|
+
if (if_block) {
|
|
1220
|
+
if_block.p(ctx, dirty);
|
|
1221
|
+
|
|
1222
|
+
if (dirty & /*clientWidth*/ 64) {
|
|
1223
|
+
internal.transition_in(if_block, 1);
|
|
1224
|
+
}
|
|
1225
|
+
} else {
|
|
1226
|
+
if_block = create_if_block_1(ctx);
|
|
1227
|
+
if_block.c();
|
|
1228
|
+
internal.transition_in(if_block, 1);
|
|
1229
|
+
if_block.m(div, null);
|
|
1230
|
+
}
|
|
1231
|
+
} else if (if_block) {
|
|
1232
|
+
internal.group_outros();
|
|
1233
|
+
|
|
1234
|
+
internal.transition_out(if_block, 1, 1, () => {
|
|
1235
|
+
if_block = null;
|
|
1236
|
+
});
|
|
1237
|
+
|
|
1238
|
+
internal.check_outros();
|
|
1239
|
+
}
|
|
1240
|
+
},
|
|
1241
|
+
i(local) {
|
|
1242
|
+
if (current) return;
|
|
1243
|
+
internal.transition_in(if_block);
|
|
1244
|
+
current = true;
|
|
1245
|
+
},
|
|
1246
|
+
o(local) {
|
|
1247
|
+
internal.transition_out(if_block);
|
|
1248
|
+
current = false;
|
|
1249
|
+
},
|
|
1250
|
+
d(detaching) {
|
|
1251
|
+
if (detaching) internal.detach(div);
|
|
1252
|
+
if (if_block) if_block.d();
|
|
1253
|
+
div_resize_listener();
|
|
1254
|
+
}
|
|
1255
|
+
};
|
|
1256
|
+
}
|
|
1257
|
+
|
|
1258
|
+
// (43:4) {#if clientWidth !== 0}
|
|
1259
|
+
function create_if_block_1(ctx) {
|
|
1144
1260
|
let div;
|
|
1145
1261
|
let currentfloor;
|
|
1146
1262
|
let t;
|
|
1147
1263
|
let camera;
|
|
1148
|
-
let style_width = `${/*contentWidth*/ ctx[
|
|
1149
|
-
let style_height = `${/*contentHeight*/ ctx[
|
|
1264
|
+
let style_width = `${/*contentWidth*/ ctx[8]}px`;
|
|
1265
|
+
let style_height = `${/*contentHeight*/ ctx[11]}px`;
|
|
1150
1266
|
let current;
|
|
1151
1267
|
|
|
1152
1268
|
const currentfloor_spread_levels = [
|
|
1153
1269
|
{
|
|
1154
1270
|
five: /*five*/ ctx[0],
|
|
1155
|
-
pxmm: /*pxmm*/ ctx[
|
|
1156
|
-
floorIndex: /*floorIndex*/ ctx[
|
|
1157
|
-
floorplanData: /*floorplanData*/ ctx[
|
|
1158
|
-
hoverEnable: /*hoverEnable*/ ctx[
|
|
1159
|
-
extraObjects: /*extraObjects*/ ctx[
|
|
1271
|
+
pxmm: /*pxmm*/ ctx[9],
|
|
1272
|
+
floorIndex: /*floorIndex*/ ctx[10],
|
|
1273
|
+
floorplanData: /*floorplanData*/ ctx[3],
|
|
1274
|
+
hoverEnable: /*hoverEnable*/ ctx[2],
|
|
1275
|
+
extraObjects: /*extraObjects*/ ctx[5]
|
|
1160
1276
|
}
|
|
1161
1277
|
];
|
|
1162
1278
|
|
|
@@ -1170,10 +1286,10 @@ function create_if_block(ctx) {
|
|
|
1170
1286
|
|
|
1171
1287
|
const camera_spread_levels = [
|
|
1172
1288
|
{
|
|
1173
|
-
pxmm: /*pxmm*/ ctx[
|
|
1289
|
+
pxmm: /*pxmm*/ ctx[9],
|
|
1174
1290
|
five: /*five*/ ctx[0],
|
|
1175
|
-
floorplanData: /*floorplanData*/ ctx[
|
|
1176
|
-
cameraImageUrl: /*cameraImageUrl*/ ctx[
|
|
1291
|
+
floorplanData: /*floorplanData*/ ctx[3],
|
|
1292
|
+
cameraImageUrl: /*cameraImageUrl*/ ctx[4]
|
|
1177
1293
|
}
|
|
1178
1294
|
];
|
|
1179
1295
|
|
|
@@ -1203,39 +1319,39 @@ function create_if_block(ctx) {
|
|
|
1203
1319
|
current = true;
|
|
1204
1320
|
},
|
|
1205
1321
|
p(ctx, dirty) {
|
|
1206
|
-
const currentfloor_changes = (dirty & /*five, pxmm, floorIndex, floorplanData, hoverEnable, extraObjects*/
|
|
1322
|
+
const currentfloor_changes = (dirty & /*five, pxmm, floorIndex, floorplanData, hoverEnable, extraObjects*/ 1581)
|
|
1207
1323
|
? internal.get_spread_update(currentfloor_spread_levels, [
|
|
1208
1324
|
{
|
|
1209
1325
|
five: /*five*/ ctx[0],
|
|
1210
|
-
pxmm: /*pxmm*/ ctx[
|
|
1211
|
-
floorIndex: /*floorIndex*/ ctx[
|
|
1212
|
-
floorplanData: /*floorplanData*/ ctx[
|
|
1213
|
-
hoverEnable: /*hoverEnable*/ ctx[
|
|
1214
|
-
extraObjects: /*extraObjects*/ ctx[
|
|
1326
|
+
pxmm: /*pxmm*/ ctx[9],
|
|
1327
|
+
floorIndex: /*floorIndex*/ ctx[10],
|
|
1328
|
+
floorplanData: /*floorplanData*/ ctx[3],
|
|
1329
|
+
hoverEnable: /*hoverEnable*/ ctx[2],
|
|
1330
|
+
extraObjects: /*extraObjects*/ ctx[5]
|
|
1215
1331
|
}
|
|
1216
1332
|
])
|
|
1217
1333
|
: {};
|
|
1218
1334
|
|
|
1219
1335
|
currentfloor.$set(currentfloor_changes);
|
|
1220
1336
|
|
|
1221
|
-
const camera_changes = (dirty & /*pxmm, five, floorplanData, cameraImageUrl*/
|
|
1337
|
+
const camera_changes = (dirty & /*pxmm, five, floorplanData, cameraImageUrl*/ 537)
|
|
1222
1338
|
? internal.get_spread_update(camera_spread_levels, [
|
|
1223
1339
|
{
|
|
1224
|
-
pxmm: /*pxmm*/ ctx[
|
|
1340
|
+
pxmm: /*pxmm*/ ctx[9],
|
|
1225
1341
|
five: /*five*/ ctx[0],
|
|
1226
|
-
floorplanData: /*floorplanData*/ ctx[
|
|
1227
|
-
cameraImageUrl: /*cameraImageUrl*/ ctx[
|
|
1342
|
+
floorplanData: /*floorplanData*/ ctx[3],
|
|
1343
|
+
cameraImageUrl: /*cameraImageUrl*/ ctx[4]
|
|
1228
1344
|
}
|
|
1229
1345
|
])
|
|
1230
1346
|
: {};
|
|
1231
1347
|
|
|
1232
1348
|
camera.$set(camera_changes);
|
|
1233
1349
|
|
|
1234
|
-
if (dirty & /*contentWidth*/
|
|
1350
|
+
if (dirty & /*contentWidth*/ 256 && style_width !== (style_width = `${/*contentWidth*/ ctx[8]}px`)) {
|
|
1235
1351
|
internal.set_style(div, "width", style_width, false);
|
|
1236
1352
|
}
|
|
1237
1353
|
|
|
1238
|
-
if (dirty & /*contentHeight*/
|
|
1354
|
+
if (dirty & /*contentHeight*/ 2048 && style_height !== (style_height = `${/*contentHeight*/ ctx[11]}px`)) {
|
|
1239
1355
|
internal.set_style(div, "height", style_height, false);
|
|
1240
1356
|
}
|
|
1241
1357
|
},
|
|
@@ -1259,37 +1375,33 @@ function create_if_block(ctx) {
|
|
|
1259
1375
|
}
|
|
1260
1376
|
|
|
1261
1377
|
function create_fragment(ctx) {
|
|
1262
|
-
let
|
|
1263
|
-
let div_resize_listener;
|
|
1378
|
+
let if_block_anchor;
|
|
1264
1379
|
let current;
|
|
1265
|
-
let if_block = /*
|
|
1380
|
+
let if_block = /*visible*/ ctx[1] && create_if_block(ctx);
|
|
1266
1381
|
|
|
1267
1382
|
return {
|
|
1268
1383
|
c() {
|
|
1269
|
-
div = internal.element("div");
|
|
1270
1384
|
if (if_block) if_block.c();
|
|
1271
|
-
internal.
|
|
1272
|
-
internal.add_render_callback(() => /*div_elementresize_handler*/ ctx[11].call(div));
|
|
1385
|
+
if_block_anchor = internal.empty();
|
|
1273
1386
|
},
|
|
1274
1387
|
m(target, anchor) {
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
div_resize_listener = internal.add_resize_listener(div, /*div_elementresize_handler*/ ctx[11].bind(div));
|
|
1388
|
+
if (if_block) if_block.m(target, anchor);
|
|
1389
|
+
internal.insert(target, if_block_anchor, anchor);
|
|
1278
1390
|
current = true;
|
|
1279
1391
|
},
|
|
1280
1392
|
p(ctx, [dirty]) {
|
|
1281
|
-
if (/*
|
|
1393
|
+
if (/*visible*/ ctx[1]) {
|
|
1282
1394
|
if (if_block) {
|
|
1283
1395
|
if_block.p(ctx, dirty);
|
|
1284
1396
|
|
|
1285
|
-
if (dirty & /*
|
|
1397
|
+
if (dirty & /*visible*/ 2) {
|
|
1286
1398
|
internal.transition_in(if_block, 1);
|
|
1287
1399
|
}
|
|
1288
1400
|
} else {
|
|
1289
1401
|
if_block = create_if_block(ctx);
|
|
1290
1402
|
if_block.c();
|
|
1291
1403
|
internal.transition_in(if_block, 1);
|
|
1292
|
-
if_block.m(
|
|
1404
|
+
if_block.m(if_block_anchor.parentNode, if_block_anchor);
|
|
1293
1405
|
}
|
|
1294
1406
|
} else if (if_block) {
|
|
1295
1407
|
internal.group_outros();
|
|
@@ -1311,15 +1423,15 @@ function create_fragment(ctx) {
|
|
|
1311
1423
|
current = false;
|
|
1312
1424
|
},
|
|
1313
1425
|
d(detaching) {
|
|
1314
|
-
if (
|
|
1315
|
-
if (
|
|
1316
|
-
div_resize_listener();
|
|
1426
|
+
if (if_block) if_block.d(detaching);
|
|
1427
|
+
if (detaching) internal.detach(if_block_anchor);
|
|
1317
1428
|
}
|
|
1318
1429
|
};
|
|
1319
1430
|
}
|
|
1320
1431
|
|
|
1321
1432
|
function instance($$self, $$props, $$invalidate) {
|
|
1322
1433
|
let { five } = $$props;
|
|
1434
|
+
let { visible } = $$props;
|
|
1323
1435
|
let { hoverEnable } = $$props;
|
|
1324
1436
|
let { floorplanData } = $$props;
|
|
1325
1437
|
let { cameraImageUrl } = $$props;
|
|
@@ -1332,7 +1444,7 @@ function instance($$self, $$props, $$invalidate) {
|
|
|
1332
1444
|
let contentHeight = 0;
|
|
1333
1445
|
|
|
1334
1446
|
function handlePanoArrived(panoIndex) {
|
|
1335
|
-
$$invalidate(
|
|
1447
|
+
$$invalidate(10, floorIndex = five.work.observers[panoIndex].floorIndex);
|
|
1336
1448
|
}
|
|
1337
1449
|
|
|
1338
1450
|
svelte.onMount(() => {
|
|
@@ -1346,20 +1458,21 @@ function instance($$self, $$props, $$invalidate) {
|
|
|
1346
1458
|
function div_elementresize_handler() {
|
|
1347
1459
|
clientWidth = this.clientWidth;
|
|
1348
1460
|
clientHeight = this.clientHeight;
|
|
1349
|
-
$$invalidate(
|
|
1350
|
-
$$invalidate(
|
|
1461
|
+
$$invalidate(6, clientWidth);
|
|
1462
|
+
$$invalidate(7, clientHeight);
|
|
1351
1463
|
}
|
|
1352
1464
|
|
|
1353
1465
|
$$self.$$set = $$props => {
|
|
1354
1466
|
if ('five' in $$props) $$invalidate(0, five = $$props.five);
|
|
1355
|
-
if ('
|
|
1356
|
-
if ('
|
|
1357
|
-
if ('
|
|
1358
|
-
if ('
|
|
1467
|
+
if ('visible' in $$props) $$invalidate(1, visible = $$props.visible);
|
|
1468
|
+
if ('hoverEnable' in $$props) $$invalidate(2, hoverEnable = $$props.hoverEnable);
|
|
1469
|
+
if ('floorplanData' in $$props) $$invalidate(3, floorplanData = $$props.floorplanData);
|
|
1470
|
+
if ('cameraImageUrl' in $$props) $$invalidate(4, cameraImageUrl = $$props.cameraImageUrl);
|
|
1471
|
+
if ('extraObjects' in $$props) $$invalidate(5, extraObjects = $$props.extraObjects);
|
|
1359
1472
|
};
|
|
1360
1473
|
|
|
1361
1474
|
$$self.$$.update = () => {
|
|
1362
|
-
if ($$self.$$.dirty & /*clientWidth, clientHeight, floorplanData, contentWidth*/
|
|
1475
|
+
if ($$self.$$.dirty & /*clientWidth, clientHeight, floorplanData, contentWidth*/ 456) {
|
|
1363
1476
|
{
|
|
1364
1477
|
const size = Math.min(clientWidth, clientHeight);
|
|
1365
1478
|
const { max, min } = floorplanData.bounding;
|
|
@@ -1371,15 +1484,16 @@ function instance($$self, $$props, $$invalidate) {
|
|
|
1371
1484
|
return [size / boundingHeight * boundingWidth, size];
|
|
1372
1485
|
})();
|
|
1373
1486
|
|
|
1374
|
-
$$invalidate(
|
|
1375
|
-
$$invalidate(
|
|
1376
|
-
$$invalidate(
|
|
1487
|
+
$$invalidate(8, contentWidth = contentSize[0]);
|
|
1488
|
+
$$invalidate(11, contentHeight = contentSize[1]);
|
|
1489
|
+
$$invalidate(9, pxmm = contentWidth / boundingWidth);
|
|
1377
1490
|
}
|
|
1378
1491
|
}
|
|
1379
1492
|
};
|
|
1380
1493
|
|
|
1381
1494
|
return [
|
|
1382
1495
|
five,
|
|
1496
|
+
visible,
|
|
1383
1497
|
hoverEnable,
|
|
1384
1498
|
floorplanData,
|
|
1385
1499
|
cameraImageUrl,
|
|
@@ -1406,16 +1520,155 @@ class Main extends internal.SvelteComponent {
|
|
|
1406
1520
|
internal.safe_not_equal,
|
|
1407
1521
|
{
|
|
1408
1522
|
five: 0,
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
|
|
1523
|
+
visible: 1,
|
|
1524
|
+
hoverEnable: 2,
|
|
1525
|
+
floorplanData: 3,
|
|
1526
|
+
cameraImageUrl: 4,
|
|
1527
|
+
extraObjects: 5
|
|
1413
1528
|
},
|
|
1414
1529
|
add_css
|
|
1415
1530
|
);
|
|
1416
1531
|
}
|
|
1417
1532
|
}
|
|
1418
1533
|
|
|
1534
|
+
/**
|
|
1535
|
+
* 检查一个值是否是狭义上的对象
|
|
1536
|
+
* @param {any} value 要检查的值
|
|
1537
|
+
*
|
|
1538
|
+
* isTruelyObject({})
|
|
1539
|
+
* // => true
|
|
1540
|
+
*
|
|
1541
|
+
* isObjectLike([1, 2, 3])
|
|
1542
|
+
* // => false
|
|
1543
|
+
*
|
|
1544
|
+
* isObjectLike(Function)
|
|
1545
|
+
* // => false
|
|
1546
|
+
*
|
|
1547
|
+
* isObjectLike(null)
|
|
1548
|
+
* // => false
|
|
1549
|
+
*
|
|
1550
|
+
*/
|
|
1551
|
+
function isTruelyObject(value) {
|
|
1552
|
+
return Object.prototype.toString.call(value) === '[object Object]';
|
|
1553
|
+
}
|
|
1554
|
+
|
|
1555
|
+
/* eslint-disable @typescript-eslint/no-use-before-define */
|
|
1556
|
+
function baseIsEqual(value, other) {
|
|
1557
|
+
if (value === other)
|
|
1558
|
+
return true;
|
|
1559
|
+
if (typeof value !== typeof other)
|
|
1560
|
+
return false;
|
|
1561
|
+
if (Number.isNaN(value) && Number.isNaN(other))
|
|
1562
|
+
return true;
|
|
1563
|
+
return false;
|
|
1564
|
+
}
|
|
1565
|
+
function objEqualShallow(value, other) {
|
|
1566
|
+
const valueProps = Object.getOwnPropertyNames(value);
|
|
1567
|
+
const otherProps = Object.getOwnPropertyNames(other);
|
|
1568
|
+
if (valueProps.length !== otherProps.length)
|
|
1569
|
+
return false;
|
|
1570
|
+
for (let i = 0, len = valueProps.length; i < len; i++) {
|
|
1571
|
+
const propName = valueProps[i];
|
|
1572
|
+
if (!baseIsEqual(value[propName], other[propName]))
|
|
1573
|
+
return false;
|
|
1574
|
+
}
|
|
1575
|
+
return true;
|
|
1576
|
+
}
|
|
1577
|
+
function arrayEqualShallow(value, other) {
|
|
1578
|
+
if (value.length !== other.length)
|
|
1579
|
+
return false;
|
|
1580
|
+
for (let i = 0, len = value.length; i < len; i++) {
|
|
1581
|
+
if (!baseIsEqual(value[i], other[i]))
|
|
1582
|
+
return false;
|
|
1583
|
+
}
|
|
1584
|
+
return true;
|
|
1585
|
+
}
|
|
1586
|
+
function isShallowEqual(value, other) {
|
|
1587
|
+
if (baseIsEqual(value, other))
|
|
1588
|
+
return true;
|
|
1589
|
+
if (isTruelyObject(value) && isTruelyObject(other))
|
|
1590
|
+
return objEqualShallow(value, other);
|
|
1591
|
+
if (Array.isArray(value) && Array.isArray(other))
|
|
1592
|
+
return arrayEqualShallow(value, other);
|
|
1593
|
+
return false;
|
|
1594
|
+
}
|
|
1595
|
+
function isDeepEqual(value, other) {
|
|
1596
|
+
if (baseIsEqual(value, other))
|
|
1597
|
+
return true;
|
|
1598
|
+
if (isTruelyObject(value) && isTruelyObject(other))
|
|
1599
|
+
return objEqualDeep(value, other);
|
|
1600
|
+
if (Array.isArray(value) && Array.isArray(other))
|
|
1601
|
+
return arrayEqualDeep(value, other);
|
|
1602
|
+
return false;
|
|
1603
|
+
}
|
|
1604
|
+
function arrayEqualDeep(value, other) {
|
|
1605
|
+
if (value.length !== other.length)
|
|
1606
|
+
return false;
|
|
1607
|
+
for (let i = 0, len = value.length; i < len; i++) {
|
|
1608
|
+
if (!isDeepEqual(value[i], other[i]))
|
|
1609
|
+
return false;
|
|
1610
|
+
}
|
|
1611
|
+
return true;
|
|
1612
|
+
}
|
|
1613
|
+
function objEqualDeep(value, other) {
|
|
1614
|
+
const valueProps = Object.getOwnPropertyNames(value);
|
|
1615
|
+
const otherProps = Object.getOwnPropertyNames(other);
|
|
1616
|
+
if (valueProps.length !== otherProps.length)
|
|
1617
|
+
return false;
|
|
1618
|
+
for (let i = 0, len = valueProps.length; i < len; i++) {
|
|
1619
|
+
const propName = valueProps[i];
|
|
1620
|
+
if (!isDeepEqual(value[propName], other[propName]))
|
|
1621
|
+
return false;
|
|
1622
|
+
}
|
|
1623
|
+
return true;
|
|
1624
|
+
}
|
|
1625
|
+
/**
|
|
1626
|
+
* 对象比较
|
|
1627
|
+
* @param {*} value 第一个比较的值
|
|
1628
|
+
* @param {*} other 第二个比较的值
|
|
1629
|
+
* @param {Object} options 可选参数,可选项包括:<br />
|
|
1630
|
+
* deep {Boolean} 是否深比较<br />
|
|
1631
|
+
* @returns {boolean} 是否相等
|
|
1632
|
+
*/
|
|
1633
|
+
function equal(value, other, opt = { deep: false }) {
|
|
1634
|
+
if (!opt.deep)
|
|
1635
|
+
return isShallowEqual(value, other);
|
|
1636
|
+
return isDeepEqual(value, other);
|
|
1637
|
+
}
|
|
1638
|
+
|
|
1639
|
+
/**
|
|
1640
|
+
* plugin 的基本控制器
|
|
1641
|
+
*/
|
|
1642
|
+
class Controller$2 {
|
|
1643
|
+
constructor(five$1) {
|
|
1644
|
+
Object.defineProperty(this, "five", {
|
|
1645
|
+
enumerable: true,
|
|
1646
|
+
configurable: true,
|
|
1647
|
+
writable: true,
|
|
1648
|
+
value: void 0
|
|
1649
|
+
});
|
|
1650
|
+
/**
|
|
1651
|
+
* 插件事件钩子
|
|
1652
|
+
*/
|
|
1653
|
+
Object.defineProperty(this, "hooks", {
|
|
1654
|
+
enumerable: true,
|
|
1655
|
+
configurable: true,
|
|
1656
|
+
writable: true,
|
|
1657
|
+
value: new five.Subscribe()
|
|
1658
|
+
});
|
|
1659
|
+
this.five = five$1;
|
|
1660
|
+
}
|
|
1661
|
+
/**
|
|
1662
|
+
* 获取当前的插件状态,如果当初插件内存在需要通过动画变更的 state 值,则通过此方法可以得到中间状态
|
|
1663
|
+
*/
|
|
1664
|
+
getCurrentState() {
|
|
1665
|
+
return this.state;
|
|
1666
|
+
}
|
|
1667
|
+
}
|
|
1668
|
+
|
|
1669
|
+
class Controller$1 extends Controller$2 {
|
|
1670
|
+
}
|
|
1671
|
+
|
|
1419
1672
|
const FLOORPLAN_EXTRA_OBJECT_IMAGE = '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';
|
|
1420
1673
|
|
|
1421
1674
|
async function formatOutlines(outlines) {
|
|
@@ -1511,49 +1764,59 @@ function formatExtraObjects(data, five, floorplanData) {
|
|
|
1511
1764
|
return extraObjects;
|
|
1512
1765
|
}
|
|
1513
1766
|
|
|
1514
|
-
class
|
|
1767
|
+
class Controller extends Controller$1 {
|
|
1515
1768
|
constructor(five, params) {
|
|
1516
|
-
|
|
1769
|
+
super(five);
|
|
1770
|
+
// =============== public properties =================
|
|
1771
|
+
Object.defineProperty(this, "name", {
|
|
1517
1772
|
enumerable: true,
|
|
1518
1773
|
configurable: true,
|
|
1519
1774
|
writable: true,
|
|
1520
|
-
value:
|
|
1775
|
+
value: 'panoFloorplanRadarPlugin'
|
|
1521
1776
|
});
|
|
1522
|
-
Object.defineProperty(this, "
|
|
1777
|
+
Object.defineProperty(this, "state", {
|
|
1523
1778
|
enumerable: true,
|
|
1524
1779
|
configurable: true,
|
|
1525
1780
|
writable: true,
|
|
1526
1781
|
value: void 0
|
|
1527
1782
|
});
|
|
1528
|
-
|
|
1783
|
+
// =============== protected properties =================
|
|
1784
|
+
Object.defineProperty(this, "data", {
|
|
1529
1785
|
enumerable: true,
|
|
1530
1786
|
configurable: true,
|
|
1531
1787
|
writable: true,
|
|
1532
|
-
value:
|
|
1788
|
+
value: void 0
|
|
1533
1789
|
});
|
|
1534
|
-
|
|
1790
|
+
// =============== private properties =================
|
|
1791
|
+
Object.defineProperty(this, "app", {
|
|
1535
1792
|
enumerable: true,
|
|
1536
1793
|
configurable: true,
|
|
1537
1794
|
writable: true,
|
|
1538
1795
|
value: void 0
|
|
1539
1796
|
});
|
|
1797
|
+
Object.defineProperty(this, "wrapperSelector", {
|
|
1798
|
+
enumerable: true,
|
|
1799
|
+
configurable: true,
|
|
1800
|
+
writable: true,
|
|
1801
|
+
value: ''
|
|
1802
|
+
});
|
|
1540
1803
|
Object.defineProperty(this, "wrapper", {
|
|
1541
1804
|
enumerable: true,
|
|
1542
1805
|
configurable: true,
|
|
1543
1806
|
writable: true,
|
|
1544
1807
|
value: null
|
|
1545
1808
|
});
|
|
1546
|
-
Object.defineProperty(this, "
|
|
1809
|
+
Object.defineProperty(this, "disposed", {
|
|
1547
1810
|
enumerable: true,
|
|
1548
1811
|
configurable: true,
|
|
1549
1812
|
writable: true,
|
|
1550
|
-
value:
|
|
1813
|
+
value: false
|
|
1551
1814
|
});
|
|
1552
|
-
Object.defineProperty(this, "
|
|
1815
|
+
Object.defineProperty(this, "extraObjects", {
|
|
1553
1816
|
enumerable: true,
|
|
1554
1817
|
configurable: true,
|
|
1555
1818
|
writable: true,
|
|
1556
|
-
value:
|
|
1819
|
+
value: []
|
|
1557
1820
|
});
|
|
1558
1821
|
Object.defineProperty(this, "dispose", {
|
|
1559
1822
|
enumerable: true,
|
|
@@ -1561,50 +1824,123 @@ class PanoFloorplanRadarPluginController {
|
|
|
1561
1824
|
writable: true,
|
|
1562
1825
|
value: () => {
|
|
1563
1826
|
var _a;
|
|
1827
|
+
this.disposed = true;
|
|
1564
1828
|
(_a = this.app) === null || _a === void 0 ? void 0 : _a.$destroy();
|
|
1829
|
+
this.wrapper = null;
|
|
1830
|
+
this.wrapperSelector = '';
|
|
1831
|
+
this.hooks.emit('dispose');
|
|
1565
1832
|
}
|
|
1566
1833
|
});
|
|
1567
|
-
Object.defineProperty(this, "
|
|
1834
|
+
Object.defineProperty(this, "_disable", {
|
|
1568
1835
|
enumerable: true,
|
|
1569
1836
|
configurable: true,
|
|
1570
1837
|
writable: true,
|
|
1571
|
-
value:
|
|
1572
|
-
|
|
1573
|
-
const
|
|
1574
|
-
this.
|
|
1575
|
-
|
|
1576
|
-
|
|
1577
|
-
// // 当有 svgString 时,没有加载过程
|
|
1578
|
-
// if (floorplanData.outlines[floorIndex]?.svgContent) return
|
|
1579
|
-
// // 如果当前楼层图片不存在,不存在加载过程
|
|
1580
|
-
// const nowFloorImageSrc = floorplanData.outlines[floorIndex]?.url
|
|
1581
|
-
// if (!nowFloorImageSrc) return
|
|
1582
|
-
// // 图片加载完成时再 render
|
|
1583
|
-
// await new Promise<void>((resolve) => {
|
|
1584
|
-
// const nowFloorImage = new Image()
|
|
1585
|
-
// nowFloorImage.src = nowFloorImageSrc
|
|
1586
|
-
// nowFloorImage.onload = () => resolve()
|
|
1587
|
-
// })
|
|
1588
|
-
// }
|
|
1589
|
-
// await loadImage()
|
|
1590
|
-
this.render();
|
|
1838
|
+
value: (options) => {
|
|
1839
|
+
var _a;
|
|
1840
|
+
const { userAction } = options;
|
|
1841
|
+
(_a = this.app) === null || _a === void 0 ? void 0 : _a.$destroy();
|
|
1842
|
+
this.app = undefined;
|
|
1843
|
+
this.hooks.emit('disable', { userAction });
|
|
1591
1844
|
}
|
|
1592
1845
|
});
|
|
1593
1846
|
this.five = five;
|
|
1594
|
-
|
|
1847
|
+
// =============== init State ===============
|
|
1848
|
+
const baseConfig = {
|
|
1849
|
+
hoverEnable: false,
|
|
1850
|
+
cameraImageUrl: CAMERA_IMAGE,
|
|
1851
|
+
};
|
|
1852
|
+
const paramsConfig = (params === null || params === void 0 ? void 0 : params.configs) ? params.configs : {};
|
|
1853
|
+
const config = Object.assign(Object.assign({}, baseConfig), paramsConfig);
|
|
1854
|
+
this.state = { enabled: true, visible: true, config };
|
|
1855
|
+
// =============== init wrapper ===============
|
|
1856
|
+
if (params === null || params === void 0 ? void 0 : params.wrapper)
|
|
1857
|
+
console.warn('不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法');
|
|
1595
1858
|
if (typeof (params === null || params === void 0 ? void 0 : params.wrapper) === 'string')
|
|
1596
1859
|
this.wrapperSelector = params.wrapper;
|
|
1597
1860
|
else if ((params === null || params === void 0 ? void 0 : params.wrapper) instanceof Element)
|
|
1598
1861
|
this.wrapper = params.wrapper;
|
|
1862
|
+
// =============== init Listener ===============
|
|
1599
1863
|
five.once('dispose', this.dispose);
|
|
1600
1864
|
}
|
|
1865
|
+
async load(serverData, state, userAction = true) {
|
|
1866
|
+
// const loadImage = async () => {
|
|
1867
|
+
// const floorIndex = this.five.work.observers[this.five.getCurrentState().panoIndex].floorIndex
|
|
1868
|
+
// // 当有 svgString 时,没有加载过程
|
|
1869
|
+
// if (floorplanData.outlines[floorIndex]?.svgContent) return
|
|
1870
|
+
// // 如果当前楼层图片不存在,不存在加载过程
|
|
1871
|
+
// const nowFloorImageSrc = floorplanData.outlines[floorIndex]?.url
|
|
1872
|
+
// if (!nowFloorImageSrc) return
|
|
1873
|
+
// // 图片加载完成时再 render
|
|
1874
|
+
// await new Promise<void>((resolve) => {
|
|
1875
|
+
// const nowFloorImage = new Image()
|
|
1876
|
+
// nowFloorImage.src = nowFloorImageSrc
|
|
1877
|
+
// nowFloorImage.onload = () => resolve()
|
|
1878
|
+
// })
|
|
1879
|
+
// }
|
|
1880
|
+
// await loadImage()
|
|
1881
|
+
function isPluginServerData(serverData) {
|
|
1882
|
+
return Object.prototype.hasOwnProperty.apply(serverData, ['version']);
|
|
1883
|
+
}
|
|
1884
|
+
const copyData = JSON.parse(JSON.stringify(serverData));
|
|
1885
|
+
const _serverData = isPluginServerData(copyData) ? copyData.data : copyData;
|
|
1886
|
+
const prevData = this.data;
|
|
1887
|
+
this.data = await formatData(_serverData);
|
|
1888
|
+
this.hooks.emit('dataLoaded', this.data);
|
|
1889
|
+
this.hooks.emit('dataChange', this.data, prevData);
|
|
1890
|
+
if (state)
|
|
1891
|
+
this.updateState(state, userAction);
|
|
1892
|
+
this.render();
|
|
1893
|
+
}
|
|
1894
|
+
async show(options = {}) {
|
|
1895
|
+
// 已经展示完成了,不做任何操作
|
|
1896
|
+
if (this.state.visible)
|
|
1897
|
+
return;
|
|
1898
|
+
const userAction = options.userAction !== undefined ? options.userAction : true;
|
|
1899
|
+
this.updateState({ visible: true }, userAction);
|
|
1900
|
+
this._show({ userAction });
|
|
1901
|
+
}
|
|
1902
|
+
async hide(options = {}) {
|
|
1903
|
+
if (!this.state.visible)
|
|
1904
|
+
return;
|
|
1905
|
+
const userAction = options.userAction !== undefined ? options.userAction : true;
|
|
1906
|
+
this.updateState({ visible: false }, userAction);
|
|
1907
|
+
this._hide({ userAction });
|
|
1908
|
+
}
|
|
1909
|
+
enable(options = {}) {
|
|
1910
|
+
if (this.state.enabled)
|
|
1911
|
+
return;
|
|
1912
|
+
const userAction = options.userAction !== undefined ? options.userAction : true;
|
|
1913
|
+
this.updateState({ enabled: true }, options.userAction || userAction);
|
|
1914
|
+
this._enable({ userAction });
|
|
1915
|
+
}
|
|
1916
|
+
disable(options = {}) {
|
|
1917
|
+
if (!this.state.enabled)
|
|
1918
|
+
return;
|
|
1919
|
+
const userAction = options.userAction !== undefined ? options.userAction : true;
|
|
1920
|
+
this.updateState({ enabled: false }, options.userAction || userAction);
|
|
1921
|
+
this._disable({ userAction });
|
|
1922
|
+
}
|
|
1923
|
+
/** 更改插件 State */
|
|
1924
|
+
setState(state, options = {}) {
|
|
1925
|
+
const prevState = this.state;
|
|
1926
|
+
const userAction = options.userAction !== undefined ? options.userAction : true;
|
|
1927
|
+
this.updateState(state, userAction);
|
|
1928
|
+
if (state.enabled !== undefined && prevState.enabled !== state.enabled) {
|
|
1929
|
+
const options = { userAction };
|
|
1930
|
+
state.enabled ? this._enable(options) : this._disable(options);
|
|
1931
|
+
}
|
|
1932
|
+
if (state.visible !== undefined && prevState.visible !== state.visible) {
|
|
1933
|
+
const options = { userAction };
|
|
1934
|
+
state.visible ? this._show(options) : this._hide(options);
|
|
1935
|
+
}
|
|
1936
|
+
}
|
|
1601
1937
|
/** 把插件的渲染DOM插入到对应的容器中去 */
|
|
1602
1938
|
appendTo(wrapper) {
|
|
1603
1939
|
this.wrapper = wrapper;
|
|
1604
1940
|
this.render();
|
|
1605
1941
|
}
|
|
1606
|
-
changeConfigs(
|
|
1607
|
-
|
|
1942
|
+
changeConfigs(config, userAction = true) {
|
|
1943
|
+
this.setState({ config }, { userAction });
|
|
1608
1944
|
this.render();
|
|
1609
1945
|
}
|
|
1610
1946
|
setExtraObjectsWith3DPositions(data) {
|
|
@@ -1613,35 +1949,59 @@ class PanoFloorplanRadarPluginController {
|
|
|
1613
1949
|
this.extraObjects = formatExtraObjects(data, this.five, this.data);
|
|
1614
1950
|
this.render();
|
|
1615
1951
|
}
|
|
1952
|
+
async formatData(serverData) {
|
|
1953
|
+
return await formatData(serverData.data);
|
|
1954
|
+
}
|
|
1955
|
+
_enable(options) {
|
|
1956
|
+
const { userAction } = options;
|
|
1957
|
+
this.hooks.emit('enable', { userAction });
|
|
1958
|
+
if (this.state.visible)
|
|
1959
|
+
this._show({ userAction });
|
|
1960
|
+
}
|
|
1961
|
+
_show(options) {
|
|
1962
|
+
if (this.disposed)
|
|
1963
|
+
return;
|
|
1964
|
+
if (!this.state.enabled)
|
|
1965
|
+
return;
|
|
1966
|
+
const { userAction } = options;
|
|
1967
|
+
this.hooks.emit('show', { userAction });
|
|
1968
|
+
this.render();
|
|
1969
|
+
}
|
|
1970
|
+
_hide(options) {
|
|
1971
|
+
if (this.disposed)
|
|
1972
|
+
return;
|
|
1973
|
+
if (!this.state.enabled)
|
|
1974
|
+
return;
|
|
1975
|
+
const { userAction } = options;
|
|
1976
|
+
this.hooks.emit('hide', { userAction });
|
|
1977
|
+
this.render();
|
|
1978
|
+
}
|
|
1979
|
+
updateState(state, userAction) {
|
|
1980
|
+
const prevState = this.state;
|
|
1981
|
+
this.state = Object.assign(Object.assign({}, this.state), state);
|
|
1982
|
+
if (equal(this.state, prevState, { deep: true }))
|
|
1983
|
+
return;
|
|
1984
|
+
this.hooks.emit('stateChange', { state: this.state, prevState, userAction });
|
|
1985
|
+
}
|
|
1616
1986
|
render() {
|
|
1617
|
-
|
|
1987
|
+
if (this.disposed)
|
|
1988
|
+
return;
|
|
1989
|
+
if (!this.state.enabled)
|
|
1990
|
+
return;
|
|
1618
1991
|
// 处理 wrapper
|
|
1619
|
-
if (!this.wrapper) {
|
|
1992
|
+
if (!this.wrapper && this.wrapperSelector) {
|
|
1620
1993
|
const _wrapper = document.querySelector(this.wrapperSelector);
|
|
1621
1994
|
this.wrapper = _wrapper;
|
|
1622
1995
|
}
|
|
1623
1996
|
if (!this.data || !this.wrapper)
|
|
1624
1997
|
return;
|
|
1625
|
-
const props = {
|
|
1626
|
-
|
|
1627
|
-
floorplanData: this.data,
|
|
1628
|
-
extraObjects: this.extraObjects,
|
|
1629
|
-
cameraImageUrl: this.configs.cameraImageUrl,
|
|
1630
|
-
hoverEnable: (_a = this.configs.hoverEnable) !== null && _a !== void 0 ? _a : false,
|
|
1631
|
-
};
|
|
1632
|
-
if (!this.app) {
|
|
1633
|
-
this.app = new Main({
|
|
1634
|
-
target: this.wrapper,
|
|
1635
|
-
props,
|
|
1636
|
-
});
|
|
1637
|
-
return;
|
|
1638
|
-
}
|
|
1639
|
-
this.app.$set(props);
|
|
1998
|
+
const props = Object.assign(Object.assign({}, this.state.config), { five: this.five, floorplanData: this.data, visible: this.state.visible, extraObjects: this.extraObjects });
|
|
1999
|
+
this.app ? this.app.$set(props) : (this.app = new Main({ target: this.wrapper, props }));
|
|
1640
2000
|
}
|
|
1641
2001
|
}
|
|
1642
2002
|
|
|
1643
2003
|
const PanoFloorplanRadarPlugin = (five, params) => {
|
|
1644
|
-
return new
|
|
2004
|
+
return new Controller(five, params);
|
|
1645
2005
|
};
|
|
1646
2006
|
|
|
1647
2007
|
exports.PanoFloorplanRadarPlugin = PanoFloorplanRadarPlugin;
|