diff --git a/src/components/BusinessNameInputModal.tsx b/src/components/BusinessNameInputModal.tsx index c9fca7c..1a22367 100644 --- a/src/components/BusinessNameInputModal.tsx +++ b/src/components/BusinessNameInputModal.tsx @@ -6,7 +6,7 @@ import { useOverlayClose } from '../hooks/useOverlayClose'; interface BusinessNameInputModalProps { onClose: () => void; - onSubmit: (businessName: string, address: string, category: string) => void; + onSubmit: (businessName: string, address: string, category: string, officialSiteUrl: string) => void; } const BusinessNameInputModal: React.FC = ({ onClose, onSubmit }) => { @@ -15,6 +15,7 @@ const BusinessNameInputModal: React.FC = ({ onClose const [selectedCity, setSelectedCity] = useState(''); const [detailAddress, setDetailAddress] = useState(''); const [category, setCategory] = useState(''); + const [officialSiteUrl, setOfficialSiteUrl] = useState(''); const [isCityModalOpen, setIsCityModalOpen] = useState(false); const overlayCloseHandlers = useOverlayClose(onClose); @@ -44,7 +45,12 @@ const BusinessNameInputModal: React.FC = ({ onClose const handleSubmit = () => { if (!isValid) return; const fullAddress = `${selectedCity} ${detailAddress.trim()}`; - onSubmit(businessName.trim(), fullAddress, category.trim()); + // 프로토콜 없이 입력하면 https:// 를 붙여서 전달 + const trimmedUrl = officialSiteUrl.trim(); + const normalizedUrl = trimmedUrl && !/^https?:\/\//i.test(trimmedUrl) + ? `https://${trimmedUrl}` + : trimmedUrl; + onSubmit(businessName.trim(), fullAddress, category.trim(), normalizedUrl); onClose(); }; @@ -120,6 +126,19 @@ const BusinessNameInputModal: React.FC = ({ onClose /> +
+ + setOfficialSiteUrl(e.target.value)} + onKeyDown={handleKeyDown} + maxLength={2048} + /> +
+