diff --git a/src/assets/classes/SocketHandler.js b/src/assets/classes/SocketHandler.js deleted file mode 100644 index fe6c80f..0000000 --- a/src/assets/classes/SocketHandler.js +++ /dev/null @@ -1,28 +0,0 @@ -export default class socketHandler { - constructor(socket) { - this.socket = socket; - - this.socket.addEventListener("message", (event) => { - try { - console.log("Message from server", event.data); - let messages = document.getElementById("messages"); - let message = document.createElement("li"); - message.textContent = "Received: " + event.data; - messages.appendChild(message); - } catch (error) { - console.log("Error", error); - } - }); - } - - sendMessage(message) { - this.socket.send(message); - console.log("Message sent", message); - } - - ping() { - let message = `{ "call": "send", "type": "log", "data": "This is a ping!!" }`; - this.socket.send(message); - console.log("Message sent", message); - } -} diff --git a/src/assets/stylesheets/browse.scss b/src/assets/stylesheets/browse.scss index 447a6b7..94e5961 100644 --- a/src/assets/stylesheets/browse.scss +++ b/src/assets/stylesheets/browse.scss @@ -10,9 +10,8 @@ $white: #fff; background: linear-gradient( 180deg, rgb(0 37 84 / 100%) 0%, - rgb(0 124 190 / 100%) 26%, - rgb(255 255 255) 39%, - rgb(255 255 255 / 100%) 100% + rgb(0 124 190 / 100%) 50%, + rgb(255, 255, 255) 100% ); background-color: transparent; overflow-y: visible; @@ -48,6 +47,7 @@ $white: #fff; flex-direction: column; overflow: hidden; background-color: transparent; + margin-bottom: 50px; } .browse-cable { @@ -61,7 +61,15 @@ $white: #fff; border-radius: 20px; border: 1px solid $gray; padding: 25px; - margin-bottom: 10px; + margin-bottom: 5px; + margin-top: 5px; + transition: all 0.3s ease-in-out; + cursor: pointer; + text-decoration: none; +} + +.browse-cable:hover { + transform: translate3d(-5px, -5px, 0); } .browse-cable-image { @@ -69,7 +77,6 @@ $white: #fff; height: 100%; background-color: transparent; margin-right: 10px; - } .browse-cable-label { diff --git a/src/assets/stylesheets/cabledetail.scss b/src/assets/stylesheets/cabledetail.scss new file mode 100644 index 0000000..0bb0126 --- /dev/null +++ b/src/assets/stylesheets/cabledetail.scss @@ -0,0 +1,50 @@ +$dark-blue: #002554; +$medium-blue: #004990; +$light-blue: #007cbe; +$hover-blue: #25b3ff; +$black: #000; +$gray: #bdbdbd; +$white: #fff; + +.cable { + background: linear-gradient( + 180deg, + rgb(0 37 84 / 100%) 0%, + rgb(0 124 190 / 100%) 50%, + rgb(255, 255, 255) 100% + ); + background-color: transparent; + overflow-y: visible; + width: calc(100% - 300px); + height: auto; + display: block; + justify-content: center; + align-items: center; +} + +.cable-image { + width: 100%; + height: 200px; + background: transparent; + display: flex; + align-items: center; + justify-content: center; +} + +.cable-image img { + width: auto; + height: 200px; + background-color: transparent; +} + +.cable-fieldContainer { + width: 100%; + min-height: calc(100% - 200px); + height: auto; + display: flex; + align-items: center; + justify-content: flex-start; + flex-direction: column; + overflow: hidden; + background-color: transparent; +} \ No newline at end of file diff --git a/src/components/BrowseComponent.js b/src/components/BrowseComponent.js index efea2c4..efeaf39 100644 --- a/src/components/BrowseComponent.js +++ b/src/components/BrowseComponent.js @@ -1,6 +1,7 @@ import React, { Component } from "react"; import BeldenLogo from "../assets/images/belden-white.png"; import DefaultPartImg from "../assets/images/part.png"; +import { NavLink } from "react-router-dom"; import "../assets/stylesheets/browse.scss"; class cable { @@ -28,7 +29,7 @@ class cable { returnDiv() { return ( -
+ Cable
{this.name}
@@ -42,7 +43,7 @@ class cable {
{">"} - + ); } } @@ -56,14 +57,8 @@ export default class BrowseComponent extends Component { } componentDidMount() { - this.props.socketHandler.sendMessage( - '{"type":"cable_map","call":"request","data":{}}' - ); - - this.props.socketHandler.socket.addEventListener( - "message", - this.handleMessage - ); + this.props.socket.send('{"type":"cable_map","call":"request","data":{}}'); + this.props.socket.addEventListener("message", this.handleMessage); } handleMessage = (event) => { @@ -102,10 +97,7 @@ export default class BrowseComponent extends Component { } componentWillUnmount() { - this.props.socketHandler.socket.removeEventListener( - "message", - this.handleMessage - ); + this.props.socket.removeEventListener("message", this.handleMessage); } render() { diff --git a/src/components/CableDetailComponent.js b/src/components/CableDetailComponent.js new file mode 100644 index 0000000..9e30134 --- /dev/null +++ b/src/components/CableDetailComponent.js @@ -0,0 +1,41 @@ +import React, { Component } from "react"; +import BeldenLogo from "../assets/images/belden-white.png"; +import { NavLink } from "react-router-dom"; +import "../assets/stylesheets/cabledetail.scss"; + +export default class CableDetailComponent extends Component { + constructor(props) { + super(props); + } + + // componentDidMount() { + // this.props.socket.send('{"type":"cable_map","call":"request","data":{}}'); + // this.props.socket.addEventListener("message", this.handleMessage); + // } + + // handleMessage = (event) => { + // try { + // console.log("Message from server", event.data); + // const message = JSON.parse(event.data); + // } catch (error) { + // console.error("Error parsing message from server:", error); + // } + // }; + + // componentWillUnmount() { + // this.props.socket.removeEventListener("message", this.handleMessage); + // } + + render() { + return ( +
+
+ Belden +
+
+ +
+
+ ); + } +} diff --git a/src/components/NavBar.js b/src/components/NavBar.js index ce5ddc8..249c7c8 100644 --- a/src/components/NavBar.js +++ b/src/components/NavBar.js @@ -14,6 +14,9 @@ export default class NavBar extends Component { } else if (path.includes("map")) { document.getElementById("map").style.backgroundColor = "#007CBE"; document.getElementById("map-s").style.color = "white"; + } else if (path.includes("cable")) { + document.getElementById("browse").style.backgroundColor = "#007CBE"; + document.getElementById("browse-s").style.color = "white"; } else { document.getElementById("home").style.backgroundColor = "#007CBE"; document.getElementById("home-s").style.color = "white"; diff --git a/src/index.js b/src/index.js index a5c675e..77d5cde 100644 --- a/src/index.js +++ b/src/index.js @@ -4,8 +4,8 @@ import { createBrowserRouter, RouterProvider } from "react-router-dom"; import SummaryRoute from "./routes/SummaryRoute"; import BrowseRoute from "./routes/BrowseRoute"; import SettingsRoute from "./routes/SettingsRoute"; -import SocketHandler from "./assets/classes/SocketHandler"; import MapRoute from "./routes/MapRoute"; +import CableDetailRoute from "./routes/CableDetailRoute"; // Root const root = ReactDOM.createRoot(document.getElementById("root")); @@ -21,27 +21,30 @@ socket.addEventListener("open", function (event) { // Initialize the app const init = () => { - const socketHandler = new SocketHandler(socket); - const router = createBrowserRouter([ { path: "/", - element: , + element: , // errorElement: , }, { path: "/browse", - element: , + element: , // errorElement: , }, { path: "/settings", - element: , + element: , // errorElement: , }, { path: "/map", - element: , + element: , + // errorElement: , + }, + { + path: "/cable/:cableId", + element: , // errorElement: , }, ]); diff --git a/src/routes/BrowseRoute.js b/src/routes/BrowseRoute.js index 7b7acfc..ed3c685 100644 --- a/src/routes/BrowseRoute.js +++ b/src/routes/BrowseRoute.js @@ -13,7 +13,7 @@ export default class BrowseRoute extends Component { return (
- +
); } diff --git a/src/routes/CableDetailRoute.js b/src/routes/CableDetailRoute.js new file mode 100644 index 0000000..7c8b8dc --- /dev/null +++ b/src/routes/CableDetailRoute.js @@ -0,0 +1,20 @@ +import React, { Component } from "react"; +import NavBar from "../components/NavBar"; +import CableDetailComponent from "../components/CableDetailComponent"; +import "../assets/stylesheets/app.scss"; + +export default class CableDetailRoute extends Component { + constructor(props) { + super(props); + document.title = "Details"; + } + + render() { + return ( +
+ + +
+ ); + } +} diff --git a/src/routes/MapRoute.js b/src/routes/MapRoute.js index 6a11bac..aa62a57 100644 --- a/src/routes/MapRoute.js +++ b/src/routes/MapRoute.js @@ -13,7 +13,7 @@ export default class MapRoute extends Component { return (
- +
); } diff --git a/src/routes/SettingsRoute.js b/src/routes/SettingsRoute.js index 2c9dfd9..a42349c 100644 --- a/src/routes/SettingsRoute.js +++ b/src/routes/SettingsRoute.js @@ -13,7 +13,7 @@ export default class SettingsRoute extends Component { return (
- +
); } diff --git a/src/routes/SummaryRoute.js b/src/routes/SummaryRoute.js index c8715cf..fb0f548 100644 --- a/src/routes/SummaryRoute.js +++ b/src/routes/SummaryRoute.js @@ -13,7 +13,7 @@ export default class HomeRoute extends Component { return (
- +
); }