- handleSelect2dZoneData(zonesData[zoneName]?.zoneId, zoneName)
+ className={`zone ${selectedZone.zoneName === zoneName ? "active" : ""
+ }`}
+ onClick={() => {
+
+ console.log('zonesData: ', zonesData);
+ handleSelect2dZoneData(zonesData[zoneName]?.zoneUuid, zoneName)
+ }
}
>
{zoneName}
diff --git a/app/src/pages/Dashboard.tsx b/app/src/pages/Dashboard.tsx
index 02ce030..7065e20 100644
--- a/app/src/pages/Dashboard.tsx
+++ b/app/src/pages/Dashboard.tsx
@@ -1,12 +1,35 @@
-import React from 'react';
-import SidePannel from '../components/layout/Dashboard/SidePannel';
-import DashboardHome from '../components/layout/Dashboard/DashboardHome';
+import React, { useEffect, useState } from "react";
+import {
+ useSocketStore
+} from "../store/builder/store";
+import DashboardHome from "../components/Dashboard/DashboardHome";
+import DashboardProjects from "../components/Dashboard/DashboardProjects";
+import DashboardTrash from "../components/Dashboard/DashboardTrash";
+import { getUserData } from "../components/Dashboard/functions/getUserData";
+import SidePannel from "../components/Dashboard/SidePannel";
+import DashboardTutorial from "../components/Dashboard/DashboardTutorial";
const Dashboard: React.FC = () => {
+ const [activeTab, setActiveTab] = useState
("Home");
+ const { socket } = useSocketStore();
+ const { userId, organization, email, userName } = getUserData();
+
+ useEffect(() => {
+ const token = localStorage.getItem("token");
+ if (token) {
+ useSocketStore.getState().initializeSocket(email, organization, token);
+ } else {
+
+ }
+ }, [socket]);
+
return (
-
-
+
+ {activeTab == "Home" && }
+ {activeTab == "Projects" && }
+ {activeTab == "Trash" && }
+ {activeTab == "Tutorials" && }
);
};
diff --git a/app/src/pages/Project.tsx b/app/src/pages/Project.tsx
index cca83af..79479b0 100644
--- a/app/src/pages/Project.tsx
+++ b/app/src/pages/Project.tsx
@@ -5,10 +5,17 @@ import {
useOrganization,
useUserName,
useWallItems,
- useZones,
useSaveVersion,
+ useProjectName,
+ useRenameModeStore,
+ useSelectedFloorItem,
+ useZones,
} from "../store/builder/store";
-import { useNavigate } from "react-router-dom";
+import { useNavigate, useParams } from "react-router-dom";
+import { usePlayButtonStore } from "../store/usePlayButtonStore";
+import MarketPlace from "../modules/market/MarketPlace";
+import LoadingPage from "../components/templates/LoadingPage";
+import KeyPressListener from "../utils/shortcutkeys/handleShortcutKeys";
import { useSelectedUserStore } from "../store/collaboration/useCollabStore";
import FollowPerson from "../components/templates/FollowPerson";
import { useLogger } from "../components/ui/log/LoggerContext";
@@ -17,6 +24,12 @@ import LogList from "../components/ui/log/LogList";
import Footer from "../components/footer/Footer";
import { useToggleStore } from "../store/useUIToggleStore";
import VersionSaved from "../components/layout/sidebarRight/versionHisory/VersionSaved";
+import SimulationPlayer from "../components/ui/simulation/simulationPlayer";
+import { useProductStore } from "../store/simulation/useProductStore";
+import { getAllProjects } from "../services/dashboard/getAllProjects";
+import { viewProject } from "../services/dashboard/viewProject";
+import RenameTooltip from "../components/ui/features/RenameTooltip";
+import { setFloorItemApi } from "../services/factoryBuilder/assest/floorAsset/setFloorItemApi";
import { useAssetsStore } from "../store/builder/useAssetStore";
import ComparisonSceneProvider from "../components/layout/scenes/ComparisonSceneProvider";
import MainSceneProvider from "../components/layout/scenes/MainSceneProvider";
@@ -29,9 +42,55 @@ const Project: React.FC = () => {
const { setAssets } = useAssetsStore();
const { setUserName } = useUserName();
const { setOrganization } = useOrganization();
+ const { selectedFloorItem, setSelectedFloorItem } = useSelectedFloorItem();
const { setWallItems } = useWallItems();
const { setZones } = useZones();
const { isVersionSaved } = useSaveVersion();
+ const { products } = useProductStore();
+ const { projectId } = useParams();
+ const { setProjectName } = useProjectName();
+
+ const generateThumbnail = async () => {
+ const email = localStorage.getItem("email");
+ const userId = localStorage.getItem("userId");
+ try {
+ if (!email || !userId) {
+ console.error("User data not found in localStorage");
+ return;
+ }
+
+ const emailParts = email.split("@");
+ if (emailParts.length < 2) {
+ console.error("Invalid email format");
+ return;
+ }
+
+ const domainParts = emailParts[1].split(".");
+ const Organization = domainParts[0];
+ const projects = await getAllProjects(
+ userId, Organization
+ );
+ const filterProject = projects?.Projects.find((val: any) => val.projectUuid === projectId || val._id
+ === projectId)
+ const viewedProject = await viewProject(
+ Organization,
+ filterProject._id,
+ userId,
+ );
+ // console.log('filterProject.projectName: ', filterProject.projectName);
+ setProjectName(filterProject.projectName)
+
+ }
+ catch {
+
+ }
+ }
+ useEffect(() => {
+ generateThumbnail();
+ }, []);
+ const { isRenameMode, setIsRenameMode } = useRenameModeStore();
+ // console.log('isRenameMode: ', isRenameMode);
+
const { selectedUser } = useSelectedUserStore();
const { isLogListVisible } = useLogger();
@@ -50,7 +109,10 @@ const Project: React.FC = () => {
const email = localStorage.getItem("email");
if (email) {
const Organization = email.split("@")[1].split(".")[0];
- useSocketStore.getState().initializeSocket(email, Organization);
+ const token = localStorage.getItem("token");
+ if (token) {
+ useSocketStore.getState().initializeSocket(email, Organization, token);
+ }
const name = localStorage.getItem("userName");
if (Organization && name) {
setOrganization(Organization);
diff --git a/app/src/pages/UserAuth.tsx b/app/src/pages/UserAuth.tsx
index cd837db..8b8453b 100644
--- a/app/src/pages/UserAuth.tsx
+++ b/app/src/pages/UserAuth.tsx
@@ -1,4 +1,4 @@
-import React, { useState, FormEvent } from "react";
+import React, { useState, FormEvent, useEffect } from "react";
import { useNavigate } from "react-router-dom";
import { LogoIconLarge } from "../components/icons/Logo";
import { EyeIcon } from "../components/icons/ExportCommonIcons";
@@ -9,6 +9,7 @@ import {
} from "../store/builder/store";
import { signInApi } from "../services/factoryBuilder/signInSignUp/signInApi";
import { signUpApi } from "../services/factoryBuilder/signInSignUp/signUpApi";
+import FingerprintJS from "@fingerprintjs/fingerprintjs";
const UserAuth: React.FC = () => {
const [email, setEmail] = useState("");
@@ -19,29 +20,62 @@ const UserAuth: React.FC = () => {
const { userName, setUserName } = useUserName();
const { setOrganization } = useOrganization();
const { setLoadingProgress } = useLoadingProgress();
+ const [fingerprint, setFingerprint] = useState("");
const navigate = useNavigate();
+ const initializeFingerprint = async () => {
+ const fp = await FingerprintJS.load();
+ const result = await fp.get();
+ setFingerprint(result.visitorId); // Set the fingerprint
+ };
+
+ useEffect(() => {
+ initializeFingerprint();
+ }, [])
+
+
const handleLogin = async (e: FormEvent) => {
e.preventDefault();
-
const organization = email.split("@")[1].split(".")[0];
- try {
- const res = await signInApi(email, password, organization);
- if (res.message === "login successfull") {
+ try {
+ const res = await signInApi(email, password, organization, fingerprint);
+ if (res.message.message === "login successfull") {
setError("");
setOrganization(organization);
- setUserName(res.name);
- localStorage.setItem("userId", res.userId);
- localStorage.setItem("email", res.email);
- localStorage.setItem("userName", res.name);
- if (res.isShare) {
+ setUserName(res.message.name);
+ // console.log(' res.userId: ', res.message.userId);
+ localStorage.setItem("userId", res.message.userId);
+ localStorage.setItem("email", res.message.email);
+ localStorage.setItem("userName", res.message.name);
+ localStorage.setItem("token", res.message.token);
+ localStorage.setItem("refreshToken", res.message.refreshToken);
+
+ if (res.message.isShare) {
setLoadingProgress(1);
- navigate("/Project");
+ // navigate("/Project");
+ navigate("/Dashboard");
}
} else if (res.message === "User Not Found!!! Kindly signup...") {
setError("Account not found");
+ } else if (res.message === "Already LoggedIn on another browser....Please logout!!!") {
+ setError("Already logged in on another browser. Please logout first.");
+ navigate("/");
+ setError("")
+ // setError("");
+ // setOrganization(organization);
+ // setUserName(res.ForceLogoutData.userName);
+ // console.log(' res.userId: ', res.ForceLogoutData.userId);
+ // localStorage.setItem("userId", res.ForceLogoutData.userId);
+ // localStorage.setItem("email", res.ForceLogoutData.Email);
+ // localStorage.setItem("userName", res.ForceLogoutData.userName);
+ // localStorage.setItem("token", res.ForceLogoutData.token);
+ // localStorage.setItem("refreshToken", res.ForceLogoutData.refreshToken);
+ // if (res.ForceLogoutData.isShare) {
+ // setLoadingProgress(1);
+ // navigate("/Dashboard");
+ // }
}
} catch (error) {
echo.error("Login failed");
diff --git a/app/src/services/dashboard/addedProject.ts b/app/src/services/dashboard/addedProject.ts
new file mode 100644
index 0000000..0519ecb
--- /dev/null
+++ b/app/src/services/dashboard/addedProject.ts
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/app/src/services/dashboard/createProject.ts b/app/src/services/dashboard/createProject.ts
new file mode 100644
index 0000000..3677a74
--- /dev/null
+++ b/app/src/services/dashboard/createProject.ts
@@ -0,0 +1,30 @@
+let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
+
+
+export const createProject = async (projectUuid: string, userId: string, thumbnail: string, organization: string) => {
+ try {
+ const response = await fetch(`${url_Backend_dwinzo}/api/V1/NewProject`, {
+ method: "POST",
+ headers: {
+ Authorization: "Bearer ", // Replace with actual token
+ "Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
+ },
+ body: JSON.stringify({ projectUuid, userId, thumbnail, organization, }),
+ });
+ if (!response.ok) {
+ throw new Error("Failed to add project");
+ }
+
+ const result = await response.json();
+
+ return result;
+ } catch (error) {
+ if (error instanceof Error) {
+ throw new Error(error.message);
+ } else {
+ throw new Error("An unknown error occurred");
+ }
+ }
+};
diff --git a/app/src/services/dashboard/deleteProject.ts b/app/src/services/dashboard/deleteProject.ts
new file mode 100644
index 0000000..e804099
--- /dev/null
+++ b/app/src/services/dashboard/deleteProject.ts
@@ -0,0 +1,39 @@
+let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
+// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
+
+export const deleteProject = async (
+ projectId: string,
+ userId: string,
+ organization: string
+) => {
+ try {
+ console.log("projectId", userId, organization, projectId);
+ const response = await fetch(
+ `${url_Backend_dwinzo}/api/V1/Projects/Archive/${projectId}`,
+ {
+ method: "PATCH",
+ headers: {
+ Authorization: "Bearer ", // Replace with actual token
+ "Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
+ },
+ body: JSON.stringify({ userId, organization }),
+ }
+ );
+ console.log("response: ", response);
+ if (!response.ok) {
+ throw new Error("Failed to clearPanel in the zone");
+ }
+
+ const result = await response.json();
+ return result;
+ } catch (error) {
+ echo.error("Failed to clean pannel");
+ if (error instanceof Error) {
+ throw new Error(error.message);
+ } else {
+ throw new Error("An unknown error occurred");
+ }
+ }
+};
diff --git a/app/src/services/dashboard/deleteTrash.ts b/app/src/services/dashboard/deleteTrash.ts
new file mode 100644
index 0000000..6898914
--- /dev/null
+++ b/app/src/services/dashboard/deleteTrash.ts
@@ -0,0 +1,30 @@
+const url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
+// const url_Backend_dwinzo = `http://192.168.0.102:5000`;
+
+export const deleteTrash = async (organization: string, projectId: string) => {
+ try {
+ const response = await fetch(
+ `${url_Backend_dwinzo}/api/V1/Trash/Delete?projectId=${projectId}`,
+ {
+ method: "PATCH",
+ headers: {
+ Authorization: "Bearer ", // Replace with actual token
+ "Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
+ },
+ }
+ );
+ console.log("restore: ", response);
+
+ if (!response.ok) {
+ throw new Error("Failed to fetch trash data");
+ }
+
+ const data = await response.json();
+ return data;
+ } catch (error: any) {
+ console.error("Failed to fetch trash data:", error);
+ throw new Error(error.message || "Unknown error");
+ }
+};
diff --git a/app/src/services/dashboard/duplicateProject.ts b/app/src/services/dashboard/duplicateProject.ts
new file mode 100644
index 0000000..911d824
--- /dev/null
+++ b/app/src/services/dashboard/duplicateProject.ts
@@ -0,0 +1,38 @@
+let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
+
+export const duplicateProject = async (
+ projectUuid: string,
+ thumbnail: string,
+ projectName: string
+) => {
+ try {
+ const response = await fetch(
+ `${url_Backend_dwinzo}/api/V1/project/Duplicate`,
+ {
+ method: "POST",
+ headers: {
+ Authorization: "Bearer ", // Replace with actual token
+ "Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
+ },
+ body: JSON.stringify({ projectUuid, thumbnail, projectName }),
+ }
+ );
+
+ console.log("response: ", response);
+ if (!response.ok) {
+ throw new Error("Failed to add project");
+ }
+
+ const result = await response.json();
+ console.log("result: ", result);
+ return result;
+ } catch (error) {
+ if (error instanceof Error) {
+ throw new Error(error.message);
+ } else {
+ throw new Error("An unknown error occurred");
+ }
+ }
+};
diff --git a/app/src/services/dashboard/getAllProjects.ts b/app/src/services/dashboard/getAllProjects.ts
new file mode 100644
index 0000000..caebc0a
--- /dev/null
+++ b/app/src/services/dashboard/getAllProjects.ts
@@ -0,0 +1,27 @@
+let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
+
+export const getAllProjects = async (userId: string, organization: string) => {
+ try {
+ const response = await fetch(
+ `${url_Backend_dwinzo}/api/V1/Projects`,
+ {
+ method: "GET",
+ headers: {
+ Authorization: "Bearer ", // Replace with actual token
+ "Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
+ },
+ }
+ );
+
+ if (!response.ok) {
+ throw new Error("Failed to fetch assets");
+ }
+
+ return await response.json();
+ } catch (error: any) {
+ echo.error("Failed to get asset image");
+ throw new Error(error.message);
+ }
+};
diff --git a/app/src/services/dashboard/getTrash.ts b/app/src/services/dashboard/getTrash.ts
new file mode 100644
index 0000000..acdcad8
--- /dev/null
+++ b/app/src/services/dashboard/getTrash.ts
@@ -0,0 +1,30 @@
+const url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
+// const url_Backend_dwinzo = `http://192.168.0.102:5000`;
+
+export const getTrash = async (organization: string) => {
+
+ try {
+ const response = await fetch(
+ `${url_Backend_dwinzo}/api/V1/TrashItems`,
+ {
+ method: "GET",
+ headers: {
+ Authorization: "Bearer ", // Replace with actual token
+ "Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
+ },
+ }
+ );
+
+ if (!response.ok) {
+ throw new Error("Failed to fetch trash data");
+ }
+
+ const data = await response.json();
+ return data;
+ } catch (error: any) {
+ console.error("Failed to fetch trash data:", error);
+ throw new Error(error.message || "Unknown error");
+ }
+};
diff --git a/app/src/services/dashboard/projectTutorial.ts b/app/src/services/dashboard/projectTutorial.ts
new file mode 100644
index 0000000..5bd84a0
--- /dev/null
+++ b/app/src/services/dashboard/projectTutorial.ts
@@ -0,0 +1,28 @@
+let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
+
+export const projectTutorial = async () => {
+ try {
+ const response = await fetch(`${url_Backend_dwinzo}/api/V1/tutorials`, {
+ method: "GET",
+ headers: {
+ "Content-Type": "application/json",
+ },
+ });
+
+ // console.log("response: ", response);
+
+ if (!response.ok) {
+ throw new Error("Failed to add project");
+ }
+
+ const result = await response.json();
+ return result;
+ } catch (error) {
+ if (error instanceof Error) {
+ throw new Error(error.message);
+ } else {
+ throw new Error("An unknown error occurred");
+ }
+ }
+};
+
\ No newline at end of file
diff --git a/app/src/services/dashboard/recentlyViewed.ts b/app/src/services/dashboard/recentlyViewed.ts
new file mode 100644
index 0000000..c77c679
--- /dev/null
+++ b/app/src/services/dashboard/recentlyViewed.ts
@@ -0,0 +1,27 @@
+let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
+
+export const recentlyViewed = async (organization: string, userId: string) => {
+ try {
+ const response = await fetch(
+ `${url_Backend_dwinzo}/api/V1/RecentlyViewed`,
+ {
+ method: "GET",
+ headers: {
+ Authorization: "Bearer ", // Replace with actual token
+ "Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
+ },
+ }
+ );
+
+ if (!response.ok) {
+ throw new Error("Failed to fetch project");
+ }
+
+ return await response.json();
+ } catch (error: any) {
+ console.error("Failed to get project");
+ throw new Error(error.message);
+ }
+};
diff --git a/app/src/services/dashboard/restoreTrash.ts b/app/src/services/dashboard/restoreTrash.ts
new file mode 100644
index 0000000..fdf544d
--- /dev/null
+++ b/app/src/services/dashboard/restoreTrash.ts
@@ -0,0 +1,30 @@
+const url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
+// const url_Backend_dwinzo = `http://192.168.0.102:5000`;
+
+export const restoreTrash = async (organization: string, projectId: string) => {
+ try {
+ const response = await fetch(
+ `${url_Backend_dwinzo}/api/V1/Trash/restore?projectId=${projectId}`,
+ {
+ method: "PATCH",
+ headers: {
+ Authorization: "Bearer ", // Replace with actual token
+ "Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
+ },
+ }
+ );
+
+ if (!response.ok) {
+ throw new Error("Failed to fetch trash data");
+ }
+
+ const data = await response.json();
+ console.log("restore: ", response);
+ return data;
+ } catch (error: any) {
+ console.error("Failed to fetch trash data:", error);
+ throw new Error(error.message || "Unknown error");
+ }
+};
diff --git a/app/src/services/dashboard/searchProjects.ts b/app/src/services/dashboard/searchProjects.ts
new file mode 100644
index 0000000..a1b1cee
--- /dev/null
+++ b/app/src/services/dashboard/searchProjects.ts
@@ -0,0 +1,38 @@
+let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
+
+export const searchProject = async (
+ organization: string,
+ userId: string,
+ searchName: string
+) => {
+ try {
+ const response = await fetch(
+ `${url_Backend_dwinzo}/api/V1/search/searchProjects?searchName=${searchName}`,
+ {
+ method: "GET",
+ headers: {
+ Authorization: "Bearer ", // Replace with actual token
+ "Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
+ },
+ }
+ );
+
+ console.log("response: ", response);
+ if (!response.ok) {
+ throw new Error("Failed to Search project");
+ }
+
+ const result = await response.json();
+ console.log("searchProjects: ", result);
+
+ return result;
+ } catch (error) {
+ if (error instanceof Error) {
+ throw new Error(error.message);
+ } else {
+ throw new Error("An unknown error occurred");
+ }
+ }
+};
diff --git a/app/src/services/dashboard/trashSearchProject.ts b/app/src/services/dashboard/trashSearchProject.ts
new file mode 100644
index 0000000..1e25082
--- /dev/null
+++ b/app/src/services/dashboard/trashSearchProject.ts
@@ -0,0 +1,36 @@
+let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
+
+export const trashSearchProject = async (
+ organization: string,
+ userId: string,
+ searchName: string
+) => {
+ try {
+ const response = await fetch(
+ `${url_Backend_dwinzo}/api/V1/search/searchTrashProjects?searchName=${searchName}`,
+ {
+ method: "GET",
+ headers: {
+ Authorization: "Bearer ", // Replace with actual token
+ "Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
+ },
+ }
+ );
+
+ if (!response.ok) {
+ throw new Error("Failed to add project");
+ }
+
+ const result = await response.json();
+ console.log("searchTrashProjects: ", result);
+ return result;
+ } catch (error) {
+ if (error instanceof Error) {
+ throw new Error(error.message);
+ } else {
+ throw new Error("An unknown error occurred");
+ }
+ }
+};
diff --git a/app/src/services/dashboard/updateProject.ts b/app/src/services/dashboard/updateProject.ts
new file mode 100644
index 0000000..7bd0f4a
--- /dev/null
+++ b/app/src/services/dashboard/updateProject.ts
@@ -0,0 +1,48 @@
+let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
+// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
+
+export const updateProject = async (
+ projectId: string,
+ userId: string,
+ organization: string,
+ thumbnail?: string,
+ projectName?: string
+) => {
+ const body: any = {
+ projectId,
+ userId,
+ organization,
+ };
+
+ if (projectName) body.projectName = projectName;
+ if (thumbnail) body.thumbnail = thumbnail;
+
+ try {
+ const response = await fetch(
+ `${url_Backend_dwinzo}/api/V1/Projects/${projectId}`,
+ {
+ method: "PATCH",
+ headers: {
+ Authorization: "Bearer ", // Replace with actual token
+ "Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
+ },
+ body: JSON.stringify(body),
+ }
+ );
+
+ if (!response.ok) {
+ throw new Error("Failed to clearPanel in the zone");
+ }
+
+ const result = await response.json();
+ return result;
+ } catch (error) {
+ if (error instanceof Error) {
+ throw new Error(error.message);
+ } else {
+ throw new Error("An unknown error occurred");
+ }
+ }
+};
diff --git a/app/src/services/dashboard/viewProject.ts b/app/src/services/dashboard/viewProject.ts
new file mode 100644
index 0000000..07a9e00
--- /dev/null
+++ b/app/src/services/dashboard/viewProject.ts
@@ -0,0 +1,31 @@
+let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
+
+export const viewProject = async (
+ organization: string,
+ projectId: string,
+ userId: string
+) => {
+ try {
+ const response = await fetch(
+ `${url_Backend_dwinzo}/api/V1/Project/${projectId}`,
+ {
+ method: "GET",
+ headers: {
+ Authorization: "Bearer ", // Replace with actual token
+ "Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
+ },
+ }
+ );
+
+ if (!response.ok) {
+ throw new Error("Failed to fetch");
+ }
+
+ return await response.json();
+ } catch (error: any) {
+ console.error("Failed to get asset image:", error);
+ throw new Error(error.message);
+ }
+};
diff --git a/app/src/services/factoryBuilder/assest/assets/getAssetImages.ts b/app/src/services/factoryBuilder/assest/assets/getAssetImages.ts
index 2576769..22deb02 100644
--- a/app/src/services/factoryBuilder/assest/assets/getAssetImages.ts
+++ b/app/src/services/factoryBuilder/assest/assets/getAssetImages.ts
@@ -3,9 +3,7 @@ let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_MARKETPLACE_URL}
export const getAssetImages = async (cursor?: string) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v3/AssetDatas?limit=10${
- cursor ? `&cursor=${cursor}` : ""
- }`,
+ `${url_Backend_dwinzo}/api/v3/AssetDatas?limit=10${cursor ? `&cursor=${cursor}` : ""}`,
{
method: "GET",
headers: {
diff --git a/app/src/services/factoryBuilder/assest/floorAsset/getFloorItemsApi.ts b/app/src/services/factoryBuilder/assest/floorAsset/getFloorItemsApi.ts
index 01aa67a..d6fbf5c 100644
--- a/app/src/services/factoryBuilder/assest/floorAsset/getFloorItemsApi.ts
+++ b/app/src/services/factoryBuilder/assest/floorAsset/getFloorItemsApi.ts
@@ -1,22 +1,27 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
-export const getFloorAssets = async (organization: string) => {
+export const getFloorAssets = async (organization: string,projectId?:string) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v2/floorAssets/${organization}`,
+ `${url_Backend_dwinzo}/api/V1/floorAssets/${projectId}`,
{
method: "GET",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
}
);
+ // console.log('response: ', response);
if (!response.ok) {
throw new Error("Failed to get assets");
}
const result = await response.json();
+ // console.log('result: ', result);
return result;
} catch (error) {
diff --git a/app/src/services/factoryBuilder/assest/floorAsset/setFloorItemApi.ts b/app/src/services/factoryBuilder/assest/floorAsset/setFloorItemApi.ts
index 010de40..d65006c 100644
--- a/app/src/services/factoryBuilder/assest/floorAsset/setFloorItemApi.ts
+++ b/app/src/services/factoryBuilder/assest/floorAsset/setFloorItemApi.ts
@@ -21,10 +21,13 @@ export const setFloorItemApi = async (
isVisible,
};
- const response = await fetch(`${url_Backend_dwinzo}/api/v2/setasset`, {
+ const response = await fetch(`${url_Backend_dwinzo}/api/V1/setAsset`, {
method: "POST",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
body: JSON.stringify(body),
});
diff --git a/app/src/services/factoryBuilder/assest/wallAsset/getWallItemsApi.ts b/app/src/services/factoryBuilder/assest/wallAsset/getWallItemsApi.ts
index 56ad357..bbb149e 100644
--- a/app/src/services/factoryBuilder/assest/wallAsset/getWallItemsApi.ts
+++ b/app/src/services/factoryBuilder/assest/wallAsset/getWallItemsApi.ts
@@ -1,22 +1,27 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
-export const getWallItems = async (organization: string) => {
+export const getWallItems = async (organization: string,projectId?:string) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v1/findWallItems/${organization}`,
+ `${url_Backend_dwinzo}/api/V1/walls/${projectId}`,
{
method: "GET",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
}
);
+ // console.log('response: ', response);
if (!response.ok) {
throw new Error("Failed to get Wall Items");
}
const result = await response.json();
+ // console.log('result: ', result);
return result;
} catch (error) {
echo.error("Failed to get wall items");
diff --git a/app/src/services/factoryBuilder/camera/getCameraApi.ts b/app/src/services/factoryBuilder/camera/getCameraApi.ts
index cea21d0..f7193f2 100644
--- a/app/src/services/factoryBuilder/camera/getCameraApi.ts
+++ b/app/src/services/factoryBuilder/camera/getCameraApi.ts
@@ -1,16 +1,16 @@
-import { setCamera } from "./setCameraApi";
-import * as THREE from "three";
-
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
-export const getCamera = async (organization: string, userId: string) => {
+export const getCamera = async (organization: string, userId: string, projectId?: string) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v1/getCamera/${organization}/${userId}`,
+ `${url_Backend_dwinzo}/api/V1/cameras/${projectId}`,
{
method: "GET",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
}
);
diff --git a/app/src/services/factoryBuilder/environment/findEnvironment.ts b/app/src/services/factoryBuilder/environment/findEnvironment.ts
index 2a35580..279f1c6 100644
--- a/app/src/services/factoryBuilder/environment/findEnvironment.ts
+++ b/app/src/services/factoryBuilder/environment/findEnvironment.ts
@@ -1,38 +1,28 @@
-import { setEnvironment } from "./setEnvironment";
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
-export const findEnvironment = async (organization: string, userId: string) => {
+export const findEnvironment = async (organization: string, userId: string, projectId?: string) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v1/findEnvironments/${organization}/${userId}`,
+ `${url_Backend_dwinzo}/api/V1/Environments/${projectId}`,
{
method: "GET",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
}
);
+
if (!response.ok) {
throw new Error("Failed to get wall and roof visibility");
}
const result = await response.json();
- if (result === "user not found") {
- const userpos = setEnvironment(
- organization,
- userId,
- false,
- false,
- false,
- 40,
- true
- );
- return userpos;
- } else {
- return result;
- }
+ return result;
} catch (error) {
echo.error("Failed to find env");
if (error instanceof Error) {
diff --git a/app/src/services/factoryBuilder/environment/setEnvironment.ts b/app/src/services/factoryBuilder/environment/setEnvironment.ts
index 4aa3263..70448d0 100644
--- a/app/src/services/factoryBuilder/environment/setEnvironment.ts
+++ b/app/src/services/factoryBuilder/environment/setEnvironment.ts
@@ -3,19 +3,24 @@ let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_UR
export const setEnvironment = async (
organization: string,
userId: string,
- wallVisibility: Boolean,
- roofVisibility: Boolean,
- shadowVisibility: Boolean,
+ wallVisibility: boolean,
+ roofVisibility: boolean,
+ shadowVisibility: boolean,
renderDistance: number,
- limitDistance: boolean
+ limitDistance: boolean,
+ projectId?: string
) => {
+
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v1/setEvironments`,
+ `${url_Backend_dwinzo}/api/V1/SetEnvironments`,
{
method: "POST",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
body: JSON.stringify({
organization,
@@ -25,15 +30,19 @@ export const setEnvironment = async (
shadowVisibility,
renderDistance,
limitDistance,
+ projectId
+
}),
}
);
+ // console.log('responseenv: ', response);
if (!response.ok) {
throw new Error("Failed to set wall and roof visibility");
}
const result = await response.json();
+ // console.log('resultsetenv: ', result);
return result;
} catch (error) {
echo.error("Failed to set env");
diff --git a/app/src/services/factoryBuilder/lines/getLinesApi.ts b/app/src/services/factoryBuilder/lines/getLinesApi.ts
index 0253246..9a1475d 100644
--- a/app/src/services/factoryBuilder/lines/getLinesApi.ts
+++ b/app/src/services/factoryBuilder/lines/getLinesApi.ts
@@ -1,13 +1,16 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
-export const getLines = async (organization: string) => {
+export const getLines = async (organization: string,projectId?:string) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v1/findLines/${organization}`,
+ `${url_Backend_dwinzo}/api/V1/lines/${projectId}`,
{
method: "GET",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
}
);
@@ -17,6 +20,7 @@ export const getLines = async (organization: string) => {
}
const result = await response.json();
+ // console.log('result: ', result);
return result;
} catch (error) {
echo.error("Failed to get Lines");
diff --git a/app/src/services/factoryBuilder/signInSignUp/signInApi.ts b/app/src/services/factoryBuilder/signInSignUp/signInApi.ts
index d45eadb..4082dac 100644
--- a/app/src/services/factoryBuilder/signInSignUp/signInApi.ts
+++ b/app/src/services/factoryBuilder/signInSignUp/signInApi.ts
@@ -1,20 +1,15 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
-export const signInApi = async (
- email: string,
- password: Object,
- organization: Object
-) => {
+export const signInApi = async (Email: string, Password: Object, organization: Object, fingerprint: any) => {
try {
- const response = await fetch(`${url_Backend_dwinzo}/api/v1/login`, {
+ const response = await fetch(`${url_Backend_dwinzo}/api/V1/Auth/login`, {
method: "POST",
- headers: {
- "Content-Type": "application/json",
- },
- body: JSON.stringify({ email, password, organization }),
+ headers: { "Content-Type": "application/json", },
+ body: JSON.stringify({ Email, Password, organization, fingerprint }),
});
const result = await response.json();
+
return result;
} catch (error) {
echo.error("Failed to sign-in");
diff --git a/app/src/services/factoryBuilder/signInSignUp/signUpApi.ts b/app/src/services/factoryBuilder/signInSignUp/signUpApi.ts
index aa9c63b..18992dc 100644
--- a/app/src/services/factoryBuilder/signInSignUp/signUpApi.ts
+++ b/app/src/services/factoryBuilder/signInSignUp/signUpApi.ts
@@ -2,17 +2,15 @@ let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_UR
export const signUpApi = async (
userName: string,
- email: string,
- password: Object,
+ Email: string,
+ Password: Object,
organization: Object
) => {
try {
- const response = await fetch(`${url_Backend_dwinzo}/api/v1/signup`, {
+ const response = await fetch(`${url_Backend_dwinzo}/api/V1/Auth/signup`, {
method: "POST",
- headers: {
- "Content-Type": "application/json",
- },
- body: JSON.stringify({ userName, email, password, organization }),
+ headers: { "Content-Type": "application/json", },
+ body: JSON.stringify({ userName, Email, Password, organization }),
});
if (!response.ok) {
diff --git a/app/src/services/factoryBuilder/zones/deleteZoneApi.ts b/app/src/services/factoryBuilder/zones/deleteZoneApi.ts
index 013ad31..2cd1f48 100644
--- a/app/src/services/factoryBuilder/zones/deleteZoneApi.ts
+++ b/app/src/services/factoryBuilder/zones/deleteZoneApi.ts
@@ -3,7 +3,7 @@ let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_UR
export const deleteZonesApi = async (
userId: string,
organization: string,
- zoneId: string
+ zoneUuid: string
) => {
try {
const response = await fetch(`${url_Backend_dwinzo}/api/v1/setLine`, {
@@ -11,7 +11,7 @@ export const deleteZonesApi = async (
headers: {
"Content-Type": "application/json",
},
- body: JSON.stringify({ userId, organization, zoneId }),
+ body: JSON.stringify({ userId, organization, zoneUuid }),
});
if (!response.ok) {
diff --git a/app/src/services/factoryBuilder/zones/getZonesApi.ts b/app/src/services/factoryBuilder/zones/getZonesApi.ts
index ba26e30..2f3882c 100644
--- a/app/src/services/factoryBuilder/zones/getZonesApi.ts
+++ b/app/src/services/factoryBuilder/zones/getZonesApi.ts
@@ -1,23 +1,28 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
-export const getZonesApi = async (organization: string) => {
+export const getZonesApi = async (organization: string, projectId?: string) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v2/findZones/${organization}`,
+ `${url_Backend_dwinzo}/api/V1/zones/${projectId}`,
{
method: "GET",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
}
);
- // if (!response.ok) {
- // throw new Error("Failed to get Zones");
- // }
+ if (!response.ok) {
+ throw new Error("Failed to get Zones");
+ }
const result = await response.json();
+ // console.log('result:zone ', result);
+
return result;
} catch (error) {
echo.error("Failed to get zone data");
diff --git a/app/src/services/visulization/zone/add3dWidget.ts b/app/src/services/visulization/zone/add3dWidget.ts
index e0bd06b..5f97942 100644
--- a/app/src/services/visulization/zone/add3dWidget.ts
+++ b/app/src/services/visulization/zone/add3dWidget.ts
@@ -1,17 +1,20 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
export const adding3dWidgets = async (
- zoneId: string,
+ zoneUuid: string,
organization: string,
widget: {}
) => {
try {
- const response = await fetch(`${url_Backend_dwinzo}/api/v2/3dwidget/save`, {
+ const response = await fetch(`${url_Backend_dwinzo}/api/V1/widget3d/save`, {
method: "POST",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
- body: JSON.stringify({ organization, zoneId, widget }),
+ body: JSON.stringify({ organization, zoneUuid, widget }),
});
if (!response.ok) {
diff --git a/app/src/services/visulization/zone/addFloatingWidgets.ts b/app/src/services/visulization/zone/addFloatingWidgets.ts
index 86d7fa8..1e964ff 100644
--- a/app/src/services/visulization/zone/addFloatingWidgets.ts
+++ b/app/src/services/visulization/zone/addFloatingWidgets.ts
@@ -2,19 +2,22 @@ let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_UR
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
export const addingFloatingWidgets = async (
- zoneId: string,
+ zoneUuid: string,
organization: string,
widget: {}
) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v2/floatwidget/save`,
+ `${url_Backend_dwinzo}/api/V1/floatWidget/save`,
{
method: "POST",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
- body: JSON.stringify({ organization, zoneId, widget }),
+ body: JSON.stringify({ organization, zoneUuid, widget }),
}
);
diff --git a/app/src/services/visulization/zone/addWidgets.ts b/app/src/services/visulization/zone/addWidgets.ts
index e44ac29..db24311 100644
--- a/app/src/services/visulization/zone/addWidgets.ts
+++ b/app/src/services/visulization/zone/addWidgets.ts
@@ -1,17 +1,20 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
export const addingWidgets = async (
- zoneId: string,
+ zoneUuid: string,
organization: string,
widget: {}
) => {
try {
- const response = await fetch(`${url_Backend_dwinzo}/api/v2/widget/save`, {
+ const response = await fetch(`${url_Backend_dwinzo}/api/V1/widget/save`, {
method: "POST",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
- body: JSON.stringify({ organization, zoneId, widget }),
+ body: JSON.stringify({ organization, zoneUuid, widget }),
});
if (!response.ok) {
@@ -19,6 +22,7 @@ export const addingWidgets = async (
}
const result = await response.json();
+ // console.log('result: ', result);
return result;
} catch (error) {
echo.error("Failed to add widget");
diff --git a/app/src/services/visulization/zone/clearPanel.ts b/app/src/services/visulization/zone/clearPanel.ts
index 98714bf..a1afd82 100644
--- a/app/src/services/visulization/zone/clearPanel.ts
+++ b/app/src/services/visulization/zone/clearPanel.ts
@@ -1,17 +1,20 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
export const clearPanel = async (
- zoneId: string,
+ zoneUuid: string,
organization: string,
panelName: string
) => {
try {
- const response = await fetch(`${url_Backend_dwinzo}/api/v2/clearpanel`, {
+ const response = await fetch(`${url_Backend_dwinzo}/api/V1/panel/clear`, {
method: "PATCH",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
- body: JSON.stringify({ organization, zoneId, panelName }),
+ body: JSON.stringify({ organization, zoneUuid, panelName }),
});
if (!response.ok) {
diff --git a/app/src/services/visulization/zone/delete3dWidget.ts b/app/src/services/visulization/zone/delete3dWidget.ts
index 0945196..7613d85 100644
--- a/app/src/services/visulization/zone/delete3dWidget.ts
+++ b/app/src/services/visulization/zone/delete3dWidget.ts
@@ -2,19 +2,22 @@ let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_UR
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
export const delete3dWidgetApi = async (
- zoneId: string,
+ zoneUuid: string,
organization: string,
id: string
) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v2/widget3D/delete`,
+ `${url_Backend_dwinzo}/api/V1/widget3d/delete`,
{
method: "PATCH",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
- body: JSON.stringify({ organization, zoneId, id }),
+ body: JSON.stringify({ organization, zoneUuid, id }),
}
);
diff --git a/app/src/services/visulization/zone/deleteFloatingWidget.ts b/app/src/services/visulization/zone/deleteFloatingWidget.ts
index 6d92f74..0833502 100644
--- a/app/src/services/visulization/zone/deleteFloatingWidget.ts
+++ b/app/src/services/visulization/zone/deleteFloatingWidget.ts
@@ -7,11 +7,14 @@ export const deleteFloatingWidgetApi = async (
) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v2/floatwidget/delete`,
+ `${url_Backend_dwinzo}/api/V1/floatWidget/delete`,
{
method: "PATCH",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
body: JSON.stringify({ organization, floatWidgetID }),
}
diff --git a/app/src/services/visulization/zone/deletePanel.ts b/app/src/services/visulization/zone/deletePanel.ts
index f2d91bf..51b81c7 100644
--- a/app/src/services/visulization/zone/deletePanel.ts
+++ b/app/src/services/visulization/zone/deletePanel.ts
@@ -2,17 +2,20 @@ let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_UR
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
export const deletePanelApi = async (
- zoneId: string,
+ zoneUuid: string,
panelName: string,
organization: string
) => {
try {
- const response = await fetch(`${url_Backend_dwinzo}/api/v2/panel/delete`, {
+ const response = await fetch(`${url_Backend_dwinzo}/api/V1/panel/delete`, {
method: "PATCH",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
- body: JSON.stringify({ organization, zoneId, panelName }),
+ body: JSON.stringify({ organization, zoneUuid, panelName }),
});
if (!response.ok) {
diff --git a/app/src/services/visulization/zone/deleteTemplate.ts b/app/src/services/visulization/zone/deleteTemplate.ts
index 252effa..a2875b1 100644
--- a/app/src/services/visulization/zone/deleteTemplate.ts
+++ b/app/src/services/visulization/zone/deleteTemplate.ts
@@ -7,11 +7,14 @@ export const deleteTemplateApi = async (
) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v2/TemplateDelete/${templateID}/${organization}`,
+ `${url_Backend_dwinzo}/api/V1/template/delete`,
{
method: "PATCH",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
}
);
diff --git a/app/src/services/visulization/zone/deleteWidgetApi.ts b/app/src/services/visulization/zone/deleteWidgetApi.ts
index 51026a4..ab72e48 100644
--- a/app/src/services/visulization/zone/deleteWidgetApi.ts
+++ b/app/src/services/visulization/zone/deleteWidgetApi.ts
@@ -4,15 +4,18 @@ let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_UR
export const deleteWidgetApi = async (
widgetID: string,
organization: string,
- zoneId: string
+ zoneUuid: string
) => {
try {
- const response = await fetch(`${url_Backend_dwinzo}/api/v2/delete/widget`, {
+ const response = await fetch(`${url_Backend_dwinzo}/api/V1/widget/delete`, {
method: "PATCH",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
- body: JSON.stringify({ organization, widgetID, zoneId }),
+ body: JSON.stringify({ organization, widgetID, zoneUuid }),
});
if (!response.ok) {
diff --git a/app/src/services/visulization/zone/duplicateWidget.ts b/app/src/services/visulization/zone/duplicateWidget.ts
index ff996fe..c5dab34 100644
--- a/app/src/services/visulization/zone/duplicateWidget.ts
+++ b/app/src/services/visulization/zone/duplicateWidget.ts
@@ -1,17 +1,20 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
export const duplicateWidgetApi = async (
- zoneId: string,
+ zoneUuid: string,
organization: string,
widget: {}
) => {
try {
- const response = await fetch(`${url_Backend_dwinzo}/api/v2/widget/save`, {
+ const response = await fetch(`${url_Backend_dwinzo}/api/V1/widget/save`, {
method: "POST",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
- body: JSON.stringify({ organization, zoneId, widget }),
+ body: JSON.stringify({ organization, zoneUuid, widget }),
});
if (!response.ok) {
diff --git a/app/src/services/visulization/zone/get3dWidgetData.ts b/app/src/services/visulization/zone/get3dWidgetData.ts
index 3e5f565..e591c39 100644
--- a/app/src/services/visulization/zone/get3dWidgetData.ts
+++ b/app/src/services/visulization/zone/get3dWidgetData.ts
@@ -1,16 +1,22 @@
+import { projectTutorial } from "../../dashboard/projectTutorial";
+
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
export const get3dWidgetZoneData = async (
- ZoneId?: string,
- organization?: string
+ zoneUuid?: string,
+ organization?: string,
+ projectId?: string
) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v2/3dwidgetData/${ZoneId}/${organization}`,
+ `${url_Backend_dwinzo}/api/V1/widget3d/data/${zoneUuid}/${projectId}`,
{
method: "GET",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
}
);
diff --git a/app/src/services/visulization/zone/getFloatingData.ts b/app/src/services/visulization/zone/getFloatingData.ts
index 10874e4..b91fca1 100644
--- a/app/src/services/visulization/zone/getFloatingData.ts
+++ b/app/src/services/visulization/zone/getFloatingData.ts
@@ -1,16 +1,20 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
export const getFloatingZoneData = async (
- ZoneId?: string,
- organization?: string
+ zoneUuid?: string,
+ organization?: string,
+ projectId?: string
) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v2/floadData/${ZoneId}/${organization}`,
+ `${url_Backend_dwinzo}/api/V1/floatWidgets/${zoneUuid}/${projectId}`,
{
method: "GET",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
}
);
diff --git a/app/src/services/visulization/zone/getSelect2dZoneData.ts b/app/src/services/visulization/zone/getSelect2dZoneData.ts
index 8519045..e25c4df 100644
--- a/app/src/services/visulization/zone/getSelect2dZoneData.ts
+++ b/app/src/services/visulization/zone/getSelect2dZoneData.ts
@@ -1,17 +1,17 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
-export const getSelect2dZoneData = async (
- ZoneId?: string,
- organization?: string
-) => {
+export const getSelect2dZoneData = async (zoneUuid?: string, organization?: string, projectId?: string) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v2/ZoneVisualization/${ZoneId}?organization=${organization}`,
+ `${url_Backend_dwinzo}/api/V1/zones/panel/${projectId}/${zoneUuid}`,
{
method: "GET",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
}
);
diff --git a/app/src/services/visulization/zone/getTemplate.ts b/app/src/services/visulization/zone/getTemplate.ts
index bebe45d..82d0181 100644
--- a/app/src/services/visulization/zone/getTemplate.ts
+++ b/app/src/services/visulization/zone/getTemplate.ts
@@ -1,13 +1,16 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
-export const getTemplateData = async (organization?: string) => {
+export const getTemplateData = async (organization?: string, projectId?: string) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v2/templateData/${organization}`,
+ `${url_Backend_dwinzo}/api/V1/template/data/${projectId}`,
{
method: "GET",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
}
);
diff --git a/app/src/services/visulization/zone/getZoneData.ts b/app/src/services/visulization/zone/getZoneData.ts
index 58131db..a02985e 100644
--- a/app/src/services/visulization/zone/getZoneData.ts
+++ b/app/src/services/visulization/zone/getZoneData.ts
@@ -1,17 +1,19 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
-export const getZone2dData = async (organization?: string) => {
+export const getZone2dData = async (organization?: string, projectId?: string) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v2/pageZodeData?organization=${organization}`,
+ `${url_Backend_dwinzo}/api/V1/zones/visualization/${projectId}`,
{
method: "GET",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
}
);
-
if (!response.ok) {
throw new Error("Failed to fetch zoneDatas");
}
diff --git a/app/src/services/visulization/zone/getZones.ts b/app/src/services/visulization/zone/getZones.ts
index 569c5ae..79164da 100644
--- a/app/src/services/visulization/zone/getZones.ts
+++ b/app/src/services/visulization/zone/getZones.ts
@@ -1,14 +1,17 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
-export const getZoneData = async (zoneId: string, organization: string) => {
+export const getZoneData = async (zoneUuid: string, organization: string, projectId?: string) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v2/A_zone/${zoneId}/${organization}`,
+ `${url_Backend_dwinzo}/api/V1/zones/${projectId}/${zoneUuid}`,
{
method: "GET",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
}
);
diff --git a/app/src/services/visulization/zone/loadTemplate.ts b/app/src/services/visulization/zone/loadTemplate.ts
index 5c14744..adac0bd 100644
--- a/app/src/services/visulization/zone/loadTemplate.ts
+++ b/app/src/services/visulization/zone/loadTemplate.ts
@@ -2,18 +2,21 @@ let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_UR
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
export const loadTempleteApi = async (
templateID: string,
- zoneId: string,
+ zoneUuid: string,
organization: string
) => {
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v2/TemplatetoZone`,
+ `${url_Backend_dwinzo}/api/V1/template/toZone`,
{
method: "POST",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
- body: JSON.stringify({ organization, zoneId, templateID }),
+ body: JSON.stringify({ organization, zoneUuid, templateID }),
}
);
diff --git a/app/src/services/visulization/zone/lockPanel.ts b/app/src/services/visulization/zone/lockPanel.ts
index a28d4df..85af5d6 100644
--- a/app/src/services/visulization/zone/lockPanel.ts
+++ b/app/src/services/visulization/zone/lockPanel.ts
@@ -1,7 +1,7 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
export const lockPanel = async (
- zoneId: string,
+ zoneUuid: string,
organization: string,
lockedPanel: any
) => {
@@ -13,7 +13,7 @@ export const lockPanel = async (
headers: {
"Content-Type": "application/json",
},
- body: JSON.stringify({ organization, zoneId, lockedPanel }),
+ body: JSON.stringify({ organization, zoneUuid, lockedPanel }),
}
);
diff --git a/app/src/services/visulization/zone/panel.ts b/app/src/services/visulization/zone/panel.ts
index 1f1911b..77276ff 100644
--- a/app/src/services/visulization/zone/panel.ts
+++ b/app/src/services/visulization/zone/panel.ts
@@ -3,16 +3,19 @@ type Side = "top" | "bottom" | "left" | "right";
export const panelData = async (
organization: string,
- zoneId: string,
+ zoneUuid: string,
panelOrder: Side[]
) => {
try {
- const response = await fetch(`${url_Backend_dwinzo}/api/v2/panel/save`, {
+ const response = await fetch(`${url_Backend_dwinzo}/api/V1/panel/save`, {
method: "POST",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
- body: JSON.stringify({ organization, zoneId, panelOrder }),
+ body: JSON.stringify({ organization, zoneUuid, panelOrder }),
});
if (!response.ok) {
diff --git a/app/src/services/visulization/zone/saveTempleteApi.ts b/app/src/services/visulization/zone/saveTempleteApi.ts
index fc7f8e3..232fced 100644
--- a/app/src/services/visulization/zone/saveTempleteApi.ts
+++ b/app/src/services/visulization/zone/saveTempleteApi.ts
@@ -2,10 +2,13 @@ let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_UR
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
export const saveTemplateApi = async (organization: string, template: {}) => {
try {
- const response = await fetch(`${url_Backend_dwinzo}/api/v2/template/save`, {
+ const response = await fetch(`${url_Backend_dwinzo}/api/V1/template/save`, {
method: "POST",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
body: JSON.stringify({ organization, template }),
});
diff --git a/app/src/services/visulization/zone/update3dWidget.ts b/app/src/services/visulization/zone/update3dWidget.ts
index 278be58..d69e9a2 100644
--- a/app/src/services/visulization/zone/update3dWidget.ts
+++ b/app/src/services/visulization/zone/update3dWidget.ts
@@ -1,22 +1,27 @@
let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_URL}`;
// let url_Backend_dwinzo = `http://192.168.0.102:5000`;
export const update3dWidget = async (
- zoneId: string,
+ zoneUuid: string,
organization: string,
id: string,
position?: [number, number, number]
) => {
console.log("organization: ", organization);
- console.log("zoneId: ", zoneId);
+ console.log("zoneUuid: ", zoneUuid);
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v2/modifyPR/widget3D`,
+ `${url_Backend_dwinzo}/api/V1/widget3d/update`,
{
method: "PATCH",
- headers: { "Content-Type": "application/json" },
+ headers: {
+ Authorization: "Bearer ", // Replace with actual token
+ "Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
+ },
body: JSON.stringify({
organization,
- zoneId,
+ zoneUuid,
id,
position,
}),
@@ -40,24 +45,27 @@ export const update3dWidget = async (
};
export const update3dWidgetRotation = async (
- zoneId: string,
+ zoneUuid: string,
organization: string,
id: string,
rotation?: [number, number, number]
) => {
console.log("organization: ", organization);
- console.log("zoneId: ", zoneId);
+ console.log("zoneUuid: ", zoneUuid);
try {
const response = await fetch(
- `${url_Backend_dwinzo}/api/v2/modifyPR/widget3D`,
+ `${url_Backend_dwinzo}/api/V1/widget3d/update`,
{
method: "PATCH",
headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
body: JSON.stringify({
organization,
- zoneId,
+ zoneUuid,
id,
rotation,
}),
diff --git a/app/src/services/visulization/zone/zoneCameraUpdation.ts b/app/src/services/visulization/zone/zoneCameraUpdation.ts
index 6dddf67..9307e42 100644
--- a/app/src/services/visulization/zone/zoneCameraUpdation.ts
+++ b/app/src/services/visulization/zone/zoneCameraUpdation.ts
@@ -3,10 +3,13 @@ let url_Backend_dwinzo = `http://${process.env.REACT_APP_SERVER_REST_API_BASE_UR
export const zoneCameraUpdate = async (zonesdata: {}, organization: string) => {
try {
- const response = await fetch(`${url_Backend_dwinzo}/api/v2/zone/save`, {
+ const response = await fetch(`${url_Backend_dwinzo}/api/V1/zones`, {
method: "POST",
- headers: {
+ headers: {
+ Authorization: "Bearer ", // Replace with actual token
"Content-Type": "application/json",
+ token: localStorage.getItem("token") || "", // Coerce null to empty string
+ refresh_token: localStorage.getItem("refreshToken") || "",
},
body: JSON.stringify({ zonesdata, organization }),
});
diff --git a/app/src/store/builder/store.ts b/app/src/store/builder/store.ts
index 267516b..ab636eb 100644
--- a/app/src/store/builder/store.ts
+++ b/app/src/store/builder/store.ts
@@ -5,39 +5,111 @@ import * as CONSTANTS from "../../types/world/worldConstants";
export const useSocketStore = create((set: any, get: any) => ({
socket: null,
- initializeSocket: (email: string, organization: string) => {
+ initializeSocket: (email?: string, organization?: string, token?: string) => {
const existingSocket = get().socket;
if (existingSocket) {
return;
}
const socket = io(
- `http://${process.env.REACT_APP_SERVER_SOCKET_API_BASE_URL}/Builder`,
+ `http://${process.env.REACT_APP_SERVER_SOCKET_API_BASE_URL}/Builder_v1`,
{
reconnection: true,
- auth: { email, organization },
+ auth: { token },
}
);
const visualizationSocket = io(
- `http://${process.env.REACT_APP_SERVER_SOCKET_API_BASE_URL}/Visualization`,
+ `http://${process.env.REACT_APP_SERVER_SOCKET_API_BASE_URL}/Visualization_v1`,
{
reconnection: true,
- auth: { email, organization },
+ auth: { token },
+ }
+ );
+
+
+ const dashBoardSocket = io(
+ `http://${process.env.REACT_APP_SERVER_SOCKET_API_BASE_URL}/dashboard`,
+ {
+ reconnection: true,
+ auth: { token },
+ }
+ );
+ const projectSocket = io(
+ `http://${process.env.REACT_APP_SERVER_SOCKET_API_BASE_URL}/project`,
+ {
+ reconnection: true,
+ auth: { token },
}
);
- set({ socket, visualizationSocket });
+ set({ socket, visualizationSocket, dashBoardSocket, projectSocket });
},
disconnectSocket: () => {
set((state: any) => {
state.socket?.disconnect();
state.visualizationSocket?.disconnect();
+ state.dashBoardSocket?.disconnect();
+ state.projectSocket?.disconnect();
return { socket: null };
});
},
}));
+// export const useSocketStore = create((set: any, get: any) => ({
+// socket: null,
+// initializeSocket: (
+// email: string,
+// organization: string,
+// userId?: string,
+// token?: string
+// ) => {
+// const existingSocket = get().socket;
+// if (existingSocket) {
+// return;
+// }
+// const socket = io(
+// `http://${process.env.REACT_APP_SERVER_SOCKET_API_BASE_URL}/Builder`,
+// {
+// reconnection: true,
+// auth: { email, organization },
+// }
+// );
+
+// const visualizationSocket = io(
+// `http://${process.env.REACT_APP_SERVER_SOCKET_API_BASE_URL}/Visualization`,
+// {
+// reconnection: true,
+// auth: { email, organization },
+// }
+// );
+
+// const dashBoardSocket = io(
+// `http://${process.env.REACT_APP_SERVER_SOCKET_API_BASE_URL}/dashboard`,
+// {
+// reconnection: true,
+// auth: { token },
+// }
+// );
+// // const dashBoardSocket = io(
+// // `http://${process.env.REACT_APP_SERVER_SOCKET_API_BASE_URL}/project`,
+// // {
+// // reconnection: true,
+// // auth: { token },
+// // }
+// // );
+
+// set({ socket, visualizationSocket, dashBoardSocket });
+// },
+// disconnectSocket: () => {
+// set((state: any) => {
+// state.socket?.disconnect();
+// state.visualizationSocket?.disconnect();
+// state.dashBoardSocket?.disconnect();
+// return { socket: null };
+// });
+// },
+// }));
export const useLoadingProgress = create<{
loadingProgress: number;
setLoadingProgress: (x: number) => void;
@@ -215,6 +287,11 @@ export const useRemovedLayer = create((set: any) => ({
setRemovedLayer: (x: any) => set(() => ({ removedLayer: x })),
}));
+export const useProjectName = create((set: any) => ({
+ projectName: "Creating Your Project",
+ setProjectName: (x: any) => set({ projectName: x }),
+}));
+
export const useActiveLayer = create((set: any) => ({
activeLayer: 1,
setActiveLayer: (x: any) => set({ activeLayer: x }),
@@ -288,6 +365,11 @@ export const useUserName = create((set: any) => ({
setUserName: (x: any) => set({ userName: x }),
}));
+export const useRenameModeStore = create