diff --git a/src/App.tsx b/src/App.tsx index 223c3ea..b3df802 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -4,7 +4,6 @@ import { BrowserRouter as Router, Route, Routes } from 'react-router-dom'; import { RecoilRoot } from 'recoil'; import { ThemeProvider } from 'styled-components'; import { theme } from 'styles/colors'; -import AddGroupInputCount from './pages/AddGroupMain/AddGroupInputCount'; import AddGroupSpace from './pages/AddGroupMain/AddGroupSpace'; import AddGroupMemberName from './pages/AddGroupMain/AddGroupMemberName'; import AddGroupType from './pages/AddGroupMain/AddGroupType'; @@ -42,7 +41,6 @@ function App() { } /> } /> } /> - } /> } /> } /> } /> @@ -65,4 +63,4 @@ function App() { ); } -export default App; +export default App; \ No newline at end of file diff --git a/src/components/AddGroup/AddGroupHeadCount/HeadCount.tsx b/src/components/AddGroup/AddGroupHeadCount/HeadCount.tsx deleted file mode 100644 index 133febf..0000000 --- a/src/components/AddGroup/AddGroupHeadCount/HeadCount.tsx +++ /dev/null @@ -1,25 +0,0 @@ -import React from 'react'; -import { useNavigate } from 'react-router-dom'; -import * as S from './Styles'; - -const HeadCount = () => { - const navigate = useNavigate(); - - const handleNextClick = () => { - navigate('/group/add/member'); - }; - - return ( - - - 몇 명이서 사진을 공유할 건가요? - - - 인원 수를 입력해주세요. - - - - ); -}; - -export default HeadCount; diff --git a/src/components/AddGroup/AddGroupMembername/AddGroupMembername.tsx b/src/components/AddGroup/AddGroupMembername/AddGroupMembername.tsx index 72a3f88..05697c9 100644 --- a/src/components/AddGroup/AddGroupMembername/AddGroupMembername.tsx +++ b/src/components/AddGroup/AddGroupMembername/AddGroupMembername.tsx @@ -1,6 +1,8 @@ import React from 'react'; import * as S from './Styles'; import { useNavigate } from 'react-router-dom'; +import { useRecoilValue } from 'recoil'; +import { namesState } from '../state'; import MembernameList from './membernameList/membernameList'; function MemberNameHead() { @@ -22,9 +24,16 @@ function MemberNameContent() { const AddGroupMembername = () => { const navigate = useNavigate(); + const names = useRecoilValue(namesState); const handleNextClick = () => { - navigate('/group/add/grouptype'); + // 배열이 비어 있는지 확인 + if (names.length > 0) { + console.log(`이름: ${names.join(', ')}`); + navigate('/group/add/grouptype'); + } else { + alert('이름을 입력해주세요'); + } }; return ( diff --git a/src/components/AddGroup/AddGroupMembername/Styles.ts b/src/components/AddGroup/AddGroupMembername/Styles.ts index 106dea6..e887d6f 100644 --- a/src/components/AddGroup/AddGroupMembername/Styles.ts +++ b/src/components/AddGroup/AddGroupMembername/Styles.ts @@ -35,17 +35,6 @@ export const Text = styled.p` text-underline-offset: 5px; `; -export const InportNameContainer = styled.div` - display: absolute; - justify-content: center; - z-index: 10; -`; - -export const InportNameBox = styled.div` - top: -110px; - left: 40px; -`; - export const ListLayout = styled.div` position: relative; width: 350px; diff --git a/src/components/AddGroup/AddGroupMembername/membernameList/Styles.ts b/src/components/AddGroup/AddGroupMembername/membernameList/Styles.ts index c0f8fe6..cb45b17 100644 --- a/src/components/AddGroup/AddGroupMembername/membernameList/Styles.ts +++ b/src/components/AddGroup/AddGroupMembername/membernameList/Styles.ts @@ -7,13 +7,33 @@ export const nameLayout = styled.div` flex-direction: column; min-height: 30px; align-items: center; + /* 전체 스크롤바 */ + ::-webkit-scrollbar { + width: 12px; + } + + /* 스크롤바의 트랙 */ + ::-webkit-scrollbar-track { + background: none; + } + + /* 스크롤바 핸들 */ + ::-webkit-scrollbar-thumb { + background: ${({ theme }) => theme.colors.backgroundPrimary}; + border-radius: 10px; + } + + /* 스크롤바 핸들 호버 */ + ::-webkit-scrollbar-thumb:hover { + background: ${({ theme }) => theme.colors.primary}; + } `; export const nameList = styled.div` position: relative; display: flex; flex-direction: row; - width: 180px; + width: 190px; height: 140px; overflow-y: auto; align-items: center; @@ -40,6 +60,9 @@ export const nameContainer = styled.div` margin: 1px; width: 58px; /* 고정된 너비 */ height: 20px; /* 고정된 높이 */ + &:hover .nameButton { + display: inline; + } `; export const NowImportName = styled(I.NowInportName)` @@ -68,6 +91,7 @@ export const nameButton = styled(I.xCircle)` font-size: 10; color: black; cursor: pointer; + display: none; `; /*입력 영역 */ @@ -93,12 +117,16 @@ export const inputname = styled.input` background: none; z-index: 30; align-items: center; + &::placeholder { + color: ${({ theme }) => theme.colors.tertiary}; + opacity: 1; + } `; export const inputplus = styled(I.PlusCircle)` position: absolute; top: 50%; - right: 20px; + right: 25px; margin-top: -10px; width: 26px; height: 26px; diff --git a/src/components/AddGroup/AddGroupMembername/membernameList/membernameList.tsx b/src/components/AddGroup/AddGroupMembername/membernameList/membernameList.tsx index 8bf6cef..4d3c0e0 100644 --- a/src/components/AddGroup/AddGroupMembername/membernameList/membernameList.tsx +++ b/src/components/AddGroup/AddGroupMembername/membernameList/membernameList.tsx @@ -1,39 +1,78 @@ -import { useState } from 'react'; +import React, { useState } from 'react'; import * as S from './Styles'; +import { useRecoilState } from 'recoil'; +import { namesState } from '../../state'; // Recoil 상태가 정의된 파일을 import + +interface MembernameCreateProps { + addName: (name: string) => void; +} + +const MembernameCreate: React.FC = ({ addName }) => { + const [newName, setNewName] = useState(''); /*상태타입 정의 */ + + const handleAddName = () => { + if (newName.trim() !== '') { + addName(newName.trim()); /*새로운 이름 추가함수 호출 */ + setNewName(''); /*입력 필드 초기화 */ + } + }; + + const handleKeyDown = (event: React.KeyboardEvent) => { + if (event.key === 'Enter') { + handleAddName(); // Enter 키로 이름 추가 + } + }; -function MembernameCreate() { return ( - - + setNewName(e.target.value)} + onKeyDown={handleKeyDown} + /> + 추가 ); -} +}; + +const MembernameList: React.FC = () => { + const [names, setNames] = useRecoilState(namesState); // Recoil 상태 사용 + + const addName = (name: string) => { + const newNames = [...names, name]; + setNames(newNames); + console.log(`이름: ${newNames.join(', ')}`); // 콘솔에 이름 리스트 출력 + }; + + const removeName = (index: number) => { + const newNames = names.filter((_, i) => i !== index); /*이름 제거*/ + setNames(newNames); + console.log(`이름: ${newNames.join(', ')}`); // 콘솔에 이름 리스트 출력 + }; -const membernameList = () => { return ( - - - 황지원 - - - - - 박을순 - - - - - 김똘똘 - + {names.map((name, index) => ( + + + {name} + removeName(index)} + > + ⓧ + + + ))} - + ); }; -export default membernameList; +export default MembernameList; diff --git a/src/components/AddGroup/AddGroupShare/AddGroupshare.tsx b/src/components/AddGroup/AddGroupShare/AddGroupshare.tsx index 53d59bd..566ed7f 100644 --- a/src/components/AddGroup/AddGroupShare/AddGroupshare.tsx +++ b/src/components/AddGroup/AddGroupShare/AddGroupshare.tsx @@ -1,12 +1,16 @@ import React from 'react'; import * as S from './Styles'; +import { useRecoilValue } from 'recoil'; +import { placeState } from '../state'; const AddGroupshare = () => { + const place = useRecoilValue(placeState); + return ( - 제주도 2024 + {place} diff --git a/src/components/AddGroup/AddGroupShare/Styles.ts b/src/components/AddGroup/AddGroupShare/Styles.ts index ae0a33e..f9e7de1 100644 --- a/src/components/AddGroup/AddGroupShare/Styles.ts +++ b/src/components/AddGroup/AddGroupShare/Styles.ts @@ -12,37 +12,44 @@ export const Layout = styled.div` export const AddFileContainer = styled.div` display: flex; + position: absolute; + align-items: center; + justify-content: center; + z-index: 0; + width: 100%; + height: 100%; `; export const File = styled(I.File)` - position: absolute; - top: 50%; - left: 50%; - transform: translate(-50%, -50%); width: 60%; - height: 90%; + height: 100%; `; export const AddFileText = styled.p` font-size: 1.3rem; color: #134b80; position: absolute; - top: 50%; - left: 33%; - text-align: center; z-index: 10; font-weight: bold; + justify-content: center; + align-items: center; `; export const CopyCloudContainer = styled.div` display: flex; + z-index: 20; + position: absolute; + align-items: center; + justify-content: center; + top: 10%; + left: 40%; + width: 100%; + height: 100%; `; export const Cloud = styled(I.Cloud)` - position: absolute; - bottom: calc(43% - 132px - 36.5px); - right: calc(65% - 147.5px - 59px); - z-index: 10; + position: relative; + z-index: 20; width: 30%; height: 40%; `; @@ -50,32 +57,38 @@ export const Cloud = styled(I.Cloud)` export const CopyCloudText = styled.p` font-size: 0.9rem; color: ${({ theme }) => theme.colors.secondary}; - position: absolute; - top: 60.5%; - left: 72%; + position: relative; text-align: center; - z-index: 10; + z-index: 30; + right: 25%; + top: 1.5%; font-weight: bold; `; export const Copy = styled(I.Copy)` - position: absolute; - bottom: calc(41.5% - 132px - 36.5px); - right: calc(68% - 147.5px - 59px); - z-index: 10; + position: relative; + z-index: 30; width: 4%; + right: 25%; + top: 1.5%; height: 40%; `; export const InviteContainer = styled.div` display: flex; + flex-direction: column; + z-index: 20; + position: absolute; + align-items: center; + justify-content: center; + top: 20%; + width: 100%; + height: 100%; `; export const InviteBar = styled(I.InviteBar)` - position: absolute; - bottom: calc(33% - 132px - 36.5px); - right: calc(79% - 147.5px - 59px); - z-index: 10; + position: relative; + z-index: 20; width: 60%; height: 40%; `; @@ -83,30 +96,26 @@ export const InviteBar = styled(I.InviteBar)` export const InviteText = styled.p` font-size: 0.7rem; color: #134b80; - position: absolute; - top: 69.5%; - left: 31%; - text-align: center; - z-index: 10; + position: relative; + z-index: 30; font-weight: bold; + bottom: 21%; `; export const InviteBar2 = styled(I.InviteBar)` - position: absolute; - bottom: calc(26% - 132px - 36.5px); - right: calc(79% - 147.5px - 59px); - z-index: 10; + position: relative; + z-index: 20; width: 60%; height: 40%; + top: 10%; `; export const InviteText2 = styled.p` font-size: 0.7rem; color: #134b80; - position: absolute; - top: 76.5%; - left: 41%; + position: relative; text-align: center; - z-index: 10; + z-index: 30; font-weight: bold; + bottom: 11%; `; diff --git a/src/components/AddGroup/AddGroupSpace/Space.tsx b/src/components/AddGroup/AddGroupSpace/Space.tsx index 855cd64..2a79a23 100644 --- a/src/components/AddGroup/AddGroupSpace/Space.tsx +++ b/src/components/AddGroup/AddGroupSpace/Space.tsx @@ -1,12 +1,28 @@ -import React from 'react'; +import React, { useState } from 'react'; import { useNavigate } from 'react-router-dom'; -import * as S from '../AddGroupHeadCount/Styles'; +import * as S from './Styles'; +import { useRecoilState, useRecoilValue } from 'recoil'; +import { namesState, newtypeState, placeState, typeState } from '../state'; -const HeadCount = () => { +const Space = () => { const navigate = useNavigate(); + const names = useRecoilValue(namesState); + const selectedTypes = useRecoilValue(typeState); + const newType = useRecoilValue(newtypeState); + const [place, setPlace] = useRecoilState(placeState); const handleNextClick = () => { - navigate('/group/add/space'); + // 입력값이 있는 경우 콘솔에 출력 + if (place.trim() !== '') { + console.log( + `이름: ${names.join(', ')} +성격: ${selectedTypes.join(', ')}, ${newType} +장소: ${place}`, + ); + navigate('/group/add/loading'); + } else { + alert('장소를 입력해주세요'); + } }; return ( @@ -15,11 +31,16 @@ const HeadCount = () => { 어디에서 찍은 사진인가요? - 공간을 입력해 주세요. + setPlace(e.target.value)} + /> ); }; -export default HeadCount; +export default Space; diff --git a/src/components/AddGroup/AddGroupHeadCount/Styles.ts b/src/components/AddGroup/AddGroupSpace/Styles.ts similarity index 73% rename from src/components/AddGroup/AddGroupHeadCount/Styles.ts rename to src/components/AddGroup/AddGroupSpace/Styles.ts index 1d36420..37320ce 100644 --- a/src/components/AddGroup/AddGroupHeadCount/Styles.ts +++ b/src/components/AddGroup/AddGroupSpace/Styles.ts @@ -12,11 +12,11 @@ export const Layout = styled.div` export const Fly = styled(I.Fly)` position: absolute; - top: 40%; + top: 38%; left: 50%; transform: translate(-50%, -50%); - width: 5%; - height: 5%; + width: 24px; /* 필요에 따라 크기 조정 */ + height: 24px; `; export const Text = styled.p` @@ -30,24 +30,30 @@ export const Text = styled.p` export const InputCountContainer = styled.div` display: flex; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; `; export const Input = styled(I.Input)` - position: absolute; - top: 53%; - left: 50%; + display: flex; + flex-direction: column; + position: relative; + top: 61%; + left: 45%; transform: translate(-50%, -50%); - width: 70%; + width: 85%; height: 90%; `; -export const InputCounterText = styled.p` +export const InputCounterText = styled.input` font-size: 0.7rem; color: ${({ theme }) => theme.colors.secondary}; - position: absolute; - top: 52%; - left: 30%; + position: relative; + bottom: 25%; text-align: center; + align-items: center; z-index: 10; `; diff --git a/src/components/AddGroup/AddGroupType/GroupType.tsx b/src/components/AddGroup/AddGroupType/GroupType.tsx index d423050..f439478 100644 --- a/src/components/AddGroup/AddGroupType/GroupType.tsx +++ b/src/components/AddGroup/AddGroupType/GroupType.tsx @@ -1,61 +1,63 @@ import React from 'react'; import * as S from './Styles'; import { useNavigate } from 'react-router-dom'; +import MemberTypeList from './MemberTypeList/MemberTypeList'; +import { useRecoilValue } from 'recoil'; +import { namesState, newtypeState, typeState } from '../state'; + +function MemberTypeHead() { + return ( + + + 모임의 성격을 알려주세요. + (중복 선택 가능) + + ); +} + +function MemberTypeContent() { + return ( + + + + ); +} const GroupType = () => { const navigate = useNavigate(); + const names = useRecoilValue(namesState); + const selectedTypes = useRecoilValue(typeState); // 선택된 타입 상태 + const newType = useRecoilValue(newtypeState); // 새로 입력된 타입 상태 const handleNextClick = () => { - navigate('/group/add/loading'); - }; + const trimmedNewType = newType ? newType.trim() : ''; + + if (selectedTypes.length > 0 || trimmedNewType !== '') { + const allTypes = [...selectedTypes]; + + // 새로 입력된 타입이 있는 경우 배열에 추가 + if (trimmedNewType !== '' && !selectedTypes.includes(trimmedNewType)) { + allTypes.push(trimmedNewType); + } + const uniqueTypes = Array.from( + new Set(allTypes.filter((type) => type.trim() !== '')), + ); + console.log( + `이름: ${names.join(', ')} +성격: ${uniqueTypes.join(', ')}`, + ); + navigate('/group/add/space'); + } else { + alert('성격을 선택하거나 입력해주세요'); + } + }; return ( - - - 모임의 성격을 알려주세요. - (중복 선택 가능) - - - 친구 - - - - 연인 - - - - 여행 - - - - 가족 - - - - 정기 모임 - - - - 동아리 - - - - 행사 - - - - 나들이 - - - - 스냅 사진 - - - - 직접 입력 - - - + + + + {/* 다음 버튼 클릭 시 처리 */} + ); }; diff --git a/src/components/AddGroup/AddGroupType/MemberTypeList/MemberTypeList.tsx b/src/components/AddGroup/AddGroupType/MemberTypeList/MemberTypeList.tsx new file mode 100644 index 0000000..b3ee8b6 --- /dev/null +++ b/src/components/AddGroup/AddGroupType/MemberTypeList/MemberTypeList.tsx @@ -0,0 +1,68 @@ +/* eslint-disable prettier/prettier */ +import React from 'react'; +import * as S from './Styles'; +import { useRecoilState } from 'recoil'; +import { newtypeState, typeState } from '../../state'; + + +const MemberTypeCreate = () => { + const [newType, setNewType] = useRecoilState(newtypeState); // Recoil 상태를 사용하여 newType을 관리합니다. + + return ( + + + setNewType(e.target.value)} + /> + + ); +}; + +const MemberTypeList: React.FC = () => { + const initialTypes = [ + '친구', + '연인', + '여행', + '가족', + '정기 모임', + '동아리', + '행사', + '나들이', + '스냅 사진', + ]; + + + const [selectedTypes, setSelectedTypes] = useRecoilState(typeState); // 선택된 타입 상태 추가 + + const handleTypeClick = (Type: string) => { + setSelectedTypes((prevSelectedTypes) => + prevSelectedTypes.includes(Type) + ? prevSelectedTypes.filter((type) => type !== Type) // 이미 선택된 경우 제거 + : [...prevSelectedTypes, Type] // 선택되지 않은 경우 추가 + ); + }; + + + return ( + + + {initialTypes.map((Type, index) => ( + handleTypeClick(Type)}> + + + {Type} + + + ))} + + + + ); +}; + +export default MemberTypeList; diff --git a/src/components/AddGroup/AddGroupType/MemberTypeList/Styles.ts b/src/components/AddGroup/AddGroupType/MemberTypeList/Styles.ts new file mode 100644 index 0000000..229558a --- /dev/null +++ b/src/components/AddGroup/AddGroupType/MemberTypeList/Styles.ts @@ -0,0 +1,109 @@ +import * as I from 'assets/icon'; +import styled from 'styled-components'; + +/*리스트 영역 */ +export const TypeLayout = styled.div` + display: flex; + flex-direction: column; + min-height: 30px; + align-items: center; + /* 전체 스크롤바 */ + ::-webkit-scrollbar { + width: 12px; + } + + /* 스크롤바의 트랙 */ + ::-webkit-scrollbar-track { + background: none; + } + + /* 스크롤바 핸들 */ + ::-webkit-scrollbar-thumb { + background: ${({ theme }) => theme.colors.Primary}; + border-radius: 10px; + } + + /* 스크롤바 핸들 호버 */ + ::-webkit-scrollbar-thumb:hover { + background: ${({ theme }) => theme.colors.primary}; + } +`; + +export const TypeList = styled.div` + position: relative; + display: flex; + flex-direction: row; + width: 300px; + height: 200px; + overflow-y: auto; + align-items: center; + justify-content: center; + z-index: 10; + background: none; + flex-wrap: wrap; + bottom: 30px; +`; + +export const TypeContainer = styled.div` + display: flex; + justify-content: center; + align-items: center; + z-index: 30; + position: relative; + background: none; + margin: 2px; + width: 82px; /* 고정된 너비 */ + height: 30px; /* 고정된 높이 */ + &:hover .TypeButton { + display: inline; + } +`; + +export const NowImportType = styled(I.GroupBtn)` + position: absolute; + width: 71px; + z-index: 0; + align-items: center; +`; + +export const Type = styled.p` + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + z-index: 5; + font-size: 0.8rem; + color: ${({ theme }) => theme.colors.primary}; +`; + +/*입력 영역 */ + +export const TypeCreateLayout = styled.div` + display: flex; + flex-direction: column; + position: absolute; + margin-top: 210px; + align-items: center; + justify-content: center; +`; + +export const TypeInput = styled(I.InputGroupType)` + position: relative; + width: 250px; + z-index: 10; +`; + +export const inputType = styled.input` + display: inline-block; + position: relative; + padding: 0 20px 0 30px; + width: 100%; + height: 40px; + background: none; + z-index: 30; + bottom: 39px; + align-items: center; + &::placeholder { + color: ${({ theme }) => theme.colors.primary}; + opacity: 1; + } +`; diff --git a/src/components/AddGroup/AddGroupType/Styles.ts b/src/components/AddGroup/AddGroupType/Styles.ts index 6a07e9f..3279cb0 100644 --- a/src/components/AddGroup/AddGroupType/Styles.ts +++ b/src/components/AddGroup/AddGroupType/Styles.ts @@ -1,97 +1,59 @@ import * as I from 'assets/icon'; import styled from 'styled-components'; -export const Layout = styled.div` +export const MemberTypeLayout = styled.div` display: flex; flex-direction: column; + justify-content: center; align-items: center; + height: 80vh; +`; + +export const headingLayout = styled.div` + position: relative; + margin-bottom: 80px; + width: 330px; + text-align: center; justify-content: center; - width: 100%; - height: 100%; `; export const Fly = styled(I.Fly)` - position: absolute; - top: 18%; - left: 50%; - transform: translate(-50%, -50%); - width: 5%; - height: 5%; + display: inline-block; /* SVG를 인라인 블록으로 표시 */ + vertical-align: middle; /* 수직 정렬을 맞춤 */ + width: 24px; /* 필요에 따라 크기 조정 */ + height: 24px; /* 필요에 따라 크기 조정 */ + margin: 10 auto; + margin-bottom: 19px; `; export const Text = styled.p` - font-size: 0.8rem; + font-size: 0.7rem; color: ${({ theme }) => theme.colors.primary}; - position: absolute; + position: relative; top: 22%; text-decoration: underline; - text-underline-offset: 20px; + text-underline-offset: 15px; `; export const SelectText = styled.p` font-size: 0.5rem; color: ${({ theme }) => theme.colors.primary}; - position: absolute; - top: 24%; -`; - -interface ContainerProps { - top?: string; - left?: string; -} - -export const TypeContainer = styled.div` - display: flex; position: relative; - top: ${({ top }) => top || 'auto'}; - left: ${({ left }) => left || 'auto'}; -`; - -export const GroupBtn = styled(I.GroupBtn)` - position: absolute; - transform: translate(-50%, -50%); + top: 26%; `; -export const InputTypeText = styled.p` - font-size: 0.8rem; - color: ${({ theme }) => theme.colors.primary}; - position: absolute; - z-index: 10; - writing-mode: vertical-lr; - text-align: center; - transform: translate(-50%, -50%); -`; - -export const InputTypeContainer = styled.div` - display: flex; -`; - -export const InputGroupType = styled(I.InputGroupType)` - position: absolute; - top: 58%; - left: 50%; - transform: translate(-50%, -50%); - width: 70%; - height: 90%; -`; - -export const InputGroupTypeText = styled.p` - font-size: 0.8rem; - color: ${({ theme }) => theme.colors.primary}; - position: absolute; - top: 57%; - left: 30%; - text-align: center; - z-index: 10; - transform: translate(-80%, 20%); +export const TypeListLayout = styled.div` + position: relative; + width: 350px; + height: 300px; `; export const NextArrow = styled(I.NextArrowCircle)` position: absolute; - bottom: calc(36% - 12px - 36.5px); - right: calc(35% - 12.5px - 59px); + bottom: calc(25% - 12px - 36.5px); + right: calc(40% - 12.5px - 59px); z-index: 15; width: 9%; /* Adjust width as needed */ - height: 9%; + height: 20%; cursor: pointer; `; diff --git a/src/components/AddGroup/state.tsx b/src/components/AddGroup/state.tsx new file mode 100644 index 0000000..d5ab76e --- /dev/null +++ b/src/components/AddGroup/state.tsx @@ -0,0 +1,24 @@ +import { atom } from 'recoil'; + +// 이름 상태 +export const namesState = atom({ + key: 'namesState', + default: [], +}); + +//성격 상태 추가 +export const typeState = atom({ + key: 'typeState', + default: [], +}); + +export const newtypeState = atom({ + key: 'newtypeState', + default: '', +}); + +// 장소 상태 추가 +export const placeState = atom({ + key: 'placeState', + default: '', +}); diff --git a/src/pages/AddGroupMain/AddGroupInputCount.tsx b/src/pages/AddGroupMain/AddGroupInputCount.tsx deleted file mode 100644 index 153e3c0..0000000 --- a/src/pages/AddGroupMain/AddGroupInputCount.tsx +++ /dev/null @@ -1,17 +0,0 @@ -import React from 'react'; -import Header from 'components/Header/Header'; -import NavigationBar from 'components/navigationbar/NavigationBar'; -import AddGroupHeadCount from 'components/AddGroup/AddGroupHeadCount/HeadCount'; -import * as S from './Styles'; - -const AddGroupInputCount: React.FC = () => { - return ( - -
-
- - - ); -}; - -export default AddGroupInputCount;