architwin 1.16.0 → 1.16.2
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/lib/architwin.d.ts +2 -1
- package/lib/architwin.js +1 -1
- package/lib/atwinui/components/toolbar/i18n.js +4 -2
- package/lib/atwinui/components/toolbar/spacePartition/roomFormPane.d.ts +6 -5
- package/lib/atwinui/components/toolbar/spacePartition/roomFormPane.js +91 -76
- package/lib/atwinui/components/toolbar/spacePartition/roomTreePane.js +19 -3
- package/lib/atwinui/components/toolbar/tagListPane.js +1 -1
- package/lib/atwinui/events.js +14 -28
- package/lib/loaders/planeGeometry2.js +7 -7
- package/lib/loaders/polydrawerLoader.js +3 -1
- package/package.json +1 -1
|
@@ -277,7 +277,8 @@ i18n
|
|
|
277
277
|
"Window": "Window",
|
|
278
278
|
"CannotBackDrawingMode": "Cannot go back while drawing mode is active.",
|
|
279
279
|
"PleaseOffDrawingMode": "Action cannot be done, please turn off drawing mode.",
|
|
280
|
-
"IotCategoryRequired": "IoT Category is required"
|
|
280
|
+
"IotCategoryRequired": "IoT Category is required",
|
|
281
|
+
"SuccessUpdatedFloorLevel": "Updated the partition's floor level"
|
|
281
282
|
}
|
|
282
283
|
},
|
|
283
284
|
ja: {
|
|
@@ -549,7 +550,8 @@ i18n
|
|
|
549
550
|
"CannotBackDrawingMode": "描画モードがアクティブな間は戻ることができません。",
|
|
550
551
|
"PleaseOffDrawingMode": "操作を行う前に、描画モードをオフにしてください。",
|
|
551
552
|
"Successfully Deleted Tag": "タグを削除しました",
|
|
552
|
-
"IotCategoryRequired": "IoTカテゴリは必須です"
|
|
553
|
+
"IotCategoryRequired": "IoTカテゴリは必須です",
|
|
554
|
+
"SuccessUpdatedFloorLevel": "区画のフロアオフセット値が更新されました"
|
|
553
555
|
}
|
|
554
556
|
}
|
|
555
557
|
},
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
import { FORM_MODE, PartitionNode, PolygonData, WallPolyData, IObjectData
|
|
2
|
-
export declare let isEditWindow: boolean;
|
|
3
|
-
export declare let currentEditWindowIndex: number;
|
|
4
|
-
export declare let currentWindow: WindowPolyData;
|
|
1
|
+
import { FORM_MODE, PartitionNode, PolygonData, WallPolyData, IObjectData } from "../../../../types";
|
|
5
2
|
export declare function renderRoomFormPane(): HTMLDivElement;
|
|
6
3
|
/**
|
|
7
4
|
* Toggles the state of the partition drawing functionality.
|
|
@@ -33,6 +30,7 @@ export declare function displayPartitionFormMode(): void;
|
|
|
33
30
|
*/
|
|
34
31
|
export declare function handlePartitionRowEditBtnClickEvent(partitions: Array<PartitionNode>, targetElement: HTMLElement): void;
|
|
35
32
|
export declare function displayWall(wall: WallPolyData): HTMLElement;
|
|
33
|
+
export declare function setDrawConfig(drawMode: 'window' | 'partition'): void;
|
|
36
34
|
/**
|
|
37
35
|
* Clears the partition form by resetting UI elements and internal data.
|
|
38
36
|
* - Navigates back to the partition list view.
|
|
@@ -105,7 +103,7 @@ export declare function getCurrentPolygonData(): PolygonData;
|
|
|
105
103
|
* Sets the partition data, including updating the floor level and generating a new
|
|
106
104
|
* partition with its corresponding UUID, space UUID, and polygon data.
|
|
107
105
|
*/
|
|
108
|
-
export declare function setCurrentPartitionData(): Promise<void>;
|
|
106
|
+
export declare function setCurrentPartitionData(payload: PolygonData | undefined): Promise<void>;
|
|
109
107
|
export declare function removeWindow(index?: number): void;
|
|
110
108
|
export declare function toggleUndoRedoButtons(undo: boolean, redo: boolean): void;
|
|
111
109
|
export declare function getCurrentPartitionData(): PartitionNode;
|
|
@@ -125,3 +123,6 @@ export declare function handlePartitionWallEditBtn(wallUuid: string): Promise<vo
|
|
|
125
123
|
export declare function getTempCurrentRoomEditData(): Array<PartitionNode>;
|
|
126
124
|
export declare function setTempCurrentRoomEditData(roomEditData: Array<PartitionNode>): void;
|
|
127
125
|
export declare function getCurrentWall(): WallPolyData;
|
|
126
|
+
export declare function getIsEditWindow(): boolean;
|
|
127
|
+
export declare function setIsEditWindow(value: boolean): void;
|
|
128
|
+
export declare function setCurrentEditWindowIndex(value: number): void;
|
|
@@ -41,10 +41,10 @@ let inputFloorMaterial;
|
|
|
41
41
|
let floorMaterial = '';
|
|
42
42
|
let inputWallMaterial;
|
|
43
43
|
let wallMaterial = '';
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
export let currentWindow = null;
|
|
44
|
+
let currentEditWindowIndex = null;
|
|
45
|
+
let currentWindowIndex = null;
|
|
47
46
|
let tempCurrentEditRoom = null;
|
|
47
|
+
let isEditWindow = false;
|
|
48
48
|
export function renderRoomFormPane() {
|
|
49
49
|
log.info("__@ renderRoomFormPane: ", roomFormMode);
|
|
50
50
|
const element = document.createElement('div');
|
|
@@ -228,10 +228,11 @@ export function toggleDrawPartitionButton() {
|
|
|
228
228
|
isEditPartition = false;
|
|
229
229
|
previousPartitionData = null;
|
|
230
230
|
}
|
|
231
|
-
|
|
231
|
+
partitionHistory.clearHistory();
|
|
232
|
+
toggleUndoRedoButtons(false, false);
|
|
232
233
|
}
|
|
233
234
|
export function toggleDrawWindowButton() {
|
|
234
|
-
var _a, _b;
|
|
235
|
+
var _a, _b, _c;
|
|
235
236
|
log.info("toggleDrawWindowButton()", getCurrentPolygon(), _3DXObjects);
|
|
236
237
|
setCurrentPolygon(undefined);
|
|
237
238
|
const addDoorButton = document.getElementById('at-add-window-door-btn');
|
|
@@ -246,6 +247,7 @@ export function toggleDrawWindowButton() {
|
|
|
246
247
|
${i18n.t('DoneDrawing')}
|
|
247
248
|
<span class="mdi mdi-check-bold"></span>
|
|
248
249
|
`;
|
|
250
|
+
currentWindowIndex = (_a = currentWall.windows) === null || _a === void 0 ? void 0 : _a.length;
|
|
249
251
|
}
|
|
250
252
|
const objectIndex = _3DXObjects.findIndex(obj => obj.object.id == currentObject.object.id);
|
|
251
253
|
log.info("objectIndex", objectIndex);
|
|
@@ -253,7 +255,7 @@ export function toggleDrawWindowButton() {
|
|
|
253
255
|
lineTypeComponentConfig: {
|
|
254
256
|
renderPolygonOnAdd: false,
|
|
255
257
|
drawingMode: drawingMode,
|
|
256
|
-
targetIndex: (
|
|
258
|
+
targetIndex: (_c = currentEditWindowIndex !== null && currentEditWindowIndex !== void 0 ? currentEditWindowIndex : (_b = currentWall.windows) === null || _b === void 0 ? void 0 : _b.length) !== null && _c !== void 0 ? _c : 0,
|
|
257
259
|
polygonData: currentPolygonData,
|
|
258
260
|
targetUUID: currentWall.uuid,
|
|
259
261
|
objectIndex: objectIndex
|
|
@@ -266,6 +268,7 @@ export function toggleDrawWindowButton() {
|
|
|
266
268
|
else {
|
|
267
269
|
isDrawing = false;
|
|
268
270
|
drawingMode = null;
|
|
271
|
+
currentWindowIndex = null;
|
|
269
272
|
currentPartitionData.polygon_json = JSON.stringify(currentPolygonData);
|
|
270
273
|
addDoorButton.classList.remove('at_add_window_door_btn_active');
|
|
271
274
|
addDoorButton.classList.add('at_add_window_door_btn');
|
|
@@ -290,16 +293,17 @@ export function toggleDrawWindowButton() {
|
|
|
290
293
|
log.info("objectIndex", objectIndex);
|
|
291
294
|
if (_3DXObjects[objectIndex].children) {
|
|
292
295
|
_3DXObjects[objectIndex].children.map((win) => __awaiter(this, void 0, void 0, function* () {
|
|
293
|
-
var
|
|
296
|
+
var _d;
|
|
294
297
|
log.info("WIND", win);
|
|
295
|
-
if (win.index == ((
|
|
298
|
+
if (win.index == ((_d = currentWall.windows) === null || _d === void 0 ? void 0 : _d.length) - 1 && win.wallUUID == currentWall.uuid) {
|
|
296
299
|
yield disposeModel(win);
|
|
297
300
|
}
|
|
298
301
|
}));
|
|
299
302
|
}
|
|
300
303
|
}
|
|
301
304
|
}
|
|
302
|
-
|
|
305
|
+
partitionHistory.clearHistory();
|
|
306
|
+
toggleUndoRedoButtons(false, false);
|
|
303
307
|
}
|
|
304
308
|
/**
|
|
305
309
|
* Displays the partition form based on the current form mode.
|
|
@@ -919,7 +923,6 @@ function setupEditWindow(element, window) {
|
|
|
919
923
|
const confirmBtn = element.querySelector(`#at-confirm-edit-window-${window.index}`);
|
|
920
924
|
if (!editBtn || !editNameContainer || !inputName || !nameLabel || !editMaterialContainer || !inputMaterial)
|
|
921
925
|
return;
|
|
922
|
-
currentWindow = window;
|
|
923
926
|
// Show inputs when edit icon is clicked
|
|
924
927
|
editBtn.addEventListener("click", () => {
|
|
925
928
|
if (isDrawing) {
|
|
@@ -936,18 +939,7 @@ function setupEditWindow(element, window) {
|
|
|
936
939
|
currentEditWindowIndex = window.index;
|
|
937
940
|
drawingMode = 'window';
|
|
938
941
|
toggleDrawWindowButton();
|
|
939
|
-
|
|
940
|
-
setCurrentPolygon(currentObject);
|
|
941
|
-
const drawConfig = {
|
|
942
|
-
lineTypeComponentConfig: {
|
|
943
|
-
renderPolygonOnAdd: false,
|
|
944
|
-
drawingMode: drawingMode,
|
|
945
|
-
polygonData: currentObject.object.object_data.json_data,
|
|
946
|
-
targetUUID: currentWall.uuid,
|
|
947
|
-
targetIndex: currentEditWindowIndex
|
|
948
|
-
}
|
|
949
|
-
};
|
|
950
|
-
setDrawingConfig(drawConfig);
|
|
942
|
+
setDrawConfig('window');
|
|
951
943
|
// @ts-ignore
|
|
952
944
|
const windowComponent = {
|
|
953
945
|
inputs: {
|
|
@@ -956,17 +948,7 @@ function setupEditWindow(element, window) {
|
|
|
956
948
|
};
|
|
957
949
|
enableVerticeControls(windowComponent);
|
|
958
950
|
isDrawing = true;
|
|
959
|
-
|
|
960
|
-
if (currentPartitionData) {
|
|
961
|
-
data = {
|
|
962
|
-
polygon: {
|
|
963
|
-
uuid: currentPartitionData.uuid,
|
|
964
|
-
polygon_json: currentPolygonData
|
|
965
|
-
},
|
|
966
|
-
verticePath: window.path,
|
|
967
|
-
};
|
|
968
|
-
}
|
|
969
|
-
// partitionHistory.setCurrent(data)
|
|
951
|
+
// partitionHistory.setCurrent(window.path)
|
|
970
952
|
});
|
|
971
953
|
// // Confirm edit name and material
|
|
972
954
|
confirmBtn.addEventListener("click", () => {
|
|
@@ -977,7 +959,7 @@ function setupEditWindow(element, window) {
|
|
|
977
959
|
nameLabel.textContent = window.name;
|
|
978
960
|
editNameContainer.style.display = "none";
|
|
979
961
|
const newMaterial = inputMaterial.value.trim();
|
|
980
|
-
window.material = newMaterial
|
|
962
|
+
window.material = newMaterial;
|
|
981
963
|
editMaterialContainer.style.display = "none";
|
|
982
964
|
editBtn.style.display = "flex";
|
|
983
965
|
confirmBtn.style.display = "none";
|
|
@@ -1001,9 +983,23 @@ function setupEditWindow(element, window) {
|
|
|
1001
983
|
isDrawing = false;
|
|
1002
984
|
isEditWindow = false;
|
|
1003
985
|
partitionHistory.clearHistory();
|
|
1004
|
-
|
|
986
|
+
toggleUndoRedoButtons(false, false);
|
|
1005
987
|
});
|
|
1006
988
|
}
|
|
989
|
+
export function setDrawConfig(drawMode) {
|
|
990
|
+
log.info("currentObject ", currentObject);
|
|
991
|
+
setCurrentPolygon(currentObject);
|
|
992
|
+
const drawConfig = {
|
|
993
|
+
lineTypeComponentConfig: {
|
|
994
|
+
renderPolygonOnAdd: false,
|
|
995
|
+
drawingMode: drawMode,
|
|
996
|
+
polygonData: currentObject.object.object_data.json_data,
|
|
997
|
+
targetUUID: currentWall.uuid,
|
|
998
|
+
targetIndex: currentEditWindowIndex
|
|
999
|
+
}
|
|
1000
|
+
};
|
|
1001
|
+
setDrawingConfig(drawConfig);
|
|
1002
|
+
}
|
|
1007
1003
|
function saveWallChanges() {
|
|
1008
1004
|
log.info("currentWall", currentWall);
|
|
1009
1005
|
updateWallInPolygon(currentWall);
|
|
@@ -1457,38 +1453,42 @@ export function clearTempCurrentPolygon() {
|
|
|
1457
1453
|
*/
|
|
1458
1454
|
export function setPolygonData(payload) {
|
|
1459
1455
|
console.log('setPolygonData()', payload);
|
|
1460
|
-
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1456
|
+
if (payload != undefined) {
|
|
1457
|
+
// Helper function to round numbers to 2 decimals
|
|
1458
|
+
function roundToFourDecimals(value) {
|
|
1459
|
+
if (typeof value === "number") {
|
|
1460
|
+
return Math.round(value * 10000) / 10000; // Round to 4 decimals
|
|
1461
|
+
}
|
|
1462
|
+
else if (Array.isArray(value)) {
|
|
1463
|
+
return value.map(roundToFourDecimals); // Recursively round each item in the array
|
|
1464
|
+
}
|
|
1465
|
+
else if (typeof value === "object" && value !== null) {
|
|
1466
|
+
return Object.keys(value).reduce((acc, key) => {
|
|
1467
|
+
acc[key] = roundToFourDecimals(value[key]); // Recursively process each object property
|
|
1468
|
+
return acc;
|
|
1469
|
+
}, {});
|
|
1470
|
+
}
|
|
1471
|
+
return value;
|
|
1464
1472
|
}
|
|
1465
|
-
|
|
1466
|
-
|
|
1473
|
+
// Round numbers in the polygon JSON recursively
|
|
1474
|
+
if (payload) {
|
|
1475
|
+
payload = roundToFourDecimals(payload);
|
|
1467
1476
|
}
|
|
1468
|
-
|
|
1469
|
-
|
|
1470
|
-
|
|
1471
|
-
|
|
1472
|
-
}, {});
|
|
1477
|
+
// Set floor UUID and name
|
|
1478
|
+
if (payload.floor) {
|
|
1479
|
+
payload.floor.uuid = payload.floor.uuid || generateUUID();
|
|
1480
|
+
payload.floor.name = `floor`;
|
|
1473
1481
|
}
|
|
1474
|
-
|
|
1475
|
-
|
|
1476
|
-
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
// Set floor UUID and name
|
|
1481
|
-
if (payload.floor) {
|
|
1482
|
-
payload.floor.uuid = payload.floor.uuid || generateUUID();
|
|
1483
|
-
payload.floor.name = `floor`;
|
|
1482
|
+
// Iterate over walls to set UUID and names
|
|
1483
|
+
if (payload.walls && payload.walls.length > 0) {
|
|
1484
|
+
payload.walls = payload.walls.map((wall, index) => (Object.assign(Object.assign({}, roundToFourDecimals(wall)), { name: `wall-${index}`, uuid: wall.uuid || generateUUID() })));
|
|
1485
|
+
}
|
|
1486
|
+
currentPolygonData = payload;
|
|
1487
|
+
setCurrentPartitionData(payload);
|
|
1484
1488
|
}
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
payload.walls = payload.walls.map((wall, index) => (Object.assign(Object.assign({}, roundToFourDecimals(wall)), { name: `wall-${index}`, uuid: wall.uuid || generateUUID() })));
|
|
1489
|
+
else {
|
|
1490
|
+
setCurrentPartitionData(undefined);
|
|
1488
1491
|
}
|
|
1489
|
-
currentPolygonData = payload;
|
|
1490
|
-
console.log("setPolygonData() currentPolygonData:", currentPolygonData);
|
|
1491
|
-
setCurrentPartitionData();
|
|
1492
1492
|
}
|
|
1493
1493
|
/**
|
|
1494
1494
|
* Returns current polygon data
|
|
@@ -1501,10 +1501,10 @@ export function getCurrentPolygonData() {
|
|
|
1501
1501
|
* Sets the partition data, including updating the floor level and generating a new
|
|
1502
1502
|
* partition with its corresponding UUID, space UUID, and polygon data.
|
|
1503
1503
|
*/
|
|
1504
|
-
export function setCurrentPartitionData() {
|
|
1504
|
+
export function setCurrentPartitionData(payload) {
|
|
1505
1505
|
var _a;
|
|
1506
1506
|
return __awaiter(this, void 0, void 0, function* () {
|
|
1507
|
-
console.log('setCurrentPartitionData()');
|
|
1507
|
+
console.log('setCurrentPartitionData()', payload);
|
|
1508
1508
|
const floorLevel = ((_a = document.getElementById('at-room-floor-level-input')) === null || _a === void 0 ? void 0 : _a.value) || null;
|
|
1509
1509
|
const currentUrl = window.location.href;
|
|
1510
1510
|
const spaceUUID = extractUUID(currentUrl);
|
|
@@ -1519,7 +1519,9 @@ export function setCurrentPartitionData() {
|
|
|
1519
1519
|
resolve();
|
|
1520
1520
|
}
|
|
1521
1521
|
if (currentObjectData == undefined) {
|
|
1522
|
-
|
|
1522
|
+
if (drawingMode === 'partition') {
|
|
1523
|
+
currentPolygonData = null;
|
|
1524
|
+
}
|
|
1523
1525
|
clearInterval(interval);
|
|
1524
1526
|
resolve();
|
|
1525
1527
|
}
|
|
@@ -1530,7 +1532,7 @@ export function setCurrentPartitionData() {
|
|
|
1530
1532
|
}
|
|
1531
1533
|
}, 50); // Check every 50ms
|
|
1532
1534
|
});
|
|
1533
|
-
if (
|
|
1535
|
+
if (payload) {
|
|
1534
1536
|
let polygonData = currentPolygonData;
|
|
1535
1537
|
polygonData.floor.floor_level = Number(floorLevel); // Set the floor level from the input
|
|
1536
1538
|
// Create a new partition data payload
|
|
@@ -1546,13 +1548,11 @@ export function setCurrentPartitionData() {
|
|
|
1546
1548
|
}
|
|
1547
1549
|
if (isEditPartition) {
|
|
1548
1550
|
newPayload.name = currentPartitionData.name;
|
|
1549
|
-
console.log("newPayload.name", newPayload.name);
|
|
1550
1551
|
}
|
|
1551
1552
|
if (currentHighlightedFace) {
|
|
1552
1553
|
setMeshChildrenMaterialProperty(currentHighlightedFace.component, currentHighlightedFace.name, currentHighlightedFace.type, currentHighlightedFace.value);
|
|
1553
1554
|
}
|
|
1554
1555
|
updatePartitionDataArray(newPayload, currentPartitionDataArray);
|
|
1555
|
-
log.info("if currentPartitionDataArray", currentPartitionDataArray);
|
|
1556
1556
|
if (drawingMode === 'partition') {
|
|
1557
1557
|
displayFaces(currentPolygonData);
|
|
1558
1558
|
}
|
|
@@ -1569,13 +1569,19 @@ export function setCurrentPartitionData() {
|
|
|
1569
1569
|
else {
|
|
1570
1570
|
const faceVertexContainer = document.getElementById('at-face-vertex-container');
|
|
1571
1571
|
faceVertexContainer.innerHTML = '';
|
|
1572
|
-
if (
|
|
1573
|
-
|
|
1574
|
-
|
|
1575
|
-
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
|
|
1572
|
+
if (drawingMode === 'partition') {
|
|
1573
|
+
if (currentPartitionData) {
|
|
1574
|
+
currentPartitionDataArray = currentPartitionDataArray.filter(partition => partition.uuid != currentPartitionData.uuid);
|
|
1575
|
+
dispatchSpaceEvent(SPACE_EVENTS.PARTITION_DISPOSED, currentPartitionData);
|
|
1576
|
+
currentPartitionData = null;
|
|
1577
|
+
log.info("else currentPartitionDataArray", currentPartitionDataArray);
|
|
1578
|
+
}
|
|
1579
|
+
}
|
|
1580
|
+
else if (drawingMode === 'window') {
|
|
1581
|
+
if (currentWall === null || currentWall === void 0 ? void 0 : currentWall.windows) {
|
|
1582
|
+
currentWall.windows.splice(currentWindowIndex, 1);
|
|
1583
|
+
faceVertexContainer.append(displayWall(currentWall));
|
|
1584
|
+
}
|
|
1579
1585
|
}
|
|
1580
1586
|
}
|
|
1581
1587
|
});
|
|
@@ -1605,7 +1611,7 @@ function updatePartitionDataArray(payload, currentPartitionDataArray) {
|
|
|
1605
1611
|
else if (drawingMode === 'window') {
|
|
1606
1612
|
log.info("currentPartitionData", currentPartitionData);
|
|
1607
1613
|
// Update current partition data
|
|
1608
|
-
currentPartitionData.polygon_json =
|
|
1614
|
+
currentPartitionData.polygon_json = payload.polygon_json;
|
|
1609
1615
|
// Update current partition data array
|
|
1610
1616
|
const currentPartitionDataIndex = currentPartitionDataArray.findIndex(partitionData => partitionData.uuid == currentPartitionData.uuid);
|
|
1611
1617
|
currentPartitionDataArray[currentPartitionDataIndex] = currentPartitionData;
|
|
@@ -1819,3 +1825,12 @@ export function setTempCurrentRoomEditData(roomEditData) {
|
|
|
1819
1825
|
export function getCurrentWall() {
|
|
1820
1826
|
return currentWall;
|
|
1821
1827
|
}
|
|
1828
|
+
export function getIsEditWindow() {
|
|
1829
|
+
return isEditWindow;
|
|
1830
|
+
}
|
|
1831
|
+
export function setIsEditWindow(value) {
|
|
1832
|
+
isEditWindow = value;
|
|
1833
|
+
}
|
|
1834
|
+
export function setCurrentEditWindowIndex(value) {
|
|
1835
|
+
currentEditWindowIndex = value;
|
|
1836
|
+
}
|
|
@@ -10,9 +10,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
import { getBundleVersion, extractUUID } from "../../../../utils";
|
|
11
11
|
import { batchAddEventListenerByClassName, handleDeletePartition, handlePartitionVisibility, handlePolygonVisibility, handleWindowVisibility, toggleDisplayPane } from "../../../events";
|
|
12
12
|
import i18n from "../i18n";
|
|
13
|
-
import { getCurrentPolygonData, handlePartitionRowEditBtnClickEvent, handlePartitionWallEditBtn, setPartitionFormMode } from "./roomFormPane";
|
|
13
|
+
import { getCurrentPolygonData, handlePartitionRowEditBtnClickEvent, handlePartitionWallEditBtn, setCurrentEditWindowIndex, setDrawConfig, setDrawingMode, setIsEditWindow, setPartitionFormMode } from "./roomFormPane";
|
|
14
14
|
import { SPACE_EVENTS } from "../../../../types";
|
|
15
|
-
import { _3DXObjects, dispatchSpaceEvent, getChildrenOfModel, goToModel, goToPosition, renderPolygon, setSelectedObject } from "../../../../architwin";
|
|
15
|
+
import { _3DXObjects, dispatchSpaceEvent, enableVerticeControls, getChildrenOfModel, goToModel, goToPosition, renderPolygon, setSelectedObject } from "../../../../architwin";
|
|
16
16
|
import log from 'loglevel';
|
|
17
17
|
import { getShortcutTooltipHTML } from "../static/common";
|
|
18
18
|
let roomDataArray = [];
|
|
@@ -773,11 +773,13 @@ function displayWindows(wall, partitionId, parentId) {
|
|
|
773
773
|
if (!window.options.is_deleted) {
|
|
774
774
|
const windowCoords = JSON.stringify(window.edges);
|
|
775
775
|
const windowCoordsEncoded = btoa(windowCoords);
|
|
776
|
+
const windowPath = JSON.stringify(window.path);
|
|
777
|
+
const windowPathEncoded = btoa(windowPath);
|
|
776
778
|
itemsHTML += `
|
|
777
779
|
<li window-coords="${windowCoordsEncoded}" partition-id="${partitionId}" id="window-${wall.uuid}-${window.index}" wall-id="${wall.uuid}" window-name="${window.name}" window-index="${window.index}" class="at_window_row_item">
|
|
778
780
|
<div>${window.name}</div>
|
|
779
781
|
<div>
|
|
780
|
-
<span window-coords="${windowCoordsEncoded}" partition-id="${partitionId}" partition-parent-uuid="${parentId}" polygon-item-id="${wall.uuid}" index="${window.index}" class="mdi mdi-pencil at_window_edit_btn"></span>
|
|
782
|
+
<span window-path="${windowPathEncoded}" window-coords="${windowCoordsEncoded}" partition-id="${partitionId}" partition-parent-uuid="${parentId}" polygon-item-id="${wall.uuid}" index="${window.index}" class="mdi mdi-pencil at_window_edit_btn"></span>
|
|
781
783
|
<span id="${window.name}" partition-id="${partitionId}" partition-parent-uuid="${parentId}" polygon-item-id="${wall.uuid}" class="mdi ${window.options.is_visible ? 'mdi-eye ' : 'mdi-eye-off'} at_child_visible_btn"></span>
|
|
782
784
|
</div>
|
|
783
785
|
</li>
|
|
@@ -818,6 +820,9 @@ function openPartitionChildEdit(targetElement, parentRoomElement, parentRoomUuid
|
|
|
818
820
|
function openWindowEdit(targetElement, parentRoomElement, parentRoomUuid, partitionId) {
|
|
819
821
|
return __awaiter(this, void 0, void 0, function* () {
|
|
820
822
|
const index = targetElement.getAttribute('index');
|
|
823
|
+
const windowPathEncoded = targetElement.getAttribute('window-path');
|
|
824
|
+
const windowPathJSON = atob(windowPathEncoded);
|
|
825
|
+
const windowPath = JSON.parse(windowPathJSON);
|
|
821
826
|
yield openPartitionChildEdit(targetElement, parentRoomElement, parentRoomUuid, partitionId, true);
|
|
822
827
|
yield new Promise(resolve => requestAnimationFrame(resolve));
|
|
823
828
|
const editBtn = document.querySelector(`#at-edit-window-btn-${index}`);
|
|
@@ -834,6 +839,17 @@ function openWindowEdit(targetElement, parentRoomElement, parentRoomUuid, partit
|
|
|
834
839
|
editBtn.style.display = "none";
|
|
835
840
|
confirmBtn.style.display = "flex";
|
|
836
841
|
inputName.focus();
|
|
842
|
+
setIsEditWindow(true);
|
|
843
|
+
setCurrentEditWindowIndex(Number(index));
|
|
844
|
+
setDrawConfig('window');
|
|
845
|
+
// @ts-ignore
|
|
846
|
+
const windowComponent = {
|
|
847
|
+
inputs: {
|
|
848
|
+
path: windowPath
|
|
849
|
+
}
|
|
850
|
+
};
|
|
851
|
+
enableVerticeControls(windowComponent);
|
|
852
|
+
setDrawingMode(true);
|
|
837
853
|
}
|
|
838
854
|
});
|
|
839
855
|
}
|
|
@@ -414,7 +414,7 @@ export function renderTagRow(tag, tagIconUrl, tag_type = null) {
|
|
|
414
414
|
<td>
|
|
415
415
|
<div class="at_table_button_row">
|
|
416
416
|
<span class="mdi mdi-eye at_visibility_tag_btn ${isGenerallyDisabled ? 'at_disabled' : ''}" id="at-visibility-tag-${tag.id}" data-cy="at-visibility-tag-${tag.id}" tag-id="${tag.id}" tag-id="${tag.id}"></span>
|
|
417
|
-
<span class="mdi mdi-pencil at_edit_tag_btn ${isGenerallyDisabled ? 'at_disabled' : ''}" id="at-edit-tag-${tag.id}" data-cy="at-edit-tag-${tag.id}" tag-id="${tag.id}" target-pane="at-tag-form-pane"></span>
|
|
417
|
+
<span class="mdi mdi-pencil at_edit_tag_btn ${isGenerallyDisabled ? 'at_disabled' : ''}" id="at-edit-tag-${tag.id}" data-cy="at-edit-tag-${tag.id}" tag-id="${tag.id}" target-pane="${isIoT ? 'at-tag-iot-form-pane' : 'at-tag-form-pane'}"></span>
|
|
418
418
|
<span class="mdi mdi-content-copy at_copy_tag_btn ${isTagReadOnly ? 'at_disabled' : ''} id="at-edit-tag-${tag.id}"" id="at-copy-tag-${tag.id}" data-cy="at-copy-tag-${tag.id}" tag-id="${tag.id}"></span>
|
|
419
419
|
<span class="mdi mdi-message at_message_tag_btn ${isIoT ? 'at_hidden' : ''}" id="at-message-tag-${tag.id}" data-cy="at-message-tag-${tag.id}" tag-id="${tag.id}" target-pane="at-tag-messaging-pane"></span>
|
|
420
420
|
<span class="mdi mdi-map-marker at_locate_tag_btn ${!isIoT ? 'at_hidden' : ''} ${isIotTagReadOnly ? 'at_disabled' : ''}" id="at-relocate-tag-${tag.id}" data-cy="at-relocate-tag-${tag.id}" tag-id="${tag.id}"></span>
|
package/lib/atwinui/events.js
CHANGED
|
@@ -8,7 +8,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
10
|
import { actionBar, renderObjectCards, renderLibraryCards, renderTags, renderTagRow, getTagFormData, addClickEventToTagRow, setActiveCard, setActiveMenu, removeObjectCard, clearActiveMenu, setTagCategoriesOption, toggleDropdown, tagFormMode, selectedTag, renderRecepientOptions, renderTagMessages, createTagMessage, setTagLink, setTagMessagingDetails, renderCategoryDropdownOptions, clearTagFormDropdown, clearActiveActionBtn, clearActiveCard, toggleActionBarButtons, selectedCategoryFilterId, selectedSubCategoryFilterId, filterTagList, toggleModal, setModalAction, } from "./components/toolbar";
|
|
11
|
-
import { getTargetPosition, addMediaScreen, _3DXObjects, selectedObject, setTransformControls, copyObject, revertTransform, clearSelectedObject, removeTransformControls, getLibrary, getMpTags, renderTag, captureSpaceScreenshot, moveTag, subscribeSpaceEvent, setModelVisibility, disposeModel, disposeTag, _tags, _tagCategories, dispatchSpaceEvent, editTagLabel, editTagDescription, setTagMessageRecepients, setTagMessages, setSelectedTagUuid, renderMeetingSidebar, setTagIcon, setObjectTransformation, getSelectedObject, _atwin, isCdnMapDataAvailable, captureScreenshotAndCameraDetails, _mpConfig, cancelModelPlacement, _modelDetails, actionHistory, get3DXObjects, transformHistory, goToModel, themeManager, _partitionNodes, setSpacePartitionNodes, getSpaceId, setFloorBaseHeight, toggleWallVisibility, getChildrenOfModel, toggleFloorVisibility, renderPolygon, getCurrentPolygon, getFloorBaseHeight, setSelectedObject, redoDrawAction, undoDrawAction, setWallBaseHeight, clearWallBaseHeight, clearFloorBaseHeight, isToolbarFeatureEnabled, captureCurrentView, getCurrentFloor, _spaceUsers, setPipeCategories, setPipes, detachTagMedia, getTagDataCollection, setVertexPath, _screenSharingHostUser, toggleVisibilityTag, _tagIotCategoryTypes, getIoTDeviceTagIcons, toggleMeshChildrenVisibility, set3DXObjects, partitionHistory,
|
|
11
|
+
import { getTargetPosition, addMediaScreen, _3DXObjects, selectedObject, setTransformControls, copyObject, revertTransform, clearSelectedObject, removeTransformControls, getLibrary, getMpTags, renderTag, captureSpaceScreenshot, moveTag, subscribeSpaceEvent, setModelVisibility, disposeModel, disposeTag, _tags, _tagCategories, dispatchSpaceEvent, editTagLabel, editTagDescription, setTagMessageRecepients, setTagMessages, setSelectedTagUuid, renderMeetingSidebar, setTagIcon, setObjectTransformation, getSelectedObject, _atwin, isCdnMapDataAvailable, captureScreenshotAndCameraDetails, _mpConfig, cancelModelPlacement, _modelDetails, actionHistory, get3DXObjects, transformHistory, goToModel, themeManager, _partitionNodes, setSpacePartitionNodes, getSpaceId, setFloorBaseHeight, toggleWallVisibility, getChildrenOfModel, toggleFloorVisibility, renderPolygon, getCurrentPolygon, getFloorBaseHeight, setSelectedObject, redoDrawAction, undoDrawAction, setWallBaseHeight, clearWallBaseHeight, clearFloorBaseHeight, isToolbarFeatureEnabled, captureCurrentView, getCurrentFloor, _spaceUsers, setPipeCategories, setPipes, detachTagMedia, getTagDataCollection, setVertexPath, _screenSharingHostUser, toggleVisibilityTag, _tagIotCategoryTypes, getIoTDeviceTagIcons, toggleMeshChildrenVisibility, set3DXObjects, partitionHistory, _thisVertexPath,
|
|
12
12
|
// polygonHistory
|
|
13
13
|
} from "../architwin";
|
|
14
14
|
import { Notyf } from 'notyf';
|
|
@@ -26,7 +26,7 @@ import log from 'loglevel';
|
|
|
26
26
|
import * as minimap from '../minimap';
|
|
27
27
|
import { clearActiveThemeCard, getSelectedTheme } from "./components/toolbar/themePane";
|
|
28
28
|
import { getCurrentEditRoomData, displayRoomTree, updatePartitionVisibilityUI, getSelectedPartitionId, updatePolygonVisibilityData, toggleVisibilityState, setFilteredDisplay, updateRoomVisibilityUI, highlightSelectedPartitionChild, highlightSelectedWindow, getRoomData } from "./components/toolbar/spacePartition/roomTreePane";
|
|
29
|
-
import { toggleDrawPartitionButton, displayPartitionFormMode, setPartitionFormMode, clearPartitionForm, setPolygonData, getPartitionFormData, getPartitionSavingMode, setPartitionSavingMode, getPartitionFormMode, getNewlyAddedPartition,
|
|
29
|
+
import { toggleDrawPartitionButton, displayPartitionFormMode, setPartitionFormMode, clearPartitionForm, setPolygonData, getPartitionFormData, getPartitionSavingMode, setPartitionSavingMode, getPartitionFormMode, getNewlyAddedPartition, getCurrentPartitionData, getTempCurrentPolygon, clearTempCurrentPolygon, toggleDrawWindowButton, getIsDrawing, getDrawingMode, getCurrentPolygonData, setTempCurrentRoomEditData, toggleUndoRedoButtons } from "./components/toolbar/spacePartition/roomFormPane";
|
|
30
30
|
import { actionSettingsSelectOption, getTempCoordinateSystem, getTempMeasurementUnit, getTempRotationUnit, setCoordinateSystem, setMeasurementUnit, setRotationUnit, initSettingsValues, setTempCoordinateSystem, setTempMeasurementUnit, setTempRotationUnit, toggleActionSettingsDropdown, toggleCalibrateBasepoint, setScaleFactor, getTempScaleFactor, setTempScaleFactor, setBasepoint, getTempBasepoint, setTempBasepoint, getBasepoint, toggleActionSettings, getBasepointObjectPayload, displayConvertedCoordinates, getCoordinateSystem, getScaleFactor, getMeasurementUnit, getRotationUnit, setBasepointObjectPayload } from "./components/toolbar/actionSettingsPane";
|
|
31
31
|
import { getBasepointCalibrateBpCoordinateValues, getBasepointCalibrateMpCoordinateValues, initBsepointCalibratePane, toggleBasepointCalibratePane } from "./components/toolbar/basepointCalibratePane";
|
|
32
32
|
import { toggleGeneralMapOptions, initGeneralSelectedMap, getSelectedMapOption } from './components/toolbar/generalSettingsMenuPane';
|
|
@@ -40,7 +40,6 @@ import { PipeForm } from "./components/toolbar/pipeFormPane";
|
|
|
40
40
|
import { toggleIoTCategoryOptions, toggleIoTDevicesOptions, setSelectedIoTSystemRadio, clearIoTDropdowns, initIoTFormData, setIotCategoryOptions, getIotTagFormData, iotTagFormMode, selectedIotTag, clearIotFields, getIotCategoryOption } from './components/toolbar/tagIotFormPane';
|
|
41
41
|
import { getTheseTagMessages, timedoutComment, unsendComment } from "./components/toolbar/tagMessagingPane";
|
|
42
42
|
import { handleScreenShareResponsiveChanges, handleScreenShareAcceptRequest, handleScreenShareBackUserListPane, handleScreenShareEndSessionEvent, handleScreenShareUsersUpdated, renderScreenShareLeaveConfirmationModal } from "./components/toolbar/screenSharePane";
|
|
43
|
-
import _ from "lodash";
|
|
44
43
|
const pipeList = new PipeList();
|
|
45
44
|
const pipeForm = new PipeForm();
|
|
46
45
|
let activeToolbarItem, activeActionItem, activePane, activeActionPane, cancelTagPlacementPrompt, cancelModelPlacementPrompt;
|
|
@@ -1584,28 +1583,9 @@ function setupSpaceEventSubscriptions() {
|
|
|
1584
1583
|
}
|
|
1585
1584
|
function handleVertexDragEnd(payload) {
|
|
1586
1585
|
log.info("handleVertexDragEnd()", payload);
|
|
1587
|
-
setCurrentPartitionData();
|
|
1588
1586
|
if (isToolbarFeatureEnabled("roomCreation")) {
|
|
1589
|
-
|
|
1590
|
-
const currentPartitionData = _.cloneDeep(getCurrentPartitionData());
|
|
1591
|
-
const currentPolygonData = _.cloneDeep(getCurrentPolygonData());
|
|
1592
|
-
const currentWall = getCurrentWall();
|
|
1593
|
-
const wallIndex = currentPolygonData.walls.findIndex(w => w.uuid == currentWall.uuid);
|
|
1594
|
-
if (currentPartitionData) {
|
|
1595
|
-
data = {
|
|
1596
|
-
polygon: {
|
|
1597
|
-
uuid: currentPartitionData.uuid,
|
|
1598
|
-
polygon_json: currentPolygonData
|
|
1599
|
-
},
|
|
1600
|
-
verticePath: currentPolygonData.walls[wallIndex].windows[currentWindow.index].path
|
|
1601
|
-
};
|
|
1602
|
-
partitionHistory.addToHistory(JSON.parse(JSON.stringify(data)));
|
|
1603
|
-
}
|
|
1604
|
-
log.info("all history", partitionHistory.getAllHistory());
|
|
1587
|
+
partitionHistory.addToHistory([..._thisVertexPath]);
|
|
1605
1588
|
}
|
|
1606
|
-
// partitionHistory.addToHistory(data)
|
|
1607
|
-
// polygonHistory.addToHistory(payload)
|
|
1608
|
-
// toggleUndoRedoButtons(polygonHistory.canUndo(), polygonHistory.canRedo())
|
|
1609
1589
|
}
|
|
1610
1590
|
function handlePartitionColiderClickSelected(payload) {
|
|
1611
1591
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -1678,6 +1658,9 @@ function handleDragEnd(payload) {
|
|
|
1678
1658
|
function handleVertexPlace(payload) {
|
|
1679
1659
|
console.log("handleVertexPlace ==>", payload);
|
|
1680
1660
|
if (isToolbarFeatureEnabled('roomCreation')) {
|
|
1661
|
+
if (payload.path.length <= 2) {
|
|
1662
|
+
setPolygonData(undefined);
|
|
1663
|
+
}
|
|
1681
1664
|
toggleUndoRedoButtons(partitionHistory.canUndo(), partitionHistory.canRedo());
|
|
1682
1665
|
}
|
|
1683
1666
|
if (isToolbarFeatureEnabled('pipe')) {
|
|
@@ -1685,6 +1668,7 @@ function handleVertexPlace(payload) {
|
|
|
1685
1668
|
}
|
|
1686
1669
|
}
|
|
1687
1670
|
function handlePathUpdated(payload) {
|
|
1671
|
+
log.info("handlePathUpdated", payload);
|
|
1688
1672
|
setVertexPath(payload.path);
|
|
1689
1673
|
handleVertexPlace(payload);
|
|
1690
1674
|
}
|
|
@@ -2551,7 +2535,7 @@ function handleFloorLevelInputChange() {
|
|
|
2551
2535
|
notyf.success(`${i18n.t('SuccessBaseHeight')}`);
|
|
2552
2536
|
const objects = get3DXObjects();
|
|
2553
2537
|
const latestObj = objects[objects.length - 1];
|
|
2554
|
-
const currentPartitionData =
|
|
2538
|
+
const currentPartitionData = getCurrentPartitionData();
|
|
2555
2539
|
const currentPolygon = getCurrentPolygon();
|
|
2556
2540
|
log.info("latestObj ", latestObj);
|
|
2557
2541
|
if (currentPartitionData) {
|
|
@@ -2567,7 +2551,7 @@ function handleFloorLevelInputChange() {
|
|
|
2567
2551
|
return path;
|
|
2568
2552
|
});
|
|
2569
2553
|
renderPolygon(updatedPath);
|
|
2570
|
-
notyf.success(
|
|
2554
|
+
notyf.success(`${i18n.t('SuccessUpdatedFloorLevel')}`);
|
|
2571
2555
|
}
|
|
2572
2556
|
else {
|
|
2573
2557
|
log.error("No matching uuid for the polygon");
|
|
@@ -2582,7 +2566,7 @@ function handleFloorLevelInputChange() {
|
|
|
2582
2566
|
return path;
|
|
2583
2567
|
});
|
|
2584
2568
|
renderPolygon(updatedPath);
|
|
2585
|
-
notyf.success(
|
|
2569
|
+
notyf.success(`${i18n.t('SuccessUpdatedFloorLevel')}`);
|
|
2586
2570
|
}
|
|
2587
2571
|
else {
|
|
2588
2572
|
log.warn("currentPartitionData and latestObj value is undefined or its type is not valid");
|
|
@@ -2604,7 +2588,7 @@ function handleMarkFloor() {
|
|
|
2604
2588
|
});
|
|
2605
2589
|
yield getTargetPosition((coord) => {
|
|
2606
2590
|
const objects = get3DXObjects();
|
|
2607
|
-
const currentPartitionData =
|
|
2591
|
+
const currentPartitionData = getCurrentPartitionData();
|
|
2608
2592
|
const currentPolygon = getCurrentPolygon();
|
|
2609
2593
|
log.info("coord ", coord);
|
|
2610
2594
|
if (coord.y < -1) {
|
|
@@ -2621,6 +2605,7 @@ function handleMarkFloor() {
|
|
|
2621
2605
|
partitionsUUIDs = currentPartitionData.children.map(child => child.uuid);
|
|
2622
2606
|
const target = objects.find(obj => partitionsUUIDs.includes(obj.object.object_data.uuid));
|
|
2623
2607
|
if (target) {
|
|
2608
|
+
setSelectedObject(target.object, target.node, target.component, target.type);
|
|
2624
2609
|
const polyJson = target.object.object_data.json_data;
|
|
2625
2610
|
const updatedPath = polyJson.path.map(path => {
|
|
2626
2611
|
path.y = adjustedHeight;
|
|
@@ -2635,13 +2620,14 @@ function handleMarkFloor() {
|
|
|
2635
2620
|
}
|
|
2636
2621
|
else if (currentPolygon) {
|
|
2637
2622
|
//setSelectedObject(currentPolygon.object,currentPolygon.node,currentPolygon.component,currentPolygon.type)
|
|
2623
|
+
setSelectedObject(currentPolygon.object, currentPolygon.node, currentPolygon.component, currentPolygon.type);
|
|
2638
2624
|
const polyJson = currentPolygon.object.object_data.json_data;
|
|
2639
2625
|
const updatedPath = polyJson.path.map(path => {
|
|
2640
2626
|
path.y = adjustedHeight;
|
|
2641
2627
|
return path;
|
|
2642
2628
|
});
|
|
2643
2629
|
renderPolygon(updatedPath);
|
|
2644
|
-
notyf.success(
|
|
2630
|
+
notyf.success(`${i18n.t('SuccessUpdatedFloorLevel')}`);
|
|
2645
2631
|
}
|
|
2646
2632
|
else {
|
|
2647
2633
|
log.warn("currentPolygon is undefined");
|
|
@@ -539,10 +539,10 @@ class PlaneVideo {
|
|
|
539
539
|
});
|
|
540
540
|
// socketEmit({socketEvent: IO_SPACE_EVENTS.MEDIA_SCREEN, data: {event: IO_MEDIASCREEN_EVENTS.PAUSE, mediaViewerId: this.inputs.mediaViewerId }})
|
|
541
541
|
}
|
|
542
|
-
else if (this.audio === 'unmuted' && eventData['collider'].name == '
|
|
542
|
+
else if (this.audio === 'unmuted' && eventData['collider'].name == 'unmuteBtn') {
|
|
543
543
|
this.planeElement.muted = true;
|
|
544
|
-
this.muteButtonModel.visible =
|
|
545
|
-
this.unmuteButtonModel.visible =
|
|
544
|
+
this.muteButtonModel.visible = true;
|
|
545
|
+
this.unmuteButtonModel.visible = false;
|
|
546
546
|
this.audio = 'muted';
|
|
547
547
|
const { duration, currentTime } = getVideoMetadata(this.planeElement);
|
|
548
548
|
dispatchSpaceEvent(SPACE_EVENTS.MEDIA_MUTE, {
|
|
@@ -555,10 +555,10 @@ class PlaneVideo {
|
|
|
555
555
|
});
|
|
556
556
|
// socketEmit({socketEvent: IO_SPACE_EVENTS.MEDIA_SCREEN, data: {event: IO_MEDIASCREEN_EVENTS.MUTE, mediaViewerId: this.inputs.mediaViewerId }})
|
|
557
557
|
}
|
|
558
|
-
else if (this.audio === 'muted' && eventData['collider'].name == '
|
|
558
|
+
else if (this.audio === 'muted' && eventData['collider'].name == 'muteBtn') {
|
|
559
559
|
this.planeElement.muted = false;
|
|
560
|
-
this.muteButtonModel.visible =
|
|
561
|
-
this.unmuteButtonModel.visible =
|
|
560
|
+
this.muteButtonModel.visible = false;
|
|
561
|
+
this.unmuteButtonModel.visible = true;
|
|
562
562
|
this.audio = 'unmuted';
|
|
563
563
|
const { duration, currentTime } = getVideoMetadata(this.planeElement);
|
|
564
564
|
dispatchSpaceEvent(SPACE_EVENTS.MEDIA_UNMUTE, {
|
|
@@ -692,6 +692,7 @@ class PlaneVideo {
|
|
|
692
692
|
transparent: true,
|
|
693
693
|
alphaTest: 0.5
|
|
694
694
|
}));
|
|
695
|
+
this.muteButtonModel.visible = false;
|
|
695
696
|
this.muteButtonModel.name = "muteBtn";
|
|
696
697
|
this.mesh.add(this.muteButtonModel);
|
|
697
698
|
}
|
|
@@ -707,7 +708,6 @@ class PlaneVideo {
|
|
|
707
708
|
transparent: true,
|
|
708
709
|
alphaTest: 0.5
|
|
709
710
|
}));
|
|
710
|
-
this.unmuteButtonModel.visible = false;
|
|
711
711
|
this.unmuteButtonModel.name = "unmuteBtn";
|
|
712
712
|
this.mesh.add(this.unmuteButtonModel);
|
|
713
713
|
}
|