{"ast":null,"code":"var _jsxFileName = \"D:\\\\LDT\\\\000 Project\\\\LDT\\\\Client\\\\src\\\\pages\\\\Admin.js\",\n  _s = $RefreshSig$();\nimport React, { useState } from 'react';\nimport { getToken } from '../utils/auth';\nimport { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\nfunction Admin() {\n  _s();\n  const [form, setForm] = useState({\n    name: '',\n    value: ''\n  });\n  const [msg, setMsg] = useState('');\n  const handleChange = e => setForm({\n    ...form,\n    [e.target.name]: e.target.value\n  });\n  const handleSubmit = async e => {\n    e.preventDefault();\n    const res = await fetch('http://localhost:4000/api/sensors', {\n      method: 'POST',\n      headers: {\n        'Content-Type': 'application/json',\n        'Authorization': `Bearer ${getToken()}`\n      },\n      body: JSON.stringify(form)\n    });\n    const data = await res.json();\n    setMsg(data.msg);\n  };\n  return /*#__PURE__*/_jsxDEV(\"div\", {\n    children: [/*#__PURE__*/_jsxDEV(\"h2\", {\n      children: \"\\uC13C\\uC11C \\uCD94\\uAC00 (\\uAD00\\uB9AC\\uC790\\uB9CC)\"\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 24,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(\"form\", {\n      onSubmit: handleSubmit,\n      children: [/*#__PURE__*/_jsxDEV(\"input\", {\n        name: \"name\",\n        onChange: handleChange,\n        placeholder: \"\\uC13C\\uC11C\\uC774\\uB984\",\n        required: true\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 26,\n        columnNumber: 9\n      }, this), /*#__PURE__*/_jsxDEV(\"input\", {\n        name: \"value\",\n        type: \"number\",\n        step: \"0.01\",\n        onChange: handleChange,\n        placeholder: \"\\uC13C\\uC11C\\uAC12\",\n        required: true\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 27,\n        columnNumber: 9\n      }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n        type: \"submit\",\n        children: \"\\uB4F1\\uB85D\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 28,\n        columnNumber: 9\n      }, this)]\n    }, void 0, true, {\n      fileName: _jsxFileName,\n      lineNumber: 25,\n      columnNumber: 7\n    }, this), msg && /*#__PURE__*/_jsxDEV(\"div\", {\n      children: msg\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 30,\n      columnNumber: 15\n    }, this)]\n  }, void 0, true, {\n    fileName: _jsxFileName,\n    lineNumber: 23,\n    columnNumber: 5\n  }, this);\n}\n_s(Admin, \"KuNQwpXIkJWgY1v07tyqmyzgdKE=\");\n_c = Admin;\nexport default Admin;\nvar _c;\n$RefreshReg$(_c, \"Admin\");","map":{"version":3,"names":["React","useState","getToken","jsxDEV","_jsxDEV","Admin","_s","form","setForm","name","value","msg","setMsg","handleChange","e","target","handleSubmit","preventDefault","res","fetch","method","headers","body","JSON","stringify","data","json","children","fileName","_jsxFileName","lineNumber","columnNumber","onSubmit","onChange","placeholder","required","type","step","_c","$RefreshReg$"],"sources":["D:/LDT/000 Project/LDT/Client/src/pages/Admin.js"],"sourcesContent":["import React, { useState } from 'react';\r\nimport { getToken } from '../utils/auth';\r\n\r\nfunction Admin() {\r\n  const [form, setForm] = useState({ name: '', value: '' });\r\n  const [msg, setMsg] = useState('');\r\n  const handleChange = e => setForm({ ...form, [e.target.name]: e.target.value });\r\n\r\n  const handleSubmit = async e => {\r\n    e.preventDefault();\r\n    const res = await fetch('http://localhost:4000/api/sensors', {\r\n      method: 'POST',\r\n      headers: {\r\n        'Content-Type': 'application/json',\r\n        'Authorization': `Bearer ${getToken()}`\r\n      },\r\n      body: JSON.stringify(form)\r\n    });\r\n    const data = await res.json();\r\n    setMsg(data.msg);\r\n  };\r\n  return (\r\n    <div>\r\n      <h2>센서 추가 (관리자만)</h2>\r\n      <form onSubmit={handleSubmit}>\r\n        <input name=\"name\" onChange={handleChange} placeholder=\"센서이름\" required />\r\n        <input name=\"value\" type=\"number\" step=\"0.01\" onChange={handleChange} placeholder=\"센서값\" required />\r\n        <button type=\"submit\">등록</button>\r\n      </form>\r\n      {msg && <div>{msg}</div>}\r\n    </div>\r\n  );\r\n}\r\nexport default Admin;\r\n"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,SAASC,QAAQ,QAAQ,eAAe;AAAC,SAAAC,MAAA,IAAAC,OAAA;AAEzC,SAASC,KAAKA,CAAA,EAAG;EAAAC,EAAA;EACf,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAGP,QAAQ,CAAC;IAAEQ,IAAI,EAAE,EAAE;IAAEC,KAAK,EAAE;EAAG,CAAC,CAAC;EACzD,MAAM,CAACC,GAAG,EAAEC,MAAM,CAAC,GAAGX,QAAQ,CAAC,EAAE,CAAC;EAClC,MAAMY,YAAY,GAAGC,CAAC,IAAIN,OAAO,CAAC;IAAE,GAAGD,IAAI;IAAE,CAACO,CAAC,CAACC,MAAM,CAACN,IAAI,GAAGK,CAAC,CAACC,MAAM,CAACL;EAAM,CAAC,CAAC;EAE/E,MAAMM,YAAY,GAAG,MAAMF,CAAC,IAAI;IAC9BA,CAAC,CAACG,cAAc,CAAC,CAAC;IAClB,MAAMC,GAAG,GAAG,MAAMC,KAAK,CAAC,mCAAmC,EAAE;MAC3DC,MAAM,EAAE,MAAM;MACdC,OAAO,EAAE;QACP,cAAc,EAAE,kBAAkB;QAClC,eAAe,EAAE,UAAUnB,QAAQ,CAAC,CAAC;MACvC,CAAC;MACDoB,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACjB,IAAI;IAC3B,CAAC,CAAC;IACF,MAAMkB,IAAI,GAAG,MAAMP,GAAG,CAACQ,IAAI,CAAC,CAAC;IAC7Bd,MAAM,CAACa,IAAI,CAACd,GAAG,CAAC;EAClB,CAAC;EACD,oBACEP,OAAA;IAAAuB,QAAA,gBACEvB,OAAA;MAAAuB,QAAA,EAAI;IAAY;MAAAC,QAAA,EAAAC,YAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,OAAI,CAAC,eACrB3B,OAAA;MAAM4B,QAAQ,EAAEhB,YAAa;MAAAW,QAAA,gBAC3BvB,OAAA;QAAOK,IAAI,EAAC,MAAM;QAACwB,QAAQ,EAAEpB,YAAa;QAACqB,WAAW,EAAC,0BAAM;QAACC,QAAQ;MAAA;QAAAP,QAAA,EAAAC,YAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA,OAAE,CAAC,eACzE3B,OAAA;QAAOK,IAAI,EAAC,OAAO;QAAC2B,IAAI,EAAC,QAAQ;QAACC,IAAI,EAAC,MAAM;QAACJ,QAAQ,EAAEpB,YAAa;QAACqB,WAAW,EAAC,oBAAK;QAACC,QAAQ;MAAA;QAAAP,QAAA,EAAAC,YAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA,OAAE,CAAC,eACnG3B,OAAA;QAAQgC,IAAI,EAAC,QAAQ;QAAAT,QAAA,EAAC;MAAE;QAAAC,QAAA,EAAAC,YAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA,OAAQ,CAAC;IAAA;MAAAH,QAAA,EAAAC,YAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,OAC7B,CAAC,EACNpB,GAAG,iBAAIP,OAAA;MAAAuB,QAAA,EAAMhB;IAAG;MAAAiB,QAAA,EAAAC,YAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,OAAM,CAAC;EAAA;IAAAH,QAAA,EAAAC,YAAA;IAAAC,UAAA;IAAAC,YAAA;EAAA,OACrB,CAAC;AAEV;AAACzB,EAAA,CA7BQD,KAAK;AAAAiC,EAAA,GAALjC,KAAK;AA8Bd,eAAeA,KAAK;AAAC,IAAAiC,EAAA;AAAAC,YAAA,CAAAD,EAAA","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}