{"ast":null,"code":"var _jsxFileName = \"D:\\\\LDT\\\\000 Project\\\\LDT\\\\Client\\\\src\\\\components\\\\Title.js\",\n  _s = $RefreshSig$();\n// src/components/Title.js\nimport React, { useEffect, useState } from \"react\";\nimport MenuButton from \"./MenuButton\";\nimport Sidebar from \"./Sidebar\";\nimport { jsxDEV as _jsxDEV, Fragment as _Fragment } from \"react/jsx-dev-runtime\";\nexport default function Title() {\n  _s();\n  const [sidebarOpen, setSidebarOpen] = useState(true);\n  const [isMobile, setIsMobile] = useState(window.innerWidth < 768);\n\n  // 모바일 여부 감지\n  useEffect(() => {\n    const handleResize = () => {\n      setIsMobile(window.innerWidth < 768);\n      if (window.innerWidth >= 768) setSidebarOpen(true); // 데스크탑에서는 항상 열림\n    };\n    window.addEventListener(\"resize\", handleResize);\n    return () => window.removeEventListener(\"resize\", handleResize);\n  }, []);\n  return /*#__PURE__*/_jsxDEV(_Fragment, {\n    children: [/*#__PURE__*/_jsxDEV(\"div\", {\n      style: {\n        position: \"fixed\",\n        top: 60,\n        left: 0,\n        right: 0,\n        zIndex: 98,\n        background: \"#f8fafc\",\n        padding: \"12px 24px\",\n        boxShadow: \"0 2px 8px #0001\",\n        borderBottom: \"1px solid #eef\",\n        height: 40,\n        display: \"flex\",\n        alignItems: \"center\",\n        gap: 18\n      },\n      children: [/*#__PURE__*/_jsxDEV(\"span\", {\n        style: {\n          color: \"#3887be\",\n          fontWeight: 600\n        },\n        children: \"\\uD83C\\uDF1F \\uC0C1\\uD0DC: \\uC815\\uC0C1\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 39,\n        columnNumber: 9\n      }, this), /*#__PURE__*/_jsxDEV(\"span\", {\n        style: {\n          color: \"#555\"\n        },\n        children: \"\\uC2E4\\uC2DC\\uAC04 \\uC54C\\uB9BC/\\uC704\\uC82F\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 40,\n        columnNumber: 9\n      }, this), /*#__PURE__*/_jsxDEV(MenuButton, {\n        onClick: () => setSidebarOpen(open => !open),\n        isOpen: sidebarOpen\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 42,\n        columnNumber: 9\n      }, this)]\n    }, void 0, true, {\n      fileName: _jsxFileName,\n      lineNumber: 22,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(Sidebar, {\n      visible: sidebarOpen,\n      width: isMobile ? 260 : 400,\n      isMobile: isMobile,\n      onClose: () => setSidebarOpen(false)\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 48,\n      columnNumber: 7\n    }, this)]\n  }, void 0, true);\n}\n_s(Title, \"3z92Y2b0RjgTU0XugPIISNdNW1g=\");\n_c = Title;\nvar _c;\n$RefreshReg$(_c, \"Title\");","map":{"version":3,"names":["React","useEffect","useState","MenuButton","Sidebar","jsxDEV","_jsxDEV","Fragment","_Fragment","Title","_s","sidebarOpen","setSidebarOpen","isMobile","setIsMobile","window","innerWidth","handleResize","addEventListener","removeEventListener","children","style","position","top","left","right","zIndex","background","padding","boxShadow","borderBottom","height","display","alignItems","gap","color","fontWeight","fileName","_jsxFileName","lineNumber","columnNumber","onClick","open","isOpen","visible","width","onClose","_c","$RefreshReg$"],"sources":["D:/LDT/000 Project/LDT/Client/src/components/Title.js"],"sourcesContent":["// src/components/Title.js\r\nimport React, { useEffect, useState } from \"react\";\r\nimport MenuButton from \"./MenuButton\";\r\nimport Sidebar from \"./Sidebar\";\r\n\r\nexport default function Title() {\r\n  const [sidebarOpen, setSidebarOpen] = useState(true);\r\n  const [isMobile, setIsMobile] = useState(window.innerWidth < 768);\r\n\r\n  // 모바일 여부 감지\r\n  useEffect(() => {\r\n    const handleResize = () => {\r\n      setIsMobile(window.innerWidth < 768);\r\n      if (window.innerWidth >= 768) setSidebarOpen(true); // 데스크탑에서는 항상 열림\r\n    };\r\n    window.addEventListener(\"resize\", handleResize);\r\n    return () => window.removeEventListener(\"resize\", handleResize);\r\n  }, []);\r\n\r\n  return (\r\n    <>\r\n      <div\r\n        style={{\r\n          position: \"fixed\",\r\n          top: 60,\r\n          left: 0,\r\n          right: 0,\r\n          zIndex: 98,\r\n          background: \"#f8fafc\",\r\n          padding: \"12px 24px\",\r\n          boxShadow: \"0 2px 8px #0001\",\r\n          borderBottom: \"1px solid #eef\",\r\n          height: 40,\r\n          display: \"flex\",\r\n          alignItems: \"center\",\r\n          gap: 18,\r\n        }}\r\n      >\r\n        <span style={{ color: \"#3887be\", fontWeight: 600 }}>🌟 상태: 정상</span>\r\n        <span style={{ color: \"#555\" }}>실시간 알림/위젯</span>\r\n\r\n        <MenuButton\r\n          onClick={() => setSidebarOpen(open => !open)}\r\n          isOpen={sidebarOpen}\r\n        />\r\n      </div>\r\n\r\n      <Sidebar visible={sidebarOpen} width={isMobile ? 260 : 400} isMobile={isMobile} onClose={() => setSidebarOpen(false)} />\r\n    </>\r\n  );\r\n}\r\n"],"mappings":";;AAAA;AACA,OAAOA,KAAK,IAAIC,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAClD,OAAOC,UAAU,MAAM,cAAc;AACrC,OAAOC,OAAO,MAAM,WAAW;AAAC,SAAAC,MAAA,IAAAC,OAAA,EAAAC,QAAA,IAAAC,SAAA;AAEhC,eAAe,SAASC,KAAKA,CAAA,EAAG;EAAAC,EAAA;EAC9B,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAGV,QAAQ,CAAC,IAAI,CAAC;EACpD,MAAM,CAACW,QAAQ,EAAEC,WAAW,CAAC,GAAGZ,QAAQ,CAACa,MAAM,CAACC,UAAU,GAAG,GAAG,CAAC;;EAEjE;EACAf,SAAS,CAAC,MAAM;IACd,MAAMgB,YAAY,GAAGA,CAAA,KAAM;MACzBH,WAAW,CAACC,MAAM,CAACC,UAAU,GAAG,GAAG,CAAC;MACpC,IAAID,MAAM,CAACC,UAAU,IAAI,GAAG,EAAEJ,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;IACtD,CAAC;IACDG,MAAM,CAACG,gBAAgB,CAAC,QAAQ,EAAED,YAAY,CAAC;IAC/C,OAAO,MAAMF,MAAM,CAACI,mBAAmB,CAAC,QAAQ,EAAEF,YAAY,CAAC;EACjE,CAAC,EAAE,EAAE,CAAC;EAEN,oBACEX,OAAA,CAAAE,SAAA;IAAAY,QAAA,gBACEd,OAAA;MACEe,KAAK,EAAE;QACLC,QAAQ,EAAE,OAAO;QACjBC,GAAG,EAAE,EAAE;QACPC,IAAI,EAAE,CAAC;QACPC,KAAK,EAAE,CAAC;QACRC,MAAM,EAAE,EAAE;QACVC,UAAU,EAAE,SAAS;QACrBC,OAAO,EAAE,WAAW;QACpBC,SAAS,EAAE,iBAAiB;QAC5BC,YAAY,EAAE,gBAAgB;QAC9BC,MAAM,EAAE,EAAE;QACVC,OAAO,EAAE,MAAM;QACfC,UAAU,EAAE,QAAQ;QACpBC,GAAG,EAAE;MACP,CAAE;MAAAd,QAAA,gBAEFd,OAAA;QAAMe,KAAK,EAAE;UAAEc,KAAK,EAAE,SAAS;UAAEC,UAAU,EAAE;QAAI,CAAE;QAAAhB,QAAA,EAAC;MAAS;QAAAiB,QAAA,EAAAC,YAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA,OAAM,CAAC,eACpElC,OAAA;QAAMe,KAAK,EAAE;UAAEc,KAAK,EAAE;QAAO,CAAE;QAAAf,QAAA,EAAC;MAAS;QAAAiB,QAAA,EAAAC,YAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA,OAAM,CAAC,eAEhDlC,OAAA,CAACH,UAAU;QACTsC,OAAO,EAAEA,CAAA,KAAM7B,cAAc,CAAC8B,IAAI,IAAI,CAACA,IAAI,CAAE;QAC7CC,MAAM,EAAEhC;MAAY;QAAA0B,QAAA,EAAAC,YAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA,OACrB,CAAC;IAAA;MAAAH,QAAA,EAAAC,YAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,OACC,CAAC,eAENlC,OAAA,CAACF,OAAO;MAACwC,OAAO,EAAEjC,WAAY;MAACkC,KAAK,EAAEhC,QAAQ,GAAG,GAAG,GAAG,GAAI;MAACA,QAAQ,EAAEA,QAAS;MAACiC,OAAO,EAAEA,CAAA,KAAMlC,cAAc,CAAC,KAAK;IAAE;MAAAyB,QAAA,EAAAC,YAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,OAAE,CAAC;EAAA,eACxH,CAAC;AAEP;AAAC9B,EAAA,CA7CuBD,KAAK;AAAAsC,EAAA,GAALtC,KAAK;AAAA,IAAAsC,EAAA;AAAAC,YAAA,CAAAD,EAAA","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}