diff --git a/src/assets/shop/Image-light-1.webp b/src/assets/shop/Image-light-1.webp deleted file mode 100644 index 62b1868..0000000 Binary files a/src/assets/shop/Image-light-1.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-10.webp b/src/assets/shop/Image-light-10.webp deleted file mode 100644 index 73bf742..0000000 Binary files a/src/assets/shop/Image-light-10.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-11.webp b/src/assets/shop/Image-light-11.webp deleted file mode 100644 index 8f43613..0000000 Binary files a/src/assets/shop/Image-light-11.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-12.webp b/src/assets/shop/Image-light-12.webp deleted file mode 100644 index 15f38f7..0000000 Binary files a/src/assets/shop/Image-light-12.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-13.webp b/src/assets/shop/Image-light-13.webp deleted file mode 100644 index aa6f417..0000000 Binary files a/src/assets/shop/Image-light-13.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-14.webp b/src/assets/shop/Image-light-14.webp deleted file mode 100644 index 6c6ebe3..0000000 Binary files a/src/assets/shop/Image-light-14.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-15.webp b/src/assets/shop/Image-light-15.webp deleted file mode 100644 index 973fa39..0000000 Binary files a/src/assets/shop/Image-light-15.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-16.webp b/src/assets/shop/Image-light-16.webp deleted file mode 100644 index 27fe93c..0000000 Binary files a/src/assets/shop/Image-light-16.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-17.webp b/src/assets/shop/Image-light-17.webp deleted file mode 100644 index 2ef27e5..0000000 Binary files a/src/assets/shop/Image-light-17.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-18.webp b/src/assets/shop/Image-light-18.webp deleted file mode 100644 index 208ab52..0000000 Binary files a/src/assets/shop/Image-light-18.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-2.webp b/src/assets/shop/Image-light-2.webp deleted file mode 100644 index 1eef5d8..0000000 Binary files a/src/assets/shop/Image-light-2.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-3.webp b/src/assets/shop/Image-light-3.webp deleted file mode 100644 index 15f9ede..0000000 Binary files a/src/assets/shop/Image-light-3.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-4.webp b/src/assets/shop/Image-light-4.webp deleted file mode 100644 index 9930892..0000000 Binary files a/src/assets/shop/Image-light-4.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-5.webp b/src/assets/shop/Image-light-5.webp deleted file mode 100644 index 26ed70a..0000000 Binary files a/src/assets/shop/Image-light-5.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-6.webp b/src/assets/shop/Image-light-6.webp deleted file mode 100644 index 06f5cc1..0000000 Binary files a/src/assets/shop/Image-light-6.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-7.webp b/src/assets/shop/Image-light-7.webp deleted file mode 100644 index 2ef27e5..0000000 Binary files a/src/assets/shop/Image-light-7.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-8.webp b/src/assets/shop/Image-light-8.webp deleted file mode 100644 index be04ec9..0000000 Binary files a/src/assets/shop/Image-light-8.webp and /dev/null differ diff --git a/src/assets/shop/Image-light-9.webp b/src/assets/shop/Image-light-9.webp deleted file mode 100644 index adadf5f..0000000 Binary files a/src/assets/shop/Image-light-9.webp and /dev/null differ diff --git a/src/assets/shop/index.ts b/src/assets/shop/index.ts deleted file mode 100644 index c15955f..0000000 --- a/src/assets/shop/index.ts +++ /dev/null @@ -1,39 +0,0 @@ -import ShopEx1 from "./Image-light-1.webp"; -import ShopEx10 from "./Image-light-10.webp"; -import ShopEx11 from "./Image-light-11.webp"; -import ShopEx12 from "./Image-light-12.webp"; -import ShopEx13 from "./Image-light-13.webp"; -import ShopEx14 from "./Image-light-14.webp"; -import ShopEx15 from "./Image-light-15.webp"; -import ShopEx16 from "./Image-light-16.webp"; -import ShopEx17 from "./Image-light-17.webp"; -import ShopEx18 from "./Image-light-18.webp"; -import ShopEx2 from "./Image-light-2.webp"; -import ShopEx3 from "./Image-light-3.webp"; -import ShopEx4 from "./Image-light-4.webp"; -import ShopEx5 from "./Image-light-5.webp"; -import ShopEx6 from "./Image-light-6.webp"; -import ShopEx7 from "./Image-light-7.webp"; -import ShopEx8 from "./Image-light-8.webp"; -import ShopEx9 from "./Image-light-9.webp"; - -export { - ShopEx1, - ShopEx2, - ShopEx3, - ShopEx4, - ShopEx5, - ShopEx6, - ShopEx7, - ShopEx8, - ShopEx9, - ShopEx10, - ShopEx11, - ShopEx12, - ShopEx13, - ShopEx14, - ShopEx15, - ShopEx16, - ShopEx17, - ShopEx18, -}; diff --git a/src/components/NoticeDetailInfo/NoticeDetailInfo.tsx b/src/components/NoticeDetailInfo/NoticeDetailInfo.tsx index 78a1ada..a6136e0 100644 --- a/src/components/NoticeDetailInfo/NoticeDetailInfo.tsx +++ b/src/components/NoticeDetailInfo/NoticeDetailInfo.tsx @@ -3,7 +3,7 @@ import NoticeEmployerActionButton from "./NoticeEmployerActionButton"; import PostCard from "@/components/Post/PostCard"; import { APPLICATION_STATUS } from "@/constants/applicationStatus"; -import { User } from "@/hooks/useUserStore"; +import { User } from "@/store/useUserStore"; import { NoticeItem } from "@/types/notice"; import { cn } from "@/utils/cn"; import { isPastDate } from "@/utils/datetime"; diff --git a/src/components/NoticeDetailInfo/NoticeEmployeeActionButton.tsx b/src/components/NoticeDetailInfo/NoticeEmployeeActionButton.tsx index 6101976..56e771a 100644 --- a/src/components/NoticeDetailInfo/NoticeEmployeeActionButton.tsx +++ b/src/components/NoticeDetailInfo/NoticeEmployeeActionButton.tsx @@ -9,8 +9,8 @@ import { import { APPLICATION_STATUS } from "@/constants/applicationStatus"; import { ROUTES } from "@/constants/router"; import { useToast } from "@/hooks/useToast"; -import { useUserStore } from "@/hooks/useUserStore"; import { useModalStore } from "@/store/useModalStore"; +import { useUserStore } from "@/store/useUserStore"; import { ApplicationStatus } from "@/types/application"; import { cn } from "@/utils/cn"; diff --git a/src/components/ProtectedRoute.tsx b/src/components/ProtectedRoute.tsx index 2c4098d..68d3823 100644 --- a/src/components/ProtectedRoute.tsx +++ b/src/components/ProtectedRoute.tsx @@ -2,8 +2,8 @@ import { ReactNode, useLayoutEffect } from "react"; import { useNavigate } from "react-router-dom"; -import { User, useUserStore } from "@/hooks/useUserStore"; import { useModalStore } from "@/store/useModalStore"; +import { User, useUserStore } from "@/store/useUserStore"; interface ProtectedRouteConditionType { isPass: boolean; diff --git a/src/components/Toast/ToastContainer.tsx b/src/components/Toast/ToastContainer.tsx index 225168d..9d39896 100644 --- a/src/components/Toast/ToastContainer.tsx +++ b/src/components/Toast/ToastContainer.tsx @@ -1,6 +1,6 @@ -import { useToast } from "@/hooks/useToast"; -import ToastPortal from "@/components/Toast/ToastPortal"; import Toast from "@/components/Toast/Toast"; +import ToastPortal from "@/components/Toast/ToastPortal"; +import { useToast } from "@/hooks/useToast"; export default function ToastContainer() { const { toasts } = useToast(); diff --git a/src/components/Toast/ToastPortal.tsx b/src/components/Toast/ToastPortal.tsx index dbdeeff..aeeddf7 100644 --- a/src/components/Toast/ToastPortal.tsx +++ b/src/components/Toast/ToastPortal.tsx @@ -1,6 +1,7 @@ -import { createPortal } from "react-dom"; import { ReactNode, useEffect, useState } from "react"; +import { createPortal } from "react-dom"; + interface ToastPortalProps { children: ReactNode; } diff --git a/src/constants/index.ts b/src/constants/index.ts deleted file mode 100644 index e69de29..0000000 diff --git a/src/hooks/index.ts b/src/hooks/index.ts deleted file mode 100644 index e69de29..0000000 diff --git a/src/hooks/useNoticeList.ts b/src/hooks/useNoticeList.ts index 048b302..66704a0 100644 --- a/src/hooks/useNoticeList.ts +++ b/src/hooks/useNoticeList.ts @@ -1,12 +1,12 @@ import { useEffect, useState } from "react"; import { getNotices } from "@/apis/services/noticeService"; -import { useUserStore } from "@/hooks/useUserStore"; import { ITEM_COUNT_PER_PAGE, CUSTOM_NOTICE_LIMIT, } from "@/pages/NoticeListPage/constants"; import { useFilterStore } from "@/store/useFilterStore"; +import { useUserStore } from "@/store/useUserStore"; import type { NoticeWithoutUserApplication, SortKey } from "@/types/notice"; export default function useNoticeList(page: number, selectedSort: SortKey) { diff --git a/src/layouts/Header.tsx b/src/layouts/Header.tsx index d6c1c66..f5e2e14 100644 --- a/src/layouts/Header.tsx +++ b/src/layouts/Header.tsx @@ -4,7 +4,7 @@ import Logo from "../assets/logo/thejulge.svg"; import Alert from "@/components/Alert/Alert"; import SearchInput from "@/components/SearchInput"; -import { useUserStore } from "@/hooks/useUserStore"; +import { useUserStore } from "@/store/useUserStore"; export default function Header() { const navigate = useNavigate(); @@ -14,8 +14,8 @@ export default function Header() { const userPath = user?.type === "employer" ? "/shop" : "/profile"; const handleLogout = () => { - clearUser(); navigate("/"); + setTimeout(() => clearUser(), 100); }; return ( diff --git a/src/pages/AuthPage/SigninPage.tsx b/src/pages/AuthPage/SigninPage.tsx index c2dca54..db592e2 100644 --- a/src/pages/AuthPage/SigninPage.tsx +++ b/src/pages/AuthPage/SigninPage.tsx @@ -12,8 +12,8 @@ import { postAuthentication } from "@/apis/services/authenticationService"; import Button from "@/components/Button"; import TextField from "@/components/TextField"; import { ROUTES } from "@/constants/router"; -import { useUserStore } from "@/hooks/useUserStore"; import { useModalStore } from "@/store/useModalStore"; +import { useUserStore } from "@/store/useUserStore"; export default function SigninPage() { const navigate = useNavigate(); diff --git a/src/pages/AuthPage/SignupPage.tsx b/src/pages/AuthPage/SignupPage.tsx index c45eb68..b93af0c 100644 --- a/src/pages/AuthPage/SignupPage.tsx +++ b/src/pages/AuthPage/SignupPage.tsx @@ -15,8 +15,8 @@ import { postUser } from "@/apis/services/userService"; import Button from "@/components/Button"; import TextField from "@/components/TextField"; import { ROUTES } from "@/constants/router"; -import { useUserStore } from "@/hooks/useUserStore"; import { useModalStore } from "@/store/useModalStore"; +import { useUserStore } from "@/store/useUserStore"; export default function SignupPage() { const navigate = useNavigate(); diff --git a/src/pages/NoticeEditPage.tsx b/src/pages/NoticeEditPage.tsx index 7907e43..4dc89bb 100644 --- a/src/pages/NoticeEditPage.tsx +++ b/src/pages/NoticeEditPage.tsx @@ -12,8 +12,8 @@ import Button from "@/components/Button"; import TextField from "@/components/TextField"; import { ROUTES } from "@/constants/router"; import { MIN_WAGE, MAX_WAGE } from "@/constants/wage"; -import { useUserStore } from "@/hooks/useUserStore"; import { useModalStore } from "@/store/useModalStore"; +import { useUserStore } from "@/store/useUserStore"; import { extractDigits, numberCommaFormatter } from "@/utils/number"; type FormType = { diff --git a/src/pages/NoticeEmployeePage/loader/noticeEmployeeLoader.ts b/src/pages/NoticeEmployeePage/loader/noticeEmployeeLoader.ts index 17351ce..3fd604f 100644 --- a/src/pages/NoticeEmployeePage/loader/noticeEmployeeLoader.ts +++ b/src/pages/NoticeEmployeePage/loader/noticeEmployeeLoader.ts @@ -1,7 +1,7 @@ import { LoaderFunction } from "react-router-dom"; import { loadNotice, loadRecentNotices } from "@/apis/loaders/notice"; -import { useUserStore } from "@/hooks/useUserStore"; +import { useUserStore } from "@/store/useUserStore"; const noticeEmployeeLoader: LoaderFunction = async ({ params }) => { const user = useUserStore.getState().user; diff --git a/src/pages/NoticeEmployerPage/NoticeEmployerPage.tsx b/src/pages/NoticeEmployerPage/NoticeEmployerPage.tsx index 72e52b0..8b55ab3 100644 --- a/src/pages/NoticeEmployerPage/NoticeEmployerPage.tsx +++ b/src/pages/NoticeEmployerPage/NoticeEmployerPage.tsx @@ -7,7 +7,7 @@ import useShopApplications from "./hooks/useShopApplications"; import PostList, { PostData } from "@/components/Post/PostList"; import useUpdateRecentNotices from "@/hooks/useUpdateRecentNotices"; -import { useUserStore } from "@/hooks/useUserStore"; +import { useUserStore } from "@/store/useUserStore"; import { NoticeItem } from "@/types/notice"; export default function NoticeEmployerPage() { diff --git a/src/pages/NoticeEmployerPage/loader/noticeEmployerLoader.ts b/src/pages/NoticeEmployerPage/loader/noticeEmployerLoader.ts index 95d4b90..b12764c 100644 --- a/src/pages/NoticeEmployerPage/loader/noticeEmployerLoader.ts +++ b/src/pages/NoticeEmployerPage/loader/noticeEmployerLoader.ts @@ -1,7 +1,7 @@ import { LoaderFunction } from "react-router-dom"; import { loadNotice, loadRecentNotices } from "@/apis/loaders/notice"; -import { useUserStore } from "@/hooks/useUserStore"; +import { useUserStore } from "@/store/useUserStore"; const noticeEmployerLoader: LoaderFunction = async ({ params }) => { const user = useUserStore.getState().user; diff --git a/src/pages/NoticeListPage/NoticeListPage.tsx b/src/pages/NoticeListPage/NoticeListPage.tsx index 420cb8e..bcb228d 100644 --- a/src/pages/NoticeListPage/NoticeListPage.tsx +++ b/src/pages/NoticeListPage/NoticeListPage.tsx @@ -9,7 +9,7 @@ import CustomNoticeSection from "./CustomNoticeSection"; import NoticeSearchResultHeader from "@/components/NoticeSearchResultHeader"; import PageNation from "@/components/Pagination"; import PostList, { PostData } from "@/components/Post/PostList"; -import { useUserStore } from "@/hooks/useUserStore"; +import { useUserStore } from "@/store/useUserStore"; import type { SortKey } from "@/types/notice"; export default function NoticeListPage() { diff --git a/src/pages/NoticeRegisterPage.tsx b/src/pages/NoticeRegisterPage.tsx index 81d2d5e..8d3a545 100644 --- a/src/pages/NoticeRegisterPage.tsx +++ b/src/pages/NoticeRegisterPage.tsx @@ -12,8 +12,8 @@ import Button from "@/components/Button"; import TextField from "@/components/TextField"; import { ROUTES } from "@/constants/router"; import { MAX_WAGE, MIN_WAGE } from "@/constants/wage"; -import { useUserStore } from "@/hooks/useUserStore"; import { useModalStore } from "@/store/useModalStore"; +import { useUserStore } from "@/store/useUserStore"; import { extractDigits, numberCommaFormatter } from "@/utils/number"; type FormType = { diff --git a/src/pages/NoticeSearchPage/NoticeSearchPage.tsx b/src/pages/NoticeSearchPage/NoticeSearchPage.tsx index 0bc93be..8bf54da 100644 --- a/src/pages/NoticeSearchPage/NoticeSearchPage.tsx +++ b/src/pages/NoticeSearchPage/NoticeSearchPage.tsx @@ -7,8 +7,8 @@ import NoticeSearchResultHeader from "@/components/NoticeSearchResultHeader"; import Pagination from "@/components/Pagination"; import type { PostData } from "@/components/Post/PostList"; import PostList from "@/components/Post/PostList"; -import { useUserStore } from "@/hooks/useUserStore"; import { useFilterStore } from "@/store/useFilterStore"; +import { useUserStore } from "@/store/useUserStore"; import type { SortKey } from "@/types/notice"; const ITEM_PER_PAGE = 6; diff --git a/src/pages/ProfileEditPage.tsx b/src/pages/ProfileEditPage.tsx index 892cf57..8ef3698 100644 --- a/src/pages/ProfileEditPage.tsx +++ b/src/pages/ProfileEditPage.tsx @@ -11,8 +11,8 @@ import Button from "@/components/Button"; import Select from "@/components/Select"; import TextField from "@/components/TextField"; import { ROUTES } from "@/constants/router"; -import { useUserStore } from "@/hooks/useUserStore"; import { useModalStore } from "@/store/useModalStore"; +import { useUserStore } from "@/store/useUserStore"; import { autoHyphenFormatter } from "@/utils/phoneNumber"; type FormType = { diff --git a/src/pages/ProfilePage/loader/profileLoader.ts b/src/pages/ProfilePage/loader/profileLoader.ts index 82953f0..126f806 100644 --- a/src/pages/ProfilePage/loader/profileLoader.ts +++ b/src/pages/ProfilePage/loader/profileLoader.ts @@ -1,5 +1,5 @@ import { getUser } from "@/apis/services/userService"; -import { useUserStore } from "@/hooks/useUserStore"; +import { useUserStore } from "@/store/useUserStore"; const profileLoader = async () => { const userId = useUserStore.getState().user?.id; diff --git a/src/pages/ProfileRegisterPage.tsx b/src/pages/ProfileRegisterPage.tsx index 20dafb0..77c5d8a 100644 --- a/src/pages/ProfileRegisterPage.tsx +++ b/src/pages/ProfileRegisterPage.tsx @@ -11,8 +11,8 @@ import Button from "@/components/Button"; import Select from "@/components/Select"; import TextField from "@/components/TextField"; import { ROUTES } from "@/constants/router"; -import { useUserStore } from "@/hooks/useUserStore"; import { useModalStore } from "@/store/useModalStore"; +import { useUserStore } from "@/store/useUserStore"; import { autoHyphenFormatter } from "@/utils/phoneNumber"; type FormType = { diff --git a/src/pages/ShopEditPage.tsx b/src/pages/ShopEditPage.tsx index 38ee42a..6e1c253 100644 --- a/src/pages/ShopEditPage.tsx +++ b/src/pages/ShopEditPage.tsx @@ -18,8 +18,8 @@ import TextField from "@/components/TextField"; import { ROUTES } from "@/constants/router"; import { CATEGORY_OPTIONS } from "@/constants/shopCategory"; import { MAX_WAGE, MIN_WAGE } from "@/constants/wage"; -import { useUserStore } from "@/hooks/useUserStore"; import { useModalStore } from "@/store/useModalStore"; +import { useUserStore } from "@/store/useUserStore"; import { extractDigits, numberCommaFormatter } from "@/utils/number"; type FormType = { diff --git a/src/pages/ShopPage/ShopPage.tsx b/src/pages/ShopPage/ShopPage.tsx index 00886c0..35cd2da 100644 --- a/src/pages/ShopPage/ShopPage.tsx +++ b/src/pages/ShopPage/ShopPage.tsx @@ -7,9 +7,9 @@ import EmptyStateCard from "@/components/EmptyStateCard"; import PostCard from "@/components/Post/PostCard"; import PostList from "@/components/Post/PostList"; import { ROUTES } from "@/constants/router"; -import { useUserStore } from "@/hooks/useUserStore"; import { useShopData } from "@/pages/ShopPage/hooks/useShopData"; import { useModalStore } from "@/store/useModalStore"; +import { useUserStore } from "@/store/useUserStore"; export interface PostListItem { id: string; diff --git a/src/pages/ShopPage/hooks/useShopData.ts b/src/pages/ShopPage/hooks/useShopData.ts index 1f369e6..d93cecb 100644 --- a/src/pages/ShopPage/hooks/useShopData.ts +++ b/src/pages/ShopPage/hooks/useShopData.ts @@ -4,7 +4,7 @@ import { AxiosError } from "axios"; import { getShopNotices } from "@/apis/services/noticeService"; import { getUser } from "@/apis/services/userService"; -import { useUserStore } from "@/hooks/useUserStore"; +import { useUserStore } from "@/store/useUserStore"; export type ShopItem = { id: string; diff --git a/src/pages/ShopRegisterPage.tsx b/src/pages/ShopRegisterPage.tsx index a42a450..f1d841d 100644 --- a/src/pages/ShopRegisterPage.tsx +++ b/src/pages/ShopRegisterPage.tsx @@ -18,8 +18,8 @@ import TextField from "@/components/TextField"; import { ROUTES } from "@/constants/router"; import { CATEGORY_OPTIONS } from "@/constants/shopCategory"; import { MIN_WAGE, MAX_WAGE } from "@/constants/wage"; -import { useUserStore } from "@/hooks/useUserStore"; import { useModalStore } from "@/store/useModalStore"; +import { useUserStore } from "@/store/useUserStore"; import { extractDigits, numberCommaFormatter } from "@/utils/number"; type FormType = { diff --git a/src/pages/index.ts b/src/pages/index.ts deleted file mode 100644 index e69de29..0000000 diff --git a/src/store/index.ts b/src/store/index.ts deleted file mode 100644 index e69de29..0000000 diff --git a/src/store/useUserStore.ts b/src/store/useUserStore.ts deleted file mode 100644 index dbc5c6e..0000000 --- a/src/store/useUserStore.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { create } from "zustand"; - -export interface UserState { - isLoggedIn: boolean; - address: string; - setIsLoggedIn: (value: boolean) => void; - setAddress: (value: string) => void; -} - -export const useUserStore = create((set) => ({ - isLoggedIn: false, - address: "", - setIsLoggedIn: (value) => set({ isLoggedIn: value }), - setAddress: (value) => set({ address: value }), -})); diff --git a/src/hooks/useUserStore.tsx b/src/store/useUserStore.tsx similarity index 100% rename from src/hooks/useUserStore.tsx rename to src/store/useUserStore.tsx diff --git a/src/utils/index.ts b/src/utils/index.ts deleted file mode 100644 index e69de29..0000000