diff --git a/src/components/recruit/recruitDetail/modal/ApplyModal.styled.ts b/src/components/recruit/recruitDetail/modal/ApplyModal.styled.ts index 53538dfe..54b97bc2 100644 --- a/src/components/recruit/recruitDetail/modal/ApplyModal.styled.ts +++ b/src/components/recruit/recruitDetail/modal/ApplyModal.styled.ts @@ -86,6 +86,7 @@ const Modal = styled.section` } .container-user__info { + width: 44rem; border-radius: 0.8rem; border: 1px solid #e3e3e3; background-color: #fff; diff --git a/src/components/recruit/recruitDetail/modal/postingDelete/PostingDelete.tsx b/src/components/recruit/recruitDetail/modal/postingDelete/PostingDelete.tsx index 1c4972d0..8f14081c 100644 --- a/src/components/recruit/recruitDetail/modal/postingDelete/PostingDelete.tsx +++ b/src/components/recruit/recruitDetail/modal/postingDelete/PostingDelete.tsx @@ -16,6 +16,7 @@ const PostingDelete = () => { mutationFn: (pageNum: number) => deletePostingRecruit(pageNum), onSuccess: () => { navigate('/'); + setIsDelete(false); }, }); diff --git a/src/components/recruit/recruitDetail/recruitDescription/RecruitDescription.styled.ts b/src/components/recruit/recruitDetail/recruitDescription/RecruitDescription.styled.ts index 256a1f0a..5d1aae78 100644 --- a/src/components/recruit/recruitDetail/recruitDescription/RecruitDescription.styled.ts +++ b/src/components/recruit/recruitDetail/recruitDescription/RecruitDescription.styled.ts @@ -19,6 +19,11 @@ const RecruitDescription = styled.article` letter-spacing: 0.0032rem; box-sizing: border-box; line-height: 1.75; + letter-spacing: 2%; + + .empty-p { + line-height: 1.2; + } h1 { font-size: 3.2rem; diff --git a/src/components/recruit/recruitDetail/recruitDescription/RecruitDescription.tsx b/src/components/recruit/recruitDetail/recruitDescription/RecruitDescription.tsx index 4335ece5..30936a08 100644 --- a/src/components/recruit/recruitDetail/recruitDescription/RecruitDescription.tsx +++ b/src/components/recruit/recruitDetail/recruitDescription/RecruitDescription.tsx @@ -3,6 +3,22 @@ import S from './RecruitDescription.styled'; import DOMPurify from 'dompurify'; const RecruitDescription = ({ content }: { content: string }) => { + function addClassToEmptyPTags(html: string): string { + const parser = new DOMParser(); + const doc = parser.parseFromString(html, 'text/html'); + const pTags = doc.getElementsByTagName('p'); + + for (let i = 0; i < pTags.length; i++) { + if (pTags[i].innerHTML === ' ') { + pTags[i].classList.add('empty-p'); + } + } + + return doc.body.innerHTML; + } + + const processedContent = addClassToEmptyPTags(content); + return (

상세내용

@@ -10,7 +26,7 @@ const RecruitDescription = ({ content }: { content: string }) => {
diff --git a/src/constant/textEditor.ts b/src/constant/textEditor.ts index 47ddf3c8..f479089d 100644 --- a/src/constant/textEditor.ts +++ b/src/constant/textEditor.ts @@ -1,56 +1,54 @@ import DOMPurify from 'dompurify'; export const DEFAULT_VALUE = ` - - -

1. 프로젝트 계기

+

1. 프로젝트 계기

  -- 해당 프로젝트를 시작하게된 계기를 적어주세요. -ex) 대학생 때는 전공을 불문하고, 굉장히 많은 팀프로젝트를 하게 됩니다. 하지만 프로젝트를 진행하면서 팀원 때문에 고통받는 사람들을 여럿 볼 수 있는데요! 그런 사람들에게 도움이 되는 플랫폼을 만들면 좋겠다고 생각했어요! +- 해당 프로젝트를 시작하게된 계기를 적어주세요. +ex) 대학생 때는 전공을 불문하고, 굉장히 많은 팀프로젝트를 하게 됩니다. 하지만 프로젝트를 진행하면서 팀원 때문에 고통받는 사람들을 여럿 볼 수 있는데요! 그런 사람들에게 도움이 되는 플랫폼을 만들면 좋겠다고 생각했어요!   -- 만들고자 하는 프로덕트에 대해 알려주세요.  -ex) 대학생을 위한 프로젝트 구인 플랫폼을 만들고자 합니다. 대학생동안 많은 팀프로젝트를 하면서 나랑 잘 어울리는 팀원과 만날 수 있는 플랫폼이에요. 궁극적인 목표는 프로젝트에서 팀원을 구할 때, 오픈된 프로필을 바탕으로 자신의 니즈에 맞는 팀원을 구하는데 도움을 주는 플랫폼을 만들고자 합니다. 더불어 우리는 해당 플랫폼을 바탕으로 팀 프로젝트 할 때 서로의 능력을 오픈하는 문화를 만들고 싶습니다! +- 만들고자 하는 프로덕트에 대해 알려주세요.  +ex) 대학생을 위한 프로젝트 구인 플랫폼을 만들고자 합니다. 대학생동안 많은 팀프로젝트를 하면서 나랑 잘 어울리는 팀원과 만날 수 있는 플랫폼이에요. 궁극적인 목표는 프로젝트에서 팀원을 구할 때, 오픈된 프로필을 바탕으로 자신의 니즈에 맞는 팀원을 구하는데 도움을 주는 플랫폼을 만들고자 합니다. 더불어 우리는 해당 플랫폼을 바탕으로 팀 프로젝트 할 때 서로의 능력을 오픈하는 문화를 만들고 싶습니다!   -- 어떤 사용자들을 타겟하고 있는지 적어주세요  -ex) 아무래도 주 타겟은 전국 대학생이에요! 이후에는 직장인까지 확장해보고 싶어요! +- 어떤 사용자들을 타겟하고 있는지 적어주세요  +ex) 아무래도 주 타겟은 전국 대학생이에요! 이후에는 직장인까지 확장해보고 싶어요!     -

2. 회의 진행/모임 방식

  +

2. 회의 진행/모임 방식

    -- 1주에 몇번정도 회의나 모임을 진행할 계획인가요?  -ex) 1주일에 1~2회 정기회의가 있습니다. +- 1주에 몇번정도 회의나 모임을 진행할 계획인가요?  +ex) 1주일에 1~2회 정기회의가 있습니다.   -- 온/오프라인 회의 진행시 진행방식을 적어주세요.  -ex) 온라인은 줌을 활용하고, 공유 사무실 공간이 있습니다. 문서화는 노션을 지향합니다. +- 온/오프라인 회의 진행시 진행방식을 적어주세요.  +ex) 온라인은 줌을 활용하고, 공유 사무실 공간이 있습니다. 문서화는 노션을 지향합니다.     -

3. 우리 팀 문화는요

+

3. 우리 팀 문화는요

  -- 프로젝트 동안 지향하는 문화를 적어주세요. -ex) 저희는 신속한 의사소통을 지향해요. \n회의시간은 1시간 내로 제한하려고 해요. 그리고 오버커뮤니케이션을 지향해요.\n +- 프로젝트 동안 지향하는 문화를 적어주세요. +ex) 저희는 신속한 의사소통을 지향해요. \n회의시간은 1시간 내로 제한하려고 해요. 그리고 오버커뮤니케이션을 지향해요.\n   -- 프로젝트 동안 지양하는 문화를 적어주세요. -ex) 누군가 단독적인 의사결정을 기피하고 있어요. +- 프로젝트 동안 지양하는 문화를 적어주세요. +ex) 누군가 단독적인 의사결정을 기피하고 있어요.     -

4. 저는 누구냐면요

+

4. 저는 누구냐면요

  -- 전문적으로 담당한 업무나, 별도로 진행하신 팀 프로젝트가 있으시다면 적어주세요. -ex) 실무에서 서버 개발 경험이 있습니다. 뿐만 아니라 작은 팀을 이끈 경험도 여러 번 있어요. +- 전문적으로 담당한 업무나, 별도로 진행하신 팀 프로젝트가 있으시다면 적어주세요. +ex) 실무에서 서버 개발 경험이 있습니다. 뿐만 아니라 작은 팀을 이끈 경험도 여러 번 있어요.   -- 이 프로젝트에서 나(리더) 역할을 적어주세요. -ex) 전체적인 프로덕트 매니징은 제가 주로 담당할 예정이에요! 여러분은 개발에만 집중할 수 있게끔 노력할게요! +- 이 프로젝트에서 나(리더) 역할을 적어주세요. +ex) 전체적인 프로덕트 매니징은 제가 주로 담당할 예정이에요! 여러분은 개발에만 집중할 수 있게끔 노력할게요!     -

5. 기타사항

+

5. 기타사항

  -- 이외에 미래의 팀원들에게 알려줄 내용이 있다면 적어주세요. -ex) 매주 금요일 저녁 일정이 있습니다. +- 이외에 미래의 팀원들에게 알려줄 내용이 있다면 적어주세요. +ex) 매주 금요일 저녁 일정이 있습니다.   `; const lines = DEFAULT_VALUE.split('\n') - .map(line => `

${line}

`) + .map(line => `

${line}

`) .join(''); export const SAFE_DEFAULT_VALUE = DOMPurify.sanitize(lines); diff --git a/src/globalStyle.css b/src/globalStyle.css index 002a2f69..bf697865 100644 --- a/src/globalStyle.css +++ b/src/globalStyle.css @@ -90,15 +90,6 @@ video { font: inherit; vertical-align: baseline; box-sizing: border-box; - user-select: none; - -webkit-user-select: none; - /* (safari, chrome) browsers */ - -moz-user-select: none; - /* mozilla browsers */ - -khtml-user-select: none; - /* konqueror browsers */ - - -ms-user-select: none; /* IE10+ */ } /* HTML5 display-role reset for older browsers */ article, diff --git a/src/pages/recruit/recruitDetailPage/RecruitDetailPage.tsx b/src/pages/recruit/recruitDetailPage/RecruitDetailPage.tsx index 2b521fdf..82d5f210 100644 --- a/src/pages/recruit/recruitDetailPage/RecruitDetailPage.tsx +++ b/src/pages/recruit/recruitDetailPage/RecruitDetailPage.tsx @@ -59,7 +59,6 @@ const RecruitDetailPage = () => { queryFn: () => getPostingData({ pageNum, isLogin }), }); - console.log(detailedData?.comments); const period = detailedData?.proceedingStart + ' ~ ' + detailedData?.proceedingEnd; const diffDate = detailedData && calculateDate(detailedData.deadline); const totalCommentsCount = useMemo(() => {