From 399878bf9a964b37836a0187b49a2ae450d992b0 Mon Sep 17 00:00:00 2001 From: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Date: Tue, 30 Jul 2024 14:39:44 +0900 Subject: [PATCH 01/17] =?UTF-8?q?FE-32=20=F0=9F=94=80=EA=B2=80=EC=83=89=20?= =?UTF-8?q?=ED=8E=98=EC=9D=B4=EC=A7=80=20=EB=A9=94=EC=9D=B8=20=EB=A8=B8?= =?UTF-8?q?=EC=A7=80=20(#107)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * ๐Ÿ’„FE-33 ๊ฒ€์ƒ‰ ํŽ˜์ด์ง€ UI (#10) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * โœจFeat: SearchBar UI ์ดˆ์•ˆ ์™„์„ฑ * styles: tailwind css ํฐํŠธ ์‚ฌ์ด์ฆˆ ์ถ”๊ฐ€ * feat: RecentSearches UI ์ดˆ์•ˆ ์™„์„ฑ * ๏ฟฝstyles: SearchResults UI ์ˆ˜์ • * ๏ฟฝstyles: RecentSearches UI ์ˆ˜์ • * โœจstyles: ๋ฐ˜์‘ํ˜• UI ์ถ”๊ฐ€ * FE-33 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • ์ค‘ * FE-33 fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * FE-33 fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * FE-33 fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> * FE-65 โœจ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ๊ธฐ๋Šฅ (#51) * FE-65 โœจfeat: ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-65 โœจfeat: ๊ฒ€์ƒ‰๋ฐ”์™€ ์—ฐ๋™ํ•˜์—ฌ ์ฆ‰์‹œ ๋ฐ˜์˜๋˜๋„๋ก ์ˆ˜์ • * FE-65 โœจfeat: debounce๋ฅผ ์œ„ํ•œ lodash ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜ * FE-65 โœจfeat: debounce ๊ธฐ๋Šฅ ์ ์šฉ(++lodash ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ) * FE-65 โœจfeat: useEffectt๋กœ debouncedSearchํ•จ์ˆ˜ ์˜์กด์„ฑ ์„ค์ • * FE-65 โœจfeat: useCallback ๋Œ€์‹  useRef๋กœ ๋ณ€๊ฒฝ * FE-65 โœจfix:: debounce ๊ธฐ๋Šฅ ์ œ๊ฑฐ(๋ถˆํ•„์š”) * FE-65 โœจfeat: focus๋  ๋•Œ placeholder ์‚ฌ๋ผ์ง€๊ฒŒ ์ˆ˜์ • ๋ฐ UI ์ˆ˜์ • * FE-65 โœจfeat: isInitialMount ์„ ์–ธ ๋ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-65 โœจfix: ์ฃผ์„ ์ˆ˜์ • * FE-65 โœจfeat: ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ํด๋ฆญ ์‹œ ๊ทธ ๊ฒ€์ƒ‰์–ด๋กœ ๊ฒ€์ƒ‰๋˜๋Š” ๊ธฐ๋Šฅ * FE-65 styles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-74 โœจ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ๊ธฐ๋Šฅ (#73) * FE-74 fix: ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” lodash ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ญ์ œ * FE-74 โœจfeat: ํ…Œ์ŠคํŠธ ์šฉ api ์ฝ”๋“œ ๊ฐ€์ ธ์˜ค๊ธฐ * FE-74 โœจfeat: ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-74 โœจfix: ์ค‘๋ณต๋œ key, href ์ œ๊ฑฐ ๋ฐ ๊ทœ์น™ ๋ฌด์‹œ ์ฃผ์„ ์ถ”๊ฐ€ * FE-74 โœจtest: ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€ * FE-74 โœจfeat: ๊ฒ€์ƒ‰์–ด ํ•˜์ด๋ผ์ดํŒ… ๋ฐ ์ˆœ์„œ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-74 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ api ํŒŒ์ผ ์‚ญ์ œ * FE-74 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-74 โœจfix: ๋ฉ˜ํ† ๋ง ๋‚ด์šฉ ์ฃผ์„์œผ๋กœ ์ถ”๊ฐ€ * FE-32 ๐Ÿ”€ epic๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#77) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> * FE-75 โœจ๋ฌดํ•œ ์Šคํฌ๋กค, ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ URL์— ์ €์žฅ ๊ธฐ๋Šฅ ๊ตฌํ˜„ (#104) * FE-75 โœจstyles: tailwind .config ํŒŒ์ผ ๋ฉ”์ธ๊ณผ ํ†ตํ•ฉ * FE-75 โœจfeat: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ Header ์ถ”๊ฐ€ * FE-75 โœจrefactor: useMemo ์‚ฌ์šฉ * FE-75 โœจfeat: URL์— ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์ €์žฅ * FE-75 โœจstyles: ๋กœ๋”ฉ ์Šคํƒ€์ผ ๊ตฌํ˜„ * FE-75 โœจfeat: ์‹ค์ œ api ์ถ”๊ฐ€ * FE-75 โœจfeat: api ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-75 โœจfeat: ๋ฌดํ•œ ์Šคํฌ๋กค ๊ตฌํ˜„ * FE-75 โœจfix: ์˜์กด์„ฑ ๋ฐฐ์—ด์—์„œ ๋กœ๋”ฉ ์ƒํƒœ ์ œ๊ฑฐ * FE-75 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-75 โœจfeat:: ์‚ฌ์šฉ์ž๋งˆ๋‹ค ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ณ€๊ฒฝ * FE-75 โœจfix: ๊ฒ€์ƒ‰ ์ „ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ค์ง€ ์•Š๋„๋ก ์ˆ˜์ • * FE-32 ๐Ÿ”€๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#105) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * .http ํŒŒ์ผ ์‚ญ์ œ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-32 ๐Ÿ”€๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#110) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * .http ํŒŒ์ผ ์‚ญ์ œ * merge main --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-32 ๊ฒ€์ƒ‰ํŽ˜์ด์ง€ ๋ฉ”์ธ ์ถฉ๋Œ ์ˆ˜์ • (#112) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: MOON Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ --- .vscode/settings.json | 5 +- package-lock.json | 21 ++-- package.json | 8 +- public/md.svg | 6 + src/components/index.tsx | 0 src/components/search/RecentSearches.tsx | 43 +++++++ src/components/search/SearchBar.tsx | 58 ++++++++++ src/components/search/SearchResults.tsx | 101 ++++++++++++++++ src/hooks/useGetEpigramsHooks.ts | 13 +++ src/pageLayout/SearchLayout/SearchLayout.tsx | 114 +++++++++++++++++++ src/pageLayout/index.ts | 0 src/pages/auth/SignIn.tsx | 1 - src/pages/search/index.tsx | 8 ++ src/schema/auth.ts | 1 - src/types/EmotionTypes.ts | 14 +++ tsconfig.json | 1 + 16 files changed, 380 insertions(+), 14 deletions(-) create mode 100644 public/md.svg create mode 100644 src/components/index.tsx create mode 100644 src/components/search/RecentSearches.tsx create mode 100644 src/components/search/SearchBar.tsx create mode 100644 src/components/search/SearchResults.tsx create mode 100644 src/hooks/useGetEpigramsHooks.ts create mode 100644 src/pageLayout/SearchLayout/SearchLayout.tsx create mode 100644 src/pageLayout/index.ts create mode 100644 src/pages/search/index.tsx create mode 100644 src/types/EmotionTypes.ts diff --git a/.vscode/settings.json b/.vscode/settings.json index d5bfa7d4..a9d3f305 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -64,5 +64,8 @@ } ] } - } + }, + "cSpell.words": [ + "clsx" + ] } diff --git a/package-lock.json b/package-lock.json index 561da0f2..9fb61474 100644 --- a/package-lock.json +++ b/package-lock.json @@ -37,9 +37,10 @@ }, "devDependencies": { "@tanstack/eslint-plugin-query": "^5.50.0", - "@types/node": "^20", + "@types/lodash": "^4.17.7", + "@types/node": "^20.14.10", "@types/qs": "^6.9.15", - "@types/react": "^18", + "@types/react": "^18.3.3", "@types/react-dom": "^18", "@typescript-eslint/eslint-plugin": "^7.2.0", "@typescript-eslint/parser": "^7.2.0", @@ -58,8 +59,8 @@ "postcss": "8.4.39", "prettier": "^3.2.5", "prettier-eslint": "^16.3.0", - "tailwindcss": "3.4.4", - "typescript": "^5" + "tailwindcss": "^3.4.4", + "typescript": "^5.5.3" }, "engines": { "node": ">=20.15.0" @@ -1923,10 +1924,16 @@ "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", "dev": true }, + "node_modules/@types/lodash": { + "version": "4.17.7", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.7.tgz", + "integrity": "sha512-8wTvZawATi/lsmNu10/j2hk1KEP0IvjubqPE3cu1Xz7xfXXt5oCq3SNUz4fMIP4XGF9Ky+Ue2tBA3hcS7LSBlA==", + "dev": true + }, "node_modules/@types/node": { - "version": "20.14.9", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.9.tgz", - "integrity": "sha512-06OCtnTXtWOZBJlRApleWndH4JsRVs1pDCc8dLSQp+7PpUpX3ePdHyeNSFTeSe7FtKyQkrlPvHwJOW3SLd8Oyg==", + "version": "20.14.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.10.tgz", + "integrity": "sha512-MdiXf+nDuMvY0gJKxyfZ7/6UFsETO7mGKF54MVD/ekJS6HdFtpZFBgrh6Pseu64XTb2MLyFPlbW6hj8HYRQNOQ==", "dev": true, "dependencies": { "undici-types": "~5.26.4" diff --git a/package.json b/package.json index 66aa1a4e..a84b4b59 100644 --- a/package.json +++ b/package.json @@ -42,9 +42,9 @@ }, "devDependencies": { "@tanstack/eslint-plugin-query": "^5.50.0", - "@types/node": "^20", + "@types/node": "^20.14.10", "@types/qs": "^6.9.15", - "@types/react": "^18", + "@types/react": "^18.3.3", "@types/react-dom": "^18", "@typescript-eslint/eslint-plugin": "^7.2.0", "@typescript-eslint/parser": "^7.2.0", @@ -63,7 +63,7 @@ "postcss": "8.4.39", "prettier": "^3.2.5", "prettier-eslint": "^16.3.0", - "tailwindcss": "3.4.4", - "typescript": "^5" + "tailwindcss": "^3.4.4", + "typescript": "^5.5.3" } } diff --git a/public/md.svg b/public/md.svg new file mode 100644 index 00000000..9ada4505 --- /dev/null +++ b/public/md.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/components/index.tsx b/src/components/index.tsx new file mode 100644 index 00000000..e69de29b diff --git a/src/components/search/RecentSearches.tsx b/src/components/search/RecentSearches.tsx new file mode 100644 index 00000000..0b71f086 --- /dev/null +++ b/src/components/search/RecentSearches.tsx @@ -0,0 +1,43 @@ +import React from 'react'; + +interface RecentSearchesProps { + searches: string[]; + onSearch: (search: string) => void; + onClear: () => void; +} + +function RecentSearches({ searches, onSearch, onClear }: RecentSearchesProps) { + const handleSearchClick = (search: string) => { + onSearch(search); + }; + + const handleClearAll = () => { + onClear(); + }; + + return ( +
+
+ ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด + +
+
+
+ {searches.map((search) => ( + + ))} +
+
+
+ ); +} + +export default RecentSearches; diff --git a/src/components/search/SearchBar.tsx b/src/components/search/SearchBar.tsx new file mode 100644 index 00000000..accf11f1 --- /dev/null +++ b/src/components/search/SearchBar.tsx @@ -0,0 +1,58 @@ +import React, { useState, useEffect } from 'react'; +import Image from 'next/image'; +import SEARCH_ICON from '../../../public/md.svg'; + +// TODO react-hook-form ์‚ฌ์šฉ + +interface SearchBarProps { + onSearch: (search: string) => void; + currentSearch: string; +} + +function SearchBar({ onSearch, currentSearch }: SearchBarProps) { + const [searchInput, setSearchInput] = useState(''); + const [isFocused, setIsFocused] = useState(false); + + const handleChange = (e: React.ChangeEvent) => { + setSearchInput(e.target.value); + }; + + const handleFocus = () => { + setIsFocused(true); + }; + + const handleBlur = () => { + setIsFocused(false); + }; + + const handleSubmit = (e: React.FormEvent) => { + e.preventDefault(); + if (searchInput.trim()) { + onSearch(searchInput); + setSearchInput(''); + } + }; + + // ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ํด๋ฆญ ์‹œ setSearchInput ์ƒํƒœ ์—…๋ฐ์ดํŠธ + useEffect(() => { + setSearchInput(currentSearch); + }, [currentSearch]); + + return ( +
+ + +
+ ); +} + +export default SearchBar; diff --git a/src/components/search/SearchResults.tsx b/src/components/search/SearchResults.tsx new file mode 100644 index 00000000..8ecb893a --- /dev/null +++ b/src/components/search/SearchResults.tsx @@ -0,0 +1,101 @@ +import React, { useMemo } from 'react'; +import Link from 'next/link'; +import { GetEpigramsResponseType } from '@/schema/epigrams'; + +// TODO highlightedSections์˜ key ์„ค์ • ๋ถ€๋ถ„์— ๋” ๋‚˜์€ ๋ฐฉ๋ฒ•์ด ์ƒ๊ฐ๋‚˜๋ฉด ๋ณ€๊ฒฝ + +interface SearchResultsProps { + results: GetEpigramsResponseType | null; + query: string; + isLoading: boolean; +} + +// ํ…์ŠคํŠธ ํ•˜์ด๋ผ์ดํŒ… ํ•จ์ˆ˜ +function handleHighlightText(text: string, highlight: string) { + if (!highlight.trim()) { + return text; + } + + // ๊ฒ€์ƒ‰์–ด(highlight)๊ธฐ์ค€์œผ๋กœ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๋ฅผ ๋ฐฐ์—ด๋กœ ๋‚˜๋ˆ”(g: ์ค‘๋ณต O, i: ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„ X) + const highlightedSections = text.split(new RegExp(`(${highlight})`, 'gi')); + + // ๊ฒ€์ƒ‰์–ด์™€ ๋น„๊ตํ•ด์„œ ๊ฐ™์œผ๋ฉด ํ•˜์ด๋ผ์ดํŒ…, ๋‹ค๋ฅด๋ฉด ๊ทธ๋ƒฅ ๋ฐ˜ํ™˜ + return ( + <> + {highlightedSections.map((section, index) => { + const key = `${section}-${index}-${section.length}`; + return section.toLowerCase() === highlight.toLowerCase() ? ( + + {section} + + ) : ( + section + ); + })} + + ); +} + +function SearchResults({ results, query, isLoading }: SearchResultsProps) { + // ํƒœ๊ทธ์™€ ๋‚ด์šฉ ์ˆœ์„œ๋กœ ์ •๋ ฌ - ํ•ญ์ƒ useMemo๋ฅผ ํ˜ธ์ถœํ•˜๊ณ , results๊ฐ€ null์ธ ๊ฒฝ์šฐ ๋นˆ ๋ฐฐ์—ด ๋ฐ˜ํ™˜ + const sortedResults = useMemo(() => { + if (!results) return []; + return results.list.sort((a, b) => { + const aHasTag = a.tags.some((tag) => tag.name.includes(query)); + const bHasTag = b.tags.some((tag) => tag.name.includes(query)); + + if (aHasTag && !bHasTag) return -1; + if (!aHasTag && bHasTag) return 1; + return 0; + }); + }, [results, query]); + + const filteredResults = useMemo( + () => sortedResults.filter((item) => item.content.includes(query) || item.author.includes(query) || item.tags.some((tag) => tag.name.includes(query))), + [sortedResults, query], + ); + + if (isLoading) { + return ( +
+
+ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ค‘ ์ž…๋‹ˆ๋‹ค... +
+
+ ); + } + + if (!results || filteredResults.length === 0) { + return ( +
+
+ ํ•ด๋‹น ๊ฒ€์ƒ‰์–ด์— ๋Œ€ํ•œ ๊ฒฐ๊ณผ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. +
+
+ ); + } + + return ( +
+ {filteredResults.map((item) => ( + +
+
+ {handleHighlightText(item.content, query)} + - {handleHighlightText(item.author, query)} - +
+
+ {item.tags.map((tag) => ( + + {handleHighlightText(`#${tag.name}`, query)} + + ))} +
+
+ + ))} +
+ ); +} + +export default SearchResults; diff --git a/src/hooks/useGetEpigramsHooks.ts b/src/hooks/useGetEpigramsHooks.ts new file mode 100644 index 00000000..04c5554c --- /dev/null +++ b/src/hooks/useGetEpigramsHooks.ts @@ -0,0 +1,13 @@ +import { useQuery } from '@tanstack/react-query'; +import getEpigrams from '@/apis/getEpigrams'; +import { GetEpigramsResponseType } from '@/schema/epigrams'; + +const useEpigrams = (query: string, page: number, limit: number = 10) => + useQuery({ + queryKey: ['epigrams', query, page, limit], + queryFn: () => getEpigrams({ keyword: query, limit, cursor: page * limit }), + enabled: !!query, + staleTime: 5 * 60 * 1000, // ๋ฐ์ดํ„ฐ ์‹ ์„ ๋„ ์„ค์ • + }); + +export default useEpigrams; diff --git a/src/pageLayout/SearchLayout/SearchLayout.tsx b/src/pageLayout/SearchLayout/SearchLayout.tsx new file mode 100644 index 00000000..02c68db9 --- /dev/null +++ b/src/pageLayout/SearchLayout/SearchLayout.tsx @@ -0,0 +1,114 @@ +import React, { useState, useEffect, useRef } from 'react'; +import { useRouter } from 'next/router'; +import Header from '@/components/Header/Header'; +import SearchBar from '@/components/search/SearchBar'; +import RecentSearches from '@/components/search/RecentSearches'; +import SearchResults from '@/components/search/SearchResults'; +import useEpigrams from '@/hooks/useGetEpigramsHooks'; +import { GetEpigramsResponseType } from '@/schema/epigrams'; + +function SearchLayout() { + const [searches, setSearches] = useState([]); + const [currentSearch, setCurrentSearch] = useState(''); + const [page, setPage] = useState(0); + const [allResults, setAllResults] = useState([]); + const [totalCount, setTotalCount] = useState(0); + const [nextCursor, setNextCursor] = useState(null); + const observerRef = useRef(null); + const loadMoreRef = useRef(null); + const router = useRouter(); + + const isBrowser = typeof window !== 'undefined'; // ๋ธŒ๋ผ์šฐ์ € ํ™˜๊ฒฝ์—์„œ๋งŒ localStorage์— ์ ‘๊ทผ + const accessToken = isBrowser ? localStorage.getItem('accessToken') : null; + const isUserLoggedIn = !!accessToken; + const userId = isUserLoggedIn ? 'loggedInUser' : 'guest'; // ์‚ฌ์šฉ์ž ID๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ €์žฅ ํ‚ค ์ƒ์„ฑ + const recentSearchesKey = `recentSearches_${userId}`; + + const { data: searchResults, isLoading } = useEpigrams(currentSearch, page); + + // ์ƒˆ๋กœ์šด ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๋ฅผ allResults์— ๋ˆ„์ , ์ด ๊ฒฐ๊ณผ ๊ฐœ์ˆ˜์™€ ๋‹ค์Œ ์ปค์„œ๋ฅผ ์—…๋ฐ์ดํŠธ + useEffect(() => { + if (searchResults?.list) { + setAllResults((prevResults) => [...prevResults, ...searchResults.list]); + setTotalCount(searchResults.totalCount); + setNextCursor(searchResults.nextCursor); + } + }, [searchResults]); + + // observerRef๊ฐ€ ํ™”๋ฉด์— ๋‚˜ํƒ€๋‚  ๋•Œ ํŽ˜์ด์ง€ ์ฆ๊ฐ€,์ถ”๊ฐ€ ๋ฐ์ดํ„ฐ ๋กœ๋“œ + useEffect(() => { + if (observerRef.current) observerRef.current.disconnect(); + + observerRef.current = new IntersectionObserver((entries) => { + if (entries[0].isIntersecting && !isLoading && nextCursor !== null) { + setPage((prevPage) => prevPage + 1); + } + }); + + if (loadMoreRef.current) { + observerRef.current.observe(loadMoreRef.current); + } + + // ์˜ต์ €๋ฒ„ ํด๋ฆฐ์—… (๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜ ๋ฐฉ์ง€) + return () => { + if (observerRef.current) { + observerRef.current.disconnect(); + observerRef.current = null; + } + }; + }, [allResults.length, isLoading, nextCursor]); + + // ์ปดํฌ๋„ŒํŠธ๊ฐ€ ์ฒ˜์Œ ๋ Œ๋”๋ง ๋  ๋•Œ ์ €์žฅ๋œ ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ๋ถˆ๋Ÿฌ์˜ค๊ธฐ, ๋กœ๊ทธ์ธ๋œ ์‚ฌ์šฉ์ž ๋ณ„๋กœ ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด๋ฅผ ๊ตฌ๋ถ„ํ•˜์—ฌ URL์— ๋ฐ์ดํ„ฐ ์ €์žฅ + useEffect(() => { + if (isBrowser) { + const storedSearches = JSON.parse(localStorage.getItem(recentSearchesKey) || '[]'); + setSearches(storedSearches); + } + + const searchParams = new URLSearchParams(window.location.search); + const query = searchParams.get('q'); + if (query) { + setCurrentSearch(query); + } + }, [recentSearchesKey]); + + // ๋ชจ๋‘์ง€์šฐ๊ธฐ ํด๋ฆญ ์‹œ ์ €์žฅ๋œ ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ์‚ญ์ œ + const handleClearAll = () => { + setSearches([]); + if (isBrowser) { + localStorage.removeItem(recentSearchesKey); + } + }; + + // ๊ฒ€์ƒ‰์–ด๊ฐ€ ์ œ์ถœ๋  ๋•Œ ์ž‘๋™ + const handleSearch = (search: string) => { + setPage(0); + setAllResults([]); + setSearches((prevSearches) => { + const updatedSearches = [search, ...prevSearches.filter((item) => item !== search)].slice(0, 10); + if (isBrowser) { + localStorage.setItem(recentSearchesKey, JSON.stringify(updatedSearches)); + } + return updatedSearches; + }); + setCurrentSearch(search); + + const searchParams = new URLSearchParams(window.location.search); + searchParams.set('q', search); + router.push(`/search?${searchParams.toString()}`); + }; + + return ( + <> +
{}} />; +
+ + + {currentSearch && } +
+
+ + ); +} + +export default SearchLayout; diff --git a/src/pageLayout/index.ts b/src/pageLayout/index.ts new file mode 100644 index 00000000..e69de29b diff --git a/src/pages/auth/SignIn.tsx b/src/pages/auth/SignIn.tsx index 68ef07ec..c1bfd025 100644 --- a/src/pages/auth/SignIn.tsx +++ b/src/pages/auth/SignIn.tsx @@ -28,7 +28,6 @@ export default function SignIn() { logo
-
mutationSignin.mutate(values))} className='flex flex-col items-center lg:gap-6 gap-5 w-full px-6'>
diff --git a/src/pages/search/index.tsx b/src/pages/search/index.tsx new file mode 100644 index 00000000..0914e7b7 --- /dev/null +++ b/src/pages/search/index.tsx @@ -0,0 +1,8 @@ +import React from 'react'; +import SearchLayout from '@/pageLayout/SearchLayout/SearchLayout'; + +function Search() { + return ; +} + +export default Search; diff --git a/src/schema/auth.ts b/src/schema/auth.ts index 5de73332..0a9069a8 100644 --- a/src/schema/auth.ts +++ b/src/schema/auth.ts @@ -20,7 +20,6 @@ export const PostSignUpRequest = z }); // NOTE: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ - export const PostSigninRequest = z.object({ email: z.string().min(1, { message: '์ด๋ฉ”์ผ์€ ํ•„์ˆ˜ ์ž…๋ ฅ์ž…๋‹ˆ๋‹ค.' }).email({ message: '์˜ฌ๋ฐ”๋ฅธ ์ด๋ฉ”์ผ ์ฃผ์†Œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.' }), password: z.string().min(1, { message: '๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” ํ•„์ˆ˜ ์ž…๋ ฅ์ž…๋‹ˆ๋‹ค.' }), diff --git a/src/types/EmotionTypes.ts b/src/types/EmotionTypes.ts new file mode 100644 index 00000000..e64f3d3f --- /dev/null +++ b/src/types/EmotionTypes.ts @@ -0,0 +1,14 @@ +export type EmotionType = '๊ฐ๋™' | '๊ธฐ์จ' | '๊ณ ๋ฏผ' | '์Šฌํ””' | '๋ถ„๋…ธ'; +export type EmotionState = 'Default' | 'Unclicked' | 'Clicked'; + +export interface EmotionIconCardProps { + iconType: EmotionType; // ์•„์ด์ฝ˜ ์ข…๋ฅ˜ + state: EmotionState; // ์ƒํƒœ + size: 'sm' | 'md' | 'lg'; // ํฌ๊ธฐ + onClick?: () => void; // ํด๋ฆญ ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ +} + +export interface InteractiveEmotionIconCardProps extends Omit { + state: EmotionState; + onClick: () => void; +} diff --git a/tsconfig.json b/tsconfig.json index fb68dc1a..3cb96de7 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -12,6 +12,7 @@ "isolatedModules": true, "jsx": "preserve", "incremental": true, + "baseUrl": ".", "paths": { "@/*": ["./src/*"] } From c762ee55ccfc3740ab66a28516c320c2dae0e34e Mon Sep 17 00:00:00 2001 From: JeonYumin <40783675+JeonYumin94@users.noreply.github.com> Date: Tue, 30 Jul 2024 14:45:00 +0900 Subject: [PATCH 02/17] =?UTF-8?q?FE-27=20:twisted=5Frightwards=5Farrows:?= =?UTF-8?q?=20=EB=A7=88=EC=9D=B4=ED=8E=98=EC=9D=B4=EC=A7=80=20=EB=A8=B8?= =?UTF-8?q?=EC=A7=80=20=EC=9A=94=EC=B2=AD=20(#100)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * FE-34 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ํ”„๋กœํ•„ ์ˆ˜์ • ๊ธฐ๋Šฅ (#53) * FE-34 :lipstick: ๋งˆ์ดํŽ˜์ด์ง€ UI ์ดˆ๊ธฐ์ž‘์—… * FE-34 :sparkles: ๋‚ด ์ •๋ณด ์กฐํšŒ API ์—ฐ๋™ * FE-34 :lipstick: shadcn/ui Dialog ์„ค์น˜ * FE-34 :sparkles: ํ”„๋กœํ•„ ์ˆ˜์ • API ์—ฐ๋™ * FE-34 :sparkles: ์ด๋ฏธ์ง€ ์‹คํŒจ ํ† ์ŠคํŠธ ์ถ”๊ฐ€ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ์บ˜๋ฆฐ๋” ์ถœ๋ ฅ ํ•จ์ˆ˜ (#58) * FE-36 :lipstick: ๊ฐ์ •๋‹ฌ๋ ฅ UI * FE-36 :sparkles: ์บ˜๋ฆฐ๋” ํ•จ์ˆ˜ ์ƒ์„ฑ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •๋‹ฌ๋ ฅ (#65) * FE-36 :lipstick: ๊ฐ์ •๋‹ฌ๋ ฅ UI * FE-36 :sparkles: ์บ˜๋ฆฐ๋” ํ•จ์ˆ˜ ์ƒ์„ฑ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •๋‹ฌ๋ ฅ: ์˜ค๋Š˜ ๋‚ ์งœ ํ‘œ์‹œ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ์›” ๋ณ„ ๊ฐ์ •๋กœ๊ทธ ์กฐํšŒ API ์—ฐ๋™ * FE-36 :sparkles: ์›”๋ณ„ ๊ฐ์ • ๋กœ๊ทธ ํ•ด๋‹น ๋‚ ์งœ์— ์ถœ๋ ฅ * FE-36 :lipstick: ๋‹ฌ๋ ฅ css ์ˆ˜์ • * FE-36 :art: ๋งˆ์ดํŽ˜์ด์ง€ ์บ˜๋ฆฐ๋” ํ—ค๋” ์ปดํฌ๋„ŒํŠธ ๋ถ„๋ฆฌ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •๋‹ฌ๋ ฅ ํ•„ํ„ฐ๊ธฐ๋Šฅ * FE-27 :twisted_rightwards_arrows: ์—ํ”ฝ ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#81) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-27 :twisted_rightwards_arrows: ๋งˆ์ดํŽ˜์ด์ง€ ์—ํ”ฝ ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#85) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-27 :twisted_rightwards_arrows: ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#86) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-37 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •์ฐจํŠธ (#89) * FE-37 :recycle: ์›”๋ณ„ ๊ฐ์ •๋กœ๊ทธ ์กฐํšŒ ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง * FE-37 :sparkles: ๊ฐ์ • ์ฐจํŠธ * FE-37 :hammer: ์ƒ์ˆ˜ ์ปจ๋ฒค์…˜ ์ˆ˜์ • * FE-27 :twisted_rightwards_arrows: ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#99) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-27 :hammer: ์ถฉ๋Œ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-27 :hammer: ์ถฉ๋Œ๋‚ด์—ญ ์ˆ˜์ • * FE-27 :twisted_rightwards_arrows: ์ถฉ๋Œ์˜ค๋ฅ˜ ์ˆ˜์ • --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: MOON Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN * FE-27 :twisted_rightwards_arrows: ๋งˆ์ดํŽ˜์ด์ง€ ์ตœ์‹ ํ™” (#102) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: MOON Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN * FE-27 :twisted_rightwards_arrows: ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#111) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: MOON Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ Co-authored-by: JeonYumin <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN * FE-27 :twisted_rightwards_arrows: ์ถฉ๋Œ์—๋Ÿฌ ์ˆ˜์ • (#113) Co-authored-by: morrison --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ Co-authored-by: MOON Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: kich555 <79491683+kich555@users.noreply.github.com> Co-authored-by: morrison --- next.config.mjs | 17 +++ package-lock.json | 129 ++++++++++++++++- package.json | 4 + public/icon/arrow-bottom-icon.svg | 5 + public/icon/arrow-right-icon.svg | 5 + src/apis/emotion.ts | 12 ++ src/apis/index.ts | 2 +- src/apis/queries.ts | 8 ++ src/apis/user.ts | 9 +- src/components/Emotion/EmotionSelector.tsx | 2 +- src/components/ui/dialog.tsx | 65 +++++++++ src/hooks/useCalendar.ts | 67 +++++++++ src/hooks/useGetEmotion.ts | 10 +- src/hooks/userQueryHooks.ts | 16 ++- src/pageLayout/MypageLayout/MyPageLayout.tsx | 47 +++++++ src/pages/mypage/index.tsx | 5 + src/schema/emotion.ts | 20 +++ src/schema/user.ts | 15 ++ src/types/emotion.ts | 16 +++ src/types/user.ts | 13 ++ src/user/ui-profile/Calendar.tsx | 96 +++++++++++++ src/user/ui-profile/CalendarHeader.tsx | 58 ++++++++ src/user/ui-profile/Chart.tsx | 96 +++++++++++++ src/user/ui-profile/EmotionMonthlyLogs.tsx | 40 ++++++ src/user/ui-profile/Profile.tsx | 41 ++++++ src/user/ui-profile/ProfileEdit.tsx | 140 +++++++++++++++++++ src/user/utill/constants.ts | 20 +++ src/user/utill/fileNameChange.ts | 8 ++ tailwind.config.js | 3 + 29 files changed, 952 insertions(+), 17 deletions(-) create mode 100644 public/icon/arrow-bottom-icon.svg create mode 100644 public/icon/arrow-right-icon.svg create mode 100644 src/apis/emotion.ts create mode 100644 src/components/ui/dialog.tsx create mode 100644 src/hooks/useCalendar.ts create mode 100644 src/pageLayout/MypageLayout/MyPageLayout.tsx create mode 100644 src/pages/mypage/index.tsx create mode 100644 src/types/user.ts create mode 100644 src/user/ui-profile/Calendar.tsx create mode 100644 src/user/ui-profile/CalendarHeader.tsx create mode 100644 src/user/ui-profile/Chart.tsx create mode 100644 src/user/ui-profile/EmotionMonthlyLogs.tsx create mode 100644 src/user/ui-profile/Profile.tsx create mode 100644 src/user/ui-profile/ProfileEdit.tsx create mode 100644 src/user/utill/constants.ts create mode 100644 src/user/utill/fileNameChange.ts diff --git a/next.config.mjs b/next.config.mjs index d5456a15..49ba09f8 100644 --- a/next.config.mjs +++ b/next.config.mjs @@ -1,6 +1,23 @@ /** @type {import('next').NextConfig} */ const nextConfig = { reactStrictMode: true, + images: { + domains: ['sprint-fe-project.s3.ap-northeast-2.amazonaws.com', 'localhost'], + remotePatterns: [ + { + protocol: 'https', + hostname: 'via.placeholder.com', + port: '', + pathname: '/**', + }, + ], + }, + rewrites: async () => [ + { + source: '/api/proxy/:path*', + destination: 'https://sprint-fe-project.s3.ap-northeast-2.amazonaws.com/:path*', + }, + ], }; export default nextConfig; diff --git a/package-lock.json b/package-lock.json index 9fb61474..ce9380b1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,6 +12,7 @@ "@lukemorales/query-key-factory": "^1.3.4", "@radix-ui/react-alert-dialog": "^1.1.1", "@radix-ui/react-avatar": "^1.1.0", + "@radix-ui/react-dialog": "^1.1.1", "@radix-ui/react-dropdown-menu": "^2.1.1", "@radix-ui/react-label": "^2.1.0", "@radix-ui/react-radio-group": "^1.2.0", @@ -23,6 +24,8 @@ "axios": "^1.7.2", "class-variance-authority": "^0.7.0", "clsx": "^2.1.1", + "date-fns": "^3.6.0", + "formik": "^2.4.6", "lucide-react": "^0.402.0", "next": "14.2.4", "qs": "^6.12.2", @@ -33,6 +36,7 @@ "sharp": "^0.33.4", "tailwind-merge": "^2.4.0", "tailwindcss-animate": "^1.0.7", + "yup": "^1.4.0", "zod": "^3.23.8" }, "devDependencies": { @@ -1918,6 +1922,15 @@ "react": "^18 || ^19" } }, + "node_modules/@types/hoist-non-react-statics": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.5.tgz", + "integrity": "sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==", + "dependencies": { + "@types/react": "*", + "hoist-non-react-statics": "^3.3.0" + } + }, "node_modules/@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", @@ -1942,8 +1955,7 @@ "node_modules/@types/prop-types": { "version": "15.7.12", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.12.tgz", - "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==", - "devOptional": true + "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/qs": { "version": "6.9.15", @@ -1955,7 +1967,6 @@ "version": "18.3.3", "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.3.tgz", "integrity": "sha512-hti/R0pS0q1/xx+TsI73XIqk26eBsISZ2R0wUijXIngRK9R/e7Xw/cXVxQK7R5JjW+SV4zGcn5hXjudkN/pLIw==", - "devOptional": true, "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -2848,8 +2859,7 @@ "node_modules/csstype": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", - "devOptional": true + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" }, "node_modules/damerau-levenshtein": { "version": "1.0.8", @@ -2908,6 +2918,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/date-fns": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.6.0.tgz", + "integrity": "sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, "node_modules/debug": { "version": "4.3.5", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", @@ -2963,6 +2982,14 @@ "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true }, + "node_modules/deepmerge": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz", + "integrity": "sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/define-data-property": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", @@ -4173,6 +4200,30 @@ "node": ">= 6" } }, + "node_modules/formik": { + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/formik/-/formik-2.4.6.tgz", + "integrity": "sha512-A+2EI7U7aG296q2TLGvNapDNTZp1khVt5Vk0Q/fyfSROss0V/V6+txt2aJnwEos44IxTCW/LYAi/zgWzlevj+g==", + "funding": [ + { + "type": "individual", + "url": "https://opencollective.com/formik" + } + ], + "dependencies": { + "@types/hoist-non-react-statics": "^3.3.1", + "deepmerge": "^2.1.1", + "hoist-non-react-statics": "^3.3.0", + "lodash": "^4.17.21", + "lodash-es": "^4.17.21", + "react-fast-compare": "^2.0.1", + "tiny-warning": "^1.0.2", + "tslib": "^2.0.0" + }, + "peerDependencies": { + "react": ">=16.8.0" + } + }, "node_modules/fraction.js": { "version": "4.3.7", "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", @@ -4498,6 +4549,19 @@ "node": ">= 0.4" } }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dependencies": { + "react-is": "^16.7.0" + } + }, + "node_modules/hoist-non-react-statics/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, "node_modules/husky": { "version": "9.0.11", "resolved": "https://registry.npmjs.org/husky/-/husky-9.0.11.tgz", @@ -5162,8 +5226,12 @@ "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" }, "node_modules/lodash.merge": { "version": "4.6.2", @@ -6180,6 +6248,11 @@ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "dev": true }, + "node_modules/property-expr": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/property-expr/-/property-expr-2.0.6.tgz", + "integrity": "sha512-SVtmxhRE/CGkn3eZY1T6pC8Nln6Fr/lu1mKSgRud0eC73whjGfoAogbn78LkD8aFL0zz3bAFerKSnOl7NlErBA==" + }, "node_modules/proxy-from-env": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", @@ -6250,6 +6323,11 @@ "react": "^18.3.1" } }, + "node_modules/react-fast-compare": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-2.0.4.tgz", + "integrity": "sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw==" + }, "node_modules/react-hook-form": { "version": "7.52.1", "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.52.1.tgz", @@ -7112,6 +7190,16 @@ "node": ">=0.8" } }, + "node_modules/tiny-case": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-case/-/tiny-case-1.0.3.tgz", + "integrity": "sha512-Eet/eeMhkO6TX8mnUteS9zgPbUMQa4I6Kkp5ORiBD5476/m+PIRiumP5tmh5ioJpH7k51Kehawy2UDfsnxxY8Q==" + }, + "node_modules/tiny-warning": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", + "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" + }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -7123,6 +7211,11 @@ "node": ">=8.0" } }, + "node_modules/toposort": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/toposort/-/toposort-2.0.2.tgz", + "integrity": "sha512-0a5EOkAUp8D4moMi2W8ZF8jcga7BgZd91O/yabJCFY8az+XSzeGyTKs0Aoo897iV1Nj6guFq8orWDS96z91oGg==" + }, "node_modules/ts-api-utils": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", @@ -7615,6 +7708,28 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/yup": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/yup/-/yup-1.4.0.tgz", + "integrity": "sha512-wPbgkJRCqIf+OHyiTBQoJiP5PFuAXaWiJK6AmYkzQAh5/c2K9hzSApBZG5wV9KoKSePF7sAxmNSvh/13YHkFDg==", + "dependencies": { + "property-expr": "^2.0.5", + "tiny-case": "^1.0.3", + "toposort": "^2.0.2", + "type-fest": "^2.19.0" + } + }, + "node_modules/yup/node_modules/type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/zod": { "version": "3.23.8", "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz", diff --git a/package.json b/package.json index a84b4b59..450b39fe 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,7 @@ "@lukemorales/query-key-factory": "^1.3.4", "@radix-ui/react-alert-dialog": "^1.1.1", "@radix-ui/react-avatar": "^1.1.0", + "@radix-ui/react-dialog": "^1.1.1", "@radix-ui/react-dropdown-menu": "^2.1.1", "@radix-ui/react-label": "^2.1.0", "@radix-ui/react-radio-group": "^1.2.0", @@ -28,6 +29,8 @@ "axios": "^1.7.2", "class-variance-authority": "^0.7.0", "clsx": "^2.1.1", + "date-fns": "^3.6.0", + "formik": "^2.4.6", "lucide-react": "^0.402.0", "next": "14.2.4", "qs": "^6.12.2", @@ -38,6 +41,7 @@ "sharp": "^0.33.4", "tailwind-merge": "^2.4.0", "tailwindcss-animate": "^1.0.7", + "yup": "^1.4.0", "zod": "^3.23.8" }, "devDependencies": { diff --git a/public/icon/arrow-bottom-icon.svg b/public/icon/arrow-bottom-icon.svg new file mode 100644 index 00000000..8e0e4d20 --- /dev/null +++ b/public/icon/arrow-bottom-icon.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/public/icon/arrow-right-icon.svg b/public/icon/arrow-right-icon.svg new file mode 100644 index 00000000..dc5959d5 --- /dev/null +++ b/public/icon/arrow-right-icon.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/apis/emotion.ts b/src/apis/emotion.ts new file mode 100644 index 00000000..8158e5a1 --- /dev/null +++ b/src/apis/emotion.ts @@ -0,0 +1,12 @@ +import { GetMonthlyEmotionLogsRequestType, GetMonthlyEmotionLogsResponseType } from '@/schema/emotion'; + +import httpClient from '.'; + +const getMonthlyEmotionLogs = async (request: GetMonthlyEmotionLogsRequestType): Promise => { + const response = await httpClient.get(`/emotionLogs/monthly`, { + params: request, + }); + return response.data; +}; + +export default getMonthlyEmotionLogs; diff --git a/src/apis/index.ts b/src/apis/index.ts index 6e81823b..0a4b7625 100644 --- a/src/apis/index.ts +++ b/src/apis/index.ts @@ -1,9 +1,9 @@ import axios from 'axios'; import qs from 'qs'; +// NOTE: axios ์„ ์–ธ const httpClient = axios.create({ baseURL: process.env.NEXT_PUBLIC_BASE_URL, - headers: { 'Content-Type': 'application/json' }, paramsSerializer: (parameters) => qs.stringify(parameters, { arrayFormat: 'repeat', encode: false }), }); diff --git a/src/apis/queries.ts b/src/apis/queries.ts index 1f84081c..0010c375 100644 --- a/src/apis/queries.ts +++ b/src/apis/queries.ts @@ -1,6 +1,8 @@ import { createQueryKeyStore } from '@lukemorales/query-key-factory'; import { GetUserRequestType } from '@/schema/user'; +import { GetMonthlyEmotionLogsRequestType } from '@/schema/emotion'; import { getMe, getUser } from './user'; +import getMonthlyEmotionLogs from './emotion'; const quries = createQueryKeyStore({ user: { @@ -13,6 +15,12 @@ const quries = createQueryKeyStore({ queryFn: () => getUser(request), }), }, + emotion: { + getMonthlyEmotionLogs: (request: GetMonthlyEmotionLogsRequestType) => ({ + queryKey: ['getMonthlyEmotionLogs', request], + queryFn: () => getMonthlyEmotionLogs(request), + }), + }, }); export default quries; diff --git a/src/apis/user.ts b/src/apis/user.ts index cd192766..5f924dea 100644 --- a/src/apis/user.ts +++ b/src/apis/user.ts @@ -1,4 +1,4 @@ -import type { GetUserResponseType, GetUserRequestType, PatchMeRequestType } from '@/schema/user'; +import type { GetUserResponseType, GetUserRequestType, PatchMeRequestType, PostPresignedUrlRequestType, PostPresignedUrlResponseType } from '@/schema/user'; import httpClient from '.'; export const getMe = async (): Promise => { @@ -16,3 +16,10 @@ export const updateMe = async (request: PatchMeRequestType): Promise => { + const formData = new FormData(); + formData.append('image', request.image); + const response = await httpClient.post('/images/upload', formData); + return response.data; +}; diff --git a/src/components/Emotion/EmotionSelector.tsx b/src/components/Emotion/EmotionSelector.tsx index fc92728b..4375c3ca 100644 --- a/src/components/Emotion/EmotionSelector.tsx +++ b/src/components/Emotion/EmotionSelector.tsx @@ -3,7 +3,7 @@ import useMediaQuery from '@/hooks/useMediaQuery'; import EmotionIconCard from '@/components/Emotion/EmotionCard'; import { EmotionType, EmotionState } from '@/types/emotion'; import usePostEmotion from '@/hooks/usePostEmotion'; -import useGetEmotion from '@/hooks/useGetEmotion'; +import { useGetEmotion } from '@/hooks/useGetEmotion'; import EmotionSaveToast from './EmotionSaveToast'; /** diff --git a/src/components/ui/dialog.tsx b/src/components/ui/dialog.tsx new file mode 100644 index 00000000..f44152fd --- /dev/null +++ b/src/components/ui/dialog.tsx @@ -0,0 +1,65 @@ +import * as React from 'react'; +import * as DialogPrimitive from '@radix-ui/react-dialog'; +import { X } from 'lucide-react'; + +import cn from '@/lib/utils'; + +const Dialog = DialogPrimitive.Root; + +const DialogTrigger = DialogPrimitive.Trigger; + +const DialogPortal = DialogPrimitive.Portal; + +const DialogClose = DialogPrimitive.Close; + +const DialogOverlay = React.forwardRef, React.ComponentPropsWithoutRef>(({ className, ...props }, ref) => ( + +)); +DialogOverlay.displayName = DialogPrimitive.Overlay.displayName; + +const DialogContent = React.forwardRef, React.ComponentPropsWithoutRef>(({ className, children, ...props }, ref) => ( + + + + {children} + + + Close + + + +)); +DialogContent.displayName = DialogPrimitive.Content.displayName; + +function DialogHeader({ className, ...props }: React.HTMLAttributes) { + return
; +} +DialogHeader.displayName = 'DialogHeader'; + +function DialogFooter({ className, ...props }: React.HTMLAttributes) { + return
; +} +DialogFooter.displayName = 'DialogFooter'; + +const DialogTitle = React.forwardRef, React.ComponentPropsWithoutRef>(({ className, ...props }, ref) => ( + +)); +DialogTitle.displayName = DialogPrimitive.Title.displayName; + +const DialogDescription = React.forwardRef, React.ComponentPropsWithoutRef>(({ className, ...props }, ref) => ( + +)); +DialogDescription.displayName = DialogPrimitive.Description.displayName; + +export { Dialog, DialogPortal, DialogOverlay, DialogClose, DialogTrigger, DialogContent, DialogHeader, DialogFooter, DialogTitle, DialogDescription }; diff --git a/src/hooks/useCalendar.ts b/src/hooks/useCalendar.ts new file mode 100644 index 00000000..44afc6a6 --- /dev/null +++ b/src/hooks/useCalendar.ts @@ -0,0 +1,67 @@ +import { getDaysInMonth } from 'date-fns'; +import { CALENDAR_LENGTH, DAY_OF_WEEK } from '../user/utill/constants'; + +interface CalendarData { + weekCalendarList: number[][]; // ์ฃผ๋ณ„ ๋‚ ์งœ ๋ฆฌ์ŠคํŠธ +} + +// ์ด์ „ ๋‹ฌ์˜ ๋‚ ์งœ๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ํ•จ์ˆ˜ +const getPreviousDays = (firstDayOfCurrentMonth: Date, totalPrevMonthDays: number): number[] => + // ํ˜„์žฌ ์›”์˜ ์ฒซ ๋ฒˆ์งธ ๋‚ ์˜ ์š”์ผ์„ ๊ธฐ์ค€์œผ๋กœ ์ด์ „ ๋‹ฌ์˜ ๋‚ ์งœ๋ฅผ ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜ + Array.from({ length: firstDayOfCurrentMonth.getDay() }, (_, index) => totalPrevMonthDays - firstDayOfCurrentMonth.getDay() + index + 1); +// ํ˜„์žฌ ์›”์˜ ๋‚ ์งœ๋ฅผ ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜ +const getCurrentDays = (totalMonthDays: number): number[] => Array.from({ length: totalMonthDays }, (_, i) => i + 1); // 1๋ถ€ํ„ฐ totalMonthDays๊นŒ์ง€์˜ ๋ฐฐ์—ด ์ƒ์„ฑ +// ๋‹ค์Œ ๋‹ฌ์˜ ๋‚ ์งœ๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ํ•จ์ˆ˜ +const getNextDays = (currentDayList: number[], prevDayList: number[]): number[] => { + // ๋‹ค์Œ ๋‹ฌ์˜ ๋‚ ์งœ ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜์—ฌ ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜ + const nextDayCount = CALENDAR_LENGTH - currentDayList.length - prevDayList.length; + return Array.from({ length: Math.max(nextDayCount, 0) }, (_, index) => index + 1); +}; + +const useCalendar = (currentDate: Date): CalendarData => { + // ํ˜„์žฌ ์›”์˜ ์ด ๋‚ ์งœ ์ˆ˜๋ฅผ ๊ฐ€์ ธ์˜ด + const totalMonthDays = getDaysInMonth(currentDate); + + // ์ด์ „ ๋‹ฌ์˜ ๋งˆ์ง€๋ง‰ ๋‚ ์งœ๋ฅผ ๊ณ„์‚ฐ + const prevMonthLastDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), 0); + // ์ด์ „ ๋‹ฌ์˜ ์ด ๋‚ ์งœ ์ˆ˜๋ฅผ ๊ฐ€์ ธ์˜ด + const totalPrevMonthDays = getDaysInMonth(prevMonthLastDate); + + // ํ˜„์žฌ ์›”์˜ ์ฒซ ๋ฒˆ์งธ ๋‚ ์งœ๋ฅผ ๊ณ„์‚ฐ + const firstDayOfCurrentMonth = new Date(currentDate.getFullYear(), currentDate.getMonth(), 1); + // ์ด์ „ ๋‹ฌ์˜ ๋‚ ์งœ ๋ฆฌ์ŠคํŠธ + const prevDayList = getPreviousDays(firstDayOfCurrentMonth, totalPrevMonthDays); + // ํ˜„์žฌ ์›”์˜ ๋‚ ์งœ ๋ฆฌ์ŠคํŠธ + const currentDayList = getCurrentDays(totalMonthDays); + // ๋‹ค์Œ ๋‹ฌ์˜ ๋‚ ์งœ ๋ฆฌ์ŠคํŠธ + const nextDayList = getNextDays(currentDayList, prevDayList); + + // ์ „์ฒด ๋‚ ์งœ ๋ฆฌ์ŠคํŠธ (์ด์ „ / ํ˜„์žฌ / ๋‹ค์Œ ๋‹ฌ ๋‚ ์งœ ํฌํ•จ) + const currentCalendarList = [...prevDayList, ...currentDayList, ...nextDayList]; + + // ์ฃผ๋ณ„๋กœ ๋‚ ์งœ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ถ„ํ•  + const weekCalendarList: number[][] = []; + currentCalendarList.forEach((currDate, index) => { + const chunkIndex = Math.floor(index / DAY_OF_WEEK); + if (!weekCalendarList[chunkIndex]) { + weekCalendarList[chunkIndex] = []; // ์ฃผ ๋ฐฐ์—ด์ด ์—†์œผ๋ฉด ์ดˆ๊ธฐํ™” + } + weekCalendarList[chunkIndex].push(currDate); // ๋ˆ„์ ๊ฐ’ ๋ฐ˜ํ™˜ + }); + + // NOTE: ํ•œ ๋‹ฌ์ด 5์ฃผ ์ผ ์ˆ˜๋„, 6์ฃผ ์ผ ์ˆ˜๋„ ์žˆ์„ ๋•Œ 5์ฃผ์ธ ๊ฒฝ์šฐ ํ•ด๋‹น ๋‹ฌ์— ํ•„์š”์—†๋Š” ๋‹ค์Œ ๋‹ฌ์˜ ๋‚ ์งœ๊ฐ€ ์ถœ๋ ฅ๋˜๊ธฐ ๋•Œ๋ฌธ์— (CALENDAR_LENGTH๋ฅผ ์ตœ๋Œ€์น˜์ธ 42๋กœ ์žก์•„์„œ) ๋งˆ์ง€๋ง‰ ์ฃผ์˜ ์ฒซ ๋ฒˆ์งธ ์ˆซ์ž๊ฐ€ 10์ดํ•˜์˜ ๋‚ ์งœ๋กœ ์‹œ์ž‘ํ•œ๋‹ค๋ฉด ํ•ด๋‹น ๋ฐฐ์—ด์„ ์‚ญ์ œํ•˜๋„๋ก ์ถ”๊ฐ€. + // TODO: ์ถ”ํ›„ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค๋ฉด ๋ณ€๊ฒฝ ํ•  ์˜ˆ์ • + if (weekCalendarList.length > 0) { + const lastWeek = weekCalendarList[weekCalendarList.length - 1]; + if (lastWeek[0] <= 10) { + weekCalendarList.pop(); + } + } + + // ์บ˜๋ฆฐ๋” ์ •๋ณด๋ฅผ ๋ฐ˜ํ™˜ + return { + weekCalendarList, // ์ฃผ๋ณ„ ๋‚ ์งœ ๋ฆฌ์ŠคํŠธ + }; +}; + +export default useCalendar; diff --git a/src/hooks/useGetEmotion.ts b/src/hooks/useGetEmotion.ts index d8017abc..e8555101 100644 --- a/src/hooks/useGetEmotion.ts +++ b/src/hooks/useGetEmotion.ts @@ -1,11 +1,13 @@ -import { useQuery } from '@tanstack/react-query'; +import quries from '@/apis/queries'; import getEmotion from '@/apis/getEmotion'; import { EmotionType } from '@/types/emotion'; +import { GetMonthlyEmotionLogsRequestType } from '@/schema/emotion'; +import { useQuery } from '@tanstack/react-query'; -const useGetEmotion = () => +export const useMonthlyEmotionLogs = (requset: GetMonthlyEmotionLogsRequestType) => useQuery(quries.emotion.getMonthlyEmotionLogs(requset)); + +export const useGetEmotion = () => useQuery({ queryKey: ['emotion'], queryFn: getEmotion, }); - -export default useGetEmotion; diff --git a/src/hooks/userQueryHooks.ts b/src/hooks/userQueryHooks.ts index 29ba4e2e..f5043b15 100644 --- a/src/hooks/userQueryHooks.ts +++ b/src/hooks/userQueryHooks.ts @@ -1,6 +1,6 @@ import quries from '@/apis/queries'; -import { updateMe } from '@/apis/user'; -import { GetUserResponseType, GetUserRequestType, PatchMeRequestType } from '@/schema/user'; +import { updateMe, createPresignedUrl } from '@/apis/user'; +import { GetUserRequestType, PatchMeRequestType, PostPresignedUrlRequestType, PostPresignedUrlResponseType } from '@/schema/user'; import { MutationOptions } from '@/types/query'; import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'; @@ -8,7 +8,7 @@ export const useMeQuery = () => useQuery(quries.user.getMe()); export const useUserQuery = (requset: GetUserRequestType) => useQuery(quries.user.getUser(requset)); -export const useUpdateMe = (options: MutationOptions) => { +export const useUpdateMe = (options: MutationOptions) => { const queryClient = useQueryClient(); return useMutation({ mutationFn: (request: PatchMeRequestType) => updateMe(request), @@ -21,3 +21,13 @@ export const useUpdateMe = (options: MutationOptions) => { }, }); }; + +// presignedUrl ์ƒ์„ฑ +export const useCreatePresignedUrl = (options?: MutationOptions) => + useMutation({ + mutationFn: (request: PostPresignedUrlRequestType) => createPresignedUrl(request), + ...options, + onSuccess: (data: PostPresignedUrlResponseType) => + // ์ด๋ฏธ์ง€ URL ๋ฐ˜ํ™˜ + data.url, + }); diff --git a/src/pageLayout/MypageLayout/MyPageLayout.tsx b/src/pageLayout/MypageLayout/MyPageLayout.tsx new file mode 100644 index 00000000..12627ade --- /dev/null +++ b/src/pageLayout/MypageLayout/MyPageLayout.tsx @@ -0,0 +1,47 @@ +import Header from '@/components/Header/Header'; +import { useMeQuery } from '@/hooks/userQueryHooks'; +import UserInfo from '@/types/user'; +import EmotionMonthlyLogs from '@/user/ui-profile/EmotionMonthlyLogs'; +import Profile from '@/user/ui-profile/Profile'; +import { useRouter } from 'next/navigation'; + +export default function MyPageLayout() { + const { data, isLoading, isError }: { data: UserInfo | undefined; isLoading: boolean; isError: boolean } = useMeQuery(); + + const router = useRouter(); + + if (isError) { + return
error
; + } + + if (isLoading) { + return
loading
; + } + + // NOTE: ํšŒ์›์ •๋ณด๊ฐ€ ํ™•์ธ๋˜์ง€ ์•Š๋Š”๋‹ค๋ฉด ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€๋กœ ์ด๋™ + if (!data) { + router.push('/login'); + return false; + } + + return ( +
+
{}} /> +
+
+ +
์˜ค๋Š˜์˜ ๊ฐ์ •
+ +
+
+
+
+

๋‚ด ์—ํ”ผ๊ทธ๋žจ(19)

+

๋‚ด ๋Œ“๊ธ€(110)

+
+
๋Œ“๊ธ€ ์ปดํฌ๋„ŒํŠธ
+
+
+
+ ); +} diff --git a/src/pages/mypage/index.tsx b/src/pages/mypage/index.tsx new file mode 100644 index 00000000..69b8c83e --- /dev/null +++ b/src/pages/mypage/index.tsx @@ -0,0 +1,5 @@ +import MyPageLayout from '@/pageLayout/MypageLayout/MyPageLayout'; + +export default function mypage() { + return ; +} diff --git a/src/schema/emotion.ts b/src/schema/emotion.ts index a2239be9..2bc5a92e 100644 --- a/src/schema/emotion.ts +++ b/src/schema/emotion.ts @@ -1,5 +1,25 @@ import * as z from 'zod'; +/** **************** ๊ฐ์ • ๋‹ฌ๋ ฅ ***************** */ +export const GetMonthlyEmotionLogsRequest = z.object({ + userId: z.number(), + year: z.number(), + month: z.number(), +}); + +// ๊ฐ์ • ๋กœ๊ทธ ํ•ญ๋ชฉ์˜ ์Šคํ‚ค๋งˆ ์ •์˜ +const EmotionSchema = z.object({ + id: z.number(), + userId: z.number(), + emotion: z.enum(['MOVED', 'HAPPY', 'WORRIED', 'SAD', 'ANGRY']), + createdAt: z.coerce.date(), +}); + +// ๊ฐ์ • ๋กœ๊ทธ ๋ฐฐ์—ด ์ •์˜ +export const GetMonthlyEmotionLogsResponse = z.array(EmotionSchema); +export type GetMonthlyEmotionLogsRequestType = z.infer; +export type GetMonthlyEmotionLogsResponseType = z.infer; + export const PostEmotionRequest = z.object({ emotion: z.enum(['MOVED', 'JOY', 'WORRY', 'SADNESS', 'ANGER']), }); diff --git a/src/schema/user.ts b/src/schema/user.ts index 4e9fde85..5c6881cb 100644 --- a/src/schema/user.ts +++ b/src/schema/user.ts @@ -1,4 +1,5 @@ import * as z from 'zod'; +import { MAX_FILE_SIZE, ACCEPTED_IMAGE_TYPES } from '@/user/utill/constants'; export const PatchMeRequest = z.object({ image: z.string().url(), @@ -18,6 +19,20 @@ export const GetUserReponse = z.object({ id: z.number(), }); +const PostPresignedUrlRequest = z.object({ + image: z + .instanceof(File) + .refine((file) => file.size <= MAX_FILE_SIZE, `์—…๋กœ๋“œ ํŒŒ์ผ์˜ ์šฉ๋Ÿ‰์€ ์ตœ๋Œ€ ${MAX_FILE_SIZE / (1024 * 1024)}MB ์ž…๋‹ˆ๋‹ค.`) + .refine((file) => ACCEPTED_IMAGE_TYPES.includes(file.type), '.jpg, .jpeg, .png ํ™•์žฅ์ž๋งŒ ์—…๋กœ๋“œ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.'), +}); + +export const PostPresignedUrlResponse = z.object({ + url: z.string().url(), +}); + export type GetUserResponseType = z.infer; export type GetUserRequestType = z.infer; export type PatchMeRequestType = z.infer; + +export type PostPresignedUrlRequestType = z.infer; +export type PostPresignedUrlResponseType = z.infer; diff --git a/src/types/emotion.ts b/src/types/emotion.ts index e64f3d3f..45b5b78c 100644 --- a/src/types/emotion.ts +++ b/src/types/emotion.ts @@ -1,3 +1,19 @@ +export interface Emotion { + userId: number; + year: number; + month: number; +} + +// ๊ฐ์ • ๋กœ๊ทธ ํƒ€์ž… ์ง€์ • +export type EmotionTypeEN = 'MOVED' | 'HAPPY' | 'WORRIED' | 'SAD' | 'ANGRY'; + +export interface EmotionLog { + id: number; + userId: number; + emotion: EmotionTypeEN; + createdAt: Date; +} + export type EmotionType = '๊ฐ๋™' | '๊ธฐ์จ' | '๊ณ ๋ฏผ' | '์Šฌํ””' | '๋ถ„๋…ธ'; export type EmotionState = 'Default' | 'Unclicked' | 'Clicked'; diff --git a/src/types/user.ts b/src/types/user.ts new file mode 100644 index 00000000..d821ed31 --- /dev/null +++ b/src/types/user.ts @@ -0,0 +1,13 @@ +export default interface UserInfo { + nickname: string; + image: string; + id: number; + updatedAt: Date; + createdAt: Date; + teamId: string; +} + +export interface UserProfileProps { + image: string; + nickname: string; +} diff --git a/src/user/ui-profile/Calendar.tsx b/src/user/ui-profile/Calendar.tsx new file mode 100644 index 00000000..4ce6d06a --- /dev/null +++ b/src/user/ui-profile/Calendar.tsx @@ -0,0 +1,96 @@ +import React, { useState } from 'react'; +import Image from 'next/image'; +import { subMonths } from 'date-fns'; +import { EmotionLog, EmotionTypeEN } from '@/types/emotion'; +import useCalendar from '../../hooks/useCalendar'; +import { DAY_LIST, DATE_MONTH_FIXER, iconPaths } from '../utill/constants'; +import CalendarHeader from './CalendarHeader'; + +interface CalendarProps { + currentDate: Date; // ํ˜„์žฌ ๋‚ ์งœ + setCurrentDate: React.Dispatch>; // ํ˜„์žฌ ๋‚ ์งœ๋ฅผ ์„ค์ •ํ•˜๋Š” ํ•จ์ˆ˜ + monthlyEmotionLogs: EmotionLog[]; +} + +export default function Calendar({ currentDate, setCurrentDate, monthlyEmotionLogs }: CalendarProps) { + // ์บ˜๋ฆฐ๋” ํ•จ์ˆ˜ ํ˜ธ์ถœ + const { weekCalendarList } = useCalendar(currentDate); + // ๊ฐ์ • ํ•„ํ„ฐ + const [selectedEmotion, setSelectedEmotion] = useState(null); + + // ๋‹ฌ๋ ฅ์— ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋งคํ•‘ + const emotionMap: Record = Array.isArray(monthlyEmotionLogs) + ? monthlyEmotionLogs.reduce>((acc, log) => { + const date = new Date(log.createdAt); + const dateString = `${date.getFullYear()}-${String(date.getMonth() + 1).padStart(2, '0')}-${String(date.getDate()).padStart(2, '0')}`; + acc[dateString] = log.emotion as EmotionTypeEN; + return acc; + }, {}) + : {}; + + // ์ด์ „ ๋‹ฌ ํด๋ฆญ + const handlePrevMonth = () => setCurrentDate((prevDate) => subMonths(prevDate, DATE_MONTH_FIXER)); + // ๋‹ค์Œ ๋‹ฌ ํด๋ฆญ + const handleNextMonth = () => setCurrentDate((prevDate) => subMonths(prevDate, -DATE_MONTH_FIXER)); + + // ๊ฐ์ • ํ•„ํ„ฐ + const handleEmotionSelect = (emotion: EmotionTypeEN) => { + // ํ˜„์žฌ ์„ ํƒ๋œ ๊ฐ์ •๊ณผ ๊ฐ™์œผ๋ฉด ์ดˆ๊ธฐํ™” + if (selectedEmotion === emotion) { + setSelectedEmotion(null); + } else { + setSelectedEmotion(emotion); + } + }; + + // ํ•„ํ„ฐ๋ง๋œ ๊ฐ์ • ๋งต ์ƒ์„ฑ + const filteredEmotionMap = selectedEmotion ? Object.fromEntries(Object.entries(emotionMap).filter(([, value]) => value === selectedEmotion)) : emotionMap; + + return ( +
+ {/* ์บ˜๋ฆฐ๋” ํ—ค๋” */} + + {/* ์บ˜๋ฆฐ๋” */} +
+
+ {DAY_LIST.map((day) => ( +
+ {day} +
+ ))} +
+ {weekCalendarList.map((week, weekIndex) => ( + // TODO: index ๊ฐ’ Lint error. ์ž„์‹œ๋กœ ์ฃผ์„ ์‚ฌ์šฉ. ์ถ”ํ›„ ์ˆ˜์ • ์˜ˆ์ • + // eslint-disable-next-line react/no-array-index-key +
+ {week.map((day, dayIndex) => { + // ํ˜„์žฌ ๋‚ ์งœ์™€ ๋น„๊ต + const isToday = day === currentDate.getDate() && currentDate.getMonth() === new Date().getMonth() && currentDate.getFullYear() === new Date().getFullYear(); + const dateString = `${currentDate.getFullYear()}-${String(currentDate.getMonth() + 1).padStart(2, '0')}-${String(day).padStart(2, '0')}`; + const emotion: EmotionTypeEN = filteredEmotionMap[dateString]; // ๋‚ ์งœ์— ํ•ด๋‹นํ•˜๋Š” ๊ฐ์ • ๊ฐ€์ ธ์˜ค๊ธฐ + const iconPath = emotion && iconPaths[emotion] ? iconPaths[emotion].path : '/icon/BW/SmileFaceBWIcon.svg'; + + return ( +
+ {emotion ? ( +
+

{day}

+ ๊ฐ์ • +
+ ) : ( +

{day}

+ )} +
+ ); + })} +
+ ))} +
+
+ ); +} diff --git a/src/user/ui-profile/CalendarHeader.tsx b/src/user/ui-profile/CalendarHeader.tsx new file mode 100644 index 00000000..2c337e1c --- /dev/null +++ b/src/user/ui-profile/CalendarHeader.tsx @@ -0,0 +1,58 @@ +import { DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, DropdownMenuGroup, DropdownMenu } from '@/components/ui/dropdown-menu'; +import { Button } from '@/components/ui/button'; +import Image from 'next/image'; +import { EmotionTypeEN } from '@/types/emotion'; +import ARROW_BOTTOM_ICON from '../../../public/icon/arrow-bottom-icon.svg'; +import ARROW_RIGHT_ICON from '../../../public/icon/arrow-right-icon.svg'; +import ARROW_LEFT_ICON from '../../../public/icon/arrow-left-icon.svg'; +import { iconPaths } from '../utill/constants'; + +interface CalendarHeaderProps { + currentDate: Date; + onPrevMonth: () => void; + onNextMonth: () => void; + onEmotionSelect: (emotion: EmotionTypeEN) => void; + selectEmotion: EmotionTypeEN | null; +} + +export default function CalendarHeader({ currentDate, onPrevMonth, onNextMonth, onEmotionSelect, selectEmotion }: CalendarHeaderProps) { + return ( +
+
+
{`${currentDate.getFullYear()}๋…„ ${currentDate.getMonth() + 1}์›”`}
+ + + + + + + {Object.entries(iconPaths).map(([emotionKey, { path, name }]) => ( + + + + ))} + + + +
+
+ + +
+
+ ); +} diff --git a/src/user/ui-profile/Chart.tsx b/src/user/ui-profile/Chart.tsx new file mode 100644 index 00000000..6e89af4c --- /dev/null +++ b/src/user/ui-profile/Chart.tsx @@ -0,0 +1,96 @@ +import { EmotionLog, EmotionTypeEN } from '@/types/emotion'; +import Image from 'next/image'; +import { iconPaths } from '../utill/constants'; + +interface ChartProps { + monthlyEmotionLogs: EmotionLog[]; +} + +export default function Chart({ monthlyEmotionLogs }: ChartProps) { + // ๊ฐ์ •๋ณ„ ๋นˆ๋„์ˆ˜ ๊ณ„์‚ฐ + const emotionCounts = monthlyEmotionLogs.reduce( + (count, log) => { + const { emotion } = log; + return { + ...count, // ๊ธฐ์กด์˜ count๋ฅผ ๋ณต์‚ฌ + [emotion]: (count[emotion] || 0) + 1, // ํ˜„์žฌ ๊ฐ์ •์˜ ๊ฐœ์ˆ˜ ์ฆ๊ฐ€ + }; + }, + {} as Record, + ); + + // ๊ฐ์ • ์ข…๋ฅ˜ ๋ฐ ์ด ๊ฐ์ • ์ˆ˜ ๊ณ„์‚ฐ + const TOTAL_COUNT = monthlyEmotionLogs.length; + const EMOTIONS: EmotionTypeEN[] = ['MOVED', 'HAPPY', 'WORRIED', 'SAD', 'ANGRY']; + const RADIUS = 90; // ์›์˜ ๋ฐ˜์ง€๋ฆ„ + const CIRCUMFERENCE = 2 * Math.PI * RADIUS; + + // ๊ฐ€์žฅ ๋งŽ์ด ๋‚˜ํƒ€๋‚˜๋Š” ๊ฐ์ • ์ฐพ๊ธฐ + const maxEmotion = EMOTIONS.reduce((max, emotion) => (emotionCounts[emotion] > emotionCounts[max] ? emotion : max), EMOTIONS[0]); + + // ์›ํ˜• ์ฐจํŠธ์˜ ๊ฐ ๊ฐ์ •์— ๋Œ€ํ•œ strokeDasharray์™€ strokeDashoffset ๊ณ„์‚ฐ + let offset = 0; + + return ( +
+

๊ฐ์ • ์ฐจํŠธ

+
+
+ + + {EMOTIONS.map((emotion) => { + const count = emotionCounts[emotion] || 0; + const percentage = TOTAL_COUNT > 0 ? count / TOTAL_COUNT : 0; // 0์œผ๋กœ ๋‚˜๋ˆ„๊ธฐ ๋ฐฉ์ง€ + const strokeDasharray = `${CIRCUMFERENCE * percentage} ${CIRCUMFERENCE * (1 - percentage)}`; + + // ์ƒ‰์ƒ ์„ค์ • + let strokeColor; + switch (emotion) { + case 'HAPPY': + strokeColor = '#FBC85B'; + break; + case 'SAD': + strokeColor = '#E3E9F1'; + break; + case 'WORRIED': + strokeColor = '#C7D1E0'; + break; + case 'ANGRY': + strokeColor = '#EFF3F8'; + break; + default: + strokeColor = '#48BB98'; + } + + const circle = ; + + offset += CIRCUMFERENCE * percentage; // ๋‹ค์Œ ์›์„ ์œ„ํ•œ offset ์—…๋ฐ์ดํŠธ + return circle; + })} + + {/* ์ค‘์•™์— ๊ฐ€์žฅ ๋งŽ์ด ๋‚˜ํƒ€๋‚˜๋Š” ๊ฐ์ • ์ถœ๋ ฅ */} +
+ ๊ฐ์ • +

{iconPaths[maxEmotion].name}

+
+
+
+
+ {EMOTIONS.map((emotion) => { + const count = emotionCounts[emotion] || 0; + const percentage = TOTAL_COUNT > 0 ? Math.floor((count / TOTAL_COUNT) * 100) : 0; // ํผ์„ผํŠธ ๊ณ„์‚ฐ ๋ฐ ์†Œ์ˆ˜์  ๋ฒ„๋ฆฌ๊ธฐ + + return ( +
+

+ ๊ฐ์ • +

{percentage}%

+
+ ); + })} +
+
+
+
+ ); +} diff --git a/src/user/ui-profile/EmotionMonthlyLogs.tsx b/src/user/ui-profile/EmotionMonthlyLogs.tsx new file mode 100644 index 00000000..18d4ada8 --- /dev/null +++ b/src/user/ui-profile/EmotionMonthlyLogs.tsx @@ -0,0 +1,40 @@ +import { useMonthlyEmotionLogs } from '@/hooks/useGetEmotion'; +import { Emotion } from '@/types/emotion'; +import { useEffect, useState } from 'react'; +import Calendar from './Calendar'; +import Chart from './Chart'; + +interface EmotionMonthlyLogsProps { + userId: number; +} + +export default function EmotionMonthlyLogs({ userId }: EmotionMonthlyLogsProps) { + // ํ˜„์žฌ ๋‚ ์งœ๋ฅผ ์ƒํƒœ๋กœ ๊ด€๋ฆฌ + const [currentDate, setCurrentDate] = useState(new Date()); + + // ๊ฐ์ • ๋‹ฌ๋ ฅ ๊ฐ์ฒด ์ƒํƒœ ์ถ”๊ฐ€ + const [emotionRequest, setEmotionRequest] = useState({ + userId, + year: currentDate.getFullYear(), + month: currentDate.getMonth() + 1, + }); + + // '์›”'์ด ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค request ์—…๋ฐ์ดํŠธ + useEffect(() => { + setEmotionRequest({ + userId, + year: currentDate.getFullYear(), + month: currentDate.getMonth() + 1, + }); + }, [currentDate]); + + // ์›”๋ณ„ ๊ฐ์ • ๋กœ๊ทธ ์กฐํšŒ + const { data: monthlyEmotionLogs = [] } = useMonthlyEmotionLogs(emotionRequest); + + return ( + <> + + + + ); +} diff --git a/src/user/ui-profile/Profile.tsx b/src/user/ui-profile/Profile.tsx new file mode 100644 index 00000000..42fd5f74 --- /dev/null +++ b/src/user/ui-profile/Profile.tsx @@ -0,0 +1,41 @@ +import Image from 'next/image'; +import { UserProfileProps } from '@/types/user'; +import { useState } from 'react'; +import { Button } from '@/components/ui/button'; +import { Dialog, DialogTrigger, DialogContent } from '@/components/ui/dialog'; +import { sampleImage } from '../utill/constants'; +import ProfileEdit from './ProfileEdit'; + +export default function Profile({ image, nickname }: UserProfileProps) { + const [isModalOpen, setIsModalOpen] = useState(false); + + const handleProfileEditClose = () => { + setIsModalOpen(false); + }; + + // TODO: ์—ฌ๋Ÿฌ๊ฐœ์˜ ์ƒ˜ํ”Œ ์ด๋ฏธ์ง€ ๋žœ๋คํ•˜๊ฒŒ ๋œจ๋„๋ก ์ถ”๊ฐ€ ํ•  ์˜ˆ์ • + const profileImage = image || sampleImage; + + return ( +
+
+
+ ์œ ์ € ํ”„๋กœํ•„ +
+
+

{nickname}

+
+ + + + + + + + +
+
+ ); +} diff --git a/src/user/ui-profile/ProfileEdit.tsx b/src/user/ui-profile/ProfileEdit.tsx new file mode 100644 index 00000000..218f2c7a --- /dev/null +++ b/src/user/ui-profile/ProfileEdit.tsx @@ -0,0 +1,140 @@ +import Image from 'next/image'; +import { UserProfileProps } from '@/types/user'; +import { Input } from '@/components/ui/input'; +import { Button } from '@/components/ui/button'; +import Label from '@/components/ui/label'; +import { DialogFooter, DialogHeader, DialogTitle } from '@/components/ui/dialog'; +import { useToast } from '@/components/ui/use-toast'; +import { useEffect, useRef } from 'react'; +import { Form, Formik, useFormik } from 'formik'; +import { useCreatePresignedUrl, useUpdateMe } from '@/hooks/userQueryHooks'; +import * as Yup from 'yup'; +import { AxiosError } from 'axios'; +import fileNameChange from '../utill/fileNameChange'; + +interface UserProfileEditProps { + initialValues: { + image: string; + nickname: string; + }; + onModalClose: () => void; +} + +const validationSchema = Yup.object().shape({ + nickname: Yup.string().min(1, '๋‹‰๋„ค์ž„์€ 1์ž ์ด์ƒ 30์ž ์ดํ•˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.').max(30, '๋‹‰๋„ค์ž„์€ 1์ž ์ด์ƒ 30์ž ์ดํ•˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.').required('๋‹‰๋„ค์ž„์€ ํ•„์ˆ˜ ํ•ญ๋ชฉ์ž…๋‹ˆ๋‹ค.'), +}); + +export default function ProfileEdit({ initialValues, onModalClose }: UserProfileEditProps) { + const createPresignedUrl = useCreatePresignedUrl(); + const fileInputRef = useRef(null); + + const { toast } = useToast(); + + const handleSubmit = async () => { + await formik.submitForm(); // Formik์˜ submitForm ํ•จ์ˆ˜ ํ˜ธ์ถœ + }; + + const { mutate: updateMe } = useUpdateMe({ + onSuccess: () => { + onModalClose(); + toast({ + description: 'ํ”„๋กœํ•„ ์ˆ˜์ •์ด ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.', + }); + }, + onError: () => { + toast({ + description: 'ํ”„๋กœํ•„ ์ˆ˜์ • ์‹คํŒจ', + }); + }, + }); + + const formik = useFormik({ + initialValues: { + image: '', + nickname: '', + }, + validationSchema, + onSubmit: async (values, { setSubmitting }) => { + try { + // ํ”„๋กœํ•„ ์—…๋ฐ์ดํŠธ + await updateProfile(values); + setSubmitting(false); + } catch (error) { + // ์—๋Ÿฌ ์ฒ˜๋ฆฌ + } finally { + setSubmitting(false); + } + }, + }); + + const updateProfile = (values: UserProfileProps) => { + updateMe(values); + }; + + // ํ”„๋กœํ•„ ์‚ฌ์ง„ ๋ณ€๊ฒฝ ํด๋ฆญ + const handleImageEditClick = () => { + if (fileInputRef.current) { + fileInputRef.current.click(); + } + }; + + // ์ด๋ฏธ์ง€ ๋ณ€๊ฒฝ ์‹œ + async function handleImageChange(e: React.ChangeEvent): Promise { + const { files } = e.currentTarget; + if (files && files.length > 0) { + const file = files[0]; + + try { + // ์ค‘๋ณต๋œ ํŒŒ์ผ๋ช… ๋ฐ ํ•œ๊ธ€ํŒŒ์ผ์ด ์ €์žฅ๋˜์ง€ ์•Š๋„๋ก ํŒŒ์ผ์ด๋ฆ„ ํฌ๋ฉง ๋ณ€๊ฒฝ + const newFileName = fileNameChange(); + const newFile = new File([file], `${newFileName}.${file.name.split('.').pop()}`, { type: file.type }); + + // presignedUrl ๊ตฌํ•˜๋Š” ํ•จ์ˆ˜ (s3 ์—…๋กœ๋“œ๊นŒ์ง€ ๊ฐ™์ด) + const { url } = await createPresignedUrl.mutateAsync({ image: newFile }); + formik.setFieldValue('image', url); + } catch (error) { + // ์—๋Ÿฌ ์ฒ˜๋ฆฌ: ์‹คํŒจ ์‹œ ํ† ์ŠคํŠธ ๋ฉ”์‹œ์ง€ + const axiosError = error as AxiosError; + + onModalClose(); + const errorMessage = `(error: ${axiosError.response?.status}) ์ž˜๋ชป ๋œ ์š”์ฒญ์ž…๋‹ˆ๋‹ค. ๊ด€๋ฆฌ์ž์—๊ฒŒ ๋ฌธ์˜ํ•ด์ฃผ์„ธ์š”`; + + toast({ + description: errorMessage, + className: 'bg-red-400 text-white', + }); + } + } + } + + useEffect(() => { + formik.setValues(initialValues); + }, [initialValues]); + + return ( + + {({ isSubmitting }) => ( + + + ํ”„๋กœํ•„ ์ˆ˜์ • +
+
+ ์œ ์ € ํ”„๋กœํ•„ + handleImageChange(e)} className='hidden' ref={fileInputRef} /> +
+
+ + +
+
+ + + +
+ + )} +
+ ); +} diff --git a/src/user/utill/constants.ts b/src/user/utill/constants.ts new file mode 100644 index 00000000..9ff423c8 --- /dev/null +++ b/src/user/utill/constants.ts @@ -0,0 +1,20 @@ +// ํŒŒ์ผ ์—…๋กœ๋“œ ๊ด€๋ จ +export const MAX_FILE_SIZE = 1024 * 1024 * 5; // ํŒŒ์ผ ์—…๋กœ๋“œ ์ตœ๋Œ€ ์šฉ๋Ÿ‰ 5MB +export const ACCEPTED_IMAGE_TYPES = ['image/jpeg', 'image/jpg', 'image/png']; // ํ—ˆ์šฉ ๊ฐ€๋Šฅ ํ™•์žฅ์ž +export const sampleImage = '/ProfileTestImage.jpg'; // ์ดˆ๊ธฐํ”„๋กœํ•„ ์ด๋ฏธ์ง€ + +// ์บ˜๋ฆฐ๋” ๊ด€๋ จ ์ƒ์ˆ˜ +export const DAY_LIST = ['์ผ', '์›”', 'ํ™”', '์ˆ˜', '๋ชฉ', '๊ธˆ', 'ํ† ']; // ์š”์ผ +export const DATE_MONTH_FIXER = 1; // ๋‚ ์งœ ์กฐ์ • ์ƒ์ˆ˜ (ํ˜„์žฌ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ, ํ•„์š”์— ๋”ฐ๋ผ ํ™œ์šฉ ๊ฐ€๋Šฅ) +export const CALENDAR_LENGTH = 42; // 6์ฃผ์— ๋งž์ถ”์–ด ์บ˜๋ฆฐ๋”์˜ ์ด ๊ธธ์ด๋ฅผ 42๋กœ ์„ค์ • +export const DAY_OF_WEEK = 7; // ํ•œ ์ฃผ์˜ ๋‚  ์ˆ˜ (์ผ~ํ† ) +export const DEFAULT_TRASH_VALUE = -1; // ๊ธฐ๋ณธ๊ฐ’ ์„ค์ • (ํ•„์š”์— ๋”ฐ๋ผ ์‚ฌ์šฉ ๊ฐ€๋Šฅ) + +// ์•„์ด์ฝ˜ ํŒŒ์ผ ๊ฒฝ๋กœ ๋งคํ•‘ +export const iconPaths = { + MOVED: { path: '/icon/Color/HeartFaceColorIcon.svg', name: '๊ธฐ์จ', color: 'bg-illust-green' }, + HAPPY: { path: '/icon/Color/SmileFaceColorIcon.svg', name: '๊ฐ๋™', color: 'bg-illust-yellow' }, + WORRIED: { path: '/icon/Color/ThinkFaceColorIcon.svg', name: '๊ณ ๋ฏผ', color: 'bg-sub-gray_1' }, + SAD: { path: '/icon/Color/SadFaceColorIcon.svg', name: '์Šฌํ””', color: 'bg-sub-gray_2' }, + ANGRY: { path: '/icon/Color/AngryFaceColorIcon.svg', name: '๋ถ„๋…ธ', color: 'bg-sub-gray_3' }, +}; diff --git a/src/user/utill/fileNameChange.ts b/src/user/utill/fileNameChange.ts new file mode 100644 index 00000000..73007d0c --- /dev/null +++ b/src/user/utill/fileNameChange.ts @@ -0,0 +1,8 @@ +function fileNameChange() { + const now = new Date(); + const formattedFileName = `profile${now.getHours()}${now.getMinutes()}${now.getSeconds()}${now.getDate()}${now.getMonth() + 1}${now.getFullYear()}`; + + return formattedFileName; +} + +export default fileNameChange; diff --git a/tailwind.config.js b/tailwind.config.js index 25a4545d..a8b08d2c 100644 --- a/tailwind.config.js +++ b/tailwind.config.js @@ -50,6 +50,9 @@ module.exports = { 'sub-gray_2': '#E3E9F1', 'sub-gray_3': '#EFF3F8', }, + boxShadow: { + '3xl': '0px 0px 36px 0px rgba(0, 0, 0, 0.05)', + }, screens: { sm: '640px', md: '768px', From 08ab0ad91df8dc6db3622f3074c15479772b253d Mon Sep 17 00:00:00 2001 From: NEWJIN <109906670+newjinlee@users.noreply.github.com> Date: Tue, 30 Jul 2024 21:22:04 +0900 Subject: [PATCH 03/17] =?UTF-8?q?FE-51=20=F0=9F=94=A8=20=EA=B3=B5=EC=9A=A9?= =?UTF-8?q?=20api=20=EC=88=98=EC=A0=95=20=EB=B0=8F=20=EC=B5=9C=EC=8B=A0?= =?UTF-8?q?=ED=99=94=20(#119)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) * FE-51 ๐Ÿ”จ ์˜ค๋Š˜์˜ ๊ฐ์ • ๊ด€๋ จ ์ˆ˜์ • (#115) * FE-51 :hammer: ๊ฐ์ • ์˜์–ด์ด๋ฆ„ ์ˆ˜์ • * FE-51 :hammer: postEmotion ํ† ํฐ ์ œ๊ฑฐ * FE-51 ๐Ÿ”€ ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#117) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-32 ๐Ÿ”€๊ฒ€์ƒ‰ ํŽ˜์ด์ง€ ๋ฉ”์ธ ๋จธ์ง€ (#107) * ๐Ÿ’„FE-33 ๊ฒ€์ƒ‰ ํŽ˜์ด์ง€ UI (#10) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * โœจFeat: SearchBar UI ์ดˆ์•ˆ ์™„์„ฑ * styles: tailwind css ํฐํŠธ ์‚ฌ์ด์ฆˆ ์ถ”๊ฐ€ * feat: RecentSearches UI ์ดˆ์•ˆ ์™„์„ฑ * ๏ฟฝstyles: SearchResults UI ์ˆ˜์ • * ๏ฟฝstyles: RecentSearches UI ์ˆ˜์ • * โœจstyles: ๋ฐ˜์‘ํ˜• UI ์ถ”๊ฐ€ * FE-33 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • ์ค‘ * FE-33 fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * FE-33 fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * FE-33 fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> * FE-65 โœจ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ๊ธฐ๋Šฅ (#51) * FE-65 โœจfeat: ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-65 โœจfeat: ๊ฒ€์ƒ‰๋ฐ”์™€ ์—ฐ๋™ํ•˜์—ฌ ์ฆ‰์‹œ ๋ฐ˜์˜๋˜๋„๋ก ์ˆ˜์ • * FE-65 โœจfeat: debounce๋ฅผ ์œ„ํ•œ lodash ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜ * FE-65 โœจfeat: debounce ๊ธฐ๋Šฅ ์ ์šฉ(++lodash ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ) * FE-65 โœจfeat: useEffectt๋กœ debouncedSearchํ•จ์ˆ˜ ์˜์กด์„ฑ ์„ค์ • * FE-65 โœจfeat: useCallback ๋Œ€์‹  useRef๋กœ ๋ณ€๊ฒฝ * FE-65 โœจfix:: debounce ๊ธฐ๋Šฅ ์ œ๊ฑฐ(๋ถˆํ•„์š”) * FE-65 โœจfeat: focus๋  ๋•Œ placeholder ์‚ฌ๋ผ์ง€๊ฒŒ ์ˆ˜์ • ๋ฐ UI ์ˆ˜์ • * FE-65 โœจfeat: isInitialMount ์„ ์–ธ ๋ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-65 โœจfix: ์ฃผ์„ ์ˆ˜์ • * FE-65 โœจfeat: ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ํด๋ฆญ ์‹œ ๊ทธ ๊ฒ€์ƒ‰์–ด๋กœ ๊ฒ€์ƒ‰๋˜๋Š” ๊ธฐ๋Šฅ * FE-65 styles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-74 โœจ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ๊ธฐ๋Šฅ (#73) * FE-74 fix: ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” lodash ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ญ์ œ * FE-74 โœจfeat: ํ…Œ์ŠคํŠธ ์šฉ api ์ฝ”๋“œ ๊ฐ€์ ธ์˜ค๊ธฐ * FE-74 โœจfeat: ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-74 โœจfix: ์ค‘๋ณต๋œ key, href ์ œ๊ฑฐ ๋ฐ ๊ทœ์น™ ๋ฌด์‹œ ์ฃผ์„ ์ถ”๊ฐ€ * FE-74 โœจtest: ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€ * FE-74 โœจfeat: ๊ฒ€์ƒ‰์–ด ํ•˜์ด๋ผ์ดํŒ… ๋ฐ ์ˆœ์„œ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-74 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ api ํŒŒ์ผ ์‚ญ์ œ * FE-74 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-74 โœจfix: ๋ฉ˜ํ† ๋ง ๋‚ด์šฉ ์ฃผ์„์œผ๋กœ ์ถ”๊ฐ€ * FE-32 ๐Ÿ”€ epic๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#77) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> * FE-75 โœจ๋ฌดํ•œ ์Šคํฌ๋กค, ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ URL์— ์ €์žฅ ๊ธฐ๋Šฅ ๊ตฌํ˜„ (#104) * FE-75 โœจstyles: tailwind .config ํŒŒ์ผ ๋ฉ”์ธ๊ณผ ํ†ตํ•ฉ * FE-75 โœจfeat: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ Header ์ถ”๊ฐ€ * FE-75 โœจrefactor: useMemo ์‚ฌ์šฉ * FE-75 โœจfeat: URL์— ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์ €์žฅ * FE-75 โœจstyles: ๋กœ๋”ฉ ์Šคํƒ€์ผ ๊ตฌํ˜„ * FE-75 โœจfeat: ์‹ค์ œ api ์ถ”๊ฐ€ * FE-75 โœจfeat: api ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-75 โœจfeat: ๋ฌดํ•œ ์Šคํฌ๋กค ๊ตฌํ˜„ * FE-75 โœจfix: ์˜์กด์„ฑ ๋ฐฐ์—ด์—์„œ ๋กœ๋”ฉ ์ƒํƒœ ์ œ๊ฑฐ * FE-75 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-75 โœจfeat:: ์‚ฌ์šฉ์ž๋งˆ๋‹ค ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ณ€๊ฒฝ * FE-75 โœจfix: ๊ฒ€์ƒ‰ ์ „ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ค์ง€ ์•Š๋„๋ก ์ˆ˜์ • * FE-32 ๐Ÿ”€๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#105) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * .http ํŒŒ์ผ ์‚ญ์ œ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-32 ๐Ÿ”€๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#110) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * .http ํŒŒ์ผ ์‚ญ์ œ * merge main --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-32 ๊ฒ€์ƒ‰ํŽ˜์ด์ง€ ๋ฉ”์ธ ์ถฉ๋Œ ์ˆ˜์ • (#112) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: MOON Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-27 :twisted_rightwards_arrows: ๋งˆ์ดํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#100) * FE-34 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ํ”„๋กœํ•„ ์ˆ˜์ • ๊ธฐ๋Šฅ (#53) * FE-34 :lipstick: ๋งˆ์ดํŽ˜์ด์ง€ UI ์ดˆ๊ธฐ์ž‘์—… * FE-34 :sparkles: ๋‚ด ์ •๋ณด ์กฐํšŒ API ์—ฐ๋™ * FE-34 :lipstick: shadcn/ui Dialog ์„ค์น˜ * FE-34 :sparkles: ํ”„๋กœํ•„ ์ˆ˜์ • API ์—ฐ๋™ * FE-34 :sparkles: ์ด๋ฏธ์ง€ ์‹คํŒจ ํ† ์ŠคํŠธ ์ถ”๊ฐ€ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ์บ˜๋ฆฐ๋” ์ถœ๋ ฅ ํ•จ์ˆ˜ (#58) * FE-36 :lipstick: ๊ฐ์ •๋‹ฌ๋ ฅ UI * FE-36 :sparkles: ์บ˜๋ฆฐ๋” ํ•จ์ˆ˜ ์ƒ์„ฑ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •๋‹ฌ๋ ฅ (#65) * FE-36 :lipstick: ๊ฐ์ •๋‹ฌ๋ ฅ UI * FE-36 :sparkles: ์บ˜๋ฆฐ๋” ํ•จ์ˆ˜ ์ƒ์„ฑ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •๋‹ฌ๋ ฅ: ์˜ค๋Š˜ ๋‚ ์งœ ํ‘œ์‹œ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ์›” ๋ณ„ ๊ฐ์ •๋กœ๊ทธ ์กฐํšŒ API ์—ฐ๋™ * FE-36 :sparkles: ์›”๋ณ„ ๊ฐ์ • ๋กœ๊ทธ ํ•ด๋‹น ๋‚ ์งœ์— ์ถœ๋ ฅ * FE-36 :lipstick: ๋‹ฌ๋ ฅ css ์ˆ˜์ • * FE-36 :art: ๋งˆ์ดํŽ˜์ด์ง€ ์บ˜๋ฆฐ๋” ํ—ค๋” ์ปดํฌ๋„ŒํŠธ ๋ถ„๋ฆฌ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •๋‹ฌ๋ ฅ ํ•„ํ„ฐ๊ธฐ๋Šฅ * FE-27 :twisted_rightwards_arrows: ์—ํ”ฝ ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#81) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-27 :twisted_rightwards_arrows: ๋งˆ์ดํŽ˜์ด์ง€ ์—ํ”ฝ ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#85) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-27 :twisted_rightwards_arrows: ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#86) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-37 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •์ฐจํŠธ (#89) * FE-37 :recycle: ์›”๋ณ„ ๊ฐ์ •๋กœ๊ทธ ์กฐํšŒ ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง * FE-37 :sparkles: ๊ฐ์ • ์ฐจํŠธ * FE-37 :hammer: ์ƒ์ˆ˜ ์ปจ๋ฒค์…˜ ์ˆ˜์ • * FE-27 :twisted_rightwards_arrows: ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#99) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.coโ€ฆ * FE-51 ๐Ÿ”จ ๊ณต์šฉ api ์˜ค๋Š˜์˜ ๊ฐ์ • ์ˆ˜์ • (#118) * FE-51 :hammer: ๊ฐ์ • ์˜์–ด์ด๋ฆ„ ์ˆ˜์ • * FE-51 :hammer: postEmotion ํ† ํฐ ์ œ๊ฑฐ --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: JeonYumin <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: MOON Co-authored-by: kich555 <79491683+kich555@users.noreply.github.com> Co-authored-by: morrison --- src/apis/postEmotion.ts | 11 +---------- src/schema/auth.ts | 1 + src/schema/emotion.ts | 6 +++--- src/types/EmotionTypes.ts | 14 -------------- src/utils/emotionMap.ts | 24 ++++++++++++------------ 5 files changed, 17 insertions(+), 39 deletions(-) delete mode 100644 src/types/EmotionTypes.ts diff --git a/src/apis/postEmotion.ts b/src/apis/postEmotion.ts index 98130bc7..168a8c13 100644 --- a/src/apis/postEmotion.ts +++ b/src/apis/postEmotion.ts @@ -2,21 +2,12 @@ import { EmotionType } from '@/types/emotion'; import type { PostEmotionRequestType, PostEmotionResponseType } from '@/schema/emotion'; import { translateEmotionToEnglish } from '@/utils/emotionMap'; import httpClient from '.'; -import { getMe } from './user'; const postEmotion = async (emotion: EmotionType): Promise => { - const user = await getMe(); - if (!user) { - throw new Error('๋กœ๊ทธ์ธ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.'); - } - const englishEmotion = translateEmotionToEnglish(emotion); const request: PostEmotionRequestType = { emotion: englishEmotion }; - const response = await httpClient.post('/emotionLogs/today', { - ...request, - userId: user.id, - }); + const response = await httpClient.post('/emotionLogs/today', request); return response.data; }; diff --git a/src/schema/auth.ts b/src/schema/auth.ts index 0a9069a8..5de73332 100644 --- a/src/schema/auth.ts +++ b/src/schema/auth.ts @@ -20,6 +20,7 @@ export const PostSignUpRequest = z }); // NOTE: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ + export const PostSigninRequest = z.object({ email: z.string().min(1, { message: '์ด๋ฉ”์ผ์€ ํ•„์ˆ˜ ์ž…๋ ฅ์ž…๋‹ˆ๋‹ค.' }).email({ message: '์˜ฌ๋ฐ”๋ฅธ ์ด๋ฉ”์ผ ์ฃผ์†Œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.' }), password: z.string().min(1, { message: '๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” ํ•„์ˆ˜ ์ž…๋ ฅ์ž…๋‹ˆ๋‹ค.' }), diff --git a/src/schema/emotion.ts b/src/schema/emotion.ts index 2bc5a92e..35dc2f35 100644 --- a/src/schema/emotion.ts +++ b/src/schema/emotion.ts @@ -21,19 +21,19 @@ export type GetMonthlyEmotionLogsRequestType = z.infer; export const PostEmotionRequest = z.object({ - emotion: z.enum(['MOVED', 'JOY', 'WORRY', 'SADNESS', 'ANGER']), + emotion: z.enum(['MOVED', 'HAPPY', 'WORRIED', 'SAD', 'ANGRY']), }); export const PostEmotionResponse = z.object({ createdAt: z.coerce.date(), - emotion: z.enum(['MOVED', 'JOY', 'WORRY', 'SADNESS', 'ANGER']), + emotion: z.enum(['MOVED', 'HAPPY', 'WORRIED', 'SAD', 'ANGRY']), userId: z.number(), id: z.number(), }); export const GetEmotionResponse = z.object({ createdAt: z.coerce.date(), - emotion: z.enum(['MOVED', 'JOY', 'WORRY', 'SADNESS', 'ANGER']), + emotion: z.enum(['MOVED', 'HAPPY', 'WORRIED', 'SAD', 'ANGRY']), userId: z.number(), id: z.number(), }); diff --git a/src/types/EmotionTypes.ts b/src/types/EmotionTypes.ts deleted file mode 100644 index e64f3d3f..00000000 --- a/src/types/EmotionTypes.ts +++ /dev/null @@ -1,14 +0,0 @@ -export type EmotionType = '๊ฐ๋™' | '๊ธฐ์จ' | '๊ณ ๋ฏผ' | '์Šฌํ””' | '๋ถ„๋…ธ'; -export type EmotionState = 'Default' | 'Unclicked' | 'Clicked'; - -export interface EmotionIconCardProps { - iconType: EmotionType; // ์•„์ด์ฝ˜ ์ข…๋ฅ˜ - state: EmotionState; // ์ƒํƒœ - size: 'sm' | 'md' | 'lg'; // ํฌ๊ธฐ - onClick?: () => void; // ํด๋ฆญ ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ -} - -export interface InteractiveEmotionIconCardProps extends Omit { - state: EmotionState; - onClick: () => void; -} diff --git a/src/utils/emotionMap.ts b/src/utils/emotionMap.ts index 84b5663e..3c9585f7 100644 --- a/src/utils/emotionMap.ts +++ b/src/utils/emotionMap.ts @@ -1,23 +1,23 @@ import { EmotionType } from '@/types/emotion'; -const emotionMap: Record = { +const emotionMap: Record = { ๊ฐ๋™: 'MOVED', - ๊ธฐ์จ: 'JOY', - ๊ณ ๋ฏผ: 'WORRY', - ์Šฌํ””: 'SADNESS', - ๋ถ„๋…ธ: 'ANGER', + ๊ธฐ์จ: 'HAPPY', + ๊ณ ๋ฏผ: 'WORRIED', + ์Šฌํ””: 'SAD', + ๋ถ„๋…ธ: 'ANGRY', }; -const reverseEmotionMap: Record<'MOVED' | 'JOY' | 'WORRY' | 'SADNESS' | 'ANGER', EmotionType> = { +const reverseEmotionMap: Record<'MOVED' | 'HAPPY' | 'WORRIED' | 'SAD' | 'ANGRY', EmotionType> = { MOVED: '๊ฐ๋™', - JOY: '๊ธฐ์จ', - WORRY: '๊ณ ๋ฏผ', - SADNESS: '์Šฌํ””', - ANGER: '๋ถ„๋…ธ', + HAPPY: '๊ธฐ์จ', + WORRIED: '๊ณ ๋ฏผ', + SAD: '์Šฌํ””', + ANGRY: '๋ถ„๋…ธ', }; -const translateEmotionToEnglish = (emotion: EmotionType): 'MOVED' | 'JOY' | 'WORRY' | 'SADNESS' | 'ANGER' => emotionMap[emotion]; +const translateEmotionToEnglish = (emotion: EmotionType): 'MOVED' | 'HAPPY' | 'WORRIED' | 'SAD' | 'ANGRY' => emotionMap[emotion]; -const translateEmotionToKorean = (emotion: 'MOVED' | 'JOY' | 'WORRY' | 'SADNESS' | 'ANGER'): EmotionType => reverseEmotionMap[emotion]; +const translateEmotionToKorean = (emotion: 'MOVED' | 'HAPPY' | 'WORRIED' | 'SAD' | 'ANGRY'): EmotionType => reverseEmotionMap[emotion]; export { translateEmotionToEnglish, translateEmotionToKorean }; From 15a500b3361887f322b771f07424821879df54ca Mon Sep 17 00:00:00 2001 From: NEWJIN <109906670+newjinlee@users.noreply.github.com> Date: Wed, 31 Jul 2024 02:26:19 +0900 Subject: [PATCH 04/17] =?UTF-8?q?FE-20=20=F0=9F=94=80=20=EB=9E=9C=EB=94=A9?= =?UTF-8?q?=ED=8E=98=EC=9D=B4=EC=A7=80=20main=20merge=20(#123)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * FE-21 :sparkles: ์†Œ๊ฐœ ํŽ˜์ด์ง€ ui ๊ตฌํ˜„ * FE-21 :truck: ์†Œ๊ฐœ ํŽ˜์ด์ง€ ์ด๋ฏธ์ง€ ํด๋” ์ด๋™ * FE-21 :lipstick: ์†Œ๊ฐœ ํŽ˜์ด์ง€ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-21 :lipstick: ์†Œ๊ฐœ ํŽ˜์ด์ง€ ui ์‚ฌ์ง„ ๊ฒฝ๋กœ ์ˆ˜์ • * FE-24 :sparkles: ์†Œ๊ฐœ ํŽ˜์ด์ง€ > ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ์ด๋™ ๊ตฌํ˜„ ํ•ด๋‹น epic์— ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์•„์ง 404์ž„ * FE-20 ๐Ÿ”€ ๋žœ๋”ฉํŽ˜์ด์ง€ ์ตœ์‹ ํ™” (#122) * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-32 ๐Ÿ”€๊ฒ€์ƒ‰ ํŽ˜์ด์ง€ ๋ฉ”์ธ ๋จธ์ง€ (#107) * ๐Ÿ’„FE-33 ๊ฒ€์ƒ‰ ํŽ˜์ด์ง€ UI (#10) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * โœจFeat: SearchBar UI ์ดˆ์•ˆ ์™„์„ฑ * styles: tailwind css ํฐํŠธ ์‚ฌ์ด์ฆˆ ์ถ”๊ฐ€ * feat: RecentSearches UI ์ดˆ์•ˆ ์™„์„ฑ * ๏ฟฝstyles: SearchResults UI ์ˆ˜์ • * ๏ฟฝstyles: RecentSearches UI ์ˆ˜์ • * โœจstyles: ๋ฐ˜์‘ํ˜• UI ์ถ”๊ฐ€ * FE-33 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • ์ค‘ * FE-33 fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * FE-33 fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * FE-33 fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> * FE-65 โœจ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ๊ธฐ๋Šฅ (#51) * FE-65 โœจfeat: ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-65 โœจfeat: ๊ฒ€์ƒ‰๋ฐ”์™€ ์—ฐ๋™ํ•˜์—ฌ ์ฆ‰์‹œ ๋ฐ˜์˜๋˜๋„๋ก ์ˆ˜์ • * FE-65 โœจfeat: debounce๋ฅผ ์œ„ํ•œ lodash ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜ * FE-65 โœจfeat: debounce ๊ธฐ๋Šฅ ์ ์šฉ(++lodash ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ) * FE-65 โœจfeat: useEffectt๋กœ debouncedSearchํ•จ์ˆ˜ ์˜์กด์„ฑ ์„ค์ • * FE-65 โœจfeat: useCallback ๋Œ€์‹  useRef๋กœ ๋ณ€๊ฒฝ * FE-65 โœจfix:: debounce ๊ธฐ๋Šฅ ์ œ๊ฑฐ(๋ถˆํ•„์š”) * FE-65 โœจfeat: focus๋  ๋•Œ placeholder ์‚ฌ๋ผ์ง€๊ฒŒ ์ˆ˜์ • ๋ฐ UI ์ˆ˜์ • * FE-65 โœจfeat: isInitialMount ์„ ์–ธ ๋ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-65 โœจfix: ์ฃผ์„ ์ˆ˜์ • * FE-65 โœจfeat: ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ํด๋ฆญ ์‹œ ๊ทธ ๊ฒ€์ƒ‰์–ด๋กœ ๊ฒ€์ƒ‰๋˜๋Š” ๊ธฐ๋Šฅ * FE-65 styles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-74 โœจ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ๊ธฐ๋Šฅ (#73) * FE-74 fix: ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” lodash ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ญ์ œ * FE-74 โœจfeat: ํ…Œ์ŠคํŠธ ์šฉ api ์ฝ”๋“œ ๊ฐ€์ ธ์˜ค๊ธฐ * FE-74 โœจfeat: ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-74 โœจfix: ์ค‘๋ณต๋œ key, href ์ œ๊ฑฐ ๋ฐ ๊ทœ์น™ ๋ฌด์‹œ ์ฃผ์„ ์ถ”๊ฐ€ * FE-74 โœจtest: ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€ * FE-74 โœจfeat: ๊ฒ€์ƒ‰์–ด ํ•˜์ด๋ผ์ดํŒ… ๋ฐ ์ˆœ์„œ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-74 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ api ํŒŒ์ผ ์‚ญ์ œ * FE-74 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-74 โœจfix: ๋ฉ˜ํ† ๋ง ๋‚ด์šฉ ์ฃผ์„์œผ๋กœ ์ถ”๊ฐ€ * FE-32 ๐Ÿ”€ epic๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#77) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> * FE-75 โœจ๋ฌดํ•œ ์Šคํฌ๋กค, ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ URL์— ์ €์žฅ ๊ธฐ๋Šฅ ๊ตฌํ˜„ (#104) * FE-75 โœจstyles: tailwind .config ํŒŒ์ผ ๋ฉ”์ธ๊ณผ ํ†ตํ•ฉ * FE-75 โœจfeat: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ Header ์ถ”๊ฐ€ * FE-75 โœจrefactor: useMemo ์‚ฌ์šฉ * FE-75 โœจfeat: URL์— ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์ €์žฅ * FE-75 โœจstyles: ๋กœ๋”ฉ ์Šคํƒ€์ผ ๊ตฌํ˜„ * FE-75 โœจfeat: ์‹ค์ œ api ์ถ”๊ฐ€ * FE-75 โœจfeat: api ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-75 โœจfeat: ๋ฌดํ•œ ์Šคํฌ๋กค ๊ตฌํ˜„ * FE-75 โœจfix: ์˜์กด์„ฑ ๋ฐฐ์—ด์—์„œ ๋กœ๋”ฉ ์ƒํƒœ ์ œ๊ฑฐ * FE-75 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-75 โœจfeat:: ์‚ฌ์šฉ์ž๋งˆ๋‹ค ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ณ€๊ฒฝ * FE-75 โœจfix: ๊ฒ€์ƒ‰ ์ „ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ค์ง€ ์•Š๋„๋ก ์ˆ˜์ • * FE-32 ๐Ÿ”€๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#105) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * .http ํŒŒ์ผ ์‚ญ์ œ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-32 ๐Ÿ”€๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#110) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * .http ํŒŒ์ผ ์‚ญ์ œ * merge main --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-32 ๊ฒ€์ƒ‰ํŽ˜์ด์ง€ ๋ฉ”์ธ ์ถฉ๋Œ ์ˆ˜์ • (#112) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: MOON Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-27 :twisted_rightwards_arrows: ๋งˆ์ดํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#100) * FE-34 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ํ”„๋กœํ•„ ์ˆ˜์ • ๊ธฐ๋Šฅ (#53) * FE-34 :lipstick: ๋งˆ์ดํŽ˜์ด์ง€ UI ์ดˆ๊ธฐ์ž‘์—… * FE-34 :sparkles: ๋‚ด ์ •๋ณด ์กฐํšŒ API ์—ฐ๋™ * FE-34 :lipstick: shadcn/ui Dialog ์„ค์น˜ * FE-34 :sparkles: ํ”„๋กœํ•„ ์ˆ˜์ • API ์—ฐ๋™ * FE-34 :sparkles: ์ด๋ฏธ์ง€ ์‹คํŒจ ํ† ์ŠคํŠธ ์ถ”๊ฐ€ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ์บ˜๋ฆฐ๋” ์ถœ๋ ฅ ํ•จ์ˆ˜ (#58) * FE-36 :lipstick: ๊ฐ์ •๋‹ฌ๋ ฅ UI * FE-36 :sparkles: ์บ˜๋ฆฐ๋” ํ•จ์ˆ˜ ์ƒ์„ฑ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •๋‹ฌ๋ ฅ (#65) * FE-36 :lipstick: ๊ฐ์ •๋‹ฌ๋ ฅ UI * FE-36 :sparkles: ์บ˜๋ฆฐ๋” ํ•จ์ˆ˜ ์ƒ์„ฑ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •๋‹ฌ๋ ฅ: ์˜ค๋Š˜ ๋‚ ์งœ ํ‘œ์‹œ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ์›” ๋ณ„ ๊ฐ์ •๋กœ๊ทธ ์กฐํšŒ API ์—ฐ๋™ * FE-36 :sparkles: ์›”๋ณ„ ๊ฐ์ • ๋กœ๊ทธ ํ•ด๋‹น ๋‚ ์งœ์— ์ถœ๋ ฅ * FE-36 :lipstick: ๋‹ฌ๋ ฅ css ์ˆ˜์ • * FE-36 :art: ๋งˆ์ดํŽ˜์ด์ง€ ์บ˜๋ฆฐ๋” ํ—ค๋” ์ปดํฌ๋„ŒํŠธ ๋ถ„๋ฆฌ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •๋‹ฌ๋ ฅ ํ•„ํ„ฐ๊ธฐ๋Šฅ * FE-27 :twisted_rightwards_arrows: ์—ํ”ฝ ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#81) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-27 :twisted_rightwards_arrows: ๋งˆ์ดํŽ˜์ด์ง€ ์—ํ”ฝ ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#85) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-27 :twisted_rightwards_arrows: ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#86) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-37 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •์ฐจํŠธ (#89) * FE-37 :recycle: ์›”๋ณ„ ๊ฐ์ •๋กœ๊ทธ ์กฐํšŒ ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง * FE-37 :sparkles: ๊ฐ์ • ์ฐจํŠธ * FE-37 :hammer: ์ƒ์ˆ˜ ์ปจ๋ฒค์…˜ ์ˆ˜์ • * FE-27 :twisted_rightwards_arrows: ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#99) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-โ€ฆ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: MOON Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ Co-authored-by: JeonYumin <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: kich555 <79491683+kich555@users.noreply.github.com> Co-authored-by: morrison --- public/AboutPage/ArrowDownIcon.svg | 6 + public/AboutPage/Desktop/AboutEpigram1.png | Bin 0 -> 117893 bytes public/AboutPage/Desktop/AboutEpigram2.png | Bin 0 -> 80051 bytes public/AboutPage/Desktop/AboutEpigram3.png | Bin 0 -> 93836 bytes public/AboutPage/Desktop/AboutEpigram4.png | Bin 0 -> 366290 bytes public/AboutPage/Logo/LogoLG.svg | 9 ++ public/AboutPage/Logo/LogoSM.svg | 9 ++ public/AboutPage/Logo/LogoXL.svg | 9 ++ public/AboutPage/Mobile/AboutEpigram1.png | Bin 0 -> 49128 bytes public/AboutPage/Mobile/AboutEpigram2.png | Bin 0 -> 41606 bytes public/AboutPage/Mobile/AboutEpigram3.png | Bin 0 -> 44199 bytes public/AboutPage/Mobile/AboutEpigram4.png | Bin 0 -> 241899 bytes public/AboutPage/Tablet/AboutEpigram1.png | Bin 0 -> 55067 bytes public/AboutPage/Tablet/AboutEpigram2.png | Bin 0 -> 45855 bytes public/AboutPage/Tablet/AboutEpigram3.png | Bin 0 -> 48485 bytes public/AboutPage/Tablet/AboutEpigram4.png | Bin 0 -> 250191 bytes src/pages/index.tsx | 121 ++++++++++++++++----- 17 files changed, 124 insertions(+), 30 deletions(-) create mode 100644 public/AboutPage/ArrowDownIcon.svg create mode 100644 public/AboutPage/Desktop/AboutEpigram1.png create mode 100644 public/AboutPage/Desktop/AboutEpigram2.png create mode 100644 public/AboutPage/Desktop/AboutEpigram3.png create mode 100644 public/AboutPage/Desktop/AboutEpigram4.png create mode 100644 public/AboutPage/Logo/LogoLG.svg create mode 100644 public/AboutPage/Logo/LogoSM.svg create mode 100644 public/AboutPage/Logo/LogoXL.svg create mode 100644 public/AboutPage/Mobile/AboutEpigram1.png create mode 100644 public/AboutPage/Mobile/AboutEpigram2.png create mode 100644 public/AboutPage/Mobile/AboutEpigram3.png create mode 100644 public/AboutPage/Mobile/AboutEpigram4.png create mode 100644 public/AboutPage/Tablet/AboutEpigram1.png create mode 100644 public/AboutPage/Tablet/AboutEpigram2.png create mode 100644 public/AboutPage/Tablet/AboutEpigram3.png create mode 100644 public/AboutPage/Tablet/AboutEpigram4.png diff --git a/public/AboutPage/ArrowDownIcon.svg b/public/AboutPage/ArrowDownIcon.svg new file mode 100644 index 00000000..25f85d13 --- /dev/null +++ b/public/AboutPage/ArrowDownIcon.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/public/AboutPage/Desktop/AboutEpigram1.png b/public/AboutPage/Desktop/AboutEpigram1.png new file mode 100644 index 0000000000000000000000000000000000000000..2e32648aa5207aa21d8f06e6842c5fe5dc164cc5 GIT binary patch literal 117893 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 OgD_07nv(f2b%xped`e=j!L>y3Rd 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 literal 0 HcmV?d00001 diff --git a/public/AboutPage/Desktop/AboutEpigram2.png b/public/AboutPage/Desktop/AboutEpigram2.png new file mode 100644 index 0000000000000000000000000000000000000000..c059236a257d12a28c8db5349178e6fb1e429a86 GIT binary patch literal 80051 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%0A3?0VEf7pgo@MhA6l5cpAFnzdnW%y~6 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 literal 0 HcmV?d00001 diff --git a/public/AboutPage/Logo/LogoLG.svg b/public/AboutPage/Logo/LogoLG.svg new file mode 100644 index 00000000..6824d06c --- /dev/null +++ b/public/AboutPage/Logo/LogoLG.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/public/AboutPage/Logo/LogoSM.svg b/public/AboutPage/Logo/LogoSM.svg new file mode 100644 index 00000000..2558bb94 --- /dev/null +++ b/public/AboutPage/Logo/LogoSM.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/public/AboutPage/Logo/LogoXL.svg b/public/AboutPage/Logo/LogoXL.svg new file mode 100644 index 00000000..7ab40c56 --- /dev/null +++ b/public/AboutPage/Logo/LogoXL.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/public/AboutPage/Mobile/AboutEpigram1.png b/public/AboutPage/Mobile/AboutEpigram1.png new file mode 100644 index 0000000000000000000000000000000000000000..79c4799785cb7122e59218bd1eaec534b24eb060 GIT binary patch literal 49128 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 J#a-L5{{iy=Ctv^o literal 0 HcmV?d00001 diff --git a/public/AboutPage/Mobile/AboutEpigram3.png b/public/AboutPage/Mobile/AboutEpigram3.png new file mode 100644 index 0000000000000000000000000000000000000000..1f0701f30673a878429d340717a6aec7ed860278 GIT binary patch literal 44199 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 literal 0 HcmV?d00001 diff --git a/public/AboutPage/Mobile/AboutEpigram4.png b/public/AboutPage/Mobile/AboutEpigram4.png new file mode 100644 index 0000000000000000000000000000000000000000..ca3e5d6f86450d4f47ab9c98ec24ce0f85778663 GIT binary patch literal 241899 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
_5vesQYtRrq=3ct;ivZrljiUVe{BJ7D7Vg0 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 literal 0 HcmV?d00001 diff --git a/public/AboutPage/Tablet/AboutEpigram4.png b/public/AboutPage/Tablet/AboutEpigram4.png new file mode 100644 index 0000000000000000000000000000000000000000..a7a39cf1a54321e5f74379c3cc3b3bb9d360dd0a GIT binary patch literal 250191 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�$^X%5?0C^NdF8(+A5IF^(v;bCLDfV+ zN^t)fr^$Fi(bR4J65wn!6JH>WJ!HF)qU|C*g*4vXpzj*GeWzL%U6u0}Z8OO%rA4Rq zMIG+FNJcrUNCv2ohBY3<5qDGY(K=g8m5&5YQK{ihwxGW<{Qpk>ZwCHYX+J0&F;xX5%Y>`zNM6oBUEA#y1lKO~VP74w?+oOQ_)RhgnIgIYp&wMo|+_^-Q%h z6F|hkPO%pKCBYF5qRoA;k3vNykJ)#Jn^zkiaxv=g`o)?nNCXEg20X&~9U14R!S@J$ z-8Er0T#WkBJrs}8ch&^v7zdtVNvx0E75Jk!*td3V+ec+{Xk({Ao=~xjt;H9V8M+eu zRbQb-(3i=OUVIae@<^lU5taUPSq+GxKz#&lNF|PJ@v8td@a*hHsL#&afMd=xAgvv> zENIQeI5q(-il#_mIY1E3_c{7b3hv#*AsR@*1ex+iyA$VI zVdijAHPh9p;W2}$*t(l$vZj`S)(j)9GDE1lNP2O>TIcSv7yG@hLG3#oL?4HCq#Ghb zuhAR*?09Eej9aguu0S5#$>%yf^%b2=~7di38B?45lmSm0fi zp-Y`FAa%6*{-U0jn$Z^Z392LU<3grXqnwYWrI{lpU#nl;cKhZ&`lHb~_>(L|dt_r_ zC-vq}EjaE)&h&E8*XEd9^vN~Com^3xBRZ(6>lV_Qe<>1ie zrn7p>V})K#%065NMQV)=+D|)L`1%z0W1rt?$}SAkdE(v*x*e=s*ZRcmQtUre;}kn< zr~JHn>nwBk)LD_qWC2J|$lZb?lFJ_2#ooTPy!kk5u91H5OWw&UUQ@@C{9VK5;!U|R z_Htm>a_QC{g2vavi$mR5X}ov44%UxGlQqoDCax}Xu=D$Apy@r#;;3V{Zv}@D0qn#m z7aRS>5-E53z-lcuH= zg(WYatbh%{v(~W3ViR#=m!tzhC74&OPs(hbsGCge6Cep*WZf#@(zF2FJ4eb;G=DJY z`IIiUa<|MaFbN_3+(M*xq~2O{>Tk^{;|gcjo=*7BK#(-R7azd&8dDp}%UGa?wrL z_^5%AF^97jF6!VT#mg_igTBA{MZIr)+Vu6YD96B+pE~vmQ-q&nNop304`k6E5=$vX zJW?v=kNfk{wKR7P8*6`4=*!@lbbj|*?I%TL5TNh$^9%`ItydNDFn6K*RNqubi|{WS ziN)A2Wz7H%kTpDWyvIVH;m?`#JvI%6%jUM0KV_ueY}iVNDoI{UgXG3pO>q)JDx!)6Cgf~S{K8>1;RtFf-=H;>d@$NGlcFDlvA}DV7?%#v%An?0U0h@MOMLO z73|RQ*X_qN_i&L$zFU9CG%c$s&LR9AEynNRLIXKu8k}Krz=lt9SuHsn0vSF5jzB4X z1_ux7SnqtSav1fSRND<&=HTu}0)pTVh0i;FDfYGu&(tV#xytJC;{d`~BOF|+hY@k} zd-}EYsHVq9BFUbS!^_Ae#MZVglOgQmZYB_LFf31bR~&#{^1 zq5HoMnGQwE{=NU!uVod`%JMS657y-;MThoOMTT=is!6XPZLaT0;nws$8hk~+m_no! z^bA38FJ-Fvg(gaNyO$k!S3hVOyBmtB)|&G=Sikk14Z>cPAFa{4C6-M6w7hSrWPeKA z_g{VqsV+%`dwfSbD}%Du#*9T2hPjTZCz{o%T7}!B1syeQr^}4Gu9!714t+G@4Hvv9 zUe%QFG~@Glq2tFd*68Po2ZatURH+gcC5538n8eZ7F z?+U;5ldZz&BI^1#t#hWkk}9vyu0AYwFl`mq(G1KUd)mxKuqsNmD;()KagWllu_}Xm zdE>SA@FoQj)UdeDxXrVEY0PDR?^l-iaO1UVJ%<0+gugP$;odB6E)n?)_4-%u{_-zQ zKm}5FrMFb-oEhcA(j4xY<)jvPl(qV>^m`wy)0Im3@n^tA#TQ)nQZ9p@p9MVO${Gpk z*!?+^&$U0$xH|b^tHZO=FI+;62tT7`;Y{(*P1S`*9*&Z~=AfmIc)J7dJo1(J%12%d zzny~L)c!TG;LF$vFZL@JE;CHaYSM8z=UI%58ByY*j&RAq-RCt0%k7S>#Tx0EsP3Dc6a4c% zwL%B8pFpcceUYzx$+Y$#%jgs$nM2{SijZ`z@B+k z1SB$3jO_AO?sojJzfq^*spf<&-cB?>DJ>&UgAq=m9)Hz+RgoC|E$qC_Hv#JUr|bZo zKtAI6MTB`4AJ?P@BzR~&@hiiLkZA{-N@5yPtKeUE0`VF?6RBWH2D}2^(<(^) zqE!rl`ayrHbk_aeG69$h%`B*$G%@@Nz08ny zWC!sK2+CoWg!f2(IO4%(+moi>fDO@<`|AKDf2q%Rq|P~8ijGG;J@)BBy|u>kMx*UF zlI;Z|d7YhN|4bg$PiuG-f$kLiqgT;-aq7k$k)ed|e3o9(GkWPqhf?g8q8=0s=tiGf z{kh7w>Z3aL$}a6<30P?C!Ta-euw0Tkd#l_(gaYu+S$q~;+L$YCU#hsM#>8JmIV124 z9E<}0drXi1`wHp766|N!fsPZPmkVTc7OCqL=v@NT&7anaBHVK&sYz`(YpD&~Bgkk^ zzP)YjB$|Bm#k9dxN3?LFm?oVGaM;;Kb4ocC4kJ7R8(>?pwgy}qZ6O`}M?~uL8suw; zpjYk|BGN?|r@>ynOK_cX{T-KfSFs>yfhuldbG44zKe*L|;BDu$A%sE~1_^<`X&svv z-3L!j3{C(XCpH_WY#4QG`n9z+#&pfgjioh!LdS7`t1t$pW70Z4lg_>Q}VoL)8j2OrTeC{ z{Ko2(I(=qIaU|>4_B+KB&es7)+lAQVI@jh)V&8JE0V|rNb=Bu2#TbH&f`!H1NlU`- ziB!+oH?1{@oLE!$#wpT8Ygt2_399imxOrnTf`C z`q6`_z33?iAc7nGDeJwz*R_l^*iP+eT|76g?trtjxH`l=gkTGs)v;-I_ra-AB*t5G`Q!t~Up)}R_eZFzoZ=iE^rj7`7=&;Yq^!=w3g-fgDxTdXC zLHA;f3BQuqd&>%zb>Ngjc&m}--0FSzQ1>F))!6>JvbvRKtjIU;Dp*~L8DPy!sF4p1 zH=2rf=z@_VeJv-;THMj(%K8l~!Ft>6o(=7{qWHw5=5=OawT~z*A!`yt$Iy{AeA(=5 zcAd%Ih=Bw)4gdD9zCan3Kj=^}hMmuPL!+OazPVK4E6m77rd^yJC4lj(4O1FxYP)GM z$t51{`eP0Gi_>T8YfQlwfuZbAWI>I2?#D}3lAQ@VK|>wd#(u!1!D(e#(CZ*h+nVr@ z*<1A*uXZ*YWsQP=?zpznQ|Y>|eB%T{H`%8-Jhf^V%E~wGs>QE7Us@q+~wT5Za(0yZdqy%qc zFV+@Yjcv#Zy{BWG@C#ST+LPqq=~2azX3<)BDuSI)Qz1aRr%k$1-HPLyBLL0}KuHXZ z&Y-k>+Tiak=n#Ul_;ki)x|+IPFlqS>RMmcpnEvyA@!dLHVi{-jjXrJ~mWb(&di|W; z0ft-fG^%II)CLt|72F({rO9x2K&Hr{hK}{K{cOPMY_kbOdB0~v4M3eOh!_ls^JICm z(%R_okt~itK(B*mnZPB*o;_;-8`JA&x6#=Z7p0{A3L2@HRV)PZZjQ@vt_cRZ;JrkqW+Zi zkUP-)>rXTqVcucst=PAI_6_wD&g}}~Q?XV{+2%P5ayfTI1k?K?Klv;62`0p^QdVUt zBD5>3gCW2Dk+G3n;ql-)Qc#VG|=G_tg}pvP)?nSz^7f->@S$@Bvm$Z3%J<#tc}YAXK~s?nt~oR{@JbxM zvWZgw3Eho{uq?Vjz4e=i^mz)e+C7wk*Qx zRC=(Wk_)EZAO9vp{JPJ+xFY&hceUX@JX1t$qOgX%qU|bmwNXRT4MS?q8R&h1> z7l$LTg0q_A$bo*rVblAD7Kpd*R*96b@#b?M`UI+i_b*e^d_2ESF=!9=_7y*@>X9CUJXg3gN<>fa6Q{u+X!To*>0bLeOO}~Z zRs2m>_pL9Zx(tu6wyC)aUNZ8Y#5gTpa&({YQ4G1cON?>M@w{DB$~^zZZN3D9{p6#nla4aw z&!*B3&nFeoyfu9TR?zzQ*ta(CE`ypXbbe>x>Zy{dh5Ba@?fR(*QvlNEm({byhpJae z;*~i1STCc1p-sabl3(R_2g*U6;c}sHXKTPx>1bV6JOFAqZH6nv@izL0Px@*3&=mJJ z$gdu(@>JT!L-1+Ng8y|QYHaqVrI=$R13B$P2e*7rW1uj3=EmV)TFwA#&)&jmVb{l_ z62z&vcoN{xP{++E^h(Tf2KU1j-CUrZ{G!6T=^7KPmA zv4srhCJPRl=hXMiPhxpF9ejoPtW^1zwd|yVtcRqwVfAAZ%vSD)OYlS0+yia8^GW%2 zKisrhxo0JE0wIC0?Vx#Q%?a{doSCJ(uzsmNE_ae9VW^reH=)toSh)HJr=>~s7^<9C zWneWn<)bX+d+F)HpZ&dMx%m$}k4a3pNmc@OFwB0t|CV z%p{zVG?@6iy={fjk7_9oc1z~y3dg?=PW$UY{OfoBdqz@r6>``)_$@U8lJ(*TP~E(1 zJm;95v&JYm=)ic?no{OTXu>HG&CBWU+?qE6&u_mXZY#w;Z_ESRV~<4v{0qE(rt_0@ z6KXvTcsRVPByRc3|Hwv$$sc!Y<#2a&AbS;h=@&-%77J)|lJ}>uhd=rlzXA}X|39wY zIxGsV`5#shQ4k3U2|+?Sq?=W`k?veNrJGfxQ@TM~nx&*ysRfqq5RhEDmWEy4_4(f3 z_wRavYyacyoHKJ~J~MM>#;N80*%GB_LTYwuE{8*0;n|k)j}uI$!|Ea&pAPTS^Xj`Z zjvXJsm89HZar}i3+<8jR*xCQ$!L$%V3u5DV+fQg(yl-K?)n)x1wp{Bz-F!MR}FPenYwIuaF)oZk!k+FpRu|(yQ zKQfM+y1pyx=*S?&m8kuH@p2ba;E~%u7VmIp4Q|o342D@P6vu z<-AyM9r!cyvVF%7a^VO14Te(Pd^&>)>^Lt5w^Zv3AO_Bs%d!8-fc)q=NyfsX^7mLo zes18;LvfbfQ7m8fLQp5EklSj&6?z2joO^6U!x8_l77s`m z5?ncPEB`bz+>Ef>_-1|vb%q{;DO%@r;aEPkgNykOVZX7#)4V8?-C^`JW9wX_C@aWW z#!TC06k(6}S*dDB3Xew7g9)YDVx9@J@d~Q?q@KpMXcw5U-y1E8z3b5wAEURK%B_w| z8XKk@PYgNC*(1z-uJR=2-PuoAA0@~38`yu9N!swx14T$mB_=mNn9uLE)6^?8izVza zzPp~et33M(=^*LOVg8#b@(T{GZ3sPKy*OOH+oM=I3IzymIwTg?;&1WBz-SFJJY7)Z zar&%^tJ;hjE+kDJ5=M57ghnakL#43`rDt=ojSYM%LKQ} zkgFl*z+1l#xF55d? zUPdl12b^Ut-)>%1l-!9ZZYL7{xWyy*J6f0HIYIsNpQ7o`0lNl??~4zVxe0QIx}xN&SqE}G1&2i>$4T2j(%@N9z9Zw`hcRV{gHri9hwOPT+d zJVPA%6fxB0nnum&A5yB`H%_ag=13uzJpw5hBNwh02a7Z~7GcA>6!`;6H+rg&la-=1 zc>uEflX@{;!*8|=I)s^C-9Q&`{`K*oj(M-TlNFUX2gTKle5}d{TV|d|j)`ysaq)*D z;8IHGm1w(b#{0+;+TQ8*x^OP$VyVc#)72@D(30(TjZo_FxTE&pMGqKmK13ZHqP(B7 z6xk0S3J)pKMJDyJYlDGdk z1b6WSPpL?&^E6}5-org-EPuEY7`Wp#W^Xs?UU=n@8Kh4F=>=ZKMNrso z@DtZtbmSrc(5{^np8}(!j3Q%SzoM>Du7kKrh#MLfuXJc+ye&=|Kx^2II(LPTX9_Pg z0@?p68VADCRPN)uI>1ex`F1o2j#dkRyBRbWI8hA(Z7aB-_e$T@HcbYp&C}r$=RrwU z@#;mFuEi?Z0+FNs2#>^#l!ylI?M00uqt9D{R`m#boMCOEx%$*b9*Z z7+i6jumuYHZ^rg;DCibyy?Kjf@6FFM(yO2-pxN6n!M_9BKk&whp7gEHaVWpm-Q{=o zKSST?%yHvs-$7ovyI;>cB1II*qUuJp<{~|1o>yCSoRL&C_E643(dT!V%hE@86 zt_A7cxkyZmyVnh*#Ixu<)8GtP%W&Od&Ri(d=!O5e%ZKq1S(S(DJjH*N-915}lh+#a zMTmW8&<*Ie#{~VS2EnmF>0y#AaJ3Q#?T`MrA(3*oY{So9ivzfq2`q> zR@ZAJiOA!Jk8JpV33$#&qUTpv_&#!KKU11w2}?V4zT1Z&y{5}H0pSD$gx@&+o_rRS zPa<+V7q!iX?ZBRZZ2zOQ?q>emt5dmi)Ae|V~C}l5mUW^KMbRI z#MXbhO#fA?^j8nDGg#1FU`~hqIG<;k&UI7HW6MyRr5Iw{WX8Ia5)fezTYXh(nDCkx z=)%k7Y&}sGwW&|!*HusO|7=f2Hp*v8pZ8{{p%vs(C^J>ExmN46-32Xx@+od;J)mcxR z3M!j38!^>sA$K>ByU#SSPyX9u)axjV-2(~}H1b%E{l-;fn36&Eq8NGR%;3O$Ha@}T z_)E=vWYDbw_9(GL}12`b)EdP2Ptthuvphzv|ms zG++P}^zPDG3~d=9loK6$mYl3{V&}Sl)$GS8INGRNUG)ldjERG87M9Vi`i@CK$2x=J ztaM`zku2rDqinPe_2#jBU+nrav=}R08!H@pkz$Fc6+s>+hn~E9n|1~Z--tSxw|%jDRQH|=l0+6d2 zG(ziu*PX4|OtC|cXmEbAjT4Y|*N&FEl3PajILzj!@Y%nyRIR#|RQfX2F!|fT*SR$# z>q_F88<(V*$lyyyiWk&n%%DQOXWyL`?O@($SSbDisZc3J`PXVSiB>dZ%GW)i9hHv< z_RzK}Oa-!KIE*KXVsJgIxBGR7;P=lFc6?|)^bl-(I%_I}G`GZc7@UkCq<|SV>~bxb zY9Oo_Zg-|*vOOd7dtB49ds%(=;_fcv?np|L|86Xm!j_-Gz5VzPGPomRPSL{BpIcA7 z@P8N=qM}(66Wygf=K2$Rkgsw+-5{(;Ayurdj(O8TkOi-fax<8NEcxFmjJi55Fo z8_1Mm^=ZT}Yc_jzuA%(E_VGNelH0o()~H2%+ghzveE|*bGWS3Gr4_h)XKj;82M%*0Ci`v0Wu34_TUEtVJY@gf}UWW^)O)(eZNIUgQOZP(fUJdv@)Z^EtfEU|#rFa&* zm|S*}E?u@S-?ZQHGkEu~8iQ@d|Fu`CIJWQpD8B_b2;qzxy0}e-oal5A7WmaoI$b8> zn(Y9bGLBQ}11%SAQ)IT0Vie#hbz>`y(Vb3`+rD34017Uf9~$*u!;B*>E8O{PGB2wR zudA%{P5xhg>tNXm-T5}b&17th41WI)^&3`dC(4Bi{RJ*R zrX-nDxc934&-)p3Z>a}FeI5GWgZejN1<;e4RRm=`u@F#;VvflpJ=BrO6Nkapv8d=| z+gY%1a^-dC&FZf#lkH@h*a-B&6a8gJlYZgH66+ig>PlzBmbT!HB}M2oZ{0dJ4~kbg zr`l4wm?dU(&@N+`4aEOs6F5sjnsdpk&Hg9*OP~h&&AgM zKB3lP-bdJ!rcgLaLEtI+fwtwQuTcGfE5CNzRc#cQ z_-wG6TrIhNBj$sETfGjSD5`h?xQI?t-s&(+irDQ&pu{5z2VWM z=w7=iP%5F+gj^kW(5~a$>ZU=LvX(BEm}0q>!HsJ`%RA;w307ff<)4FFzT(IQsv>-^ z-tZ}14Puqbq+QS(>UVLV+;z7BxlOG$_6q#^{rO+B`P(i&D0k^{0)U(t4`di(!seIp zwRA5MYUa~9^}8;_G1XS8-B!_C8!)yI58S{IwoQ?YC{1a(i_|(M#zd5H1nf26P(bgXJ4jpp)ihWI67R`O!^Wa(*HwNo`#yxb z0Wt9RLfrF{jD3|zMf3>y$$y7#;e8tCTU8&3_<785;%%*4G={SG zj86%0RtsG!7sHipa{Ug3X#4(8 zjPBh#j}CcUTP!_wIzaMuBO{^2V8@L!vSJVe+~WN{4bLE3in5OQ#gJQtR-t=m8(V&# zR18(-BtQqV!0z4Uzx@3XSn!tFx{_477|63dLT>_gKrQEY?wBYEuqu)1>)vj=X@V(5 zm{UHdpTaQ*^LxjG!gj>?OMQ2$ca}68)M@n!O{cHupzc8EU$TA#=D%geRMx{!Ht^fn z0;f2UnQIm5DtJahzRm|Vpc3lYbDbhz)!hf~P&>}PfL&lpt$FB5CC6|p;Y{#W`d55d z{2dy=5cD@T_dA2&oyNwGD2JU=vhcbG@e;Ip#GMS;0~*|tnd9z!_=9yXq4YU1B=YNI`~l&@CKoqp$xe!Sh^s41N1|D+s&34Zv`!n1fJWx5Ki zxU8|;WTxh0e` z3DQ-YrmR!JV4}@w?ZVCQs)4ra4PGbqFYQDa|10DB-&dS}j(yADw(sanK`i(>ey|&y z5X@C#t3DB?9A9zy;d!rwCWWu>OpI+=2mYpnUKCZ`R*mqE>Feo5E#h7)22{iN4+pww zii6czUNCLnvRhFfI~?Ceqv z%G#?gn-3M_sV!&`+HKI6LA?qaJw?vzvy&iU`SuKqc)vc|?Nw zlYfr1CJY_Ft{V}*NuxNOA%c-eGvIEcqoAL4>Q8^OU45}l+g5doFp=eZ=WuOEGR{`= zxc1VNPBe~3V6r7|ym^P=7&dfGcgO82BT31VWIwO*4=seUTf$rQY$6<$J&@R?S*wnG4R-Sb|c_bjfqc!CA4*onAaj(v96i{8M z7f~aq#dx%nJjPF8@ejfGZe+Q)K^5n*(~jFIRwEnwlNcB6oMAn50bFwx%SEM5p9VW2ge+dU^neAg28HfmX{B#x8S&=3?$=_q zQ{BanW6IabR;6ufjuwmWbude6bN-XsCKBGC3O_aMJDn?-8n}Dq4O|0Cha9doac^B= zHIKJ4ELE;==RWVry(;N{8Rn75?Ujy$?h>tU5kgbsQot9|gZ9p09sBM$MCxpGh(h0b#0OaXF%G}`GUk;ldrk}o6 ztlNvU*xB}pPiG9YkREpUnGfKtTlpA6G}vFbOb7K9%20d81Gk#StPhdOD8kCIEf@r` zIqzMfjiC~)fhOx0JbmBi}b0++8M#9U~Tj(_TSfQ*m zgSn7WojcfJODb|>Bqubzvd2n^HpAEVxvu=6-0*2g11~K64Z;%m`HlY9 z!1xbiJ|gKJa-SLe){M@nXzNS^q$BJvKcJJ9?;+0~W$32l_eWxV(#p2)TMG?&5@l-w zRG*y>^6OI1fq%Ic8)TPFQO=!tFsJx03^-50?^~CzW=SDOWmA)+N@rbdvJDZEpnG47hkT&Z6~moEEB}3?9^rP#O6O;^*j1Rq38} zSZ(NNnE$X3h$hNR?&qBvn&5W(JhmV5Bcw$@fl@>ILFwlmnW}AlKDNJ-U9&8TPRan& z5Ud3s*khYt>olWJnm)4st4XfNJ6&Z;gj_9mYSE($CRXN*K?ZWHYGX2t${spmeuMYg zgO3C>6j?>2<0HzR@vp?Nr2JjPV$GnB`cJ1?iqDlAZFx8qAxRy8jB~ z57ev7%5`ag3{koi_>vVXfBMC$?tngJ;)U+>fdL5xE4*!!aw0Agx_RCuxsgOA=EN0| z>He!dnK=0uzQouTS<~u8GxiYvvtiS_twP;LK)!A2&I*VX zwaVH+aWPSIQjz=9Td^N7K9)=;V2+k5rQ-7;1uF&_gS=z3_q6uYLJ~p5qvd?W3;U(= z;_P32xWx0sr1n<=!#ckqZ5y;q9u!4hzK9Q=x6Ykm@A@SI$nQ~i?En14+TQa87k}`4 zN@$Fb6uZFIc2b!j{-$kDem9A@YFGHbw`3L&%e`GK_a-y?x`_F;nZpjt+j46J-;h80 zzbEPktdiz_^P6|6C9@y~CzRZNvQ>|T9$8u;7rMc=g8vWR1}B-5g;0QYzXz6YYcTh4 zw;Ut`n#>?i%y3n^_KGZg`8QaGW_kGSk!oZ=f@?`KNI+m?a6;9Q?b^S1MU_Z0} zX>K)09SF4iv=Tm2XGYkk`SauBe{l?wPWB74YlTKbEwe7mL$Y(D=KOWum11JuXMF?l z<~^eQo6IRilGTxxLKTK&ow^hUI84mHhB98Vi8_^;minuw*GRus+)sn&_#G6b-Tz;Q z(?4uA1;{;^EAa6r`k=|HH}%DppkI58yBi$-m}jNj`=gFLt)8B#B~H3@yibc|nZq{9 zOarp@{me1m@vA_)#2Ly(NG<* zUmvS)J$w-+=}+ylcgf|RezndB&=bFC9vPa}fhM9j=yW^)U0sYhiSAE@gr_}TwyVqx zE%|`-4n1_XJD!rt%D&P-_x_OPg36Vj5-C2h6sqKoGS(x4ol0@fpd%<;5LF9W-QmTo z1}&weZ?vj^#)&P;4<8)B)PT|Cmq>a9;z<3d*%3Fc2RGd z9X+@ty<0VL*t`3^co^t))e5>eOo0Ur-xPUFaUtv>=k}N!vCF9aW#e0M_eJDrn7HP! zglOyS5#HUAO33?{i0k|FYZ%m*Z+*~t8)J?Ki(T%xPr+W>m_L0Et!JrKZn6r2#_&0D z0HeIpX!GP+z@eXs&rIu*76;Cs6Tu6!s4KcxR{SKylW37XR{5QtRuGHRw8{1LINMiP zTi-xlG+%TVfh9+4=&igch3MkAwv+Z)ZCSuj*xpjRp9X-y;)D9q9qPi%8T(51n^R#+ z>CPwiWlg|wgev6?w2VsBXhR%twK6R@4(9#Kc_B6TYS5a)A{&I90R`xXt%;u6ygVz} zUWNV~xg8u)LQq}EMnFn6DO!C;)mwf2s(_bl(BwvGKp_4A2j0SPVqCx;aKh^mJPzIH zg7Xw^bGPf)q_l;~KSNHLAg5x0n_hu%uK}O0yRj+d)NGNp(|99AeOgb1=ABzijKkJ+ zZlsr`JH!tqYBV+d+L}b3L6Pz0XOmoo9>dUEzvY{y?L*p84^Cr3LE)5BjM)(3eQTu6 zwD66~9XeR-0FrtYVbsN$ zknOf{$u7DBV`@aXyGdvijqI2HuOKmp_hpvelW?ZmntgRl*xAu&wbg3cww6ykkVAN` z|BGnacNMWFw>$L=OZ}j*L_RQ^)^i(*uVw=jQ*T(O=B6c+aUN>1jl_B5#|dyLUcWE$Fw!3w754Knr)NrF@Soh%sl)tQq_F;U+-+Z6Qk2AlTq*|+ z)_LkfpAkPRyn6T<9Y-B~G*t){VIcal)!z<5t^`Kt<@P0hkNSKCa#e@L9^<1=P7Y-UL%&0rJ;Qg$Ezwry;^C8$08!->Z#AKehZT0MMaBelv zRfn75De`s{4>@{jltp61dbXH-=Jh%DWi}&YfXaAo;KFG>GpB*nR8>D5X}Ppix0GrI z(v<@f0q1hGW_z_3nZ?ma%>$-YAAee=9)?TBu8rmUb;cWLHc3+#p7^oT*w$Hs=p+>FH^FE44 zeci}Dh2|FP2-ctb`FAj#eyz^jQD^BVj7%84_}}Y}#MF6P>Ds!$y9_`SP`Htn_;-_I zcU+t6YasycARfla?u z0G$+Hu3Ht_E*xPcOmQDkFU$owGrqeytC%BcvECtHvuO|9g9h%+USK%3=D$UXj`EaO zxh+)vY<&weRCq1Q4p#LTG7@$|_<+XYF;VMm7nZXohLjqov-;E-?ge{d#ipz{^>!_Z zm^RH~x;C0Ts>pHDW&N*dO=={4ovAlbQzPK@v>t@0H3N#|5h<00qv7I{jqQ?LDk6Oy zQ)>r512Sjxd=mj8u|j#JZ87}vn7TqYdCiE-C3)w3m%51)zkMor@rU`aJnyf>LII|! zW(%l*tdK;R$5{-wzb=lYmu63mn6Meu*}J|pTriA5N?ufB(IJmU!G%C0#4hx5oZkT< zFN7QU5plTA>wIoha~@{uSRH6+aw-XGdlKC@fw**eKJ(h+>}5`GIjtW_P7=Pb3iq8} zM-;xw8Z_u`c1}l40-kpu7JtpSDl&mrIDx7W+P}b`S*t6)d`Jk7n-4_@gFFD?spOv; zRc8_kVr`A;+}Tg-SMYBxjOazG59y=|5x;961AO^!HcU_(o+AtA6(7a`Ux;59-N;kk zz`?hD#zNnEB1!Z4E-5UK=)Y=*yyoyPYVMg`^Rq9Xb68A9V zRRAZcNlbx-Mk(V@&*(b$ez@&@=)gcn7BXI{tSIdo)$2e0xHMd*MZwmWhKg;BNA3c(cFpbWf*vy?-*0wj9WyZ5vSsKG7g-hxcxHB* z59#`r;yM1UVnm4sI3J2{wj5v`xlCxct^KmJWDP)vK-gY+Kw9|91+Ff z>KW;hFE7us*7Yz~>qq2$sB<=2ClM(o_GjFCY;aq{UD|BUz=bU90dR-47~Tf&THRwX z_$8?_k=!W4{&5Fbe4a`=@W7AeVbgn8GdWwict^o)S$l%LceCEo0z_4%_b2ilye;I1 z>)GQ-$|pt~daShA#LU?$-JdB(`6%#9M|o7_Inl&QpQe=$8J9Z^@d z&}><`Wo4!U@ckw=(XFSasU-j`#P{6|Rd$O$7#nU1Q2EyM(f&{me(N3VJ^!r(xOjV> zm!L#quX6Koij^)M(`}uX`K7hqru>-CC{LU?GfjrE z1>Zo{b>m1k-hJekqpi>|Eu;oK_2H{*Ak?Qc@%RSbr9jsYMe5~u(3@kE_PcWmjZkN; zK)>5_c2MgnWv72vv0{CX(s7hQpiNYIgr+zbOd7!QGT6T(rRG1?)eybor>_hAj%h!iiet%}& zV1(He$idF85_{NF;l)|k+-MIBWVmGpuP3!KI;9ns4sLRNspMOYeH_Xy$igP(w3MN0 z3v$7j>8f@5ptIPgiT8TgmU{N~=V8V6=VtQxDk}PV$76g%O}-&*Q5TZl^Xe-R^U_b- z;73MK_d!|BJ+?{`pa$P#&Jx`>uuw#VFdo^boJS#s^5r7_Sr=S+Bi zw%IiBsi6T0$@u~`JQ#%q}R z1SelxvGJxuFPF6lN!>lzs_t-bTRf}owG;unRqjG(sF^l_X;Z+>c@ru#sSUqJ^eKn7 zI6rS2)Z7vn_G7N!xo4Q1xbVF_XHU#q&*mddT^GZVP`L?2SrQ%$W|z92a9pxT0(v{U z(KYWQ_El^z>U}B`cy2#Uiq=VK?V3Z4YNRU@X=K*Q=I4M;7WRH6lMe^=!^= z^;em1XzHlm%E;kSqo==c@S*h;40N`mwqG*R^b6Znz8sVFwLDd%EKig=n$pFrwQUmj z>rUI&%rlS%%U_I*d@_r1WI(dhSLzbO)N!vhPIZq_(IMS@p9a&cDz=lozwF-wF)j5_ z09TT6ro@wXIk2v&T!VkeJE^Dz{}3ZjdiL$ZQF$cbGP{W78~Ri0_So&sQpdi;`x9(? zbjN7iJ%K>H#K)ap9Tc8=nhZ_fsB_i6Fm`K5vt&)Waos57e4nkfZ_Dqk_rmpOWgS&+%QO^G!F}KJOr$IKNwUh*OeuX! z{BttJky1s>0{Vo2>xtaW3!1FZ{wU)q)@5|0mv7|S<8H8umEqY>rTh9?U&vE#kHm^u z(=YKDvWCR^gkzLhEjr8{txUK~KI%L>dM|)0(BnKnZREVAfE-|+k|{Tdw;)k_Wc{kF z60;TCYYKNVCa}6Cyq0s1R^nCJb@%7kz_*4|hx{cvIp>!nc!Ac+chjiTfC{(m3T8GG zkShfocPfE2gB$UuIh8NUcqL3uhz2p zFc_?L4KIj(%#vQE4c^G#AO$a$jA??y)ZSoMiKCw~Fsy9(etCLrf5;ZjBHBl*&&o}j zh?lNY@|3RD{Ju$nD!k)%fwnJ{w=S&65`H%~U_hitQMCm|N7X9nqvf9@36gZ`F5Z`l z+yCg_H9wX4!=LN5#g%IftE6uP>+$9RH?fQ$a|dAfq*v^4rcNsVNd!>A$b%EmZaX2_ zXG@hcrBbEzz1nsJ#h>#%;U(v0_)fkU1Hz$}-fl(ICnd+v zy>*M%bRup)y6XEcMe%Yi@^KtwZ@gnF!QESxsTQ!)hjz4?L348{T)j!Z6boR?IS!q=U) zi-e7mcf3CQu)KH$<7X?e)DgFe6?I=E)uBz#@ry-d5uFp$yn(OE-MlXfAYFI(Tr>1U z#Z9T{ElChXzIfKdC&2j1=NVs~0C|#1b$LiiM)*FvocyH5!#%Y|pd)-GPFzN?l0$89 zeL6RV`8@AR%ZlCb@+PjmYtW$ClU0p(UQCX8fX6_m< zODW_^Q8+y_t0Nw>k%S-#J@Nzv@SfaBwK*=N#7RMFX<;1 z2N186`ui?a&N9+c7+bP&fP0VTZXBLeCeq5CFRIc}r@q*uqRhNr(3+1uKSujZ)W(rO zW?5NrHtOf;PwlA{bqBQYRO^;icO@Hw55k~llu7q*oNs%b>vt6jJ#$Z?ikz0Vxf-q1 zj|ioZOV5ed(UrazM~T|{V$P!aTNTo6tNN9@s~lqQ*L+LQU^BmU4_u6WcZKBPqaJeQ zgCjAF@`$y365x(?rn~sZz5%J|`RtB18rD83}Q->m<^Lo?FVfnel0oH0OoB6YrlRA`# z*2MEE;aG2x((^^bQ{G!qPLy}Yy_)dFDs}Pd2Uj$@#J{WP;Ov7@c%aKJy!O%0IK6O> zgO_36QB{Z`(EFWhf3^JV>35u|zFn%WcQKRs;WANuye}mQM`Gtk;^!9?_2%J|2T=@= zH)CQ?3wFyRAhXR5C}3-3ZJfJ|i}6Lw5j|p3o)qdkB2P$vM(enoo0vaPnM1MIvR3bi zX-&{aCF22{6=Ar~b`{6mR~BKhI$ddym>UorK>U3C=}f7)Kg_@03=2nmFkcjXS_DEt zgWWX_{+m^I6Vd3WLwZ-8_JKBfw0^N#F42!`U;bt$_I0ZW`(1|`9qlssFi)Xs97f5| zj+4^)&EvV6-Gbg&Bkb47HygpYVD$7K!7;MqHy;QM--M4ZmRvcx3SF($p3-fb-PXi> zkG77n3qM(1rG1F5Wj~w=@sG{kTv5i0wGPnrn=RcrM8|oGQ*q#Dqov5}n)X6>T;Y9> zEqd5dD(^ePau3IgU2CamvFNY>b}yZokZ_{-HzW&X2wJJSta*0c?AV*7MiXe#>;0%4 zPNTh%x?ilPVoid@hi1#S38&^R@@y>w9VKEMbH_rx&FSmEXpIJnxt%dn5R@7$w+~sX z&=yBWfWmlou~rcMRPp>xQitNn;Uvg#9Kx9)qxn8x>Gk40Hu)|$KNhv{LNguE^}Jg z8L@YcfN=8+e1IxNI~ME`k7a)$@xUaTy2WarHd0BnqAU`;7tns*+f3EH@Bw!s?%@;6 zR>AKnqTLdgK55QAp$g`)u$lm>_p(>_j?0+mBVKKmxRV1ZNd#`+3nTmOuA;VgHI0!6SQ?AoI z9&_z{`Pl35yIG}xfO?s}PC-}Wby)v<_F(SA>Ve;rjh@(hkBl@$IgJF=kfWp0S`Ydf zGd(q_{d8c~ z8d*Gc;iY$Awj%PPw1|`)-!Qa(zC8F`>u_VtmKN&%Qhi-l)I?gL=zvk7WLiw<0Jfs+ zIaSbKZ=}dc>hD)A+**Sv_{62M?Xe4zcPkAyt~PwDV{k+sa1I1C)^)zHgW(iXl3u7s zrTW8t4$AkN?)F#)5cDJRil0bDosBrrFHPygL*(z!Vn+9)Y*Hdlq|Wp%@;S(Zc!b1gqsEQrZ$r zW){FrvoyKAcdsJux*9M$&=&uqn;H^l!u;a|}I)$9f>=xYNd zm+Ygpy1MCiIn&V)cq-^B)f(_DRTP68Z^5k_WZ3~kN73f ztt>IryT8DeSiaZ{Z#S^e&&GLfg>lW8d%;)`GoIx+=!Qrh!_9q9?qj&UzNW8nr1seH zSHH;32OY-zBmyIyYMFx^yO>6a-Vw*;W- zi1zWqPwA?}1dY@CDspuv<5(BPsjsvvo2k-bW{9$;6qB>a%ey4MyM9KwG9{gHGvbx& zTDhUZvFmKOGOM*P(zLLcG8vF&lK`HrYBSfJSiXb`8eroC5m{0I^4pOD)A1t_9lXfz zWErvqr0}Z(b!JuH)}$epGam!Y%D214SE@VhHNo>^UEiEm(Jl4r7Y+rm_Ydn(TTk-d z+-`8Uhrf$w?K*3UCGH=_*axJW?*1AFBi<}MJfKKzCV!FjGH%Z>(sW9ZDqHq=O&L(d zyO;m)!AmdWt7E}H5wSKxgF*qJBSG32?b?_TIjiJB-j+$Li=4D9ks;}sd! zgV`XkD>3ZZXRU^;xln1yuA%Yqi46JdHJxjPE~+@BC?sl**JqH_JT1!n&r8nu zO011HLxdb(9s>h(@w8mV&IO1WeGCYKbl2CRxIZv!>n_P0%6r{NXp5{!`w~qlu2;T& zhehH~7{H4hpO`!@qBz0-Zh-IVDfw(>S?9ihKZY00;9&;-=ExexfL>LK_*@N+kXZSL zwJ@v)bH}F3dpS(Qp6Wn9Ov$Yr@+_HGuy^<+BIX(5|E#nh~(|{+|Q)wV>6COZqL^x$v z;hp*8F?yNQG}y0=%J@rJ{sh;#+9_puh4=sIbg zah&&lv(zZwfnm{7!36_Z00(#E;zrzYmOiuD-M3volK#o5_Pw?O6OTRS)ptv=fl9p| zyi!AQz~!kHO1Nd*O{B3EIy)CwV#t_p6BSPCXMN@#nFNzl6{$++k6$5GY#d*_vlQm5`zaA$>yZ8Gqoz7{P$D>n&ayS%o^ z4g&zpRiypQazX<{en4fh0~zaI*wZe2n#`{CD6L4hw<(;q746rvlxZnYPDECRDQ}`k z#07TN>$4xgl{lrP1Wuy9xsp;n^bJ3n%-G72X^Z$)Z*==HD!dGzU}VRyo^_bk&ZQuz zJY3f3pzdw4eY8~0Hz_}|IggfL2>sk<7kXk=desD}*-~}m>(y+5z!<=A-0nBFfb_WR z-L2$}4%c~uW=x9iLy{JN@EK#Hp4NMA)eX!~dv)e+h*4umk;q}a!`QSb03 zjnCe1LARu(i9<+XRbQIh#=)M+y?JM?vCK3d#F^H`2HU-mbmD_Q&W?%%!fxn8Tjq|n z2>VVymhNuL=ljyONU15T)@$_*e>O_h*I|(j&s9r4q_>Dy!rPj6CZ#dW7MP!zuM*6S z`%Ep;LS>lpcqRPn+(z>*JUGXs^YFOIP}8ER5!n{qJaw)HZBZ{)Nwo7&ZwpU|Z9i&i zuaZvkZ}kZkC2Qf_(#0~Z*!};Qy6!-z|Nq}2DIqJHvpIXq z$lhd}6~b|LGDAkl-s5ogJe)J`jF6SRWsjm%wn|n;_`UtUsgM7?@BMnep0C&I`FcJd zV^meagnRd*I5NK@cQ`I=&2ji}RO~wwXB-K^-D(AboG3i3s(z9ZDaeQbn}OpRx=1=^ zC3|-TyVW}u+#05pH`^5}$)G9e8vvU_ONx^WOQI{Hpw7pSekbAIFGJ{zxc6HVc&QvF zC_<{ggl#;*?O+xk=h@$`;2~ssW_;_(8?zVhZT1ed%PdahBG}XB0>J?cJ%pV#`m-&i z?8V`cbjZSpi0`t##_m*D6(lr}{vbOpNIUR&f{k3bvJ=DP(H6fMJW`kYyFV9P9T^u| z69JXTO#x+e_cqkiLKHZ<#@KN^%^G-gMpuIlvPaf;>#5$k@id{nsuub&T@wUa3Ld$y zoI6zu@3YWtG#{jCo4EW^A!7_%bw6Pq`*ektR8rVpb`$ETR)MxpWsHG8e*H9dv#r!h zJofQ(dO)V>#j-X*9Nm496elhiz!S=7SRx4%BR2z@3|}(W$Of_ynecSuTt}WY4Q3Kz zy5~O@Ta4dtIE0fn@OfZP^68KBVGsQv`hillp+Ef<>|c%c>e{dezI*Vaw!d_Mk}$y} z*UWdKeGYWBKyBlm?Jd0@`Qfbh<-jA5bQZ6pKl(hM%c-o=EdVz z`~W&WRq%)8I-_hAAaC=mRd-#|vALX|UUY018wm-C;}Nrfr8m7ct$%}q-k3uMEHsaFd)>JUf-j(y64RjKuEQOh+ zPm!*Ij|@AR6ZW^M$11sG6g?gl`8mB{m^@bZj>Jz|RV?!P_9gyG%b3KVdWAYtwddw4^~fgSD95liK$OE2Z3hRN zJ#CW-6B=sAl_eCpUsf=>V{`Ep7BOH$#sy7y9O(>xf4$3Ub_lrs#=%pn*2%7zd|ytw zYBI+hGtC@R!5m>sIoh8m6Ek-u4iq5tV%F_9-#22>C#TyB5WMQAbULcv8oa+|K9wu^ z`APh4&HyuLS=Nl(#n45RK8&5@z3ZY2a-WG+p~sBqb3c#xkJ{nzP{V8Qr=+7J+G)tV z?zx37?4G%LXR*I7e@Qp}#nN|%<32^U$)Wc7x{R~V%xdJpoN>M8Ojx*1*>Q8^$qGd2 z*J^aBBntXa#v}d(;lxiQdyAi$X_R-6xa-HJJE`O(v$zGnhE8^=r&*(nlv=he| zbh*mC)faVHq#4c%%-{hqlr?9etSqjmxLnGg%2Y`0$87ZO$ID?i5xk`|>6t!F%d;ds zPPg<#Nn5Nfre6u_;j*L?)HA7IUO|&TCeW}5ecQ=5A#7-QE!BiryIGUzq%0Ig2a@Dg zU+{jk=t)*je}Vy88Y;xGB!stq7M|5+*$OSXM(9q{dGYK$@|}Jia$G4X@fCZ&_z7-p zmFJ!8@W`jEH}FmyWWE!sW@{_MDGX%^tMb+qI6d?;qiXHq(;NEeBLvLiMGrA_j2=(w z1U86|Y6w*n-eK~->`3Z87)`=2@*K<&W&E1MjKUkaDOJ9fCH4clCbXqD>Eq3wtsImU zqb#MY)Ty&ZGb8m~a-=sxKq7v%XuA)eNb9NvMT2VKof?N!YFYhp1gbbq`fjS4xB=}z zv^KzZ&;Yw9YAjG2^VcA-=SIK@OTa6o@%HwZ)15-$TTo*HeNy8frbyAww7Qr*MFlB4 zO1d-uL>CDx(7u(3dpu(HG1t&-qBAU@cJt=fN&rDh;3Lt1N0GH}$@&|&tJ5!;H*tvm zckTJ8?;X3qMDiKsGtPNYipD^XxU8-ZA|u@_AjJoM*Lc;t+vte%k^Y~?o?^~9iqD?C z+t)iWx8G5lAYg9I+0Q|ryrd`*<8HdEgwmxEUF5ko*SRbi&*;AzFx))C>m%3KxQ17d z{GkSfJ!pRC*`Ax6(&RsF`|z7~@w01Jw(yVQLRABAXsNPc3*vOvFh>c+qyrH|nK-sS z^F_wXgp5&e`Ru`#A+?zhwBf<{@BRW$?e4vGSSxhuk+a+>u`tqgBh9$Y>jp<^Z*Mm| z!dHy@EY(DZdcacVHZk{pq_*E@Q=Dc~lS6daXfMl+l21a?5MPGzGuM30kG3f`A6b@c zYBoLY24p>v*~{Mi-5N2OH<1VR?{5|<++4BIeh|H>fVXDONYIuWuFZ3Rjg|wyIW}MT z0W@M6=f40!-uo!$T;d7WXPd>O*Aty9r4$lxOmHPl4=P^XYxiMrb*jJ_9_I>;w%SPa zvW9~n%l55RNlXd3+#3Mtf`eONNf1t5@kNzyV>?yGqlt`ja&|9dAnkX;jM9pd5ovREocG)b#x`a>9ymlpT2)w;M-YGvO zy=vUD1EO#4=+y@4$GQ2;$~5u1D||D)MSP|l@Kt%9Pd9L>VJ)Y?@tr4%6^}>((rP-i zBA`I1_u1@5>Ogvx+^OSTQwr<`Z6u2{IEU>CmC@8(V~L zZ&n+yx*sxEo{!_ZZTR)^{l(nX_zrkF1!X3}Tpkl@ z#y`ZJA+sShVHs4VKqXow>WUBQ#{{fviHBflU_2t%18?8iZLib~A7<)vdWbqai{2?LKy1Sh@GGrLbV#pDUrcCwWv`ODlUQ*M0k2Lu0j@D3!pNhcNf1YpW zvv_LIDTj$a42cgM7K+YtopS+2zbE--Ef+w7_RATFy>Ux@Qb#bL~+uX+KXxUU2|W@*hgCx2)Fvvp>e^-_iSS> zZhi?OeTDB>rxNf45@wmN4u)b>@+Iv(;2JVEUh8MpiN0kAEcMxY7078>IWu%F{!JB+ z2mQy~&R=|d?|I`i*WkU9Dp*LCypem;aJ{$N2TmLRBY6BLAw9*;vJ7_chxN>A^`jT} z)_+yVl?4*6fBUL6rk*`Wb#+VTp_jcl(c0`-{g1~>3?E%6eqK}WeJ9<*J|P%X$;Re0 zGGMM*{n(?@ob1WsuCG?pofC^PD}SfmRRBJ0pW!Dn?fxBdd^fG3^hCgv!);kjF+n&{ z^=yBc?*V4+IpoV3f3*38!cE^v4WeBkwfOtHqo0-N(pl3D@>cm*Za=RD0i71g@om+g z$ttPO6)N=kOjNZS!q&oDZZMr5#s99!K!i6Sy{vcWMRQd?rl@%7UZ_-PigHjakgAeH zg!fxoibikIK`33R^jmu;bdWIaG4&kTZM|bi zRb??3a})}0oFsT(c|QlI#`Kv0xPKsD`D|^$LSCpmmS8R%JZhBme71*t*pU5|py73D z{N&wO^O~rflV3jq1&^Ctv$v6JoA65eiV$Q4eK7nLp!&iRF@^ydoV zi*|qWaPzDhMX=u6r7Uwi=0>+=(lFUN)4A@$l%IsJnigWFv{%Mm9I0+3MYxxTqQ7(E z{ZXn)^!uvM=~#5OnVFvFmYvinlds0wtm}_af4P(IlB1Ekt>NpGtDMgkPmUxC)86J_ zs@1*xWBd2~$6x8ZXfxY1Eu%bWCWJX3HQ{?ZcCcpjp$=1h&_b6q!bPhuQ_8Vd{c%k! z-Y(CKctk8PgO_1&nVrP;CR+8|1ax)+%rZnf-5E^Dem{TzVDV?1vKbA@y>8|>RrYe zJ)5D$0~(Bn3ufc6}cLdwAQI}cxNbzSi5q^KE^J|TegvLuSEbW@n3hdIiD z5aHux=ZygCgrkQk;hT(vc*mRNg0>&K-q3ZKho%ux^u&_r|845+p4~Xu*Uih^yf1!s zQ#?*o>D({HIH*nF{otj|N7Ila_WCe6^}^PeEu{lGb$k=vVF3dN-JhnRT*Z*LS;hJe z%kuZj;b75mA(ps`=cLlsGk0$36AtdKNZt^y>(8XVV7mZpx^EXmu$tOl-I_c5;^SOX zRiDtItgtbwZe6zB)kVKKy}-HzD}=3+rJbkIa}(i86%7B(1o&o$(P12i6?kZRlK%6o ziK&sv&Hp{`%9U9XbMGY_Pg7eeQ(l3v;~7vNI0|i)Fl{ky5wdR7IQwMMvU_R_dtbIGA;r`z3|(AGAi+)tyL`hPKN zDCdS4tCYPw^W#BXLMxNgatXs)@du`Bmk(Ddxfpm}32>eV)MXg+NA&%FuU%!b7 za`YWZp9Je!vDW72Svy?Y2|L5Rjy#zfgWHDll)_O?CXICu!&Lw3wd5>an*#`xM@D5J z_-&}C2cE6vjIh5KPz7IX^?wnA?oB|UQ8p)8QoVPJ!6be6EZszyub*$pi+sf*Itu$7 zx@Ob6u_h?JYjZ>nmS#^G|FZ8b&YuNs(f;u6EyPdNMcGV+`9e6lXUoie-no~mEBe|@ zH%gwkB4vCq{bi0zuo~jZqGDHWnu?NkoO>M(`vV*my5faEdO{0M^HAZEAaMUne7bTF zpJ7$D$m$)c-SQ$)Ra-5{kYBRkjR>gggZ#(qZzNC0k=c7y5bnUavmN}By@7n_*N-30 z9dQO(<064_P``DBzN^#5Yl7Ys`ahBIDMP0lqe^<)<(T33rs7l@?z$R_Vsa?^ijFm7 zD$oe(<#bxR5i+cK9J|7?Lh?Fsw^=LRf_jL^If|~FT7<_tak!vYzwy(>Vkx@}uJ*+O zJONL4Qp7JqLagaqY?=t-^rvX^9@m_0o6pXwTN*$kEjDiY5@@UfsH0g+HxH>h)$42i zVw!k0DswJL_m^h@OfTm!b4ws8|_{S}cNkx;G|JV`$L16`AOpuSq@zqi!6 zfv_Qs6F=dT4i{sMwXfiG$tdsv`~;GDqC(T_vxX(6Fi&Z%`8<~E+41=;m)sVLxohinn(>WaoPM(ua;>kJ<~ zChp(2_1Su1*&&Nfp$V1Mjw@UimK>j1rEo(`WoVvVH zTAeW_J0BnSB6|K&|6hbDC$ubcyZFpS^R|jbLZmeh6K-i&pd}`}0VTMjL@9OyW&xjg z_&9NI6psJC0DCw%&Y0O)@AJ5v@5(Vxud_n3z5E95ojRvgCHs-J|58f(SWh=9Jqs{M z!zk5E0mn)aNs5r6DQ^Gy`C;P(dERIN(BRWO$zG5NTHh6Yu(u;YO+2zfXMJWU`i@{m zBxJY@4^O7tq3u4ha4tZjV}dn46YY)%JRdBE`#QPe(srOQv&tA z;XrsJTSHY44p!V{5!LK-;%3hp?BftBS#L`Nl;Z)#mw+I?t zPnHA-FV;An`rllfC<80mNI#v-<3p((A_M=l46$EQfA{9(%PK3t5*@WHG_D7R1`F_d z&N0Ot)~Jc4%##pE0A zZmhqTzrAIXId#kD>;MdYNd>10&VCZoa?VvN7GUIq)%hmAfR5v z@v74u*R8UWoQ#UwmqXv;Rl}t4`hSbJ)WfyXtaAdTzxOGVDbYyfd=+|bRCd*zCvIvq zTn8$ASgx4hV>g#%kKnE)!)4Ee{gyXVr5GCkW)q-dmpP=WVe~1rzg^k9_iuW_X%el( z_mv%r;|Ir}ORA~eyc6XD;?!>Pw;wNGtwcK4dJ!>-gfW`1-kCrJi>PC22^F^0t-@M%S4~;b$ykDxnp;k1D#atGegh@sUsAQe?fT}OF zfgA>oTTq_3TeqN$aZ~KrGHQwBGeC5Qz*QstwGofT9Kl`39Bbg(toeZ}ZSIxelUqIs zQ%~>u=oya~lOn2jvMV(IqhbkofkU&|AbXnXI;+cFZjtKWANKyW%joYxT`%Zn zSb)t{3u;-D=+-9?Fm=rwLOI!Ug`*K4HbOwKfjd$#rSgxOs}00WFOVzRkvfxZ7$PkJ z{gheGXlPBq`lE~6QwNERW?CJ(%xrh5Dp^1IOz4Y+d(5H=o>k{n>3Ck74D;Z0P>;}1 z>~UR(B^Jq9>MFZN53wpv3t+w{-2*(Q8oS3v+4z4m-HtU`?Qp#2cCkn`70zX0J1mw z58+{4Q@Xx-_{|wj_evz)&?NV!Q4Tp1;%*}As3UpUK z9>zMUVuZShg0_-=Cd(WpFW-K0DEIusP3i5R9YE%?#gzPl1e$h1RQ(=zL8LTX+^>92 z_GkLN#h8P(#sp^aK%39h%F&*#E{sUSarozX-swVaI@_UpcU^9 z367=^`mf1f%0$rJr44ez&lrG%2Z8djpO>X`-@z06rVv8%HHge8XwZPaT1226MkyHD z0n4=&&$eeV@hz_2fEN#SWBORKchtzF4C+Y`CAET8c&#!gJ*FFh(JQOH;}`qZUhJwtywMh~CJI}!?vySw@G`}4LJ z2S;R8-inQA_Wfi$h5volmxGaH4to}5m0|k+ePQf)#=>Q(2S#tqEdX^^m2PwkHx?|! z>*?Y#&bi8Jv#S(Nnj}(gR~ArF8#8W|Ad*LOm=aspmd+dv~uWGoj1t|$k;M!$=k{0pVQ?w zknftV^{!l~eER^n%*S4#cfMBz=M{M>9RB&eh9Lwd4MPs-14&{ey7NG)GO= z98D?+!7LRw7Hw|>$aZwPSEo0L0zJ#|l_mSJX9HiH?9&XCY9dWBI}p-nnsJfEg5Dk+ zJrS{Mx2&VKk~mt%Sy(b?Mfdr~xvn2Q|0cn$L;O_jx)h-_z+3*r{pa+27Me&-3PL2G zZWTrqW67ri0l^Y-+EgyRR4vY8#pp)l6s$?7K7nZp~!Di6oZXwjz>7F_V4~igFwh^4r7-ewxMzyg?ah3i7OS#(OS8;MVV?Y^B-ga3G z+KN{d61|ibu%2eprU3Ry_(nx}vZ-zL;iCS)nxZPE*EMhduDP**_0Nhl6=#)F38gM3 z<4Dp7HYze?J?#srN2*|nx=m@K@!^&%29RoU@l=$VNFo}sXImKH0w&0HRv6yh`#oac zkwPs2^s81=@V~uMsR1h_nB8yODel7TqK`}0gt+zO5D9(zL49Q=wCSg->r|Kvr=OQ)yc6 zO*v@l(uJC|6R7ZZ`Tzj$9)C^mSnYVOfqP14eseWiIX==X!*$coCUFhK7UqBK(sEYex zv}VHnY4EgfV-@M&`0I?**U29g=#H%J-X;y6F6aS|J2CB5g!?2(MbI+kquU#I`3nAO zy#;3|ibZOSznab-b8d8SSWdWB9d)$uhTF)4X;~m*&a|HMsUZ0RoUoLnF4B1=UrX@o zx^S$4+KL@j)l=a$m)iznS<+QF)y5tfUJqkI6LAPg-K$;M&*?AXRcV-fFC|oXl1xfn z2UyXG*7CzVcihh?Ij*QTO{|47KR6Xv$4&;xAI5d_?SG7*qqon8K?PP_$k?Q21b1Yh zq2=~%fpk&|JZfI7qx@YMcO`o`ofNC(7I+NmP|jBAf4cc3ms4NY{!(Ja*XRa9IYJW- zmS>+3!!Zlh39NWJ*Zl2*fG3@)1!wAoDYEHB*-X5Bn%+CBAwEc=+-aX*Y>3BzjIMs| zJW1fv@i@p`RtE|Y>Sbi84>0lm=q#LH{F^}!FVk8nQrT3gz5!X5!7}By28mXbIna9p zLmwACi^e9nYRz<>Wj7O8bpJiXYW(%ywQ6x|E#%pBn>z; z9hXZ2k4tRJ;1{Uy5$-zOF({z6FY}m(WZvtR@7b@p(Eu+_qrA%!L4!An?UeK(1Z7a9 zg6Y$$A)e50z^O zNHr8&__C*HSQCi)GrpFjmo~r(Kz~~_VYN! zv>p0&QdouAa1W1{U$HJclc%lVaGk){PZpx+#nn5?_+;Qv9K6lQH0Ac3-EHIaN1)7S zqh*9`4#$OMh-jGO{lut0TLy*tJ_A>(nb_i+=PnICyDLQmfawAvVnQfi@aSPYQOzfw z(S*Ip!OkAE#j+Kdy53kA6)pK~XON-DCjD?TdL>%xONY_0NPGFcI~bbC@*Jr%vD#ncT_J`#Rh7U=kk(kPN+guZuaxA2_h>k z&JTNK0zgduf5!9jwna>g+)*5y({9SC6UhY$D}_<|P67SCPUz5nS-uCT5B1TAd=L!bLTyDe zx6|7^5qhzJF7HY0EQR(e_yxL#89Hl92-`_jICQ&0dQ#H_>-~EuD8wJLPh%61A4$6t@0kijrYzU@f-O-Ji?+)2Y?|b#6 zEQOBWYvC3D{}>yZr->$)YTju%9FH7;jAj*9H%hCScN4W(Er>&rvG*o$ zQu?=A67=4vC@7A$_RL_7gN$OAMzSB&psv-+6(7fG)~x6QWg91Ku9{!Rn2JgYL(xFY zsO0VtoV2I)Y`@BdmiMa0#P193h)FmRx!El%DSnNUhbIa-j>o%e5`U(*L4WUBvC``` z-5ZEKW`8eNG!5>vSUMbo!fxDn(i)9^do0ngUj|3;kj5`trQemMWbS9Lqu?Ro)l+c$ zC41Hw0^um|NuqG_S^5GeMLYT8>G$W_9kY;K3U^{{xtagh3b~Nnsj=4r+1bcyoX+sq z{n3cEpnrrj2s9h(JqC&TH`eUE2_^?xq2jRuVZzjyl+-ze8UjKAiarTT+ld%*DFfYC zbDv;mpcJVpSXpc|0T?0~{Y>I_uT~F4=wl!t$1hPFh8uP5!Bdl>`d|N_1r9r!3wp9d z=)C+h(oYUp@=jL9{^s?PGtQ`3ow{*7E?bUxMJh@ zAS*Fbx-R88Yyey1@bqlr+i*!gpPkfVf0^irs&1MUf96XXv_BRf;IR=O!5OJW?7Yv% zgl4t_ZVmJqsHX$Uns)vGXXDF$$tZAz+C)B$uu=&7vwpV-Qx#`x8EmN3cmerGAuyJR z<>j(mQXV~NYSVmmCwCKVS~GrL$;6SQoY^)K}2-r~1idqptEqmD(wu4TWpwA;KO-OT^Ly1~pRpl@bWP?XUxyRRDv=E?Fj#I~xVn&X z*Ke{nUugRzUr`n!|1-)ga%1PIyt3-W`3Sn?5o@|%davUWlZO4F31*flpv zzbq1px~ngE#*Z>e^)X);s_0mowi;P8x4uG{tR1kEtjB*f()!*FGI8Z8jsFeeWj0B` z{=K#y)2|p9x7L?sm-Er{Bbh)VV)N_`IB}P-$-wfbFPlQt$A;xr_OT7@(+X(Lm&11s zwh*Tz3dWrvTZ_}H4bKpo9e>^ai%__Jp8aKZ3t*>#n+BTfld&)M+iX*u|MDJ z<#p7sft_4MunqUhEJ};#{!aXDS<9L$yft?=wYKEuIB_SHQpx!;BBsp{MExBM!y*eq~;hDYfw=2a4^B($` zSK(T`aNW+o^_N)!K)OO$T`_)L`>kF+ttycqt^Ea)Fwul^BF6F*BC(#*^02xu$%FP= z*zh~gU$1+5h7Wp-*Gx`n1WZqy)>G#{%{Kf5w5VEBBcRVX4lj1jGPM%PzE@GS7ZO{S zo<7wNrmfNqGo70B4ig$Z4ao*GR%eAk#-Z?xZ6gO?8*#kfQI9Zv5km%66V(tGoP`iH zz8Pj4Y`5+LH()21Q~)}n0T80hJ2O^LM-!IM_f0vO6Z}^Mb2)MkyVwRwWKP$2E|Q8r z^U&VNZ?C$8{ut13tED>v`(oXp9=a=v#7`I z_#EA&7hzsgkjyd{2y|$y#Y_&Yjber0W2imt1lP5>d=Ho2Wy-9&iHr@(&kv-Q@;T@2 zs7+O&aPBea8qsb=T0=n9@1a4Is#w zlh69Z(DOPu&JBQp)lZ?p`{qgHWD?U$y^S1gnlhU1Omh8_zF>aexk0V+5K(qAZLSR+ zYoK|RT}S&l-5V&)!r(agTPe0VKFEtYR@QMFkez)qWgywvYKpm*GQH`Zdt!Q_P$qmS zv)I1;aOF3ChRLQ}qOsVzB2N;WR0UFpEOWbnFDcjHaUsoyu}s6{PE72B;m%}5Nqo~= zr$Aobi~fyFh|JIh`{!&k>tz&s1$)JC-v6I)DnXg^8`*+cA3Uhs=ZO;l^x$T!bAxh< z?ayH8r13x8%DHHoPgWp8p;MutZ@O;{2^~0XMBnq->+_@Mf_!vTH;-!#Y~AcePHTc} zu9oYrA7y#^hrN}ifPc`RY3>7I!M7a+zXaaE?#kZG*9AYnb!Pe}I-Z&OUNc7AHUw%~ z#VP{yD*;CknnBQQf#*JK?lN8%6j@A1$c3u1gVp) zns^R3aBcoTm~5NCJt_6E3Gi_AP+^x`sl#2%UgE)e#f0VU8UykPcZuP>q2UpjoUtax ziQ4ES{6qb`@oj6~%ktcn*~iQY9L3|oND-8Y0fD`0Nrqwq!k~`WdF9M{E*acYA%Xi_ zu()C<6rFmT>N==IunR!XOul^d>*+$%6ln{f8~4EKR8;BmmULxHbO7Xcyk1hWCCBwi zOyO&~3e|YXJZ!-@5r-7P$cz zcGK`3E4o#dDYf-NA-`|CH?4c-BEr;j_dv;X&LZk#9xaYc!C=;UI|1#I7(0PTi*lof zF>yF+Pl^nIqP%WSsmAeCEYRxA_1!3&JN`4-SK1fvQHFCz4M}Zr2|BBJGb0puYy_21 z#gXQWFBO}XtBGtxFvB5EFsl`=%BSq^`O|RuKx|U^?b)8%`f@%I!HqxwO7Ozw!JpU! z)GqB!5`xQ^V|*NJ^eglOjl4Al5roFm#RK_4fj5G>tI;mP-yHkMz%R(S&n`0R!3dT}k42rZkLrQ% zVf80@iEL{ev$V%Ox)YAsAc$aZb zkZ4dl9fMSmYmtJBc=XGUh6^`c_qM%Q~Me1DjNuHTRQPSdAz>gbEhuJ=2bVxf`A-g_+{*! zl=x53Jn)a8xlx6cxTVRMkVX(>v+X8%3|WwIv5_?b@smC#-LRa-ZC{O|7vLeXZR1Kx z3~^nZ9Ia8Qq48WH!;v)94>r<#P2)Ig`WSXOWiMM+BiVBB7&Wr_uc55`BA|)7_Md0N z%x%W3pxCR9#8&(vB}OA#-8(Ovs~I^gS(AoA-BHDkJ-X-&8^Qh8K1hP|(~sw;a8mhi zM8%J#&wua!XEUIrO+EwsF-QlIGL32e4m|`X;nvf+nn&tvP2l6ld+AN(P9sn5D%R-U zovP2H;6U0N)CW7mNcuz~-ZfHbiF&jAIqm@zh)dEpgGOMpCQ3Dh$8Nxv85Z117uY4m zqd7CrJkf8lVz7z3T=5L$-%nc})$mDEyV;qTAuvemI8PR6(AnG@=aAfh<8_f!6EN3h z^jDw1;v=_D-5gEsu^xjmzSn{9=(~>>(pE1OijH8*IzCk{|NNNDXG;>PDIZXPOD$QUb ztipGB@?qWeX#6yOGb~jmb5%EI>R5tdMNGBOZD^)q^4wkxS#0b(B}k$Z@@s!Mnlr5P z^yF9Bzeu&c=}_ldu)oQxtVuMM(Xqum(@yTZ~E-^M8OZ zeRS4!K!Wma^2Y=l@5z`4a;|nf8}MAXlj~9PwdBcwX*`uwk`v?}ooXryqNF-BrihWS z{OSWR!HP{8CU7}?!6HMV<6d(5e3vu-QfdWg&^mNL*5r1|XP!*Oq_~Ms_W_r67=*i6 z8zIITMyk33`^{o2AEx3}IP9M;El#K9eqWY60Lq$IhgZ$_08mbT-wxQ`{0(aI9!9L>7O7U z@&Kr{4COJO1~bXXXDNUIof?7>@yxY09wQ&PE8s z;yciQ(PvqEB}4KTtrFhQC`fMKzsRFlx`13|4ntP*`pM`O>i9S+y z*V3_uHIOf0zW=?GHL&)fW%d|tsOQ<^&vyE%DeDr7Mw6qpwGyp|V?GL1AAXSRlZ+bb z<{#}BdVT(uOzg2m_A?Y-(uiRc|>3w0q;M^y* z;b;N3WrzL1r2Z_8>89aGP1C6-%9tg1zE#DUQKB_6*_84gL6J)E&Ke~$+5BiZNox_> z;xl>Paho^hvJ-cul1%5VfKwx>wM{nz^^%kUO38C|gciqMN+r=o)9Cg|wKWrYLHdhS z+9D(0?>6FnOIf!p`yJ8g5i4bBma`v4Kto5HN*efiBCNV#VQqp!>ItRGcxb0%8mzde zL;)TDc{hRq1+FanPyF&Lo1LQtqC<^ujr2!@l}v<#=k_iPqG5L~zT;*62rvSY z>Zw(EoMUvmtM{w(eP>qlDsy^g(|eb%rDO-E2%b8se4c%Dw_EJTNSYJK zD2gG|Cjk*O4}Lu{=sA!E9y*z!mS*_7WVh%6N1$4o4aFs!AN8g+8a?;fvsJqpr*eUQ zQB(1z9!sPH?ZReWluZoS-PLJDJXL;TnyXfA0<08IrguKMkIlX}P;@Ut7w__$z8IR& zmXT7(uql(!or-2o;mAWp+CE(p)-?6xBwRyv_S~oNh84ZW=+utioWG;K%;wjuh2PelX}L?4S3je=9#MoIP|5xb`%rSux`M1%sWuCB8PNBvAx7 zYUG$PPJ>0;S5hrv&6Cknu*f@m3}JXLsZ6 z|1CH#fo{`}1cpdJ&qwI3PCbcU3ZE{u%)XR!qrbW%JYChpy6# zQirFzN;ix%*b6#gvC21$&H5~EQ|nRLP*=w4k|Lx_oow|nXlLz2YsY-_Zn|tSQ;RZK#j%LV=)hz01SJLZQrRAajM{?s@ z{LN9T>47V4?||$l{TsTmfXB^MfbuB;2UF_=V~6xO%|5z0mrpJ=#`=({mz%76cMnMV z4NY;Xm!OJ8n8$gBi`qDXF-)MW??zO9J_Rx(h{R5DQ%bR`OOG8qJuDQ_@0>+riXD;1f2CjdgklCM)&tGFZ)*- z$cH$MP`yn3a`N{WW6B(_K5ltfmFhJ&&O+#k26#vAtULDs^ze7k1 zaqg@gD!<}Qim1XA^e`vbL#?he1qwxQrov|Fxd<-j8vw=DJ1q48fT4`Ub*1kvGW&o+ z2U|hwUCnK-vqmpMn6%JOz!+Ub<9PE9b-sgPwoNJe~FwP>}Rqne+K zO4$}j+hsf~B-^ewaj{8sGMb0lx#_;pv6#+OE85p;-%;nu zcoK8e6n?5Ew8{U(Yr4R15o7Q=#>=Xeqhm-BlLecLo!vm}Jr*(+O3~x4+X*r7m^D?8 z=S&7QY?KC1c>EXDten25tj4?8OobWaR3k>yfA?E8h}BYaQFpV~tdQjzs>)^- z8v+HrliD%wGA;=KX#^GCbor*DP~$gljQV%g*laJl4w&5BRJ*U&W2sR%3R@B;h`v%u zGyrlyBX#N{hmwbCSVRl@kxNn`XK1t!lgJa--5QpV01kg(ub^Tw)Su#V+%w8FggFfe zLw*5)&Gs*!8{Njk+UEKn@cWD#vbLy-m|hTDJA0+CRRYE@Mvn|Kd6iSjCO#aNKZAL< z8&0$tY`F4+!!x=Mi8`^`h!WFjvTVvEdnW5r1H(LkcZHB(7p(t#>dst?gaTL&IM|Fv zuN@LYXbEoa2ZifO=*P0VyI@nB)^p7!u)(n2as%k1G# zdjJcZncrh7ud`lZ_wR!KcIiJIe^R8$6s!O440KkTbcao1O8K;tJ*qJ20V=+!hAmFZ z+@j!~otGNDelpE{RxC=7+pCGprlUnNZ#j&$1fEN?p8j2&N>L0iG|Y|?6t6(oGBjEW zZ8=P8jd-b?GF!=ljs0?l-*75VXcpJL!!Qz1=^hR92zR?x2VDMl18(07G*euih62zR z?#6Ct2>Pqh0n{*qie9AsWUNfd@%J=|7G(rHwg*~}J{H!EuIk9oVHC!9o`2-etaKDaE^!gE?GjJ7J2BelSLg_8ynjeda*7EW zVA)?MGcddyyTy;PGI+8`Q9DP?=L`h_dsX~;2|yA+g^zyaSa+ARd?Hr(6tK54Eu zA|JXjz>4{wud2nzG5~q(e4GsGL5T-W6r^6O?pR$E_B+Y%}KZ>S>}MEonI5A+T! zBcO}$Ps|f%lV2@TExSY7<@lms3XqK7B{O;$ zsoCJgr}IJ6^4XhFijEBOX7^MlZyHBfWc^vqmQnK(}5k9$A84 zmt%j=9!g0Jqq9fCcRq|t{0OPl(QDLFOz3{e2P`$SdVUgVQFu&n4Kp0FRh#2N>-%!q$$?y0O+KyUgf24Cv7-W!8UEI*bqX zF`=Cv@ZNBT5S0AZyZnL;`` z`1T#317633(iKzM|GVMNKFI+pl}p_ePyC3+ps-$Hl1_;!PTPqh{Q;UG2&xh;$R>JH zVn9LjyT)SW>$AE#1`!(K4H4=UIG8C)!|cC++)&O`kS@c5yVHh&_6rx}Q6$2!^}()- zwb}?wda~Wbt0)XOM2%@OKb$y!#xtb8%Q5|^%tn~W3SDeM^<759lO+Zx(MpxS)E7tq0}SvosC`Oocx@{hrdL9}pFMVei`sf}RAmPH4r3jA}Wg$)h%rcs7W zZMpft^1v$$jq1vxwRrcqI;{RkIQD`>(RfU;$)JNiTavm2AU)Gm`J8Td)wuCf;jtMs z=@D5jQw@fhxWee2;hfO6OcuKb#!ZNt)jnKq!O|`>+74qS{LL+b;KHzrAz!1DRBFXO z74+io1+M*!n9kaAoEN2)avfctu~&lbWsNAd41rW_)z6XjVeJFO?@bZ`!~nCvPIutB(vQSU+6yq=N3gh4qFO9JPsRXMq@(_ zy4{W+v6*uQ+FKcc(YLHu9!!^8i3_e*<-0YafV)xTUx-!pNBtm;|D)io9*3eD6&7{(a-o)Nhyy3d;mU=mgPC#n`-)L5j4)wPXOtI<*pGLA0_&$xk>G@Wn%t_#Ef^k;K{~ow&O|Vt?GKW!mY@{)m zY5hrznr*^w*}#9-%UJUWK(m}un^@xKYwOo)9iTD->y-Xv3D0hR1R#C7DrBdlE2{~O z>cyc}Ucq%T0%RHxJQ?&NS%?KW{p_Lz$un={aut*9Oom>hU%?g?Xcv2KnOq~2>Z%gtk&M*4$5GLC zwmud)dGL6-d0@Wc*X~7aj~x4FnN9MnjW~?yZGsxedv>tYNXD_&27qis_?Ho8hMnMu zf`)hMfboP^9o=3ftV7d&uXx0(Ndl8-YbUzX&R>{M)9YwXXf7E}j4-YzUj$fT?v4~v#K{E}%tJmXx<+Ym9S)De3 zYI>5qp?qMb70VZNoE`0;>5E4@fwPDQ)hM4}}P>ULo8jQ#wBgX{1e&c2vdy1$Vt)+V0sdr_D`j z3etwU>qV6^n$)n5j1Uo?jhyC9FbjvK*|uV4Ktjmdq(mLvid}nli7o*_EBd#M7b4r+ z@5o1Xy;CEzw09~BvA%j{*^J^nq(@ZJ^?cnf=VA&Gb8w;IttH6^d!UM}g!B^{2i?+* zL6z8E@#NuI*ejDeMoC~7o#T%Hz_!(1Ip^sowF{R#)f<1??l==N&Y?N`Oeaxa`5T^; zZ!;m@^a!k#`j%(~JQS%lfr=C-KQ&M-vn#-Qdg{Aq{L3r&?E5NA4X~9j9%t zZaM2i)2d0ohR38Ta}#F6@pRIoy)rh}AVYj=Vn&$#goy9E!fJg4gGG=*L7S^G!n+I0 zp;#7-Hs&7u34fLLvsJY}+zyFGIK|kcUwvTQqg6wgrFu!PeGy$lJm@}~Ampj{3BKB( z?UEdz>o8JWIQwKjh~&y}aW+J1Y zaNa_D71ytYbo97NU6${rMat-z94yQ)4$?(ZPSBs#WWYaG^3Lq+CaO&eAIMz(fo&8W zFs;fl$UoRa9o<*K5=45*$Hd3Ip!G{8uwhuRvPeE#BN275&_KS?xxDYz9tD!9Lh0>V z3qPSuK8aKVYk?^$lZ)#)|L>&fnw(er>YAL6RrfGn?&#aJvQM3lGM+X%@70-TnMs;{ z#o8>+T%O68AfAvnG{S$l8l3;=xH!jPk2x2?re_tuYtZM^Gn&)er&~NYBq2(kF#>x2 z`IK4@R$kxKxBXj<2FWy&v%;< ztKz;h<6Uqrb2++|IB+S0*1TMvIrr7@J-X}}&$F$}z^;*8ZuRu(4+IEoE+;k~6gyM7 zFJZTHZ9h(L*QzmZ_|8wf4;uL7&~jHAv~}1ftJxxVIl-*@aNALGcaJ=xH&fSulN9_g3)QE;4 zd{1p=QV-`#G(AH-bl5UZ%^j2PGaY4{5?EzZyB5t&z|OqgKAJ-0L)rhA75TvH?ps!C z0W2!r9Q!=ovLc{|hIdz_$2>%p$Oua1Xu%sn^jlU>)T_|AAZ-UA4;BC4-fs|`zW3eI z7@KSMy=YgJ(hQw(eFz-EZcfIT;MTOwecKOpV(8bT7`ZUqIqM+vtlK z={JH~ORmy_7t)6-tQFo9Mx|T6tr;KHvbP-c^M5|u^xQNGQ6#VPF>8o4Jz6&TDz>SE z?X!1v-ndOKgFVHbp%eBLCJ%Z|eJCDp`;hyMS~ee?p|NMkt+U20g7*%&oXL&%5nRG) z-Tt*dUX52z>7(E97)^I_Czwx|o_RB8C#O^$dgF#B7bx9+?ZV#L{k?79$3kDZx|!NBn`_uck`2PUBCd9la9ZV7db0q#B%;&3=AN~w9sORk{<4l>gFRNsmv@NL}>jg&tO=eyU&-+2C>@_mIXh` zERBqnEJgwu!o}K|eaoCKj2Wz!-#(34PC1d9E6pNU^yjP7U!#!_ye6d>D=rY$|HAR@G zMilUBkGm_+TraZ=2TV=}2iD$Z1eUp}@y6k7q3CXq1r-g&eh|nNK}rO}w#kiDK7ZgB zyfJhK)yw`k{A;EJDU}F6I7f(sT!$}Ny8+yyt3pdzoKC@$tJj?)N!N5WO14bL+$qez zQKeK6lrbT^ai~4})j)N?$mgsN7UXt6odQF7c4JyXmYmjeiA9eCwZ%I*~9l# zUq*e{;^j-R=vS@Nnz0@=J5}C?)26A<@z?c8=luXz34*dBGH9`vd)*%g5%!XEpPd}) zZ|EHUw(y)#-cl%&z9;b}f5=ZcJbx%dOuZq88uexWbiGtxn7p+xK7NHtzj8ze;;qAt zFtM`7qxgj>ghJ*&3KS2ij8|;iDO`}y>gGA)<|tDO75L|4j^VNbuO(pU{QLg|2pe3- zJyHPE39&qkJ)VzGBqhKTMNU8os;7u0ux!xxO{RUoP2RSv*tjajtMp1hgciAHJZHq?1^Czvx z3S2f-%Sox~+)J+|TzWBZkFLI&ACKN3=8p>EA=ws+|E#FY{~LI7=S@rFPRv91j?K|^ zd*74nwRq`4x7r_Kf?c`IkdkjS{uLELy8AEZy}!m&`|3_34D&x6-)xFt@`%`+L8CK) zPzY7G)mTT~cD!}GGq2@ac(3-j=Jp-Ebv>3tSU~Cy*HDMtIua%{CZ$T|Su~x)&&Kmw z@MDc+O>KCbkx|;y?>Kz5{db%QojU(nm1OAFvs0ypzF~^&l~HQ-0Tv_5_X$4d!@Sg; z)>NR@hZjiKeRXWCjAsL=bIC>%n2}mUA@@T5h2qVX$Si{f3wB(sFqd4Keqc~gzYc*) zx7mfzgJca`;{e5t#n6Q21Jy>yU^8=I($}bV0>|=)c5kV^7_8VM8SG9#d*Ez5z8GD) z?^PjL5;wh@v!R1nmCFHD1~Shq8o*D&aR6-<_z*Q&lkI;JtBZ1BHE9@9aV#&hW2cBO z$$vWf{0)t9O21TWm`+_XLj;Uv_t|VZ%JlO5a^OiNDbC0RSM@p zw4pz_iKVt^q2{SJZU-Y6tEiguhUbCLo0Y<4ZNv8`R;T7!F+#)!_G|2S^sAx@irf~L zKs;Mnq6UN`1Jqz){P0>V8=rt;3fENbD|e29Sj7HUf^5FVg)>^p{5f4Nn-fsY#*v%PI9Yz%$G^~Y;uHG z6~iPP5Cs$0JEaM1CdoHm&qn6=)C(WP){hocib7YqJ#E$y3WrTAvlHpeVSwX zysdu{@*DVr#QKf5QX5K36UoX05}(U%vt_52+UvkH1YawGIUN!jPbQOBqu}`~~D!ezl&6M;hT?dp3!y5s^Mg z?N%q7M|ZcVUp6G4?yj0%h~2zdma`o<&DGd=nzl6xE>kdnYqv;<2mgM3B3k#9+%r~Q zjms@k-i}DQgBeL&($VIsMTpSh;qDD3j4*e8uOtk^eoNBhCWsk^xZD~wQ+(hZM9%dz0V3|rPRN^5#;(u*9K?f=F6|Pji=;{d18DQ$2JsqEM@SaZRWPE#i$gi8#?{yONC5=xM!JRVoh19-TL9oRcW1FB|9djBx zj8MV9JIr;kq2yllOO`{rtL+Qn#7w6#*Bh-TNc!%%#+p!e?w#;F!*=l;NZ1Zfg83!) zl^>-MBfX^aJ#Za;;5oF-*ztC)XDHG~&vUlz{Nw{$OKxUKipzgH~|#!aCXly2ukxUz+C6)yZFbJqD{e$PL7syI(^0 zE=^%1z~WqREEEQb^-D^BOFKV&C=wzI`b&1L8eyvn0(6wbiGk@RL z=NI0A6G-`?5x)Io-`mpQE|y;x8I7^OPZlGG`b7IQ;_&d^+Bk*%f*Fwb{{GFAFSUHK zjwhqFCApuzC&ha7@W>aqVQke}d615!fe7%j~pFD6s zKssz<-Hx1jd3@^vqZT6TGMmkqbs{u_z@E*FfVFo=lrG^ls-Pj5RK;3f7AXQwz_WtY zW1h4;**%M|;e@NapiIBjX{E?4h}VG%^~LTO0mG$j%hU@qKzz~@>KmKUn(Jk zVtJ1M!*-osQvOrFc}EzFuLOig!sgNQ!+_hXx>y?E8{VDV8a7ItDV6evr6TnjAnQ%j z29V3%?oi*2<~IYSUX{D)(Jj-J!3@r3XTNNbUXds1+o1q0e6NP`%lEUWJYo$x&~#0z z#>Kqk^NQp*USCf*Zd=AW1L73Q{1$1!7?kLYS4F0X5=r?A6qGC24zuJ{1GA*o-JQ1H z^=|bqa(@XHLs#R6;3{RR)|Pjf*`kP@?!QZYCs6<|x`T|lpdhHU9FJIQ= zm>4>R&Z@tsrkh18=|yf>{76?eb0)sr?RdW0A(P_|_t?uh?vydk2gwFc!#`G8r5FLBeYX6H}!h4PyimVV?tOK5#K@;N$3>@0{V^r`*~LO4P&a$YgThV z!l>sA0!PChlZ7HZye|&MvtQ{oB>vETB4+z_>E)`xmxrt|2g%L5Z8$8KWo8}PNIH1Q<>ZK{<~jZZKKOc1JCx^{eWkOyBh$=a>X=CrIr@wRlpyu)eLCgF?jny)6ZvfWr*VU3jwh1nN%4zizr-!R9!?oO_l$=y? zXG@1Z5Pp^z52of=@=QT$wtvlngvz^xvYWoryfgoWApEKxB}#ZtAPrMuKR$l_q{4Mz z>J{vcd3?}Bv1rwkuz~3_1eEYW!ztSY{VM?v;U2&AXV6eQ z(Shd2v>Ncb^~B3TqGgx8mLBT0%`+MA1@ z6ZXq>zD~9q@t4Q-t}5@}%Lm?Iy!b}M9VfUE@&-Xhdhv7CmZ~9Zf?%rwyq@m95rScG z2khA={4M!C&M<5)?vW&S)Qk9|1mi&{!g4l{BXFv4dfP$HUGu|g;apU~E0d~Vm-Az% z&`k8)S0T%!Zw+2vTa#eZAHJpt$|nzY5RHz9)=qlIqgID^UGGQ9nT`K?0#XcQNrqRs;KX!Iz03)!V>ak zyU<6}PqBTRChu-}4J&TC)A2&b5ygbb1c4B~Wi`_!&23@>LlO(YBFergpx^a9ws*$+ z=%-Xed8Vj*pYn5Eb^6zpzek|)RQn|o&(WzOU4)CoPM=VQR#Q*y`g8Ha^vLvyn0~o~ zMy0jP?Ypno02|5^6-o$rMm=2Sr^~X8P=nh`VgjA=@jgzHDU&p8`w>v|p|*t5$S zsM9AHr1pDKR?W})qsvh{p3FtEj?FffS$0$wt43lfNy}`Xxl3D3e)EsD;0o7p9GqCL z;L%Ak+MuvJ1AP8+kM4z?`Hmbj4tV^kruoCRZ?1N}YOJ>mvIEtY%YIC%+*~S+7ms&> zpXP+gDr_ozJDb(|r-D5JEsJ8uq}^aV`39Ry`hXEgccz6Wd2f}@Y_Lc1qAyHb`fE@F zU&s%4mDOm|-a<+YY%26hH!7Gu1m;!l`jJCQ%1OVH?L?owTrf09%wc>1VW92!=(*Jm ztQnshLvy#oBOJG&+%pMT+j8h|h|K5>Fk+y-Y&QNw(itO=v{Rg=u{eIJf zux0 znk?sF3$cvo22d@GY4*|nv$>``><;~#9e%8}^^MOJ$9~*V_UFf2Gg&}k=tc?^kj52Q z{NhFW)bDudBXPmG*9crmJKwSuAH$i=&$$k0RT)*3d8Ie#)#dxPW^NrWvb4Uj0#ds^-A@x_ue-&!;WkKOh=Hfjuj7`B9zx5b|ur2H``|$f^{pDxDCkUV(d`1fbeH zwk`^f1?+JbBOj;0^eX!Oup!(D9+>XH$w|PCJ^LzZf9zREnkQ9+;~ za&h44i`p$aZO>>h(Lh)-uK+1ma4zO)#|j=KX6Jspip;4k`)nWHdzZTRHMJE$b;{)v zp!z271YwU6ETRuTme#1yWo~9WxZg8tuw?mMaFsN7hQwt<@I7A}_#phT5;T+BNwtHC z07*I`d%EZ~oPY11P^;g=Rei1!Pd~V)S#qDhy6d&v ze7zQ^wOfYPHLRh-(%O&2_bO{b)4w9UW=s^f3}$T>Tx1*WAVFAD|Mk z19i8{B)T@iXSZCW&FWmA1m9;MkUa&bt^BUr8e^{4u8lW&9y90Jg8&+MxM)v+c1_{d6X1dy;2?JEUv}C)>`Zgr;1rA0Bnr-w@!S-*3E&iRvXO(Q9t zr%*EJZU43U+n$l$yAhLjRBz$6V3#v47EPS0YKj*xCV4EAw@i{RLlf$89vR=nc~=~G zV}EZgUTU=5tH=B+Pq8BIaw&Xz4?m%jVQ*R`Qb4Y>a5(g0P!K7IK#jFMo>N%xq5m~g z8>LB>hwtvh<3|_SlgK|lNg}n~RKLv<+Y&GD4OvmwUbs7$asw70 zG=${ZK)UefxEBYJ3#+^s=qZ{XW0aa>@e&`(?b~ZxKcp-4D49fN1A;Q#v+Tz0vD1Gb0+g9OJkQ^@Sn`@<& zd9&Z3TO{evroYwM4HnZn`94!ZHZ;s3xkgm@g|uk6jcb@Vmm)k+Xy!OUNR0UvaAa1& zufc!Xdu#0nGRdcFnCoN7YdUPPPVQA|qrO8AB0dFULh zSax+aVe}!rtE!gGJzSy8FVRz_U*HfS19MLOvasgUD#b$}&1t==zXONGEHOICqHBAk zJCKjPp`)$0O@UCTSP4_#*7$==H2~ip^NZi|Rk=jo!KMrQ3tm_1+g)Q|^2CX-CyAnD zVtqZ(+hY8BxQl0H&i{CwKj*LJS}@{)0v^v;#Bt=o=Njilpaei)jl3w5wWSaJAi!}H z9W0#N(D}InW?rnzeItSUR}obwB;9#`WpM4){@qx54x}iL|2%hM@f9#2 zDts8s-TP=^_MG_+fkhjO!9+tewjFW%nwTYicP#Wa=@WCd2jqj$KkAyF+k!O{xm;{6hJyN?N`C(ypWy0^d@ z<+EB#(>`Y}ZvMqH0N-KNNn`oPX1tP=xa9d%wuR)&Xb`H!mfXYb$7Vyd@Gt5xuCWwy4R&nV$cFfui z@~Rix8RWzhHBH0ob@2bvIe=qv)Qp4$y6uaTlzXID-R?Ktio8pq@pVDp25-f5QgOvl z$O%r>V<-aF2z@O?WvGfIz^6jIADB=n0;X4HgsHVpTV`ePxkaHgt!w-K-NJW28$xAwC#(G&v}i=M-&-awLg$j-E_x$Q7Si2nd3%kh;qtKXO?Jk zu>8`KfHeGXrWxR=<-&{YzwmzG)&4BQqb9^TZsISUr~8 z!Y6Fz>qXz5Hfo@JPgp%chi_f{qYzCBSx|40eV8n$p~G$Q`l4PC&42#;x|_8A5Y0Ol z%;$Q>ozZDUJl?sH zk`A^(e93`h{`;b{!vs{GMd|(peiV^`not7k*Z*gY;)s6CNLt>u{ zrQ&ZKJ{|u``k^>Wm-x=Vwzu)pPpn;s2l?ni@Hb6st(H>NY&NVfM%!si-s^m&kG(ZW zB(*t=2?S) zjVBmGEy58-bKVf(x_!IP1Qu;bt>U^@XDQ%A4PQCSWm)n|sAA}aNW8;{c6;_ZKV^;n z@`Dmr&%{!e#=fR@Fy*!l?rin+S@n$1na9+7?u4ty126i9IA(Xu$T2NDcUV_?QlQ@E zmqXhmbAN-rdDGoC?l|pg@^mX_9_vjlj)SttzvGha98vEm_-qf()gJQs?T7YEC0+h~3CrVU6T1n;eZ+bJl9xpG`# zyb&S5_`Y?!+g9g>isR);orP{v%pTzdP#lZ*La-DY4V1uWIeFKypBrP|GC`!l)@1cS z;#`tV^k1kgaOu4i6O%!gGf+;Sttf%$k(HY5*en=_-j^bieaO?*Z&s>3aSYb$f}L3a zy1bKL==J(4lA^w|GW~6V-)E?a<)S<#BouS*mSRQO<7T?gF~5(xHv3oi7Z^kXCr!=E z!ZX-ZrJ9=>7p7YjFA~+dji;cNiQsCdc)d=b6SK`!VXZl~Y;@^$<88Ln7GlRu-qh z!BU^-Oi`|3=>3QNlK;=>XLLi=7haBj_8XAdViI8|6ExsPzWY-MR(EP zTGv)v3zAKmFXItC%2^y@kh`3;Er8skUKU?uS^_#=yYXZ2h^~_qEqA08y3IMI{GDE= zp9IVo7T*+NB?Syo5MKWGt-Sk*YyX6ZH&}!f)cr<+Jpv>WQj#Xje&-Ov3T>=y=?8QdlpJKZ~y?6 zMA z_0|?qh>KqvlHUZc8Ha1atMHP0nK)wJ_gHY0e=9@l&01v6c{CW>egbuHxdHL110-T6 z6!$7a1y=r61QHQ%NE)(j1Q@bev+Avt$W?&lMI9Dquhw1=zf(inZD%Oh`GItaw^ZE1g$DmON z^1?iWq93L;YuNLoZGgJ@Oszr5BMLg{0St=}j6E~tL>9zb)LMBnncUPU*45!z483_U zhXeadm-u7w=0z5(;j{t8I2Y&qfxj&V1b=CP@?dsks>@{31F6Q}wbzUTK&@}0guZGp z3@^)D$Y*ceb?m5t#|TsnHJmJcjCZ9K4L13DoPp5A@4ObA{MPg}%QM{tFT$aLEQ4)I zIG~6j8Y3F%gOl5uVUCMU5xbTyt7Amz{`=xn$f%n%%jD1}!;@_`D@(cBXi(^on z$)p{@4&&ngzWK7cZLNFoVy;m5hIso2eQJGF9IDgunEw~O-Xg7ZtEFr^ODvHzg0_(2 z?w;79XM83_@)!KD>nX-dF*go^nC!zP0_u%5iT-<;d)y_~F*mg06$+52uZp0g4%$z6 znzYC}mZZQ9${eX+HxlfOD}j23VOrO&+f}KjnnK44Qp)G@^eT!zpkD1TTq*Gai)hRoiuRu46ePhx61s& znPcMXsWn+S-4)9I|1YA8?Bz*dHR+5F5E=`c@PxD#*~k_F?F^WuMSIp*@xG_c=NCoB z+!WOoQP6^TaEiz1nz8PjA}sE_FGio8v#PutMwZK)EqSyPY2H z1o4Q|0#d0KAh&i@D~^+h=R%TkX0&w2bB9K`w|c6kep z{;!4)Uq+p8({(TMWAGDP(!%}b@#C{KVXUoDPwjoUkngm(C`{mOe6PI>jenN++I*F| zAf9FjSGZ3@_?MLj7@%<+Fc)j4(Yu&CMwUNx7@U1+X{)m{iV!e0d2X~TO}kv}cU~9a z1}|?)QXlwP#DBk?5lKwbo#w?l7d1LZ^ZImu6m+~q{Wdpa#i zB*Q#(sHV@q0Wa-wm%SKaM`Xh*UMv&}*P;f`z5g(2@XROwX4mzFdjnhv0Y~BWevkA9 zs1^w#fVw8leEV&p76S-o4`>wqyB!nX6~mv}$rKTEi5+OMAqZrIv~^gR6P#%He<^|B zYvasK`;TL_kmRN7!$NYHwb%pP74D=l%5I730{}*UXO6{i%?Q>~VRxIjt^LerKbw*F z_hj{!@2|})u9XC%m(2fuQ`u{GAV#o{-q>C2LGJ+Si2G1{3u;NVfEsxC>km&2;v)`n zfY!^H4(Fn0rjpVok4JKq9@;pue9UAW3aJv~kgq6v=9wIFeH~`$6gyh?Dji-0B#sYn z=^`u3srawZnMS5O8`&VrM^sHG{)kS4~Lzy*3J3E zl~nd%9bQ0L9&VRoDwlgSXi!A<+4NGY?xuLd5G}*AaQt?C?tYAWHY6zo@kWq1IhPV+ z5uI2%&ao?8uuY<13y-CI9>&NfZ&WYNfHhJAPhnnBK<4}Rq0Kx zJ=9w_S#nO?`9uf<9cjTlbnd{bBvVN{gTtE6JxmE}-mZMhRK8<5UJDfWtTMf@)~b7e zj`urbkASN_IB;kL{9mm=h`%uc8n-^XU6Nb%uersPRu=>#U~kF_am#1lQO& zLw~QZA?X_!_%oUCpU;H2G1@1sp}lZZ8*)|=5D?(oKPlC>3mjIyHYTKg`N9iSO3wb_ zZnqZLBdE(DYTB?^r~;k!OV+yPleoROD(aa=;{Ks?vX%fmvBs{J9bw@*3+0ZwI6A*I{Ga&lErYX%6?eh~`r-L65-b_*F!zDGd3$DLOA_IjW1rA{ zskX{&{g+=BP66s$tHSkUEk6Z}#iz@%EcSp;7o(^$Db9lKc6j)W830Rv*-_I+l+68a z9)r_MBh{dNYXv|)W6!V$-!kP6&S-)lEm<(*sc09LvDgn{dTQvnyK%+^LZk;st_TsS z{=yp}q$UBt=pblil+wAqdrU|#-JXKix=~U|Y9-p8Bf-C$Ob&Zw+~FbjO3Gs$!}#l!YyR2AO`>fdpGp z$x0JpQtZEnmkCiX-nSU+XfI3{Ra$R8v42|f$);*ML;A2Mr(YPjZB<@8f3r4HP_v0?36CG6l z(Rx}TpMc_BruV2YH-Y$!HUlN?2vzh}fm*zKm<(t*hzifHT8y~H`sRk{vz7_OhUo>; z_dxG^ez5#s+76Du{C0P|b0!9?Uvl0IbZ)&!J0@O-*-(IXQ)!$Leh>dZp2z!*ikR=H z6&{N1UBizs_%$W*P6p^GlMbKHIA~>6$#}9S~T(#d$btVmU=>CAaz- zxmk10Y4M*-srSJa8vC%gs7QA*$K=iGm&uoBmSSvqP`xb*gU?be+RH0ZW?G8&K%7+t zu@AM%3=nMS%@GsN9i)oxHUc6fJ(GUA_zt&jE7Fb_>b`4J)9%Y@Gl(sNkT~#vF35MA z0aYnn5rX=qCKp@B@o5=;VtPR%JOwSUFz83AE?h1w{Ph?vk6?Cdu`vegZn<7s34P&* zG$JaM^_@lU&OeWSr4&jdENuVntNO!Jz4c$ z%71z;sIne|G;F`feUy-FQJ{|#b*9vN;()s`?q^uP5~m3I`TN)f2)jm&M@6UI=9@Ym z9-{wbDDO&l0#U)+~W7d8=@OQLw^c( z?p7+CC2Y0rxcXn$&H({6{pIZu<(Ev;)~K*N{awaVx27`&pW|OL5W0(*u8&P%wtrXj zt~fx1_K*P)H#dR40H&dwKdq;yHW?|4)h)QAbq;T_r|&RPM~1cN$0fk*@g;N`POYT) z7C1}cn?dtLMBqk{^R$&0RQAx`qWy7nEQ9$&J(f`O#)dhoG^Zp(TItTaAr|vxuy$qm zIpVil&h?YCjS}jfSt@dEmw&AZXxjqF?P-@({qgJxvNCl?Os!J$QaB$MhQ^J zaF#k#wzgPCYAVRxL_`=foA}5HWG@vxExoa)vL$4*smfg6k(I=8<1jDRsy%e%?0D`2 zIjq>QDGTNmer8qX6VKbhS|``eD);R_=dPF;h+B_BoI2d>tQ6{M53+PBN;4*UPHu` zy2Oro2bJ4d35I#>nfqS-P{v)0ba_CX8}=h%crGa#X7hV&FCSOX+eby0zyuy{B~~?g zkGlr-0k+f@iYFoigeaGbfW#X%=$PUEePvS?O;Byj+(bNB-)9SGPhsVvdnp^|RGZ8E zta8p?-R67PuC60^FOe-+ZdyrH1;doidBi3l^^xYD&vk|kEtW-5 z!Ezw5R>Li)BEC@j9KVui!>{jdd>Ku*v|>H2$+9BcZ3pUsM90}k{n9b8ksbAauB0-j ztR)tV;FzVGto$@c_9Xi`l)t6(1MXcg00YRPu|{A}vub0HJglR42`Q#6CB)ED=&Iw- z5%PMHo~sl(CDxYnl`+(#V#MhndDO~pjvR?qX+3-k=q;8@*qbWkAyORaWV)!<&hnkk zvA#Lo8hel~?RhD)4-bpbGd zR+#Uhl?+j)>cvH|UH6MagK>G}(i>5sR^w8t$qJ2uDQoN^$kUxEOLLZdhAdqhh z>fQ0zevbQcPxjvH_J_5A3n@GTI0#s@RbrzX%S?^yw0ls=vpR);4bDsmW;8fAaj-t_ z8(Bp&9Wj@*%>;+hAP?8Y_RN>e;1cXXOWGAg_FDqvf*pREP(~6wx<#I+e6QJiYUpir z9y}=pu&IPTW5As3!_o&zZ8X^~%{^W97K`&rEg!@5OWrU)|M+kQ6WHK&;_SlU85L4v zIogOmMWRoue78w1n+dGOT-#3j2L|+gw>kcGi7R;aqL2vgT0u`4 zMJz$-!*<%(VDCYAuMtw0=P7tqWb9RAmP>QdSdqm2;-~=oobW9~R7>8HS-0QgTP8)C z2GmUWBiAm{G`rODS3Wk!^fYJO2N1CK zX@u-)ONsNOA(6=cWVyR#fx7^V!OqEH)$wx4@nP%S#532Qm@V&DhJ`lR_}XxUV8_T> zyw(=;qBux2EmntQ9O!|%no3&PJ}o8{mTB+gEcZVWO>Jn2aB;n_A{`rInZh-8=Omm` zoyTJ_0L1bLeaIJUtMs|x4yx0z!|!xLjK46!EB100AZ%xY2U*B1Ww$}*`G0G)A*+d_gWuDIKYvo+;ZFN6E%2*%s$8K>$KW^zL{uZ zHIiDKv`TL(g;f@kfcGSqJoQn%k(~!_iNmT|0kdwAQ4p_5I5PIdC>d51Npd)EU zrzQL#8DL6jae?J4u{PYn7uC+)?0DNYnPGX){;m5?t(2+0zBoMq#E=9V5=u=PPO(6x zOQuwJRp;7?{B4N4YS6csv!a3oA~J}C=qft>gmQ|!ZQ)F; zK}b)V-c?(gf_h2bOyt>#M}P_-V;JAO(`AvBFSQ#UvW$TPk%$jqYe=JnZ6dhb77KAP_Dkh1;ln@2czj9Y+E7ct0F#QbT&z z;A1{c*QT|P^9wdciRMNM6Uu)r3}uwlTz2repBsjnv62gR!-_4@f?9sCy+ zzJ~)ok@{Z&&^e3?d<0E@Ln6{|P^y6cp=9D38GAMwAa( z5SgWZVoQ(jmGdBW2MlV}30t9|R^b73>>ZJeu8;SJSZE4hM}v2I2*}jbbHY~FE)psx zG)FV}nrXq%_RuIpWu4<347}<(^#E02D&eJuGE?l!w^e4KFR`+%Z=}k_s2>!jIMpte z0;pVU?kWZnO?_V`nQeE;i6QXGjAN)qV2$ z@1Bqt%%k(1PkO7ufQ-|T#RIebyV(GxOtQqx0KNRC2-kpEr9~Dj0mB#s^Sz`K?AZ5< zDTeatM3@rs3&KmR!QYZ4#*!qyKNqL+oNXf%Q?y}ls$(oFTJ`zy34O+ zNuGV7Abj3g{kfPaHME0tSoYNasX?}&71fEUgI9R!(Oqc2+w>6{>uoyic0_>QCh&Ee zd{KR|I|(#hEDcIa|4p!)h+3ZCKds2Xo-b$cS4Cqju$LFuLsRU!?*(YfhCV>PoGTPn z4HL@=6$V*ELT{3kE2GWLA?ip=4IwREDm;isbl3NQQ5p7#5ZgEp7Zuulvx%vY6{8F`xUBduy zgrnD`7#^)vn3_P18ViC_Tw)SCSz2L5YM3thGUvYRFkS z)}8jZy@ztH?oK`VOse*Ar60{6kK!H6tZ2FbB;Bwg#m{ReBE7N26x(qspxy-~YJL-` z?LV84F;QH>*lzj%WQHTc8=>xpuBka=5`A3q=Vc$~?-%TJnxvXk7d-du3%*|jEH^Nl!@~2*| z5!2s2cvo!ob%b+z4y~O5tM$1!HBBs)@mfxEy{tx1^IzsYW%S-(W=pZI7T$DSd* z|A(&kj!XLe!p190D_3dd9%W|c%DuI6m73<>;x=~<%!O2zX71dRa!;JNMa$f|2a2m) zC^!-YQWSpJ=li^#=bzs{$omZ{_qnfgo$H+Y=G+vaf#UXU4-q5u5FD0m!8lo%-qA6{N zW_Xa-L0L#4`tH2+_{KCyuVKh`@!oORqN%BkgR**Fs1ZmIF;mVR%IwwAq|f2YBfDMj zdft+9&X`v&AI4`Ifj&stlr*)%5Ng1)ohJ9TdGI`hZjwD&v#pDC1_Ix)*R=DqFi-@KWs)Z`$F~8SoQ!fd>Ao4Gl%C z*}7;`YWH1-mq2>>MYWJ0326E{H_AjrO;f2gxs`X+^E5IAuXCT&kOO&U z9c?5ja5;m>kOu-(Sn%)vFiU^L&6 zZR;REd-2$w$hdHOf^2>`zb|vq_h(*vb@Kb=H>aAp6fJSK0SYZP9L-B5JWRdvY4*F~ z*vipVs!zAJ13;CkM_-I10(LFg5ruK1rNl6oKU37!sLcD54}?;|9$m&e2=-FrmXJsK zyOM)GUYJm=Q<|~h#n&q^Rzd|1^CtW+yH_#AT@-N$bU_Ndvx=DOrnb0rFx4GzNHD_- z@}0I%N1Bo)xXTYTIbhr`GDECDnuLhpcc)DxJ2J(!RJS4j`^kg%fk|(J3G?9c=Za*f z?3d5gNNftvU?PVp+8)t*&l;c|n{%KvLdI11RcU7NGBLJ12UB*zLizQKqDlTsl7q%~ zFt=TXx1=_rXISzZf#D?|1}c+)p#O)|*oM zLvQAf1fPUP?NPjx|FL~K>$Npr^AbMirwa7zaRZz=RmX<&avYjfbk)*!g-~%bf^oKn zS`#|k9jr~4()&e#hVcL?8R1f1wc*HNu=3c``ZXrv89JnwO}K3rSiV<0GS2w%%Ah{T z++F#X5#ix9zHYbHrwrh}VFc7)AD?zPW0!H$gW9;u|KpS^croJT|G@{-Zbx<_A_%I; z4-ZsJf`2rq$rpW&O*Fadg1G`J60aYvU`lTlXGQl#Qz*R9k#$F zdL<61sfPVj@}mM&R*(1kml3B?=hMoy%5xS@2VsyT1UDukLj2e6Gg#I1Ya=gC8kBLH z`DqGW=mg_8>d4C7;?N_p(m+3qyZFA#hAyx=P+(elp=gpa2-cXzjr%QI$`38MbhOPB|drWM<%WhH>O6M zN$B`nmngkms!sjJuB}+D$|Wg(v7(Y?qt^3M%V?q-LW)(7mh%7^FI0sX`Tvm~HKR(C z&lm_aLMXf1Kuicz9e0SNdpvd_*LK{KU+ws}U=YD5WNKD~KdvNP+zl6%QT>u?F3|s& zijMzSf$h}#>Hyl-mFG@b_)9u$RU_;e>g>}C@?PhkkDLG@xAiFy0h?uaQKC)Vjy=U^ zYyh+13h?)TB<#~9^o`^rM>Lc1o&y_RP9|6_I0`1h-iu!k0+*7gl}Szue|u&49byNX z9ST?CuEdqW&J~8m1>H>7-O&$?#ubg8=$369;UA(<5;*B3}N>reEB# zB~>(AMO^H+`_gikS7p;vQzH_&yADss2+tV0LLO-=sf(~o1y^+Rvj$CpvW%!Yr0t}+ z%_UUlZXKWZS~Qy@2e3~Iu=CuA_1^%t862GdidhW#>!Kp}vk0B~K&yCExob+NTaK{aeY%mQPuhiMRTn{t8oJuyC}0TJ@|*y+Q9VXIKv*xvB(#lxH5Q z7X;8r2y9d}Zq%c@PAxeL@K@902)=*^54oyFJE|0!fdMM{X%8Tr{r=zTio0?fi+- zrd4;lBVuR9em5Pi#LK&iXmk2sVXRMsP7k#Sr+y7Lna}lCWA^q7fx7{P%VR^99?Usp z8hu+{i<|Hra2JzMQ}_7URCHKZ>_4Nz7w6p74Skz8(fc`vT%<)X*N( z{B+8q(PH&&F)?BquHX$xaxK^!JVqS{Zwu6Mx9X#iPt)9ro-GQ1Ad*L;R?fW&frs_> z2r4mPtQ~n^^&hq3{|_26Wu7jfbV+B!TAp6*F7B+cL5&nF!Xqn`jZ;r(j^h>l;3pJMzG2 z)C8y*0ZY*>d%0oSmLmGTkkb5fq*$Y-S6o7&g!3n5BRYR=svgT@v0F! zw16^Jea5icdrnC=H@U1}ZmEpX#EI~A!J}ZAjq!u2)!jkyq1Z;dE7Rq<8xoDO=`ZJ7 ztU3BAUv!6fs9{KFQ1I_lKSxZ?&FZ|2g%daP{+zAEi4Y_spPoCEj5i#{VpmQ|$+ z&!NkeZ*PZ&S86?g(GICW^Lao)6PQ@~|;-EqZJ6 zc+X~dt770=_-T~E#y7_~j_u`!>@}E$*HsE}F#j*)o*8Ke`%jX9>%}&2-ZR3LcKlFy zU;FlQ1LTvm>E@Vu<{Ws&H@}gPvHtj8LiX?0PGwAwY9Q!Oflc- zlBL4S7CWNDrJA zD@ffyxE-CLS5_$N=3}*8)xwJ}R)0&B@Z3qZmW}>4e*9trIJ&Bw8u2=RxNZl^-9WY4 zE??2%A8dL0qdeh89?>>pd#DUvIo#b2$a z%)MUYp^$S`nj*5>Fc~n6*)7CnBIF8@$J`k>OMV0?;R+83;Sbs>OSTvl zcXt<=*;bWk@3|vE@5XeTbg(n)s2(X`iAWiYc1Qr0y|RJ2<%{q@(EtZh0pc+IdB&e5o6(P!lwtp%x4qbCxJpA${%}E;bb$Zo2Pv)*g zB)9qD5jKPWLAex_V<)$DfO2Gul5?itd6R2pB*#=li9~JW76?%Xm3I zMWwEKKY)lKx-vkc&o_y8mBZz0ki7f9?*kL87^94pnbzrzxvRn?7^A+Dj0k~pZ%-M| zXn-Qhk!fepfA{~mgB5|_r0Iu8L41JYEV&C^uL*v3X_AK(Wz2qMul~J+;aftPU~J}y zZlr%Q+k3!vQ#|f^YrnRmS4n(=hMup^702i|ZX2I-?>whyc*sXZm(ut2zjgInVvR&P zF5fCq>Z3M&1V&#QIaHDUAn8oE(K7LeDZ;hjpwG;aw}$)LoLiBmeAzek^h|9&g24Q@ z=8YWM%|{HkdSNA4H)U2sTrGCMx&+u6vgqF;!ee}ll-yGseZDZ?OC@sf<>`_~Zo;(c z8i<8QIMT-J3;HhjX4w#e(Y0daIK01o9kPG^&a|u5PQhRz!F6{3;d{!k0RZN26ra!} zZq=OyP8HO>T@i{yK!_2P7gb+ZU%~sN)_UQ^un%5J5M^0JVz)$G@36grWHD&bM-@)R zs!BL~Wcv-%wRz^QF27SYWaL>MFgz`#H0Us)H$CzyPI3{m#%a24?;>*bTEg@lHo*^* za;ER~zAC=E1wSN4UY*DBe&(_&9A$7%**sLwWn`PYCK+7F9k_uT@T$@)862Z>EQfPN zRLeiY5bx3~#Rqa)dI^jOmG+(L!m{CdzKnHV#d!Lv;|;WWG(0n?85YhZ&JEv?whFca zX#omw_5#xaYx~Bal|b(z zL{V!_b0vY}39WIner}EB)ix30p@PUrJz#wwt#6 za9KiEDsxYSxLun6B%5$xy>$^hj~SNj6YoCDWX>-2tBFjc2NlY zN;jWHZHW?~=`!Z3tUIKN?GHNO9$Ey97 zr(La4GgRMSM$Nq8CqCMMXM!|s3tE?^c#)e?e!Q~iT=(=fG4*54RB*v_V4gxQ(55`s z@Kj{3I+kRwat_!wK&1Vr2$r{*&vFXp|EEMjK?HKKHNCfEqOU5XX&bPS-kMh9rI#IR z`RP{QQ+d&{)k2Mjt2xK!Xr-j$B3XVHS?~S>Phms0z%t-W%G1FV`)IquVw-Y~d-X3{ zaAmz7TqS`5rHWCz!u!f4Fa;K81#z|rZt1wN$}nNIYmDip!RiBVD}hSv?ZSNarBvM* zsC4styd=%1DcEaRG&CC+hqc#pPaL6Fn)y;tT~-htu>fRsX6$GE`GW|>RuUnLcTdJX1+)wgAks=QZv7}k-p5u?4sdv#_Be8Fv1@ui?`fb; zHnv1>c11oOpwS(atB%i0{f z`dT&D49;?$16Ni(*E%zGRCXRdsvI9-gAO~5dG6lzd~wtolH6H(&7ivTJ-wWTtrmwY zeh8r3HUXR~_f?Kq0KGYFBF1c|D=^NIYn{MvPOH-q9es0rO(uXHLb63x}z)H3CclbWhx^U{Ao zg5O=3w{-is9ZYGv72E%+#pp@4iKY;^%IU$VNnP3fXNPhuREKWc+ z;~o||Iv)9W@a0qbi!*pu@JMss9qBh^9y+A*uk+ol)Qh6~+=G~>!Gx`EOYZdxG>n6c zaszk?>S-uxtrclAEh{whS()`-wa!L*Xw7CAQ*aSFMQK?KOB8s(4Ob zlv{-@HU1EHU;c&s5@ytsvinXC*f`Um%U2~`Iyka@2%mMEeuFmF(qnJKB@S?UtO;Q3 zl$CHty*TrT2%TxG1`GS?i2I5kWwAFR-WU8hr-8RySAYt%l&UF-A_swVmhntH4+C=j zs0zeuTDb`Y9&daue{ZFiWHhhej`#5C!A~MIwnAqGo>x>=9-Hq}_eSSDvc0?Q$Vn7C zlRFi9HRLtrv*=H$MaC%*nt5u#t089yh{wF8+y&DhJL}OJUc^`ErKV!@-p(Jy!gDTP zrMXu-hBmcDlUyevJckCZ*d-fJl%T#0Hi?>O7K^X9#Lc>3Bej3)cqgN8Q0fIgsNNW( zj3eR;-rxSr8e8Ud81l%IHQvNk{t*Wdda(TpDveI3-$+(?8p@1YA?PTNXFN}F_nk`Oe`^{( zN<<%P@E~cGl(V?yFZ&14RbfZ;1+e_inVA}DR!vqZqg}^)DXiXbw^82>TQx^(PR-xR zO|9O&CgFwe*nagJw8}b14OO%sw{IU|opR@UNZmaZUS*fv`;zXy#>&EsoxXdG9-Acs zmLzWXgC?K*y<;%;EgN7JKJ_d8$V0iyqy_nuHn(w<*HJmhcT&AL+&kW%u2=+CTHCC2xwGOXKWBmTpvMA)w z>l9+6K-&5Hzrj)v4hgJ2?3m+)os&R1)c)Mtq5DK>>z-tw&g{F9y9qA#HJeGca?n z^zx?gF>|Uf@KNk}i2H%@X&-ApCrnkHzxw$?eLmmvcXu(Ie)~1yNv{MoO>4P_85#r_C92geLfb87)A0eziy(CJg1CsPsrJzmI-1);-aVi$Qti)#k*X7XL(6{&Z-=qX@J{C69DpHm zo|k-G)e>4pj0~B*nRyUGzm|#dffYUI^cI-jZ6T(dzyw_Z^7Dy(K<;P&*b>#>4jUef zqTOEJ9pa+=RRPMtmVL>e5od+a|3<05WOO!%cI0|bvU)JlCuiB7oT8wgGM$0FKan`A z)q8XtLQQzIIOrp@F&2K`$ z9c=n}K8TY%_BP+Hhy7IB=xGC1V6nKIhkyR(;3VsP#XY{bIsJf83!Dk#liccd*C`aK z>?C^PRIAua**w6eD%@FF{mlDj!NjG1en<|pLP4qUoipKQN<8SSP?PM8_Fq#;4QxWH zZiPC|syYu&9)I+9HQdp?TF=;jF<*q87{HF^Ev}sy^z+|x`E2cIPM@U+U`x;wST=PF z^G6oRJn#U6;7FOcE+ph{fjZK?bNXAAf-82MimJ@49?rJ9DJl2z`~*8Ed#(v%9X8B4 z(IvD5Im?>p-03!@)>w^8WI{YQwJ^1jplTc`2nTyE0;gMVMPrU7k3OvukxAS_k4TJ_>qs1{y1U;TJW`QE;ESz{z+B!a%G6iJE80G_QN`V*+|kZq$X zl}xvU-m_}l8G85J%@)0D$Xw23dKAy{t+pJbnGZ*x+u~5fk##sfFv}5||<@<|P$bKPpJ$j}EDRhM1d{p4R}pF7ToNkmzOOv-;cBx@}~Xee7qb z7J7+z@@RHYa@=;{n^u#4K6K`E2Bd>fwqSv<#m2$4qA^o=pCy!v*WE$A=_Vk+==9V5 zqldf}dJv4%an#5%T8-h1d4Rm{PD_waQ*z6FFz}GsP9PnA87?~8xd=Cfyg98<(Y{Ej z))H#Swjd7t@}g$`wlT8IK2W#Nbi%Ryd6%!H)U zMVWh%r%mz0oHnu=wy{9_3m9vU`PMQQ+sNAu-ntv@y)Bf5-JJM%UPaRawfA@8d{&>!(b+z?ocyd&FeP6cd?FGQvwWwg|{7=>Z381qJ#SDTx-i zLO6Jrp$Uv`=I&Uo6W31B?*%q_7I%}LrGDLe*3mf{ETyx_pt#jjgdNO<=u|&lcciDA zGSFh;T439%)Uj4;Kz>=!j?^ixnlD}V}vQ%C@&S*1?QULy_D}0UJ^CggURYg>Ww0bHY|1X($34s4fge?y$$3U+&>iwu0N|Oslw>b z@<$a4m6cL5DI1Qnk;+D%Cd(}=ER~l~ig0EIi~_rE4q1TI@rD;;X-rBP5I{udO6;cjh7ix+OF$r!Se4d%OK4o| z1FAgI`$|z=j|Xe2-tz4uS$W&V$0|Z#(7D<4yW>9AE0!N8G@&%GrN4NpY5wC6;lIq+ zvl%Z8E=yL>muYoWF`h3(XNLyKLILZ~qQfa08mvwY@!xu>p5>|SL^TBK?$+BHJG-MsQ`taYxHZ>XV8ZNMxErbB1xvQ(~joHO-nto2rE)FjFXKB=&%*~{y| zUQr6b*gMgAAOFseGXNC8MJ15g0qhpCLeCRa?l$F)!+~rnK7XoKO}RSu-+l;Tcy*T= z#1}W>D9mvX9hEUSlyv$eO%lmY2b*#`P0>*N z)@S-U<(>d_RjWaKiuY^C!e{(U3ATu{-4CO0P8ET}abYIh@wzyrBTx=GaZG- z%94oP!$$FDS+vvPhnY~1F+QrJ7cU46CaU=}V(J5r%~AHLI+`6OxeZ>1cX+g?`ONY* zhw8$-$W_EL5<6}N_kWhkG8phayFMw-PUnd%lvSiA>{nxDzxDqRJWFPvB>T3^v#J)T zdrKZfSxjR8ys*{IUaA%XZu6Gi&c-ZjD)>R%khDWSWx6&>ZK9l%pV56W4UxZGCZ!;j z3o&Ut*m-M=C`l?&DW*OrlnYy&%j`IP0Yl#AmL*gi3`;Qe&V=xmN*s2KF;b_ufSua) zaXbf0AH%G?9%V8L6&}ZVySf+5fA!sqB`&+u1do;K7bwSt1keYju-YYiaZi@3RPrpz z69po+)uezB|D$eFHtz1Ms^FOdq_|(_IQ2y$0(TaL?8z&vXU@k_4+hz61lM_jl*?KL z2E9AX*3ARcl>m^*)WE(8pg4&A>*(;Nf&j4HXSL!KT2Xl;(ty8OgCk#hjFs9^u|PMz^L-$;ZK`?a9CpzR|SYkN)?QT~`&Vq{{rCfo7lK z=HkQtH;(@#UN^~#GH*?o{H7{Go%fjs-WgqVC*K|6=_4frajSD+bO(o|auJ@e6Q!6n z^~I&5*Q?@fRlv#%sDUEA(RKk;LS*#@RlWS?rib?QVtIs&CrmXoPJZeOI#$V$x~g8H z+5}ZG$S?gz4$}&>@jEi~=dGiTTRWHDEN0`hmo1zP>YL&N6m zu1B^VIT;BSsy61fk-3wAny~DvB<7;2WN&2Z%@a>@&I=h*g;#TEq95C>7Y%N0H>A}L z>_Fqw(6h=4h~}LfDdS8{L{G>UXQWkU>yNGpWO}ne>%z!m71*!5PSN*|Jd7p8Kw^GdhJ6zK9uk-og(zc=!y2$Z1uv>+Ru#2Dn^T{CR1=Ur z8O=(`n^4!bmn-?URROMNQk%nh@e5w{76@C9{_Jj*UntVx8IF*Io(C=lInG<4fa{CW zAB()pofBt#LC~P(3K1rp=gA%MjW?-YCD3nzh`?T|3aBIG1ox@_b?xsjY7Eaz^tL#c?f-@qPhd7+&Wy=ozHxF>wzlQUhk5?JPAC z)u+IGc~HNdQl=e>q$I6?G`ID$Ebk2QtxGe(rt-4Qr$*)REr&C~$~&E}Nj8DOYF`v{ z?8BHB$5es~(O=@7hj#rZr_Z4dftH9xgK)E8=xD7me2KM&*ys!iVU1K%U!+b89ZrRC zEL8d%=l%@yLzN8PaQjSnnCyeKMMphBXHDT+tXpp+A5uMTCX3Tcxb&0RbTJ>f}0|h`F zcU>1i3f>9XjvJ}ypQ{1fHhLT8kkz@<)v4jv_fb;4)l4Al^XXxv4BZ38F{|K#u-H&n zh8HcQ&ut9Lt1PL;;ig>2cxRi&(Xc;X)IolI{-`zdR8wV;PoJPsE-g`?^GuN9T5N*x z9g$E4oCqz2^Un|QKswZ8Iiz<-1-NAt4&C-ej+Lt|V-U`iG8qatEIZwKoU&Mw(9_U@-=1VN z3dU7|0f%3tM?j6on&n=H!OGj6$VFftP~|^~+~+b!9!MX_g~kVmc&(lGd_P)$4W$!P z0sdWDx2Pu@iRFg2D!l?99i76k@A?h#n^a z!m+Zd{J{y2HVy(*GFQxyxb$e3nW+*`lST4R!l{wThEa=aNdn9l6}QW1sJ zNZAAxDl;glh0@kVHT|{wHIBXvf8bLa9|)GXgn$y=rpqvI^9BKFYF7+{QO6n(mD0vl zDj}=LN)K<|rrrNG2`+Qt!B~A!&HyU#w@M$uM>YVqB|;my2|zrmoCO~_msiq?G%(0n z7AGm5{8gg?JfD8vWP%AP@g$422mB7OsMe}lt>7d7+*9(~Y?*4Y@;bY}+fs)L8yG|+ zDenJOBdAE1okBvk+F3GF0W#*Zh0cQy4|mJD8JF9fQiG4zX%nh~z(|Dz;&w9QBH>E# zPHniAJz2oEJ!l@DtvOovO7;Op;>HE>ve{&z$lbn zFj358Gzr_{&ws*ub5u2WV<8EPJ2DM+4zUDAK~9E4>s7}*1r)Xab&l&AK?NKQtpM3Y zZjEr^(A_JaI*+5pluqXOv##r<^IWXn<5J%EWcYJG-~~5F%lPl*@IOXk6Lh}lpC5X# ze49yF<|USOk|8hAPcTvWxukkIbUkX<3=;Miu91~!| zDmtryEM>K>Yp46m;eW@(*(2^>OaZOjq1|^56=vaj7Y5LN`~f0A%_tQv6|&L9lUaot zHf2H{#jMwFOKXv~`)xX#lT^})oGWIF9UM1bnX4an4HsbL*Wwd#d{*F*G)PQd7C#ZW zGs^W}H^SLldYyju_Ul<-jjQ_ef-(UVBONivF@{K<+}4j#r!)}U*_g`Q6aLIW*`1$$ zVGg1Fc3T{I?quDy=mZNOagT6|6E;_&C#m5-Ci%5UmHs_3pglfRo8@2H@roCelRsI? z#BT4k@2Qk_@WL(eF;5O-ESL*lUl1700gv-5N&DB(AJ(GzS9azcaL?;t zYOh2KR*%MHqh&clz#JhjmH5EtE|ydKmr(Mjs2S8Xk8RGVBpMJh!JpE7R(uvRUVLIH`h!2{<2ji! zdl~g`)`(N6Z{V2y9-Bb0?)~}I^CF*3?wovF%BQCsrJTK-K`@{XrBhH1$?B*!J$YGn z-?W6J%Nj>bt7eANN0vsVZ$uk53u|Q78>U!fLpK>x;!eL|choPiff?k3H@>ImW<@6MoU~oM#>b-RDK+5J8Gf&?>NRr_&OK5eC&kXs~v+3Qb0FxTia`_lGERGup6w+F{{ z*2d2;9=DN6&1g_Q({HyB$LHM#k;=BRUDmZBHSMa--~d2Y$vYVhYSv001!TQ3{zGWV z983QFgYP=1v?4hx&oLqYRMSCM;+x`ci63Nc$KPC1#fg1CM8n^c4y@-Owkdd%Ph(m` zGRopQco+vn@n56bH(Zzdnld1r;a~1Ad}rY%9nQrSE8?&%1?$y|(9&>Re66o(T3~+E z01xD7B>$ktalLx)_2s<==Xgfu)pSpwFiX7R4#<@Z^a zKYt@2A+V>JxveEuJ{X5WVWx@T+R)7(D~03EdroLg;LSQBeT)7s&F57Q|P z8C@7;^y92-$-gmKzMOu9`h`W{>h+ZZmZ=)3{-R~!#0;TNt`%Z$t}sHdEVCM;esHwWrgqeH6(%sNy&WG0wwE^YDN^0BAR zw~_skzQ~5Co-UCq$eo#sQ9ZCw1yDIAAb!WW`@)>%qeE@Er-oPj@@#F2Ry@s+<>7g^ z%vm{QOaFRD&4-ALAilJ}rGkSAmRoBNJeC-3i+&77Ca)mgZ)d#~x|em!Vxyk-Aeew$ zvt_?@GiGH6%WTA|dU(SvPg~pQ3sbN4dS+dJoE_a3&03I(rPW8Ld&Q992MMYHn_G3u zfVHlDZ!g#nXS`jZ;J3$zie_#()IFPDwy*DX$ja$RzTt?y<=hb&uyfHXQTx59YLo#h zWP$az;Gcy|x_@D!i=lw2;YW4KK>=oirP{sdHkRi5{JL>irkJtqITr3e;fLme@yf`L zRjb9!WT$#TjZ73*^)3EVs@kZnP>rJ=kzRib=JADtb(&Ez_yJt8J=5q`5c?>t7?>c4 z`h+UEsekX)8<|Y$y*R^I9Q3AVM!r^T1-uIZ_;jQ~x0u(b{S8|-e7McJ>l&=lr%G*biEP3;SM##ns-k4dr@RYo? zjk2pU0C8;io&5(|!JS1f8kDx)aj(k-X7?YiXzl_Z@4o5xh%WB=Xe)G30dG!dpMS+0 zjDNY2q2mWY1dWJ~X@A|0sUV^4f6VAit{*jDA4Cb#q^n+At{zL}M_x4lSkW{92}1t? zNs5zFPyN4|Bl^-9^~-od9P|hNs3l^=9<8=Wvi;BLH9zv#;fqhc2mHNFRLeM#uFqOZ zza18=Xw{RFRB`C_u>X(gi}1{l#uEwPU3hizNibpR7l?9N-|;!Kt8Zi0PO{9tv&T?i z4iHq`R<6n9!3Txt%r&w&FMKuqna>a)oc~rx254yjV?wtzh2d+g*fd zoG=(@;2@xETc9B zGHwCIVUsLbh6lm=|sAHg^@gCh8 z<{tfq{|e^KN!?1d>Se9n{D0u*2sBo@1un9-!BrO6X=MWBqIb@_u@VYKX z-aQkF!CIGoZwW;R?QTtJe=xYL1l(Aty}$7%y*%58dmk^^5FN|>x_@O&2bIt(_Enf# zS>>yiHcz?OZNBBp8_KVQ7&%ENuDbf!ue|ywldbM3Ei3y=tO7D?%-8|z8a5)F%eq$! zq9iwMECVdSHii#PaZGD@inxguY>)Dg&kX#Bl=9szkYzaMiaAx@NV^~Kbm)N7M$x0l zXbE;WlDdV5yhxzh2QBX-o`^OWZ1|_iykWi|5o+UG*;qDP{KtLnqpWStZfBl|2)(8m z&(q))PgD>C@~L?G9GyP=UDhezOpHL%C zkN&CSK-P(aZ}by@jKKgJ(BBs(e^-QeB>w7b;wmsYQD%T*iIt4C=qSci9`?~iX63q1 zhEBv)$>n2grQY!PH`q`D)YXmox7h8v_VIqzgTLL7t&=MFYyj3xn&CCiY`wEEe4R=+0KERT?jau#77XW9geq;VY+{p+gOr}?`7(*e{?+-_ zaA`rv%#?v)@whxFbO9C({}J_N8Ap7!nxSDDw!boV=zFD_7@Dni=h|M`9m4`^= zk_GbIv;)s=_%i!y%udj5EX~EU20nH)-*~PSq0}D8iO@c{qcSwX9R1f(F%x5^nULC9 z$^CIJ*mC{1IDC^~Bc`PM*HLZmi4v_mb7+v)y-W1*{e<NTai$?#263LD~{9Y;iGvUXnWsXsFbZS4}3V~ zm6Tq(JgC9ZwIPnh`1WA$V2_QRJFhtS^Rb4zu!pf!^bCGabpPtLBIj~FUe@C3GcoPk zTNPpuAukM4-N7(p$u=RAW8ZUH=-hD<8T(u77~%HtL7s A0fDo_7#%^qgK>>_@Ew zh`&2iBSg{L$rcLzkr{AyDM|_6z-Rwxajdtc4qnD4+mLn zNxP1=LGN|%^;YHGx00F({+-srM_LKVAI*f`5R>Z%V;+rN(ca%?o=J~$hdoCD1UqYZ zUaqmc3r$!3WOk<(V6|>6B7E(ZSJ2S{m%dWaOX2E^w+iM%W2h)WB-HHc#j)ilYsQ7v zp85G-h#q^ES@73h-*A^}#?+V%uYQN2E+-JAE|v38LyseT*`;Efpbbsfn3FjZ)niIu ztnRfZ=Y${aEw=f+GQY8olgE2neC*5bV|hOK#%zpP=v@33P~bb2@z+a@4oa?%PY<_f z#h}}Q7+a|iu}RD3?Q+kgdlmuNf>brdxg1tF#}$;|ZU{R7r_8WNggNcbsAKDu9T|a9iS1q$JNp@H{8$rB@&Yx0q}n zN^1x2Cgig2^%b+}cZTjjz?O}U(VxM(#L0Oh-?8IgbGJMkb4KJwROxb5{C~f_$!+#M zfyyJWyJD0fo}#Tr_ZiZi+9epi>rYEL<88SU^YDEui-}O~x&CsHpYNp+pU>@s`zJkh z@#6T6v{=+PkE51k*AZ1Nc5=sAu4A0by*j{7uEkl zXzu&VkvZ6~O^(tKfda>aHHX@DbAAOORXX~Y;Yr23Yr3>Up`P_6=A~lg%%ME-nuq1I zOPotB5uj0_J+#K&{5t^xL4c=auM)^0HZzuiHvaT6K{bW^jvYRmcfaRdy`TMg)C2uQ z<^}^L(0UV3R_?ipwp@4x(L2&C?R{Ty9XWDqhx8*-y&(UF_4kLe!&^?bp<_u#uA(`- zsJS8ZxMqt-A2Kx|?5Th+tId6v%}*H;4mg_r41$5lM4lU*OQRglXccc5r6 zRvLsYmqxC8%BE@@N=-A35n=`> z9&$n+=*F>W^|LV$mW-~3(5$KG{LD_-`NQq_>794XWVfm8HLbn_8q%vh8R=a11cQ~7PuJF~pnleKO_9&e2^9amqye-$eb+5&oG2pV}^lwA;4i|?im z1$+Le*Cv_Q%*FV<7h7?4qllX46hdp@HJkG{79M}!3^Q?O`7U#@PUQRKM~!lrY`mx* zAKn3WKgk@JT0&V@3tvz?IU2Q2nf%}=Ja7gruxb0i9fR0=4-ft~?nJEOf=A&G_Le8c zH-o~|eJoJrsfCsoX!@M|J*V+HmxD;)68l%P*@ZribBXxsoZCG%u z%$xWY2}*6wjrNb?80LGzX2i(&4`W)H%cIG;3}6GLqlw^d;^<_&>kp&A>{ZKaKukD> z`MY;QfDY0>QQ6%3H@8hyv15GNeJa|u8{vtp!Q}joH)^UmV%)T=1K6uohj?hm_;1vm z_qF?Wx82SE(zbIsI?7{pPN)V-!*=moRz-4+D$Zj>dddj~8fNO&&}vF^u}K9RWt+bo zDAC>zOx8E|JVuj@#2|_?yZJ(Pet|>&G#AcV>pXOP|MzB9#&fauFcNBiD3_FA!mZp}3ua^uqQ^cZ7p-q$R*od`ITjHwhunR>YFb{*Nr0XO5qO zZbpo>pn^k({V{M2%tCdZ{OiigzA=LV0HI0Xr`Zoea>Fc9@g>^y*ys;W6-(ijuM79m z5l{SXU+!)Tv~;|kk>jV-8pU$?i=ffpmWb@@3GREgmhkXY(fvWVxJ(+#U~Ip>1Z|Z& zT93`b@TB_*_2VDMIC@U{n^`w9D2bjCyatMo zD)B8uupWyN8FO@g6`I~J-;>R`3X|J~1ZM&MKn{l+=%ke{gD-QoknPqpuFyY9i7)q(Y zHOXvZI}|QKCtZXBa@41V1SJs*r6>bW<+Bp2Jy#Tj>E*6Lt~4N%UyCZFdc7*8~^hK(u91cb`0 zJ@!n0+`uLz)6282{dTL%U7V6veJzKEF1zMiw@Aa@dGhFv)<*3qPN1yu_f`edvFvg@ zs;qgUvZ{|c);^?n63vg~w-1HqS;St|=L(hXMxy?YOd6v*$+5L~wT9@t&-DCtCN9%K zou$ZM)8OZR^^%U%J&r339c+_Xe}^6iGwUO8f}J^Z6kY%SvG>-0O?Q95zse<`A}C0g zsDN~bq^N*MNjIZABu0;ch)CxMDFx~7?vl|p8kB|+5@WEz_8ne&eZD{3_kVEj2YCpO z$KL0>&w1rJujgy#(+}TuE+qVg9R``3M5GS|Q zrJ)0^41<=9HqARePVX8Y+{xI!4KoB$bF?Wv=ft@8|L&-d~f#alU(j zZ;UK^;5OurD#TGYI)qNK65c$zZ@Q~o_7DfMh<=GVX%yXvmgdWyAY>b= zBKy%S6hUJ@R_tod26yLl&cR*Azv3$mGXCbmI#6MWbn`4JVUkbG0uXmq+>$LfoN{v@ zMeu{mLhtjkjee*3m~@Oh}Pu+C8Z&GaY`Np70$^{nKM(b?mtT_rmsss7Fbh| z>>rD#FAK}vbX+bwF!7sds=fH^^RQL5B!ku5OKYMQU81f}w!8U{V*t*-VGKX4kh7P$ zP#t}6OJ?A}QAr^6{)>gd>5n>L*2SyiZbDu`QG3kHlKDk`azR|j`=LvU)3(+1Y>v2Y z$wSG;1wSjQck@<^-S1c&J!@>-VI>6(9HPT>wg!=DE$K<33!P*n%btlWAA)Oe8SOf{ z)i`f<;!*qp$w{l3){U*5`!{HB{8nc;ft{elA3pUXY+HdDi_@lT@WMZQ*|BEx`jB8o zfJ-fdzp~rBd)2%MD*)Cl2>R6i1opILsCu(2GfFg6<^1^7^UK3D4zR?bD%!S0iB_?m zCybUpE1(?U;mM2v7{j{dJik7l zw#Xqgc@J(=3=Bub_mxwD6nv~AkJl|U!(6ok;A1xBZ~gC!#~f#U0vM~LH%c7+_k5zO*Fno8z1!sTkPRp#@->LZ1f=sgQ!FlLEEG#Z4wkZj}`rX-AbncvU zSG2fwpJ>jsn+YzXyhZY7p0RDixi`M>A59DE&}{RpS>o_T2&b$ z`6vNd32fc0(+)f7(XpXTW_F1vz>#s&u=?kYc}I^{8`Cf1oxu$U>?RPTE}KdZlFr^X zt>;nP^-=;ptTQN!_{&%uSo2c@KI44V}<;SnrHf49)8W0^w9>C&+o7g>nptX z+%s#*w!Yvi2bRYi;?mtoI|cT`^dQVhFeTb27Ls*Asi=l|?$>67o8@b@1Yuq8dQ}Fb z;6;4}7m-|-B~5X|)=S-+e>~T$2aXwB(reP`V*7NGK07(b=`N-qHoLTy^`UhsdCE+` zU#-5j;U;_$NjaP38&Hx_PtnuU!l3+#kETqUMb^Wh2EstEP#qpl*)moJ3HN6BLX8)z zYtC!%%HiE^@sxiuUOdRvVkq!*suHE3juY3unHGh#=an#88X;)>P*8t^I`rW@9=PP# z|0FnX+0XQSvcts1krpTxeBNm)owd#icJpW^#Mk&#AuymBm~jUj=z4u&pp`YKMV=;b z{@H9hV060~sfvi2AP^=H@%eb6PbZVXU=$TSl9U?Kq;i!F%Ck-FJEr|y{zfzHf=s)zwXQ?bG}2#=lfL1+JMsFR zGD-8$XNCtP3ld^G!G!%2FLK#dPM8Q4^2`VMGWIv+FezZZ$AD42w_=D$w?6X#b4;b! zJ6~hmiH;%vjC9$N&g}>C>yPj>jVJ2EiLTBZd9=!qRi2~q(SyB7OSneEo*FGg^_f0L zh_Grl@wM$~TxP#*cSL?6;$~!qFdog}``dS_6&yBi&>LLGdcBQmp&K}=xv%W0rDuHh zK99dFVvFmbR8nMnrwCr^W`3dO}4Ry{L7pM-{#g1-%g;X|E#QK(Zvf(-{QkkNknzs zqX)Zeq9MToW@)U(fkjjgtO*Xr^q$r1t)<+Nx4|o?oZS|nBrbb^aevUi@}T7?e5$AN zk)rG;HuYPc5;+>(z4~Z=AR@4f#M!7>81qgq%zUH?@%%_JXbcAXN@9OKYJ}_UuhF6% z_`-3Xu@u%}7DhQxYq)ZmT|@qu(jY^UjGO;$OxxKRe#@4M|M5IQI%6g4e9u%Y*zt46 z2|-Q?1VBKN0ChCVg# zq2}Zc^JWuSnTZfz#M}y{uNM^FZPv9)LhsY~px?&mNjBa~5w9G&kt8qKxjkIwa89(I zx0t~P?=xF(vcHt$3_48Gj$j`}>i8(0bFLhcuzL35r%mi?mQyasd#>vaDafoi{&0c% z&cEjgM2BmSLue*A+I(=n0oA7roG>%C9()2W>5QaF-(QU`iMW{dmtPkkc5C%=s`&*t zX(&*_S100Vi#1N89qlP0w4lu$Su_ZH)(7R`13ciMI-=|hIyC=^;jL@chgsLHy{uc` zE1v>VQD*Gx-Hu_U8JH_Wgv&DOYu?V9vRcP=j&;oY!CNO*XLxE_3Nt(Zic1=N_W`?B zALQP5mYPB?wD{V3BWSqf=h?qYa%nFbP$o~;0?6(VC2UVOpYM>12FvFnvp3~(%7n5BcwOPw#yN%qfAL-#*TcNDomQNfy z&9^+TI2A0*m5Bpz+qmhFY%o4w@?NHAkdHy{9qH-aZn~4|2#EJ`_}L)9@JHL`9zg9Q zr>F?x380pR+d%79x0#6_R6^1bTw3Qk40isrYK)fDAopa6x^};L5(j z?NqayT}OC}IhE-%MZ3GdE-^(EDnVO96hW`cYQFl~Y3CAc#BjV!WcxiDPd5!`Gs*pd`fF#9VVMFr9LyCAHq>qJmC1e>4A>2eaXTa z#d%1m@|~AVx--7P=viH4aPVSfw1j7*oP4e=z@dx}R+wpm+R)4tA8r#p=?VYuushk2 z0$$P$wVygV?G(baAn|e0`-hw{O52e8Qq}2%;CbTZ)U1maTHWMK^k9=yfWII9jl<}0 zV`^7eY^O2X1~-x6d5;-z6`;N5ZX9*%rFo?=5YZ`%8Sgqc4}SojWib94u5YnXFUooE z7o{tPRH?PzCa3AX3!YP(5P3gqt~USU1B&T%X5rISnING+EAJ}Fuo?3;Jl`UWM`CWf z)yyGI$P74zZ9BCdKyB~|&7t?NGUjB%(>JL55>V;Xsm9XwzcynhaF-=oin4!h4`DhU zLbxEuWlC?CwEHH)X7P08o~FYm$`J(u{6rJPAS*` zqQ)>cSA7Wms)LdtbK}&s2t5zayX^Ky3pVbcpPt}j0ZQAXd%3zg(q6yNOup(yUo9_m zM;RqNQU9I?C#&I?-kb0o&mhTwNj{OI!`>MrijwPV@g!i1xXx?z#wAY2qWGzw3+zqT z3z-64`iO%~`RP0TG)W(AW`h-_q2)ydtJTBjV%O$}=5_+Q@T#fn zYnb;tPWjwr_sBN{q#25%!unS19E*xDT8%R2S4ZT!Y7bIt8<#k_K3s?8_N9v*r!ybm zj~u=bG7YwkN~(V~uO!5^*t99!s4FKUVbu893KUQ%O9oYaQ5rVo`3N{n*N~?JqoDGs zHn#Y<^<(MQjU&b1mTuAJjMI_S*sm8a^^e<&zuj`A&nNbDHTwRwfR8;HVlkM>Kv7{l z9K1eVIcH@`d-ZZ|Yo}G5TBlxiu3J_|)63s$W$>CQYGorLP~dsQ^<;gQu}9pMzd8q& zLB(|RDt(tarMru7GlAJ1j~rt`j_y4gqklpPeCo)B_jfYGnvnnn7DIH8yCd+`f$F_$ z4^{Y9sQjbHSvrJ84$9IWmLvY*k-{9BL^mZ8j~>`|Oz1b-7VkG{cvn6kQvn}$hC-&s z%q{y$RuyiIWZ6~-%IjpZT&s{u{<(YN>MO3zw(#Op4dTE<#cGM<6IJ?JfzCDtBb zwDU**eA!31`}E&Ec`d-G9}x>+2s>vha$o1v=Ef7@Uz*4{yNPS8`#k>r9}cN_+E4YC z?QNke2(&O{5&6e=4M=GpX}@jIL=HGh$+*3B>64ZS+3s~{Fg@$+LUK<{$jk3jUBA}b zsaEmoTENn7@1K0hH3wSRibn2*!LzbxUu0<+Lk}aN=eTCe`4}QxuuHV!Xi-pymM-Gs zUDJ23yYK`pF=vBy#G?_szxD%vqW6PTF&ix#mx&;%q9rHd)UiI{@FV$9yy{yLU{vRg zy?f1syHejc6svn2+;8?Q4qx4ud4zQYW`6FiZ`IRCY2dQz@Aa5>BjEepKBe4|XoJ97 zr>w+VzMNS*t+H9W-{+vcg1?#<0eX-+^P&wj9*{6OQC_wiZzEEtzo0PppO9Qa09(QghM z_JV8;dKKg;MH=6)I9WdrBI6VU{a{gDpRxR=TLYJC|`5O243GwSixq6Rpwxt}qg{31TfDv#fRUZn${PlrtF znO5zfaFJcc@x@KA_@~k*JZRiy)^1#mI*0xSay5NC#Pde#Y~PFl@N<#N4#Y_0&cUUI zxMlEQ2?Hy@3wNhzfVQc8qBnBy2ky?Ae45+Hgz(!0&>0|NHbgZYw-DiL)w2oj_sPT^ zf(O%&{%oVG=802DoUY-5mT&Hxcn=%-I>97Q+Be8rze{WT#wlN?0L)f-%w57yG7Uw& z79;ChQw5a=(gS|QTjgDjRxXwYc&A_7($6GqWkP{ zrwo|~E)*u!{I0hZW1VVk02!TsgDOp3RXwOysG$i`+eIUng}hE?m-Di9w^1JN7usXq zOlxVEP9T++A=1E@{FixSNWMxb$5Br}VTr5viL!tb?J4y;*L6fe9>jTHNaWMz4q&CR z^sBS<-aL=%JUvi(e*_U}D25x>@8`N1XW|NNX2AOkQth~srT@cUo4PSo=LkppdsKOD zr;-^>rUf0@MK2N5?dVCK=>l}~!ECIrWPs0Fd?WtcC(~1|wm$C?-vrtVb>N_p{4!d? zmT`Z^dTCzj^6LOYZvkACq(BPkLP|S_!}&B+qFN8kMgBpH9KW98^Q6ZOq)o-1{y+^3 zg-jtqj7>~4Z7K4&N*VYSJ`t!7_liboloq!hpl9xOV1^{F9zlScN7;mapYLR*t0e-o z+~?%Fsoakdc`}ILB6-UBlE#{sY%``tI!Qj0pLNTyrHonLE+DoqqFG}d!T;gcJ;CUH zot8x{&s91j?Cy_I2w*vo-yvG)*NzX>fhBz$-uEYc4FqwabV$NF?GwUnjf+m@WGL=nRP*2keAGpiNZVsZC=-7qvDGym!o1HrSxMeotRL9;7Q8sbl!(hzBBHx~PR|Se?|8o5_6u8c{_g zi9Un|DsIxwOHE{+T>A!hs;w9-DoR)X1|73?r=>yUm-W0Us&v+(P7k=mDbnVgT4tfozb;-=~w%p0Z+=K}Ov>CT!Z38USD()N>K zU*;@hT)!mBu@f9cHLn3rcgmlck9rS?tq~a|EH+Z?gd9`9OhTycDOPJ0O2OLYK=8em z5gKtJMv0AU_G$5cTWe6ogv>4F<34u-qx z_glP{n;B->j3{ToSxUeEf5p8Z-OaQx>ORz~!Kz#@funj&&x=z~6bcQqdE>^w08 zm!&$jc;v8}KUYk%r*2Rr@|vu2DDq3^7WpNUav-L={EIp~=l}Vum~422CE% z_cjyjIW5382l$J{^m_C5!yzGLANRx}di3x_X7QD>4BdD|j&|$}ByGM8SIv#tu~s>* zKi{4Y^5j^41u~Lf)Ih4kI-qmAJa#d)3>PIKO>dTGM^3zZ(Y*xMR_QL=m5p>(KNq7| zP|Xq>{O9Tf>BzntxPeo8cVOl>uh@z>Y5fc4$SW;!QPu`|2I6XD_M~T3w2id^8KtQS7^?T6?5E>F_nBpN8P)WR}xt(FmgB)LRSDvcq%WgsR61Uxuyp$ z|20HHl|b{3bgy{gGl_$Kn`*=L<(&hRsbylU7{mCQLn}h2vs^aCGuywgt?AXACYWEE zN_P{drze(3+cEQh*s@pU`Bzf{OlvT}uO>Tgo@hDzYn~Vz3cGV zurcM4wlEI1&uzDG2X6YwN^d0@sM5maTu%4)8&e$LR?Ok3!tUd2rNw@fyGWQ3o!8(84Z72_i=hWv=oWp$D6=_LFqI;AS#N_EoBYe0o0z}Yss zz7sxpi`G?1<&~wqDr4;bPI03~}`UG}79PyLG=IZ6bK(;;%3tkLl1 zyQxFDnQXa64Tk;&AG59cl$R`K_5954C4I~q?{zb;(A5!*77BCkcw?>R2unVUdJNCi}PTo?;3W43~(PD@vlOPyEiRVCWZFQ*#jYHyt` zU+DwY-K#=PoKRt5HR{q=Hb#$lw@pt+9XPQKuP(eQho@Fe&$ifT5CL zS`HQA0=-^knP5RA)yN4nYGDwykoZmtM${OfEt_J-tR@+F5t6Fwd2mZ3)z$hsMogsG zlW|=VML6B@Pdfx-wqzPK$emUfIIvKsx%8xb|Ema6F8e1(7}+5 z8rdhBq>15%IH?y)tn+~+kWxw0wb?|XDZS|09c!TvV$q~{AM{FhMMLFa-p9ENgDX%-SVDzu*5ntFs&&pq#oaFpv`EZ(J+&7jgl(#u zDuvQRYQZ4-NK|-p3CX?4BhpocBF=1jb?rWWD6i>SHIHo0f#;E_`A8A5hAA1XC96%HbI%+h>`7PX z9RB#*70cE_e^}Qe1L-1edJ>iKzHZRNtdp0?pM&16N~o#q&}fhl^Y6^kyepOwIF?80 zlR3(#csNh#!T4Ob3dHpBs;9uTjvR~up(txcmL1IJ&4S~8pL_ji2MM~gF~;i4R7ZAW z1wg8*Up;hz^-Xn?z!41eaJKhqC8rXvM3MTk^J&xE6_X&c@^#J2Y)4bE_AMJ1g$pHF&3_mAykJc? zApCqq!n=xX`g;m!>^b~`NGviiBC1p@v^cv8-|7vOYGH8{e>@&V4#E9#w0cktUqFv* zm0YoyICW6oz!bpP+UyquPc~b*neUgn+Ycr?65^8UpZSrGfs7?S`p8GXp%tcty*r>e z6(cvDdG$wtN@ER>TIPWOiAK?-IY_G|yi|e=2qS@iEZLaj(oxw!88F`d*8=90woPHm z!8CPBGi`P_$5gzH!BH{Puixhia1<$arG&M?ibmifT#2}#Q%ZqwZue#Wydi9AtL#Z> zo(j)0El@BK^!x zeiAS$UU4yRxK2`(OtDaaH{yr-^bG%vfp@5c?Z}XnR;SCNK)QAywNcxr7{@J@+KQ># z0vY3JZ9m0n;xq;86Wou0Y0WIB`YUFx3QWK;P*5AN#J zP9$Kz`%C^YkNPwhG~T-o-|zh4-q`dIz@Ye4p*kIIJ7SfNn#lr^m|*RHH#E3{mgI;+pTS%>7$ zJACDs0tPnT?^e#@gI0>k9?^kT1-#)hwLqF6HBEr<`n= z)dJfrq$-thn07r$hKHpimnxE?KuPhPbRVw>gT5t_FWm?YcIScp69mh?k?GXXjwfj6 zN{(@qTrGk>)<<=U3wJ!5t-18u^5EE#cE`99^@Kf|Q&kwkm-%+c#hMhnCOAKOVQkrM>aX8{Tk|yxl8vOIg8Xxmt%)Tae60fx+ z-Ba~RerV$i(>+F|lb7XVxdkNnp(wG%rIf}Rh8+}>N-x2K*{DiMGRH-`pjW8QGZQT; zw$d7Mh#IFz`^lw_Wv#!F zAXFJdxKo(jIuZ;4J6!Q1aX!VBTB|z3Ay@u$J4~@hXEUc|j_E{b)!7)AV#}glNr$~V z2W&N}4yk7wnnU#?IL;5)zAm*bckN@2#3x77L>3(hi4!o3 zB{2}@&xZE#bE}gS*7G3RCwi^ZizfOmRV5C)1NiY;O7Ae^KLSN01j41Cnb1y8zTF_3 zwym*Ty*|#DUtKzJcJIqUdiJTwhJ_vu@P+9o@GHC|#dT*%-{DcIE8%9HatgKQAZ1LW z32H7*I(($+MNV`65>f{m4vLxj+hS zb;C8ad0|=wQ5t4J)u-#wx9gV2ID#`jt&t~=7kPhMUG7J5V0gk<;q_dhYs^P+AI*r< z64eT?_xn8GJ{oEkuq|$6#h&~~rg~l6Hi@T3Lf7w+gyiB&u4O20yr|~^Vl^B^hHGf{ z<{-VhfRyGF0%q&=)W#@H9IoDnW&VZ^owPHV(Zvc)o%Z*uMNWGKQ{kGPe=s zu2_6+9%@|3z;f7}AXUS5Lr;aOiv8PUCoD4-yiiO#Ki`2)pV^F%pb^n@=WPIZI(VCx zRQC@nP@A*9k$%^G8j$bSJ}A}wop)=YJyk4;A5Xqis-QXF{2@(Ul(vx@UIe>uOkvwF z>)6Msmn>SF8GG8Bw2b;$BQ?+(lwGm?3X>G?9Bh3~|8)CpUZ8|(UFaBh$#s1|IAS{Q z(iJr8^IESq=U8ap7B1#GozhfR;9GJKS!zCAL%J)icZEB~ZR(QW6y!t08Ss(BOdIqH z37@pNEzF0@A}za=AzH?OyN%jAw%E!8Jv&RDTjC);AdM zTXUIXcmMhf*IUnLKi(MdEtqfFxVD-p|NL~k`R?_hw=y+eFe;@J^knOY8Ex8Ey+MMk(|67|}B2=zN^4RvI(IMTlP=y|E?74(Vu>?L0q3c+7 zyrt%G&@tEO+RtL{%acOowXz!F8^j zIW>bb*WQLm$Fh}=wz6Y&El`?+miwMcQ>-~ocCyt>?x9hMn%!*6V+P>4fPP-0f*@8GDe^J5tZpdN_;oMs)w&wyV7c);Jr z&kW}}RwUYpgilZB5p;CFw14h_wcSesbv4$Z^aYSZs8PPrOZhrIc19ygm!Wc*q=3tFb{gwidVG9Kdtv|=M65&+z~wxM_!K<2u)ONuiRtm5 z0b7G@*KvGsIa*yyD2^OlFb6Io@tgshrrYm&GBNJGnjBYd7Fn&bmy{D1ynoAOs7Tb3 zV$~~{jey%tS~)yHOeAVk_r+VZ^elQ=cYeRAnesAn-BMho*^>@BtlVk4r%o5>X+TIp zzAo!f6e9A^`qSpukF>sx2e*DzSB)(Eg-CIkzzjE>>brrY#tm_|xcaa{ z*ogDNO|;(tgV~IY zi@PUc1CxxdP;vwwUGM|xco%hEg65diA#@FsB9J6UYmKx32RV7Z&t86&Nf zKG2d;7e5kQc_xd5w z4PoAlod*9zWR5((`bF?GcFlVOF#?y~J78(W)Um)C-bI1729zUs2+b^=hjNr`d2^ID z;?~s%! zcCC~c)b`|~?Odg$T(m8#)%-H987iW!6@zR3iz)TRHNq6Pj%RFymo{Nwd-HYJQ-_Pd z+10YlMTVz;j}KS}!UaGpMO8m3t>!-TW=@|0um}KlKNGW^iCLN|(rH5tv|S7+Q>NT{ zm%iUO>V7ZMGxw{Yqg${PY zWbCtnYonSF023s$Wg3?)`~>T+xHr7xSnv??s^&iTm*D-?7X}U-R%HWg=ku<7Skt@u z=uq=kvJfjC2+xQ{p@2g_e|o5qeL9UnKCj1*f2>_M5|I!9)|SqdL1wA8R+#ct~L1A%SJC$PzF z(720V3fmYvuC{m41RZ;`!u*!SfOc(k{NSF48vnBb-i`AKsTy$iqy$QS5*#Hy$ifxS zqd78j{w*poJw3f|AJ^EFWKfQg$Cual1_akO-Ja@pq&=<6-*(iZ3Xe8HEPgd#mrwOh zrCX1n9N3@Bn0YXov82&yRIAfa@V?p<4<9?%q7uDFHu;l4hpd%RMGDOV(NA*XkO1S5((J0aksRwB)l$PIG zv?(0qhqY)Lh`raY(OjNmCwL;fpz3}j-)`Obk&FsxIp#1fUn$DMw7cYcz=i7~4))%&2Z%>FJ3Bv)`qOZ? zJ>})+UP>_}5&%h+1jdFm()e7Qum;I_2L?Zvppv6YoX zMw^xfLKw3tr}#kQE`uWW!`Iz$jIC=_&1!u3ZssMfqw-8RPb*dD3|{TZ&wkRZU5Tle^!UP$>szKTG6t$l-G5Z>zCOTrlvXnk#+#0MhdFjqI%UT6oflpB6s1-Ebm=u;5U+q=l3Wu*uVI4{ zbzs2V0#nDmy7v#uo|2GM3IG>^_7>SiNShnIrw5Yz4PuBVfLSkd6oo33zg|FfT8~t% zR%XB+E}V4c>WW$~LPf7`7GHff$x}i!wUUJ5X3wO(e*_ZvznpvXO1I#IpP}rAE-lYg z*8`#CDIm+G94fxg+4cu>g0YldSf~|u8ncF$G}Bg%T3n}%JTKicb+GQQ`2HQnwE)=% zTRb8uFD}z{03ZYyHJ;RZGO>I}zkFy$o%DuV&@Q4 zxD;J}xMhTDLqG9iPbFZ^FVEoJM7cCO281AFkxIkVZ6T1E>fa>#nk!;;`h70BUf_TVwMN z(n3v1`}7H=OaGf{P_{}^SZ-XZ6162H#IApxq~+&b=QBymxM0P>?#j}Qcyf&_ePO-& zF0)`@YpY@;brN+o%bacw zY^BQN40=na#3KZx$F4p1&Q#wEjU#SIw)#-AHZWhxnRQ5Dyy>Xg#J0uMBNoB-1spvN z75&8G4?O0+d8a1Z(%4mxC0BOHPJ>~QE7znxMZe%{nmN|*lmsPmnEZzQ0N4K8lZT@;YlA-5CrzA)LdeeJ5qTbEOPKwwToxom1gwD6QAJ* z*4P*k_pE+0|2s*z%%hY}v=EWiqggD7CGL{omPHZ|!0ARzR%I3qZzWVBRS7BSJE-^= zlxo$@uApJp)x7X3pslQFV1CE%Yx7ESh3e09vK1KrSaCt19${5{W%1Nzd3|~}cjgwZ zIW%_L)2RO4PoD+(|JGEOXWV7&iCgS0P6PF3OP`ucpZflMn7ZSX0{nJM@~L3v?o$rq z2Hk_`s>WO+v&VHQJo9_xoEh>Y@|b_sd5epNB2yX;Qk(>d6H>6xA<|!*X*QViLQ{v{_ONZ5_7= z7KX%idRMdKsV`v8moVC;vtAKQuhIkGccO&d|H%=V`HOHh6Rh(E<^YRpC zJelwAQcBHr=O7vZBtyYk8^H4^mmetRK=@kB zBMAtPJXyG`7o`?CC(IoQSQ8!RzrWX?JFM*^V{*E^se{oyUzNtJh8SZ})7V~z+OO5F zED4b5<_)30{@t~GIxs>9taW9K>d`AW;{cIo^!wGZ`Er77iVl))LE1gJceFEAWVGk= zO#dK3jU)afUy|NxU>KT_;P!m>iI|X* z+wko9C-Xue#Fyyr#P&JIZ6u-{dfUc6byw^V-l2aT^t6Re@Jk^XLXp3B#XqU@!qd8N zk!!CacAF#QFk09odJq0kK+aLrd`{Cgck093Hz`Pzhxel8j?8+L?HSIcaLXQl15}(@ zTH^lukawHjxFrgasQj^>1i;8IUkoi@L=5rU$j9=P9r7wP;3SPzb}CKIs)Qew|03yj zEIVvswi5JNn7wOZLMCw^Nj6-byzwSoycc!;#Mx|iKcZGgtLs!Zjkh4ua}hXAU?v68 ze)QM#xt7LYH8=ES_8;Ve+lYy~dWt3AwC*SKENwEmUD%7H0e;F_AF{7<#}=j~QB7`x z>BcQ^Bfi#k&&Ej_0gB4Lyg6rL5=g~N4M4Hq-_H2J;h|mR&b`65ni^SK=07uPXJdir zOPxS)j&J7l;ipMxr#fSFFvHrI;nd0$^L+GQuQL-cq399o=;&B5SlQ&hJ)ZBI{oS08d)&r_0(D@}hM&v_F?V^5Q; zIwP+JAMXvZ&4nosQ68f_I!|+hmJ3;P>P|CWdasXQFGjGvFc|D%T+4<~858)g+W8T2 zcr?J1w-)Pr{uvr-j-sh(kiYj4>J#Ps#cvcgB#n90lF%ML0=atxu-3IbO#D);H(y0di_zaz`r!~uq#AA1 zF!Q{g}~&yMC*Yoivgh~Y_WB032V(;KFt z&9&8qybQHkPi@^!eOmUU5@h(Z0D$Ok!gs??CQ1QbT!UG<+V{M$Z zIT{cIb2JqrlQ!ZUbDArHNeB2nLwbfiY6ZBSlqh9>NK~K@UopB>Y|!z8!S~{@F9h*} z;jiS+5E(v9-Ij39yxaJ+s+hR)t64>&Zf|k6XzA062+oV2s#EDu3Fl&@(#5;5lvAPG zzdY%SpM5v93{Tl9>3%a%`e?JX9H!77%$r@8?wnXhxKoFhBwC9&nNUR{x+HV?1jQrHB@-n=(-M-Pylm222yM|r_Qv%j~g?lR0Z?sB!y%7V8HO} zmqsesgUv;}1@GD!`>Opf@28Y*MyxMLiEtvX#2|XnZA7x|t4l+lF|u)*{O_bhn=aM? z7|R9_`ji)g+hy2nXUvAPzuaorybo$S&-tKY>vf1e|1L>At)gsINpoBQU1jn{G;qS( zmdkB0p-F8z@L@tLt%ws*gOwOlB}~ou)}OB~*Q@Vcor_+neE>T+KF#O_2=u-%fVLL< z9EZm0Q9MHp(Ixf>QbKDhU9AF9T$6(yql|EeJo6rgWEk-q;tKW;cb)j?z3TftJUsAC zl~`Y`Rwq-=>5d$zzh6I#w$94+wc}EyGoA#A;AXFh_Wck0>T_-|b8Wmiv_}W&ZEmS6`!3 za2oeLDm+vd^>~c4a`*9wR8~Xtvv0PVT@t3EMV@nBTL!V|2V_Ef!RAd`IrgJzl|Kg}0NF=xq94Fd6;GnoNS@QI3 zNPcK&RU1~C=m>%>RyK^X5E)%2lv)f|@d(;Ok{D(SMi@_Gncz@Lv-wItJp*ZJtvekVrri^6qI_u>^0$e;P?N z`$;5gb!Mwo>|M`hQngq^zLI2OtuB;NpIth4QLYf_Qga0V-pFf``Oh;y$A~`OG0=Mj zXZcW}%i{5EDgqWnotvlfpTGEy_^puX-5nAjDmj<7Ai1Bm zL!Zw8FYQP6vWWCpUnK$q``6+CVc>r^_yg{)!AcB))Anc<00o zTGl;%e6?QId#B zjk4~uU5o!|4D>=HuqYDH>~-kmo4>6bD@$=hk0nVX7x+PHD&-iL*a{n(CIT2V;H~qk zV{}uc_jEZ%PJsQARzlfbQNdc=b}H~lqANh%)hFQY=9oMqz2HLuWrS&N7@aR4L}sH= zBeR=x!P?fApOujhr=ghWS+?JXJQ%IfcuXqG@fas@fq z`VKryGMRhR(##(>^!XFT#O_0iNs&+s#H*7r*zv|tYJ%=xC&q!Qp!+C8JyLxNY^N>vXzD|@%D1q%}UXYEIoQ>ZUJYAo;3-i^p*9Sp{IGt zw=C2zKBg4<7Vqi(FD5I;Ar-#LJXSBrc~$KlSf=(|Nk0~Oh=LJfhgJ?{tj{Uvu@<+VGBj}dlInHd698do2B>p?%_6@g7 z6k_yqO-tfp5s7q~%x*zM1#aA&{8v^q! z=4976+ov6a#Fgv6A#PW1w*6ct)}YgE+tULF<>?!Z>y$j*_iQuJis2eA(nTdTea}kc z|EDTJ8pi&_T>1r)#xjPwrLHmUX&c=X@G})GOl0-p8jS#}-W`?jb5M&Ild2@*0ky^7 zHKYA#9V2toNDA$Z9jH7pPjUFChzyN8O+NfW zkO*P_3~9(0o;s~G;0FmtFNc1?*c^E8&DA8W^8GH2zxwikq4t}Vo~_5}o+06bTgP6a z-#Y`eHhPQv73g%^be>{6@n1ffx9?qhcpTYu4>s@D>g5)@O#u^SDoXoMaV0LN&%~J) zhf+oEfB!pH;fURb6XjMhceR4YLj^OM^b%<%8O`)6>dVvzxE&37Vh3IzpH~ zm}u9O*B*M!46wtYVaw6ME7y)X6dp_nmOcBcl>&z3J8|*WBloP)XuJQ9sjrS}vVGgP zQIHlU(v2`cKuG~ypIFIAFLj9dslkdk%3SOsMM<+L%xaiJv$O8wW8lJ)+kYtDGnUs_;NL4@7 zMnM6=w|HqrMQdvNOJta(N9y0wp~ky8Xm_>z=?xbwXRpO*Hp}cl2yBbgl1V zdvI5kNY#bdXa0gwW{}PuKvMfQxnGt8?OhC@;x0e;g8%&#KdshQ^+;HgB}P`$;z;4y z=5<#=i0N2bqXO4q%ctmp35by-*c@C;LChD)4}T)ZBlt=aWt(0|WQE4Hko+wZL+(8{ z0$SrO4Rcv5nS1UnyrKE;l(6g|A5Q)<#hcH_vQ5Bkj!vwZ@Yb zbE`fmX}DbbR{maaJvEu-KNIffW^F~}2JEVempk3bmX^5=`SB6?!0V0;;#o4do>Xme zUw03~X8PXrtk+@QG%WI4K;Ekc)~@UOGg3ICx&Iz{fVa07YpTRw`ISZbS9Me#91HVC zqY{QRLuv-;xn}-stm?H(dPakeb=~4x8tlOz(;e#HJmQFC&FIs4JyM?C;j$)=<4frU zc*M0U0cZLJ7QFla;?9=p|G*1#dTdI-utSc@lL44-h0e<}@HKxsXJR=cpuT4BZCCdN zKu7o>t!2Ey)m`#gJx6){r-nwgWS!X{y8Yj+P`fTE`A7d4z5Vn1Y4wN7GP#Hxga;-c zusxfLv*zUkMq02YtIxJwTg|}^&BREj5A;*0ds<5);DbE;S~Jqm44jkGgDS+WZ2vf$ zc!>xppNo7qVNH2Ke4O-QCNESc;(63Cw_W=9>CUVd^)XZz;`HHy$E4#e86uxrisnRx2EF$Ee?$EzSmwl} zU_QV=aBwZjKt5A#>)`7btf@Ci!fZeTdqzt8VVYU~p`zZ}*LBs-(=Gf5z4mwtg~>Rs zwS$NP55L)-*rI5ABrDN>(uq+9u|bxEQC!L>F>ABLNtF3q=d>tGdDf`K6_R9V{`~xeFvcQia+;)1^8-I~tk7x@6n=VAkmOm@q&)j>Xeq24*Z_)zS z*~-`a8wQ{|=2WaH!wiYSMKu4$dS}kw>Wdy~buOyoMQQiVOgBdSo1|sQV2_ZC%G2b8 zB8Xg}rQ>UnuTQ9DVXTnkW2!P3<+0_ds)%K+z&-<Q zMwwIfY)e!y&Iv}X?xm@DN>dVw;c@0wZAJ`%P#z-`IO_ z9WH%Yt)pGw?{kD@Lgov4C!fju_Xs6qd1C3ATKk9s6ea_PSjO69WJu~GmBuKjAyIuk z!-hdG`pZjZS`N!c4dr0FywnfRP(CUK+tRao*)FcFEdze+3YQjn&k+w`y5>y(Bhdff zdHRYmj9o-9}O zv)Oi7Qmrs$!*>~@(j^N>Y|+2p>rM?7t}X7UL^DMnx&1yf77Qs)Uj`D z-Rq{mhibbGwtjpJep9M*rWdws>RMmP(N|G03Z~3R4P7LMB(KH64wZgbDpEu1r<*QBWz~Ti6iDMJ1)ROJDcj zrDR%=Zu73^)eE87{bc_r1=B!T&z4!s)%kB4pdKA31gt2z#TQs)U6&Tx((C%YJ{n&X z{jp;3AhouxBEqot81#(VW1+8B_(?_;89d!JJm^0WXECfLZOcUOK9A%{;p0gV+;Feb z0FhQ~?5JD*Rkx0tUof8oTAL}Cb47u#Agg-fC7Nhi1!y5%FQppnzppYH5=WRZUZ|X! zKdpIgpqAD$@Q88vlx?a~KAJ_fV8@Od;yWVSz?KwIcn=JXfQtO;6dgQjbI=Z~uOpqN z7o$Ve+Qz#vR%|4Pv=jY1WWgM%$B98Imln2Lda62FnD|JIVVdKeezq^80#_*3l-U`6 z&mURVht_@eO!a~FAF@Z$LSYN)Gd?_}2Q;#!~ zgPH#F{UxqlHcH&BwjagdCZe9JCL;xcWh+R`t~s z2JD$4k-D<}_dpcDYuwf}{j|1>@C|M0NYGWmG)zNaFyjM=l3IcY{iIHpHfB~Vqh-fv zF=xqXkGmiWrf$S_+>fz!GT8DG5ew%o4VZ1$Gp6F>b@ZkX7&7 zIg8ljrp}wa;xqV|w;Wd8=+4(t|rs3`I00zBt@6gee5~QLJ0u5~(LMmbq70AhFICg}k_n7apmKuTewj0&{ z^Cr8xenf9={3liypfqOfuuRH(7x`&hmnWy?)$Gw=*}Pd%(tT`2fm;BftdS$evy5;`&x${=$QDv1b}WqW}}4fK~PY zbG@@~CQ8?-N|hEMfWCfpfH>0aLU@deHnQWIAt{^g%qQD#*Mgq<*19I(L~{Hp#4!fZ zc}raU#J}TXVBmIYfX#}?ab_p(+BDiNe}%;v0A)+XX`frV8%R0^ktxAD)^n_jlEX$` z-?rg*X;z(Gtn4$;oG4eFX^k=NxdkAwTd}uW&SFnaIslSn!ah9P1T_Ru(J{1QGek#^G5fZ-Y!Aqo-Nr=XqKlYl488WvfATm`t2!~o ze|Fnn=77F9qVA;SDSJ?0zr;TU-nvz^+4sp0=e#BzOXW;_Ejam>rHVB8;PbV)^lwfu z0d+q+E)xnlc4rQ*;R(x{+4#EiPW&}Dw^(a+kk0(ZE(^3yXzjMNILC*TPL{!d+l7&? zvv-}qoV4?7n^3uPy>j@FglWo*r$*-6Aicc{-}5tb>-p4i`m0)c>QUbh8VZY;f7-0B zn(zNig^b$Bq1OBle1C6!@h~!3<%b7P+>Fb06JP%%PNK);(Tk=qG~j=hslG1`I1bnn zq3bpY=s+6|02WFk`x3A3J-}n{MA676As>G4py@sCg4^p}vRY0}Tq3cI!WCk2)jtwj zi6+p72bG7*HAHw|;c}?huy5X(;=vpCjrXmI>(~L#j^4gl=1YQA{+QK!LrhDGqJzCK z-Y$3ygcf!AHc`@(=Qs+rq+)|B(-}XeU-TY0( zuK_vw>(+N*iUsTJV}P-j842#1ufXv$qN@${V>nUeG2OX3zR?z11`2*T#J`>}j>Z17 zUxoo23cgwn++gi4fic@H6oq&2j1>GX!*3?g+So8LD4%-*Q#Y6i_YKy?$0pFPc`yQ* z9N|0O705CgWla1#wS={R34D}Rn>Ed5Acuys|bS^*6=k3k}PVdZ}c>5*MLsIhGXul-qpbvY@{3HedSg(Eh4LmCG zvDs4^(Z>rYuV34jltACAkFCZBj3wEe?Z?Hc(_>Ka=NIU=KR?8&NMj>YhM;t zj5%(3ni=`xO(^BFp7AK#zLoEkCVE0K&Gpbhi6 z9*0L`5AKw=jE{_KND>JZZZto`H1G#RM7a2W+hS5RAD(_#JL{6=$`iqPnCCf1JaJJo zbyhs<8%G>cVEnZ2Vddb){qlN;E9{yu%`Btyv#XZewZv=FDXcV47Dq$WyV+6`vK#EP zSakP$leZ^^lWs$ z@!FJNS2SRpu2w5%Px97Y!Rb+fq}?`t;J>_LnVd>n(2}tnjvMkr$tl41f`D3)9W3K= zY^=d5`TMNj2hV3uF*7Ks>k`tfixXqmZ#Vq|un+GEY=z`X$cV)NiDj1kj`Q#irZ>vG zS>?SozZzLY>#uz8WPr04jwO2SS6f_Z6y_lZaNg*_$J5n`MOAL~fdP9oSH;-O<>FP* zmoy`AgoeE}s9CsZZy4-8hx~d5CgP-xG{J3j7aWpL=^y!fR37;~I1JR2Hw>)23cCh% z#g@gDW_+OR7A4pP#7hZoDL2$X1dKs-I*2~cQBJfzLAPFZ>7pPi4QYL*b(%&_J=%~{ z5LEsq55l|iIkwff`*1=|(PJ?fF5A>&OfmpiDKI8M!*hBgoD*ojuSHo0?wz976!VTZ zyWyg|uCZSv(umP<_(GFl&MAUJQ!1^y+Y$lehL4=o;*f57usv*ZmC9bEapZvy@<-?u zV^q!w_El>k?d*)Fw)+I#-L^2POSker-+RtZZ}WK{54`jh;pznlv=8*hifX9w&fdTS z*_7I0@4RQnJAMdLn#>Vn<|!cUt=p%7{REOBgeLRdF=ZxV=bNn;2MkDN_8SNodj%p8 zgNGYdC-N{Z9*7Q=VT-% zxa%M9?AepOb6bi`eZbJ(PjpnE)-Ne}piQM1uuMO2%1Wx${Jv-`0UEFp^|k}#Mn;=< znp44>qHsgj;wYv5rP$Co-sw4OPWec#cyw@q9YyXFYl;?Fc0mAQee7oKt#APFeU~y{ zpxV!MM9<0u?gsLf@jisc@3hk*!2UDR)nV_)+u~fkyh&XFjVBj>XI(k3B8i=ifav@C z6?o}8`Mn}L4>L_JXq)_AdCC~fgapTM^O)}^!C93=->RD@1C%sYX=&s>j$fta9It%+ zRoy1IM!UyBs3(aTIU1`G<0i|2G{tv%=uG^<(a(&D4?En*koSE?X@wR!3eNAgTUQK6T)lm#(9+3VHtwGQ>GHzS-6_4jmX zoIDVfT7t;5u;WyhRHbMq z(8`F=M0yw3>ne@B!vXY7u$9hTS&>;IL2 znyQ|X#*$KRb{N=B@Q!HbTnS!NZ-bX#up!&BQ6f=4t@e;HrgR$iv-U7@6?AP5Y;((- zRY$c>eZD20XLL>@F8(O}hl-FBFNyZLVigcDu#LZi`=K@}hXVv98j2b*h z_||zvBu8d9C(XTy8Fn7`lZUGnw@z-}8ydOT%Wie2r2#3_)L5;t@&LElA#Y@Dw5sLs z4sm95XSIVXC7Hd10^!`Ob#N!q?5|HD=QA@d3zBt5(8)4a{aCKJjdP!kHQJ_oY`S_` z=VU*H0hc1_V~L0>DGA@=7mQ00p&HI->09RWu4wBQlY3>%+}dpV57*wGeB~eJj~Q{= zNP^Ij&K7UqH{f$ol8c=1dX)t!6rIr@EqwB^_E;0M%b@R-5iAg40U|xo94!$Gv51qb z(K%H%4G`#q`HAX*7}_Jbic9&r%?^)UvP_nay~Sh5Ro~NSZQGLQoE4-H@7!bYELxm~ zS!3Vin6L`bJJB(5pd>{vj{`v)!y>t)I+4crbGnMh_>A$a!~FdH7HGU%+Kx)@<#ZB% zq#d~7WA+SrevRe95F9)B>bnI5f<-fpie6dROhO{tB~y2b$` z=2J>+h8FR1MOF7xWCX)4%nFp*ALtC)Tx=-OYbp$pH*4jsSx5MNcGdQqPkhQ}^oD1j z7A4J*N?5U~{4GFZ>b9@1G|OjVMFjw8S^Ovux1maASjS$m;c-@TH3QVxjrlteFj#wd zLi3ty*4V3d;;WWHboOw_knAIiwp<(ka^c(#lQuS8xOV9jcsl^^N7mU>7)_6>wobCe zCWj2t&4o2#yA{QNR3tSaz31i_Q~$(hL076uFnliS569ROZt`3L#%9Ky9>(p0{15XM zZ|o|nXF~J1`r5Le>Q1J%MQOGsigbUaYTM-DDNg{p`NK2SiR@8TNu_O*a{ObgXz^lT z&9~Rddc)bXVZv;YhS?Hx8#`U82|My;4NEq)%vdrXZ6cq~c|sedCg@qlMjHe4V^;AU zKn&=KW!UA0!qqO|_>wO|n*H*jEr|7HdFv;4rYWh;@ct0l2ig7pqXkh>&3C4;(kPet zV_iV>1T27jXiRR2Gjps=c7LrV#^fjQ)r*<4)b=L)2ot=Q*8_7-#O~Lh{eY|9~`Xbf|)SZ%QTUF-HSCx1oQMW7lQb-|HQpU={-2~MJd^+Fn*n{U(MG`7fNzJo_+uH*zd-?il29M+WAM7 z1Kp{UIk^4cP4>iHQ^p{bl0vIp`*ghGWRd|tLp&!b`<~XB3EcKJ=oIdgs2}n!UVwlI zBUK=zdc(xRr`S~Bw=JyV{W&$e^8Uecp-H2=0W0RyB~B}K>iR5(Ig}1Mzr?~&!0XJ; z8s~kx>@xhQS2Tc%V&&0zDqZKDr>0b`iO^Jv$d>pkRC4fiq^VSZB#q9aZZM<>Sq&b5}rXYP& zuzwnc3V(Utdy;=UPfol3$9^SuC2X(0)p3d2eTmKZ(75uv4`lVN|Elnew-ax`gZQYR z3HLr*qBGPDS7G6~TETcDiMKGmX zmb6<*BT(d7*~@>B#(Ld!ILUvN=`iYcX^^Ts|7Z16nW>;_{1d>yPTW%%#W&&KnQ)0$by@a5SK^0gH8&udN!39%MP5R0IqZRVA{#-wCT%?Ns~9 z)70vCvK3QM#U&i`&V#*`x<{Vxd7+j5`1?d9iZE4mCDzo+@2*Ny!=j*4HG%R_nun+8 z+r~;^tB;Tro`f0i3}GE{`(L=;sluDgMwvd>0ZJwAf}(o8hz%F9zAheP%{-GBD5>8P z?+ZG2?`h(kHsX1J)Do4*w-bhDQ=Ia=Wja zYtglHfApnQazc+iW5(s%prDbXetD_um%aAWPZ%0TPyWFL&2`Fw{l_W+m<02kJxOJL}Xm`y*;EOs&2(|RA z;jUYRxV9__?^nZKyHrnRIh#0fV(hPR@TPbc@;W^rZF2uu6P7fQI`z`!jqnyKsle@4 zK=N3CfYmai>f2FJ^X?cvo_|a>RBhq30$C>kAadO+Kc+_tw0ejjpb1!pZS?5kny5|c z#csqgNsA4WIT4crcR<$PvM(?5^WP!cUYu_}vVJ0-dgS}907ZORha!j8w7G9|Cg<6bxuO`@ve3X)ZP_sL*F`JMe!?%JZ3~c?``hMPS$U~msTH&9X zeRVZc@sf?AOt~Dg{Qk~z`-5f@-;4MaJ_-f2hDRP^1 zKInkH6rr%jCgJ8eB$BZ^%Rw6#0M6{io*a{QiIbcLd_a1$mJx-;VkTypy84tMfDrlG zUoq}O%~#|s>}f4Yz&?vHtX_>NlT9h*qz~Ab`C|>|Pf0;|*DEk{lVkLwd)4XXD#|eT z7e<4lgQXK~bns%f{YhbpFO>f6$D(O41N}fNt>vN2s#$fSj)n%~s&^Z`i;+)GRpND> z{6T|{IDIllC9%eCo2DahJ+d>R=Xl5q&>%nu#cmaAmVmvhEUE#6@h9501XF z^|r*ZQi?VR*{|%0?5He_J*l|TG?Dh!tuG6!5CEwgLO4D3EIGdEbjGj_fE_O;c3HcP z$A~^3lbejRMugFL5&>VoVgzwV$EGQpUlM`6J z^`({QB#-t>2%w?UA`qcq657`j_d244<-zGAs(ed$Py7Sl$cCAyBZlnEays7y0 zi8|JuI`*iYg!qK2ky9x8Hn4a@0O*QWP=E6M;g_ioI=(66Eg6`@Ee-@=E_>M}_}rmSKX)0h4pfug-laI*({hT#xZWg6UM3cAj&fEk z4%CJ_;bTmnWVXloa%QQ*CA4L{jv_TjeHR`)Gtx%ilNu;Ol@3$HxJqrX%K7kAGilFC zwl&0x1{R+(fwKBO`HmHdRJke7NAbk11dG#dwZlz>;vEVTCOIStQoF&=o~+g>YR7m}k$Mc3)7ui^6J=(#>;((0An>2~tyq3f0e3vQwy>^JW@pheXH zgUH~c%9lqw?L!4|!feHQZ!93AFC#5_ewh`L|KjQq*C`99B#3I&D;lZQVCaNC+DcHZ z)XuBm&MXvmOO$Kb{Gco9+Y@IxoB3WoedBBV&u>CGCf9u?H2xxnDO7PSQ|ZjN8%#XU z4tlHiifN%@$0npQkE7M>UAms3UI|f+c8J$L>clBqsoiG` z&FvevmP~E+dP{Uo=8YN0BISIrNAyNCYYKFuTlL{X^9p#EvZADqB_4XMN#F zj#y+9u`!Lx5hG(*73UTe=XERJy8JfwjGG+k$oOS&sF5?3pn?*hr*`CHOM&a-97LR# zLwieuP2KgY6K6GSJ1gR6T17_O)R8)ezq;hAdJ>dR?h*yP&YMTqi2Ps^)o(l+_A%fn zO_HE62Xp7T;|NCWFvL``aIMvg#WTXp#EQxiZFC0o(entCyzUuVdJn+}i@i^dOUMkX=C68Tet#kN#X){c%Vh)2~ZZj$e=G;_Yd-u3tVdsOA>; z-0$W6oY`-)|LD=cKz25qrUDbMP+f3wRK%;B;h}l&bB^co$cR|-y5=TpE@t0?bGB@r>~I8 zm=3`2f>qyDv)mt~VI&p#O7{_fi7rhw{%vV64Y}DMOmkRgzGOf;cKGuRq{=4w+H3fa z6M;jqU!BG~Fn5bR_p8Xl>#Jc4LoxJz?TZq@2jzvDDo(X6&aS57!O^E`M%sOujaW^W zG!rgqlE{qfi#yJrcZIzl`9jx3h%_|o@RJm40GQPhlhh58scHl~hSil(+i_5C$yRC* zOgLZFS$fZL{ZW;4n#mi+k?J+Lm*dY`Wc4m%R>*sX&p)XxD-yjV#W^s)D*!=5n-K~S<@Vna-ph*PlGWbT>*bRCtToQGn;0W9}F@0vP0>ZrfA7PGHuA0ff0 z5XLaYLCEi5O@ukg1~egg1Q62k-?)-q-G4{RAJI3)1Rm5{9^!ZM)izI;t<|`J*!PAy zg#3DYYCjh-7yq&8? z0IIRVWU{k!-@q{(y9@&~Xu1N8iHp!B?QM+>dC?PU2n^5ZHt^zI)(*JIsSDt`dYxbd z`9!^3FR|~ysQcFhIET8}$2392-$d4cr_mqpe@c}8O&l{BB5_2q<|dn48D=v_kt@?> zV|(_{I)Mi^V6~u;oB4M3ef5e9hz-{QU0nH_v1JUl1zBp#5D{OlL31A7*dFG#Zh_oWhaKXxGGt{Otqp*CW*Gi{nA5$``RLz8kL~u=hph z+lh}4kT{^Rk~%O}axfLW1@zCz6+`iH!QD38ugft~oEf@Xmz}9x>Wc(-_te5)YZN6j zzZIlqx@(Fbp>W7N%&#TgJIv9u&k?h>##23}GsY&dg|dA;K7_s}418l%UZ)AqE46?o zzCj`r-rY(hYYQ&@p@=twC~meBKni$Lz~aXcl?dt?a|}`N`;=A#wf$h)-5Qm2R6Y}v4IeITlq<-u$a@PKr`eTVmu^ifqL?~QA-qIpRe zZ7%C)6+oJgquHR;ZOzAx1&}B90pZY?gNYN@U zary^=`&&1E>V<=Qr0Rx|Rh?|^H)P(icpKldRz%OB58dp3U5O(>{Lm!L@}5=Iq?4t{ zsKw(2*`e4>yTP8kv4`TROtz-UOWWx0J-44oyKX1u)@pjM#>`~(9gYb{*&MhwT%@MhyPKIk0pHLWw%Z7&PEawgiB>GQ+& z-SE=!62W1^Jo6JiZmAnU{@3=$`s;y-0?D$MqNaU;JEXWocXFFBcAw3!{94=y6lnI+j=loakSz(BH1yi`;5)rg2fJW={^cI^gqcJERD*~EeQ5HJgLW}KzSAFWelrxPYQ&7G_~(JaDTd}D7kI@ z82RVQ*+v#I07HBT$ZOh%4Q&lm0pb>NK~_^g53}w}utKQ@YD?AgA|E+S{fMjzQoWjy z=&-LqN6NPeo_BYWV7LR~jXe+zWBTVd2nsQqlj~T51DqiHb7z&{c8j{ix@*2!H|Oo| z%%uw%nltb3=M~L4UwP-k7?-|ar0Hq(f1g%)W^;W88jgkSF*WnddS^dVb=Nsvb6>|+ ziK!o|CEbL=g_d;axYoRQis>Tx9S+p!e?yD@k_{CE!~|OaVMKiaqwtsozXuG*I8wQ< zSHM)ZG|BN+)#ELpra5VCz0#0a2v0%_{_G3Qe%SJNS6_4N+Z#!PDZc>=bmbJ}u?^iH zCp=QYmc=~$BA$oNc*1sowbrdTWqDji{3@FGKH(eHd-Kn3rRsMO>MKNF6JpzW9yegg zjPrxmTf_OQRjm zQP6{!wdPrKGp<|Rv;HAMtWzv7v~c&@w)Q5vJd_YoJQXA8pIMz4v47j zm3LV8y-|5iX6UCyq5gRFu|*AAhR%0aWv7$p{ah^rZ`YQCt4qszNrp2RbZ}g1<}Q^f z`FrVMiSzQUPx62s-%qTBA}7jqtBHD?qeC`EiS@h))XCv@&R9EM|8NlLNK+%F@4&47 z;3TM#c$=TNAmxI}ln9PV=yD@zOHz~_3JP6VE(`e8MxL)iGte5CKAW0GLZvGe&R%Z$ z3zF%HfAFBO%#AYU=Pth3)0Uq7)=nC_-VG1R@jf3zmFm_9Yu}X#0&h`)9W7PJ2*kWg zjOqcQXTH{HYsA=SU6e$wdj4@q&V5Y2@A%j&@!#u{@PkM=4eu*9i6%9fbp>~*WGVVP z$Y0GZ+ucWR0DI4rn9c2PGMJv!$k_HJPA<@@8*0YY7uaxG{QM@~U^L6h-z_er9T<`l z?eY5F1-mS)X!24mN!-xv^iJ5oOv5{;)gc|c8s1Al!cA}y$QYN@d+s3V{L{7w>cZ^9 zsO4~nQA(kiAxCv9!Qwyq&qn+2&TGAL(tf3qoM`to+Tf3ny+*gZ$jP-^(GqO(4;eM( z4;Y(wDE+ZKXz-Sm^r!LEtDu1RX|zq}*{bc<3hlFOj*u8fEe*=On25ydFD2ur7Y`-R zn1lE0X641RBr`wBJ`e|-v>964pj?zb*E@+Evjs2pG=DV}-_n<>j(|#r#dNc^Aed!r zXbD~U_kCi%hTe?Z8Roj6y~IP|A8C<_@$nQ4S@(Xrl**UJQ@);x>=wa!63Mb_rKE!U zPZH`&#%nh{2lB23v5o*`-KpW%?P74Y*@a8|0^d)lm|x8<7WIzA#{Y1_bBP|GF$Pdc zR62ZD?>_zJ(0p^n61Y9Ms)s`*KZ<$YVA~Qic?3@ijZ7GHq01*rABut^ox5Ckt(ctN zEe)9*u_j!GbuMANV>2^vSj!^!prpSjQ9 zf$L8gQQv80!!Aegt@m2TuRfWum%3jyBR`4ea;`kMqep>{O0}^qB4`+v-j?G@NVfd` z6<^Lq9jD+qlut0G5OFjS8GC8)3UXQRz*TCP#-~F^y@h(1Nl=GDq}b%yP0#c54{7U^ zCVt}u?wH=WT3c0Wri=NCRpLg5+RnwwG#5%7MyOYSe!?q5VyQ3uK1e&`$0TSK5-?@c z0~SuOQH{IhEHHZ=BScr~@p0HK%Ev!f)@EE|+|3{C)0%*b+iG>ciABp79xZ_dD?gL{6n#v{ z!AZcHHoD)qTbthDZXm6fKA!bD>xpFn$1C!oqZ0@yX2RJuM=HgZUwqd-Z=HX-$-5t% zNyA0Q<^>;p@r@DzGwbsC*>jR1-e?VG8=2shUdeGaIClZhw8n5P>?sg|C5H$;`Q<^g zCf^%1Ush+LNd_MP-g^?Y_|ML_AF=SZF%76QX?wIRZS(#rp4ad-ln%!J!-o=#o-`5W zz^F|4j(hL0JtmRW?N}PweBB&o<5&Y{Gh&CN^wr+^`C143-0Z5S8N{q6?;3K)YT{zq zonMy6#M3z7wS!oMxv$lyzR)k)o%6OrGBo5MmPEO#U|}}8!0SVj{%)z+6$Y{AoZM4k zW&E~Gve)%V_%foM$k?yvECMi=l)%FpNMYZzT+Wgn+2_X*nUv1PngW2wo>7<2r6 zPqM6}_l2$`O7&_f&TWjYKQ+cr?~c(5SIa7LWvOYm!)%a>pQ}*NcK5W8UsZP{h->I) zL}m|gCIFjp(dKP!Bbq(0oRg;;_(g^>5w?SxsKrqRWdxt@222`R7$QbKqTi&f^*7_g zW|uABKKr*&ShDnc?C1FB?z3Vdw3HDFIlkYBNg}il;imPj#>F4lx|sFkHo-i#bGZW?y|vf1k{b@m3_UB3V!E!QTP@vDGmm0RUWH z4OaFi8e?nR;nz~#bp_q9Stj00 zi=`+EuK^rzlv&{e9F>&7a(L|5Gv;@h7O55)A{hw6bjA z;@S#Bxw}?0W4TpBoE&8VME8}!u3&nRgIq+RxbO?&H#|zh@VBoW%4lGbv@vab5f*R0 zo0!izWIEL}ZvSCTDBZ9BVE!cZ0pCWn_hwpvnLcF{eRp~<%**gzlD;EXfr|9Ji*iz1 zg=Wi>0i)bVPgr7gzCAfEia+)5+#lSz1C*h%genYDyf zFX-CyZnclNc1ckZXJpzZiBnQ%J~1_@J@gV5{3c17Ly6O0s(IN!#Gh=$E6`Ex5oeib zGhKF^w>wSG%R_ANwqLwdZd|g2SzG6+pp)u$OZIu2e3fb3tQXB9M(W@Fx_j4Dpo`WA zwGwzoVS^=u0mmm+h9rigS(6iKPp%JNJQOzhn}NrS6EQ@N2<&n(J18|LsxX0rPcysV zL6-&VFoRWo>N&2U3YFmVrj=waUCex?%8Z-5=iMLNG%6JRe){LTbz`dxVyO4_37}NIx#bq?hgy+&;kB(j4%X`R zA$B8eBSK83MnW5CW3dk_*ACwDtaAlgCSwypouMJK?C}9pqDdHR-mP>CCaH78W*5|`VQcyU*GEKe1ar-FRoBPlWh)j`;PnaM})fQL4WkkCmRVLZ6# z>;PZjzFRK!=1}fHD?(fu+XKm(M)7AUW>B&S%;0$A@(Uj*dVC`P;*XX!ZN_VTzUDTR z6a}Zq`Pd!L2M7g- zT~yH;gMoe*vX@1&u%4s!M0Fy1O`g^vMM|SL(9h>MF1O7|h~9B8p0T5Kw!qA6*FS8~ z*HS#P-5|HgyaG`Zp6hn(&4J_$fUx!XS5$6}80Uo12Cub`+K%DYmmL{;%!kin%JsHL z?8ZOU*Rab300r#~J@s39{TV1qYu9XhD24s)rHaPZ#$bmy$FbVE;^szUw3VJy5BRf% z+BZ)EjZ>XB#_~)sg(fc?Gkc|QE`=#V8kX%->vmDiI^vaEA|%Mc+qJW@W-T1FD0y+Z zLyY}P+=P|coqBfZ4?2Fyzgba-7=s9B%HF0iy8tuZF051jDm2?t^$k8zf0J#0tT3Vn z1S}vMQ?-5Gft4;|3B8LyA#?;6;`u*^RGc!VfRV#e_P*=!3M9h_D&Hp-t(C)2#t9`z z>Mg50eYe65D;tf){`&Zy(Z-tw0&juan%tFJyUiu?O_A~vA@m&pci z45M=ezQ_yKuMd4X=!JS5@nObl#PryUfv^=$V`?8l^yS`I9w`63PIb4U@LZ2}QMBXP zj==EmK%F7ZbKNVdTy^w2lx}WBW@rrh9|u7sX5K?5M+Uvlf;jeOttxIeUwLhUqaWXh zLXCL%Z$A1ZY+;?}&@&e*G4#KQ-EIOFj-!y5I0|J@eZFl;g2y!2KJ{q-sze(IQott# zLL1yu(=t0KMfLi(K4ff*kyX`x|0z-sJq=lC!{5y1s5aD-9~3O+SB6$+m4^1L!NA5i zrNBm77%_ZQfv4)?PYiJow6ivBO&Mo?G2kCWBorsnc1Hg8BrD|;X<-KY4Gog7`sjjtNr{_S|K&P~b#m~XSv=uo;F0Z1eaxftzk-}UZTyUJZz_lC^UX4%Ky{0I;rsY_;KB%# zeG+QA=csj05ux8oKwo;36scM8;QZej=-rR!?IZjIR-1IkYAHbsI&khVO*pO>pcj5L z>=yo@Of1>Ejz~%ky`D<_zlX@D_H_S1B1V;>(&eY1Lbc94)?~JrmPa$bcRJlGIkmkn zEm0Y|jwLqM``a}(J(OVKK2?V*~!}Xf!(r*#pC~o zz3KKDes~?OibM7(sgw2a$6)H^V2(=nu8JrwCV212zo}@+*p%?W9IK9KWG1se#lf{ zkjj#5=-I4EwngQx21WzHKoGy%A5C4R)Mmscs<&_r?i`-CG}^bH_qN3*z0$F!2|4}o zxDoib;!)wHZD_hQOXPmCW3d*|JWhsf@*kV5n%cJG?1MIgjJW(JTc{byz4Xu^kMAyl zZBeTF1bH`o!8OlwNhbR#lJQ9TR~-S3ucwCO9r-hHio8fs4O%_W9R;NvHF?m}|0C?q z!g=c~@15HT44CiN#-qz^l}1&I!mELCAfNIt_UOa#nwNERDR?Kyhp4Y}`2rO$Ef|x$ zb>X=B++&4i%1fnM4fc;UZKc0;#jNXp^x}VLK4c1dv_e-UL(QOxiSkNA)uAu{cGjZ0%kmLlCJF%t)=CEB(3(3M1m?} z&Om?{{rRJR5dK(SM!q?)-doJjfjTdS&=%dxImAEta!ox7=-{uSP>xd0UGu zCL$~E!0eh;S0?m**!z8}j%J>fcGTDDhtwF7b;cvNI|HEQuc3t$j?M$~HCqG5P>5e~lQfuM;tch~Q;g$szbTAEKq9~!D=L&{Rz2kA2P z<=2qaCI#*2niElbx+BF;ECk|D|&qguE*u$UaHR z>aK0Uf|?Vu)DZUgAeYuF?A?D26j(m*?(-ufnc&M7E%M1xd>W#O88WtSpO_Z7DkF=P z$Y$8wtAFvN;F$N376l`<_NtkC<2o7ErM?wunBu&qy`&Fp$>T}?mB;_HsZQ_=1C?ju z%Zyp_R6@(xa=e3)uiR!zm&QTGr-yoflH)sKLW+_lCMfl+bg7{^QP7kYhS__QZEV_j z5d1&y!Xb*!|BuJR=XIP(7H!pU1Iqa?ZYug(56;zl{r9R&4b|pxD5q`9^Eb2d{d+vj z*7j!1jg#@yDaDIw&6yRWIHQ9Z{VB!@?ElE81i$=u&{Vt3aokBV`sc%>AYa#;vTgO3 zlD~T{6*gayBR!OXMkts=pOXKYks{b)nek`wB7YxInX0a8sZ}%$Y==qf)#CRTc>hkJ z%!pxb>!2!+x~QFAe#RKWFJNdqZe<)ynC5|4v&&ib%Fk^o{~uLn;n39j|8czrN()lb z2uO@>5D*Y)lpb9hjg){iihy)(v`9+BMz?f~k{FB*2hvIk2>g!UEBD^t{(!S{p7WgN z)30}@YgL|0Qh(u-Dk~*UcHad!eW?gxuRIc5cN)+msw>?GC>ENypWglhoiXbG5T@+9c+Xvw9^V3c!~CIJQJS*XZEwryrNAsf;8mRWPIsDmiaix z55D_%WHwE0FpFO2zA_KLmQK!w(wCe3NzZHe2fYI*A?6^fVNzKlYO&t z)B++{Qd2wBjng$e-g*a1PoChW%IF~Uo`B*XGJu#FYb1f34!Ip$v*NTy;j_|$r`kFe zzySGgzkmiZnpM({P#IH3;GfeBNdrvt%h@je>ZUEp3h7(leeM_#KBi_J?yM;FCPpE< z$i=Pao4oe1$xr^pg;>SPp6;?Yb{Fz$9>z(K-{!mvALxTaPe5S#;Vwh{5#!YcO>Sj?I(%y$H zhO+e-Q$g$J^_7IoUyze6YiYyZL%lK;*YCCAoFD4tK~lfs(*Iq z;!rFNFlz5&tvs29j2=I>{KCOX7&Maa@Im7p*sq}KSH)cyN7SxrfgN5JbpF<7V@OMn zYm^ehSX<}yXXiG=#vrZ=X^#g$Rp4x@r$1EcAZu@K;d~A+=67lVEBIrHDB$(f0{a(r zZqYygC`!v_S1kMz0I}pzrM&!la@5iLo8WRNMATOP^IUw^_%+>fD?>E2*}jpx!iGyl z*`Tg_PnqdpV8`CM5w2e2o-C<8R>K@A9|rvz^Bd#q@kT4y$TvpvXv+DlS3!zDk@xl| z#DJ!($?Wd|(VF!{{Xa9|>2#0nR2oJ~4Qm@xZhuJ!tV8+73k(+rnL=4beEZ2G!6LK~ za%kqD>J|=0`?#Oq)F)BX!}dlC$uJZ3;2IQO*rbVTw);q)OVT=nFYW)HbVIJ72p zT;DcP%`ty*R7(U6M~Oy7Bbs9a*A55&tgiDZuQ`auY&0(04XYRfApFAVHZ`^Sz`{5u zF*H^WTyRo0&1STqFjCnRJX5J%MaN=}xn88zn59wp;tPwEM47^1(O$x~-@~_iInt*& zSPK6oihhn4pPO&yjqNnye!&a<Q!xwPj!76_9vuPPwe_9`26zcdG*cs8Q$-WAcL3aM>r9 zaj{QWttZPbHp&UH@g#$U2B(x**c;bIT`qC#EK+AL?78n-hd&JCz{@0g^1V+z^do1efp9+=xZyBF(4Au*cHf$XDb3_D4Y#VWxgVST}Pt z!5h1KW%)rRIP;x+!H7b%VEgHkGnsf#%w^ zqG|_|)|NCvw;bGJG3r&4gPEdicTb=^{++?N3ndx)3YNe% zIFj7;dj4kz1y+Uu^j|vr)j|vdzHX2xYX>Y+uOYLT3?{EzOx2-*cHJA?!ZwVvxeXkY zzFB2Z5s2#No}<;(n{K#~>pe{VKHqRW5WS9}t#Mv3^lkU<%iv*&E)^J4*%5Tql1+*2 zJ=Bsu)VgwWh8`91;y+3m(9*Cg+>op9Wri!U39LrU849U@^U#y_`FlgKC?m>7S{KuL2`B=$w?Xy2P0o@B zs4BM!83uWX0!zlG2k3(IN(>fLWk0Qpe>0Gt?rPhF0JH?WD8O||R;1A}80^V5+#+HEI9WMwb?@4f6{CPs2GN7;lhFuAT zPkdU97pn-!m3M^Q*xLHqdGer9uux!TMswrtHwPN^YhjijBw1bXkFSEEbmo4#V#f14 zxPhIkfVKQZa)J1mVy5P8{Xs_RbjUsFeDhfvih=gmR^}IgA>-2mQOY?b>1(p*IkJJA zN^=6SvGpu3ML(zTPpJo1AEe)3F%v2%8J)8v>5g8Z8*9k#tOj&QY`?uw`lR&t(qBu? ze&$Hv{o*|&iQD+WLH3=^q~ZZVRsusQ|3u>uDS3rwL+=G5^WJ&*P5l3N6>Ie}7TUivd(qgy@9Y5cnkQ7eT zf_vT9%V_|bEV}J2e3_WWH4+ulaXIv#xq+hJ6BfdNveKv#3#q0Ryo2VI% z=)3ZhU*deX(Cxr!-5+y46%(b*nd!UNR}ItcmpuC2gozc*vP}B8R%`vi%gP4)@lT58 zS~|^ykg$zhjMS-(wT4kp0SlMX?P5ubrqrJ>*RE&X<@0u29X7iAy+)AD9No%F;bfNb zl3cS3<|62I$BLSiG*HfLWmZ~V1L-$rw%k^@p@)dmyswy5lk<}7o0WUZQvlO+GQY57 zuOJV$aMrvq(~W(SK)4;|__{;E`CjooK*VHk_)0X>Fd9lk0f^ zW%6s`lGXvC$~f};8IKZ%EvS^G-@uInAJWe0Dj|O=yQiU z_h>R`zyz+qP|NwQ0!{JbqbW=5wo|}a`zy7M!aq@)GZL(L$?!hq+4$s^w+_89DSQDC zmKpuTdtq+8!>XdrU;berioH?SVm&#bWIx!#5_@fqb<@=lwVJ{Hu0s&djCx1qH~-`T z3%uuPc5){l504Q{)I(PVn!uqHMhU$a!CA1zkgP`|uueJ?iM&_Fbc!PX?X-$xnTX zm7xv~iPpIv0WNEMPu6yx9dgJMb)lSJW_7LjRM%-`B_mmFW~e&JU7k*Nb zm~I#gPdx`vR%#dl7YCaqDyEd3&8OOV6)~DBQ`EuVixWp_E!Wg2-T1atOixF7cgzF+ zye(&MFQ7WmV4dlADG&w3=J#dkjIyGI@1+ z%MCy7px4X^MSAed84eNSz1(GDBlvK$?2~88^QM0eFZv zAh|Kzy&hC;nb-5K9)S|90FaD{U^u_-Ks*?22g>mmu&N}B@(}Gri0??4{9) zM5O^t7kLa+@Pc?f(0g4*oe3j{=L>+lesQ)-Kj=m&!-;3{KsqKb@6R$=XBgOuzBdNc zFrt5qq_}pi@X{?$#Ye+(disq-H|I3S#iweX7r6OM`4>+{V)~mtR34jiErJmH`g3^Z z1NT3h*Aw@B1?6<^Ev9#UKmX0mk+Zd7pqP?DF}XK6`E44a(&i8H&DmrkZ~rmW*Q^t! zOAul`Oda#eTq;x|@9=Nv;oal3ygp#r_AG-NHRU2a9W&BqpxAmVb-Sz@*M!`tW~6J> z7|NJiIL>e7N|90=fFPQ9CL;bql+M-6?;wYsw!1@vMT31-*K^dIMP?HyV2zBpYl+#( zo{@6%OO~bWv|_oOs6rUSm+=2=vMHMT^g7)JBX7a^s%H;oCK|h$vp9APZziYJPd7C8 zb9g*bU6LlBW= zUa@mXx~oa3uZ59~iWq{=8A);q(_AQG8(mhq3uc~hAreK=zbASje#Pj9zk1}DranoZ zuQPU@D<3I`)RDg9^#(dTCIM=l-8N_^aPV{~m7R@A3qKJh|0LqVo|VTG6#lhW{aZ zo{H?X{`rH&Wc+14ZL0nkI=3ndo^Hj5jQia7&v*e6b{L-+_ljkteiNqk#ZAp zUm&^YC=({Bl&#)0;0YBFS!asORGt*70YDjJVolbnRN2qjR;*Yx_ojF{ykpVn$#n8>{tDNi*cN0^a+m2OAz)IOqnwW)8IB{9Cy-P~QN zk3l{WPOBlq`P5@KGX#*c(1qe!{Jo1+-}|2XyRvD(6j^0n42c=J{dtgLMvI#4P9!eW zn5^${Ps>gBCasHRs>+w1EBrmPKajbsi4QyUzL^=iJd)@V99NFtL+k4WHqV-LMEB$B ztx?;_tt<-4ZQEcximYOn7=k3C`O#8)aWPe++V#D^aY)&J{^zsZU7Qr;hGcmQ;Inu@ zzL@0T{{oC<%|@@bKSm!1b>xf@@;?-_a^QSguAQ_Fg}*eUb}zs$HyHOwg*r~H_cBJ@ z_+efsl>ai16B66TZdO#X2OOI;*ef_ECo2tvUy~iqxm*W9j&i+siTLp#`0%-nmfwca zx{E~zKG6Sp@@~8y*@@d^RaxG7ds?@&7;4btOgwGwG+YSH!|x9JEP4A=aG|EMT23d) z-}h}M35>?=_2)9mvt&mY2Jxxn!TGojirGFzuD{$V!uN*jy-+5a>EB3+=@HlL>CbQK z@IbMsmuaC2fW`TfbwQ|IyBX!$yRF=_&(K5}m3boobbr7^F^S#TjNrGSH47i}Bf4 zTzc~>&(0X554Y&PUGuB0p*>C!dhGT-0B?f`^&0?d*a8MQ&D}N#MLlQ`PShJxe@5DO z4c(=2lbdV*dk4`!s%s^bVV0GIr{HUm#lq2;VQTzJ}GQZqg;zY?Y zzh<exzPnz|Vxe-jI|> zg5@>YVI-(HUaS7pB=v4Wp)V>Dg)gd##_NMrJtzD=rcIkOK1%5ap0I&znUV^^xr*qa zMto+c;`QX>i*{p8KG}J>9=G2=Ge&#{cjtbe}MD1>0Xl)Y`*t!7Vtc3Q-Ax^s(+Oz#W%zuXhlPvy%}^i{W{fhQ<1QxPuir1{cceOVo+atCbXI z-i7>^s9N-d)qu1INVlpAoU_eZ)^lP*@KRTQfXJQ`AI~U-yz|-dMBg5OLFJ+Nv#QsozymVmb!@`Kc`$e1Iu>(>{*h|y z?q-FEld7_)Ev{%_Y!DgW7f)wu(?*3;v;=h47rf2m2<{MXzB(7KT@xmP#_CAgY?yln z6HLcbRpdWVj)qr1xyWOI)$3zDB2^Q08g7-Ul}qS>np*LWr&ZfH$%mw;owscOf@p@i zEb)=pMA|9;e=C9?WLP2a)O9&O+DS7=KQi{>3so6Yn!{F zfJb$#VL_!~Qhl@17M$g%^Kh!bcWgJUg=~)djH@pYc-c{>>E%&vcl*C+T7Mh-V8XKuP9 zRTK{ibU2ngnf`zH)!lVCM2CC2* z*0Ei$*n`EXHp~jMLJt!Dy)M=3+bQk{ZLOY}OrS{sQ2sG&J*>flWN#>D@zm#(JQs(( z$L*cJg)ncgd&}PwPJpLgQ(H3T`_M7PBIBm!$AFT`faAu6W+=`giu*leNR`2drTag{ z=AgT8917U9!=Qi>JjlQEtvr&cDcrp_oun^ZtgmG0>u5AQ+Z_QS?NlCMMAv#G9f9ZG z?+uL0m{nO;-q)C`jKBa#%!pQa< zk@SRc!`I)evPKAAp1yXrBap~>(gigw0sRW`)W6Fu!WeQzyRvOsuMXuCE8jxOc#(7<^04QA>J z+^1g-3JO8|sLq(8UJVd9GSmvajT||2y|eDQ2L6!MfHE)(P{O$vGfBJcur@8De*q@# z-e@}lz_QMq8RCY^Ojl8j=%-#KE6+5ofd+kCCpNLsGEFb2H33^=L%Qc@hrA?=4BDqJ zZ(G%2PM|;aV}39bTPbyIPA3iLS~nk$`{yEhdZXl<&l|1gDS zk3oUzoH7nI%TaAuevy}+3MuMY8PIG~r9RXBmRb#7zrkQ{$M_%iGteCtY+f|JR1k?I zY_zM1?(q%UMjYd;!O}#IUvQGYhiVjCAL=gQmxu- zn}ZKUBGSj7(E6soCq`YprA4EWU{Uhph~T|RbNc$D2OBL#_dh*FFvH!o>LGn%=v3Wk zWzd|3Rdj_Ey8|MGUx*8XZV=oNuAL=wd;RM-k-hWO`Cqr>wiXM#KUa?eMbYJpU80OQ>^i@*@Z6Y(;;*58Fb(yfmITRxu+(g3 z#{GtW6hzWVnWJqfm!|-~z%34zDn#D-TC{;_w?!RAb;6h)6|}#m6VEsN{WUiNXst%Q zOdGhhHq{w2-96i{>p2}<=@D4ngcQJ=lTEsMHP@z8>Ab$)TbETM!d(LoGTMt->X_Q4 zYLE<^Hm54&_xG~9>7gbT3>3FBCAywD@~gS;BL}`H%h6Did8%(UjXw#4h=1#4A{CgZ zxLU%`R&EP^$A>}zfN@F>v&>N}`&~=VhP!UNFI49-RB?L7!w{f}s$zDLl)>>?i=42U z?%>pcs)sF%dIQr#GmcdmcQ(u2^VDAFM6mq1=;u|wiLO!lOk4RuZL%>?%+}G?kJ39^ zyK8SwYf(mb?Dw?EhFzg6vbIpS*shGai4}Gu9|3aslaZ9kKhA+=W6Bxvqsf%;)x;0I~m#a7;Nw z)^Fc?_$5cNL%$@ed5Om(${LLxi42;n=bmz4wWu-Te4sYD{kw(h9KumcW2=tNa}|uy zc_F+8&S zuf{%UhC%TqIa~KX`;)dmFbNUUiC>>c1bFy`W|hKp8P`?W?9o+qUH)C_4eg(Tife;2 z$};f2L9X%@&Qg^9AlUQW<>dD?{8{`e#bA7w;#NRFfOtPIOPYLB=(!%fH(J{(FL_wZ zBNPT9w725JTa9T#Am6>rJj<~q=^byohI19R0;(mn5Z7q6SEUZP@CP!_eD!wN#0Kgp zZ@~%lG3>ga1P3Dveb(d+3;op$PB}{ZF~1uum^p{)49rRhA-w33&K<*7$nh|*jlxeR zVYmL%iV(ycJC{Kpb358KL5F}{1Q_k-lB2;>NWN>@MPR}b27%r+tci<@7(j7pS*r{a zQFoVyxG}$9kHN-N6W(!fi34id0ZMkbfW5>5t@)j#7}d zzFuFtyzWuz+8iJZhQ^|j+!;7>W>e>08m_%DrxxgPW;CR51oo=vs|YG-w+T*k~O(tWg|6SmEyM zo+Wbs*}<$g`J)J@wFKQFk;*)X#20WBN98w|JYpbGadlcRDd=RZzoBYrHp?|jE3bAY z{j-FA!xJ=Gg0%OW#nrB>F#n2=6yJC-_E9F-1M)y~cOOlI^e3{OQk-#>OM=ElMViUk z=1dyHZ9|sTxE>FQ7aPv8?0&cL+JzL}NEC&8`1Zs8aXP6(fa=Ed3)3{=BiC3Z&i#nVl~e$4G%D_OygfQafG1VKWy`W#)odOwYzX5;byz)v_OHPcjjWuHIy8j0 zZgJmZ3O$|T7j$-o;@7|_yyBG`X|Pf8$k zH4B^4dGj2*feHHvz7NN6^`V+m_awYGQjwcNXIIFPV{qH&KEv| z84uB_eC3AkaC1sYMky$~(U?TBmEK23nK8$I>H3p^yJofz*0f;PHV_-lo0VKWIr`G( z`kL2P6TzK^jx=NEa9|7#K-ux6y@0N`u{e5e8|MuPFWd_=-(kW-8E(D85NKD*ab;-B zw3x-%^?~9is4pv`^hGVq%-^} zQhfd$vdEA?z-vv}Ei@QThK=~6(C?Y<5Dv*Ncc+SAyAOUg*rRO>nP}Z0zLn-r&s?Vj6clavmEwl zrx5mz+g0tZNdglX5|^hAmvZ_VRDa!}$pXa)?4pU3)7+|R;)|+wO}!~Knx~aLNg&`$zFvaDtAE^ij%R4JVJ9}Q`RK_GpW4&^922e-s8og4q@WU*KHB+0 zSW=J`W@I;|hI6nR4f;~;yQ)Ef%1<364^JIduUhZk|RwA^}4#xfQ+=djzIJts_DU~s;Nr=Zwywm zFYmf_O+tbfWQi3}3mx*PQ@MWbs9!luF!oWcOA&c~$*PcYQd*E`fQ@cQEyh5orQ(IziTz3S{X zh)yvP4xqO~^FTXMUwvI&?GsY8qGg~9@r7SkUJSqX{7o=<(*7?*!7xpjWgf1D!FQkl zXb5%i*=#D|2eeFNO2y`$ga381o=`yw-{j!yWauzND|5KjDvuQz5GIFy_bKxi@>A1Q zxBF3=D2cY?9g8$q+q9R`*ApS9-m(K5fM(>4zx|d(?D@6$s)D7yOSAdkpqD#iK(mMq zppuR9CYmG?=*YN62U7~yoA{Ja^)NXFxL(J8KfAeWV>=dJUYDpLqPE~n+I-|3<8=g1 zk^n1B^bUDs9zL_XX;4*krGZ_c(r>{*#~X7`MXs0A zPrSZkckdg$qvYN7tNvKgM+HSMSUGIvh2o1Dx!C_Y?T`_s-fp)05@`%*y$qhIM&C!2 z+3D}|R`LdRWqhSeL*|gBc~Vvr5OO0qBBM%PLiOII;Vx!2EGz*1m$2j~VgI<zZ-Subc1`bTe&6H)74-}{qitey6Xe+=nav> zy5NIa;PCcLs3v=wrd~UA3m3w9wXrI`)ZKl@P^&6gm@ zSrb+C>^KY*?GknnO{PL0r6Vll!t%yjG21obhG>4&7a8JFqCc0aNMXjoNZzZ4E>CG6 z0PR0wX02gHx&~BKmcU3uO7rYbEZ{Rv+^u0q#Hcpcc9xut7=WikI{0+^n^2#f)56T} z4M-0-ctLJx60k(y`}eXZiZltl!lZ)@-mOn>>ub~Nw!fc1_P)z*VR}B$&o)Pk?&RYf z#4ojHPPDDVqLInAc0HDFoTKu%uOVcJR5r2qi}TtfvjYdv4BT`-jWjEbVW!dp~z8*R6#9HbMhiYMJ zhAFQ@`Ciq6{hGoc`?x5L#sRomzQG6$nn#ur@E@p34Lb@XGQ?f3)}w;z9c6xzY#3yT zuDC(NR30JoOBtY6Y{tw&*&|BSYV^t9A@bi~@A@y08#zbA>dzc_Cc*hY)0$ak@gpX2 z@>jpRckH9)yf%X!S9XiVBUK;KRwXn;F$VXvFn*5LX3|YYyb2@1GgO3O>9G^=e^` zmRG-UR$zj2Q0?>U+yt^euv;#w9ot9-y(}yAYlzBP~^pPWS2b?k`&B0;K4*1uM*n#C*Ore1>^IR zwx6<3CKLHdau-a%su%f-@wPYGUO^pV?3K;l?d!SV|Hm(TxHhGVH~LLhEDv9&NOt@u z;O_efn8=$2*gR)+CW!IzZwWqrzM;0mK;7*Y2CYdxsR|CJFtmiv9`X~)=D`YcM#s4e*I`~82^mW;<dBm~@mB97AnUe%_=ZlCx4QTt>XsM(s)Tk$CIbkdT zRo&F_Y8bLdoCr&l1+o+Ecxy$y^Y9wi_7fME0nbj?p07-s%+Z7DFBJaC-Usf#0i+-I zHn6N(_ml8-8^Tf@rTd$l)VYe2A`ihw;IY~bUp1QIwu^m5zJ>a6TmkJmskL}{>%g!T z)ZquNTvIOb&5HVgS0jMiw(*~R>i`$+O`T6nw`8iyHGiD{TLnzN%aZi-#sQSO@}42- z9Gk*nvX%V)lK{QdrWvRyPHAyqtZ2RqZR`Y$P@SK&=W1Im`Vtc&WjJwN28=8pysD0X z?&?G6E}=UW<{1-I!qX#96Z)Jps%>X%-@xT{MJi&|$SbFnDTFEiN^KmtKb}e08#FFn zEOBLC0|)af%}r4pX}#KM;vv!F%Z+w!z5f08gt5TDrG^1%zY$l8K(F#>b*d$Zj(df_ zKOc?R>ln%>8Ibv*G6%vjFA?we?)=k$d@ax|SR8y5r^5qG%z-)LRXS3o(eFT{10H&2 z(TF13s8vsm0g?2>iXq)amIPyy3UFvYzx&e_!sM<-(^Y78P9B2n;eVnUK&Z4N+%jmM z`No8UQHo`dPl**;h1foXQ~tGnmj$|%{8dSqmqG@o-|BX{jPQV@qr82am6U18gt0Z^ z9^M+y5`%y_Nd3ttQnRtE)iVp~TTZ^?qADJDkd4WmDbfU4DonLE3{;W*mE03@h+cQK z1z+kKxAjU|F#$>;HD&My<7RL7!elZioTTSf>+K?Ub_d6{sQd)2e=eDGvX|64TXa{) zf+~upIIJk8@GC>aiK`bBVZ-YdUTxPc*jx@MI@B5H(y*BQqL|MTC_v z$~P(Rnu-S!ciRDFRu?t9C7`?WKiN;w<2lcTf-S^2humDuo^n*<6S#9Nm|a&qW%oH( zQU+u$KIM4YtZWYCUfi+b8va{hQHGgQX{mTyBGi^K8u)Uu0{)jnN$LG_h_Yep*F5`& zOlLWWjOxmpj#_+Bn>&r49y|YNaXmgVzNOp4`e99!l@?`h>bC3rxZ~&6ZRb%SNay$T zoh$1o5FNlA<_$E0$*H^dOsLl5%vhwQ_!g#QR*BTN1Czj~zo2^Vn~xJ)aiMq;+ofX0 zG{tkcaN$3TB|7~0EHpsVj|*N8P-o&qIYBJi%F`jaDU;&t zH1#{ie*`DH6{}8`Gh4tH-%m1bAy#}Yb{0~@XaaIR&;L5Q{Nd|$5!?z+-dRo>+8@eX zn07bz!{&YQT{y03HJ;z=#_8987`+}L@P&u|@?pT58aB?!$L+c(`>f1SC+YK90n*;= zz7@0FcqwfZXU<+lCP|NS=_^564xGJOQADzIec!Wvd}vC`=fo#)6<#gtz-5U=XmZxq ziJ4phhkWvv>kw@UOof}k8=yh%f2$eD@@qce#3?9{^zo78f-tG)&z)Dq+IByKc`mx% zz7S;Lf4S^6)bq;7<*=S-t15o5aks@Dnpa?Yc8bDcQz||!y#$K!AJf|7Nl?q}U_a4! zm2B1NK%O^5Xw_bu%$6)>+rKP%fE&ra#KGUwaDOoqh!`vLtApp{b!jdA$WiwjSdXVv z88&6PN@lo3|DF{xBaI!iUmG^%Fg+`F!sq_*gvGzSad&?2G^OGr&t<5|?qGS+B{txa zXZu1Un7VW=n5Pwtj*33#v6k)e^g9diw0jpF^xkxO?eauGWcr-`^%)kn-CEOJr(++899d1|&^1863Td*!7}}bC3f_m>IjifXutf zgeHnHw^em57|W09YvP;B?Cm(-=!v`dI>;(CE8K|rc6|nHO`S1|sXBjg7@~fIq;KQR zfym2QN~=hCMkVQp>=b}h`QLIocgImO|5&N#@%3U3=aMtMpg)mtlF}wjOcyU+#7Lhe z1ecV$?~QCxK9A_la@zsOYR4sf$pPg?6*){77`~10AT)3S2?5Oa#jP*=7x!0ehA9uxokZ@8z!=t zP-=vH6>c~PISX~|(1{R=?%$z1sS%+SZ&g`aEv`J*6rPe%IexWMJ?o$Gh=}QasitcG z<0B$EI@dP;G@i6p z7@Z!0zfRgy63|;W#D~;Mc5@!EZyJb&Uv7AYd0EsCaWba`sRke;O2)+pp%@5)N#(*x zLWs0CJPEvUEqg$-Iv1TU&~U$MMRV=#-$P2y-Laxa15VN+z>t-1yuenJz?-$|<2n0% ze@Ein$Ihn9Z{gBPajHAjq4eG>&SN#67t47y3k&%uCN+7UYP}zH+$y z?zrHcOM*^#vbMr?DRMVtj-lvw%wiEzfRWK7uGp~97OWF~txoo2hf)Le($L3I z<$Eay?oFL_5s*~fE@YMgV$1Z+l#vBvtWI7Do@BAQeZ!S zx9E2Wu&HF=mjE9nMQ^xfp4BHB(dVL5hX@4biD^2^a$15Opu>3cc=) zmz$Sp6`59#2+5S7)0zIRwS7*JRi~hE(N=#w(v%xY@4Lc_AE&A=2rH&#O>iKay}S0s z|EXvrjV9x~?eyl6GuY4NsMSW6WtsGI;WO642P4w6tOPi^WG(gwBBES!x3qeit@4XSKsjeb;urOA}r9*}=^?{m$OsN62CcBL(>5 zUMF!gVfboNFFDf)g~`u-KnGZzlcb|%ZCCR3;z{eT6lyhw#n9O9gw;#>klSJfdLUqk{*jGU6XETat>{jZB0i9?}kED4dEZh zMby3^ad^&>h*o1NzJeS;7?60W=M>`&;rvKvrJ+YhN%X#J(6gf~}T&=$JX@NaKxu_SgM z5zWE&*m)b!WfXT!)A+svh z4L}nuoWBp4CRl!;gRXey1*um?f>-@*%w|j?QsyjMt}lFh9OBTj^kQ54avi4_W@qq< zs)GBbW2kjF;~!CGQMX^%$yUCG%Z7&`Gp!fPV0<4etd$!F8*r9!c?p?EbCx$5(D{GY z^!hq8Z*+|iWjO!yRFXbm>3OSxNljU4@mH8oDTO-45?unFwmhe!3)Z<&S`)8Qdx?_R?j^iK&DCpPVP zFGr#U`ndpArBsrFv#k5Le`QfSf>gja3-GIv#423q65#@&NvE3p@MAL$#427iDi>FI4d)Xu3{wf#C*WpG=Y zk`2pq=lI)25*7G5+MCf@=g!==)RksRJr}UJY>$#T`Otb?OH91@R71%raYt%@X1Mw` zDalaF{!D9L39e9)=z#t8A#z}TfH(~lqy|^D47sC7^Lc*5J@AWGo*2=;t%!B>{x!1MQ3bG|iJ`u2nsg*B-y z&fq0qD$hhr*teJSO_-)G3hwXi|1$%DV}q3eKObQMQ>)o{Id%N_F+_qkk;nH3Pk+G0 z`P$4m;2H+lKaW$R<-S}So~_vSn?cCml@3vHs%!mi$GAO7wo#LsH{Jz(?~*>ZBjt3b zJ7n3H=2;*829gN9%)H#)t@`oX;dtoDZrmLq(rR*%ba~!db><3P|3x3NX8Ln~NsO6r zuXW#Ydbi$#*#GSEwSNr}&Vp3B(_@3p-<_CAiSDNBW3Q7!q@E{gL^mq!;Od~1IVg4_ z95Y4p%7CCHW4LxwaZKDZ>K5bsu8N{JIkEnKyK{| zm=PdC%{(~n=5ri^zuleHSmOPRg^L9tiYef15dX?AdBC-xP3MbRuwhbU;Cq^)#&I68 zm2WOt>2x-sQ_3t)Fc0NCTLz|6gOE6^^%$M?f*iVB_!ah&;CATfy7* zqNOVF4~I4)WFUWSxx0ype#ba6Sr`Br1WR=yfP)6Yc?F62Wx9PH5X&;@ zzHs+L+OCfK4dy^5Dgv*k!6P&Y_Bf0Y1cBN&duqT_Lc#RY#3Llv!uO^fw(Kru^#9^B zxfJ;_XL7zyE2wa}b31j^+t$N!R&DS-!3b_nmNVEqF6yQCZG3q}Ir972ls6)y{(5rl zJZEFBF99a9`E}4|zu8--{8Z;~jr7L`7DW%F4x83ieHO&mW@$K{*xD=$7CaFGpc2w& z0-icR{ylj%&FQ=fdy<+85=sLD4)8&*?8lbose^V_Z(@^8 zZ&gj2_zYrxei85FH>#UF1|lLKZCuEJ)!)VFW>rq+TRdg@*-Sla7ekU0duf;Ja~!JQ zw>_l`9tUZs<1P7ZWaKRmHx2y!M5mg0GDBb9WSxK4mPX-wY*1Q^y5PrS@NU>pa)WVI zByZO{Z+g4eKh$&D(>|Op?@eB%CaZ=vd_?R7@_4gi+lnKu3 zxp>|R##OgB6n|-MURP{l!1&a;{9^*aH~Un~!yd%g2W4JKg$wj>U%%<4f*4XBXeS3= zlF9`0oi-nb2fM{eFWz{GjPP#RIs{5d2}P;rK8SO8r?0!Y1&LvGOgd!769DU;YI7wA zzfh(K);VP;kU!~raBfeDXD)NII4ObZGEY6wO1oNA$)I?&y!pt0t&+ot^k9<0$j^WA z4bFH*S-AAy-Vdb$mOz*}AU?Z&LA{;m{5&e;uTA?;FP;mM!DMZKb@C{iw`>z|6Zw4G zBgWug zZ5!Cb`LjvXv5?rWA2Hit@W+sE{!2+xEY}QWGIHOtSs|8S)fD=NKvnBlI4?Tn*ClWt1J*Gb`R_YUy1*2U6U>HLcHF3r$iSKt&(ofRmsi-=}ln)<&TrRt%H^B_RhF({@7{U6-If^d#z=ML&V=$ zHV>{N!$hmH;7r{zDwhSf^TfWZ{g{6$QZrwg%$ibVA)j8o5DqAHg#ro}C;e$U1*t8Y)?`YW0yq3GS}u()+SV@7 zEfhU3bp)x-OS*E7`~7RFy_&UY#x6=_Q&u_7<}ZJFvt08(i!q&{s5EIm_?8>>K!Z|h z(>1x7KbE-X!Q1&)dtdvA`E4b;--f^r7>a2--|p)j&g1IV&OyWOR!$#|+A}J|fM%O`b@w7Z{dqQLb-{0M}X018xlbZqO^w^%u%^A|Ln;VWf<_?(` zX_xve>EEo|&a5n6j#s|lA&X&YZrwoC?5$j~T^eHaUM?^?ab{@f1Q&fSv3A!HluikU zaQtk!n7k~kj(YsIRv4(_z2b>I*?#Zy zS_r5h2nYy>(kUQaVj$g&jTAF$=U4H#o|2+|{@Mu)VdAYJ=CeBM{Tzdr^F zx;@YRoclW0Irll&`S*IqBMZkOJiglqcqvDEmOXf=X(9|5pWw?0#AlBu-mK9t^ru)F zN=WiWs%D!#8VO%D8u);CB*^{f&ZI80H<_NRBsIAZZn<)Ov`M_dE|z1>8PkFYC+~h) z>XAOKCJ11p5!|t%;xxuep;)PCHR+)W@8b8-ltw<6TcHx&Iw&yqN1UKq^1%}#e6$%7 zUcE6@2-nN{1b)vryoh+1Kh9`f5gn^&^XanA=)d)qsyOY(*Rn`Hc&PDlVbOJt$#upd zm2<{@>a#hx`#^pPQWi0o{EyZ{LjUg=9u4@EW5n;D2-MVV5J@14|m zx*kV)-zJtVlxX`zkz3oT$x+PWY{TpWH%G($E52BaM(9d=S}oTLO=`mQ*pI-BNm?6$ zF0YIQF&+*Y;=ct}{QERh(fE)OWBK$ihBkRQ5H3ICwSUp&U1nB>5>oiE$n&0-NSnHW zc=Z^WM)6o*!M!m!C!%l@CtJ}em+V-gf7wMkG zu1e0Og|dgM9QKNFg@%!X;;QTvGa0wl0LF`JL9@p_TfSegmHT9VLu&R;-|+kHcAbX} zjTy9RW48Sf!oFj-@oZm8o_b*AL(?~T4Gb+6n3XGZ>}eZ-srQ)A??P+{Eg5(q8x61I z-nsHEBrAPj7Hoku=na@b(p48iFK<*>~ zCV+s!HiV}+`Nf>_vkB3}DMd*$r!CJ^Pv4~5C1GSq=$_{+cWzFRf#OTa^0Z1msRGk} zdJT%E!a4Ly82+ zKRJ^d-u^f}Uxpj2UY^rG$?7E%vV&{Y{sQIrG+a22l@M^aTqEBm={jU)kC8*%q(XFc zl1bb$QVg>**^3Uyy$Go8{w;(ql`jj~FHzpRG$ zvna9hROR3E^bg*h%D2_0*cQ!w&5Ar)&a<=faqZqX_hqAlEh!%aL8vCfT1KR=rb|eq zeHMM8Y`#%g8SYpLbZyp{t9;gmMEeN8_+}CF12ShuUS%-4033gIdAz$Az6jd<%9MHy z{Oi18))+Kwb&pz}m>`mm<{Fiy?MAz4ub=8a zVv)1jmrd}Lc|Ik&r*X(6)n^gVq2h6u)s zH>y20n|T+HNRyKf1m%3uk7D-579e?>0U-h6CO;Nz6pOM^+RWVlHtxJL{Iy#@m1QIP zbl&B-1-BP#25Iz=RhFccu7QiAEna;{{TOR;3qzt`_yj`I6F2W=nvgDPc5|Ry_@Cy7 zMtvdXh*;o$^JPS6MI*UXJ#~A5w+}@KBvA&x^H6&slYu~e&KWomc zzMMtk)46?x9EtvKe|)(3K=@3M;j||bH#|Zxa3HKSOLx2^5qKm2X^?T|=}Grwlq%>0 zt$A*=e=&Y?r7j|wT}xpoPXC}YDzuk*#lCznLM`JwAt#|*3@aS;vo1?X)~vmvPb*cf z*GjsVikQz_A8W#2HO#C*bXH|n_I%j2m?)jllq=xhVv~2xzml6ToU|-VWos_|nva74 za1%HI7|(zxLlWEbo$({wX4z8NoLfDlU>2HLw`%wC=l9pgC8F2YZph7|5dsY7cF=*7 z+0pdOLB9RYR0mr;bdDxRN_oH3%1g-#&z(kX1J5mVdF_PIQlrWeEm2*9(6AQBzJiM2 zr)``Gcy(dv%%P&9O~9WF9g{PWe7!a7S~65O^B`Mba}PLHgSk#S1mgUpj{RtipeK+& zkW#Ya^%%F^L#$u~=W>2@x)xYMMW|J1N$_OZ$G-W@XPK8`l}n>#g(&lEF6`YB8rI;f?4 zLF$Vy5VHB(@AK9R42<7wv4LpmMqVm)P)z>>=wJGZ<;VX@!_NrF8%I1h51KDk`0lbB zd#z`@+AI3z`qW~Rblnt&n$$VN&|lO`S&KKCwMa;v4XWccyv1|5&JiVXJnt6@I9U#2 z$i*yVj3q2!dHqGKcCV-}B(U7AdEIH{%Tj;LFS<~2VN~WgQPf>~By+b8;s)q!^cn;m z_UGei$t5or4useTo~3GV288gZ@F+<1k#yKeyfmzJfUdsb+tN7lI)`2>*Ig3t+LT1g zj08c~oyi-zHC5E{;X03o2 z4Gb-xg?ju*$u<1fNbIE9iIHOViLdAzU)}RPhxRE*0sYipecle+7yXWF%Eg9^XehQL zJ!;AG9x_M4rGyNOVW(w}feF&su%uDtAY@La0r{2-|t~KD)e>pkT!I;GR~Vq34!>Iay(zs)J(uONso$Cx6fo(BQ{D zc5}aJ&r9B+`LtNlx(RvwVe+I$Mnv>!gj^$65L7A6G>*GBQ2ThAw5zqBxum%ypv=r$ zznr{1O{9OK3&T1+)c=A6Fiy^d2-QD5F&{1>R~~Duf0u7>K3Pc(57A;-jHE5{VrTRH zMN;B2?mS;{KZd*K0mY$h56}Ab27Sv`)<&SQ+%szQQ!+vk_Ku{Zw?6$Q%A;)btCcsc z*-xMwMqm8j0|Gp}7w>$Xehx8tTjwndNl~jqtYn@pT97k;g1hit17r9(BZ3tDHR`}; z6$h3v`<*DY6xv4ETO!mo@SA>*~WTNii-UL@6m?5640Odqr`_-J}@Zz zGMp7IweCo6KqcO3r3QbRT_j0PU}kJyct;d+{HQ0gXBXjhZlv&pp?UmazlEnpQtt21 zH>Ga?2kag#N1X7q{)-Msf zXlf?jm+Le4UMRGn>Uq2(SKxr$%YY}^HPgIEe275KGKQx)?Ek8bBv*jQRqr`HqLBP~ zZnU#N5vUS+QF|ZLYR)9={pPF=1U5zZX>BOIynNBcOR>O<(1x%UIzSbcc&q~qie>Z5 zgxl1i@*7L%hc%#}Wm?zi|5zIyUipzbP}h)ZdKanrwg`||Lf{;?3eL;UC$6yja*{1MJEkaduD(@B(VYU}K8O^x z(xT7))g7lw(Z*Z!l<}_867+jh$m#r{0nEs(G5!8y3XBeK#>dAYHz{jGktsx!V3wcS z2j2r+|4m5%ec0YAY@gk|CtwWZ+FS3mxW?2%r9CT*64s-%+&=~A9fv5*8V0}nF2CW z{jWexdhfr+ur3Xe4wzZ)trVz-2H&lBHuH;==q6=|Lwq7T=}dXGh2Qw$Dm&H)Y}a)z zEa^yVJ3e5mv^W0LUw-iZOy1?QHRfY0J!h@N$~dKBsTlvv<@|V8CaySuuPD)W1nQ)C zVK>SvmrG{duN?rM6gN5Gs7ZkcJuj)$V!0b%K5Kk%i69!bc-1^=wT8&S^xS(zHpVQl)DSbHx%vBMw}a0c`{WX2SwP<0o4^3U zbX~Z}7s+6uOhmKJTUOMR-&yLmMrS0bwoCINk%s#%V!rgheF%7mLV3)L=;63BDc6Qh zO>@Fo;~$L_J(}i@g1o-3F=D-T)kW<(B3(9arsAG?-6Cc)-*r$o{bT*7F9g48IEBvu zWW(Sahtg&t!p3|?Y^T9V!t3#0Ie~Y+QC-rYV0pDut`Zk?E5j?oGJf;^FsrR1rcV>e z>}0jSQMH&>0^?ndei3ZQR2chMTBVL!effJm~Iy5;bVmaF8xF_h&68pq}}nRbM-y?1y)ZO^|yg?Qword@*|e4DO>=*PY`up zQ$4s`Nwu%jd90!HGP&vb%fZiJtb5PqCE`6MZN=0CVWrC-nrC;LXW{``Pj;N1G?8kj zq65XbNz>4sOT$C0x16gyVz^aS{N*!9hVtLz2jG&=k{(9{OmL2RDjHJTKCH~qA+e?{ zsNLT9-cue~hUT~!A1Yl~ei0O7!?crl0|eA~LIyb$<1O{ajCU$loDh2=jjZ8JcPR^s zzci)3w)u}H0Pi~<$mkfwCh1XKi5)%JvW;8(%)VkHSl&m#k|&Xzn;xaUzL)}gv#^AC zWP+X@mFqR+*(eEeObj5apEsp=(5ypJLRuP-YmF9Oxv}%N@J%;fo@OZRK=4!*cf+3d zfG)OAwq4#=UKln3Z4Cc#=SKqUh6zv|9RIX^@(U{ZuB{*}yV zO)m53H>{WK|8x0La2+R>8!nwL84Q;e!Ny=aJXa66cOZH#8EGhRrh+^&#oDD$Uc^Lwg&u^sk#c|nea zOUWcp78pw!F;i)0HS1G)gn9|l0+aOg5IF`jT6444v#+JQ&eq-sE&QLtg;Y7639;ny zeD+En@sIdA&gexDf??UYH~~L-usDXT&F1tO$`|Vg4<3u_`}s`Yc@K1_P-`V_o++QB z6@Kk#*3*75i=yv^s=#a2JFq|PmjK?uE_n;cgs=-q3sz;wkggUh&E~UtNs3lhKSA;y zRSAyUM#ya~&(sq)T_XEkPhM7oxWa=%L8)g>q$;C@?>V8- z-!AuRJoXs27Ng>f?urS!cD@P4{<)!uR{t0W?uv5o&TzUdpN_WwcX<>Nou<0j;ND)N z`eR-$e*wI8Z&lsS!DE*_X2zkDwwCXY8+=EfCDN7aQcBpb0c8KO!Jwyn{F{$jzD{t z7*KU_zywi67?oMggV+MjIPyv!%7J&uDT93ekV(JxUOg)NMA?a0(QchbZ*_cJU_quR z+?5}hdH#1@zs`2{8v|jSD>pV&(k+r!)LE9r)h5_%P%#0^fO+eo`Lt#V_mk!~}$+#A$T5;LlEaADX43Rz#(h@eWOy+zgnC?(94E zu$z$;GB>RQRjY1PvBHN^(@YQ(++rflid`llE7Q#RsELPWWY6O7k(aoHbJuiBQP>(P z>Hl%ic$-R3!p#L-VnRswwRO~gQ4D*TFx+pR;YKGssG0!K#$!V9CDp8-ADAmaD>JZ) zuOpT7!FQA2lw=r7vuhUaiS2|2i1mPE&eU>wt?P)lkfd()f+J3hcfGim+@H&SXZY?W z->6S(_NAH)G28qT>K}Nkvgw(8$T;ME`l$ud~cUQ3hqP`+@tqO)iC2hlAgHo)P4x-{Ipf zIm9E{Hl7vs7MU0+(_w30m_8fz$V@KcOY40j4`!ZAO3&kClylm>`MOgx!$j)*2XQDs zTD1r!W`VHe=&kSmTb?_&{0xU_@6m~~5)l#oTek*$uxBC~EpRgLN8H+JKLb43;?Dw4 zAX{&+@&j6A)*$3jQeWa+3e~VHOZtOYKKL%(@X-^{kcq}~vI)&8_7;w`5m51iug;ku zZhkUjDk77+XqIG-c4UuI@6uCUB>A6arVovMr>7n$y%1C1q8+0>nLa6ssy9Xn=@T5L z{5I;FOVNUa6{i|v_7kl@D7(2qxFHQP-%+Vc8O6UD&G{hL!1!rVW5>PJgI6c5 z>$$Z)cgRaXCY|`-#5u5ToBFc=;gVtW1fqoIW9#Na>$1X}xQRR+thkAN(@8$RfhnkL zeNEjglbNCUvU`)IRujr?Fqjw%r)aeiFHqQw<*1jdO87-*eO!Rs&-7W^xoB)Yk~s#R zoGD-4WZ1~$~N!vGH9A+k(PUm2% z=X~n#+`9e;=sq+CuF!kpE{?u+?#uz^kjVjiOx}@ls^WgfhktR7y$#)6)nT=M$)gdE!bo%S?`A8_@?Jn6e6w2CwQoGYalJwM z!ZD$tp^o!k|M|ZU>;x)tmI3*!QAf6fi`ln;y5C%ag-eeIU+268^R5e^lyh67XxKeR z4sBL>r!zOLoiO!FGq(l53@|iebb}^~GsBV(+25X>wEN_D@q^FFoaE#fnVdn6AE@-@ zKRXNWkiy#9y3Y}Da_n(Sfzqtvj>x*7Fu*an4oa{IttL@G_*sdNsgCh~rJWYq+f>bW z+L>VjkU*ti+ut+HoA!J00rDI524GsLNzpR(5~#j$_Xx@ zm46_NVi|naqe>+qQ!rh*ZSNxGP0a1o0V`FzD?mB1zP{ef9kM`l3VFpTF!IOO;~m}u z3W1}5rcw|l4-A~(C@A2*=MX_cdZyjMP_%)Tcbvy3Ss~^-gI4d1+>_J?Ui$Dp zO%R|7!-uH;Y>@N97T4P>(G%^A){(rTX3}%&Nbiql&#wD^aT)#e?d2Toy4k4IpJ$dN z^}JzdB>@NMO73;4uhMe}eChCnV}qzQ6+(bSxcXoSR6fY~4o1GU-o`0ke({+6jqK@@ z&3B_HVK4P;6Z0Q!2N+0npXQeULa2uWwGcJ;v|Efo22`|f6;Oa*O7uNR)V8hgN#FhR zfp~|vj8^3HMnaknh?;*9m04Sue*f?wocqpclnm8MPepWS!enxZh*Bj2V*ZWIcHiWC z3t_zmxXQq|>iayK8CKiM@Hx?oReiEz%k#pfjk?JaxY}(k0nO-MLem}qERMvCAo_di zt$#$X@p|d8o|`~dZF3oL^zINy?mC_IDzJEfJ?3UvMVBXBuGe0oH6@(pegs1UAEkE^ zdE6&v!LZoh1*Cg{@^4FRy7{pc`duPeuTo$R`4P|!`E6aMFz#D9a8&Di9uI8nvxABt z&wZWIP(`xCKXl{kIjM*!;=Fg@Tru8yR#fKZr|a?SGA-Tg(YejBL5APBG40W#*=@a= zmMj@zPTOyn?fk(qVxOZFg74YHWC+Oh^b+(nN#?AbJS#Cx%Frm9SxX6hmX$DiibkVx z+?%2QH$~(e`i(mb#45mG&uqVsHq*2vx|YnmDWszjN|MEzN^p8zP`yF` znrCzD0%I=bTp<4(RimgrWwVEJgN~cAQ;T;qg799wTH|=GP8+GyC;n>(sCm<-Y#4p7 zw)9scDalZ?p0}vl05{$#d59Zc7DXozSysi7ykVt5K?GY9*59^FurGZr!<1Bw%|g=; z)X(fjr>Mhwn737w!4P|!0L_kx^E}W(HiTPO?z9yNViKEBA_vm;v>zvqo?NzVEA9wJ~e62Trry1w-6bv-u98?2?thVR)>&JmyD0!l& zQae8cyYX^A`)-!v-~@}m_KM`#2EY>4PdXMFOkDQlEm@Xbf%H~xia_v%l4;&Ov<>ND zV4BHtK(!Th+#7wLv#n~Jo>TPCy@iD*wSO~6D`5aB2h=LC#ij>z^&6%2l6n0q>o>F( zts6T-bVePw-i>au*qRrYs|e)el|It}$!EqqBABs;Qeet?CySOpgPK!%0)8o=RFbrZ z>x$5hpKof5q~;n1@M#es)Gekri!Uk}0Kv%2OPBG|QV$pAzZ9#cwh%V^X;Or0Rtl*7WjCl5X zT}s?VobMM%ZH?^8vAyB-1^lySzczbJyHWhXs{AH_PRvM42yDCj3;#`gF7ry(4JE9F zyo-8IT*S!k<4|sP<@X53qC8bZZbpDnO`AeS@HedC&aOXyi(AAT5re}7SPoqe5+zG{AH3Uf(b^t z9Y}&HmkcroA~zBHQB1$E$3(*!&4zIzpOdNrtpXgykRa(`L~6Qc-}m~R-f~6vDY`|I zlfTq$J6ve?_$@v$-8s&mJS9}oDdx|;f8EYm7zadLQU+3zaKI4Rlg9a9nj50=`6feF zKT|`@xfz#;J=EA(!mT8_Kfe>q)+T9RcwnTy`lO_~(|w;Q&pY5Ku8^F_%qVkH5pQr8 z@%q9@UklTB(CvTmxhHiqQ0m-BO)y(&5>z|Tc!1T#c|Ci0t_@3e1Po6>jWPYlABcP> zW8pssK-rj=fv)b^43E!lC=UHu{qyu5wGM>H7_?uZ45n5a&t0k5$U_i>=XU<)>>s9& z2u=TL93ywSsAp1UF>U>t#I)g%1I#ZJ|u9l9O%M<}CFI# zsyQg4Qv&Hc)(}zb8~9Sk(%;>S_4gx1-y|=ccgN{Vj}HZXdwm0%M#_0Qj)fZ|SPz+r zGR5djg3}jB6zmrSN@i?^o~KsMfn<5)8@pNwpT=m>SxgH5h)EYIL~-Hgi9Yp?owQ$6ARBKhNQ%hU1j~XsxI|aVk{N6pnIHt|0{SvF z`P_YFw<%`l+!n)qZDJ3tx%q(9CMNpNXX6cL-IHgJ_~|(hpa5o7wbf8b-{BXM&7`#!f_j?4JuBv|7(SKXi&$=5UJu&VTLG3pCx-?RiIIdi^6OPH(^zCbM-E=GKQB zHxFCwWZR7D`kVyfLte4zGe!us#@9a9_ARw~;2y5E13Uoo^@r5Fj2qfnaDzGdU!dZ+ zX5Hd=9OEO|n!icx{^%hc%}};>69##CH`m*Akgf{Jyh6WZTNo9%L=pJEX3%G12oX z|3^X#6OUVL<8B8{z{*pitOOmO+HLxY_X^8jKVGk>sbT%IFUw)2hRp_za4<07Z*-0u zoiaxpd~6NxOnSYsNI)-!(iNl;iYs9!AKP8*)GcakI9TFaecmaUVeDX$cQFl#Ad({| zAzLS9x4{ZIWFU$3(rA*Q2LT;IaKw_VhoUlFIwTEN{HunzdD z2*0?==Y8MtuOp-?-nrq>TV5Q?e0e^AJ3qph9(}z|d@Rb9(5JOy6_}rpsGWP#R;Qux zOks&0m92#~ObhJICH(DBxmcr$Y4y2Hv-OWdlJPIn*uGo~WEa*gI3V{dgrIu=z+Ahz zx`&6RC$+(}>5$RdOyYKD$ykyW8)kX^;zuC;C9x=?P??9i>Sws7(AR?l*dOft;G_A< z9bjKN3rSX7z6aXA2MWcF{;=YKhYpIpr!pv{+9&DX1ot!;$P)?DE5TgdGFCLXB`S?a?Q)+)MLqBR>V^cVTese49I5BHgmgo4jfC%EGG zZfR!XMw?Hy6`Id6&F6ER+}xLQTMj_Ptu@Xx`!{iJ%Vz*(PrBF!PP5L%nlCq+n~LkH zX!AYF$bM^kgaf6a$V0yn6Eww0kf}@Rgn(P{gtNh@2X8i{&{ZaOPi?(i*}FBEnY7dK zZ2Y3F_njqHVI@fwIdU(ZiVH@qni{G&iP94kVua%WKdJAYbY(!eng?x{G&GJyD7|7; zV8ZEtrt{%$`pT8Otsa!AWUN&G%$E*Gmmg_btG#@kIS6G}Vhu9MlD){8g#tmX*?a$W zi?gQO5EURm3f@}j$_wwROwA@e+@GBSZ>C)Y^ z8fxQ9zRY_4xlY~adER{LU@N933F{?#3)#F7s8Kq3=X0Tk5aUx3icSFA-5ba|b*6Ir zRp=wg$b!KII~ARiQQiG{BO78rVqxyw8U8~)-0Dxj@~r$K-FgeJcO8s$`oJ%Uka-Na zBv^EbvGT?v6LlU8kjc??j|hlTxZ6DPM4&;vv3tZ;#r_jO0}G|nq;8w_*y9fE%e;V@ z2p7#i?+^(JB@>!1*AeE*jnI2rK0>{hofa*ms1=+3W+nX;=# z+;7i@aL_QwqG`R0UTNwDC^iB?Hc+Lcm7&yR-`ELPCQtB-ASW_LvYJT|JN<~=Jq^1y zmO?#z+oq|s;b@ECX4`G!?$1OGK+?OfP881P7Nxae)zbS}PtXABF$@pQWKTJjZtU)% zIXhdv#C3hvFILUxY3TlMHRmbJ&?7QFt5;kaS8v4EMosV7q?_%m-GVF{vKg6>v$E%f zeXaxYaj8_C*5<6?RyHqLO!*0#$Ine<9-@>Xv$@+=mKqhc8fj&4Naj#$h@Js&2^?~> zzf>qYF+9#jQ!;pZ?m=pl)N{uzdCFOu9b|d4ApA3Aef3m=DzP|t-pZb@#On0D#zupQ z2g;{eQyNDM@aIckONpL8pk^naNy8R^#GR^KE~#8%0dz;sp;JGtCXEdG?q;19+(W?= z{Gb}&9W>_%qCb5+b(+etf;N^sB~FdgM+-s7vMe4UQ(i3wGa>vERTy_7D-r88M&l%e z$jn943EA~I9rKyl-qomw2nSbw$|-ggQf^q$`0(Q-s$yGgz`$+jXc$4U9af~rD=2() zOZwRvjqjqp#htC4i&4XiQ790xb>i~i8)bi>?7Wjvt@I2gucT=Q!v1& zl>yJlaKFGZ5&ENd6dg2L3x0uNIx5D}OZhagV?3hdrZ(Ve97@-!mJ zN5e-^vfL}HKHIBJurYmC2?(KSymqn+$saHrH!oaq*qTK9?p@^srBIcX`|awFh^T{b zq0Psk(IXkg2VwD}6;|vFjq#TR_q~1yZ!|m*6Sfq-x~2-zvA(7OYhg{We*Pfn)s_X2q%Y{5So@+S}&$^Itz2a&H_bXS4eJJ#aZBp_YV% z8vCBxU-mVh(EDsu`)nYhKFRZ9kh9rOl80ZPGmnA0@C}2FsbzrUVS7O`j$5BT=PZD4 zmsOVa6`!~ncQS|Z37erEJ>*!by;(l-VoTwH$!s|}rjW9-;FyEXDZW`F?nRN6F!-3B zGf7{oa9F3FSJt!k3@HeLoG*B8QF223ZuI0I%6 z99oYDWH_D&|W5NV9|3X(gWiKM|GaNC!8bk%7SfWAAL#($gz|M zrysq?wB4c43nt4Ol8H{~BvWBO&`EAP-tn|DbHx5f6;8Czc8Xwqju$8IE{YR~=_S3s zZ&G5bBT5n}$u>@bW==;N{o+I{1KM|8ysmT>_bz+0+>Uqjmc$sgGLx;Doo5q@U5>Eb z$}GgSG#w6|C9^qg?jGt5Uf7IEXjN;Tja#E_?;nZi9=VCQ?x>H&)sIPZ()GquRYMm> zJ?YiANM`v3$1KNc1{k+DS_n2`(4Esj56`BQr|r0}G0uYOtn)I~HpATrH||^2xFukO ziyb2eex@<@@uFagcenL&_3PzERpr*iph&Oe5A>H)xyGg;P%fg(9~OR#tTK6oV@=q& zl5W(kwZg_q(j~p*DE39%EjWZSBA!4t7e94Pcw+sZ zd9G;1-tb|Vhu_m^I8(yUKB4q?yj}@(Expd=`A#X)CBsNtbF@q*pGAFSrI>38XT9=3 zGIinN>C!Ef+m~P|mi|P}dIL#|sqCE}@91uYLg}7_?p~@BbN|q*;}SpKg5{SoaSJ)j zwzv5dZ44v;$4NnOZ{kKhnsGiG-=O|_i>ZTHXj9?qDU`PmQe{t+tkVXD+pL@B7`_MH zQJThIbQ#z`xbD3wPwRI9#f{_I&dkS_4aTJoBd`AY@3+|5)EeS#%CpGlLH!baLGQwa zDV$@zB!g#ivD&SxUr={i>+g4bmQIY;xlMFW1@xFdlZK0RO*;B}{BWX9YchF*I>y^0 zVMhDZg*x%8O$>B{uznsw!QmS{lt_kIkg*9im0&kj75XL_uAOW{Xs*N(CHstD{%7{d z^lf9853#*pl4(q!DwP)A#hXhX$nJ~~!l(whJ(as3!dj1Yi0h8QPW?+KP6vsTUzj9< zs_1T1-4Xlsb`^8?@$SZpQrd-oSejPazSdgo=xZjnH{t7*it`%Y=soOj3_6OO;zoKs zcBQwaT|5(5VW>?Kb{T9cxOFuBO=Q&9#*+!lwQ?HnY%63=6Y9O(L0l6TemFu2*o_#h z{St}OlqmPzGz4DFo?Pi0-!759Ex^kOQPdQ(mWfDoxM5}aMCOjQ2u(8V)neR8$U3U* zao8vi&E4@`l30H_&5gI=fFzXMB$dLtck5Xjol)bpNyZ+Xg{9g}9Gg9Fv|^Ge{Bei_ zl4$Cihb57jTx7*5`CNn1qfcxH;SuB-mh}%lk9|5|#lQsRXbh}z$6&D!V(%*ZtuZ0^xyO^Op3~gBUt-G<2vIc1Y_%QdkRRAdeIUSSe~Xx_3Ut zowkdU1^=Bc?)3@&g0~|^P1dd|oosA$jHlwDPyCod!9>EajW&|Oz%|IHVtW*c22T(@M%g?UxpDH*W2I*%#~(*HG> z|1Aj;XEQfJc9>bws43QYPaGK=DN>r}BrBOxN|0AM8O)9Ez}bJDCwN3#-CBU{E(=4@ z#M&!L0v&FKFr`ffP-6O>oHWK8PVkt7kk#G*s9BE{+ehPuPWVG+wIM-{D5jTOp-rj^ z!TuHRb6y$n{bb%P^XHp_7*oDRJrbS!ytjsrR29|4dX0`-lBE&5-;{dsgjV#@ z7u7p+Pv;qTU{aAAurFmQZSJR}M?MTziJ7?ZceoQL z0GXTL;X1EuxnJT(lGKi)&r8x*kGceVCf$5 z=2U@iEUAwzbI9wop);&=JfW3oaam8f0@*qaS|e*G%@kvZSIY^~XNh(*d+?T0Z=W%9 z39+nXMs_sS<{-GFu81GyubrH$HQH|Bjd_@J&>ivUu54{fsZ+$rhji+%h^!RH%_bKT zaL`z&34U_Eq}ojC-sWkWZwkdJvt-cvkchd>FX$~y?vKvvAaUMT+Zl2mU&D8t%rj;6 z^c8~;-Bq#se$^<${AR9wi96o}B2P%88dPfW9p_eGU+9cQuQxjw{`CBwdm88ccw8`K zM`PsZY}>FRB4*q7YDv_@jBuYWhyathdO>l)l!uuX!^fup>`0ArS4A>y&gDl{D8KmT z)>xUdxmgn5#I7TB`$wFye+8Hml@hV!6oD4+xu(WwoYv2=$&c;kV2YW5cCIkc6co3U z^BZeBF}UbIf%6II7li(f2$ogWQe@r{5-N=Enj^o;CxiCeJ(D77)=`(L zu#xM`2T?yO&BcRcp9j6c6gg6EzT-^Be>vh4T4n#*78zA{=;m2E!|!d%s~yq!`Itzf zbi4M9)9jtfK5p8t5tS+Nw#Vgk+jRYOAut(Xeg0mt()4^@cg>n6c$3TNZYbcXc>Xvo z+^2U}o~xO}US*`VdIpKp#a@bCw5Pc~oQo|t;LA=rcpPhy-!si2-(fgD4UKlv;PfYF zBjzii3~pJMBiJc#YJjE>K;IynTJvFIq0>K%1-`d`N|ANEg~6Vt9VIO}#Vo(B7*BrqjvQ`S=6gDL^c59F_ zz^2|LLgDb^+Q-^)r%MxWby$V%1K*FB13$TSiT=y8(|-=))lgRpx zrn8I*VgPKfKt==Bc6m0%a$a z^pHK{=KMs>pdwaDWnS)J*qiyup7`N;a_nAW* zyW0H0>-FSa3r8cIiKOnyOs|n{lf%ju`ITb1TVIG|qA>T^jpovL^XOEwly~P@3H($D ze2TocDoca^sRh)gh|`)59A<2F$E^W5YpWw8=NVepAqQBu_*WL{u!ThgrSZDc9A)%K zt;eZy0Z-fNx@EP|wqDU0nW4F%FJ_eCM|!eNs-kDL4fla5CLwwKm74F`{#=;;QqvvI zeZ8lEZTNZ_YAj#TziCOpHt6a9M{j&9=sQi@jwsG3H>C#YSFo3z6NAEMDhE<$^0}E- zmXC{)+4Huz1Z72dO#S)Hv7Of-Z(fS0g7^7Moy}_Zle-znI_n$)B8d>2n^UW;W*l6W zEu3C1yOI*}P>vs|0|W0Z$&M)j24LqXLuKoa6kg)f8S_wOoE5{cEs{VLp|`4y>{L~# zG;N~P^v`Z(VFfyghg2g+9@A|nLKch2SpXCg!>$nbD@qtZpJ4po| zW<=Dge4Ca~IH1=U>%RzIkFUR6x>%$75_`m9Rnjk#V{L(UovY7k*|yxVsqh@?&lfCirUfM7 z1yu2@(Z1~aeA}GC{lhwx65^uQ-w!mg<@BZVkM72n9Y4addX(k~SS*!tO$wb5-ZCGc z;bH0dSt;GWmg5m-8#yfzI>k&UuI}e6{xCvhr?uwb$8m<_7}Z0TTCA#y?%aFB&5Phk z*Kv(9ptene_{1n*U+f@ggK7-cTJ=b#Gq)7Vpbc8jiY~VInn8LS;kNe5eSccB0QXE! z_&+?ovW5gC&Q2eRyS(}z(|d>ZQ)5*QD>c$_Hogx%gP9syjV1EPBrV_Y^1cLvGaj>l zUn$>Nq6pn*NPf+VGTnb8W0y?uraa%+d)B-uJxq$b!0Dfu+vv)jV1N6f3DQ%?IN0>f z#e2r0dW#U|{8w`MvC0+P+Mvvq3GKD%-AgPHx6Qy-su;ImW!DrpMB7u*3%*bD`x63M zeD2`aS_8=c-Edr$zq_#e?eVNsgN^P~U4ZT4Brgod?EY-!RBmo}u?IaCZ#^*mVcNCq z>`+DG^@0z{5xT}#W!xYgU%6PyK5GlL+Hu)=L;yHdTsdxeQ=;`UF?Pe&9k}_qVV6eR z&=MIL`5q&IpI;KFG3}k_^_{?8DrCN4uI8RV+WGEZgV!-5k!E zK-Ts|zu>7CTSsy+dY1I(o87u#$yKarcU!quzRk9W%fKcQ0X4kK^!2gY0JicOVPjrX`6(mn35pL~$N zLyGWtgY41eJ^hIAbH}@TT8i0j9{q=t4y@s4f8HbUpzrMQ!G}=#G=~`t7|N8ns-1W? z-)`64akXnER&%Zb9dgv~s0skiQ;_aC+E@sMHdrQh;M^w!z z+8k`I%Y5R4p<=7_?3V>X&WJy5~a?I^4jw|*Po}4T}d4y?)j1F%$ zj&k2Z+^PvponKX)ben`NSZWS}I)lQ*1&CI@*ncngGug+ZG7+^Ij$YgvqGc3=tJMBTmQ0Jmm(N8$>;Ofh3;07r{zwwZRW@~)~2^= zG;K$mV@C^z_6bggPfqDl1{>uL?{78_+x_q6|AvHD%T=MjDP@ggo1$gh-u+TW|9VTa z@e?pl@$DnaMDI8EJ!$VU>&!(B$38JmFM>6M9kE)cD|n1o$O_8+kT5WHn6_Yl#4j-X zqBD=1Vz8}drM=i>fw^67k$M1G_sZGMMLbG|_)Ev=vr&i>k2Pb})3>YCDIYl~XOlT~ zNv}8M;%}wxGHpE7|0Z|O%c0R}S)sMYlTI&P`sqPb%;AUUQEgx7M$MBf=dg7dfvS7) z>q5c6JVcr!)Nxb6I@?SOEU5+o6FJLKIu4SP^3SBK9i%0SaGgk7L=ZP8)*R{EK7oF~(!ZxCP=hr<6t=2b8=u&)AqwI3aR6nL@YdzM)^x4ce< zw%#N$iQS%Bt9z0Hn@7?WxidbN^BKP@HmP{BPG*2)d7mfn!J5LKvpx>ChL_n@(C)(RHrL&=_0MmIKPg(x+qg9s7PG zuL?)$cB`geG0ipwxC}^cs{463&pK>jT~#_J6<0(*JJ322&y0Mt?p^Jt{4Tfk@GLR7 z47klI>jH^#oL#CB?xbl%g9iwEaU&;4Tm+Xfz)n*s59ekhE+Q?bVBVW z`Yg`;TUH+BZ<^?LR;n24R<#;CUDsMk>$a{KBN=O4Rghsg@sxU)b52?N@wpwU$unBC zn)dh=#KCi-Dejbyq*`u!Qe*4^@po_7R()sD+34?I!OhO(wfHg(c6#3G%X#a9D<0}o z<+#hkfy29-QjJ_`S1AA|QzM+aSnDO~=qiyEJ9Y&ZhbiT_a{<_Ddw<(&`r;m+ohRfEl98$|ayG?_o3Ur%nQQW(gC|*Xp$q!>Yy@O(L zFpRFJkh^11gdb;FvILu2>^nWC4$Xk2xB02*>kwCGI8{!vS4)aYHrZd-EqLAQTGHg= zEq*NL@tr33G;C%7%i@sX;Ef(8UidxXQn?y|zsI|3KcO)|nVDU756DK=(brl>oCQ0d zsjOZejw37zz;b#9CEP zy@u&J%fStg2yX6Jtn=N=e;%OrL1@KSOb6uP2Zp?28Re~ zL#kv+>`(gOK#TQ%#x04?qHcEGwZ5~!0_qE3<9B6GyIr!c@i=4U({K6h`Ho(Qwv%dDE$XQFK zMm|7Iem~<5B23+J!ds)J*D=&VS$nrG`L@ZFFoa{DS50~K5u27;c1Ob6O53cBWOO|z zY?x_Xyan;hkw+26$09+ivgc~I*FIs*1E08!o?s)DrvG-*yGOJ=Elc>8&~yr>%jz(=fA1D^7ZIZQ-%KeRg&p z*?zSnj&^v+&mt|4hsV0{lcD&~JIw-7EB*9iD0|f?UcVPs&w3=H_;^@?149_;Dq^U< zE(B_Br?len|9CuJ44s4J-fDAu%nx%sbXt(k;A)<&cKx7uAa)j`D7C#oR)p`ijR`=M z=vQsol}+61_4a1Bn>z-y*WEsO3Li2^uJ{1f?yGl&`8yJ3iW66N$wq&cczk{ptB*G` z?gZ#lX8Lk?Upw2`dFo_^tNkrDwbScOEktJ8pq#s*Wrj`#Z^#j7aQ(w2D%qW@qiOg5 z*!!-yCby>;HS|tG5|W&t@B5wmb9FAhT=0V@Pso~Cv!?uKo|$?+&UT72mO@;Xl=Rv*{<*?2 zwHEcmtrwG&vUzdb{IBHO0|VOUZe~P)I^9p?K0NWO%KAG+1kX8~wR!wn+p&wUJ@O{P zKgtcWeZFm2ii%{>btp)db39dT5g>Ak9=>64;JA7Tmta7Uv8^(sW{xTOOdEKGQy!KC zQnxxlhHXw=gOYVD)g*m2w z=sMcyD&6Od<(*=NC-5wBdM%8mX}pOOS}%S zCB!+;$tj4+-&R4Jg%>(l-P)X3eHjq=1bs)JfE!cuZ4HvGlLwJn7jTHBxzV8Y;O%BP zYX-B@LK~OHjG+Ro{+luwft9#eGeq5;MvGaQjHz4~9bu$ZFdi~=YK30s7ftjU1_A?1 zwol1W_ah7!c{xH29#QSOdYp7qVT58t5vmV8r@v~u+cx4=%QfVaYPpHoF0N47jtXaC z_Sr30@jRHgZKagMwT+CBr&8S2&V+O4nm6EvV4Skq1Z(R4b6-kB~rbgIBFU(mtDW+QD*0}`Y z{L{tfB$&S4Vri1QMUC#mRlE6>=M`G7F^}Ef#4mk2kCWHHO5Eu};6!NbQPIcM$0Oaa z^PS7LTh{XNN!SFL4d(E-+$;UrOtB_~qi*}VmLVM`{MsfBI@p~@?*mD(#j746f!|XH z%462egPc+W-aOWYtptd*5pEG7g_Yik%Uq)log?b*0Z8^1tZ3aOow532#_5$lkMtwT zoX9~=N95!N9f3^cd`u$eRvU;19=bL&Vn~Uro zcIFP#MK=p{CkWwXnN>R56~6TvovDg$t!?WLk}4g=Dm(OuP7S{t^wP+Xzko1&cfG|O z%_eHch;OWnmR(Sq-Yxo|R38*2`*z}2f|)3{;BwWt9dR{KhueA9sHH9K>IW)Prr71h zIM_LCAOv)Kr0M`-N9VYPcHkkUXS^DGb9Wz8_aH!*O-~l!wHb#MhV> za-;=qU7?Tkw1KjHfRl5LO7I|*1-ja=&eiHx*Vu0+Z?Xg9-X$?dvYSLhzZC!a;Rung^s1jTyyjJhUpi=x+4wC^AXi7P5uvB-GVu;CH zIf`q%flPt5M;f^kk~1y;Zql9+V)Ec zHdL!3kpnyG@DgEvmeB5uS^kJAs-qcTJ3WP591U}dddS{~j(G(Z>J_${&gWx*cFsk7 z@;@}jOlPBob9XKhx*+CxYgK7>Tkw(gi|a#cTnUpth|d_@z`pj@#Z9W{%PS_3rZ<*% z@0FcOJD?bNb%IjAvy_j>Jr3kvUe!WSi057hQ7gx8d4O{7gPnOg$_-}ei(@_e1K$RX z(MrTo2%fCu^m1I-2y6UHhynwh3pvgyvuWsX%XkFQ_ zXhj4wXn02pIJIp!N9feye*bVm&NkKAqub8`y|hZK$fbZ{FFdPf`0A5M>QHblb*g`(;+zIZ z+2BOkB-VbwUt^EOqlaS>-VN&&@{xW;imaNt0djJrI=oJQ7gbR=ph1C{QFSZAGBhAi`0>ag9JUavt!)2Q%u8BtGbJe zX`9otRPasyuE}yKN}2F*8dK(((c5a$!~X^@t%)h) z>{Q*iw93k(JY1ncKZHJ14%_yl!bcMQ*QT=)4fa38L{%mSSp*8qmdMC$i2Ue3{OO}t zs$c>Q5xHVg8Lg)#-|zITd*rD_Q$rr@hG6@k@Knz3XsW1r;wIbH+*pG!GG8q(PLrWp zDD(Uw(@TH)1d`+Db;?CUc|MRdv+=$0o5y-C@xw~mRZokRQlSksQ#r4+%=KqZ7d8RC zUO6l2xzKzh=!9jzsKNS`L7+-yCN9A=eSBJ_L8&V|2$4Asa|{Y3HICXdNi$?)ZmuZq zX0C_ukToM)Y7MG19L|*QZFei^8myGR(1)qd7(XCynSFlwsPL+~@DfLw{{C7#2LMZw zl_7NfQEqc8 zrV6PSv`$RCkg1ed27I1(qBVaudgTt`((>&uDyreQX+H%G{I#SXTHbGVlEcyqtvBfE zyp0T|43>-nAbF}ep zH6e&NjZSRY_gX0mAxDR;dt{YHU^y0RP$4(I&$;!5T08zl z44mv*BCYG(I#}9ApSqbUspdJIJq0dTsjMN4SP7yhZa4l~lk`ffo13L!2Rdwrvd&4X zw5h$ngFGB)_$2ewm^-&o)*xqSyVvhCBjE#4mx--nNaea>K>I)qReS;`G{mt2)5X`X z>flK!pGy7IZ8zpDBX_AC*A*i9-qaz8}TD&|MKN>DkXPV6YL<$>LM z!=#nkNVn|P)xP6iTmQtO(0;b)O!P{?&2j7#( z|DsXN*{4)6bq2=YGh#4IAn@X_BEL-*qcP#8t`HR(by<%GyRX3}1R}uG0)|!q+!?Py zFFn@NG04-%^8IVk{5FL_v(@VCA8e*SZoJ5&#hu7}OaM#dhRr=>k7^;}yhfBBdAW!C zN0l-rYM08G&Y#irZDRULOs;bWK2Y8&A#uH)vS@`Z`Wr{qoj&W?+=PrA|cbG zqHdr;MT)bb)wPJ_b8N)JAy=F36ZtU~mQLo$_eJG~hUmTbrt>f$6$v1Jre$DH1u}QP zqAr|*_Ql}A=bPzn0$r>>rQIfk+Lrx?%K2^30nC%9_5CIXNz4aV1dGG(J^>|_l`j4jdL7rezTg=er z<`@vPXIvbGO(YglY}TOPsfm+mN-)ppdD;Du-6@gYA5b zSll?k3pt=D%J;mmQO7lq7#MW0cP-Vje$rirsuKvt@}(c7uE+G=w(i20uUC0(yCqXZ z)aDG)z23vaJ{~kceBA2hR1Sk0_k$$02Afs+NOR$jq=|x=XBm9NLzif7a~0--u!L56 zrLnUe^eCo6EgP4?!lQef1w1B<*QT9pL02eB)Pl|{!^PRR8wONz7j8Yx>U=!dwKmNw zx_F;6VcZ;EMK=eDSUDTF4y=IK0AB4`yVKPtV5?XzMC$-pW|f;0NCUCbI(6J?!pqsV-fdV8$)18g$w_hcz zP+Wdi-8a~&N_ojB1Ze&iK3!uGCZ|XV=|E;BNP)}|*Pb)(m<4^O6)`sIjxdSsYQGYO z--`{2cvT)$OW1;Mz(^uc#N^RRRn5uwaRI`y3PSH|7C7>zffQp z5;QF1%s8lW!!9PxLt3fh0evP@LbNQGbT<;fq_S?|)rZwj5`a2+xB8xPb=q^cxv~1q z)VU3#ykPVklTS=g42A6}W5@s?N+x{27N~+y3-Qzf`d*%eA7v>hKi7X+n+luBGO2&I zad5IQA8ys!G1jSzV#}|_rO?uYw)+CuT?VDo z-udGrtg7X3XLWREHFE~e@cI}d`7AspLDINwKUZU&vF1Z>ezEPqaJsHP<>41JPva!0 zOKw_1O;6Jr(!fT>&H+g0pf2+T9xiDC{;FP&ib9r0%PAcd4xkjWbwonuZ<5h27|E$d!|pVzFl2Bf2J~1E}NKT zy%V(>G7MWaVc=GnoJ082v3SG^^|4=+Zt!+H$%%V>dAPKxga5iusR*~SyS%*Z9{RqZ zNlc;VklV2Qa>M79pG1%8?H7I%U*T8Ztrh3)3XSP@jr4KFYK&c1aqheSd;-K>iLVO2 ztpWW~hCjH?KJLbj(4Z_|D%-F}f}L~N(DVVrW53PN^ePdy$PN&2I{{Pl`s|*QKvHof z@dX^VkMCMBvhER$$uyWo_019qL7%-2^$pAwxTN`WQ6|?zP4Mu2e<`mtuWfwr@;7R| z9DvAZiiGRlET>4u2hkL%xe{)U9xv^{b0~|> z|M}wEoMPq-4oe7S%Sn)y(_{Z=HnGwgO7!>cr04k2E7O6ko&MstVusia@rWWko3fAd zRh^?cZtqVX3$V*B?Jv=;8&xrNQb@8x`hhzw{m}211$lwk*4R6@0Q0YZ7F-Ins*IXg zT7vUa*8GwMageGSi{O(Wk>*8SCl9DX#+EPH+}R7ow*iF56hu8*h~Xg(R^e61TQvD~s;7=?G;H2zA4hD>XCXdmW#6iW=ZKnZ@aCf(PXNyst^i?YV?C@mJIH#+`i#4Ji znb#dFw69yyfi?{W`1_}=In;xFez(H=mF>E*(52-tOzSfCtxmRTR=`1g_dQo5r+8r< zk!s&})LTol?s;o2#+Gu`VWgb5+z%|y*i1{DEWz6HEXAak?_gnMhU@+ZvUbg60wYTx zfkBgoU4VKb6~N0u1Mb6TVT!(-%tmYI@cH0(hkGYTpA=g5Qf%wRwCj`P@B0H>7n|}4 zmTd;5?B(~N#PSzy9=7_2lxO5Q8oXkEjur~9BXI&+a}UBW(_0T~6fQ#j1S={!mWujm zk)3C=tqpdS+vY!j%yQ80Uu(P4ZNWI1mnq%NrXDhi)O9Up!JkNO1TjJP3uKJ7bXonNrXPC0q@Z{H02&piQ zsZNJ&=j!JJ-t70^2wCj5+7?^+HT6Csj~r|AdQB>+%CR z>dD!WA+z(O?&<@)qtSWp%R9-U{B@fHOwF8T93z-~5iG?9cQH6?Lz$b5iRkx6yqAp` zibOqGkuAM`CMvCXw(sjDfac74p(s=4hizkSDLhRT!*(oQ&E^*M(iR(^Ycv(ge|Yez z=H~cUv3cow&}PP|{VSfqdmsIwh2&mMy@JgHnHP7jO0ilFf^9MUklVV6O}65l7G>YN zA60z^TF4RAJ7Ww^+fYFB-JxAj4-sBh;OxjFAT?1To463Py`NLD6_d2XZw=bBmEOy|$cAu|9HSGZKRoy8br&UJi6YKJu7 zAq~JU9k(ltIt2>yo!Mx->UXM5+rLsSl+2hNFa5fqp8n%OUCYgYO_Lz;_bvR_XCJ8- z#8w+e3SWI~Mn6{PtJ->okT{T%`NMsIQ-en=qStx~)0R{?+VUvaS2Y#1`{TMK64-#KZbY*X|<_q_Xir zad2i0*cRpqwTypYcjLr4IW7dRsW`PM2sq01R&1B4sf`O2%pLnB4Ln}5IxSQ-J`I%< zjOLsI(|GhC7`Fi$!EiJkXHJz+Tbi>?NlO!@j>Y_8%^T2%#Y$6)8n-HDvsAbMd7^cF z!-trqh3#T^W4=>RKJ8JZ6(w9C?K-y^Oc#zT2F?ho$NJ_Jz79@`t+%Q4K);;&rfUA?*Qmr7^@oy)Ej+bk&wijzo8UH0j4vruHqo#4S>;!H?_$(Gvai$|-iujEJe4kgtxT{?Kb zqS4Pd?)k!YX|{%x?`wye3fh#D0)RdUZ!0N`c5V9)vmX z!Y%ht6j62(wUzU)A79{7d@^LA7x8M4!F)KfaRD|AIMU_po&3L2rs-32NU^m1;A3{m zft`#7=~dWIEjL@W`kIaR?U{-?Ln!LPPJMn%e%GVx2KtaV5D^+o?dx-XXKvVE&Xqw( zCB>LD-ssb?GC$+3W1^xGe?sEahGw60<#h!qmx+EvPPGnU08()?)=B6g>RpIb!ZpG| zf|s~-^mt`nI$W6ZROJ`L!1@fQ+D`DlTf?bAMomuzEny~zV1fD!G*BL4q~}$#}aNWO5o#do!+&?29HD&GNQsC zFWxwGg!s+Qu%wAoX`D}ZH|6ZKER5J6jb6VSP9HJ5>hsphvxWG9G%a8euh_u)sH*~^ ziVl8Op&|SLKHZ$jpFVL}Uw>;NneC{-=Nr%?;g`t_ed%atA(*d`3~M;p0%p;(04KXI zoOC7M-&Bu*&yH9ZPAECs@1%Es(U13=T6WZXFT$)}sxyfPPdre8vtH-{L4&ssJ9WXX z>h|0vUtcH#YW8Y#5Rz%rxq)|N!))6eeO=ueEcQ>-k@X5lFP7MpA!ibG z@qMM%z72eqm=)a)Is2KeZ>6uK4;-*IELRkIX#JaLJ(kVj2Pc9igi2k9>YLNRKI8$& z=~v^dWreD92YM<}Jz5Elbyo8}-jy;A|MRHB`Xik?}RlIWYN_( zWbTDl*_jFbjz1{!IO@x-soGLkFd8v6B z@Pb&MY~%}N-;b$`G}7S)YE8?d>?_5{)I0N1SZRZ=(? zUt!0h!*AnGNB! z-6V88>u)>Qkf#YffDtVW{`O3+xyRcaml-2j@InB3O!6O0mw;eQMPBJSb>yuU{P;sbKf=tbvMypm%na z*~sVpYdrFFV&dEa$8~~b`Y(AsGaRbA$G#~#e7_hz?){;)SVH%i;>NitfKCh#zDtRh zyXpkN4wTm1BS>eNsd;Czan-zC4eMdA^yidcSLcQ^L(0a zi>)RxVFKSIPJwP`sdow)f*(ApOXv>xHN>w>k*ts3E6YW#KNOEgIQJ|ro}yUqbI9!f z9Dh7fGsk}qsPQtL3qqOV+*a#Hs?IraoOaK_)%oTIdf=DCq6BU`v1^d;8K>Xlb@(>Z z?Jz6{QwFr}N9NLQY(66|4*2+Ji{$i3F!SBv?As7P?_HD+iGumdGW4EFFz%Pta4@b( zsO1BaV1`c|QOZ8qC;mNm?AY^|7a)O&YmAWGiOmnFdPB~-DlzIg+6Di)vBiOz!I)fr zx9**JL3XA&1_X)t+HhvI6Qj<;cFO%&d&1)!;806I=eb^i>%_o}PcUM*dhn|?_G!bu zjg(J@3bNnsd4LksBMO!>Sr=l+CZ3m(0DODb&BeBM6k88_y9%J(_x-S+&M_500Tc>l zOQv`#x4&0N=6ysFbj>+Ak#8~_eQt8Gz?WrWKR38#Sff4#-@kbKYyo-p@F$tjL_nPX zET>#2hmBbGoima-He@)5#z$HwrpTs+)xhrvre-UQ@Wd(SjJRFM>dajT+{I(u4^_lH zTAJ=F)(2arIVcy&xi4A9J3W0u)FY6_pRZa0@rc6Teea9HegZxW?Ounc8lU8hOSfI< z(54sHc1PuBFb!=1KU=zN!Oqg<;3c-pkvaME?`ISZ0(^TuKRAV5BkX7~{i^q6 z4^6jo(kGg1P8s!WoJ9qLe6L@|1$jx5H6LXqmEXoZFAKhFdbN7i6$&ZUypkWh7qBm7 zp{XtQ)juS{R(+-V=IW(=jN+>k-O-<>yCsJJH(cIJP`N+!6xtksUTn>o0)`Ub_xx--{5`UQ;l=+*4moPkUlexbu_VfLXt$AmkEiEXAKA71)=oZ9X0ncUsNz&ilZEkTqFWD@9hA*Xr2X1H~UpQj-h2 zzZ(5^4k5~>sn0MQ0%svmiZV~t33ZWTzykDeCY|4mm+kKK((T)`4udR@#)|++SN@pN zR+}_-BForaX>!23g`y(4FVcD_E}veF-7L(G#h1!kT?h4xrEHR~0%o)c<=-JTOe?wa zdJ88hr`)I0C8t+B)5VRt$ceRBWeEjus<#fO`6^g4cEZ;CqV%i!8AN%-{u-d$VpGm|9i%TtD8Y;b#TM*H|;W{<*jX3eC&9K zVdqjYuH;5pK9dy~o8w3nP6enyoEfiK1X>i6JMW&ZH+<2#QmY)Ru%_FJ`DOvEK$ub2 z=FdEvx@(&-M<$m?nY*GfPCVeQz&i#-<5SiVh;T=9KbKVK?U@FxIDTWuZh~mV zQcy2zCF1a4pye+KcV$_#sXC)gOVJMU`&dQHtr7F&sHbDS9$B~gR}3h)CIJK{I1~@_z4DDsk9dSwYT~C9w;Z*!@JhQ!x((mt04ik!RhGpX<&#panteEi#~7Z_>b#V1`oTl@wQ4>r!syjUG?&zRdk3k%w` z`_k?|_jiw@OaHrZHg+~t*$%<5lsB63uL*xKWk8UGxI7~JUT1d{trM*@3{jCns}Qj3 zmDk3t=LC3GXvKVZ2`c`rnQo^Z<9xl?c&eMrGbAKI7}%8-XQh_i;?%8=F$4(4u3v;a zlF)Ywbal5Cbq5&7T}(DJk!_)i@8WAS>UXqE9IIU0h5Z&=wV+8{E+zNQXPjL8uM{1! zl7hlpt^!pJ6MO@OTymnL>^`sj!}|rULF6~Nyg*r=XhTqLSVV;RJgM2O27}8qOyVh| z#(Qj1aF>`axep%5k3*AsqbCpf_o}x9$sauK$PT_^ZQHd$Wq>c?YYtvFQSn`A_Lu!aYy;6c#WtukrrWUrOg{(Bro*|9+b4DvZ`^0Z}4NeibD7cBw5p_*EM~K9(ZrgZ0 z84@8PYX^G?H=0Iu#;MElFYjtVfYAm3D z)?)iv+85Uu7ijfG5lvU4I@Ad)uFiA0#aPtx-{n!jf1+;13>>t#V|1@c3suJ%JVE{h z{Ia9-qZU7PCY@`3YzLybwo)6Q1d-RM`hr7Na4?D?T_2b;=vIO84*2#Xx(ykMj6rG+ zJ2lU}%(K~TKP=Nk@7Fi#W*kV{kB^d7bMZY(s~uap#`1jG_F?tu&6k2_+NE~%_>{%+<&hn$%;sM0Q43y|JSl6r zl%WxVnO{#27*4T^MZ7cRHAsO}t@y8goohm$h2zHqKM!U~0_yy=hlZn_MIFc92JM#$ zqyc|V83;I*a$x3f2Qja&t1AG*FLAymjuoi)zt87W_B9%}%L5b^+fU7_Q|xO2&!}9X z1Uli3_(-4%2HCN-FxKmnVNW06jB;hX8eTPUFm%?{p%G!hNgI+ z)UW^?4>{NDt)hIDoHz15Ezp@QUw)38zxlht2>#~%G z*(R%c2L3Zu&hy|KtnSiD@|RKq~Usb%ZK4_VlFQ_W~>bK~jmw)?4u8byJ6qk zaXO_cCLiY`yl`R>Cut~BgyW}mp|CVH(>S_Jvn<#m??ux6e>a@JQ@(`=QTWOQGT+~(wLlKmg&}7l}*oJ zOz{pjepiHdh+2E)?Zo$;Gupm-M&AreqQbcrFHz?le)-!6SU4v>it8yciDY4S?v7tc z>=O8zpA}WmGJ7C&DHMk6h!LjmwR54`<+vdUyDtJwuM|MdNX>&i^K@tA+myZ0yHeF? znzsZxSUF9rnD(?@!)$Be%KV|VOxn^y=W(APEU5jjgoeGHg`6%q$2Qd-Va1KA>dDn& zd2q;@f*f6O9`6)kO`nf5zZ9?%+m&Gtuu!^ShaT9epygXMy9F(W>2SF6(uIxFLA^2AxK)~cXl&4q|%xa>Eh=Yq5nMYR8LBG`aE z438e&b!0V|11+Se9f}bI&e4V|6uH zqPLQ_zFt29=Z_y8_fzY?sZ4ICaoK7bngW@~cK&rhGJLkkF|JM3DSF-EK9Y}PI-5D;I6e~|rV>zhxV>|lI%liu=ozL(%~ih9 zr0o~-J;+gZ7qRF!{#~J>Jk}!V^x(&gD4%sn^x?hGOIDO$ zwTJ101bgyf^$q8(?za~8V!(#9^8Y&1is~Q%ZRsE3J26h8-7iq*2?z=o>>x*-K69C4 z`x(1<<=GoL(ab!mKg53OwXybvXC($wyz#rM!&#?K?joNSugw~FUb&osdWJ73JXGLL z_--N5xc~C5sRZl;-^T9uf54F6siUDoQ?pRPFTP6UE(b9fNmvp)6Sxon`7<7Z-3!!P zb-IU6joZpVKX0CvOc!B{Ko*x!6O}oX?A?srtk~^A%3NODwqY^Rbe#jlLi`fcIDajc**>aUkyu}f z{`*G+bBuir-F5oB%4IkLE~qwB_muuY@rJ=g0^%9(IobHxMva)w?n}#&sIDi^(^_t4 z?cgw5E0vv4U;A{)&rw3-C3TrVGV( z3r{X%|59}m&3o5B6U_Ra&`Bl#Qg|WJeNRNBgV+ES2mp(yHM`U)tLaoA4!4bHv9RSG zJ@DtjoM5luntx6KW3BDeaxa3o=p}o?t^jJ<6C(dhVdvq=Q*`&5bP|0ze0Q(W(KW-q z)n)#|z}Av`U|^kvveHITDO36$Iq&!eYZ>UCDK=5l;KRz=s*-CwR7cT-!NP{%z>PmU zd_f|y+tD~v{9+d7!G>m`i5uZpW4_k)HK+NB&;FsTT{N$}ZT)tj1ueGxf$8IsjRj5< zS`NDE$JAdqGQn1JAkuNY8YUHZe^@}n9#Z3JGYN&s2`|2^1qV`>s^o8Ez7Ji?{2+6> zJl0csp10o>EWd-Nx1}E5Gr7OKRtZ3yI~~1`U1{L+C3lBvjoL7jx}f4uc`M`2J@$KI zjcWt=N904Me)wW%i7Idk1duOqUhgmR82nftC&g^qn6rlj?yIi`)0P3EJJ;TCTX?@vHo2fw~`rN{qbPCIGfz5R>?^}!wfGm)h68ci>I7R>$x zulWbTUIZDJ&hHldBhArdNS#gvCTqiRd>Y)Ab8Ve(w)EH+(0^IR-< z=e=GRGtGg3Z}z1Q8|I*$W>tA#G%w!7^U)X+pTk7CxxO+5?VY+~;&}ZqFh_4wa{mWk z6_4Z{)$HW57xLoR?X0Gbl0`K{R*;|KSB{H8R$45(6QdV@TP}|lgBX>cXHbVsd`k4e z4S&wsH2-$3LyRH1i z(V-a+Qi2sOd`G?8r2E`^O32pZgJ)M@$>XUvS9dWxS-^#LW?z*NiK`oCXJT{A`^Q}N zB5k3SKR6%ew|1)jL{ufeZEm78y&erKf5t@CDYm2c<*0FSKxdxi+5R~GfUU0uNGN>p zxp`=neRn}X%3r%}JEWe!Pb|=RrUHA;rM3z7Q+spu#2xcvuTkSO>h%{IfOf;RTYdR1 zvH~>$aphgdGc?M03qrNs;ZSPUadspxKe&Gye zQPwmR0(#8!ak8ez*k{(7&5>Wur{6q7nlMg}#Iz>>rZZtB-D4TXwQ+;}HD^MYqo>*( z?b(N5Z@?U7k@sqAkseKCot9~^qx6p~c*kouv+mIoVp zfDn#8`ke~>1gPH+vXRMBKyluKq#994`GCCLYl{=Hz3$@iAV{do7w&Ui08bQrJriQf z6(*pq;xMCgzNYQL#pNhDPhGrL`*Q(ryY`*4+jF+|!0#H#&G2>2D>uh04qIWp=-ER9 zkMnjJUee5z>CG1|Y(GTq-TIb)doYFrWvvitD1kAG+B4fX({GnVuZ-D8LX}5DI)=eEer233Rk|rPA%zQj0t_}4FvP2@+{`cw7m742vCci#sKD3TE1T9=@^%JQo)-@n-PG!P!)!>yOE6ww5rvxtL zc=vm-UcLVuE5^V~P1L^vfh%t4-zv3YJ4)`5RW_fILbt}iKIA{FT%>rnb)9wQG71 zWJGkhtD4?z&VvMM9Q_}EyvyL~X4QElTI-{JzU`QIqJHWCH@D;&sD<`=#)JF0rhKQ< zxzy#o0|RSjA`ONFUs@tTrIQv<%i(&0v4vbF+`#8nd9d!PZ#qRXMvo!npxHD#v@0Ir z$3);tLJa-N4k;nJB6cEtSa14_o}VXmU+{~(mi-OdowR`1W4|*rI&QOH4$U%J3gUZ$ zMHr^yc?hl~o;2SdnngXJ<0JP6FhlR;kSYn=NK3IHtqX-X>Gk=}-Z1k0b5sH7g6t7) za93k;JoFW=48bnQpZHgTV~Bnk^%ErJ%o`&Wh3!G9>7X>-6Wci!ddkKF>93D(cLoSl zv253b9s6Sx_35=s1k2rIkN)t>%`SBft1`w*LaOlo*i`@&zZaA(UxXCo$T z@`^k+b)0-kK0df>QGKRVMQSkf^n(0#lZ6!^0%&)CLdJoI;~Z#6`;MUd{I5%=$v5rm zc5~DxULK@&|Kn0O*SPlQ;HZkE`4wK_D<)(AK4xRe`|{%Qrosnnk9(4gk=6-_()jBt z=s0512QYW0Qc5P(Q&hx%+4>uK%%a8vi}v3KVMduB*U-T#!M z)nK%;h7E&&?PV}KTh%K0ZyF@A#&NBZqm;T~lqS*o&SM%K=AUH;Nl@ni(Wt&v)qNw5cB zXO~cheq+c~+0(=7f()tB%qB=S@3aX5Lw2rhtixIO?wg8#G>YRbfHQuO`vloj&yN`V zruz>Tx|`1aKnjX_fj7G?x6ZSM#kdR<=Vib0mpWo^ngE3 zYlFov!t?iqvljC=K>8nC z$+cfBV*kmE9gacu-TJk-rbh{N1%$5LjCQv8q}Z06yy@*;(b)KMI5t9KHx8yX+I6{#X8*$LC+P2}D>M0aVGsBeiBQ=cM{?b4-_ z+?Pl|W+}_0ZP2=R`dGMIkny+fvCF$Q*3@;hD%(*H?y6VkF0*hAqg;IDS!sdzVDG&~ zsxiLqV5QaF&2OHjk?c`((62MGy~DHIk>Me|nBY}wIJc;Hp@KK$wVEPbhRjR3EJH$(!GP3qL z8cw3CFPQH)*Sc=_nhm4c*-Bn;1TQlYh5CIaHVl^Djow}GovZUVXwwiisQ`w|2HRf? z>6f@0bRY*<7)cnh?l1hvj}p{QviI7W7D@#Y%?k962?iP68+?g3Hcmn2Q-bbgr`h;?@gZ zhVK8TN>wc2?{#cI7W?K&yHV_bxtFN@+(&zF1m_erhtzp483WQ`dhq#R3754#2#>t; zsiXSE#nb?Z^IvMCVKD2+paW)YkaYfI>C)^=p6L_TGBz6tgx|J;InB!C4YB~Nr1MotttWBvkn88bx~mQg1SomjidixF9q#wHgz1=&K|vmInMukOarEYS@#;PNJyLR zyv>|4$SmZht@-`_Q1aW~1IQbke@!HUnk@7_lH`uM{=aehofAHG%ldbXy}-2MqszCr{|r->v75Km$ZkO|#~e*!f75aA$YVd2 zbUQT8DEZ=M4*2rX&3_!pW6y^UdO4Fn|0|iT^5=5%?+*0csa!{>MQ~&|r3>&{Qdc>U zA^Lk@liivB5cDq(NYdPfX;c1C@n^L~XO*{q+T**7|30!Q{rT!!BvxDBGBN!Od#pkF zRxWcy%%`FoY||fM`>3~B{B0Nf zS^Qv`Wkb;S)6tvV%=z(0pSSB~Rt7)Jo>yg2kNGXb|08XsD(=jB?clR7l8^4Y#rH?r zj(&I5`meMyU86fUL;oC{TLyn9vFm0QGXV@r6smuhEiq;Kzt?+NHqAK!Q25Q+mUNY) zhh+XEWB(;jc`429hGg6ZipqAlANPkWmZN~<*mJI@fRcZG*mZ7vcKTpF%-<65`>M}> zBuO}0#eF&=!X{`Y@v5=nLBnL2!qKRqq5y^8e6S=OIS9jN6-!jE^7Z1C`WKpv6k&VJ zhmn4N#}P^YKfY@Jv-;mpDtQO*Y3o&CI|0^VUI;FApMPSag1Ck+n0SNB1=#U5`q$u@Tl0KB98O-zsDB&jjE%mj7qK zxghW3bBfRBKb>(gqvVTsf8Dn|U`;*;o52BYUXXWME^(d4vFh2NkUg*s+{*zLHlT*; z(+NHG+Aj>#PbY&+Wk}JJK5bG7est%{aZn^2NP%RO zGcyjIT;$ zs$m6RY20x4K<~V%x<;S=Edkkl;0(mIH(2LYyx9CaRl6yC=lkG(n}R5iY{D~vBv4_v zp?l8Wf|o58<$KDP1J@6pbeFeK1<7yFhGu1>=fGNIkJ`VM@}ebwjJ`?6KHs}1?w{rU m2kYir!4ow|$KU}A=Kq&vTP=}(Phf30$W@-MelF{r5}E*xes}Kx literal 0 HcmV?d00001 diff --git a/src/pages/index.tsx b/src/pages/index.tsx index 1bbe9ac9..68954158 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -1,37 +1,98 @@ -import Head from 'next/head'; -import { useEffect, useState } from 'react'; +import React from 'react'; +import Link from 'next/link'; +import Image from 'next/image'; +import { Button } from '@/components/ui/button'; export default function Home() { - // NOTE: ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•ด์„œ typescript-eslint/no-unused-vars๋„ ์ž ์‹œ ๋”! - // NOTE: ~~~ํ•œ ์ด์œ ๋กœ anyํƒ€์ž…์„ ์‚ฌ์šฉํ•จ! ๊ณผ ๊ฐ™์ด eslint๋ฅผ ๋Œ๋• ๋ช…ํ™•ํ•œ ์ด์œ ๋ฅผ ๋‚จ๊ฒจ์ฃผ์„ธ์š”!! ๋‹จ!!! ์ด์œ ๊ฐ€ ๋‹จ์ˆœํžˆ Eslint ์—๋Ÿฌ๋ฅผ ํ•ด๊ฒฐํ•˜์œ„ํ•ด์„œ lint๋ฅผ ๊บผ์„  ์•ˆ๋ฉ๋‹ˆ๋‹ค!!! - // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars - const [state, setState] = useState(false); + return ( +

+ {/* Header */} +
+
+
+
+ ๋‚˜๋งŒ ๊ฐ–๊ณ  ์žˆ๊ธฐ์—” +
+ ์•„๊นŒ์šด ๊ธ€์ด ์žˆ์ง€ ์•Š๋‚˜์š”? +
+
๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค๊ณผ ๊ฐ์ •์„ ๊ณต์œ ํ•ด ๋ณด์„ธ์š”.
+
+ + + +
+
+
๋” ์•Œ์•„๋ณด๊ธฐ
+
+ Arrow Down Icon +
+
+
- // NOTE: test๋ฅผ ์œ„ํ•œ ์ฝ”๋“œ. ์—ฌ๋Ÿฌ๋ถ„๋“ค์ด ์‚ฌ์šฉํ•˜์‹ค๋• ์‚ญ์ œํ•˜๊ณ  ์‚ฌ์šฉํ•˜์…”๋„ ๋ฌด๋ฐฉํ•ฉ๋‹ˆ๋‹ค! - // NOTE: console.log, console.error ๋“ฑ์„ ๋‚จ๊ธฐ์‹ค ๋• ์•„๋ž˜์™€ ๊ฐ™์€ ์ปจ๋ฒค์…˜์œผ๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š”!! - useEffect(() => { - // TODO: ~~ํ•œ ์ด์œ ๋กœ console.log๋ฅผ ๋‚จ๊น€! - // eslint-disable-next-line no-console - console.log('state', state); - }, [state]); +
+ placeholder +
+
+ ๋ช…์–ธ์ด๋‚˜ ๊ธ€๊ท€,
+ ํ† ๋ง‰ ์ƒ์‹๋“ค์„ ๊ณต์œ ํ•ด ๋ณด์„ธ์š”. +
+
+ ๋‚˜๋งŒ ์•Œ๋˜ ์†Œ์ค‘ํ•œ ๊ธ€๋“ค์„ +
+ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์ „ํŒŒํ•˜์„ธ์š”. +
+
+
- // TODO: CI ํ…Œ์ŠคํŠธ์šฉ console.log - // eslint-disable-next-line no-console - console.log('test'); +
+
+
+ ๊ฐ์ • ์ƒํƒœ์— ๋”ฐ๋ผ, +
+ ์•Œ๋งž์€ ์œ„๋กœ๋ฅผ ๋ฐ›์„ ์ˆ˜ ์žˆ์–ด์š”. +
+
ํƒœ๊ทธ๋ฅผ ํ†ตํ•ด ๊ธ€์„ ๋ชจ์•„ ๋ณผ ์ˆ˜ ์žˆ์–ด์š”.
+
+ placeholder +
- return ( - <> - - Epigram - - - - -
-
Epigram Main
-

Pretendard

-

Iropke Batang

-
- +
+ placeholder +
+
+ ๋‚ด๊ฐ€ ์š”์ฆ˜ ์–ด๋–ค ๊ฐ์ • ์ƒํƒœ์ธ์ง€ +
+ ํ†ต๊ณ„๋กœ ํ•œ๋ˆˆ์— ๋ณผ ์ˆ˜ ์žˆ์–ด์š”. +
+
+ ๊ฐ์ • ๋‹ฌ๋ ฅ์œผ๋กœ +
๋‚ด ๋งˆ์Œ์— ๋‹ด๊ธด ๊ฐ์ •์„ ํ™•์ธํ•ด๋ณด์„ธ์š” +
+
+
+ +
+
+ ์‚ฌ์šฉ์ž๋“ค์ด ์ง์ ‘ +
+ ์ธ์šฉํ•œ ์—ํ”ผ๊ทธ๋žจ๋“ค +
+ placeholder + +
+
+
+ Epigram Logo +
+ + + +
+
+
); } From 111eabf6360f02ed244e748f72d75db151582686 Mon Sep 17 00:00:00 2001 From: NEWJIN <109906670+newjinlee@users.noreply.github.com> Date: Wed, 31 Jul 2024 03:38:37 +0900 Subject: [PATCH 05/17] =?UTF-8?q?FE-13=20=F0=9F=94=80=20=EB=A9=94=EC=9D=B8?= =?UTF-8?q?=ED=8E=98=EC=9D=B4=EC=A7=80=20main=20merge=20(#125)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * FE-15 :sparkles: ์˜ค๋Š˜์˜ ์—ํ”ผ๊ทธ๋žจ ์กฐํšŒ์šฉ ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-15 :sparkles: ์˜ค๋Š˜์˜ ์—ํ”ผ๊ทธ๋žจ ์กฐํšŒ api ์ƒ์„ฑ * FE-15 :sparkles: ์˜ค๋Š˜์˜ ์—ํ”ผ๊ทธ๋žจ useQuery ์ปค์Šคํ…€ ํ›… ๊ตฌํ˜„ * FE-15 :hammer: EpigramCard ์ปดํฌ๋„ŒํŠธ ์ˆ˜์ • ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ ์ œ๊ฑฐ props ์ƒ์„ฑ * FE-15 :sparkles: ์˜ค๋Š˜์˜ ์—ํ”ผ๊ทธ๋žจ ์ปดํฌ๋„ŒํŠธ ์ƒ์„ฑ * FE-15 :fire: api ํ•จ์ˆ˜ ๋ถˆํ•„์š”ํ•œ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-18 :sparkles: ์ตœ๊ทผ ๋Œ“๊ธ€ ์กฐํšŒ ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-18 :sparkles: ์ตœ๊ทผ ๋Œ“๊ธ€ ์กฐํšŒ api ์ƒ์„ฑ * FE-18 :sparkles: ๋Œ“๊ธ€ ์กฐํšŒ ๊ด€๋ฆฌ์šฉ ์ปค์Šคํ…€ ํ›… ์ƒ์„ฑ * FE-18 :fire: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ ์ œ๊ฑฐ ๋ฐ์ดํ„ฐ๋ฅผ props๋กœ ๋ฐ›๋„๋ก ์ˆ˜์ • * FE-18 :sparkles: RecentComment ์ปดํฌ๋„ŒํŠธ ์ƒ์„ฑ * FE-17 :sparkles: ์ตœ๊ทผ ์—ํ”ผ๊ทธ๋žจ ์กฐํšŒ ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-17 :sparkles: ์ตœ๊ทผ ์—ํ”ผ๊ทธ๋žจ ์กฐํšŒ api ์ƒ์„ฑ * FE-17 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์กฐํšŒ ๊ด€๋ฆฌ์šฉ ์ปค์Šคํ…€ ํ›… ์ƒ์„ฑ * FE-17 :sparkles: RecentEpigram ์ปดํฌ๋„ŒํŠธ ์ƒ์„ฑ * FE-17 :fire: ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ ์ œ๊ฑฐ * FE-17 :sparkles: ์ตœ๊ทผ ์—ํ”ผ๊ทธ๋žจ ๋”๋ณด๊ธฐ ๋ฒ„ํŠผ ๊ตฌํ˜„ * FE-17 :sparkles: ์ตœ๊ทผ ์—ํ”ผ๊ทธ๋žจ ํด๋ฆญ ์‹œ ์ƒ์„ธ ํŽ˜์ด์ง€ ์ด๋™ * FE-17 :lipstick: ๋”๋ณด๊ธฐ ๋ฒ„ํŠผ ์Šคํƒ€์ผ ์ˆ˜์ • * FE-18 :sparkles: ์ตœ๊ทผ ๋Œ“๊ธ€ ๋”๋ณด๊ธฐ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-14 โœจ ๋ฉ”์ธํŽ˜์ด์ง€ ui ๊ตฌํ˜„ (#121) * FE-14 :sparkles: ๋ฉ”์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ํŒŒ์ผ ์ƒ์„ฑ * FE-14 :lipstick: ๋กœ์ปฌ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•ด ํ…Œ์ŠคํŠธ ์ด๋ฏธ์ง€ ์‚ฝ์ž… * FE-14 :lipstick: ๋ฉ”์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ˆ˜์ • * FE-14 :lipstick: ์ปดํฌ๋„ŒํŠธ ์ œ๋ชฉ ์ถ”๊ฐ€ * FE-14 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ์‚ฌ์ด์ฆˆ ์ˆ˜์ • * FE-14 :lipstick: ์ปดํฌ๋„ŒํŠธ ๊ฐ„์˜ gap ์ˆ˜์ • * FE-14 :lipstick: ์˜ค๋Š˜์˜ ๊ฐ์ • ui ์ˆ˜์ • * FE-14 :lipstick: FAB icon ์ƒ์„ฑ * FE-14 :sparkles: FAB ๋ฒ„ํŠผ ์ƒ์„ฑ * FE-13 ๐Ÿ”€ ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#124) * FE-32 ๐Ÿ”€๊ฒ€์ƒ‰ ํŽ˜์ด์ง€ ๋ฉ”์ธ ๋จธ์ง€ (#107) * ๐Ÿ’„FE-33 ๊ฒ€์ƒ‰ ํŽ˜์ด์ง€ UI (#10) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * โœจFeat: SearchBar UI ์ดˆ์•ˆ ์™„์„ฑ * styles: tailwind css ํฐํŠธ ์‚ฌ์ด์ฆˆ ์ถ”๊ฐ€ * feat: RecentSearches UI ์ดˆ์•ˆ ์™„์„ฑ * ๏ฟฝstyles: SearchResults UI ์ˆ˜์ • * ๏ฟฝstyles: RecentSearches UI ์ˆ˜์ • * โœจstyles: ๋ฐ˜์‘ํ˜• UI ์ถ”๊ฐ€ * FE-33 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • ์ค‘ * FE-33 fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * FE-33 fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * FE-33 fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * fix: build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> * FE-65 โœจ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ๊ธฐ๋Šฅ (#51) * FE-65 โœจfeat: ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-65 โœจfeat: ๊ฒ€์ƒ‰๋ฐ”์™€ ์—ฐ๋™ํ•˜์—ฌ ์ฆ‰์‹œ ๋ฐ˜์˜๋˜๋„๋ก ์ˆ˜์ • * FE-65 โœจfeat: debounce๋ฅผ ์œ„ํ•œ lodash ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜ * FE-65 โœจfeat: debounce ๊ธฐ๋Šฅ ์ ์šฉ(++lodash ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ) * FE-65 โœจfeat: useEffectt๋กœ debouncedSearchํ•จ์ˆ˜ ์˜์กด์„ฑ ์„ค์ • * FE-65 โœจfeat: useCallback ๋Œ€์‹  useRef๋กœ ๋ณ€๊ฒฝ * FE-65 โœจfix:: debounce ๊ธฐ๋Šฅ ์ œ๊ฑฐ(๋ถˆํ•„์š”) * FE-65 โœจfeat: focus๋  ๋•Œ placeholder ์‚ฌ๋ผ์ง€๊ฒŒ ์ˆ˜์ • ๋ฐ UI ์ˆ˜์ • * FE-65 โœจfeat: isInitialMount ์„ ์–ธ ๋ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-65 โœจfix: ์ฃผ์„ ์ˆ˜์ • * FE-65 โœจfeat: ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ํด๋ฆญ ์‹œ ๊ทธ ๊ฒ€์ƒ‰์–ด๋กœ ๊ฒ€์ƒ‰๋˜๋Š” ๊ธฐ๋Šฅ * FE-65 styles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-74 โœจ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ๊ธฐ๋Šฅ (#73) * FE-74 fix: ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” lodash ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ญ์ œ * FE-74 โœจfeat: ํ…Œ์ŠคํŠธ ์šฉ api ์ฝ”๋“œ ๊ฐ€์ ธ์˜ค๊ธฐ * FE-74 โœจfeat: ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-74 โœจfix: ์ค‘๋ณต๋œ key, href ์ œ๊ฑฐ ๋ฐ ๊ทœ์น™ ๋ฌด์‹œ ์ฃผ์„ ์ถ”๊ฐ€ * FE-74 โœจtest: ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€ * FE-74 โœจfeat: ๊ฒ€์ƒ‰์–ด ํ•˜์ด๋ผ์ดํŒ… ๋ฐ ์ˆœ์„œ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-74 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ api ํŒŒ์ผ ์‚ญ์ œ * FE-74 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-74 โœจfix: ๋ฉ˜ํ† ๋ง ๋‚ด์šฉ ์ฃผ์„์œผ๋กœ ์ถ”๊ฐ€ * FE-32 ๐Ÿ”€ epic๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#77) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> * FE-75 โœจ๋ฌดํ•œ ์Šคํฌ๋กค, ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ URL์— ์ €์žฅ ๊ธฐ๋Šฅ ๊ตฌํ˜„ (#104) * FE-75 โœจstyles: tailwind .config ํŒŒ์ผ ๋ฉ”์ธ๊ณผ ํ†ตํ•ฉ * FE-75 โœจfeat: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ Header ์ถ”๊ฐ€ * FE-75 โœจrefactor: useMemo ์‚ฌ์šฉ * FE-75 โœจfeat: URL์— ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์ €์žฅ * FE-75 โœจstyles: ๋กœ๋”ฉ ์Šคํƒ€์ผ ๊ตฌํ˜„ * FE-75 โœจfeat: ์‹ค์ œ api ์ถ”๊ฐ€ * FE-75 โœจfeat: api ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-75 โœจfeat: ๋ฌดํ•œ ์Šคํฌ๋กค ๊ตฌํ˜„ * FE-75 โœจfix: ์˜์กด์„ฑ ๋ฐฐ์—ด์—์„œ ๋กœ๋”ฉ ์ƒํƒœ ์ œ๊ฑฐ * FE-75 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-75 โœจfeat:: ์‚ฌ์šฉ์ž๋งˆ๋‹ค ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ณ€๊ฒฝ * FE-75 โœจfix: ๊ฒ€์ƒ‰ ์ „ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ค์ง€ ์•Š๋„๋ก ์ˆ˜์ • * FE-32 ๐Ÿ”€๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#105) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * .http ํŒŒ์ผ ์‚ญ์ œ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-32 ๐Ÿ”€๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#110) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ * build ์˜ค๋ฅ˜ ํ•ด๊ฒฐ ์ค‘ * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * .http ํŒŒ์ผ ์‚ญ์ œ * merge main --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-32 ๊ฒ€์ƒ‰ํŽ˜์ด์ง€ ๋ฉ”์ธ ์ถฉ๋Œ ์ˆ˜์ • (#112) * .nvmrc ๋ฒ„์ „ ์ˆ˜์ • * ํฐํŠธ ๋ฐ ๊ณต์šฉ์ปฌ๋Ÿฌ ์ถ”๊ฐ€ (#6) * font-family ์ถ”๊ฐ€ * tailwind common color ์ถ”๊ฐ€ * color ๋ช… ๋ณ€๊ฒฝ * lang ์ˆ˜์ • --------- Co-authored-by: ์ „์œ ๋ฏผ * :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ shadcn ui ์ถ”๊ฐ€ (#7) * :lipstick: Feat: shadcn-ui init * :lipstick: Feat: add toast ui * Feat: add textarea ui * Feat: add switch ui * Feat: add radio-group ui * Feat: add label ui * Feat: add input ui * Feat: add form ui * Feat: add button ui * Feat: add dropdown-menu ui * Feat: add card ui * Feat: add badge ui * Feat: add avatar ui * Feat: add alert dialog ui * Chore: add eslint rules * Chore: add shadcn ui * FE-48 ๐Ÿ“ฐ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ face emoji svg ํŒŒ์ผ ์ƒ์„ฑ * FE-48 :art: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ƒ์„ฑ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ์— ๋”ฐ๋ฅธ ํด๋ž˜์Šค ์„ค์ • * FE-48 :lipstick: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ์ปดํฌ๋„ŒํŠธ ui ์ˆ˜์ • * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์นด๋“œ ํด๋ฆญ ์ด๋ฒคํŠธ ๊ตฌํ˜„ - EmotionIconCardContainer๋ฅผ ์‚ฌ์šฉํ•ด ์ƒํƒœ๊ด€๋ฆฌ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ (Clicked<->UnClicked) * FE-48 ๐Ÿ“ ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ช…ํ™•ํ•œ ์˜๋ฏธ ์ „๋‹ฌ์„ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-48 :sparkles: ๊ฐ์ • ์ด๋ชจํ‹ฐ์ฝ˜ ์ƒํƒœ ๋ณ€ํ™” ๋™๊ธฐํ™” ๊ตฌ ๊ฐ์ • ์นด๋“œ๋ฅผ ํด๋ฆญํ•  ๋•Œ ์ƒํƒœ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ „ํ™˜๋˜๊ณ , ๋‹ค๋ฅธ ์นด๋“œ์˜ ์ƒํƒœ๋„ ๋™๊ธฐํ™”๋˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-48 :sparkles: EmotionSelector ์ปดํฌ๋„ŒํŠธ ๋™์  ํฌ๊ธฐ ๋ณ€๊ฒฝ ๊ตฌํ˜„ useMediaQuery ํ›… ์ƒ์„ฑ: ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋ฆฌ์Šค๋„ˆ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ * FE-48 :fire: ์ถœ๋ ฅ ํ™•์ธ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ * FE-48 :hammer: EmotionTypes ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ emotion ๊ด€๋ จ ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ importํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๊ตฌํ˜„ * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ui ๊ตฌํ˜„ tailwind css๋ฅผ ํ™•์žฅํ•ด ์ค„๋ฌด๋Šฌ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง€ ๊ตฌํ˜„ * FE-59 :sparkles: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๋ฐ˜์‘ํ˜„ ๋””์ž์ธ ๊ตฌํ˜„ * FE-59 :lipstick: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ๊ธ€์”จ์ฒด ์ ์šฉ * FE-59 :fire: ์—ํ”ผ๊ทธ๋žจ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-59 :fire: ํ…Œ์ŠคํŠธ ํ”์  ์‚ญ์ œ * FE-58 :sparkles: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋Œ“๊ธ€ ์นด๋“œ ๊ธฐ๋ณธ ui ๊ตฌํ˜„ * FE-58 :lipstick: ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ ์šฉ * FE-58 :fire: ๋Œ“๊ธ€ ์นด๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-58 :lips: ๋Œ“๊ธ€ ์นด๋“œ ๊ด€๋ จ ์ธํ„ฐํŽ˜์ด์Šค, ์Šคํƒ€์ผ ๋ถ„๋ฆฌ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-50 โœจ๊ณต์šฉ์ปดํฌ๋„ŒํŠธ ํ—ค๋” ๊ตฌํ˜„ (#19) * FE-5050โœจ feat: ํ—ค๋” ๋ถ€๋ถ„ ๊ธฐ๋Šฅ ์ดˆ์•ˆ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”๊ฐ€ * FE-50 โœจstyles: ์ฃผ์„ ์ถ”์ถ”๊ฐ€ * FE-5050 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfeat: ๊ณต์œ  ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ ๋ฐ ํ˜„์žฌ URL ๋ณต์‚ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-50 โœจstyles: U์…‹ ์ค‘ ํ•˜๋‚˜๊ฐ€ ๋น ์ง€๋”๋ผ๋„ ์•ˆ๋ฌด๋„ˆ์ง€๊ฒŒ UI ์ˆ˜์ • * FE-50 โœจcomment: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ์ถ”๊ฐ€ * FE-50 โœจfix: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-50 โœจfix: ํ•จ์ˆ˜๋ช… ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ * FE-50 โœจfix: types ํด๋”์— interface ์ •์˜ * FE-50 fix: build ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * FE-61 ๐Ÿ”จ eslint ๊ทœ์น™ ์ˆ˜์ • * FE-61 ๐Ÿ”ฅ InteractiveEmotionIconCard ์‚ญ์ œ ๋‹จ์ˆœ ๋ž˜ํ•‘ ๊ธฐ๋Šฅ๋ฐ–์— ์—†๋Š” ์ปดํฌ๋„ŒํŠธ ์‚ญ์ œ / emotionselector์—์„œ emotioniconcard๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋„๋ก ์ˆ˜์ • * FE-61 ๐Ÿ”จ EpigramCard ์‚ฌ์ด์ฆˆ ์žฌ์ •์˜ base -> xs๋กœ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ณต์šฉ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 ๐Ÿ”จ CommentCard ํƒ€์ž… ๋‚ด๋ถ€ ์ •์˜ * FE-61 :truck: ๊ฐ์ • ์นด๋“œ ํด๋” ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-61 ๐Ÿ“ ๊ฐ์ • ์นด๋“œ, ๊ฐ์ • ์…€๋ ‰ํ„ฐ ์ฃผ์„ ์ถ”๊ฐ€ * FE-61 :fire: ๋Œ“๊ธ€ ์นด๋“œ ๋””ํดํŠธ ํ”„๋กญ ์‚ญ์ œ * FE-62 โœจfix: ์ฃผ์„ ์ˆ˜์ • ๋ฐ ํƒ€์ž… ์ˆ˜์ • (#27) * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: MOON Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-27 :twisted_rightwards_arrows: ๋งˆ์ดํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#100) * FE-34 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ํ”„๋กœํ•„ ์ˆ˜์ • ๊ธฐ๋Šฅ (#53) * FE-34 :lipstick: ๋งˆ์ดํŽ˜์ด์ง€ UI ์ดˆ๊ธฐ์ž‘์—… * FE-34 :sparkles: ๋‚ด ์ •๋ณด ์กฐํšŒ API ์—ฐ๋™ * FE-34 :lipstick: shadcn/ui Dialog ์„ค์น˜ * FE-34 :sparkles: ํ”„๋กœํ•„ ์ˆ˜์ • API ์—ฐ๋™ * FE-34 :sparkles: ์ด๋ฏธ์ง€ ์‹คํŒจ ํ† ์ŠคํŠธ ์ถ”๊ฐ€ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ์บ˜๋ฆฐ๋” ์ถœ๋ ฅ ํ•จ์ˆ˜ (#58) * FE-36 :lipstick: ๊ฐ์ •๋‹ฌ๋ ฅ UI * FE-36 :sparkles: ์บ˜๋ฆฐ๋” ํ•จ์ˆ˜ ์ƒ์„ฑ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •๋‹ฌ๋ ฅ (#65) * FE-36 :lipstick: ๊ฐ์ •๋‹ฌ๋ ฅ UI * FE-36 :sparkles: ์บ˜๋ฆฐ๋” ํ•จ์ˆ˜ ์ƒ์„ฑ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •๋‹ฌ๋ ฅ: ์˜ค๋Š˜ ๋‚ ์งœ ํ‘œ์‹œ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ์›” ๋ณ„ ๊ฐ์ •๋กœ๊ทธ ์กฐํšŒ API ์—ฐ๋™ * FE-36 :sparkles: ์›”๋ณ„ ๊ฐ์ • ๋กœ๊ทธ ํ•ด๋‹น ๋‚ ์งœ์— ์ถœ๋ ฅ * FE-36 :lipstick: ๋‹ฌ๋ ฅ css ์ˆ˜์ • * FE-36 :art: ๋งˆ์ดํŽ˜์ด์ง€ ์บ˜๋ฆฐ๋” ํ—ค๋” ์ปดํฌ๋„ŒํŠธ ๋ถ„๋ฆฌ * FE-36 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •๋‹ฌ๋ ฅ ํ•„ํ„ฐ๊ธฐ๋Šฅ * FE-27 :twisted_rightwards_arrows: ์—ํ”ฝ ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#81) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-27 :twisted_rightwards_arrows: ๋งˆ์ดํŽ˜์ด์ง€ ์—ํ”ฝ ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#85) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-27 :twisted_rightwards_arrows: ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#86) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-37 :sparkles: ๋งˆ์ดํŽ˜์ด์ง€ ๊ฐ์ •์ฐจํŠธ (#89) * FE-37 :recycle: ์›”๋ณ„ ๊ฐ์ •๋กœ๊ทธ ์กฐํšŒ ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง * FE-37 :sparkles: ๊ฐ์ • ์ฐจํŠธ * FE-37 :hammer: ์ƒ์ˆ˜ ์ปจ๋ฒค์…˜ ์ˆ˜์ • * FE-27 :twisted_rightwards_arrows: ๋ธŒ๋žœ์น˜ ์ตœ์‹ ํ™” (#99) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-57 :sparkles: ๋Œ“๊ธ€ ์‚ญ์ œ API (#88) * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (#93) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ์ตœ์‹ ํ™” (์ถฉ๋Œ์ˆ˜์ •) (#98) --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ * FE-27 :hammer: ์ถฉ๋Œ์˜ค๋ฅ˜ ์ˆ˜์ • * FE-27 :hammer: ์ถฉ๋Œ๋‚ด์—ญ ์ˆ˜์ • * FE-27 :twisted_rightwards_arrows: ์ถฉ๋Œ์˜ค๋ฅ˜ ์ˆ˜์ • --------- Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: MOON Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: NEWJIN <109906670+newjinlee@users.noreply.github.com> Co-authored-by: NEWJIN * FE-27 :twisted_rightwards_arrows: ๋งˆ์ดํŽ˜์ด์ง€ ์ตœ์‹ ํ™” (#102) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :lipstick: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ถ”๊ฐ€ * :lipstick: ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋กœ๊ณ  ์ถ”๊ฐ€ * :lipstick: ํšŒ์›๊ฐ€์ž… ui ์ถ”๊ฐ€ * :sparkles: ํšŒ์›๊ฐ€์ž… ์Šคํ‚ค๋งˆ ์ •์˜ * :heavy_plus_sign: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์— ์Šคํ‚ค๋งˆ ์ ์šฉ * :lipstick: ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๋œฐ ๋•Œ ๋ผ๋ฒจ, ์ธํ’‹๋„ ๊ฐ™์€ ์—๋Ÿฌ ์ƒ‰๊น” ์ถ”๊ฐ€ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•œ ๋ฒ„ํŠผ์˜ ๋น„ํ™œ์„ฑํ™” ์ฒ˜๋ฆฌ * :memo: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ๋”ฐ๋ฅธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ ์ƒ‰์ƒ ์ฒ˜๋ฆฌ * :fire: AuthLayout ์‚ญ์ œ * :art: ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๋ธŒ๋ผ์šฐ์ € ํ™•๋Œ€์‹œ ui ๊นจ์ง ์ˆ˜์ • * :truck: ์ •๊ทœํ‘œํ˜„์‹ ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :sparkles: ํšŒ์›๊ฐ€์ž… ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ํšŒ์›๊ฐ€์ž… api ์ƒ์„ฑ * :sparkles: useRegisterMutation hook ์ƒ์„ฑ * :zap: ํšŒ์›๊ฐ€์ž… ํผ์— mutaion hook ์ ์šฉ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :zap: isAxiosError๋กœ ๋ณ€๊ฒฝ * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ ์ •์˜ * :sparkles: ๋กœ๊ทธ์ธ api ์ƒ์„ฑ * :sparkles: ์š”์ฒญ๊ณผ ์‘๋‹ต์— ๊ด€ํ•œ ์ธํ„ฐ์…‰ํ„ฐ ์ถ”๊ฐ€ * :sparkles: useSignin mutation hook ์ƒ์„ฑ * :zap: useSignin hook ๋กœ๊ทธ์ธ ํผ์— ์ ์šฉ * :fire: AuthLayout ์‚ญ์ œ * :art: onSubmit ํ•จ์ˆ˜ ์ธ๋ผ์ธ์œผ๋กœ ์ •์˜ * :recycle: ์‘๋‹ต ์ธํ„ฐ์…‰ํ„ฐ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ฐ ํ† ํฐ ๊ฐฑ์‹  ๋กœ์ง ๊ฐœ์„  * :recycle: postSignin api ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์‚ญ์ œ * :fire: useSignin hook ์‚ญ์ œ * :truck: useSigninMutation hook์œผ๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ฐ ํŒŒ์ผ ์ด๋™ * :sparkles: Toaster ์ปดํฌ๋„ŒํŠธ ์ถ”๊ฐ€ * :sparkles: toast๋กœ ์—๋Ÿฌ๋ฉ”์‹œ์ง€ ๋„์šฐ๊ธฐ * :twisted_rightwards_arrows: ์ถฉ๋Œ ํ•ด๊ฒฐ * :bug: postSignup ํ•จ์ˆ˜ ์ถ”๊ฐ€ * :bug: postSignin ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ์‹ ์ˆ˜์ • * :wrench: lint ์ˆ˜์ • * :sparkles: oauth api ์ƒ์„ฑ * FE-71 ๐Ÿ”€ ์—ํ”ผ๊ทธ๋žจ ์ž‘์„ฑ ํŽ˜์ด์ง€ (#71) * FE-64๐Ÿ’„ ๊ธ€์ž‘์„ฑ ํŽ˜์ด์ง€ UI์ถ”๊ฐ€ (#44) * FE-72 โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ (#52) * FE-72โœจ ๊ธ€์ž‘์„ฑํŽ˜์ด์ง€ ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ * FE-72โœจ formํƒœ๊ทธ Form์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-72โœจ ํƒœ๊ทธ ์ €์žฅ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก api์—ฐ๋™ * FE-72โœจ ์—ํ”ผ๊ทธ๋žจ ๋“ฑ๋ก์‹œ ํ•ด๋‹น ์—ํ”ผ๊ทธ๋žจ ํŽ˜์ด์ง€๋กœ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-72โœจ ๋“ฑ๋ก ์ค‘์ผ๋•Œ์˜ ๋กœ์ง์ถ”๊ฐ€ * FE-72โœจ toast-> alert-dailog๋กœ ๋ณ€๊ฒฝ * FE-72๐Ÿ“ TODO์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ (#66) * FE-73โ™ป๏ธ Tag๊ด€๋ฆฌ ํ•จ์ˆ˜ ํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-73โœจ RadioGroup ๋กœ์ง ์ˆ˜์ • * FE-73โœจ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ €์ž ๋ณธ์ธ ์„ ํƒ์‹œ์˜ ๋กœ์ง ๋ณ€๊ฒฝ * FE-73โœจ ์ค‘๋ณต ํƒœ๊ทธ ๊ฒ€์‚ฌ ๋กœ์ง ์ถ”๊ฐ€ * FE-73โ™ป๏ธ ์ถœ์ฒ˜ ์œ ํšจ์„ฑ(optional)๊ฒ€์‚ฌ ์ˆ˜์ • * FE-73โœจ ํ•„์ˆ˜ํ•ญ๋ชฉ ์ž…๋ ฅํ–ˆ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™” * FE-73๐Ÿ› ํƒœ๊ทธ๋ฅผ ์ž…๋ ฅํ–ˆ๋‹ค๊ฐ€ ์ง€์› ์„๋•Œ ๋ฒ„ํŠผ ํ™œ์„ฑํ™”๋˜์žˆ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • * FE-73๐Ÿ› useEffect ์˜์กด์„ฑ๋ฐฐ์—ด lint problem ํ•ด๊ฒฐ * FE-73๐Ÿ› url์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ์•ˆ๋œจ๋Š” ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-71โ™ป๏ธ epic๋ธŒ๋žœ์น˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ (#76) * FE-71โ™ป๏ธ token,interceptor ๋กœ์ง ์ˆ˜์ • * FE-71โ™ป๏ธ AddEpigram ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ˜์˜ * FE-71๐Ÿ”ฅ ํ…Œ์ŠคํŠธ์šฉ ์ƒ์„ธํŽ˜์ด์ง€ ์‚ญ์ œ * FE-71โ™ป๏ธ onKeyDown -> onKeyUp ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * :sparkles: ์นด์นด์˜คํ†ก ๋ฆฌ๋””๋ ‰ํŠธ uri ์„ค์ • * :sparkles: useKakaoLogin mutation hook ์ƒ์„ฑ * :zap: ๋„ค์ด๋ฒ„ ๊ตฌ๊ธ€ ์นด์นด์˜ค ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ ๋งํฌ ์„ค์ • * :recycle: ์—๋Ÿฌ์ฒ˜๋ฆฌ ๋กœ์ง ์ˆ˜์ • * FE-51 :twisted_rightwards_arrows: ๊ณต์šฉ API ๋จธ์ง€ ์š”์ฒญ (#92) * FE-52 โœจ์—ํ”ผ๊ทธ๋žจ ๋ชฉ๋ก์กฐํšŒ API (#34) * FE-52 feat: api schema ์ž‘์„ฑ * FE-52 โœจfeat: getEpigrams api ์ž‘์„ฑ * FE-522 โœจfix: default export๋กœ ๋ณ€๊ฒฝ * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ * FE-52 โœจfeat: BaseUrl, TeamID ์ƒ์ˆ˜ ์ถ”๊ฐ€ ๋ฐ axios baseTRL ์ˆ˜์ • * FE-52 โœจfix: schema ๋ฐ apis ํŒŒ์ผ ์ˆ˜์ • * FE-52 โœจtest: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: .envํŒŒ์ผ ์ƒ์„ฑ ๋ฐ BaseURL ์ˆ˜์ • * FE-52 โœจfix: limit ํƒ€์ž… ์ˆ˜์ •(optional ์‚ญ์ œ) * FE-52 โœจtext: ํ…Œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์‚ญ์ œ * FE-52 โœจfix: api GET์š”์ฒญ ์ฃผ์†Œ ์ˆ˜์ •('epigrams' -> '/epigrams') * FE-53 :sparkles: ๊ฐ์ •์ด๋ชจํ‹ฐ์ฝ˜ ์ €์žฅ ์Šคํ‚ค๋งˆ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์ €์žฅ api ์ƒ์„ฑ * FE-53 :sparkles: getMe ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋กœ๊ทธ์ธ ์ƒํƒœ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-53 :sparkles: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ * FE-53 :sparkles: ๊ฐ์ • ์ €์žฅ ํ›„ ํ† ์ŠคํŠธ ์•Œ๋ฆผ ํ‘œ์‹œ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ api ์ƒ์„ฑ * FE-53 :hammer: ๊ฐ์ • ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ถ”๊ฐ€ +) post, get ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ํ•œ์˜ ๋ณ€ํ™˜ ํ•จ์ˆ˜ ์ด๋™ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์Šคํ‚ค๋งˆ ์ถ”๊ฐ€ ์ •์˜ * FE-53 :sparkles: ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ํ•จ์ˆ˜ ์ ์šฉ * FE-53 :truck: ์˜ค๋Š˜์˜ ๊ฐ์ • type ์ด๋ฆ„ ๋ณ€๊ฒฝ * FE-53 :sparkles: useMutation ํ›… ์‚ฌ์šฉ * FE-53 :memo: EmotionSelector ์ฃผ์„ ์ถ”๊ฐ€ * FE-53 :fire: api ํ•จ์ˆ˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋ถ€๋ถ„ ์ œ๊ฑฐ * FE-53 :hammer: useQuery๋ฅผ ์‚ฌ์šฉํ•ด ์˜ค๋Š˜์˜ ๊ฐ์ • ์กฐํšŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ๋Š” useQuery๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฑฐ๋ผ ํ•จ * FE-56 :sparkles: ๋Œ“๊ธ€ ์ˆ˜์ • API (#84) * FE-29 :twisted_rightwards_arrows: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋จธ์ง€ ์š”์ฒญ (#39) * :heavy_plus_sign: ์ด๋ฏธ์ง€ ํŒŒ์ผ ์ถ”๊ฐ€ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ƒ์„ฑ * :lipstick: ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ UI ์ƒ์„ฑ ๋ฐ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๊ตฌํ˜„ * FE-60 :sparkles: react hook form, zod ์ถ”๊ฐ€ * FE-60 :lipstick: ๋กœ๊ทธ์ธ ํผ ์Šคํƒ€์ผ ์ˆ˜์ • - ํ…์ŠคํŠธ ์ธํ’‹ ํ…Œ๋‘๋ฆฌ - ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ * FE-60 :recycle: ๋กœ๊ทธ์ธ ์Šคํ‚ค๋งˆ ๋ถ„๋ฆฌ * :sparkles: ๋กœ๊ทธ์ธ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆโ€ฆ --------- Co-authored-by: imsoohyeok <160010477+imsoohyeok@users.noreply.github.com> Co-authored-by: ์ „์œ ๋ฏผ Co-authored-by: JeonYumin94 <40783675+JeonYumin94@users.noreply.github.com> Co-authored-by: MOON <50370479+jangmoonwon@users.noreply.github.com> Co-authored-by: MOON Co-authored-by: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Co-authored-by: ์šฐ์ง€์„ Co-authored-by: kich555 <79491683+kich555@users.noreply.github.com> Co-authored-by: morrison --- public/icon/FAB-icon-lg.svg | 18 +++++++++ public/icon/FAB-icon-sm.svg | 18 +++++++++ public/icon/plus-icon.svg | 6 +++ src/apis/getRecentComments.ts | 13 +++++++ src/apis/getRecentEpigrams.ts | 13 +++++++ src/apis/getTodayEpigram.ts | 9 +++++ src/components/Card/CommentCard.tsx | 24 ++++-------- src/components/Card/EpigramCard.tsx | 51 +++++++++++++------------ src/components/main/FAB.tsx | 21 ++++++++++ src/components/main/LoadMoreButton.tsx | 29 ++++++++++++++ src/components/main/RecentComment.tsx | 42 ++++++++++++++++++++ src/components/main/RecentEpigram.tsx | 53 ++++++++++++++++++++++++++ src/components/main/TodayEmotion.tsx | 15 ++++++++ src/components/main/TodayEpigram.tsx | 22 +++++++++++ src/hooks/useGetRecentComments.ts | 11 ++++++ src/hooks/useGetRecentEpigrams.ts | 11 ++++++ src/hooks/useGetTodayEpigram.ts | 11 ++++++ src/pageLayout/Epigrams/MainLayout.tsx | 34 +++++++++++++++++ src/pages/epigrams/index.tsx | 7 ++++ src/schema/recentEpigram.ts | 27 +++++++++++++ src/schema/recentcomment.ts | 27 +++++++++++++ src/schema/todayepigram.ts | 21 ++++++++++ src/types/CommentCardTypes.ts | 8 ++++ 23 files changed, 450 insertions(+), 41 deletions(-) create mode 100644 public/icon/FAB-icon-lg.svg create mode 100644 public/icon/FAB-icon-sm.svg create mode 100644 public/icon/plus-icon.svg create mode 100644 src/apis/getRecentComments.ts create mode 100644 src/apis/getRecentEpigrams.ts create mode 100644 src/apis/getTodayEpigram.ts create mode 100644 src/components/main/FAB.tsx create mode 100644 src/components/main/LoadMoreButton.tsx create mode 100644 src/components/main/RecentComment.tsx create mode 100644 src/components/main/RecentEpigram.tsx create mode 100644 src/components/main/TodayEmotion.tsx create mode 100644 src/components/main/TodayEpigram.tsx create mode 100644 src/hooks/useGetRecentComments.ts create mode 100644 src/hooks/useGetRecentEpigrams.ts create mode 100644 src/hooks/useGetTodayEpigram.ts create mode 100644 src/pageLayout/Epigrams/MainLayout.tsx create mode 100644 src/pages/epigrams/index.tsx create mode 100644 src/schema/recentEpigram.ts create mode 100644 src/schema/recentcomment.ts create mode 100644 src/schema/todayepigram.ts create mode 100644 src/types/CommentCardTypes.ts diff --git a/public/icon/FAB-icon-lg.svg b/public/icon/FAB-icon-lg.svg new file mode 100644 index 00000000..d1bdcac1 --- /dev/null +++ b/public/icon/FAB-icon-lg.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/public/icon/FAB-icon-sm.svg b/public/icon/FAB-icon-sm.svg new file mode 100644 index 00000000..d688532c --- /dev/null +++ b/public/icon/FAB-icon-sm.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/public/icon/plus-icon.svg b/public/icon/plus-icon.svg new file mode 100644 index 00000000..5cedfa23 --- /dev/null +++ b/public/icon/plus-icon.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/apis/getRecentComments.ts b/src/apis/getRecentComments.ts new file mode 100644 index 00000000..5f83fcca --- /dev/null +++ b/src/apis/getRecentComments.ts @@ -0,0 +1,13 @@ +import type { GetRecentCommentsResponseType } from '@/schema/recentcomment'; +import httpClient from './index'; + +const getRecentComments = async (limit: number): Promise => { + const response = await httpClient.get('/comments', { + params: { + limit, + }, + }); + return response.data; +}; + +export default getRecentComments; diff --git a/src/apis/getRecentEpigrams.ts b/src/apis/getRecentEpigrams.ts new file mode 100644 index 00000000..a2fb9f52 --- /dev/null +++ b/src/apis/getRecentEpigrams.ts @@ -0,0 +1,13 @@ +import type { GetRecentEpigramsResponseType } from '@/schema/recentEpigram'; +import httpClient from './index'; + +const getRecentEpigrams = async (limit: number): Promise => { + const response = await httpClient.get('/epigrams', { + params: { + limit, + }, + }); + return response.data; +}; + +export default getRecentEpigrams; diff --git a/src/apis/getTodayEpigram.ts b/src/apis/getTodayEpigram.ts new file mode 100644 index 00000000..17eb6aa0 --- /dev/null +++ b/src/apis/getTodayEpigram.ts @@ -0,0 +1,9 @@ +import type { EpigramType } from '@/schema/todayepigram'; +import httpClient from './index'; + +const getTodayEpigram = async (): Promise => { + const response = await httpClient.get('/epigrams/today'); + return response.data; +}; + +export default getTodayEpigram; diff --git a/src/components/Card/CommentCard.tsx b/src/components/Card/CommentCard.tsx index a58f0e6f..45368d72 100644 --- a/src/components/Card/CommentCard.tsx +++ b/src/components/Card/CommentCard.tsx @@ -1,33 +1,26 @@ import React from 'react'; import Image from 'next/image'; +import { CommentCardProps } from '@/types/CommentCardTypes'; import { sizeStyles, textSizeStyles, gapStyles, paddingStyles, contentWidthStyles } from '@/styles/CommentCardStyles'; -export interface CommentCardProps { - status: 'edit' | 'complete'; -} +function CommentCard({ writer, content, createdAt, status }: CommentCardProps) { + const formattedDate = createdAt.toLocaleString(); -function CommentCard({ status }: CommentCardProps) { return (
- ํ”„๋กœํ•„ ์ด๋ฏธ์ง€{' '} + ํ”„๋กœํ•„ ์ด๋ฏธ์ง€
-
- {/* ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ์ž…๋‹ˆ๋‹ค. */} - ์ง€ํ‚ฌ๊ณผ ํ•˜์ด๋“œ -
-
- {/* ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ์ž…๋‹ˆ๋‹ค. */} - 1์‹œ๊ฐ„ ์ „ -
+
{writer.nickname}
+
{formattedDate}
{status === 'edit' && (
@@ -39,8 +32,7 @@ function CommentCard({ status }: CommentCardProps) {
- {/* ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ์ž…๋‹ˆ๋‹ค. */} - ์˜ค๋Š˜ ํ•˜๋ฃจ ์šฐ์šธํ–ˆ์—ˆ๋Š”๋ฐ ๋•๋ถ„์— ๋งŽ์€ ํž˜ ์–ป๊ณ  ๊ฐ‘๋‹ˆ๋‹ค. ์—ฐ๊ธˆ์ˆ ์‚ฌ ์ฑ… ๋‹ค์‹œ ์‚ฌ์„œ ์˜ค๋žœ๋งŒ์— ์ฝ์–ด๋ด์•ผ๊ฒ ์–ด์š”! + {content}
diff --git a/src/components/Card/EpigramCard.tsx b/src/components/Card/EpigramCard.tsx index 07ceb392..a4191b86 100644 --- a/src/components/Card/EpigramCard.tsx +++ b/src/components/Card/EpigramCard.tsx @@ -1,14 +1,21 @@ import React from 'react'; -// figma ์ƒ์œผ๋กœ๋Š” sm ~ 3xl ์‚ฌ์ด์ฆˆ๋กœ ๊ตฌํ˜„๋˜์–ด ์žˆ๋Š”๋ฐ, tailwind ํ™˜๊ฒฝ์„ ๋ฐ˜์˜ํ•ด -// xs ~ 2xl ์œผ๋กœ ์ •์˜ํ–ˆ์Šต๋‹ˆ๋‹ค. +interface Tag { + name: string; + id: number; +} + +interface EpigramCardProps { + content: string; + author: string; + tags: Tag[]; +} + const sizeStyles = { - xs: 'w-[286px] max-h-[132px]', - sm: 'sm:w-[312px] sm:max-h-[152px]', + base: 'w-[312px] max-h-[152px]', md: 'md:w-[384px] md:max-h-[180px]', lg: 'lg:w-[540px] lg:max-h-[160px]', xl: 'xl:w-[640px] xl:max-h-[196px]', - '2xl': '2xl:w-[744px] 2xl:max-h-[196px]', }; const textSizeStyles = { @@ -17,44 +24,38 @@ const textSizeStyles = { md: 'md:text-base', lg: 'lg:text-xl', xl: 'xl:text-2xl', - '2xl': '2xl:text-2xl', }; -function EpigramCard() { +function EpigramCard({ content, author, tags }: EpigramCardProps) { return ( -
+
{/* eslint-disable-next-line */}
{/* ์ค„๋ฌด๋Šฌ๋ฅผ ๋งŒ๋“ค๋ ค๋ฉด ๋น„์–ด์žˆ๋Š” div๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. */}
- {/* ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ์ž…๋‹ˆ๋‹ค. */} - ์˜ค๋žซ๋™์•ˆ ๊ฟˆ์„ ๊ทธ๋ฆฌ๋Š” ์‚ฌ๋žŒ์€ ๋งˆ์นจ๋‚ด ๊ทธ ๊ฟˆ์„ ๋‹ฎ์•„ ๊ฐ„๋‹ค. + {content}
- {/* ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ์ž…๋‹ˆ๋‹ค. */}- ์•™๋“œ๋ ˆ ๋ง๋กœ - + - {author} -
-
- {/* ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ์ž…๋‹ˆ๋‹ค. */} - #๋‚˜์•„๊ฐ€์•ผํ• ๋•Œ -
-
- {/* ํ…Œ์ŠคํŠธ ํ…์ŠคํŠธ์ž…๋‹ˆ๋‹ค. */} - #๊ฟˆ์„์ด๋ฃจ๊ณ ์‹ถ์„๋•Œ -
+ {tags.map((tag) => ( +
+ #{tag.name} +
+ ))}
); diff --git a/src/components/main/FAB.tsx b/src/components/main/FAB.tsx new file mode 100644 index 00000000..740e35d5 --- /dev/null +++ b/src/components/main/FAB.tsx @@ -0,0 +1,21 @@ +import React from 'react'; +import Image from 'next/image'; + +function scrollToTop() { + window.scrollTo({ top: 0, behavior: 'smooth' }); +} + +function FAB() { + return ( + + ); +} + +export default FAB; diff --git a/src/components/main/LoadMoreButton.tsx b/src/components/main/LoadMoreButton.tsx new file mode 100644 index 00000000..a56835f1 --- /dev/null +++ b/src/components/main/LoadMoreButton.tsx @@ -0,0 +1,29 @@ +import React from 'react'; +import Image from 'next/image'; + +interface LoadMoreButtonProps { + onClick: () => void; +} + +function LoadMoreButton({ onClick }: LoadMoreButtonProps) { + return ( +
{ + if (e.key === 'Enter' || e.key === ' ') { + onClick(); + } + }} + > +
+ plus icon +
+
๋”๋ณด๊ธฐ
+
+ ); +} + +export default LoadMoreButton; diff --git a/src/components/main/RecentComment.tsx b/src/components/main/RecentComment.tsx new file mode 100644 index 00000000..eefdad42 --- /dev/null +++ b/src/components/main/RecentComment.tsx @@ -0,0 +1,42 @@ +import React, { useState } from 'react'; +import useGetRecentComments from '@/hooks/useGetRecentComments'; +import CommentCard from '@/components/Card/CommentCard'; +import type { CommentType } from '@/schema/recentcomment'; +import LoadMoreButton from './LoadMoreButton'; + +function RecentComments() { + const [comments, setComments] = useState([]); + const [limit, setLimit] = useState(3); + const { data, error, isLoading } = useGetRecentComments(limit); + + React.useEffect(() => { + if (data?.list) { + setComments(data.list); + } + }, [data]); + + const handleLoadMore = () => { + setLimit((prevLimit) => prevLimit + 4); + }; + + if (isLoading) return

๋กœ๋”ฉ ์ค‘...

; + if (error) return

{error.message}

; + + return ( +
+

์ตœ์‹  ๋Œ“๊ธ€

+
+ {comments.map((comment) => ( + + ))} + {data?.totalCount && comments.length < data.totalCount && ( +
+ +
+ )} +
+
+ ); +} + +export default RecentComments; diff --git a/src/components/main/RecentEpigram.tsx b/src/components/main/RecentEpigram.tsx new file mode 100644 index 00000000..4fb4d1eb --- /dev/null +++ b/src/components/main/RecentEpigram.tsx @@ -0,0 +1,53 @@ +import React, { useState } from 'react'; +import { useRouter } from 'next/router'; +import useGetRecentEpigrams from '@/hooks/useGetRecentEpigrams'; +import EpigramCard from '@/components/Card/EpigramCard'; +import { RecentEpigramType } from '@/schema/recentEpigram'; +import LoadMoreButton from './LoadMoreButton'; + +function RecentEpigrams() { + const router = useRouter(); + const [limit, setLimit] = useState(3); + const { data, error, isLoading } = useGetRecentEpigrams(limit); + + const handleEpigramClick = (id: number) => { + router.push(`/epigrams/${id}`); + }; + + const loadMore = () => { + setLimit((prevLimit) => prevLimit + 5); + }; + + if (isLoading) return

๋กœ๋”ฉ ์ค‘...

; + if (error) return

{error.message}

; + + return ( +
+

์ตœ์‹  ์—ํ”ผ๊ทธ๋žจ

+
+ {data?.list.map((epigram: RecentEpigramType) => ( +
handleEpigramClick(epigram.id)} + role='button' + tabIndex={0} + onKeyPress={(e) => { + if (e.key === 'Enter' || e.key === ' ') { + handleEpigramClick(epigram.id); + } + }} + > + +
+ ))} + {data && limit < data.totalCount && ( +
+ +
+ )} +
+
+ ); +} + +export default RecentEpigrams; diff --git a/src/components/main/TodayEmotion.tsx b/src/components/main/TodayEmotion.tsx new file mode 100644 index 00000000..57b9575c --- /dev/null +++ b/src/components/main/TodayEmotion.tsx @@ -0,0 +1,15 @@ +import React from 'react'; +import EmotionSelector from '../Emotion/EmotionSelector'; + +function TodayEmotion() { + return ( +
+

์˜ค๋Š˜์˜ ๊ฐ์ •

+
+ ; +
+
+ ); +} + +export default TodayEmotion; diff --git a/src/components/main/TodayEpigram.tsx b/src/components/main/TodayEpigram.tsx new file mode 100644 index 00000000..ea967782 --- /dev/null +++ b/src/components/main/TodayEpigram.tsx @@ -0,0 +1,22 @@ +import React from 'react'; +import useGetTodayEpigram from '@/hooks/useGetTodayEpigram'; +import EpigramCard from '@/components/Card/EpigramCard'; + +function TodayEpigram() { + const { data: epigram, error, isLoading } = useGetTodayEpigram(); + + if (isLoading) return

๋กœ๋”ฉ ์ค‘...

; + if (error) return

{error.message}

; + if (!epigram) return

์˜ค๋Š˜์˜ ์—ํ”ผ๊ทธ๋žจ์ด ์—†์Šต๋‹ˆ๋‹ค.

; + + return ( +
+

์˜ค๋Š˜์˜ ์—ํ”ผ๊ทธ๋žจ

+
+ ; +
+
+ ); +} + +export default TodayEpigram; diff --git a/src/hooks/useGetRecentComments.ts b/src/hooks/useGetRecentComments.ts new file mode 100644 index 00000000..443938a9 --- /dev/null +++ b/src/hooks/useGetRecentComments.ts @@ -0,0 +1,11 @@ +import { useQuery } from '@tanstack/react-query'; +import getRecentComments from '@/apis/getRecentComments'; +import { GetRecentCommentsResponseType } from '@/schema/recentcomment'; + +const useGetRecentComments = (limit: number) => + useQuery({ + queryKey: ['recentComments', limit], + queryFn: () => getRecentComments(limit), + }); + +export default useGetRecentComments; diff --git a/src/hooks/useGetRecentEpigrams.ts b/src/hooks/useGetRecentEpigrams.ts new file mode 100644 index 00000000..beaaa314 --- /dev/null +++ b/src/hooks/useGetRecentEpigrams.ts @@ -0,0 +1,11 @@ +import { useQuery } from '@tanstack/react-query'; +import getRecentEpigrams from '@/apis/getRecentEpigrams'; +import { GetRecentEpigramsResponseType } from '@/schema/recentEpigram'; + +const useGetRecentEpigrams = (limit: number) => + useQuery({ + queryKey: ['recentEpigrams', limit], + queryFn: () => getRecentEpigrams(limit), + }); + +export default useGetRecentEpigrams; diff --git a/src/hooks/useGetTodayEpigram.ts b/src/hooks/useGetTodayEpigram.ts new file mode 100644 index 00000000..e40c5aac --- /dev/null +++ b/src/hooks/useGetTodayEpigram.ts @@ -0,0 +1,11 @@ +import { useQuery } from '@tanstack/react-query'; +import getTodayEpigram from '@/apis/getTodayEpigram'; +import { EpigramType } from '@/schema/todayepigram'; + +const useGetTodayEpigram = () => + useQuery({ + queryKey: ['epigram'], + queryFn: getTodayEpigram, + }); + +export default useGetTodayEpigram; diff --git a/src/pageLayout/Epigrams/MainLayout.tsx b/src/pageLayout/Epigrams/MainLayout.tsx new file mode 100644 index 00000000..ab5baa66 --- /dev/null +++ b/src/pageLayout/Epigrams/MainLayout.tsx @@ -0,0 +1,34 @@ +import React from 'react'; +import Header from '@/components/Header/Header'; +import TodayEpigram from '@/components/main/TodayEpigram'; +import TodayEmotion from '@/components/main/TodayEmotion'; +import RecentEpigrams from '@/components/main/RecentEpigram'; +import RecentComments from '@/components/main/RecentComment'; +import FAB from '@/components/main/FAB'; + +function MainLayout() { + return ( + <> +
{}} /> +
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+ + + ); +} + +export default MainLayout; diff --git a/src/pages/epigrams/index.tsx b/src/pages/epigrams/index.tsx new file mode 100644 index 00000000..b78673ee --- /dev/null +++ b/src/pages/epigrams/index.tsx @@ -0,0 +1,7 @@ +import MainLayout from '@/pageLayout/Epigrams/MainLayout'; + +function EpigramsPage() { + return ; +} + +export default EpigramsPage; diff --git a/src/schema/recentEpigram.ts b/src/schema/recentEpigram.ts new file mode 100644 index 00000000..899fcc7f --- /dev/null +++ b/src/schema/recentEpigram.ts @@ -0,0 +1,27 @@ +import * as z from 'zod'; + +const TagSchema = z.object({ + name: z.string(), + id: z.number(), +}); + +const RecentEpigramSchema = z.object({ + likeCount: z.number(), + tags: z.array(TagSchema), + writerId: z.number(), + referenceUrl: z.string().url(), + referenceTitle: z.string(), + author: z.string(), + content: z.string(), + id: z.number(), +}); + +export const GetRecentEpigramsResponseSchema = z.object({ + totalCount: z.number(), + nextCursor: z.number(), + list: z.array(RecentEpigramSchema), +}); + +export type TagType = z.infer; +export type RecentEpigramType = z.infer; +export type GetRecentEpigramsResponseType = z.infer; diff --git a/src/schema/recentcomment.ts b/src/schema/recentcomment.ts new file mode 100644 index 00000000..524c0473 --- /dev/null +++ b/src/schema/recentcomment.ts @@ -0,0 +1,27 @@ +import * as z from 'zod'; + +const WriterSchema = z.object({ + image: z.string().url(), + nickname: z.string(), + id: z.number(), +}); + +const CommentSchema = z.object({ + epigramId: z.number(), + writer: WriterSchema, + updatedAt: z.coerce.date(), + createdAt: z.coerce.date(), + isPrivate: z.boolean(), + content: z.string(), + id: z.number(), +}); + +export const GetRecentCommentsResponseSchema = z.object({ + totalCount: z.number(), + nextCursor: z.number(), + list: z.array(CommentSchema), +}); + +export type WriterType = z.infer; +export type CommentType = z.infer; +export type GetRecentCommentsResponseType = z.infer; diff --git a/src/schema/todayepigram.ts b/src/schema/todayepigram.ts new file mode 100644 index 00000000..2e8fbb0b --- /dev/null +++ b/src/schema/todayepigram.ts @@ -0,0 +1,21 @@ +import * as z from 'zod'; + +const TagSchema = z.object({ + name: z.string(), + id: z.number(), +}); + +export const EpigramSchema = z.object({ + likeCount: z.number(), + tags: z.array(TagSchema), + writerId: z.number(), + referenceUrl: z.string().url(), + referenceTitle: z.string(), + author: z.string(), + content: z.string(), + id: z.number(), + isLiked: z.boolean(), +}); + +export type TagType = z.infer; +export type EpigramType = z.infer; diff --git a/src/types/CommentCardTypes.ts b/src/types/CommentCardTypes.ts new file mode 100644 index 00000000..8d0f1437 --- /dev/null +++ b/src/types/CommentCardTypes.ts @@ -0,0 +1,8 @@ +import { WriterType } from '@/schema/recentcomment'; + +export interface CommentCardProps { + writer: WriterType; + content: string; + createdAt: Date; + status?: 'view' | 'edit'; +} From 52b7c9ee9dac6d12fe18ddbfe295e008acca3a0a Mon Sep 17 00:00:00 2001 From: Jiseok Woo <115205098+jisurk@users.noreply.github.com> Date: Wed, 31 Jul 2024 09:24:12 +0900 Subject: [PATCH 06/17] =?UTF-8?q?FE-54=F0=9F=94=80=20=EC=83=81=EC=84=B8?= =?UTF-8?q?=ED=8E=98=EC=9D=B4=EC=A7=80=20main=20merge=20(#120)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * FE-31 ์ƒ์„ธํŽ˜์ด์ง€ UI ์ œ์ž‘ (#12) * FE-31๐Ÿ’„์ƒ์„ธํŽ˜์ด์ง€ ๊ธฐ๋ณธ UI ์ œ์ž‘ * FE-31โ™ป๏ธ textareaํƒœ๊ทธ Textarea์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-31๐Ÿ’„ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ถ”๊ฐ€ --------- Co-authored-by: Woojiseok * FE-43 โœจ ์ƒ์„ธํŽ˜์ด์ง€ ์—ํ”ผ๊ทธ๋žจ ์กฐํšŒ (#18) * FE-43โœจ ์ƒ์„ธํŽ˜์ด์ง€ Epigram API์—ฐ๋™ * FE-43โšก ๏ธaxios ์—๋Ÿฌ ํ•ธ๋“ค๋ง ์ถ”๊ฐ€ * FE-43๐Ÿ—๏ธ ์ƒ์„ธํŽ˜์ด์ง€ Layout ๊ตฌ์กฐ๊ฐœ์„  * FE-43๐Ÿ“ ์ฃผ์„ ์ถ”๊ฐ€ * FE-43๐Ÿ”ฅ ์‚ฌ์šฉ์•ˆํ•˜๋Š” ํŒŒ์ผ ์‚ญ์ œ * FE-43โœ๏ธ ์˜คํƒ€ ์ˆ˜์ • * FE-43 ๐Ÿ› id์—†์„๋•Œ useQuery์‹คํ–‰๋˜๋Š” ๋ฌธ์ œ ํ•ด๊ฒฐ * FE-43โ™ป๏ธ interface->zod ๋ณ€๊ฒฝ --------- Co-authored-by: ์šฐ์ง€์„ * FE-43โœจ ์‚ฌ์šฉ์ž ID์— ๋”ฐ๋ฅธ ๋ฏธํŠธ๋ณผ์•„์ด์ฝ˜ ํ‘œ์‹œ (#22) * FE-43โœจ ์‚ฌ์šฉ์ž ID์— ๋”ฐ๋ฅธ ๋ฏธํŠธ๋ณผ์•„์ด์ฝ˜ ํ‘œ์‹œ * FE-43โœจ ์—ํ”ผ๊ทธ๋žจ ์ƒ์„ธํŽ˜์ด์ง€ ๋”๋ณด๊ธฐ ๋“œ๋กญ๋‹ค์šด ์ถ”๊ฐ€ * FE-43๐Ÿ’„ MoreOptionMenu ์Šคํƒ€์ผ ์ˆ˜์ • * FE-31 ์ƒ์„ธํŽ˜์ด์ง€ UI ์ œ์ž‘ (#12) * FE-31๐Ÿ’„์ƒ์„ธํŽ˜์ด์ง€ ๊ธฐ๋ณธ UI ์ œ์ž‘ * FE-31โ™ป๏ธ textareaํƒœ๊ทธ Textarea์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ * FE-31๐Ÿ’„ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ถ”๊ฐ€ --------- Co-authored-by: Woojiseok * FE-43 โœจ ์ƒ์„ธํŽ˜์ด์ง€ ์—ํ”ผ๊ทธ๋žจ ์กฐํšŒ (#18) * FE-43โœจ ์ƒ์„ธํŽ˜์ด์ง€ Epigram API์—ฐ๋™ * FE-43โšก ๏ธaxios ์—๋Ÿฌ ํ•ธ๋“ค๋ง ์ถ”๊ฐ€ * FE-43๐Ÿ—๏ธ ์ƒ์„ธํŽ˜์ด์ง€ Layout ๊ตฌ์กฐ๊ฐœ์„  * FE-43๐Ÿ“ ์ฃผ์„ ์ถ”๊ฐ€ * FE-43๐Ÿ”ฅ ์‚ฌ์šฉ์•ˆํ•˜๋Š” ํŒŒ์ผ ์‚ญ์ œ * FE-43โœ๏ธ ์˜คํƒ€ ์ˆ˜์ • * FE-43 ๐Ÿ› id์—†์„๋•Œ useQuery์‹คํ–‰๋˜๋Š” ๋ฌธ์ œ ํ•ด๊ฒฐ * FE-43โ™ป๏ธ interface->zod ๋ณ€๊ฒฝ --------- Co-authored-by: ์šฐ์ง€์„ * FE-43โœจ ์‚ฌ์šฉ์ž ID์— ๋”ฐ๋ฅธ ๋ฏธํŠธ๋ณผ์•„์ด์ฝ˜ ํ‘œ์‹œ (#22) * FE-43โœจ ์‚ฌ์šฉ์ž ID์— ๋”ฐ๋ฅธ ๋ฏธํŠธ๋ณผ์•„์ด์ฝ˜ ํ‘œ์‹œ * FE-43โœจ ์—ํ”ผ๊ทธ๋žจ ์ƒ์„ธํŽ˜์ด์ง€ ๋”๋ณด๊ธฐ ๋“œ๋กญ๋‹ค์šด ์ถ”๊ฐ€ * FE-43๐Ÿ’„ MoreOptionMenu ์Šคํƒ€์ผ ์ˆ˜์ • * โœจ ์ƒ์„ธํŽ˜์ด์ง€ ๋Œ“๊ธ€ ์กฐํšŒ api์—ฐ๋™ (#38) * FE-42๐Ÿ’„ EpigramComment์•ˆ์— CommentCard ์ถ”๊ฐ€ * FE-42โœจ ์ƒ์„ธํŽ˜์ด์ง€ ๋Œ“๊ธ€ ์กฐํšŒ api์—ฐ๋™ * FE-42โœจ dateUtilํ•จ์ˆ˜ ์ถ”๊ฐ€, ์ ์šฉ * FE-42โœจ ๋Œ“๊ธ€์ž‘์„ฑ์ž๊ฐ€ ๋ณธ์ธ์ธ์ง€ ํŒ๋ณ„ํ•ด ์ˆ˜์ •,์‚ญ์ œ ํ‘œ์‹œ * FE-42๐Ÿ”ฅ ์•ˆ์“ฐ๋Š” ํ•จ์ˆ˜ ์‚ญ์ œ * FE-42๐Ÿ’„ EpigramComment ๋ฐฐ๊ฒฝ์ƒ‰ ์ˆ˜์ • * FE-42โ™ป๏ธ CommetCard ๊ตฌ์กฐ ๊ฐœ์„  * FE-42๐Ÿ’„์ž‘์„ฑ๋œ ๋Œ“๊ธ€ ์—†์„๋•Œ UI ์ถ”๊ฐ€ * FE-42๐Ÿ› ๋Œ“๊ธ€์ˆ˜๋ฅผ length->totalCount๋กœ ๋ณ€๊ฒฝ * FE-42โ™ป๏ธ useEpigramCommentHook ๋ถ„๋ฆฌ * FE-42โœจ ๋Œ“๊ธ€ ๋ชฉ๋ก์— ๋ฌดํ•œ์Šคํฌ๋กค ์ ์šฉ * FE-42๐Ÿ’ก ์ฃผ์„ ์ถ”๊ฐ€ --------- Co-authored-by: ์šฐ์ง€์„ * FE-76โœจ ๋Œ“๊ธ€ ์ž‘์„ฑ api ์—ฐ๋™ (#78) * FE-76โ™ป๏ธ ๋Œ“๊ธ€ textarea ์ปดํฌ๋„ŒํŠธ ๋ถ„๋ฆฌ * FE-76๐Ÿ’„ switch ์ปดํฌ๋„ŒํŠธ ์Šคํƒ€์ผ ์ˆ˜์ • * FE-76โœจ textarea focus out ๋ฒ„ํŠผ ์ถ”๊ฐ€ * FE-76โœจ postComment schema,interface ์ถ”๊ฐ€, ์ˆ˜์ • * FE-76โœจ ๋Œ“๊ธ€ ์ž‘์„ฑ api ์—ฐ๋™ * FE-76๐Ÿ› import error ํ•ด๊ฒฐ * FE-76โœจ switch๋กœ ๋Œ“๊ธ€ ๊ณต๊ฐœ,๋น„๊ณต๊ฐœ ์„ค์ • ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-76โœจ ๋Œ“๊ธ€ ์ž‘์„ฑ ์‹œ image๋ฅผ ์œ ์ €๊ฐ€ ๋“ฑ๋กํ•œ image๋กœ ๋ณ€๊ฒฝ * FE-76๐Ÿ› build error ํ•ด๊ฒฐ --------- Co-authored-by: ์šฐ์ง€์„ * FE-45โœจ ์—ํ”ผ๊ทธ๋žจ ์‚ญ์ œ api ์—ฐ๋™ (#80) * FE-45โœจ ์—ํ”ผ๊ทธ๋žจ ์‚ญ์ œ api ์—ฐ๋™ * FE-45๐Ÿ’„ ์—ํ”ผ๊ทธ๋žจ ์‚ญ์ œ ๋ชจ๋‹ฌ ์ถ”๊ฐ€ * FE-45๐Ÿ’„ ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ์ˆ˜์ • * FE-45โ™ป๏ธ DeleteAlertModal ์ปดํฌ๋„ŒํŠธ ๋ถ„๋ฆฌ * FE-45๐Ÿ› build error ํ•ด๊ฒฐ --------- Co-authored-by: ์šฐ์ง€์„ * FE-78โœจ๋Œ“๊ธ€ ์ˆ˜์ •,์‚ญ์ œ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ (#91) * FE-78๐Ÿ’„ ๋ฏธํŠธ๋ณผ์•„์ด์ฝ˜ ui์ˆ˜์ • * FE-78โœจ ๋Œ“๊ธ€ ์‚ญ์ œ ํ•จ์ˆ˜ ์ถ”๊ฐ€ * FE-78โœจ๋Œ“๊ธ€ ์‚ญ์ œ ๋ฒ„ํŠผ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-78โœจ ๋Œ“๊ธ€ ์ˆ˜์ • apiํ•จ์ˆ˜ ์ถ”๊ฐ€ * FE-78โœจ ๋Œ“๊ธ€ ์ˆ˜์ • ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-78๐Ÿ“ ์ฃผ์„ ์ถ”๊ฐ€ * FE-78๐Ÿ’„ EpigramComment height์ˆ˜์ • * FE-78๐Ÿ› build error ํ•ด๊ฒฐ --------- Co-authored-by: ์šฐ์ง€์„ * FE-44โœจ ์—ํ”ผ๊ทธ๋žจ ์ˆ˜์ • ๊ธฐ๋Šฅ ์ถ”๊ฐ€ (#97) * FE-44๐Ÿšš ์ƒ์„ธํŽ˜์ด์ง€ ํŽ˜์ด์ง€ ๊ตฌ์กฐ ๋ณ€๊ฒฝ * FE-44โœจ ์—ํ”ผ๊ทธ๋žจ ์ˆ˜์ • api ํ•จ์ˆ˜ ์ถ”๊ฐ€ * FE-44โœจ ์—ํ”ผ๊ทธ๋žจ ์ˆ˜์ • ๊ธฐ๋Šฅ ์ถ”๊ฐ€ * FE-44โ™ป๏ธ ์ €์ž์„ ํƒ๊ด€๋ จ ํ•จ์ˆ˜ useAuthorSelectionํ›…์œผ๋กœ ๋ถ„๋ฆฌ * FE-44๐Ÿ’„ EditEpigram,AddEpigram UI์ˆ˜์ • * FE-44๐Ÿ› ์ถœ์ฒ˜ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ๋ฒ„๊ทธ ์ˆ˜์ • * FE-44โœจ ์ž‘์„ฑ์ž ๋ณธ์ธ์ด ์•„๋‹๋•Œ ์ˆ˜์ •ํŽ˜์ด์ง€ ์ ‘๊ทผ ์‹œ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ ๊ธฐ๋Šฅ ๊ตฌํ˜„ * FE-44๐Ÿ› ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋ฒ„๊ทธ ์ˆ˜์ • --------- Co-authored-by: ์šฐ์ง€์„ * FE-41โœจ์ข‹์•„์š” ๊ธฐ๋Šฅ ์ถ”๊ฐ€ (#103) * FE-41โ™ป๏ธ httpClien์—t interceoptor ์ถ”๊ฐ€ * FE-41โœจ ์ข‹์•„์š” api ํ•จ์ˆ˜ ์ถ”๊ฐ€ * FE-41โœจ ์ข‹์•„์š” ๊ธฐ๋Šฅ Layout์— ์ ์šฉ * FE-41โœจ Url Link๋ฒ„ํŠผ ์ƒ์„ฑ * FE-41๐Ÿ’„์ข‹์•„์š”,link๋ฒ„ํŠผ ์Šคํƒ€์ผ ์ˆ˜์ • * FE-41๐Ÿ› import ์—๋Ÿฌ ํ•ด๊ฒฐ * FE-41โ™ป๏ธ ๊ธฐ์กดheader-> Header์ปดํฌ๋„ŒํŠธ๋กœ ๋ณ€๊ฒฝ --------- Co-authored-by: ์šฐ์ง€์„ * FE-54๐Ÿ› ์˜คํƒ€ ์ˆ˜์ • * build error ํ•ด๊ฒฐ --------- Co-authored-by: Woojiseok --- package-lock.json | 7 - public/arrow-left.svg | 3 + public/icon/cancelIcon.svg | 4 + public/likeIcon.svg | 3 + public/logo.svg | 5 + public/meatballIcon.svg | 5 + public/placeLink.svg | 3 + public/profile.svg | 14 + public/share.svg | 5 + src/apis/epigram.ts | 75 +++++ src/apis/queries.ts | 27 +- .../epigram/Comment/CommentItem.tsx | 92 ++++++ .../epigram/Comment/CommentList.tsx | 72 +++++ .../epigram/Comment/CommentTextarea.tsx | 132 ++++++++ src/components/epigram/Comment/NoComment.tsx | 9 + src/components/epigram/DeleteAlertModal.tsx | 29 ++ src/components/epigram/EditEpigram.tsx | 292 ++++++++++++++++++ src/components/epigram/MoreOptionMenu.tsx | 71 +++++ src/components/ui/switch.tsx | 4 +- src/hooks/useAuthorSelectionHook.ts | 51 +++ src/hooks/useDeleteEpigramHook.ts | 21 ++ src/hooks/useEditEpigramHook.ts | 22 ++ src/hooks/useEpigramCommentsQueryHook.ts | 14 + src/hooks/useEpigramLike.ts | 43 +++ src/hooks/useEpigramQueryHook.ts | 11 + src/hooks/usePostCommentHook.ts | 32 ++ src/hooks/userQueryHooks.ts | 8 +- src/lib/dateUtils.ts | 28 ++ src/pageLayout/Epigram/AddEpigram.tsx | 54 +--- src/pageLayout/Epigram/EpigramComment.tsx | 42 +++ src/pageLayout/Epigram/EpigramFigure.tsx | 52 ++++ src/pages/epigram/[id]/edit.tsx | 61 ++++ src/pages/epigram/[id]/index.tsx | 32 ++ src/schema/addEpigram.ts | 7 +- src/schema/user.ts | 4 +- src/types/epigram.types.ts | 4 + 36 files changed, 1274 insertions(+), 64 deletions(-) create mode 100644 public/arrow-left.svg create mode 100644 public/icon/cancelIcon.svg create mode 100644 public/likeIcon.svg create mode 100644 public/logo.svg create mode 100644 public/meatballIcon.svg create mode 100644 public/placeLink.svg create mode 100644 public/profile.svg create mode 100644 public/share.svg create mode 100644 src/apis/epigram.ts create mode 100644 src/components/epigram/Comment/CommentItem.tsx create mode 100644 src/components/epigram/Comment/CommentList.tsx create mode 100644 src/components/epigram/Comment/CommentTextarea.tsx create mode 100644 src/components/epigram/Comment/NoComment.tsx create mode 100644 src/components/epigram/DeleteAlertModal.tsx create mode 100644 src/components/epigram/EditEpigram.tsx create mode 100644 src/components/epigram/MoreOptionMenu.tsx create mode 100644 src/hooks/useAuthorSelectionHook.ts create mode 100644 src/hooks/useDeleteEpigramHook.ts create mode 100644 src/hooks/useEditEpigramHook.ts create mode 100644 src/hooks/useEpigramCommentsQueryHook.ts create mode 100644 src/hooks/useEpigramLike.ts create mode 100644 src/hooks/useEpigramQueryHook.ts create mode 100644 src/hooks/usePostCommentHook.ts create mode 100644 src/lib/dateUtils.ts create mode 100644 src/pageLayout/Epigram/EpigramComment.tsx create mode 100644 src/pageLayout/Epigram/EpigramFigure.tsx create mode 100644 src/pages/epigram/[id]/edit.tsx create mode 100644 src/pages/epigram/[id]/index.tsx diff --git a/package-lock.json b/package-lock.json index ce9380b1..b326f467 100644 --- a/package-lock.json +++ b/package-lock.json @@ -41,7 +41,6 @@ }, "devDependencies": { "@tanstack/eslint-plugin-query": "^5.50.0", - "@types/lodash": "^4.17.7", "@types/node": "^20.14.10", "@types/qs": "^6.9.15", "@types/react": "^18.3.3", @@ -1937,12 +1936,6 @@ "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", "dev": true }, - "node_modules/@types/lodash": { - "version": "4.17.7", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.7.tgz", - "integrity": "sha512-8wTvZawATi/lsmNu10/j2hk1KEP0IvjubqPE3cu1Xz7xfXXt5oCq3SNUz4fMIP4XGF9Ky+Ue2tBA3hcS7LSBlA==", - "dev": true - }, "node_modules/@types/node": { "version": "20.14.10", "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.10.tgz", diff --git a/public/arrow-left.svg b/public/arrow-left.svg new file mode 100644 index 00000000..225646e9 --- /dev/null +++ b/public/arrow-left.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/icon/cancelIcon.svg b/public/icon/cancelIcon.svg new file mode 100644 index 00000000..678aaf2f --- /dev/null +++ b/public/icon/cancelIcon.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/likeIcon.svg b/public/likeIcon.svg new file mode 100644 index 00000000..b88fa457 --- /dev/null +++ b/public/likeIcon.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/logo.svg b/public/logo.svg new file mode 100644 index 00000000..fc1d4f6a --- /dev/null +++ b/public/logo.svg @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/public/meatballIcon.svg b/public/meatballIcon.svg new file mode 100644 index 00000000..49a9368e --- /dev/null +++ b/public/meatballIcon.svg @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/public/placeLink.svg b/public/placeLink.svg new file mode 100644 index 00000000..1cdd89a7 --- /dev/null +++ b/public/placeLink.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/public/profile.svg b/public/profile.svg new file mode 100644 index 00000000..10fe1c70 --- /dev/null +++ b/public/profile.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/share.svg b/public/share.svg new file mode 100644 index 00000000..0ff446dd --- /dev/null +++ b/public/share.svg @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/apis/epigram.ts b/src/apis/epigram.ts new file mode 100644 index 00000000..418d9bc6 --- /dev/null +++ b/src/apis/epigram.ts @@ -0,0 +1,75 @@ +import axios, { AxiosError } from 'axios'; +import { GetEpigramResponseType, EpigramRequestType } from '@/schema/epigram'; +import { DeleteEpigramType } from '@/types/epigram.types'; +import { AddEpigramResponseType, EditEpigramRequestType } from '@/schema/addEpigram'; +import httpClient from '.'; + +export const getEpigram = async (request: EpigramRequestType): Promise => { + const { id } = request; + + if (id === undefined) { + throw new Error('Epigram ID๊ฐ€ ์ œ๊ณต๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.'); + } + + try { + const response = await httpClient.get(`/epigrams/${id}`); + return response.data; + } catch (error) { + if (axios.isAxiosError(error)) { + const axiosError = error as AxiosError; + if (axiosError.response) { + throw new Error(`API ์—๋Ÿฌ: ${axiosError.response.status}`); + } else if (axiosError.request) { + throw new Error('์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์‘๋‹ต์„ ๋ฐ›์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.'); + } else { + throw new Error('์š”์ฒญ ์„ค์ • ์ค‘ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.'); + } + } else { + throw new Error('์˜ˆ์ƒ์น˜ ๋ชปํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.'); + } + } +}; + +export const deleteEpigram = async (id: number): Promise => { + const response = await httpClient.delete(`/epigrams/${id}`); + return response.data; +}; + +// NOTE: ์—ํ”ผ๊ทธ๋žจ ์ˆ˜์ • api ํ•จ์ˆ˜ +export const patchEpigram = async (request: EditEpigramRequestType): Promise => { + const { id, ...data } = request; + const response = await httpClient.patch(`/epigrams/${id}`, data); + return response.data; +}; + +export const toggleEpigramLike = async (request: EpigramRequestType): Promise => { + const { id } = request; + + if (id === undefined) { + throw new Error('Epigram ID๊ฐ€ ์ œ๊ณต๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.'); + } + + try { + const response = await httpClient.post(`/epigrams/${id}/like`); + return response.data; + } catch (error) { + if (axios.isAxiosError(error)) { + const axiosError = error as AxiosError; + if (axiosError.response?.status === 400) { + // ์ด๋ฏธ ์ข‹์•„์š”๋ฅผ ๋ˆŒ๋ €๋‹ค๋ฉด, ์ข‹์•„์š” ์ทจ์†Œ ์š”์ฒญ์„ ๋ณด๋ƒ…๋‹ˆ๋‹ค. + const response = await httpClient.delete(`/epigrams/${id}/like`); + return response.data; + } + // ๊ทธ ์™ธ์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ + if (axiosError.response) { + throw new Error(`API ์—๋Ÿฌ: ${axiosError.response.status}`); + } else if (axiosError.request) { + throw new Error('์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์‘๋‹ต์„ ๋ฐ›์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.'); + } else { + throw new Error('์š”์ฒญ ์„ค์ • ์ค‘ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.'); + } + } else { + throw new Error('์˜ˆ์ƒ์น˜ ๋ชปํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.'); + } + } +}; diff --git a/src/apis/queries.ts b/src/apis/queries.ts index 0010c375..ddfed703 100644 --- a/src/apis/queries.ts +++ b/src/apis/queries.ts @@ -1,10 +1,14 @@ import { createQueryKeyStore } from '@lukemorales/query-key-factory'; import { GetUserRequestType } from '@/schema/user'; +import { EpigramRequestType } from '@/schema/epigram'; +import { CommentRequestType } from '@/schema/comment'; import { GetMonthlyEmotionLogsRequestType } from '@/schema/emotion'; import { getMe, getUser } from './user'; +import { getEpigram } from './epigram'; +import { getEpigramComments } from './epigramComment'; import getMonthlyEmotionLogs from './emotion'; -const quries = createQueryKeyStore({ +const queries = createQueryKeyStore({ user: { getMe: () => ({ queryKey: ['getMe'], @@ -15,6 +19,25 @@ const quries = createQueryKeyStore({ queryFn: () => getUser(request), }), }, + // NOTE: Epigram ๊ด€๋ จ queryํ•จ์ˆ˜ + epigram: { + getEpigram: (request: EpigramRequestType) => ({ + queryKey: ['epigram', request.id, request], + queryFn: () => { + if (request.id === undefined) { + throw new Error('Epigram ID๊ฐ€ ์ œ๊ณต๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.'); + } + return getEpigram(request); + }, + enabled: request.id !== undefined, + }), + }, + epigramComment: { + getComments: (request: CommentRequestType) => ({ + queryKey: ['epigramComments', request], + queryFn: () => getEpigramComments(request), + }), + }, emotion: { getMonthlyEmotionLogs: (request: GetMonthlyEmotionLogsRequestType) => ({ queryKey: ['getMonthlyEmotionLogs', request], @@ -23,4 +46,4 @@ const quries = createQueryKeyStore({ }, }); -export default quries; +export default queries; diff --git a/src/components/epigram/Comment/CommentItem.tsx b/src/components/epigram/Comment/CommentItem.tsx new file mode 100644 index 00000000..dd65937c --- /dev/null +++ b/src/components/epigram/Comment/CommentItem.tsx @@ -0,0 +1,92 @@ +import React, { useState } from 'react'; +import Image from 'next/image'; +import { CommentType } from '@/schema/comment'; +import { sizeStyles, textSizeStyles, gapStyles, paddingStyles, contentWidthStyles } from '@/styles/CommentCardStyles'; +import getCustomRelativeTime from '@/lib/dateUtils'; +import useDeleteCommentMutation from '@/hooks/useDeleteCommentHook'; +import { CommentCardProps } from '@/components/Card/CommentCard'; +import { useToast } from '@/components/ui/use-toast'; +import { Button } from '@/components/ui/button'; +import DeleteAlertModal from '../DeleteAlertModal'; + +interface CommentItemProps extends CommentCardProps { + comment: CommentType; + onEditComment: (id: number, content: string, isPrivate: boolean) => void; +} + +function CommentItem({ comment, status, onEditComment }: CommentItemProps) { + const deleteCommentMutation = useDeleteCommentMutation(); + const { toast } = useToast(); + const [isDeleteModalOpen, setIsDeleteModalOpen] = useState(false); + + const handleEditClick = () => { + onEditComment(comment.id, comment.content, comment.isPrivate); + }; + + // NOTE: ๋Œ“๊ธ€ ์‚ญ์ œ + const handleDeleteComment = async () => { + try { + await deleteCommentMutation.mutateAsync(comment.id); + setIsDeleteModalOpen(false); + toast({ + title: '๋Œ“๊ธ€์ด ์‚ญ์ œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.', + variant: 'destructive', + }); + } catch (error) { + toast({ + title: '๋Œ“๊ธ€ ์‚ญ์ œ ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค.', + variant: 'destructive', + }); + } + }; + + return ( +
+
+
+
+ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ +
+
+
+
+
+
{comment.writer.nickname}
+
+ {getCustomRelativeTime(comment.createdAt)} +
+
+ {status === 'edit' && ( +
+ + +
+ )} +
+
+ {comment.content} +
+
+
+ +
+ ); +} + +export default CommentItem; diff --git a/src/components/epigram/Comment/CommentList.tsx b/src/components/epigram/Comment/CommentList.tsx new file mode 100644 index 00000000..4546016b --- /dev/null +++ b/src/components/epigram/Comment/CommentList.tsx @@ -0,0 +1,72 @@ +import React, { useEffect, useRef, useCallback } from 'react'; +import { EpigramCommentProps } from '@/types/epigram.types'; +import useEpigramCommentsQuery from '@/hooks/useEpigramCommentsQueryHook'; +import CommentItem from './CommentItem'; +import NoComment from './NoComment'; + +interface CommentListProps extends Omit { + onEditComment: (id: number, content: string, isPrivate: boolean) => void; +} + +function CommentList({ epigramId, currentUserId, onEditComment }: CommentListProps) { + const { data, fetchNextPage, hasNextPage, isFetchingNextPage, status } = useEpigramCommentsQuery(epigramId); + + const observerRef = useRef(null); + const lastCommentRef = useRef(null); + + // NOTE: Observer ์ฝœ๋ฐฑ: ๋งˆ์ง€๋ง‰ ์š”์†Œ๊ฐ€ ํ™”๋ฉด์— ๋ณด์ด๋ฉด ๋‹ค์Œ ํŽ˜์ด์ง€(๋Œ“๊ธ€ ์ตœ๋Œ€3๊ฐœ๋ฅผ ๋ฌถ์–ด 1ํŽ˜์ด์ง€ ์ทจ๊ธ‰) ๋กœ๋“œ + const handleObserver = useCallback( + (entries: IntersectionObserverEntry[]) => { + const [target] = entries; + if (target.isIntersecting && hasNextPage) { + fetchNextPage(); + } + }, + [fetchNextPage, hasNextPage], + ); + + useEffect(() => { + const options = { + root: null, + rootMargin: '20px', + threshold: 1.0, + }; + + observerRef.current = new IntersectionObserver(handleObserver, options); + + if (lastCommentRef.current) { + observerRef.current.observe(lastCommentRef.current); + } + + return () => { + // NOTE: effect๊ฐ€ ์‹คํ–‰๋˜๊ธฐ์ „์— ํ˜ธ์ถœํ•ด์„œ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜๋ฅผ ๋ฐฉ์ง€ํ•ด์คŒ + if (observerRef.current) { + observerRef.current.disconnect(); + } + }; + }, [handleObserver]); + + if (status === 'pending') return
๋Œ“๊ธ€์„ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ค‘...
; + if (status === 'error') return
์—๋Ÿฌ: ๋Œ“๊ธ€์„ ๋ถˆ๋Ÿฌ์˜ค๋Š”๋ฐ ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค.
; + + const allComments = data?.pages.flatMap((page) => page.list) || []; + const totalCount = data?.pages[0]?.totalCount || 0; + + return ( +
+

๋Œ“๊ธ€({totalCount})

+ {allComments.length > 0 ? ( + <> + {allComments.map((comment) => ( + + ))} +
{isFetchingNextPage &&
๋” ๋งŽ์€ ๋Œ“๊ธ€์„ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ค‘...
}
+ + ) : ( + + )} +
+ ); +} + +export default CommentList; diff --git a/src/components/epigram/Comment/CommentTextarea.tsx b/src/components/epigram/Comment/CommentTextarea.tsx new file mode 100644 index 00000000..707ee760 --- /dev/null +++ b/src/components/epigram/Comment/CommentTextarea.tsx @@ -0,0 +1,132 @@ +import React, { useEffect } from 'react'; +import { Button } from '@/components/ui/button'; +import { Form, FormControl, FormField, FormItem } from '@/components/ui/form'; +import Label from '@/components/ui/label'; +import Switch from '@/components/ui/switch'; +import { Textarea } from '@/components/ui/textarea'; +import { zodResolver } from '@hookform/resolvers/zod'; +import { useForm } from 'react-hook-form'; +import Image from 'next/image'; +import { CommentFormSchema, CommentFormValues } from '@/schema/comment'; +import usePostCommentMutation from '@/hooks/usePostCommentHook'; +import usePatchCommentMutation from '@/hooks/usePatchCommentHook'; + +interface CommentTextareaProps { + epigramId: number; + editingComment: { id: number; content: string; isPrivate: boolean } | null; + onEditComplete: () => void; +} + +function CommentTextarea({ epigramId, editingComment, onEditComplete }: CommentTextareaProps) { + const postCommentMutation = usePostCommentMutation(); + const patchCommentMutation = usePatchCommentMutation(); + + const form = useForm({ + resolver: zodResolver(CommentFormSchema), + defaultValues: { + content: '', + isPrivate: false, + }, + }); + + // NOTE: ์ˆ˜์ •์ค‘์ธ์ง€ ์ƒˆ๋Œ“๊ธ€์ž‘์„ฑ์ค‘์ธ์ง€์˜ ์ƒํƒœ๊ฐ€ ๋ณ€ํ™œ๋•Œ ํผ ์ดˆ๊ธฐํ™” + useEffect(() => { + if (editingComment !== null) { + form.reset({ + content: editingComment.content, + isPrivate: editingComment.isPrivate, + }); + } else { + form.reset({ + content: '', + isPrivate: false, + }); + } + }, [editingComment, form]); + + const onSubmit = (values: CommentFormValues) => { + if (editingComment) { + // NOTE: ๋Œ“๊ธ€ ์ˆ˜์ • ์‹œ + patchCommentMutation.mutate( + { commentId: editingComment.id, ...values }, + { + onSuccess: () => { + form.reset({ content: '', isPrivate: false }); + onEditComplete(); + }, + }, + ); + } else { + // NOTE: ์ƒˆ ๋Œ“๊ธ€ ์ž‘์„ฑ ์‹œ + const commentData = { + epigramId, + ...values, + }; + postCommentMutation.mutate(commentData, { + onSuccess: () => { + form.reset({ content: '', isPrivate: false }); + }, + }); + } + }; + + // NOTE: ์ˆ˜์ • ์ทจ์†Œ + const handleCancel = () => { + form.reset(); + onEditComplete(); + }; + + return ( +
+ + ( + + +
+

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 z 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