{"ast":null,"code":"var _jsxFileName = \"D:\\\\LDT\\\\000 Project\\\\LDT\\\\Client\\\\src\\\\App.js\",\n  _s = $RefreshSig$();\nimport { BrowserRouter, Routes, Route } from \"react-router-dom\";\nimport { AuthProvider, useAuth } from \"./contexts/AuthContext\";\nimport ProtectedRoute from \"./components/ProtectedRoute\";\nimport Header from \"./components/Header\";\nimport Footer from \"./components/Footer\"; // Massively 푸터, 필요시\nimport Login from \"./pages/Login\";\nimport Register from \"./pages/Register\";\nimport SensorList from \"./pages/SensorList\";\nimport SensorAdd from \"./pages/SensorAdd\";\nimport Admin from \"./pages/Admin\";\nimport { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\nfunction AppRoutes() {\n  _s();\n  const {\n    user\n  } = useAuth();\n  return /*#__PURE__*/_jsxDEV(\"div\", {\n    id: \"wrapper\",\n    children: [/*#__PURE__*/_jsxDEV(Header, {}, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 16,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(\"main\", {\n      id: \"main\",\n      children: /*#__PURE__*/_jsxDEV(Routes, {\n        children: [/*#__PURE__*/_jsxDEV(Route, {\n          path: \"/login\",\n          element: /*#__PURE__*/_jsxDEV(Login, {}, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 19,\n            columnNumber: 41\n          }, this)\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 19,\n          columnNumber: 11\n        }, this), /*#__PURE__*/_jsxDEV(Route, {\n          path: \"/register\",\n          element: /*#__PURE__*/_jsxDEV(Register, {}, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 20,\n            columnNumber: 44\n          }, this)\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 20,\n          columnNumber: 11\n        }, this), /*#__PURE__*/_jsxDEV(Route, {\n          path: \"/sensor\",\n          element: /*#__PURE__*/_jsxDEV(ProtectedRoute, {\n            user: user,\n            children: /*#__PURE__*/_jsxDEV(SensorList, {}, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 23,\n              columnNumber: 15\n            }, this)\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 22,\n            columnNumber: 13\n          }, this)\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 21,\n          columnNumber: 11\n        }, this), /*#__PURE__*/_jsxDEV(Route, {\n          path: \"/sensor/add\",\n          element: /*#__PURE__*/_jsxDEV(ProtectedRoute, {\n            user: user,\n            roles: [\"admin\"],\n            children: /*#__PURE__*/_jsxDEV(SensorAdd, {}, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 28,\n              columnNumber: 15\n            }, this)\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 27,\n            columnNumber: 13\n          }, this)\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 26,\n          columnNumber: 11\n        }, this), /*#__PURE__*/_jsxDEV(Route, {\n          path: \"/admin\",\n          element: /*#__PURE__*/_jsxDEV(ProtectedRoute, {\n            user: user,\n            roles: [\"admin\"],\n            children: /*#__PURE__*/_jsxDEV(Admin, {}, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 33,\n              columnNumber: 15\n            }, this)\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 32,\n            columnNumber: 13\n          }, this)\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 31,\n          columnNumber: 11\n        }, this), /*#__PURE__*/_jsxDEV(Route, {\n          path: \"/\",\n          element: /*#__PURE__*/_jsxDEV(\"div\", {\n            children: \"\\uBA54\\uC778\\uD398\\uC774\\uC9C0\"\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 36,\n            columnNumber: 36\n          }, this)\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 36,\n          columnNumber: 11\n        }, this)]\n      }, void 0, true, {\n        fileName: _jsxFileName,\n        lineNumber: 18,\n        columnNumber: 9\n      }, this)\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 17,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(Footer, {}, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 39,\n      columnNumber: 7\n    }, this), \" \"]\n  }, void 0, true, {\n    fileName: _jsxFileName,\n    lineNumber: 15,\n    columnNumber: 5\n  }, this);\n}\n_s(AppRoutes, \"9ep4vdl3mBfipxjmc+tQCDhw6Ik=\", false, function () {\n  return [useAuth];\n});\n_c = AppRoutes;\nexport default function App() {\n  return /*#__PURE__*/_jsxDEV(AuthProvider, {\n    children: /*#__PURE__*/_jsxDEV(BrowserRouter, {\n      children: /*#__PURE__*/_jsxDEV(AppRoutes, {}, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 48,\n        columnNumber: 9\n      }, this)\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 47,\n      columnNumber: 7\n    }, this)\n  }, void 0, false, {\n    fileName: _jsxFileName,\n    lineNumber: 46,\n    columnNumber: 5\n  }, this);\n}\n_c2 = App;\nvar _c, _c2;\n$RefreshReg$(_c, \"AppRoutes\");\n$RefreshReg$(_c2, \"App\");","map":{"version":3,"names":["BrowserRouter","Routes","Route","AuthProvider","useAuth","ProtectedRoute","Header","Footer","Login","Register","SensorList","SensorAdd","Admin","jsxDEV","_jsxDEV","AppRoutes","_s","user","id","children","fileName","_jsxFileName","lineNumber","columnNumber","path","element","roles","_c","App","_c2","$RefreshReg$"],"sources":["D:/LDT/000 Project/LDT/Client/src/App.js"],"sourcesContent":["import { BrowserRouter, Routes, Route } from \"react-router-dom\";\r\nimport { AuthProvider, useAuth } from \"./contexts/AuthContext\";\r\nimport ProtectedRoute from \"./components/ProtectedRoute\";\r\nimport Header from \"./components/Header\";\r\nimport Footer from \"./components/Footer\"; // Massively 푸터, 필요시\r\nimport Login from \"./pages/Login\";\r\nimport Register from \"./pages/Register\";\r\nimport SensorList from \"./pages/SensorList\";\r\nimport SensorAdd from \"./pages/SensorAdd\";\r\nimport Admin from \"./pages/Admin\";\r\n\r\nfunction AppRoutes() {\r\n  const { user } = useAuth();\r\n  return (\r\n    <div id=\"wrapper\">\r\n      <Header />\r\n      <main id=\"main\">\r\n        <Routes>\r\n          <Route path=\"/login\" element={<Login />} />\r\n          <Route path=\"/register\" element={<Register />} />\r\n          <Route path=\"/sensor\" element={\r\n            <ProtectedRoute user={user}>\r\n              <SensorList />\r\n            </ProtectedRoute>\r\n          } />\r\n          <Route path=\"/sensor/add\" element={\r\n            <ProtectedRoute user={user} roles={[\"admin\"]}>\r\n              <SensorAdd />\r\n            </ProtectedRoute>\r\n          } />\r\n          <Route path=\"/admin\" element={\r\n            <ProtectedRoute user={user} roles={[\"admin\"]}>\r\n              <Admin />\r\n            </ProtectedRoute>\r\n          } />\r\n          <Route path=\"/\" element={<div>메인페이지</div>} />\r\n        </Routes>\r\n      </main>\r\n      <Footer /> {/* Footer는 필요 없으면 생략 가능 */}\r\n    </div>\r\n  );\r\n}\r\n\r\nexport default function App() {\r\n  return (\r\n    <AuthProvider>\r\n      <BrowserRouter>\r\n        <AppRoutes />\r\n      </BrowserRouter>\r\n    </AuthProvider>\r\n  );\r\n}\r\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}