{"ast":null,"code":"var _jsxFileName = \"D:\\\\LDT\\\\000 Project\\\\LDT\\\\Client\\\\src\\\\components\\\\Menu.js\";\nimport React from 'react';\nimport { getRole, removeToken } from '../utils/auth';\nimport { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\nconst menuItems = [{\n  name: 'Home',\n  path: '/'\n}, {\n  name: '센서리스트',\n  path: '/sensors',\n  roles: ['user', 'manager', 'admin']\n}, {\n  name: '관리자',\n  path: '/admin',\n  roles: ['admin']\n}];\nfunction Menu({\n  onLogout\n}) {\n  const role = getRole();\n  return /*#__PURE__*/_jsxDEV(\"nav\", {\n    children: /*#__PURE__*/_jsxDEV(\"ul\", {\n      children: [menuItems.map(m => (!m.roles || m.roles.includes(role)) && /*#__PURE__*/_jsxDEV(\"li\", {\n        children: /*#__PURE__*/_jsxDEV(\"a\", {\n          href: m.path,\n          children: m.name\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 18,\n          columnNumber: 15\n        }, this)\n      }, m.path, false, {\n        fileName: _jsxFileName,\n        lineNumber: 17,\n        columnNumber: 13\n      }, this)), /*#__PURE__*/_jsxDEV(\"li\", {\n        children: /*#__PURE__*/_jsxDEV(\"button\", {\n          onClick: () => {\n            removeToken();\n            onLogout();\n          },\n          children: \"\\uB85C\\uADF8\\uC544\\uC6C3\"\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 23,\n          columnNumber: 11\n        }, this)\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 22,\n        columnNumber: 9\n      }, this)]\n    }, void 0, true, {\n      fileName: _jsxFileName,\n      lineNumber: 14,\n      columnNumber: 7\n    }, this)\n  }, void 0, false, {\n    fileName: _jsxFileName,\n    lineNumber: 13,\n    columnNumber: 5\n  }, this);\n}\n_c = Menu;\nexport default Menu;\nvar _c;\n$RefreshReg$(_c, \"Menu\");","map":{"version":3,"names":["React","getRole","removeToken","jsxDEV","_jsxDEV","menuItems","name","path","roles","Menu","onLogout","role","children","map","m","includes","href","fileName","_jsxFileName","lineNumber","columnNumber","onClick","_c","$RefreshReg$"],"sources":["D:/LDT/000 Project/LDT/Client/src/components/Menu.js"],"sourcesContent":["import React from 'react';\r\nimport { getRole, removeToken } from '../utils/auth';\r\n\r\nconst menuItems = [\r\n  { name: 'Home', path: '/' },\r\n  { name: '센서리스트', path: '/sensors', roles: ['user', 'manager', 'admin'] },\r\n  { name: '관리자', path: '/admin', roles: ['admin'] },\r\n];\r\n\r\nfunction Menu({ onLogout }) {\r\n  const role = getRole();\r\n  return (\r\n    <nav>\r\n      <ul>\r\n        {menuItems.map(\r\n          m => (!m.roles || m.roles.includes(role)) && (\r\n            <li key={m.path}>\r\n              <a href={m.path}>{m.name}</a>\r\n            </li>\r\n          )\r\n        )}\r\n        <li>\r\n          <button onClick={() => { removeToken(); onLogout(); }}>로그아웃</button>\r\n        </li>\r\n      </ul>\r\n    </nav>\r\n  );\r\n}\r\nexport default Menu;"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,OAAO,EAAEC,WAAW,QAAQ,eAAe;AAAC,SAAAC,MAAA,IAAAC,OAAA;AAErD,MAAMC,SAAS,GAAG,CAChB;EAAEC,IAAI,EAAE,MAAM;EAAEC,IAAI,EAAE;AAAI,CAAC,EAC3B;EAAED,IAAI,EAAE,OAAO;EAAEC,IAAI,EAAE,UAAU;EAAEC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO;AAAE,CAAC,EACxE;EAAEF,IAAI,EAAE,KAAK;EAAEC,IAAI,EAAE,QAAQ;EAAEC,KAAK,EAAE,CAAC,OAAO;AAAE,CAAC,CAClD;AAED,SAASC,IAAIA,CAAC;EAAEC;AAAS,CAAC,EAAE;EAC1B,MAAMC,IAAI,GAAGV,OAAO,CAAC,CAAC;EACtB,oBACEG,OAAA;IAAAQ,QAAA,eACER,OAAA;MAAAQ,QAAA,GACGP,SAAS,CAACQ,GAAG,CACZC,CAAC,IAAI,CAAC,CAACA,CAAC,CAACN,KAAK,IAAIM,CAAC,CAACN,KAAK,CAACO,QAAQ,CAACJ,IAAI,CAAC,kBACtCP,OAAA;QAAAQ,QAAA,eACER,OAAA;UAAGY,IAAI,EAAEF,CAAC,CAACP,IAAK;UAAAK,QAAA,EAAEE,CAAC,CAACR;QAAI;UAAAW,QAAA,EAAAC,YAAA;UAAAC,UAAA;UAAAC,YAAA;QAAA,OAAI;MAAC,GADtBN,CAAC,CAACP,IAAI;QAAAU,QAAA,EAAAC,YAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA,OAEX,CAER,CAAC,eACDhB,OAAA;QAAAQ,QAAA,eACER,OAAA;UAAQiB,OAAO,EAAEA,CAAA,KAAM;YAAEnB,WAAW,CAAC,CAAC;YAAEQ,QAAQ,CAAC,CAAC;UAAE,CAAE;UAAAE,QAAA,EAAC;QAAI;UAAAK,QAAA,EAAAC,YAAA;UAAAC,UAAA;UAAAC,YAAA;QAAA,OAAQ;MAAC;QAAAH,QAAA,EAAAC,YAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA,OAClE,CAAC;IAAA;MAAAH,QAAA,EAAAC,YAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,OACH;EAAC;IAAAH,QAAA,EAAAC,YAAA;IAAAC,UAAA;IAAAC,YAAA;EAAA,OACF,CAAC;AAEV;AAACE,EAAA,GAlBQb,IAAI;AAmBb,eAAeA,IAAI;AAAC,IAAAa,EAAA;AAAAC,YAAA,CAAAD,EAAA","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}