{"ast":null,"code":"var _jsxFileName = \"D:\\\\LDT\\\\000 Project\\\\LDT\\\\Client\\\\src\\\\components\\\\Tabs.js\",\n  _s = $RefreshSig$();\nimport React, { useContext } from \"react\";\nimport { NavLink } from \"react-router-dom\";\nimport { AuthContext } from \"../contexts/AuthContext\";\nimport { jsxDEV as _jsxDEV, Fragment as _Fragment } from \"react/jsx-dev-runtime\";\nexport default function Tabs({\n  onOpenLogin,\n  onOpenRegister\n}) {\n  _s();\n  const {\n    user,\n    logout\n  } = useContext(AuthContext);\n  return /*#__PURE__*/_jsxDEV(\"nav\", {\n    className: \"tabs-nav\",\n    style: {\n      marginBottom: 16\n    },\n    children: /*#__PURE__*/_jsxDEV(\"ul\", {\n      className: \"actions\",\n      style: {\n        display: \"flex\",\n        gap: 8,\n        alignItems: \"center\"\n      },\n      children: [/*#__PURE__*/_jsxDEV(\"li\", {\n        children: /*#__PURE__*/_jsxDEV(NavLink, {\n          to: \"/home\",\n          end: true,\n          className: ({\n            isActive\n          }) => isActive ? \"active logo\" : \"logo\",\n          children: \"\\uD648\"\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 12,\n          columnNumber: 11\n        }, this)\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 11,\n        columnNumber: 9\n      }, this), /*#__PURE__*/_jsxDEV(\"li\", {\n        children: /*#__PURE__*/_jsxDEV(NavLink, {\n          to: \"/monitoring\",\n          className: ({\n            isActive\n          }) => isActive ? \"active logo\" : \"logo\",\n          children: \"\\uBAA8\\uB2C8\\uD130\\uB9C1\"\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 15,\n          columnNumber: 11\n        }, this)\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 14,\n        columnNumber: 9\n      }, this), /*#__PURE__*/_jsxDEV(\"li\", {\n        children: /*#__PURE__*/_jsxDEV(NavLink, {\n          to: \"/sensor\",\n          className: ({\n            isActive\n          }) => isActive ? \"active logo\" : \"logo\",\n          children: \"\\uC13C\\uC11C\"\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 18,\n          columnNumber: 11\n        }, this)\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 17,\n        columnNumber: 9\n      }, this), user && user.role === 'admin' && /*#__PURE__*/_jsxDEV(\"li\", {\n        children: /*#__PURE__*/_jsxDEV(NavLink, {\n          to: \"/admin\",\n          className: ({\n            isActive\n          }) => isActive ? \"active logo\" : \"logo\",\n          children: \"\\uAD00\\uB9AC\\uC790\"\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(\"li\", {\n        style: {\n          marginLeft: \"auto\"\n        },\n        children: !user ? /*#__PURE__*/_jsxDEV(_Fragment, {\n          children: [/*#__PURE__*/_jsxDEV(\"a\", {\n            href: \"#\",\n            className: \"button primary fit\",\n            onClick: e => {\n              e.preventDefault();\n              if (onOpenLogin) onOpenLogin();\n            },\n            style: {\n              marginRight: 8\n            },\n            children: \"\\uB85C\\uADF8\\uC778\"\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 28,\n            columnNumber: 15\n          }, this), /*#__PURE__*/_jsxDEV(\"a\", {\n            href: \"#\",\n            className: \"button fit\",\n            onClick: e => {\n              e.preventDefault();\n              if (onOpenRegister) onOpenRegister();\n            },\n            children: \"\\uD68C\\uC6D0\\uAC00\\uC785\"\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 35,\n            columnNumber: 15\n          }, this)]\n        }, void 0, true) : /*#__PURE__*/_jsxDEV(\"a\", {\n          href: \"#\",\n          className: \"button primary fit\",\n          onClick: e => {\n            e.preventDefault();\n            logout();\n          },\n          children: \"\\uB85C\\uADF8\\uC544\\uC6C3\"\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 43,\n          columnNumber: 13\n        }, this)\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 25,\n        columnNumber: 9\n      }, this)]\n    }, void 0, true, {\n      fileName: _jsxFileName,\n      lineNumber: 10,\n      columnNumber: 7\n    }, this)\n  }, void 0, false, {\n    fileName: _jsxFileName,\n    lineNumber: 9,\n    columnNumber: 5\n  }, this);\n}\n_s(Tabs, \"ke5VSTPoS9VmZ9Rb/aBZ/M9DV3c=\");\n_c = Tabs;\nvar _c;\n$RefreshReg$(_c, \"Tabs\");","map":{"version":3,"names":["React","useContext","NavLink","AuthContext","jsxDEV","_jsxDEV","Fragment","_Fragment","Tabs","onOpenLogin","onOpenRegister","_s","user","logout","className","style","marginBottom","children","display","gap","alignItems","to","end","isActive","fileName","_jsxFileName","lineNumber","columnNumber","role","marginLeft","href","onClick","e","preventDefault","marginRight","_c","$RefreshReg$"],"sources":["D:/LDT/000 Project/LDT/Client/src/components/Tabs.js"],"sourcesContent":["import React, { useContext } from \"react\";\r\nimport { NavLink } from \"react-router-dom\";\r\nimport { AuthContext } from \"../contexts/AuthContext\";\r\n\r\nexport default function Tabs({ onOpenLogin, onOpenRegister }) {\r\n  const { user, logout } = useContext(AuthContext);\r\n\r\n  return (\r\n    <nav className=\"tabs-nav\" style={{ marginBottom: 16 }}>\r\n      <ul className=\"actions\" style={{ display: \"flex\", gap: 8, alignItems: \"center\" }}>\r\n        <li>\r\n          <NavLink to=\"/home\" end className={({ isActive }) => isActive ? \"active logo\" : \"logo\"}>홈</NavLink>\r\n        </li>\r\n        <li>\r\n          <NavLink to=\"/monitoring\" className={({ isActive }) => isActive ? \"active logo\" : \"logo\"}>모니터링</NavLink>\r\n        </li>\r\n        <li>\r\n          <NavLink to=\"/sensor\" className={({ isActive }) => isActive ? \"active logo\" : \"logo\"}>센서</NavLink>\r\n        </li>\r\n        {user && user.role === 'admin' && (\r\n          <li>\r\n            <NavLink to=\"/admin\" className={({ isActive }) => isActive ? \"active logo\" : \"logo\"}>관리자</NavLink>\r\n          </li>\r\n        )}\r\n        <li style={{ marginLeft: \"auto\" }}>\r\n          {!user ? (\r\n            <>\r\n              <a href=\"#\" className=\"button primary fit\"\r\n                onClick={e => {\r\n                  e.preventDefault();\r\n                  if (onOpenLogin) onOpenLogin();\r\n                }}\r\n                style={{ marginRight: 8 }}\r\n              >로그인</a>\r\n              <a href=\"#\" className=\"button fit\"\r\n                onClick={e => {\r\n                  e.preventDefault();\r\n                  if (onOpenRegister) onOpenRegister();\r\n                }}\r\n              >회원가입</a>\r\n            </>\r\n          ) : (\r\n            <a href=\"#\" className=\"button primary fit\"\r\n              onClick={e => {\r\n                e.preventDefault();\r\n                logout();\r\n              }}\r\n            >로그아웃</a>\r\n          )}\r\n        </li>\r\n      </ul>\r\n    </nav>\r\n  );\r\n}\r\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}