{"ast":null,"code":"var _jsxFileName = \"D:\\\\LDT\\\\000 Project\\\\LDT\\\\Client\\\\src\\\\components\\\\Modal.js\";\nimport React from 'react';\nimport { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\nfunction Modal({\n  open,\n  onClose,\n  title,\n  children\n}) {\n  if (!open) return null;\n  return /*#__PURE__*/_jsxDEV(\"div\", {\n    style: {\n      position: 'fixed',\n      zIndex: 2000,\n      left: 0,\n      top: 0,\n      width: '100vw',\n      height: '100vh',\n      background: 'rgba(32,34,50,0.4)',\n      display: 'flex',\n      justifyContent: 'center',\n      alignItems: 'center',\n      animation: 'modalBgFadeIn 0.3s'\n    },\n    children: [/*#__PURE__*/_jsxDEV(\"style\", {\n      children: `\n        @keyframes modalFadeIn {\n          from { opacity: 0; transform: translateY(-32px) scale(0.97);}\n          to { opacity: 1; transform: translateY(0) scale(1);}\n        }\n        @keyframes modalBgFadeIn {\n          from { background: rgba(32,34,50,0);}\n          to { background: rgba(32,34,50,0.4);}\n        }\n        .massively-modal {\n          background: #fff;\n          border-radius: 1.3em;\n          min-width: 340px;\n          max-width: 94vw;\n          width: 410px;\n          padding: 0;\n          box-shadow: 0 18px 60px 0 rgba(48,48,96,0.20), 0 1.5px 8px 0 rgba(44,44,66,0.09);\n          position: relative;\n          animation: modalFadeIn 0.29s;\n          border: 1.5px solid #eaeafd;\n          display: flex;\n          flex-direction: column;\n          overflow: hidden;\n        }\n        .modal-header {\n          padding: 1.5em 2em 0.9em 2em;\n          background: #f8f8ff;\n          border-bottom: 1px solid #ececf9;\n          font-size: 1.33em;\n          font-weight: bold;\n          color: #4361ee;\n          display: flex;\n          align-items: center;\n          justify-content: space-between;\n        }\n        .modal-title {\n          margin: 0;\n          font-size: 1.17em;\n          flex: 1;\n        }\n        .modal-close-btn {\n          background: #f4f5fc; border: none; border-radius: 50%;\n          width: 2em; height: 2em;\n          font-size: 1.15em; font-weight: bold; color: #4361ee;\n          cursor: pointer;\n          transition: background .13s, color .13s;\n        }\n        .modal-close-btn:hover {\n          background: #4361ee;\n          color: #fff;\n        }\n        .modal-body {\n          padding: 1.8em 2em 2em 2em;\n        }\n        @media (max-width: 600px) {\n          .massively-modal { min-width: 98vw; width: 98vw; border-radius: 0.8em; }\n          .modal-header, .modal-body { padding-left: 1em; padding-right: 1em; }\n        }\n        `\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 18,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n      className: \"massively-modal\",\n      children: [/*#__PURE__*/_jsxDEV(\"div\", {\n        className: \"modal-header\",\n        children: [/*#__PURE__*/_jsxDEV(\"span\", {\n          className: \"modal-title\",\n          children: title || ''\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 81,\n          columnNumber: 11\n        }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n          onClick: onClose,\n          className: \"modal-close-btn\",\n          \"aria-label\": \"\\uB2EB\\uAE30\",\n          tabIndex: 0,\n          children: \"\\xD7\"\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), /*#__PURE__*/_jsxDEV(\"div\", {\n        className: \"modal-body\",\n        children: children\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 89,\n        columnNumber: 9\n      }, this)]\n    }, void 0, true, {\n      fileName: _jsxFileName,\n      lineNumber: 79,\n      columnNumber: 7\n    }, this)]\n  }, void 0, true, {\n    fileName: _jsxFileName,\n    lineNumber: 6,\n    columnNumber: 5\n  }, this);\n}\n_c = Modal;\nexport default Modal;\nvar _c;\n$RefreshReg$(_c, \"Modal\");","map":{"version":3,"names":["React","jsxDEV","_jsxDEV","Modal","open","onClose","title","children","style","position","zIndex","left","top","width","height","background","display","justifyContent","alignItems","animation","fileName","_jsxFileName","lineNumber","columnNumber","className","onClick","tabIndex","_c","$RefreshReg$"],"sources":["D:/LDT/000 Project/LDT/Client/src/components/Modal.js"],"sourcesContent":["import React from 'react';\r\n\r\nfunction Modal({ open, onClose, title, children }) {\r\n  if (!open) return null;\r\n  return (\r\n    <div\r\n      style={{\r\n        position: 'fixed',\r\n        zIndex: 2000,\r\n        left: 0, top: 0, width: '100vw', height: '100vh',\r\n        background: 'rgba(32,34,50,0.4)',\r\n        display: 'flex',\r\n        justifyContent: 'center',\r\n        alignItems: 'center',\r\n        animation: 'modalBgFadeIn 0.3s',\r\n      }}\r\n    >\r\n      <style>\r\n        {`\r\n        @keyframes modalFadeIn {\r\n          from { opacity: 0; transform: translateY(-32px) scale(0.97);}\r\n          to { opacity: 1; transform: translateY(0) scale(1);}\r\n        }\r\n        @keyframes modalBgFadeIn {\r\n          from { background: rgba(32,34,50,0);}\r\n          to { background: rgba(32,34,50,0.4);}\r\n        }\r\n        .massively-modal {\r\n          background: #fff;\r\n          border-radius: 1.3em;\r\n          min-width: 340px;\r\n          max-width: 94vw;\r\n          width: 410px;\r\n          padding: 0;\r\n          box-shadow: 0 18px 60px 0 rgba(48,48,96,0.20), 0 1.5px 8px 0 rgba(44,44,66,0.09);\r\n          position: relative;\r\n          animation: modalFadeIn 0.29s;\r\n          border: 1.5px solid #eaeafd;\r\n          display: flex;\r\n          flex-direction: column;\r\n          overflow: hidden;\r\n        }\r\n        .modal-header {\r\n          padding: 1.5em 2em 0.9em 2em;\r\n          background: #f8f8ff;\r\n          border-bottom: 1px solid #ececf9;\r\n          font-size: 1.33em;\r\n          font-weight: bold;\r\n          color: #4361ee;\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: space-between;\r\n        }\r\n        .modal-title {\r\n          margin: 0;\r\n          font-size: 1.17em;\r\n          flex: 1;\r\n        }\r\n        .modal-close-btn {\r\n          background: #f4f5fc; border: none; border-radius: 50%;\r\n          width: 2em; height: 2em;\r\n          font-size: 1.15em; font-weight: bold; color: #4361ee;\r\n          cursor: pointer;\r\n          transition: background .13s, color .13s;\r\n        }\r\n        .modal-close-btn:hover {\r\n          background: #4361ee;\r\n          color: #fff;\r\n        }\r\n        .modal-body {\r\n          padding: 1.8em 2em 2em 2em;\r\n        }\r\n        @media (max-width: 600px) {\r\n          .massively-modal { min-width: 98vw; width: 98vw; border-radius: 0.8em; }\r\n          .modal-header, .modal-body { padding-left: 1em; padding-right: 1em; }\r\n        }\r\n        `}\r\n      </style>\r\n      <div className=\"massively-modal\">\r\n        <div className=\"modal-header\">\r\n          <span className=\"modal-title\">{title || ''}</span>\r\n          <button\r\n            onClick={onClose}\r\n            className=\"modal-close-btn\"\r\n            aria-label=\"닫기\"\r\n            tabIndex={0}\r\n          >×</button>\r\n        </div>\r\n        <div className=\"modal-body\">\r\n          {children}\r\n        </div>\r\n      </div>\r\n    </div>\r\n  );\r\n}\r\n\r\nexport default Modal;\r\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AAAC,SAAAC,MAAA,IAAAC,OAAA;AAE1B,SAASC,KAAKA,CAAC;EAAEC,IAAI;EAAEC,OAAO;EAAEC,KAAK;EAAEC;AAAS,CAAC,EAAE;EACjD,IAAI,CAACH,IAAI,EAAE,OAAO,IAAI;EACtB,oBACEF,OAAA;IACEM,KAAK,EAAE;MACLC,QAAQ,EAAE,OAAO;MACjBC,MAAM,EAAE,IAAI;MACZC,IAAI,EAAE,CAAC;MAAEC,GAAG,EAAE,CAAC;MAAEC,KAAK,EAAE,OAAO;MAAEC,MAAM,EAAE,OAAO;MAChDC,UAAU,EAAE,oBAAoB;MAChCC,OAAO,EAAE,MAAM;MACfC,cAAc,EAAE,QAAQ;MACxBC,UAAU,EAAE,QAAQ;MACpBC,SAAS,EAAE;IACb,CAAE;IAAAZ,QAAA,gBAEFL,OAAA;MAAAK,QAAA,EACG;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IAAS;MAAAa,QAAA,EAAAC,YAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,OACI,CAAC,eACRrB,OAAA;MAAKsB,SAAS,EAAC,iBAAiB;MAAAjB,QAAA,gBAC9BL,OAAA;QAAKsB,SAAS,EAAC,cAAc;QAAAjB,QAAA,gBAC3BL,OAAA;UAAMsB,SAAS,EAAC,aAAa;UAAAjB,QAAA,EAAED,KAAK,IAAI;QAAE;UAAAc,QAAA,EAAAC,YAAA;UAAAC,UAAA;UAAAC,YAAA;QAAA,OAAO,CAAC,eAClDrB,OAAA;UACEuB,OAAO,EAAEpB,OAAQ;UACjBmB,SAAS,EAAC,iBAAiB;UAC3B,cAAW,cAAI;UACfE,QAAQ,EAAE,CAAE;UAAAnB,QAAA,EACb;QAAC;UAAAa,QAAA,EAAAC,YAAA;UAAAC,UAAA;UAAAC,YAAA;QAAA,OAAQ,CAAC;MAAA;QAAAH,QAAA,EAAAC,YAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA,OACR,CAAC,eACNrB,OAAA;QAAKsB,SAAS,EAAC,YAAY;QAAAjB,QAAA,EACxBA;MAAQ;QAAAa,QAAA,EAAAC,YAAA;QAAAC,UAAA;QAAAC,YAAA;MAAA,OACN,CAAC;IAAA;MAAAH,QAAA,EAAAC,YAAA;MAAAC,UAAA;MAAAC,YAAA;IAAA,OACH,CAAC;EAAA;IAAAH,QAAA,EAAAC,YAAA;IAAAC,UAAA;IAAAC,YAAA;EAAA,OACH,CAAC;AAEV;AAACI,EAAA,GA5FQxB,KAAK;AA8Fd,eAAeA,KAAK;AAAC,IAAAwB,EAAA;AAAAC,YAAA,CAAAD,EAAA","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}