Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Styling/#124 #132

Merged
merged 50 commits into from
Jul 17, 2024
Merged
Show file tree
Hide file tree
Changes from 48 commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
5a7bec2
chore: Add navigation buttons to navigation bar for larger screens
seonghunYang Jun 25, 2024
6f47927
refactor: Update navigation bar to use NavigationItem component for l…
seonghunYang Jun 25, 2024
173f84e
refactor: Update navigation bar to use NavigationItems component for …
seonghunYang Jun 26, 2024
b98b09a
refactor: Update navigation bar to use NavigationItems component for …
seonghunYang Jun 26, 2024
afe50f7
refactor: Update navigation bar to use NavigationItems component for …
seonghunYang Jun 26, 2024
47fad13
[web] refactor: Update sign-in page layout to use flexbox for better …
seonghunYang Jun 27, 2024
c48cb97
[web] refactor: Update sign-in page layout to use flexbox for better …
seonghunYang Jun 27, 2024
9ce5fbd
[web] refactor: Update sign-up terms page layout and content
seonghunYang Jun 27, 2024
840bbd8
refactor: Update sign-up page to use SignUp component
seonghunYang Jun 27, 2024
4650e12
refactor: Update sign-in page layout to use flexbox for better respon…
seonghunYang Jun 28, 2024
b850880
refactor: Update sign-up page layout and content
seonghunYang Jun 28, 2024
8bc64f5
refactor: Update sign-up page layout to center the image
seonghunYang Jun 28, 2024
cb8b5ca
refactor: Update sign-up success page layout and content
seonghunYang Jun 28, 2024
1c19971
refactor: Update API base URL to staging environment
seonghunYang Jun 29, 2024
625f704
refactor: Handle non-200 response in createUser function
seonghunYang Jun 29, 2024
c6f2785
refactor: Update user login error message status code
seonghunYang Jun 29, 2024
672bb58
refactor: Update API base URL to staging environment
seonghunYang Jun 29, 2024
60a1f13
refactor: Update sign-up page layout and content
seonghunYang Jun 29, 2024
eeefa78
refactor: Update sign-up page layout and content
seonghunYang Jun 29, 2024
1ffc88f
refactor: Add Separator component for UI layout consistency
seonghunYang Jun 29, 2024
d326c5f
refactor: Add buttons for account management in sign-in page
seonghunYang Jun 29, 2024
39269a1
refactor: Update sign-in page layout and content
seonghunYang Jun 29, 2024
c35a52c
refactor: Add links to sign-in page buttons for better user navigation
seonghunYang Jun 29, 2024
e24a9a7
refactor: Update sign-up page layout and content
seonghunYang Jun 29, 2024
76f763f
refactor: Update sign-up success page layout and content
seonghunYang Jun 29, 2024
5982e45
refactor: Update user authentication API endpoint
seonghunYang Jun 30, 2024
898dc56
refactor: Update API base URL to staging environment
seonghunYang Jun 30, 2024
78f5ddc
refactor: Update user authentication API endpoint
seonghunYang Jun 30, 2024
c363da3
refactor: Remove unused validateToken function from user command
seonghunYang Jun 30, 2024
b1d3687
refactor: Synchronize user command and validation code
seonghunYang Jun 30, 2024
a91daab
refactor: Synchronize user command and validation code
seonghunYang Jun 30, 2024
a4090b5
refactor: Update user delete modal layout and content
seonghunYang Jun 30, 2024
061d5c1
refactor: Update user delete modal layout and content
seonghunYang Jul 10, 2024
9cc47c6
refactor: Replace loading spinner with sign-up form skeleton
seonghunYang Jul 10, 2024
3a080d4
refactor: Update user sign-out functionality and delete cookies
seonghunYang Jul 10, 2024
962666e
chore: Update API_PATH in result-handler.mock.ts
seonghunYang Jul 10, 2024
4275317
chore: Add Vercel production deployment workflow
seonghunYang Jul 10, 2024
70d7eef
chore: Add div wrapper for submit button in UploadTakenLecture component
seonghunYang Jul 10, 2024
7b2c0bb
refactor: Update heading size and padding in Manual component
seonghunYang Jul 10, 2024
afe89e7
chore: Update language options in sign-up form
seonghunYang Jul 10, 2024
911c04e
refactor: Remove unnecessary comments and improve user-related functions
seonghunYang Jul 10, 2024
b197e63
Update app/business/services/user/user.validation.ts
seonghunYang Jul 14, 2024
1f43663
chore: Update navigation link for team introduction
seonghunYang Jul 14, 2024
af8f899
refactor: Update NavigationItems component to use TypeScript interface
seonghunYang Jul 14, 2024
e16125a
refactor: Update user query to handle both UserInfoResponse and InitU…
seonghunYang Jul 14, 2024
d574585
refactor: Update useFunnel hook to handle default step when step is n…
seonghunYang Jul 16, 2024
01d5efa
feat: Update API URLs and setup URL utility function
seonghunYang Jul 16, 2024
e0dfdbf
refactor: Add refreshToken function for handling token refresh
seonghunYang Jul 16, 2024
e0d2f17
Merge branch 'main' into styling/#124
seonghunYang Jul 17, 2024
b04114f
Update app/utils/api/setup-url.util.ts
seonghunYang Jul 17, 2024
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
22 changes: 22 additions & 0 deletions .github/workflows/ci-cd.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: Vercel Production Deployment

env:
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID }}
on:
push:
branches:
- main
jobs:
Deploy-Production:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install Vercel CLI
run: npm install --global vercel@latest
- name: Pull Vercel Environment Information
run: vercel pull --yes --environment=production --token=${{ secrets.VERCEL_TOKEN }}
- name: Build Project Artifacts
run: vercel build --prod --token=${{ secrets.VERCEL_TOKEN }}
- name: Deploy Project Artifacts to Vercel
run: vercel deploy --prebuilt --prod --token=${{ secrets.VERCEL_TOKEN }}
6 changes: 5 additions & 1 deletion app/(sub-page)/components/navigation-bar.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import SideNavigationBar from './side-navigation-bar';
import UserInfoNavigator from '@/app/ui/user/user-info-navigator/user-info-navigator';
import SignButtonGroup from '@/app/ui/user/user-info-navigator/sign-button-group';
import Link from 'next/link';
import NavigationItems from './navigation-items';

export default function NavigationBar() {
return (
Expand All @@ -13,7 +14,10 @@ export default function NavigationBar() {
<Image className="md:h-10 h-7 w-[110px] md:w-[150px]" width={150} height={100} src={logo} alt="main-logo" />
</Link>
<Responsive maxWidth={1023}>
<SideNavigationBar header={<UserInfoNavigator />} content={<div>μ½˜ν…μΈ </div>} footer={<SignButtonGroup />} />
<SideNavigationBar header={<UserInfoNavigator />} content={<NavigationItems />} footer={<SignButtonGroup />} />
</Responsive>
<Responsive minWidth={1024}>
<NavigationItems />
</Responsive>
</div>
);
Expand Down
45 changes: 45 additions & 0 deletions app/(sub-page)/components/navigation-items.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
import { auth } from '@/app/business/services/user/user.query';
import Button from '@/app/ui/view/atom/button/button';
import Link from 'next/link';
import { ChevronRightIcon } from 'lucide-react';

export default async function NavigationItems() {
const userInfo = await auth();

return (
<div className="flex flex-col lg:flex-row divide-y lg:divide-y-0 ">
{userInfo ? (
<>
<NavigationItem href={'/my'} label="λ§ˆμ΄νŽ˜μ΄μ§€" />
<NavigationItem href={'/result'} label="결과확인" />
</>
) : (
<NavigationItem href={'/sign-in'} label="둜그인" />
)}
<NavigationItem href={'/tutorial'} label="νŠœν† λ¦¬μ–Ό" />
<NavigationItem
href={'https://soft-anorak-0ca.notion.site/e35e3b210995463fa748f35aab536f2c?pvs=74'}
label="νŒ€μ†Œκ°œ"
/>
</div>
);
}

interface NavigationItemProps {
href: string;
label: string;
}

export function NavigationItem({ href, label }: NavigationItemProps) {
return (
<Link href={href} className="flex items-center justify-between">
<Button
size={'xs'}
className="text-black lg:text-white hover:text-slate-400 lg:text-base text-lg my-1"
variant={'text'}
label={label}
/>
<ChevronRightIcon className="h-4 w-4 lg:hidden text-black" />
</Link>
);
}
4 changes: 2 additions & 2 deletions app/(sub-page)/grade-upload/components/manual.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@ export default function Manual() {
return (
<div className="flex justify-center">
<div className="flex flex-col gap-6">
<h1 className="text-center text-3xl font-bold p-4 border-b-2 border-gray-100 md:text-4xl">
<h1 className="text-center text-2xl font-bold p-4 border-b-2 border-gray-100 md:text-4xl">
ν•œ 번의 μ„±μ ν‘œ μž…λ ₯으둜
<br /> λ§žμΆ€ν˜• κ²°κ³Όλ₯Ό ν™•μΈν•˜μ„Έμš” !
</h1>
<div className="text-base flex flex-col gap-2 md:text-lg">
<div className="text-base px-6 md:px-0 flex flex-col gap-2 md:text-lg">
<div>
1.
<a
Expand Down
4 changes: 2 additions & 2 deletions app/(sub-page)/my/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import TakenLectureSkeleton from '@/app/ui/lecture/taken-lecture/taken-lecture.s
export default function MyPage() {
return (
<>
<ContentContainer className="flex">
<ContentContainer className="flex pt-10 lg:pt-16">
<Responsive minWidth={1023}>
<div className="lg:w-[30%]">
<Suspense fallback={<UserInfoNavigatorSkeleton />}>
Expand All @@ -25,7 +25,7 @@ export default function MyPage() {
</Suspense>
</div>
</Responsive>
<div className="w-full lg:w-[70%] lg:px-[20px] pt-12 pb-2 flex flex-col gap-12">
<div className="w-full lg:w-[70%] px-7 lg:px-[20px] pt-4 pb-2 flex flex-col gap-12">
<MyResultContainer />
<Suspense fallback={<TakenLectureSkeleton />}>
<TakenLecture />
Expand Down
34 changes: 32 additions & 2 deletions app/(sub-page)/sign-in/page.tsx
Original file line number Diff line number Diff line change
@@ -1,10 +1,40 @@
import SignInForm from '@/app/ui/user/sign-in-form/sign-in-form';
import ContentContainer from '@/app/ui/view/atom/content-container/content-container';
import TitleBox from '@/app/ui/view/molecule/title-box/title-box';
import Image from 'next/image';
import MaruImage from '@/public/assets/mju-maru.jpg';
import Separator from '@/app/ui/view/atom/separator';
import Button from '@/app/ui/view/atom/button/button';
import Responsive from '@/app/ui/responsive';
import Link from 'next/link';

export default function Page() {
return (
Copy link
Member

Choose a reason for hiding this comment

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

λͺ‡λͺ‡ νŽ˜μ΄μ§€ μ»΄ν¬λ„ŒνŠΈλŠ” MyPage, ResultPage둜 넀이밍이 λ˜μ–΄μžˆκ³ , λͺ‡λͺ‡ νŽ˜μ΄μ§€ μ»΄ν¬λ„ŒνŠΈλŠ” 별닀λ₯Έ 이름 지정 없이 Page둜 λ˜μ–΄μžˆλ„€μš”! ν†΅μΌν•˜λ©΄ 쒋을 것 κ°™μ•„μš”

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

이 뢀뢄은 λ³‘ν•©ν•œ 후에 ν†΅μΌν•˜λŠ” 과정을 μ§„ν–‰ν•˜λ„λ‘ ν•˜κ² μŠ΅λ‹ˆλ‹€.

<ContentContainer className="md:w-[768px]">
<SignInForm />
<ContentContainer className="md:w-[768px] h-[550px] xl:w-[960px] flex p-9">
<Responsive minWidth={767}>
<div className="w-2/4">
<Image className="object-cover h-full" src={MaruImage} alt="마루" />
</div>
</Responsive>
<div className="w-full md:w-2/4 md:pl-7 ">
<div className="pb-12">
<TitleBox title={'둜그인'} />
</div>
<SignInForm />
<div className="flex mt-12 space-x-4 h-6 items-center justify-center">
<Link href={'/'}>
<Button className="text-xs" label="아이디 μ°ΎκΈ°" variant={'text'} />
</Link>
<Separator orientation={'vertical'} />
<Link href={'/'}>
<Button className="text-xs" label="λΉ„λ°€λ²ˆν˜Έ μž¬μ„€μ •" variant={'text'} />
</Link>
<Separator orientation={'vertical'} />
<Link href={'/sign-up'}>
<Button className="text-xs" label="νšŒμ›κ°€μž…" variant={'text'} />
</Link>
</div>
</div>
</ContentContainer>
);
}
4 changes: 2 additions & 2 deletions app/(sub-page)/sign-up/components/sign-up-container.tsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
'use client';
import useFunnel from '@/app/hooks/useFunnel';
import SignUpForm from '@/app/ui/user/sign-up-form/sign-up-form';
import SignUpTerm from './sign-up-terms';
import SignUpSuccess from './sign-up-success';
import SignUp from './sign-up';

export default function SignUpContainer() {
const { Funnel, setStep } = useFunnel<'terms' | 'form' | 'success'>('terms');
Expand All @@ -18,7 +18,7 @@ export default function SignUpContainer() {
/>
</Funnel.Step>
<Funnel.Step name="form">
<SignUpForm
<SignUp
onNext={() => {
setStep('success');
}}
Expand Down
26 changes: 11 additions & 15 deletions app/(sub-page)/sign-up/components/sign-up-success.tsx
Original file line number Diff line number Diff line change
@@ -1,25 +1,21 @@
import Button from '@/app/ui/view/atom/button/button';
import TitleBox from '@/app/ui/view/molecule/title-box/title-box';
import Link from 'next/link';

// λ‚΄μš©μ΄λž‘ μŠ€νƒ€μΌμ€ mock인 μƒνƒœμž…λ‹ˆλ‹€.
export default function SignUpSuccess() {
return (
<div className="min-h-screen bg-gray-100 flex items-center justify-center px-4 sm:px-6">
<div className="max-w-md w-full space-y-8">
<div className="space-y-2">
<h2 className="text-3xl font-extrabold tracking-tight">Youre all set.</h2>
<p className="text-gray-500">
Thanks for signing up! We just need to verify your email address to complete the process.
</p>
</div>
<div className="space-y-4">
<div className="grid grid-cols-2 gap-4">
<Link className="inline-block w-full" href="/sign-in">
<Button className="w-full" label={'둜그인 ν•˜κΈ°'} />
</Link>
</div>
<>
<TitleBox title={'νšŒμ›κ°€μž… μ™„λ£Œ'} />
<div className="h-[260px] text-2xl font-bold flex flex-col items-center justify-center space-y-2">
<div>νšŒμ›κ°€μž…μ΄ μ™„λ£Œλ˜μ—ˆμŠ΅λ‹ˆλ‹€</div>
<div className="text-xl font-medium">둜그인 ν›„ μ‘Έμ—… 사정 κ²°κ³Όλ₯Ό ν™•μΈν•΄λ³΄μ„Έμš”!</div>
<div className="pt-6">
<Link href="/sign-in">
<Button size={'md'} label={'둜그인 ν•˜κΈ°'} />
</Link>
</div>
</div>
</div>
</>
);
}
87 changes: 52 additions & 35 deletions app/(sub-page)/sign-up/components/sign-up-terms.tsx
Original file line number Diff line number Diff line change
@@ -1,54 +1,71 @@
import Button from '@/app/ui/view/atom/button/button';
import TitleBox from '@/app/ui/view/molecule/title-box/title-box';

interface SignUpTermProps {
onNext?: () => void;
}

// μ•½κ΄€ λ‚΄μš©μ΄λž‘ μŠ€νƒ€μΌμ€ mock인 μƒνƒœμž…λ‹ˆλ‹€.
// μ•½κ΄€λ‚΄μš© μ΅œμ‹ ν™” ν•„μš”(* 검사 λŒ€μƒ)
export default function SignUpTerm({ onNext }: SignUpTermProps) {
const handleAgreeButtonClick = () => {
onNext?.();
};

return (
<div className="max-w-2xl mx-auto my-8 p-6 bg-white rounded-lg shadow-md">
<h1 className="text-3xl font-bold text-center mb-6">μ•Œλ¦Όλ…μ˜ μ•ˆλ‚΄λ¬Έ</h1>
<ul className="list-disc space-y-4 text-sm">
<li>
ν˜„μž¬ 저희 κΈ°λŠ₯은 ν•œκ΅­-ν•œκ΅­μ€ μ•„λ‹ˆλΌ ν•œκ΅­-외ꡭ도 κ°€λŠ₯ν•©λ‹ˆλ‹€. κ°μ‚¬λ³„μ—μ„œ μˆ˜ν•˜μΈ 없더라도 저희가 λ°›λŠ”λ°κΉŒμ§€λŠ”
λ¬΄κ΄€ν•©λ‹ˆλ‹€λ§Œ, κΌ­ κ΄€μ„Έμ‚¬λ¬΄μ†Œμ™€ ν˜‘μ˜ν•˜μ„Έμš”!
<ul className="list-disc ml-6 mt-2">
<li>λŒ€μƒ: κ΅­μ™Έλ°œμ†‘, λΆλΆ€λ°œμ†‘, μ‚¬νšŒλ³΅μ§€λŒ€μƒ, ICTμš©ν’ˆλŒ€μƒ, μΌλ°˜λŒ€μƒ, λ―Έλž˜μš©ν’ˆλŒ€μƒ(확인)</li>
<li>λ°œμ†‘: 16 ~ 22μ‹œλ°œ</li>
<div className=" mx-auto my-8 md:p-6 bg-white ">
<TitleBox title="μ•½κ΄€λ™μ˜">
<div className="border p-6 pl-8 rounded-lg">
<ul className="list-disc space-y-4 text-sm ">
<li>
ν˜„μž¬ 검사 κ°€λŠ₯ν•œ ν•™κ³Ό-ν•™λ²ˆμ€ μ•„λž˜κ³Ό κ°™μŠ΅λ‹ˆλ‹€. κ²€μ‚¬λŒ€μƒμ— μ†ν•˜μ§€ μ•Šλ‹€λ©΄ 검사가 λΆˆκ°€λŠ₯ν•©λ‹ˆλ‹€. κΌ­
κ²€μ‚¬λŒ€μƒμΈμ§€ ν™•μΈν•˜μ„Έμš”!
<ul className="list-disc ml-6 mt-2">
<li>
λŒ€ν•™: κ²½μ˜λŒ€ν•™, λ²•κ³ΌλŒ€ν•™, μ‚¬νšŒκ³Όν•™λŒ€ν•™, ICTμœ΅ν•©λŒ€ν•™, μΈλ¬ΈλŒ€ν•™,{' '}
<span className="text-red-400">λ―Έλž˜μœ΅ν•©λŒ€ν•™(λΆˆκ°€)</span>
</li>
<li>ν•™λ²ˆ: 16 ~ 22ν•™λ²ˆ</li>
</ul>
</li>
<li>
ꡐ직, 닀전곡, 연계전곡, νŽΈμž…, μ „κ³Ό, μž¬μ™Έκ΅­λ―Ό/μ™Έκ΅­μΈμ „ν˜•μ— ν•΄λ‹Ήν•˜λŠ” μ‚¬μš©μžλŠ” 검사 기쀀이 λ”°λ‘œ μ„€μ •λ˜μ§€ μ•Šμ•„
검사가 λΆˆκ°€λŠ₯ν•©λ‹ˆλ‹€.
</li>
<li>검사λ₯Ό μœ„ν•΄μ„  μ„±μ ν‘œλ₯Ό 직접 μ—…λ‘œλ“œν•΄μ•Όν•˜λ―€λ‘œ PCν™˜κ²½μ—μ„œ μ§„ν–‰ν•˜λŠ” 것을 ꢌμž₯ν•©λ‹ˆλ‹€.</li>
<li>
검사 기쀀은 μ΅œμ‹ λ²„μ „ ν•™μ‚¬μ•ˆλ‚΄λ¬Έ(2023.07.24) λ°˜μ˜ν•˜μ—¬ μ„€μ •λ˜μ—ˆμœΌλ©°, ν•™μ‚¬μ•ˆλ‚΄λ¬Έμ€ 맀년 κ°œνŽΈλ˜λ―€λ‘œ μžμ‹ μ΄
μ•Œκ³  μžˆλŠ” ꡬ버전과 λ‹€λ₯Ό 수 μžˆμŠ΅λ‹ˆλ‹€.
<ul className="list-disc ml-6 mt-2">
<li>
<a
target={'_blank'}
className="text-blue-500 underline "
href="https://www.mju.ac.kr/mjukr/257/subview.do?enc=Zm5jdDF8QEB8JTJGYmJzJTJGbWp1a3IlMkYxNDMlMkYyMDI1ODAlMkZhcnRjbFZpZXcuZG8lM0ZwYWdlJTNEMSUyNnNyY2hDb2x1bW4lM0RzaiUyNnNyY2hXcmQlM0QlRUQlOTUlOTklRUMlODIlQUMlMjZiYnNDbFNlcSUzRCUyNmJic09wZW5XcmRTZXElM0QlMjZyZ3NCZ25kZVN0ciUzRCUyNnJnc0VuZGRlU3RyJTNEJTI2aXNWaWV3TWluZSUzRGZhbHNlJTI2aXNWaWV3JTNEdHJ1ZSUyNnBhc3N3b3JkJTNEJTI2"
>
λͺ…μ§€λŒ€ν•™κ΅ ν•™μ‚¬μ•ˆλ‚΄λ¬Έ μ°Έκ³  링크
</a>
</li>
</ul>
</li>
<li>
λ³Έ μ„œλΉ„μŠ€ μ •λ³΄λŠ” 곡식적인 효λ ₯을 갖지 μ•ŠμœΌλ©°,{' '}
<b>μ •ν™•ν•œ 쑸업사정결과λ₯Ό μœ„ν•΄μ„œλŠ” μ†Œμ† λ‹¨κ³ΌλŒ€ κ΅ν•™νŒ€μ—μ„œμ˜ 확인을 ꢌμž₯ν•©λ‹ˆλ‹€.</b>
</li>
<li>
μ €μž₯된 μ‚¬μš©μž λ°μ΄ν„°λ² μ΄μŠ€λŠ” 읡λͺ…ν™”λ˜μ–΄ μ €μž₯되고 κ³Όλͺ©μΆ”μ²œ 및 ꡐ양과λͺ© ν†΅κ³„μ—λ§Œ μ‚¬μš©λ˜λ©°, 읡λͺ… λ‹€λ₯Έ μš©λ„λ‘œ
μ‚¬μš©λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
</li>
<li>μ‘Έμ—…μš”κ±΄ 기쀀이 잘λͺ» μ„€μ •λ˜μ—ˆκ±°λ‚˜, 였λ₯˜λ°œμƒ μ‹œ 우츑 ν•˜λ‹¨ μ±„λ„ν†‘μœΌλ‘œ ν”Όλ“œλ°± λΆ€νƒλ“œλ¦½λ‹ˆλ‹€.</li>
</ul>
</li>
<li>
ꡐ직, λ””μžμΈ, μ—°κ³„κ°œλ°œ, λ¬Όν’ˆ, μ „μž, μžμ›κ΄€λ¦¬/νšŒκ³„μ§€μ›μ— ν•΄λ‹Ήν•˜λŠ” μ‚¬μš©μžλŠ” 각사 기쀀에 λ”°λ₯Έ μ„ μ •λ˜μ§€ μ•Šμ•„ 각사
별 κ΄€λ¦¬ν•˜λŠ”λ°μš”.
</li>
<li>검사λ₯Ό μœ„ν•΄μ„œ μ„ μ ν’ˆμ„ 직접 μ—°λ½λ“œλ €μ•Όλ§Œ PCν™”λ©΄μ—μ„œ μ§„ν–‰ν•˜λŠ” 것을 ꢌμž₯ν•©λ‹ˆλ‹€.</li>
<li>
검사 기쀀은 μ΅œμ‹ λ²„μ „ 확인내역(2023.07.24) λ°˜μ˜ν•˜μ—¬ μ„ μ •λ˜μ—ˆμœΌλ©°, 학사내역은 맀년 κ°œνŽΈλ˜λ―€λ‘œ μžμ‚¬μ΄ μ™Έκ³  μžˆλŠ”
ꡬ버전과 λ‹€λ₯Ό 수 μžˆμŠ΅λ‹ˆλ‹€.
<ul className="list-disc ml-6 mt-2">
<li>λ¬ΈμžλŒ€ν•­: 학사내역은 확인 클릭</li>
</ul>
</li>
<li>
λ³Έ μ„œλΉ„μŠ€ μ •λ³΄λŠ” 곡식적인 확인을 μ „μ œ μ•ŠμœΌλ©°, μ •ν™•ν•œ 증상쑰사결과λ₯Ό μœ„ν•΄ μ„œλ₯˜ λ˜λŠ” λ‹΄λ‹Ήκ³Ό ꡐλ₯˜ν•΄μ•Όν•  사항을
μžŠμ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
</li>
<li>
μ „μžλ¬Έ μ„œν™”μ§€ λ°μ΄ν„°λ² μ΄μŠ€λŠ” μ˜λ¬΄ν™”λ˜μ–΄ 저희가 κ³ μœ μΆ•μ  및 κ΅μœ‘κ³Όμ • λ“±μ—μ„œ μ‚¬μš©λ˜λ©°, μ–΄λ–€ λ‹€λ₯Έ μš©λ„λ‘œ μ‚¬μš©
λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
</li>
<li>νŠΉν—ˆμš”κ±΄ 기쀀이 μ „λ¬Έ μ„ μ •λ˜μ—ˆκ±°λ‚˜, 였λ₯˜λ°œμƒ μ‹œ 우츑 ν•˜λ‹¨ μ±„νŒ…μ°½μœΌλ‘œ λ˜λŠ” λ‹΄λ‹Ή λΆ€μ„œλ‘œλ¬Έμ˜ν•©λ‹ˆλ‹€.</li>
</ul>
</div>
</TitleBox>

<div className="mt-8 flex justify-center">
<Button
onClick={handleAgreeButtonClick}
className="ml-4 bg-blue-500 text-white py-2 px-4 rounded-full"
label={'μ•Œλ¦Όλ…μ˜ μ•ˆλ‚΄λ¬Έ'}
// className="ml-4 bg-blue-500 text-white py-2 px-4 rounded-full"
size={'md'}
label={'λ™μ˜ν•©λ‹ˆλ‹€'}
/>
</div>
</div>
Expand Down
27 changes: 27 additions & 0 deletions app/(sub-page)/sign-up/components/sign-up.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import Responsive from '@/app/ui/responsive';
import SignUpForm from '@/app/ui/user/sign-up-form/sign-up-form';
import TitleBox from '@/app/ui/view/molecule/title-box/title-box';
import MaruImage from '@/public/assets/mju-maru.jpg';
import Image from 'next/image';

interface SignUpProps {
onNext?: () => void;
}

export default function SignUp({ onNext }: SignUpProps) {
return (
<div className="flex p-9">
<Responsive minWidth={767}>
<div className="w-2/4 flex items-center justify-center">
<Image className="object-cover h-[400px]" src={MaruImage} alt="마루" />
</div>
</Responsive>
<div className="w-full md:w-2/4 md:pl-7 ">
<div className="pb-12">
<TitleBox title={'νšŒμ›κ°€μž…'} />
</div>
<SignUpForm onSuccess={onNext} />
</div>
</div>
);
}
13 changes: 3 additions & 10 deletions app/(sub-page)/sign-up/page.tsx
Original file line number Diff line number Diff line change
@@ -1,19 +1,12 @@
import SignUpContainer from './components/sign-up-container';
import { Suspense } from 'react';
import ContentContainer from '@/app/ui/view/atom/content-container/content-container';
import LoadingSpinner from '@/app/ui/view/atom/loading-spinner/loading-spinner';
import SignUpFormSkeleton from '@/app/ui/user/sign-up-form/sign-up-form.skeleton';

// Refactor: fallback μŠ€μΌˆλ ˆν†€μœΌλ‘œ λŒ€μ²΄
export default function Page() {
return (
<ContentContainer className="md:w-[768px]">
<Suspense
fallback={
<div className="h-96">
<LoadingSpinner />
</div>
}
>
<ContentContainer className="md:w-[768px] xl:w-[960px]">
<Suspense fallback={<SignUpFormSkeleton />}>
<SignUpContainer />
</Suspense>
</ContentContainer>
Expand Down
7 changes: 4 additions & 3 deletions app/business/api-path.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
const BASE_URL = 'http://localhost:9090';
process.env.API_MOCKING === 'enable' ? 'http://localhost:9090' : '';
import { setupURL } from '../utils/api/setup-url.util';

const { BASE_URL, PARSE_API_URL } = setupURL();

export const API_PATH = {
default: BASE_URL,
revenue: `${BASE_URL}/revenue`,
registerUserGrade: `${BASE_URL}/parsing-text`,
parsePDFtoText: `${BASE_URL}/parsePDFtoText`,
parsePDFtoText: PARSE_API_URL,
takenLectures: `${BASE_URL}/taken-lectures`,
user: `${BASE_URL}/users`,
graduations: `${BASE_URL}/graduations`,
Expand Down
Loading
Loading