Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
b2e37bd
reset
hanseulhee Oct 10, 2023
6f8bbb0
Merge branch 'codeit-bootcamp-frontend:main' into main
hanseulhee Oct 10, 2023
e11e25f
fix: 머지 후 브랜치 삭제 github action 수정
hanseulhee Oct 10, 2023
212e864
env: workflows 폴더로 이동
hanseulhee Oct 10, 2023
4dc5dd0
Merge pull request #237 from hanseulhee/fix-github-actions
withyj-codeit Nov 6, 2023
4f28c49
merge
Jan 7, 2025
46fc96c
Merge branch 'React-김태완' of https://github.com/codeit-bootcamp-fronte…
Jan 7, 2025
3c44b82
react-query 설치
Jan 7, 2025
4bbbd4c
태그 스타일 수정
Jan 7, 2025
216ccd4
상품 등록 및 상세페이지 이동
Jan 7, 2025
bdd8a5d
유저정보 리덕스
Jan 7, 2025
e99b8c9
물품 상세 정보 리덕스
Jan 7, 2025
1041d04
문의하기 등록 기능
Jan 8, 2025
a3d3222
댓글 수정, 삭제 완료
Jan 8, 2025
dbf5a81
수정까지 완료
Jan 8, 2025
9110048
이미지 없을때 판다 이미지
Jan 8, 2025
2650a7b
react-toastify 적용
Jan 8, 2025
3e2abe6
스토리지 만료시 로그인 페이지로
Jan 8, 2025
754d9ac
헤더에 불필요 파일 삭제
Jan 8, 2025
44d89ef
clsx 적용
Jan 8, 2025
0eaede6
불필요 코드 제거
Jan 8, 2025
638434e
전체 버튼 호버 적용
Jan 8, 2025
3fd6ec7
next 작업사항 리액트로 마이그레이션 - AddBoard 추가
Jan 9, 2025
f86f2b7
boards 마이그레이션션
Jan 9, 2025
eee30af
마이그레이션_UI 완성
Jan 9, 2025
5266eec
자잘한 리팩토링
Jan 9, 2025
690e5b8
상품 좋아요 및 취소 완료
Jan 9, 2025
d9c6393
게시글 좋아요, 취소 기능 추가
Jan 9, 2025
ab6d389
게시글 수정 및 삭제 구현
Jan 9, 2025
cdfb267
게시글 댓글 상태 업데이트 및 토큰 관련 로직 수정
Jan 10, 2025
379ebfc
버그 잡기
Jan 10, 2025
84474c2
디바운스 적용
Jan 10, 2025
ca4117e
콘솔 삭제
Jan 10, 2025
8cf7085
빌드 전
Jan 10, 2025
32ad40c
Merge branch 'React-김태완-sprint12' into React-김태완-sprint11
Jan 10, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17,889 changes: 17,886 additions & 3 deletions package-lock.json

Large diffs are not rendered by default.

66 changes: 66 additions & 0 deletions package.json
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

혹시 일부러 개행을 해주신걸까요? package.json은 굳이 개행해주시지 않아도 괜찮습니다.

Original file line number Diff line number Diff line change
@@ -1,54 +1,120 @@
{

"name": "reacttotype",

"version": "0.1.0",

"private": true,

"dependencies": {

"@reduxjs/toolkit": "^2.4.0",

"@tanstack/react-query": "^5.62.16",

"@tanstack/react-query-devtools": "^5.62.16",

"@testing-library/jest-dom": "^5.17.0",

"@testing-library/react": "^13.4.0",

"@testing-library/user-event": "^13.5.0",

"@types/jest": "^27.5.2",

"@types/node": "^16.18.119",

"@types/react": "^18.3.12",

"@types/react-dom": "^18.3.1",

"axios": "^1.7.9",

"clsx": "^2.1.1",

"jwt-decode": "^4.0.0",

"lodash": "^4.17.21",

"react": "^18.3.1",

"react-dom": "^18.3.1",

"react-hook-form": "^7.53.2",

"react-redux": "^9.1.2",

"react-router-dom": "^6.28.0",

"react-scripts": "5.0.1",

"react-toastify": "^11.0.2",

"redux": "^5.0.1",

"typescript": "^4.9.5",

"web-vitals": "^2.1.4"

},

"scripts": {

"start": "react-scripts start",

"build": "react-scripts build",

"test": "react-scripts test",

"eject": "react-scripts eject"

},

"eslintConfig": {

"extends": [

"react-app",

"react-app/jest"

]

},

"browserslist": {

"production": [

">0.2%",

"not dead",

"not op_mini all"

],

"development": [

"last 1 chrome version",

"last 1 firefox version",

"last 1 safari version"

]

},

"devDependencies": {

"@babel/plugin-proposal-private-property-in-object": "^7.21.11",

"@types/lodash": "^4.17.14",

"@types/react-router-dom": "^5.3.3"

}

}

1 change: 1 addition & 0 deletions src/.env
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

.env는 .gitignore에 추가해서 깃에 올라오지 않게 해주시는 것이 좋습니다.

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
API_BASE_URL = https://panda-market-api.vercel.app
15 changes: 15 additions & 0 deletions src/App.css
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,18 @@
margin: 0;
padding: 0;
}

:root {
--color-blue-100: #111827;
--color-blue-200: #3692ff;
--color-blue-300: #1f2937;
--color-blue-400: #4b5563;
--color-blue-500: #6b7280;
--color-blue-600: #9ca3af;

--color-white-100: #f9fafb;
--color-white-200: #ffffff;
--color-white-300: #e5e7eb;
--color-white-400: #f3f4f6;
--color-white-500: #fcfcfc;
}
76 changes: 55 additions & 21 deletions src/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,32 +10,66 @@ import FAQ from "./components/FAQ";
import LoginPage from "./page/LoginPage";
import RegisterPage from "./page/RegisterPage";
import { useSelector } from "react-redux";
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
import "react-toastify/dist/ReactToastify.css";
import { ToastContainer } from "react-toastify";
import AddBoardPage from "./page/AddBoardPage";
import BoardsPage from "./page/BoardsPage";
import BoardPage from "./page/BoardPage";

const queryClient = new QueryClient();

function App() {
const count = useSelector((state: any) => state.counter.value);
return (
<Routes>
<Route path={ROUTES.LANDING} element={<LandingPage />} />
<Route
path={ROUTES.LOGIN}
element={
count === true ? <Navigate to={ROUTES.LANDING} /> : <LoginPage />
}
/>
<Route
path={ROUTES.REGISTER}
element={
count === true ? <Navigate to={ROUTES.LANDING} /> : <RegisterPage />
}
<QueryClientProvider client={queryClient}>
<ToastContainer
position="top-right"
autoClose={2000}
hideProgressBar={false}
newestOnTop={false}
closeOnClick
rtl={false}
pauseOnFocusLoss
draggable
pauseOnHover
theme="light"
/>
<Route path={ROUTES.PRIVACY} element={<Privacy />} />
<Route path={ROUTES.FAQ} element={<FAQ />} />
<Route path={ROUTES.MAIN}>
<Route index element={<MainPage />} />
<Route path=":productId" element={<DetailItemPage />} />
</Route>
<Route path={ROUTES.ADD_ITEM} element={<AddItemPage />} />
</Routes>
<Routes>
<Route path={ROUTES.LANDING} element={<LandingPage />} />
<Route
path={ROUTES.LOGIN}
element={
count === true ? <Navigate to={ROUTES.LANDING} /> : <LoginPage />
}
/>
<Route
path={ROUTES.REGISTER}
element={
count === true ? <Navigate to={ROUTES.LANDING} /> : <RegisterPage />
}
/>
<Route path={ROUTES.PRIVACY} element={<Privacy />} />
<Route path={ROUTES.FAQ} element={<FAQ />} />
<Route path={ROUTES.BOARDS} element={<BoardsPage />} />
<Route path={ROUTES.MAIN}>
<Route index element={<MainPage />} />
<Route path=":productId" element={<DetailItemPage />} />
</Route>
<Route path={ROUTES.BOARD}>
<Route index element={<BoardPage />} />
<Route path=":id" element={<BoardPage />} />
</Route>
<Route path={ROUTES.ADD_ITEM}>
<Route index element={<AddItemPage />} />
<Route path=":productId" element={<AddItemPage />} />
</Route>
<Route path={ROUTES.ADD_BOARD}>
<Route index element={<AddBoardPage />} />
<Route path=":articleId" element={<AddBoardPage />} />
</Route>
</Routes>
</QueryClientProvider>
);
}

Expand Down
Loading
Loading