diff --git a/uniro_frontend/src/App.tsx b/uniro_frontend/src/App.tsx index bd1fcf8..cf246e5 100644 --- a/uniro_frontend/src/App.tsx +++ b/uniro_frontend/src/App.tsx @@ -20,29 +20,29 @@ import { ReactQueryDevtools } from "@tanstack/react-query-devtools"; const queryClient = new QueryClient(); function App() { - const { location, fallback } = useDynamicSuspense(); - useNetworkStatus(); - return ( - - - - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - /** 에러 페이지 */ - } /> - } /> - - - - - ); + const { location, fallback } = useDynamicSuspense(); + useNetworkStatus(); + return ( + + + + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + /** 에러 페이지 */ + } /> + } /> + + + + + ); } export default App; diff --git a/uniro_frontend/src/components/navigation/route/routeCard.tsx b/uniro_frontend/src/components/navigation/route/routeCard.tsx index d00f175..ddbb102 100644 --- a/uniro_frontend/src/components/navigation/route/routeCard.tsx +++ b/uniro_frontend/src/components/navigation/route/routeCard.tsx @@ -4,7 +4,7 @@ import StraightIcon from "../../../assets/route/straight.svg?react"; import RightIcon from "../../../assets/route/right.svg?react"; import LeftIcon from "../../../assets/route/left.svg?react"; import CautionText from "../../../assets/icon/cautionText.svg?react"; -import { RouteEdge } from "../../../data/types/edge"; +import { RouteEdge } from "../../../data/types/route"; import { Building } from "../../../data/types/node"; const NumberIcon = ({ index }: { index: number }) => { diff --git a/uniro_frontend/src/components/navigation/route/routeList.tsx b/uniro_frontend/src/components/navigation/route/routeList.tsx index 6c27124..fdef693 100644 --- a/uniro_frontend/src/components/navigation/route/routeList.tsx +++ b/uniro_frontend/src/components/navigation/route/routeList.tsx @@ -1,5 +1,5 @@ import { Fragment } from "react"; -import { RouteEdge } from "../../../data/types/edge"; +import { RouteEdge } from "../../../data/types/route"; import { Building } from "../../../data/types/node"; import { RouteCard } from "./routeCard"; diff --git a/uniro_frontend/src/data/factory/edgeFactory.ts b/uniro_frontend/src/data/factory/edgeFactory.ts index 77ca341..ccb0549 100644 --- a/uniro_frontend/src/data/factory/edgeFactory.ts +++ b/uniro_frontend/src/data/factory/edgeFactory.ts @@ -1,4 +1,4 @@ -import { Direction, HazardEdge, RouteEdge } from "../types/edge"; +import { Direction, HazardEdge, RouteEdge } from "../types/route"; import { CautionFactor, DangerFactor } from "../types/factor"; import { CustomNode } from "../types/node"; diff --git a/uniro_frontend/src/data/factory/navigationFactory.ts b/uniro_frontend/src/data/factory/navigationFactory.ts index d62f342..37ff378 100644 --- a/uniro_frontend/src/data/factory/navigationFactory.ts +++ b/uniro_frontend/src/data/factory/navigationFactory.ts @@ -1,5 +1,5 @@ import { hanyangBuildings } from "../mock/hanyangBuildings"; -import { RouteEdge } from "../types/edge"; +import { RouteEdge } from "../types/route"; import { NavigationRoute } from "../types/route"; // TODO: Distance를 m-> km로 자동 변환해주는 util diff --git a/uniro_frontend/src/data/mock/hanyangHazardEdge.ts b/uniro_frontend/src/data/mock/hanyangHazardEdge.ts index 0cd4e67..fc54068 100644 --- a/uniro_frontend/src/data/mock/hanyangHazardEdge.ts +++ b/uniro_frontend/src/data/mock/hanyangHazardEdge.ts @@ -1,6 +1,6 @@ import { createHazardEdge } from "../factory/edgeFactory"; import { createNode } from "../factory/nodeFactory"; -import { HazardEdge } from "../types/edge"; +import { HazardEdge } from "../types/route"; import { CustomNode } from "../types/node"; const nodes: CustomNode[] = [ diff --git a/uniro_frontend/src/data/mock/hanyangRoute.ts b/uniro_frontend/src/data/mock/hanyangRoute.ts index 6c7663e..ebe71b8 100644 --- a/uniro_frontend/src/data/mock/hanyangRoute.ts +++ b/uniro_frontend/src/data/mock/hanyangRoute.ts @@ -1,7 +1,7 @@ import { createHazardEdge, createRouteEdges } from "../factory/edgeFactory"; import { createNavigationRoute } from "../factory/navigationFactory"; import { createNode } from "../factory/nodeFactory"; -import { HazardEdge } from "../types/edge"; +import { HazardEdge } from "../types/route"; import { CustomNode } from "../types/node"; const nodes: CustomNode[] = [ diff --git a/uniro_frontend/src/data/types/coord.d.ts b/uniro_frontend/src/data/types/coord.d.ts new file mode 100644 index 0000000..625eadd --- /dev/null +++ b/uniro_frontend/src/data/types/coord.d.ts @@ -0,0 +1 @@ +export type Coord = google.maps.LatLngLiteral; diff --git a/uniro_frontend/src/data/types/edge.d.ts b/uniro_frontend/src/data/types/edge.d.ts deleted file mode 100644 index bf2271f..0000000 --- a/uniro_frontend/src/data/types/edge.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { CautionFactor, DangerFactor } from "./factor"; -import { CustomNode } from "./node"; - -export interface Edge { - id: string; - startNode: CustomNode; - endNode: CustomNode; -} - -export type Direction = "origin" | "right" | "straight" | "left" | "uturn" | "destination" | "caution"; - -// 위험 요소 & 주의 요소 -// 마커를 표시하거나, 길 찾기 결과의 경로를 그릴 때 사용 -export interface HazardEdge extends Edge { - dangerFactors?: DangerFactor[]; - cautionFactors?: CautionFactor[]; -} - -export interface RouteEdge extends HazardEdge { - distance: number; - direction: Direction; -} diff --git a/uniro_frontend/src/data/types/node.d.ts b/uniro_frontend/src/data/types/node.d.ts index 3554f45..87a812a 100644 --- a/uniro_frontend/src/data/types/node.d.ts +++ b/uniro_frontend/src/data/types/node.d.ts @@ -1,14 +1,14 @@ -export interface CustomNode { - id: string; - lng: number; - lat: number; - isCore?: boolean; +import { Coord } from "./coord"; + +export type NodeId = number; + +export interface Node extends Coord { + nodeId: NodeId; } -// 건물 노드의 정보를 담고 있음 -export interface Building extends CustomNode { +export interface Building extends Node { buildingName: string; - buildingImageUrl?: string; + buildingImageUrl: string; phoneNumber: string; address: string; } diff --git a/uniro_frontend/src/data/types/route.d.ts b/uniro_frontend/src/data/types/route.d.ts index 61a6098..12cfe44 100644 --- a/uniro_frontend/src/data/types/route.d.ts +++ b/uniro_frontend/src/data/types/route.d.ts @@ -1,16 +1,39 @@ -import { RoutePoint } from "../../constant/enum/routeEnum"; -import { Building } from "./node"; +import { CautionIssueType, DangerIssueType } from "../../constant/enum/reportEnum"; +import { Coord } from "./coord"; +import { Node } from "./node"; -export interface Route { - route: RouteEdge[]; +export type RouteId = number; + +export type Route = { + routeId: RouteId; + startNode: Node; + endNode: Node; +}; + +export type Direction = "origin" | "right" | "straight" | "left" | "uturn" | "destination" | "caution"; + +export interface CautionRoute extends Route { + cautionTypes: CautionIssueType[]; +} + +export interface DangerRoute extends Route { + dangerTypes: DangerIssueType[]; } export interface NavigationRoute extends Route { + cautionTypes: CautionIssueType[]; +} + +export type RouteDetail = { + dist: number; + directionType: Direction; + coordinates: Coord; +}; + +export type NavigationRouteList = { hasCaution: boolean; totalDistance: number; totalCost: number; - originBuilding: Building; - destinationBuilding: Building; -} - -export type RoutePointType = RoutePoint.ORIGIN | RoutePoint.DESTINATION; + routes: NavigationRoute[]; + routeDetails: RouteDetail[]; +}; diff --git a/uniro_frontend/src/pages/reportHazard.tsx b/uniro_frontend/src/pages/reportHazard.tsx index d24cd0d..357745e 100644 --- a/uniro_frontend/src/pages/reportHazard.tsx +++ b/uniro_frontend/src/pages/reportHazard.tsx @@ -3,7 +3,7 @@ import useMap from "../hooks/useMap"; import { mockNavigationRoute } from "../data/mock/hanyangRoute"; import createAdvancedMarker from "../utils/markers/createAdvanedMarker"; import createMarkerElement from "../components/map/mapMarkers"; -import { RouteEdge } from "../data/types/edge"; +import { RouteEdge } from "../data/types/route"; import { Markers } from "../constant/enum/markerEnum"; import { mockHazardEdges } from "../data/mock/hanyangHazardEdge"; import { ClickEvent } from "../data/types/event"; diff --git a/uniro_frontend/src/pages/reportRoute.tsx b/uniro_frontend/src/pages/reportRoute.tsx index ca88cc2..143ddba 100644 --- a/uniro_frontend/src/pages/reportRoute.tsx +++ b/uniro_frontend/src/pages/reportRoute.tsx @@ -1,7 +1,7 @@ import { useEffect, useRef, useState } from "react"; import createMarkerElement from "../components/map/mapMarkers"; import { Markers } from "../constant/enum/markerEnum"; -import { RouteEdge } from "../data/types/edge"; +import { RouteEdge } from "../data/types/route"; import useMap from "../hooks/useMap"; import createAdvancedMarker from "../utils/markers/createAdvanedMarker"; import { mockNavigationRoute } from "../data/mock/hanyangRoute";