{"ast":null,"code":"var _jsxFileName = \"D:\\\\LDT\\\\000 Project\\\\LDT\\\\Client\\\\src\\\\pages\\\\SensorList.js\",\n  _s = $RefreshSig$();\nimport React, { useState, useEffect, useContext } from \"react\";\nimport SensorTable from \"../components/SensorTable\";\nimport Pagination from \"../components/Pagination\";\nimport { AuthContext } from \"../contexts/AuthContext\";\nimport { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\nconst rowsPerPage = 10;\nexport default function SensorList() {\n  _s();\n  const {\n    user\n  } = useContext(AuthContext);\n  const [sensors, setSensors] = useState([]);\n  const [page, setPage] = useState(1);\n  const [total, setTotal] = useState(0);\n  const [loading, setLoading] = useState(true);\n  const columns = [{\n    key: \"mac\",\n    label: \"mac\"\n  }, {\n    key: \"name\",\n    label: \"name\"\n  }, {\n    key: \"type\",\n    label: \"type\"\n  }, {\n    key: \"floor_id\",\n    label: \"floor_id\"\n  }, {\n    key: \"x_pos\",\n    label: \"x_pos\"\n  }, {\n    key: \"y_pos\",\n    label: \"y_pos\"\n  }, {\n    key: \"create_date\",\n    label: \"create_date\"\n  }, {\n    key: \"recv_date\",\n    label: \"recv_date\"\n  }, {\n    key: \"update_date\",\n    label: \"update_date\"\n  }, {\n    key: \"code\",\n    label: \"code\"\n  }, {\n    key: \"status\",\n    label: \"status\"\n  }, {\n    key: \"flame\",\n    label: \"flame\"\n  }, {\n    key: \"smoke\",\n    label: \"smoke\"\n  }, {\n    key: \"temper\",\n    label: \"temper\"\n  }, {\n    key: \"bat\",\n    label: \"bat\"\n  }, {\n    key: \"rssi\",\n    label: \"rssi\"\n  }, {\n    key: \"ver\",\n    label: \"ver\"\n  }, {\n    key: \"mode\",\n    label: \"mode\"\n  }, {\n    key: \"gwmac\",\n    label: \"gwmac\"\n  }, {\n    key: \"seq_start\",\n    label: \"seq_start\"\n  }, {\n    key: \"seq_current\",\n    label: \"seq_current\"\n  }, {\n    key: \"seq_recv_num\",\n    label: \"seq_recv_num\"\n  }, {\n    key: \"sensor_use\",\n    label: \"sensor_use\"\n  }, {\n    key: \"flame_thresh\",\n    label: \"flame_thresh\"\n  }, {\n    key: \"flame_keep_thresh\",\n    label: \"flame_keep_thresh\"\n  }, {\n    key: \"smoke_thresh\",\n    label: \"smoke_thresh\"\n  }, {\n    key: \"temper_thresh\",\n    label: \"temper_thresh\"\n  }, {\n    key: \"difftemper_thresh\",\n    label: \"difftemper_thresh\"\n  }, {\n    key: \"lsnl_model\",\n    label: \"lsnl_model\"\n  }, {\n    key: \"lsnl_24v_status\",\n    label: \"lsnl_24v_status\"\n  }, {\n    key: \"lsnl_24v_value\",\n    label: \"lsnl_24v_value\"\n  }, {\n    key: \"lsnl_sen_adc\",\n    label: \"lsnl_sen_adc\"\n  }, {\n    key: \"lsnl_24v_adc\",\n    label: \"lsnl_24v_adc\"\n  }, {\n    key: \"lsnl_sen_ran_h\",\n    label: \"lsnl_sen_ran_h\"\n  }, {\n    key: \"lsnl_sen_ran_l\",\n    label: \"lsnl_sen_ran_l\"\n  }, {\n    key: \"lsnl_24v_ran_h\",\n    label: \"lsnl_24v_ran_h\"\n  }, {\n    key: \"lsnl_24v_ran_l\",\n    label: \"lsnl_24v_ran_l\"\n  }, {\n    key: \"lsnl_range_over\",\n    label: \"lsnl_range_over\"\n  }];\n  useEffect(() => {\n    if (!user) return;\n    setLoading(true);\n    fetch(`http://localhost:4000/api/sensor?page=${page}&size=${rowsPerPage}`, {\n      headers: {\n        Authorization: `Bearer ${user.token}`\n      }\n    }).then(res => res.json()).then(data => {\n      setSensors(data.data);\n      setTotal(data.total);\n      setLoading(false);\n    });\n  }, [user, page]);\n  if (!user) return /*#__PURE__*/_jsxDEV(\"div\", {\n    children: \"\\uB85C\\uADF8\\uC778 \\uD544\\uC694\"\n  }, void 0, false, {\n    fileName: _jsxFileName,\n    lineNumber: 70,\n    columnNumber: 21\n  }, this);\n  const totalPages = Math.ceil(total / rowsPerPage);\n  return /*#__PURE__*/_jsxDEV(\"section\", {\n    children: [/*#__PURE__*/_jsxDEV(\"h4\", {\n      children: \"\\uC13C\\uC11C \\uB9AC\\uC2A4\\uD2B8\"\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 76,\n      columnNumber: 7\n    }, this), loading ? /*#__PURE__*/_jsxDEV(\"div\", {\n      children: \"\\uB85C\\uB529\\uC911...\"\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 78,\n      columnNumber: 9\n    }, this) : /*#__PURE__*/_jsxDEV(\"div\", {\n      children: [/*#__PURE__*/_jsxDEV(Pagination, {\n        page: page,\n        totalPages: totalPages,\n        onPageChange: setPage\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 81,\n        columnNumber: 11\n      }, this), /*#__PURE__*/_jsxDEV(SensorTable, {\n        columns: columns,\n        sensors: sensors\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 82,\n        columnNumber: 11\n      }, this)]\n    }, void 0, true, {\n      fileName: _jsxFileName,\n      lineNumber: 80,\n      columnNumber: 9\n    }, this)]\n  }, void 0, true, {\n    fileName: _jsxFileName,\n    lineNumber: 75,\n    columnNumber: 5\n  }, this);\n}\n_s(SensorList, \"5DiQTlm0Dq63mNiyrOe6tBGL7eU=\");\n_c = SensorList;\nvar _c;\n$RefreshReg$(_c, \"SensorList\");","map":{"version":3,"names":["React","useState","useEffect","useContext","SensorTable","Pagination","AuthContext","jsxDEV","_jsxDEV","rowsPerPage","SensorList","_s","user","sensors","setSensors","page","setPage","total","setTotal","loading","setLoading","columns","key","label","fetch","headers","Authorization","token","then","res","json","data","children","fileName","_jsxFileName","lineNumber","columnNumber","totalPages","Math","ceil","onPageChange","_c","$RefreshReg$"],"sources":["D:/LDT/000 Project/LDT/Client/src/pages/SensorList.js"],"sourcesContent":["import React, { useState, useEffect, useContext } from \"react\";\r\nimport SensorTable from \"../components/SensorTable\";\r\nimport Pagination from \"../components/Pagination\";\r\nimport { AuthContext } from \"../contexts/AuthContext\";\r\n\r\nconst rowsPerPage = 10;\r\n\r\nexport default function SensorList() {\r\n  const { user } = useContext(AuthContext);\r\n  const [sensors, setSensors] = useState([]);\r\n  const [page, setPage] = useState(1);\r\n  const [total, setTotal] = useState(0);\r\n  const [loading, setLoading] = useState(true);\r\n\r\n  const columns = [\r\n    { key: \"mac\", label: \"mac\" },\r\n    { key: \"name\", label: \"name\" },\r\n    { key: \"type\", label: \"type\" },\r\n    { key: \"floor_id\", label: \"floor_id\" },\r\n    { key: \"x_pos\", label: \"x_pos\" },\r\n    { key: \"y_pos\", label: \"y_pos\" },\r\n    { key: \"create_date\", label: \"create_date\" },\r\n    { key: \"recv_date\", label: \"recv_date\" },\r\n    { key: \"update_date\", label: \"update_date\" },\r\n    { key: \"code\", label: \"code\" },\r\n    { key: \"status\", label: \"status\" },\r\n    { key: \"flame\", label: \"flame\" },\r\n    { key: \"smoke\", label: \"smoke\" },\r\n    { key: \"temper\", label: \"temper\" },\r\n    { key: \"bat\", label: \"bat\" },\r\n    { key: \"rssi\", label: \"rssi\" },\r\n    { key: \"ver\", label: \"ver\" },\r\n    { key: \"mode\", label: \"mode\" },\r\n    { key: \"gwmac\", label: \"gwmac\" },\r\n    { key: \"seq_start\", label: \"seq_start\" },\r\n    { key: \"seq_current\", label: \"seq_current\" },\r\n    { key: \"seq_recv_num\", label: \"seq_recv_num\" },\r\n    { key: \"sensor_use\", label: \"sensor_use\" },\r\n    { key: \"flame_thresh\", label: \"flame_thresh\" },\r\n    { key: \"flame_keep_thresh\", label: \"flame_keep_thresh\" },\r\n    { key: \"smoke_thresh\", label: \"smoke_thresh\" },\r\n    { key: \"temper_thresh\", label: \"temper_thresh\" },\r\n    { key: \"difftemper_thresh\", label: \"difftemper_thresh\" },\r\n    { key: \"lsnl_model\", label: \"lsnl_model\" },\r\n    { key: \"lsnl_24v_status\", label: \"lsnl_24v_status\" },\r\n    { key: \"lsnl_24v_value\", label: \"lsnl_24v_value\" },\r\n    { key: \"lsnl_sen_adc\", label: \"lsnl_sen_adc\" },\r\n    { key: \"lsnl_24v_adc\", label: \"lsnl_24v_adc\" },\r\n    { key: \"lsnl_sen_ran_h\", label: \"lsnl_sen_ran_h\" },\r\n    { key: \"lsnl_sen_ran_l\", label: \"lsnl_sen_ran_l\" },\r\n    { key: \"lsnl_24v_ran_h\", label: \"lsnl_24v_ran_h\" },\r\n    { key: \"lsnl_24v_ran_l\", label: \"lsnl_24v_ran_l\" },\r\n    { key: \"lsnl_range_over\", label: \"lsnl_range_over\" }\r\n  ];\r\n\r\n  useEffect(() => {\r\n    if (!user) return;\r\n    setLoading(true);\r\n    fetch(`http://localhost:4000/api/sensor?page=${page}&size=${rowsPerPage}`, {\r\n      headers: { Authorization: `Bearer ${user.token}` }\r\n    })\r\n      .then(res => res.json())\r\n      .then(data => {\r\n        setSensors(data.data);\r\n        setTotal(data.total);\r\n        setLoading(false);\r\n      });\r\n  }, [user, page]); \r\n\r\n  if (!user) return <div>로그인 필요</div>;\r\n\r\n  const totalPages = Math.ceil(total / rowsPerPage);\r\n\r\n  return (\r\n    <section>\r\n      <h4>센서 리스트</h4>\r\n      {loading ? (\r\n        <div>로딩중...</div>\r\n      ) : (\r\n        <div>\r\n          <Pagination page={page} totalPages={totalPages} onPageChange={setPage} />\r\n          <SensorTable columns={columns} sensors={sensors} />\r\n        </div>\r\n      )}\r\n    </section>\r\n  );\r\n}\r\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}