diff --git a/src/App.tsx b/src/App.tsx index 03cbaf9..34e6dfa 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -6,6 +6,7 @@ import Home from './pages/Home'; import LetterBoardPage from './pages/LetterBoard'; import LetterBoardDetailPage from './pages/LetterBoardDetail'; import LetterBoxPage from './pages/LetterBox'; +import LetterBoxDetailPage from './pages/LetterBoxDetail'; import LetterDetailPage from './pages/LetterDetail'; import LoginPage from './pages/Login'; import MyPage from './pages/MyPage'; @@ -25,8 +26,11 @@ const App = () => { } /> } /> - } /> - } /> + }> + } /> + } /> + } /> + } /> } /> diff --git a/src/assets/icons/index.ts b/src/assets/icons/index.ts index 148e75f..e14f8ea 100644 --- a/src/assets/icons/index.ts +++ b/src/assets/icons/index.ts @@ -3,6 +3,7 @@ import ArrowLeftIcon from './arrow-left.svg?react'; import BoardIcon from './board.svg?react'; import DeleteIcon from './delete.svg?react'; import EnvelopeIcon from './envelope.svg?react'; +import InformationIcon from './infromation.svg?react'; import LikeFilledIcon from './like-filled.svg?react'; import LikeOutlinedIcon from './like-outlined.svg?react'; import NoticeIcon from './notice.svg?react'; @@ -14,6 +15,7 @@ export { AlarmIcon, PersonIcon, ArrowLeftIcon, + InformationIcon, SirenFilledIcon, SirenOutlinedIcon, EnvelopeIcon, diff --git a/src/assets/icons/infromation.svg b/src/assets/icons/infromation.svg new file mode 100644 index 0000000..25935ef --- /dev/null +++ b/src/assets/icons/infromation.svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/src/assets/images/door.png b/src/assets/images/door.png new file mode 100644 index 0000000..50a5056 Binary files /dev/null and b/src/assets/images/door.png differ diff --git a/src/components/BackgroundBottom.tsx b/src/components/BackgroundBottom.tsx index 1b8566a..88389fd 100644 --- a/src/components/BackgroundBottom.tsx +++ b/src/components/BackgroundBottom.tsx @@ -1,10 +1,13 @@ import BgItem from '@/assets/images/field-4.png'; +import BackgroundImageWrapper from './BackgroundImageWrapper'; + const BackgroundBottom = () => { return ( -
); }; diff --git a/src/components/BackgroundImageWrapper.tsx b/src/components/BackgroundImageWrapper.tsx new file mode 100644 index 0000000..330150c --- /dev/null +++ b/src/components/BackgroundImageWrapper.tsx @@ -0,0 +1,29 @@ +import { twMerge } from 'tailwind-merge'; + +interface BackgroundImageWrapperProps { + as?: React.ElementType; + imageUrl: string; + className?: string; + children?: React.ReactNode; + onClick?: () => void; +} + +const BackgroundImageWrapper = ({ + as: Component = 'div', + imageUrl, + className, + children, + onClick, +}: BackgroundImageWrapperProps) => { + return ( + + {children} + + ); +}; + +export default BackgroundImageWrapper; diff --git a/src/components/ConfirmModal.tsx b/src/components/ConfirmModal.tsx index 040f07b..f4a94f5 100644 --- a/src/components/ConfirmModal.tsx +++ b/src/components/ConfirmModal.tsx @@ -1,5 +1,6 @@ import ModalBg from '@/assets/images/modal-yellow.png'; +import BackgroundImageWrapper from './BackgroundImageWrapper'; import ModalOverlay from './ModalOverlay'; interface ConfirmModalProps { @@ -27,16 +28,13 @@ const ConfirmModal = ({ return (
-
+

{title}

{description}

{children} -
+