@realsee/dnalogel 0.1.5 → 0.1.7-alpha.4
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/components/GLTFView/index.d.ts +104 -0
- package/components/GLTFView/index.js +181 -0
- package/data/81zxMaeVKLQU93OZMG.d.ts +49 -0
- package/data/81zxMaeVKLQU93OZMG.js +633 -0
- package/data/PrXel3aqGbp34JQn.js +139 -1
- package/data/vLykj3NWrllMrG06.js +335 -71
- package/libs/gltf-viewer/Subscribe.d.ts +76 -0
- package/libs/gltf-viewer/Subscribe.js +231 -0
- package/libs/gltf-viewer/coordsMoveByOffset.d.ts +13 -0
- package/libs/gltf-viewer/coordsMoveByOffset.js +22 -0
- package/libs/gltf-viewer/coordsToDirection.d.ts +5 -0
- package/{components/PBRView/index.js → libs/gltf-viewer/coordsToDirection.js} +14 -18
- package/libs/gltf-viewer/formatRad.d.ts +1 -0
- package/libs/gltf-viewer/formatRad.js +13 -0
- package/libs/gltf-viewer/getFrameTime.d.ts +1 -0
- package/libs/gltf-viewer/getFrameTime.js +28 -0
- package/libs/gltf-viewer/index.d.ts +69 -0
- package/libs/gltf-viewer/index.js +744 -0
- package/libs/gltf-viewer/mouseWheel.d.ts +2 -0
- package/libs/gltf-viewer/mouseWheel.js +59 -0
- package/libs/gltf-viewer/requestAnimationFrame.d.ts +1 -0
- package/libs/gltf-viewer/requestAnimationFrame.js +18 -0
- package/libs/gltf-viewer/requestAnimationFrameInterval.d.ts +1 -0
- package/libs/gltf-viewer/requestAnimationFrameInterval.js +31 -0
- package/libs/gltf-viewer/uuid.d.ts +4 -0
- package/libs/gltf-viewer/uuid.js +28 -0
- package/package.json +5 -4
- package/plugins/ModelEntryDoorGuidePlugin/index.d.ts +6 -2
- package/plugins/ModelEntryDoorGuidePlugin/index.js +22 -14
- package/plugins/ModelRoomLabelPlugin/Controller.js +1 -0
- package/plugins/ModelRoomLabelPlugin/RoomLabelItem.js +5 -5
- package/plugins/ModelRoomLabelPlugin/index.d.ts +4 -0
- package/plugins/ModelRoomLabelPlugin/index.js +7 -2
- package/plugins/PanoMaskSelectorPlugin/createBox.js +3 -0
- package/plugins/PanoMaskSelectorPlugin/index.js +3 -1
- package/plugins/PanoMeasurePlugin/Controller/BaseController.d.ts +36 -0
- package/plugins/PanoMeasurePlugin/Controller/BaseController.js +103 -0
- package/plugins/PanoMeasurePlugin/Controller/EditController.d.ts +52 -0
- package/plugins/PanoMeasurePlugin/Controller/EditController.js +341 -0
- package/plugins/PanoMeasurePlugin/Controller/ShortcutKeyController.d.ts +12 -0
- package/plugins/PanoMeasurePlugin/Controller/ShortcutKeyController.js +69 -0
- package/plugins/PanoMeasurePlugin/Controller/WatchController.d.ts +25 -0
- package/plugins/PanoMeasurePlugin/Controller/WatchController.js +371 -0
- package/plugins/PanoMeasurePlugin/Controller/index.d.ts +61 -0
- package/plugins/PanoMeasurePlugin/Controller/index.js +230 -0
- package/plugins/PanoMeasurePlugin/Model/index.d.ts +38 -0
- package/plugins/PanoMeasurePlugin/Model/index.js +235 -0
- package/plugins/PanoMeasurePlugin/Model/line.d.ts +30 -0
- package/plugins/PanoMeasurePlugin/Model/line.js +121 -0
- package/plugins/PanoMeasurePlugin/Model/point.d.ts +16 -0
- package/plugins/PanoMeasurePlugin/Model/point.js +68 -0
- package/plugins/PanoMeasurePlugin/Model/polyline.d.ts +16 -0
- package/plugins/PanoMeasurePlugin/Model/polyline.js +109 -0
- package/plugins/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete.svg.d.ts +2 -0
- package/plugins/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete.svg.js +11 -0
- package/plugins/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_bg.png.d.ts +2 -0
- package/plugins/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_bg.png.js +11 -0
- package/plugins/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.d.ts +2 -0
- package/plugins/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.js +11 -0
- package/plugins/PanoMeasurePlugin/Modules/DeleteDom/index.d.ts +22 -0
- package/plugins/PanoMeasurePlugin/Modules/DeleteDom/index.js +182 -0
- package/plugins/PanoMeasurePlugin/Modules/FiveHelper.d.ts +11 -0
- package/plugins/PanoMeasurePlugin/Modules/FiveHelper.js +66 -0
- package/plugins/PanoMeasurePlugin/Modules/GuideController.d.ts +18 -0
- package/plugins/PanoMeasurePlugin/Modules/GuideController.js +107 -0
- package/plugins/PanoMeasurePlugin/Modules/Magnifier.d.ts +24 -0
- package/plugins/PanoMeasurePlugin/Modules/Magnifier.js +139 -0
- package/plugins/PanoMeasurePlugin/Modules/UIController/HTML.d.ts +6 -0
- package/plugins/PanoMeasurePlugin/Modules/UIController/HTML.js +26 -0
- package/plugins/PanoMeasurePlugin/Modules/UIController/MainBtnController.d.ts +18 -0
- package/plugins/PanoMeasurePlugin/Modules/UIController/MainBtnController.js +169 -0
- package/plugins/PanoMeasurePlugin/Modules/UIController/Revoke/index.d.ts +12 -0
- package/plugins/PanoMeasurePlugin/Modules/UIController/Revoke/index.js +59 -0
- package/plugins/PanoMeasurePlugin/Modules/UIController/index.d.ts +16 -0
- package/plugins/PanoMeasurePlugin/Modules/UIController/index.js +123 -0
- package/plugins/PanoMeasurePlugin/Modules/UIController/style.d.ts +17 -0
- package/plugins/PanoMeasurePlugin/Modules/UIController/style.js +103 -0
- package/plugins/PanoMeasurePlugin/index.d.ts +7 -0
- package/plugins/PanoMeasurePlugin/index.js +20 -0
- package/plugins/PanoMeasurePlugin/typings/data.d.ts +28 -0
- package/plugins/PanoMeasurePlugin/typings/data.js +7 -0
- package/plugins/PanoMeasurePlugin/typings/event.type.d.ts +28 -0
- package/plugins/PanoMeasurePlugin/typings/event.type.js +7 -0
- package/plugins/PanoMeasurePlugin/typings/utils.type.d.ts +1 -0
- package/plugins/PanoMeasurePlugin/typings/utils.type.js +7 -0
- package/plugins/PanoMeasurePlugin/utils/clearGroup.d.ts +2 -0
- package/plugins/PanoMeasurePlugin/utils/clearGroup.js +16 -0
- package/plugins/PanoMeasurePlugin/utils/constants.d.ts +4 -0
- package/plugins/PanoMeasurePlugin/utils/constants.js +47 -0
- package/plugins/PanoMeasurePlugin/utils/distanceDom.d.ts +28 -0
- package/plugins/PanoMeasurePlugin/utils/distanceDom.js +147 -0
- package/plugins/PanoMeasurePlugin/utils/findAssociatedLines.d.ts +2 -0
- package/plugins/PanoMeasurePlugin/utils/findAssociatedLines.js +37 -0
- package/plugins/PanoMeasurePlugin/utils/findClosestPoint.d.ts +10 -0
- package/plugins/PanoMeasurePlugin/utils/findClosestPoint.js +49 -0
- package/plugins/PanoMeasurePlugin/utils/getIntersectionFromEvent.d.ts +4 -0
- package/plugins/PanoMeasurePlugin/utils/getIntersectionFromEvent.js +20 -0
- package/plugins/PanoMeasurePlugin/utils/getPointFromHammerEvent.d.ts +10 -0
- package/plugins/PanoMeasurePlugin/utils/getPointFromHammerEvent.js +33 -0
- package/plugins/PanoMeasurePlugin/utils/ironbox.d.ts +1 -0
- package/plugins/PanoMeasurePlugin/utils/ironbox.js +14 -0
- package/plugins/PanoMeasurePlugin/utils/isNDCPointInScreen.d.ts +2 -0
- package/plugins/PanoMeasurePlugin/utils/isNDCPointInScreen.js +16 -0
- package/plugins/PanoMeasurePlugin/utils/line.d.ts +17 -0
- package/plugins/PanoMeasurePlugin/utils/line.js +61 -0
- package/plugins/PanoMeasurePlugin/utils/math.d.ts +17 -0
- package/plugins/PanoMeasurePlugin/utils/math.js +57 -0
- package/plugins/PanoMeasurePlugin/utils/mouseGroup.d.ts +2 -0
- package/plugins/PanoMeasurePlugin/utils/mouseGroup.js +42 -0
- package/plugins/PanoMeasurePlugin/utils/ndc2Screen.d.ts +5 -0
- package/plugins/PanoMeasurePlugin/utils/ndc2Screen.js +16 -0
- package/plugins/PanoRulerPlugin/index.d.ts +4 -0
- package/plugins/PanoRulerPlugin/index.js +6 -1
- package/plugins/PanoTVVideoPlugin/index.d.ts +2 -0
- package/plugins/PanoTVVideoPlugin/index.js +20 -14
- package/plugins/floorplan/ModelFloorplanPlugin/Controller.d.ts +5 -2
- package/plugins/floorplan/ModelFloorplanPlugin/Controller.js +22 -11
- package/plugins/floorplan/ModelFloorplanPlugin/components/Camera.js +4 -4
- package/plugins/floorplan/ModelFloorplanPlugin/components/Compass.js +5 -5
- package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/RoomLabels.js +2 -2
- package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/RoomMaterial.d.ts +11 -0
- package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/RoomMaterial.js +174 -0
- package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/RuleLabels.d.ts +8 -0
- package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/RuleLabels.js +179 -0
- package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/index.d.ts +2 -0
- package/plugins/floorplan/ModelFloorplanPlugin/components/NowFloor/index.js +14 -2
- package/plugins/floorplan/ModelFloorplanPlugin/components/index.d.ts +3 -0
- package/plugins/floorplan/ModelFloorplanPlugin/components/index.js +1 -1
- package/plugins/floorplan/ModelFloorplanPlugin/typings/utility.d.ts +2 -0
- package/plugins/floorplan/ModelFloorplanPlugin/typings/utility.js +7 -0
- package/plugins/floorplan/ModelFloorplanPlugin/utils/constant.d.ts +1 -1
- package/plugins/floorplan/ModelFloorplanPlugin/utils/constant.js +1 -1
- package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/Camera.js +1 -0
- package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/Camera.style.js +4 -4
- package/plugins/floorplan/PanoFloorplanRadarPlugin/Content/NowFloor/ExtraObjects.js +2 -2
- package/plugins/floorplan/TopviewFloorplanPlugin/Controller.js +3 -3
- package/plugins/floorplan/index.d.ts +4 -0
- package/plugins/floorplan/index.js +13 -0
- package/plugins/floorplan/typings/floorplanData.d.ts +2 -0
- package/plugins/floorplan/typings/floorplanServerData.d.ts +2 -0
- package/plugins/floorplan/utils/formatData.js +2 -1
- package/shared-utils/changeModelCanvasOpacity.d.ts +2 -0
- package/shared-utils/{changeModelCanvansOpacity.js → changeModelCanvasOpacity.js} +2 -2
- package/shared-utils/removeArrayItem.d.ts +7 -0
- package/shared-utils/removeArrayItem.js +22 -0
- package/shared-utils/three/loadTexture.d.ts +2 -2
- package/shared-utils/three/loadTexture.js +21 -2
- package/typedoc/libs.d.ts +1 -0
- package/typedoc/libs.js +7 -0
- package/components/PBRView/index.d.ts +0 -14
- package/shared-utils/changeModelCanvansOpacity.d.ts +0 -2
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.getMouseGroup = getMouseGroup;
|
|
9
|
+
|
|
10
|
+
require("core-js/modules/es.function.name.js");
|
|
11
|
+
|
|
12
|
+
var _three = require("three");
|
|
13
|
+
|
|
14
|
+
var planTextureUrl = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAjoAAAI6CAMAAAAZlhLyAAACB1BMVEUAAAD+/v6qqqqgoKCLi4t7e3u4uLhvb29MTExZWVlCQkJgYGBqamo4ODi9vb3///9FRUXPz887Ozv///9QUFBWVlZdXV38/Pzj4+Pn5+f8/Pz5+fn9/f329vZoaGje3t78/Pz////x8fH8/Pzs7OyBgYHd3d39/f319fX+/v79/f2Kior6+vr////+/v76+vr+/v7////8/Pz9/f3+/v7m5ub7+/v+/v7+/v7j4+P////+/v79/f3d3d3h4eH4+Pj+/v79/f12dnbc3Nz9/f3w8PD9/f34+Pj9/f3+/v5jY2P8/Pz9/f2ioqJubm7v7+/+/v76+vr5+fnv7+/09PSDg4P////t7e3+/v7+/v7+/v7///+ZmZl7e3v7+/vy8vL+/v7+/v7p6en19fX////s7Oz+/v6lpaX+/v7r6+vg4OD9/f3q6ur///////+UlJTt7e329vbz8/Pg4OD///+wsLCdnZ2QkJDe3t77+/vz8/Pw8PD+/v7c3Nyqqqrw8PD4+Pj+/v7////4+Pj////s7Oyurq7f39/p6en8/Pz////8/Pz19fVycnK0tLT////q6ure3t7o6Oj////s7Oz39/fd3d3h4eH+/v7j4+P////+/v7n5+f///////////////+ysrLe3t7////////8/PzHx8fl5eX////39/fv7+/d3d3///8S/hbOAAAArHRSTlMAzhATFhkNGyEfIx4dJQ/OKwoozS4wMh3Uy4SPbjs34kJ9EAkGP+8Snk1nRRo5JYl2eDQiA88wY3PXRDYN6dyTX0s751SxPJdhPjRdV1M4ti0XFa+pQiq5aShQSE09IKJwWMilWr9SVzLC3wvFwplKvKKY9spfUEjge6yqnexaLpqQakgBtVz1wQe9i4s6ZaG788fGKIXx95TZzKbSuKu1s2LlsJb7dqiu/cSWYhzVwQAALl1JREFUeNrs0jFqalEUheE9C9ugAQloCg0WmuIJIbxHUsQUQhQEQUTINNI463fvqU2xT3G5xfetNYQ/+M3PT7SDfDo/T0/SIe+pCJAOt0mHvrgvAqRDUn061/vrNSDrOhqNpEOFURGQNfqWDlW+i4CadJ6lQ95zESAdbpMOfTEcPg+Hw4CsphvpUGM4bsoZB2SNW9JB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";
|
|
15
|
+
|
|
16
|
+
function getMouseGroup() {
|
|
17
|
+
var group = new _three.Group();
|
|
18
|
+
var planGeometry = new _three.PlaneGeometry(0.3, 0.3);
|
|
19
|
+
var planTexture = new _three.TextureLoader().load(planTextureUrl);
|
|
20
|
+
planTexture.encoding = _three.sRGBEncoding;
|
|
21
|
+
var planMaterial = new _three.MeshBasicMaterial({
|
|
22
|
+
map: planTexture,
|
|
23
|
+
transparent: true,
|
|
24
|
+
depthTest: false
|
|
25
|
+
});
|
|
26
|
+
var planMesh = new _three.Mesh(planGeometry, planMaterial);
|
|
27
|
+
var zPath = new _three.CurvePath();
|
|
28
|
+
zPath.add(new _three.LineCurve3(new _three.Vector3(0, 0, 0), new _three.Vector3(0, 0, 0.1)));
|
|
29
|
+
var zGeometry = new _three.TubeGeometry(zPath, 10, 0.005);
|
|
30
|
+
var zMaterial = new _three.MeshBasicMaterial({
|
|
31
|
+
color: 0x33f1ef,
|
|
32
|
+
depthTest: false,
|
|
33
|
+
side: _three.DoubleSide
|
|
34
|
+
});
|
|
35
|
+
var zMesh = new _three.Mesh(zGeometry, zMaterial);
|
|
36
|
+
var ballGeometry = new _three.SphereGeometry(0.01, 32, 32);
|
|
37
|
+
var ballMesh = new _three.Mesh(ballGeometry, zMaterial);
|
|
38
|
+
ballMesh.position.set(0, 0, 0.1);
|
|
39
|
+
group.name = 'mouse-current';
|
|
40
|
+
group.add(planMesh, zMesh, ballMesh);
|
|
41
|
+
return group;
|
|
42
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = ndc2Screen;
|
|
9
|
+
|
|
10
|
+
var _three = require("three");
|
|
11
|
+
|
|
12
|
+
function ndc2Screen(ndcPosition, containerSize) {
|
|
13
|
+
var left = (ndcPosition.x + 1) / 2 * containerSize.width;
|
|
14
|
+
var top = -(ndcPosition.y - 1) / 2 * containerSize.height;
|
|
15
|
+
return new _three.Vector2(left, top);
|
|
16
|
+
}
|
|
@@ -24,4 +24,8 @@ export interface PanoRulerPluginExportType {
|
|
|
24
24
|
* 全景标尺插件
|
|
25
25
|
*/
|
|
26
26
|
export declare const PanoRulerPlugin: FivePlugin<PanoRulerPluginParameterType, PanoRulerPluginExportType>;
|
|
27
|
+
export declare const panoRulerPluginServerParams: {
|
|
28
|
+
name: string;
|
|
29
|
+
version: number;
|
|
30
|
+
};
|
|
27
31
|
export default PanoRulerPlugin;
|
|
@@ -23,7 +23,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
23
23
|
Object.defineProperty(exports, "__esModule", {
|
|
24
24
|
value: true
|
|
25
25
|
});
|
|
26
|
-
exports["default"] = exports.PanoRulerPlugin = void 0;
|
|
26
|
+
exports.panoRulerPluginServerParams = exports["default"] = exports.PanoRulerPlugin = void 0;
|
|
27
27
|
|
|
28
28
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
29
29
|
|
|
@@ -633,5 +633,10 @@ var PanoRulerPlugin = function PanoRulerPlugin(five, params) {
|
|
|
633
633
|
};
|
|
634
634
|
|
|
635
635
|
exports.PanoRulerPlugin = PanoRulerPlugin;
|
|
636
|
+
var panoRulerPluginServerParams = {
|
|
637
|
+
name: 'PanoRulerPlugin',
|
|
638
|
+
version: 0
|
|
639
|
+
};
|
|
640
|
+
exports.panoRulerPluginServerParams = panoRulerPluginServerParams;
|
|
636
641
|
var _default = PanoRulerPlugin;
|
|
637
642
|
exports["default"] = _default;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as THREE from 'three';
|
|
1
2
|
import { FivePlugin } from '@realsee/five';
|
|
2
3
|
export declare type PanoTVVideoPluginPoints = Record<string, {
|
|
3
4
|
position: {
|
|
@@ -19,6 +20,7 @@ export interface PanoTVVideoPluginExportType {
|
|
|
19
20
|
enable: () => void;
|
|
20
21
|
disable: () => void;
|
|
21
22
|
load: (data: PanoTVVideoPluginData, videoElement?: HTMLVideoElement) => void;
|
|
23
|
+
getVideoTexture: () => THREE.VideoTexture | undefined;
|
|
22
24
|
}
|
|
23
25
|
export declare const PanoTVVideoPlugin: FivePlugin<PanoTVVideoPluginParameterType, PanoTVVideoPluginExportType>;
|
|
24
26
|
export default PanoTVVideoPlugin;
|
|
@@ -115,7 +115,7 @@ var PanoTVVideoPlugin = function PanoTVVideoPlugin(five, parameters) {
|
|
|
115
115
|
};
|
|
116
116
|
var videoMeshes = [];
|
|
117
117
|
|
|
118
|
-
var
|
|
118
|
+
var createImageTexture = function createImageTexture(source) {
|
|
119
119
|
var texture = new THREE.TextureLoader().load(source);
|
|
120
120
|
texture.minFilter = THREE.LinearFilter;
|
|
121
121
|
texture.magFilter = THREE.LinearFilter;
|
|
@@ -123,7 +123,7 @@ var PanoTVVideoPlugin = function PanoTVVideoPlugin(five, parameters) {
|
|
|
123
123
|
return texture;
|
|
124
124
|
};
|
|
125
125
|
|
|
126
|
-
var
|
|
126
|
+
var createVideoTexture = function createVideoTexture(source, video) {
|
|
127
127
|
return new Promise(function (resolve, reject) {
|
|
128
128
|
var xhr = new XMLHttpRequest();
|
|
129
129
|
|
|
@@ -161,6 +161,10 @@ var PanoTVVideoPlugin = function PanoTVVideoPlugin(five, parameters) {
|
|
|
161
161
|
});
|
|
162
162
|
};
|
|
163
163
|
|
|
164
|
+
var getVideoTexture = function getVideoTexture() {
|
|
165
|
+
return state.videoTexture;
|
|
166
|
+
};
|
|
167
|
+
|
|
164
168
|
var getPoints = function getPoints(panoIndex) {
|
|
165
169
|
if (!state.rectPoints) return [];
|
|
166
170
|
var rectPoints_ = state.rectPoints[panoIndex];
|
|
@@ -274,14 +278,14 @@ var PanoTVVideoPlugin = function PanoTVVideoPlugin(five, parameters) {
|
|
|
274
278
|
points = data.points;
|
|
275
279
|
state.videoSource = video_src;
|
|
276
280
|
state.rectPoints = points;
|
|
277
|
-
state.imageTexture =
|
|
281
|
+
state.imageTexture = createImageTexture(video_poster_src);
|
|
278
282
|
if (videoElement) state.videoElement = videoElement;
|
|
279
283
|
var panoIndex = five.state.panoIndex;
|
|
280
284
|
var meshes = videoMeshes[panoIndex] = createPanoVideoMeshes(panoIndex);
|
|
281
285
|
meshes.forEach(function (mesh) {
|
|
282
286
|
return five.scene.add(mesh);
|
|
283
287
|
});
|
|
284
|
-
|
|
288
|
+
createVideoTexture(state.videoSource, state.videoElement).then(function (videoTexture_) {
|
|
285
289
|
if (videoTexture_.videoSource !== state.videoSource) return;
|
|
286
290
|
state.videoTexture = videoTexture_;
|
|
287
291
|
|
|
@@ -370,15 +374,16 @@ var PanoTVVideoPlugin = function PanoTVVideoPlugin(five, parameters) {
|
|
|
370
374
|
five.on('modeChange', function (mode) {
|
|
371
375
|
if (!state.enabled) return;
|
|
372
376
|
if (mode === _five.Five.Mode.Panorama) return;
|
|
373
|
-
videoMeshes.forEach(function (
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
377
|
+
videoMeshes.forEach(function (meshes, index) {
|
|
378
|
+
if (meshes) {
|
|
379
|
+
meshes.forEach(function (mesh) {
|
|
380
|
+
mesh.geometry.dispose();
|
|
381
|
+
mesh.material.dispose();
|
|
382
|
+
five.scene.remove(mesh);
|
|
383
|
+
});
|
|
384
|
+
videoMeshes[index] = undefined;
|
|
385
|
+
if (state.videoTexture) state.videoTexture.image.pause();
|
|
386
|
+
}
|
|
382
387
|
});
|
|
383
388
|
});
|
|
384
389
|
five.on('wantsTapGesture', function (raycaster) {
|
|
@@ -418,7 +423,8 @@ var PanoTVVideoPlugin = function PanoTVVideoPlugin(five, parameters) {
|
|
|
418
423
|
return {
|
|
419
424
|
enable: enable,
|
|
420
425
|
disable: disable,
|
|
421
|
-
load: load
|
|
426
|
+
load: load,
|
|
427
|
+
getVideoTexture: getVideoTexture
|
|
422
428
|
};
|
|
423
429
|
};
|
|
424
430
|
|
|
@@ -8,6 +8,9 @@ export interface ModelFloorplanParameterType {
|
|
|
8
8
|
scale?: number;
|
|
9
9
|
autoShowEnable?: boolean;
|
|
10
10
|
hoverEnable?: boolean;
|
|
11
|
+
compassEnable?: boolean;
|
|
12
|
+
ruleLabelsEnable?: boolean;
|
|
13
|
+
roomLabelsEnable?: boolean;
|
|
11
14
|
cameraImage?: {
|
|
12
15
|
style: React.CSSProperties;
|
|
13
16
|
};
|
|
@@ -18,7 +21,7 @@ export interface ModelFloorplanPluginsShowOpts {
|
|
|
18
21
|
floorIndex?: number;
|
|
19
22
|
isAutoShow?: boolean;
|
|
20
23
|
modelOpacity?: number;
|
|
21
|
-
|
|
24
|
+
immediately?: boolean;
|
|
22
25
|
userAction?: boolean;
|
|
23
26
|
}
|
|
24
27
|
export declare const MODEL_FLOORPLAN_PLUGIN_NAME = "modelFloorplanPlugin";
|
|
@@ -64,7 +67,7 @@ export default class ModelFloorplanPluginController {
|
|
|
64
67
|
* 5. 如果多次调用 show 方法,参数与上次参数不一致时,上次 show Promise 会被 reject
|
|
65
68
|
* @param opts.floorIndex 楼层
|
|
66
69
|
* @param opts.modelOpacity 模型透明度
|
|
67
|
-
* @param opts.
|
|
70
|
+
* @param opts.immediately 是否立即展示
|
|
68
71
|
* @param opts.isAutoShow 是否是自动展示
|
|
69
72
|
*/
|
|
70
73
|
show: (opts?: ModelFloorplanPluginsShowOpts | undefined) => Promise<boolean>;
|
|
@@ -57,7 +57,7 @@ var _getPxmm = _interopRequireDefault(require("../../../shared-utils/getPxmm"));
|
|
|
57
57
|
|
|
58
58
|
var _correctFiveState = _interopRequireWildcard(require("./utils/correctFiveState"));
|
|
59
59
|
|
|
60
|
-
var
|
|
60
|
+
var _changeModelCanvasOpacity = _interopRequireDefault(require("../../../shared-utils/changeModelCanvasOpacity"));
|
|
61
61
|
|
|
62
62
|
var _controller = require("./controller.style");
|
|
63
63
|
|
|
@@ -210,7 +210,7 @@ var ModelFloorplanPluginController = /*#__PURE__*/function () {
|
|
|
210
210
|
|
|
211
211
|
_this.showRejection = function (errorMsg) {
|
|
212
212
|
hasRejected = true;
|
|
213
|
-
reject(errorMsg ? new Error(errorMsg) : new Error(_constant.FloorplanErrorType.
|
|
213
|
+
reject(errorMsg ? new Error(errorMsg) : new Error(_constant.FloorplanErrorType.UnknownError));
|
|
214
214
|
};
|
|
215
215
|
|
|
216
216
|
_context.next = 4;
|
|
@@ -234,7 +234,7 @@ var ModelFloorplanPluginController = /*#__PURE__*/function () {
|
|
|
234
234
|
break;
|
|
235
235
|
}
|
|
236
236
|
|
|
237
|
-
return _context.abrupt("return", reject(new Error(_constant.FloorplanErrorType.
|
|
237
|
+
return _context.abrupt("return", reject(new Error(_constant.FloorplanErrorType.UnknownError)));
|
|
238
238
|
|
|
239
239
|
case 11:
|
|
240
240
|
if (_this.visible) {
|
|
@@ -242,7 +242,7 @@ var ModelFloorplanPluginController = /*#__PURE__*/function () {
|
|
|
242
242
|
break;
|
|
243
243
|
}
|
|
244
244
|
|
|
245
|
-
return _context.abrupt("return", reject(new Error(_constant.FloorplanErrorType.
|
|
245
|
+
return _context.abrupt("return", reject(new Error(_constant.FloorplanErrorType.UnknownError)));
|
|
246
246
|
|
|
247
247
|
case 13:
|
|
248
248
|
// 更新户型图状态
|
|
@@ -259,8 +259,8 @@ var ModelFloorplanPluginController = /*#__PURE__*/function () {
|
|
|
259
259
|
|
|
260
260
|
|
|
261
261
|
modelOpacity = (_opts$modelOpacity = opts === null || opts === void 0 ? void 0 : opts.modelOpacity) !== null && _opts$modelOpacity !== void 0 ? _opts$modelOpacity : 0.01;
|
|
262
|
-
renderDuration = opts !== null && opts !== void 0 && opts.
|
|
263
|
-
(0,
|
|
262
|
+
renderDuration = opts !== null && opts !== void 0 && opts.immediately ? 0 : _constant.SHOW_ANIME_DURATION;
|
|
263
|
+
(0, _changeModelCanvasOpacity["default"])(_this.five, modelOpacity, renderDuration);
|
|
264
264
|
|
|
265
265
|
_this.render(renderDuration); // 展示之后的事件监听
|
|
266
266
|
|
|
@@ -329,7 +329,7 @@ var ModelFloorplanPluginController = /*#__PURE__*/function () {
|
|
|
329
329
|
|
|
330
330
|
_this.visible = false;
|
|
331
331
|
(_this$showRejection2 = _this.showRejection) === null || _this$showRejection2 === void 0 ? void 0 : _this$showRejection2.call(_this, _constant.FloorplanErrorType.BreakOffByHide);
|
|
332
|
-
(0,
|
|
332
|
+
(0, _changeModelCanvasOpacity["default"])(_this.five, 1, 0);
|
|
333
333
|
|
|
334
334
|
_this.render();
|
|
335
335
|
|
|
@@ -601,7 +601,15 @@ var ModelFloorplanPluginController = /*#__PURE__*/function () {
|
|
|
601
601
|
key: "render",
|
|
602
602
|
value: function render(duration) {
|
|
603
603
|
if (!this.container) return;
|
|
604
|
-
if (this.size.width === 0) return;
|
|
604
|
+
if (this.size.width === 0) return; // eslint-disable-next-line prettier/prettier
|
|
605
|
+
|
|
606
|
+
var _this$configs = this.configs,
|
|
607
|
+
cameraImage = _this$configs.cameraImage,
|
|
608
|
+
hoverEnable = _this$configs.hoverEnable,
|
|
609
|
+
getLabelElement = _this$configs.getLabelElement,
|
|
610
|
+
roomLabelsEnable = _this$configs.roomLabelsEnable,
|
|
611
|
+
compassEnable = _this$configs.compassEnable,
|
|
612
|
+
ruleLabelsEnable = _this$configs.ruleLabelsEnable;
|
|
605
613
|
var props = {
|
|
606
614
|
five: this.five,
|
|
607
615
|
pxmm: this.pxmm,
|
|
@@ -611,9 +619,12 @@ var ModelFloorplanPluginController = /*#__PURE__*/function () {
|
|
|
611
619
|
floorIndex: this.floorIndex,
|
|
612
620
|
floorplanData: this.floorplanData,
|
|
613
621
|
onRoomHeightClick: this.handleClick,
|
|
614
|
-
cameraImage:
|
|
615
|
-
hoverEnable:
|
|
616
|
-
getLabelElement:
|
|
622
|
+
cameraImage: cameraImage,
|
|
623
|
+
hoverEnable: hoverEnable !== null && hoverEnable !== void 0 ? hoverEnable : true,
|
|
624
|
+
getLabelElement: getLabelElement,
|
|
625
|
+
roomLabelsEnable: roomLabelsEnable !== null && roomLabelsEnable !== void 0 ? roomLabelsEnable : true,
|
|
626
|
+
compassEnable: compassEnable !== null && compassEnable !== void 0 ? compassEnable : true,
|
|
627
|
+
ruleLabelsEnable: ruleLabelsEnable !== null && ruleLabelsEnable !== void 0 ? ruleLabelsEnable : true,
|
|
617
628
|
lastPanoramaLongitude: this.lastPanoramaLongitude
|
|
618
629
|
};
|
|
619
630
|
|
|
@@ -57,10 +57,10 @@ function Camera(props) {
|
|
|
57
57
|
var size = bodyWidth < 500 || bodyHeight < 500 ? 17 : 37;
|
|
58
58
|
var rotateBaseStyle = {
|
|
59
59
|
position: 'absolute',
|
|
60
|
-
left:
|
|
61
|
-
top:
|
|
62
|
-
width:
|
|
63
|
-
height:
|
|
60
|
+
left: (0, _px2rem["default"])(-15),
|
|
61
|
+
top: (0, _px2rem["default"])(-15),
|
|
62
|
+
width: (0, _px2rem["default"])(size),
|
|
63
|
+
height: (0, _px2rem["default"])(size),
|
|
64
64
|
transformOrigin: "".concat((0, _px2rem["default"])(15), " ").concat((0, _px2rem["default"])(15)),
|
|
65
65
|
transform: "rotate(".concat(rotate, "deg)"),
|
|
66
66
|
backgroundImage: "url('//vrlab-image4.ljcdn.com/release/web/default-sidemap-camera.c9772225.png')",
|
|
@@ -38,11 +38,11 @@ function Compass(props) {
|
|
|
38
38
|
if (!northRad) return null;
|
|
39
39
|
var rotate = rad2Deg(northRad);
|
|
40
40
|
var compassStyle = {
|
|
41
|
-
width:
|
|
42
|
-
height:
|
|
41
|
+
width: (0, _px2rem["default"])(231),
|
|
42
|
+
height: (0, _px2rem["default"])(41),
|
|
43
43
|
position: 'absolute',
|
|
44
44
|
left: '50%',
|
|
45
|
-
top:
|
|
45
|
+
top: (0, _px2rem["default"])(-46),
|
|
46
46
|
willChange: 'opacity',
|
|
47
47
|
transformOrigin: "center ".concat((0, _px2rem["default"])(184)),
|
|
48
48
|
transform: "translateX(-50%) translateZ(10px) rotate(".concat(-rotate + 90, "deg)")
|
|
@@ -60,11 +60,11 @@ function Compass(props) {
|
|
|
60
60
|
var textStyle = {
|
|
61
61
|
position: 'absolute',
|
|
62
62
|
left: '50%',
|
|
63
|
-
top:
|
|
63
|
+
top: (0, _px2rem["default"])(15),
|
|
64
64
|
transform: 'translateX(-50%)',
|
|
65
65
|
opacity: '.2',
|
|
66
66
|
fontWeight: 'bold',
|
|
67
|
-
fontSize:
|
|
67
|
+
fontSize: (0, _px2rem["default"])(10),
|
|
68
68
|
color: '#fff'
|
|
69
69
|
};
|
|
70
70
|
return /*#__PURE__*/React.createElement("div", {
|
|
@@ -80,8 +80,8 @@ function RoomLabel(props) {
|
|
|
80
80
|
display: 'flex',
|
|
81
81
|
flexFlow: 'column',
|
|
82
82
|
alignItems: 'center',
|
|
83
|
-
fontSize:
|
|
84
|
-
lineHeight:
|
|
83
|
+
fontSize: (0, _px2rem["default"])(10),
|
|
84
|
+
lineHeight: (0, _px2rem["default"])(15),
|
|
85
85
|
color: '#fff',
|
|
86
86
|
transform: 'translate(-50%, -50%)',
|
|
87
87
|
whiteSpace: 'nowrap'
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { FloorplanData, FloorplanRoomItem } from '../../../typings/floorplanData';
|
|
3
|
+
/** 为不同的房间添加不同的样式 */
|
|
4
|
+
export default function RoomMaterial(props: {
|
|
5
|
+
floorIndex: number;
|
|
6
|
+
floorplanData: FloorplanData;
|
|
7
|
+
pxmm: number;
|
|
8
|
+
}): JSX.Element;
|
|
9
|
+
export declare function RoomMaterialSwitch(props: {
|
|
10
|
+
room: FloorplanRoomItem;
|
|
11
|
+
}): JSX.Element;
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.array.iterator.js");
|
|
4
|
+
|
|
5
|
+
require("core-js/modules/es.object.to-string.js");
|
|
6
|
+
|
|
7
|
+
require("core-js/modules/es.string.iterator.js");
|
|
8
|
+
|
|
9
|
+
require("core-js/modules/es.weak-map.js");
|
|
10
|
+
|
|
11
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
12
|
+
|
|
13
|
+
require("core-js/modules/es.object.define-property.js");
|
|
14
|
+
|
|
15
|
+
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
16
|
+
|
|
17
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
18
|
+
|
|
19
|
+
Object.defineProperty(exports, "__esModule", {
|
|
20
|
+
value: true
|
|
21
|
+
});
|
|
22
|
+
exports.RoomMaterialSwitch = RoomMaterialSwitch;
|
|
23
|
+
exports["default"] = RoomMaterial;
|
|
24
|
+
|
|
25
|
+
require("core-js/modules/es.array.map.js");
|
|
26
|
+
|
|
27
|
+
require("core-js/modules/es.object.assign.js");
|
|
28
|
+
|
|
29
|
+
require("core-js/modules/es.array.concat.js");
|
|
30
|
+
|
|
31
|
+
var React = _interopRequireWildcard(require("react"));
|
|
32
|
+
|
|
33
|
+
var _formatPosition = _interopRequireWildcard(require("../../../utils/formatPosition"));
|
|
34
|
+
|
|
35
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
36
|
+
|
|
37
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
38
|
+
|
|
39
|
+
/** 为不同的房间添加不同的样式 */
|
|
40
|
+
function RoomMaterial(props) {
|
|
41
|
+
var bounding = props.floorplanData.bounding;
|
|
42
|
+
var rooms = props.floorplanData.floorDatas[props.floorIndex].rooms;
|
|
43
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
44
|
+
className: "floorplan-plugin__room-material"
|
|
45
|
+
}, rooms // 户型图坐标转 Svg 坐标
|
|
46
|
+
.map(function (room) {
|
|
47
|
+
return Object.assign({}, room, {
|
|
48
|
+
path: room.path.map(function (p) {
|
|
49
|
+
return (0, _formatPosition["default"])(p, props.pxmm, bounding);
|
|
50
|
+
})
|
|
51
|
+
});
|
|
52
|
+
}).map(function (room) {
|
|
53
|
+
return /*#__PURE__*/React.createElement(RoomMaterialSvgWrapper, {
|
|
54
|
+
key: room.id
|
|
55
|
+
}, /*#__PURE__*/React.createElement(RoomMaterialSwitch, {
|
|
56
|
+
room: room
|
|
57
|
+
}));
|
|
58
|
+
}));
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
function RoomMaterialSwitch(props) {
|
|
62
|
+
var floorType = props.room.floorType;
|
|
63
|
+
if (floorType === 1) return /*#__PURE__*/React.createElement(RoomMaterial_0, {
|
|
64
|
+
path: props.room.path
|
|
65
|
+
});
|
|
66
|
+
if (floorType === 0) return /*#__PURE__*/React.createElement(RoomMaterial_2, {
|
|
67
|
+
path: props.room.path
|
|
68
|
+
});
|
|
69
|
+
return /*#__PURE__*/React.createElement(RoomMaterial_1, {
|
|
70
|
+
path: props.room.path
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
function RoomMaterialSvgWrapper(props) {
|
|
75
|
+
return /*#__PURE__*/React.createElement("svg", {
|
|
76
|
+
style: {
|
|
77
|
+
position: 'absolute',
|
|
78
|
+
width: '100%',
|
|
79
|
+
height: '100%',
|
|
80
|
+
overflow: 'visible'
|
|
81
|
+
}
|
|
82
|
+
}, props.children);
|
|
83
|
+
}
|
|
84
|
+
/** 纯色背景 */
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
function RoomMaterial_0(props) {
|
|
88
|
+
var d = (0, _formatPosition.pathD)(props.path, {
|
|
89
|
+
needZ: true
|
|
90
|
+
});
|
|
91
|
+
return /*#__PURE__*/React.createElement("path", {
|
|
92
|
+
d: d,
|
|
93
|
+
fill: "#2F313A"
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
/** 瓷砖地板,偏蓝的格格 */
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
function RoomMaterial_1(props) {
|
|
100
|
+
var d = (0, _formatPosition.pathD)(props.path, {
|
|
101
|
+
needZ: true
|
|
102
|
+
});
|
|
103
|
+
var halfWidth = 6;
|
|
104
|
+
var width = halfWidth * 2;
|
|
105
|
+
var patternPathD = "M0 ".concat(halfWidth, " h ").concat(width, " M").concat(halfWidth, " 0 v ").concat(width);
|
|
106
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("pattern", {
|
|
107
|
+
id: "fpm-room-pattern-0",
|
|
108
|
+
x: "0",
|
|
109
|
+
y: "0",
|
|
110
|
+
width: width,
|
|
111
|
+
height: width,
|
|
112
|
+
patternUnits: "userSpaceOnUse"
|
|
113
|
+
}, /*#__PURE__*/React.createElement("rect", {
|
|
114
|
+
x: "0",
|
|
115
|
+
y: "0",
|
|
116
|
+
width: width,
|
|
117
|
+
height: width,
|
|
118
|
+
fill: "#323747"
|
|
119
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
120
|
+
d: patternPathD,
|
|
121
|
+
stroke: "#ffffff",
|
|
122
|
+
strokeOpacity: "0.06",
|
|
123
|
+
strokeWidth: "0.5",
|
|
124
|
+
fill: "none"
|
|
125
|
+
}))), /*#__PURE__*/React.createElement("path", {
|
|
126
|
+
d: d,
|
|
127
|
+
fill: "url(#fpm-room-pattern-0)"
|
|
128
|
+
}));
|
|
129
|
+
}
|
|
130
|
+
/** 木地板,偏灰的格格 */
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
function RoomMaterial_2(props) {
|
|
134
|
+
var d = (0, _formatPosition.pathD)(props.path, {
|
|
135
|
+
needZ: true
|
|
136
|
+
});
|
|
137
|
+
|
|
138
|
+
var PatternRect = function PatternRect() {
|
|
139
|
+
return /*#__PURE__*/React.createElement("rect", {
|
|
140
|
+
x: "0.5",
|
|
141
|
+
y: "0.5",
|
|
142
|
+
width: "6",
|
|
143
|
+
height: "50",
|
|
144
|
+
fill: "none",
|
|
145
|
+
stroke: "#4B4B57",
|
|
146
|
+
strokeWidth: "0.5"
|
|
147
|
+
});
|
|
148
|
+
};
|
|
149
|
+
|
|
150
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("pattern", {
|
|
151
|
+
id: "room-material-pattern-1",
|
|
152
|
+
x: "0",
|
|
153
|
+
y: "0",
|
|
154
|
+
width: "13",
|
|
155
|
+
height: "51",
|
|
156
|
+
patternUnits: "userSpaceOnUse"
|
|
157
|
+
}, /*#__PURE__*/React.createElement(PatternRect, null)), /*#__PURE__*/React.createElement("pattern", {
|
|
158
|
+
id: "room-material-pattern-2",
|
|
159
|
+
x: "7",
|
|
160
|
+
y: "25",
|
|
161
|
+
width: "13",
|
|
162
|
+
height: "51",
|
|
163
|
+
patternUnits: "userSpaceOnUse"
|
|
164
|
+
}, /*#__PURE__*/React.createElement(PatternRect, null))), /*#__PURE__*/React.createElement("path", {
|
|
165
|
+
d: d,
|
|
166
|
+
fill: "#43434D"
|
|
167
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
168
|
+
d: d,
|
|
169
|
+
fill: "url(#room-material-pattern-1)"
|
|
170
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
171
|
+
d: d,
|
|
172
|
+
fill: "url(#room-material-pattern-2)"
|
|
173
|
+
}));
|
|
174
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { FloorplanData } from '../../../typings/floorplanData';
|
|
3
|
+
/** 展示当前楼层的户型图对应上下左右的标尺 */
|
|
4
|
+
export default function RuleLabels(props: {
|
|
5
|
+
floorIndex: number;
|
|
6
|
+
floorplanData: FloorplanData;
|
|
7
|
+
pxmm: number;
|
|
8
|
+
}): JSX.Element | null;
|