Skip to content

Commit

Permalink
Develop server release v 1.1.0 (#212)
Browse files Browse the repository at this point in the history
* server initial commit

* Delete server.md

* Create README.md

* chore: yarn init

* chore: webpack ์„ธํŒ…

* chore: tsconfig, React ์„ธํŒ…

* chore: eslint, pretteir ์„ธํŒ…

* chore: ํ”„๋กœ์ ํŠธ boilerplate ๊ตฌํ˜„

* docs: README.md ๊ฐœ๋ฐœ ์ปจ๋ฒค์…˜ ์ถ”๊ฐ€

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* feat: ๊ธฐ๋ณธ ๋„๋ฉ”์ธ ๊ตฌํ˜„ Member, Donation, Banner (#6)

* feat: ์—๋Ÿฌ ์‘๋‹ต DTO ์ƒ์„ฑ

* [#8] ๋ฐฐ๋„ˆ ์ƒ์„ฑ ๋ฐ ๋ชฉ๋ก ์กฐํšŒ API ๊ตฌํ˜„ (#10)

* server initial commit

* Delete server.md

* feat: ๊ธฐ๋ณธ ๋„๋ฉ”์ธ ๊ตฌํ˜„ Member, Donation, Banner (#6)

* feat: ์—๋Ÿฌ ์‘๋‹ต DTO ์ƒ์„ฑ

* feat: ๋ฐฐ๋„ˆ ์ƒ์„ฑ, ๋ฉค๋ฒ„์˜ ๋ฐฐ๋„ˆ ๋ชฉ๋ก ์กฐํšŒ ๊ธฐ๋Šฅ ๊ตฌํ˜„

Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* [#7] ํ›„์› ์š”์ฒญ ๋ฐ ๋ฉ”์‹œ์ง€ ์ „์†ก API ๊ตฌํ˜„ (#9)

* feat: ํ›„์› ์š”์ฒญ API ๊ตฌํ˜„

* feat: ํ›„์› ์š”์ฒญ API ๊ตฌํ˜„

* feat: ํ›„์› ๋ฉ”์‹œ์ง€ ์ „์†ก API ๊ตฌํ˜„

* refactor: ๋ถˆํ•„์š”ํ•œ ์ฝ”๋“œ ์‚ญ์ œ

* refactor: ๋ถˆํ•„์š”ํ•œ ์ž„ํฌํŠธ ์ œ๊ฑฐ

* fix: ๋งคํ•‘ url messages ์˜คํƒ€ ์ˆ˜์ •

* refactor: ํ…Œ์ŠคํŠธ ์ ‘๊ทผ ์ œํ•œ์ž private ์ ์šฉ

* fix : donations RequestMapping ์ˆ˜์ •

* refactor: @getter ์ถ”๊ฐ€ ๋ฐ ํ…Œ์ŠคํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ AssertJ๋กœ ๋ณ€๊ฒฝ

* Revert "[#8] ๋ฐฐ๋„ˆ ์ƒ์„ฑ ๋ฐ ๋ชฉ๋ก ์กฐํšŒ API ๊ตฌํ˜„ (#10)"

This reverts commit d31ffda.

* [#12] ๋ฐฐ๋„ˆ ์ƒ์„ฑ ๋ฐ ๋ชฉ๋ก ์กฐํšŒ API ๊ตฌํ˜„ (#12)

* Create README.md

* docs: README.md ๊ฐœ๋ฐœ ์ปจ๋ฒค์…˜ ์ถ”๊ฐ€

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* feat: ๋ฐฐ๋„ˆ ์ƒ์„ฑ, ๋ฉค๋ฒ„์˜ ๋ฐฐ๋„ˆ ๋ชฉ๋ก ์กฐํšŒ ๊ธฐ๋Šฅ ๊ตฌํ˜„

* [#8] ๋ฐฐ๋„ˆ ์ƒ์„ฑ ๋ฐ ๋ชฉ๋ก ์กฐํšŒ API ๊ตฌํ˜„ (#10)

* server initial commit

* Delete server.md

* feat: ๊ธฐ๋ณธ ๋„๋ฉ”์ธ ๊ตฌํ˜„ Member, Donation, Banner (#6)

* feat: ์—๋Ÿฌ ์‘๋‹ต DTO ์ƒ์„ฑ

* feat: ๋ฐฐ๋„ˆ ์ƒ์„ฑ, ๋ฉค๋ฒ„์˜ ๋ฐฐ๋„ˆ ๋ชฉ๋ก ์กฐํšŒ ๊ธฐ๋Šฅ ๊ตฌํ˜„

Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* refactor: ๋ฆฌ๋ทฐ ๋ฐ˜์˜

* Revert "[#8] ๋ฐฐ๋„ˆ ์ƒ์„ฑ ๋ฐ ๋ชฉ๋ก ์กฐํšŒ API ๊ตฌํ˜„ (#10)"

This reverts commit d31ffda.

Co-authored-by: hwano <jho2301@gmail.com>
Co-authored-by: dwl5 <ssop6403@gmail.com>
Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* [#11] ๋„๋ฉ”์ธ createdDate ์ถ”๊ฐ€ (#13)

* feat: BaseTimeEntity ์ถ”๊ฐ€

* refactor: delete baseTimeEntityTest

* refactor: member repository ์ค‘๋ณต ์ œ๊ฑฐ

Co-authored-by: dwl5 <ssop6403@gmail.com>

* chore: ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์—…๋ฐ์ดํŠธ

- styled components ์ถ”๊ฐ€
- eslint ์˜ต์…˜ ์ถ”๊ฐ€
- tsconfig ์˜ต์…˜ ์ถ”๊ฐ€

* feat: ์ „์—ญ ์Šคํƒ€์ผ, Reset ์ ์šฉ

* feat: ๋ฒ„ํŠผ ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

- Button
- OutlineButton

Co-authored-by: Chayan <hchayan196@gmail.com>

* feat: Input ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: InputWithMessage ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: Textarea ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: Checkbox ์ปดํฌ๋„ŒํŠธ๊ตฌํ˜„

* refactor: styled-components, theme d.ts ํŒŒ์ผ ์ถ”๊ฐ€

* feat: Title ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: Noto Sans font ์ ์šฉ

* feat: anchor ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: Container ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* refactor: propsํƒ€์ž…์—์„œ children ์ œ๊ฑฐ

* feat: Template ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* chore: asset ๋ชจ๋“ˆ ์ถ”๊ฐ€

* Revert "Merge pull request #22 from woowacourse-teams/feature/common-component-markup"

This reverts commit 719e3c5, reversing
changes made to bed2b54.

* [#15] JWT ํ† ํฐ ๊ด€๋ฆฌ์™€ ์ธํ„ฐ์…‰ํ„ฐ, ArgumentResolver ๊ตฌํ˜„ (#17)

* feat: jwtTokenProvider ์ƒ์„ฑ

* feat: ArguementsResolver, Interceptor ๊ตฌํ˜„ ๋ฐ Config ์ถ”๊ฐ€

* test: AuthenticationService ํ…Œ์ŠคํŠธ ์ž‘์„ฑ

* refactor: auth ๊ด€๋ จ ํด๋ž˜์Šค ํŒจํ‚ค์ง€ ๋ณ€๊ฒฝ

* refactor: throws exception ๊ตฌ๋ฌธ ์‚ญ์ œ

* refactor: ํ† ํฐ ๋งŒ๋ฃŒ์‹œ๊ฐ„ ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€ ๋ฐ ํŒจํ‚ค์ง€ ๋ณ€๊ฒฝ

* refactor: Authorization header ๋ชป์ฐพ์„ ์‹œ ์˜ˆ์™ธ ๋˜์ง€๊ฒŒ ๋ณ€๊ฒฝ

Co-authored-by: rok93 <goodboy302@naver.com>

* [#16] OAuth2 ๋กœ๊ทธ์ธ ๋ฐ ํšŒ์›๊ฐ€์ž… (#18)

* feat: OAuth2 ์นด์นด์˜ค ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* feat: ๊ตฌ๊ธ€, ์นด์นด์˜ค oauth ์—ฐ๋™

* feat: ๋กœ๊ทธ์ธ ๋ฐ์ดํ„ฐ properties๋กœ ๋ถ„๋ฆฌ

* feat: ํšŒ์›๊ฐ€์ž… ๊ตฌํ˜„

* fix: oauth ๋กœ๊ทธ์ธ ์•ˆ๋˜๋Š” ํ˜„์ƒ ์ˆ˜์ •

* docs: ํ”„๋กœํผํ‹ฐ ํŒŒ์ผ gitignore ์ถ”๊ฐ€

* remove properties

* refactor: ErrorResponse ์ƒ์„ฑ์ž ์ œ๊ฑฐ

* refactor: oauth ๊ธฐ๋Šฅ ์ถ”์ƒํ™”

Co-authored-by: ๊น€์ฃผ์› <kjw11077@naver.com>

* [#34] OAuth2 ๋กœ๊ทธ์ธ,ํšŒ์›๊ฐ€์ž… JWT ์—ฐ๋™ (#36)

* refactor: oauth2 ํŒจํ‚ค์ง€ auth๋กœ ๋ณ‘ํ•ฉ

* docs: oauth2 ํŒŒ์ผ gitignore ์ถ”๊ฐ€

* refactor: OAuth2 ์ถ”์ƒํ™” ๋ฐฉ์‹ ๋ณ€๊ฒฝ

* refactor: Api ํ˜ธ์ถœ ๋กœ์ง ๋ถ„๋ฆฌ

* refactor: ํšŒ์›๊ฐ€์ž… ์ค€๋น„ api ๊ตฌํ˜„

* refactor: readySignUp ๋ฉ”์„œ๋“œ ๋ถ„๋ฆฌ

Co-authored-by: dwl5 <ssop6403@gmail.com>

* [#37] ํšŒ์›๊ฐ€์ž…(๋ฉค๋ฒ„ ์ƒ์„ฑ) API (#39)

* refactor: oauth2 ํŒจํ‚ค์ง€ auth๋กœ ๋ณ‘ํ•ฉ

* docs: oauth2 ํŒŒ์ผ gitignore ์ถ”๊ฐ€

* refactor: OAuth2 ์ถ”์ƒํ™” ๋ฐฉ์‹ ๋ณ€๊ฒฝ

* refactor: Api ํ˜ธ์ถœ ๋กœ์ง ๋ถ„๋ฆฌ

* refactor: ํšŒ์›๊ฐ€์ž… ์ค€๋น„ api ๊ตฌํ˜„

* refactor: readySignUp ๋ฉ”์„œ๋“œ ๋ถ„๋ฆฌ

* feat: ํšŒ์›๊ฐ€์ž… api ๊ตฌํ˜„

Co-authored-by: dwl5 <ssop6403@gmail.com>

* fix: oauth2 jpa ํ…Œ์ด๋ธ” ๋ช… ์ˆ˜์ • (#42)

* [#49] ๋žœ๋”ฉํŽ˜์ด์ง€ ์ฃผ์†Œ, ๋‹‰๋„ค์ž„ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ, ์ฐฝ์ž‘์ž ์ •๋ณด ์š”์ฒญ, ์ฐฝ์ž‘์ž ํฌ์ธํŠธ ์กฐํšŒ API (#53)

* feat: langdingPageUrl ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ api ๊ตฌํ˜„

* feat: nickName ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ api ๊ตฌํ˜„

* refactor: OAuth -> Oauth ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ

* refactor: NickName -> Nickname ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ

* refactor: ํ† ํฐ claim์— id ์ถ”๊ฐ€

* feat: ์ฐฝ์ž‘์ž ์†Œ์œ  ํฌ์ธํŠธ ์กฐํšŒ api ๊ตฌํ˜„

* refactor: Donation ์—”ํ‹ฐํ‹ฐ isPublic ํ•„๋“œ์ถ”๊ฐ€

* feat: Interceptor ํŒจํ„ด ์ง€์ •

Co-authored-by: ๊น€์ฃผ์› <kjw11077@naver.com>

* docs: develop-server backend ํฌ๋ฃจ ์ด๋ฆ„ ์ถ”๊ฐ€ (#60)

* docs: backend ๊ธฐ์ˆ  ์Šคํƒ ์ถ”๊ฐ€

* docs: ๊ธฐ์ˆ  ์Šคํƒ ์ถ”๊ฐ€ (jenkins-test)

* docs: ๊ธฐ์ˆ  ์Šคํƒ ์ถ”๊ฐ€ (jenkins-test)

* docs: ๊ธฐ์ˆ  ์Šคํƒ ์ถ”๊ฐ€ (jenkins-test)

* [#54] ํ˜„์žฌ๊นŒ์ง€ ๊ตฌํ˜„ํ•œ API์˜ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•œ๋‹ค (#61)

* refactor: urlName -> pageName ๋ฆฌ๋„ค์ด๋ฐ

* refactor: Message VO๋กœ ์บก์Šํ™”

* refactor: API /me ๋ถ™์ด๋Š”๊ฑธ๋กœ ๋ณ€๊ฒฝ

* test: Donation ์ธ์ˆ˜ํ…Œ์ŠคํŠธ, isPublic -> secret ๋ฆฌ๋„ค์ž„

* test: Banner ์ธ์ˆ˜ํ…Œ์ŠคํŠธ ์ž‘์„ฑ

* test: Member ์ธ์ˆ˜ํ…Œ์ŠคํŠธ ์ž‘์„ฑ, DonationServiceTest ์˜ค๋ฅ˜์ˆ˜์ •

* test: ์˜ˆ์™ธ ํ…Œ์ŠคํŠธ

* [#58] ํ›„์› ๋ฆฌ์ŠคํŠธ API ์ž‘์„ฑ (#65)

* refactor: ์ˆ˜์ •๋˜์ง€ ์•Š์€ ์ด์ „ ํ•„๋“œ๋ช… ์ˆ˜์ •

* feat: ๊ณต๊ฐœ ํ›„์› ๋ฆฌ์ŠคํŠธ ์กฐํšŒ api ๊ตฌํ˜„ ๋ฐ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ

* feat: donationRepository ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€ ๋ฐ ํ…Œ์ŠคํŠธ

* feat: DonationService ๋ฉ”์„œ๋“œ ๋‚ด๋ถ€๋กœ์ง ๊ตฌํ˜„

* refactor: DonationController ๋‚ด๋ถ€ ์ฑ„์šฐ๊ธฐ

* refactor: ์ˆ˜๋ฆฌ ์ฝ”๋“œ ๋ฆฌ๋ทฐ ํ”ผ๋“œ๋ฐฑ ๋ฐ˜์˜

* feat: ํ›„์› ๋ฆฌ์ŠคํŠธ ์กฐํšŒ ์ธ์ˆ˜ํ…Œ์ŠคํŠธ ์ƒ์„ฑ

* refactor: Secret์—ฌ๋ถ€๊ฐ€ true์ธ ํ›„์›๋งŒ ๊ฐ€๋ฆฌ๊ฒŒ๋” ์ˆ˜์ •

* refactor: service๊ฐ€ ์•„๋‹Œ repository๋ฅผ ์ด์šฉํ•œ ๋ฉค๋ฒ„ ํƒ์ƒ‰

* refactor: DonationMessageRequest toEntity ๋ฉ”์„œ๋“œ ์ƒ์„ฑ

* docs: update README.md

* [#73]PROD ์„œ๋ฒ„ CI/CD ๋™์ž‘์„ ํ…Œ์ŠคํŠธ (#74)

* server initial commit

* Delete server.md

Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* docs: docs: update README.md

* [#55, #67] ์˜ˆ์™ธ ํ•ธ๋“ค๋ง ๊ตฌํ˜„ ๋ฐ API ๋ฆฌํŒฉํ† ๋ง (#71)

* feat: BaseException ๋ฐ ControllerAdviceHandler ์ถ”๊ฐ€

* feat: /donations api ์˜ˆ์™ธ ๋กœ์ง ์ฒ˜๋ฆฌ

* refactor: /donations request ํ•„๋“œ ๋ณ€๊ฒฝ์— ๋”ฐ๋ฅธ ๋กœ์ง ๋ณ€๊ฒฝ

* feat: /donations/{donationId}/messages api ์˜ˆ์™ธ ๋กœ์ง ์ฒ˜๋ฆฌ

* feat: auth ๊ด€๋ จ ์ต์…‰์…˜ ์ถ”๊ฐ€

* feat: /banners api ์˜ˆ์™ธ ๋กœ์ง ์ฒ˜๋ฆฌ

* feat: /members/validate/pageName api ์—๋Ÿฌ ๋กœ์ง ์ฒ˜๋ฆฌ

* feat: /members/validate/nickname api ์—๋Ÿฌ ๋กœ์ง ์ฒ˜๋ฆฌ

* refactor: @Valid ๋†“์นœ ๋ถ€๋ถ„ ๋‹ฌ์•„์คŒ

* refactor: ์ฝ”๋“œ ์ •๋ฆฌ, ๊ฐ„๋‹จํ•œ ๋ฆฌํŒฉํ„ฐ๋ง

* test: ํ›„์› ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€, ํ…Œ์ŠคํŠธ ๋ฆฌํŒฉํ„ฐ๋ง

* feat: ๋ฉค๋ฒ„,OAuth2 ์˜ˆ์™ธ ์ผ€์ด์Šค ํ•ธ๋“ค๋ง ๊ตฌํ˜„

* refactor: ์˜คํƒ€์ˆ˜์ •,๋ฆฌํฌ๋งทํŒ…

* feat: ์ธ์ฆ ์ธํ„ฐ์…‰ํ„ฐ ์ •์ฑ… ์ถ”๊ฐ€

* refactor: @Valid ๋น ํŠธ๋ฆฐ ๊ณณ ์ถ”๊ฐ€

* refactor: ๊ณต๋ฐฑํ•œ์นธ์ถ”๊ฐ€

* refactor: @ControllerAdvice -> @RestControllerAdvice ๋ณ€๊ฒฝ

* feat: SignUpRequestException ์ถ”๊ฐ€

* docs: TODO ์ถ”๊ฐ€

* refactor: ์ปค์Šคํ…€์˜ˆ์™ธํด๋ž˜์Šค์˜ ERROR_CODE ์ƒ์ˆ˜๋ฅผ public์œผ๋กœ ๋ณ€๊ฒฝ

Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* [#63]Prod-Server์˜ ์„ค์ •ํŒŒ์ผ์„ ์ƒ์„ฑ (#72)

* chore: jasypt ์˜์กด์„ฑ ์ถ”๊ฐ€

* feat: JasyptConfig ์ถ”๊ฐ€

* chore: oauth2 ์„ค์ •ํŒŒ์ผ gitignore์—์„œ ์ œ๊ฑฐ

* feat: jasypt secret ket ์™ธ๋ถ€์—์„œ ๊ฐ€์ ธ์˜ค๋„๋ก ์ˆ˜์ •

* feat: properties ํŒŒ์ผ ๋ถ„๋ฆฌ ๋ฐ ์•”ํ˜ธํ™”

* refactor: ์ฝ”๋“œ์ •๋ฆฌ

* fix: include property ๊ด€๋ จ ์—๋Ÿฌ ์ˆ˜์ •

* chore: mysql ์˜์กด์„ฑ ์ถ”๊ฐ€

* refactor: encrytor config ์ƒ์„ฑ ๋กœ์ง ๋ถ„๋ฆฌ

* refactor: @EnableEncryptableProperties ์–ด๋…ธํ…Œ์ด์…˜ ์ œ๊ฑฐ

* refactor: jashpyStringEncrytor ์ด๋ฆ„ ์ •ํ•ด์ฃผ๋Š” ๋ถ€๋ถ„ ์ œ๊ฑฐ

* feat: application-test ์ถ”๊ฐ€

* refactor: jasypt testํ™˜๊ฒฝ์—์„œ ์‹คํ–‰ํ•˜์ง€ ์•Š๋„๋ก ์ˆ˜์ •

* [#77] ์ฐฝ์ž‘์ž๊ฐ€ ์ž์‹ ์˜ ์ •๋ณด๋ฅผ ์กฐํšŒํ•˜๋Š” API๋ฅผ ์ž‘์„ฑํ•œ๋‹ค. (#78)

* feat: ์ฐฝ์ž‘์ž ์ž์‹ ์˜ ์ •๋ณด ์กฐํšŒ API ์ž‘์„ฑ,ํ…Œ์ŠคํŠธ

* refactor: ์˜คํƒ€์ˆ˜์ •,๊ฐ„๋‹จํ•œ ๋ฆฌํŒฉํ„ฐ๋ง

* refactor: MemberPrivateResponse -> MemberDetailResponse ๋ฆฌ๋„ค์ž„

* feat: cors ์„ค์ • ์ถ”๊ฐ€ (#88)

* [#84] ํ›„์›๊ธˆ ์ˆœ ํ๋ ˆ์ด์…˜ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ณด์—ฌ์ค€๋‹ค. (#85)

* feat: curation list api ๊ตฌํ˜„

* refactor: CurationsResponse ํ•„๋“œ์— pageName ์ถ”๊ฐ€

* [#83]๋กœ๊ทธ์ธ/ํšŒ์› ๊ฐ€์ž… ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ URL์„ ๋ถ„๋ฆฌ (#86)

* feat: Oauth2 login, signup redirect url ๋ถ„๊ธฐ

* feat: oauth2 ์š”์ฒญ ์ •๋ณด๋ฅผ ๋‹ด๋Š” DTO ์ƒ์„ฑ

* feat: Oauth2InfoDto ๋ฐ˜์˜

* refactor: Oauth2Info -> Oauth2Request๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ

* fix: kakao test secret id ์ถ”๊ฐ€

* refactor: login, readySignup ๋ผ์ธ ๋ถ„๋ฆฌ

* feat: Dev-Server์˜ mock data ์ถ”๊ฐ€ ๊ธฐ๋Šฅ ๊ตฌํ˜„ (#93)

* refactor: memberRepositoryImplTest fix

* feat: ํ† ํฐ ์œ ํšจ์„ฑ ๊ฒ€์ฆ API ๊ตฌํ˜„,ํ…Œ์ŠคํŠธ (#96)

* [#89]DB ์„œ๋ฒ„ ํ…Œ์ด๋ธ” ์—…๋ฐ์ดํŠธ (#100)

* chore: allowPublicKeyRetrieval ์†์„ฑ ์ถ”๊ฐ€

* chore: application.yml ddl-auto ์†์„ฑ ์ œ๊ฑฐ

* [#107] CORS ์—๋Ÿฌ ์ˆ˜์ • (#108)

* fix: intercepter prefilight ์„ค์ •

* fix: cors addMapping ํŒจํ„ด ์ˆ˜์ •

* fix: oauth2 property type ๋Œ€๋ฌธ์ž๋กœ ์ˆ˜์ • (#110)

* [#92] repository, service, controller ์Šฌ๋ผ์ด์‹ฑ ํ…Œ์ŠคํŠธ ๋ณด๊ฐ• (#101)

* refactor: Member, Point ๋„๋ฉ”์ธ ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* feat: Domain, Message ๋„๋ฉ”์ธ ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* feat: MemberServiceTest ์ž‘์„ฑ

* feat: DonationServiceTest ์ถ”๊ฐ€ ๋ฐ List<Donation> ํ•„๋“œ ์†์„ฑ ๋ณ€๊ฒฝ

* refactor: MemberRepositoryTest ๋ณด์™„

* refactor: DonationRepositoryTest ๋ณ€๊ฒฝ

* refactor: Banner ํŒจํ‚ค์ง• ๋ณ€๊ฒฝ

* feat: BannerServiceTest ์ž‘์„ฑ

* refactor: AuthenticationService ์Šฌ๋ผ์ด์‹ฑ ํ…Œ์ŠคํŠธ๋กœ ๋ณ€๊ฒฝ

* refactor: @EnableJpaAuditing ์„ ์–ธ ์œ„์น˜ ๋ณ€๊ฒฝ

@WebMvcTest ์‹œ์— jpa ์ƒ์„ฑ๊ณผ ๊ด€๋ จ๋œ ๊ธฐ๋Šฅ์ด ๋“ค์–ด์˜ค์ง€ ์•Š๋Š”๋ฐ main ํ•จ์ˆ˜๊ฐ€ ์†ํ•œ ํด๋ž˜์Šค ์œ„์— ์žˆ์œผ๋ฉด ์ด ๋–„๋ฌธ์— ํ…Œ์ŠคํŠธ ์œ„์— ์ถ”๊ฐ€์ ์ธ ์–ด๋…ธํ…Œ์ด์…˜์ด ๊ณ„์†ํ•ด์„œ ๋ถ™๊ฒŒ๋œ๋‹ค. reference: https://1-7171771.tistory.com/136?category=981620

* refactor: cors mapping ์„ ์–ธ ์œ„์น˜ ๋ณ€๊ฒฝ

* feat: MemberController Test ์ž‘์„ฑ

* feat: DonationControllerTest ์ž‘์„ฑ

* feat: BannerControllerTest ์ž‘์„ฑ

* refactor: ์ธ์ˆ˜ํ…Œ์ŠคํŠธ ๊นจ์ง ์›์ธ ํ•ด๊ฒฐ์„ ์œ„ํ•œ ๋””ํดํŠธ ์ƒ์„ฑ์ž ์ถ”๊ฐ€

* refactor: ์—๋Ÿฌ์ฝ”๋“œ ์ƒ์ˆ˜๋กœ ํ˜ธ์ถœ

Co-authored-by: Gyeonglok Kim <goodboy302@naver.com>

* refactor: ์ ‘๊ทผ ์ œ์–ด์ž ๋น ์ง„๊ฒƒ ๋ถ™์—ฌ์ฃผ๊ธฐ

Co-authored-by: Gyeonglok Kim <goodboy302@naver.com>

* refactor: ์—๋Ÿฌ์ฝ”๋“œ ์ƒ์ˆ˜ํ˜ธ์ถœ๋กœ ๋ณ€๊ฒฝ

* refactor: ์ •์ƒ์ ์ธ interceptor&resolver ๋ชจํ‚น์ž‘์—… ๋ฉ”์„œ๋“œ ๋ถ„๋ฆฌ

* refactor: conflict ์ฒ˜๋ฆฌ

Co-authored-by: Gyeonglok Kim <goodboy302@naver.com>
Co-authored-by: dwl5 <ssop6403@gmail.com>

* [#111] ํ›„์› ๊ธฐ๋ก(์ „์ฒด ํ›„์› ๋ฆฌ์ŠคํŠธ, ๊ณต๊ฐœ ํ›„์› ๋ฆฌ์ŠคํŠธ)์— createdDate ์ •๋ณด ์ถ”๊ฐ€ (#112)

* refactor: ์ค‘๋ณต๋˜๋Š” cors ์„ค์ • ์ œ๊ฑฐ

* fix: ํ†ต๊ณผํ•˜์ง€ ๋ชปํ•˜๋Š” ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ˆ˜์ • ๋ฐ ๋ถˆํ•„์š”ํ•œ import ์ œ๊ฑฐ

* feat: ํ›„์› ๊ธฐ๋ก์— createdAt data ์ถ”๊ฐ€

ํ›„์› ๊ธฐ๋ก(์ „์ฒด ํ›„์› ๋ฆฌ์ŠคํŠธ, ๊ณต๊ฐœ ํ›„์› ๋ฆฌ์ŠคํŠธ)์— '์ƒ์„ฑ์ผ์ž' ์ •๋ณด๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค.

* [#115]Logging ์ถ”๊ฐ€ (#116)

* chore: logback-slack ์˜์กด์„ฑ ์ถ”๊ฐ€

* chore: logback ์„ค์ • ์ถ”๊ฐ€

* feat: logging ์ ์šฉ ๋ฐ ๋ฏธ์ •์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ์ถ”๊ฐ€

* [#113] /members/validate/token ์ปจํŠธ๋กค๋Ÿฌ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€ ๋ฐ repositoryTest @import ์ถ”๊ฐ€ (#119)

* refactor: import annotation added

* feat: TokenValidation Test ์ถ”๊ฐ€

* refactor: signup Redirect URL ๋ณ€๊ฒฝ (#121)

* [#124]oauth2.0 ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ URL ์ถ”๊ฐ€  (#125)

* feat: prod ๋กœ๊ทธ์ธ ๊ด€๋ จ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ URL ์ถ”๊ฐ€

* feat: prod ํšŒ์› ๊ฐ€์ž… ๊ด€๋ จ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ URL ์ˆ˜์ •

* Delete index.html

* [#120, #128] Rest Docs ์—ฐ๋™ ๋ฐ ํ›„์›์ž ์ด๋ฆ„ ๊ธฐ๋ณธ๊ฐ’ ๋ณ€๊ฒฝ (#126)

* refactor: RestDocs ์„ค์ • ์ถ”๊ฐ€

* refactor: MemberControllerTest restDocs ์ฝ”๋“œ ์ถ”๊ฐ€

* refactor: BannerControllerTest restDocs ์ฝ”๋“œ ์ถ”๊ฐ€

* refactor: DonationControllerTest restDocs ์ฝ”๋“œ ์ถ”๊ฐ€

* docs: index.adoc ์ƒ์„ฑ

* refactor: enum toUpperCase ์ถ”๊ฐ€

* refactor: ํ…Œ์ŠคํŠธ์šฉ html ํŒŒ์ผ ์‚ญ์ œ

* refactor: asciidoctor ๋ฒ„์ „ ๋ณ€๊ฒฝ

* refactor: gradle ๋ฐ ๋ถ€ํŠธ ๋ฒ„์ „ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œ

* refactor: ํ›„์› ์ด๋ฆ„ default,secret name ๋ณ€๊ฒฝ

* refactor: restDocs๋ฅผ ์œ„ํ•œ gradle ์„ค์ • ๋ณ€๊ฒฝ

* refactor: logback console ๋‚˜์˜ค๋„๋ก ์ˆ˜์ •

Co-authored-by: dwl5 <ssop6403@gmail.com>

* chore: dev-server์˜ ddl-auto ์„ค์ •์„ update๋กœ ๋ณ€๊ฒฝ (#138)

dev-server๊ฐ€ ๋งค๋ฒˆ ๋ฐฐํฌ๋  ๋•Œ๋งˆ๋‹ค ๋ฐ์ดํ„ฐ๊ฐ€ ์ดˆ๊ธฐํ™”๋˜์ง€ ์•Š๋„๋ก ์„ค์ •

* refactor: if๋ฌธ ํ•˜๋‚˜ ๊ฑธ์–ด์คŒ (#139)

* Revert "[#73]PROD ์„œ๋ฒ„ CI/CD ๋™์ž‘์„ ํ…Œ์ŠคํŠธ (#74)"

This reverts commit c278d99.

* docs: update README.md

* feat: ํ”„๋ก ํŠธ ๋ฐฐํฌ CORS ์„ค์ • (#142)

* release v1.0.0 (#148)

* docs: update README.md

* [#73]PROD ์„œ๋ฒ„ CI/CD ๋™์ž‘์„ ํ…Œ์ŠคํŠธ (#74)

* server initial commit

* Delete server.md

Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* docs: docs: update README.md

* Revert "[#73]PROD ์„œ๋ฒ„ CI/CD ๋™์ž‘์„ ํ…Œ์ŠคํŠธ (#74)"

This reverts commit c278d99.

* Release for tyf server v1.0 (#143)

* server initial commit

* Delete server.md

* feat: ๊ธฐ๋ณธ ๋„๋ฉ”์ธ ๊ตฌํ˜„ Member, Donation, Banner (#6)

* feat: ์—๋Ÿฌ ์‘๋‹ต DTO ์ƒ์„ฑ

* [#7] ํ›„์› ์š”์ฒญ ๋ฐ ๋ฉ”์‹œ์ง€ ์ „์†ก API ๊ตฌํ˜„ (#9)

* feat: ํ›„์› ์š”์ฒญ API ๊ตฌํ˜„

* feat: ํ›„์› ์š”์ฒญ API ๊ตฌํ˜„

* feat: ํ›„์› ๋ฉ”์‹œ์ง€ ์ „์†ก API ๊ตฌํ˜„

* refactor: ๋ถˆํ•„์š”ํ•œ ์ฝ”๋“œ ์‚ญ์ œ

* refactor: ๋ถˆํ•„์š”ํ•œ ์ž„ํฌํŠธ ์ œ๊ฑฐ

* fix: ๋งคํ•‘ url messages ์˜คํƒ€ ์ˆ˜์ •

* refactor: ํ…Œ์ŠคํŠธ ์ ‘๊ทผ ์ œํ•œ์ž private ์ ์šฉ

* fix : donations RequestMapping ์ˆ˜์ •

* refactor: @getter ์ถ”๊ฐ€ ๋ฐ ํ…Œ์ŠคํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ AssertJ๋กœ ๋ณ€๊ฒฝ

* [#12] ๋ฐฐ๋„ˆ ์ƒ์„ฑ ๋ฐ ๋ชฉ๋ก ์กฐํšŒ API ๊ตฌํ˜„ (#12)

* Create README.md

* docs: README.md ๊ฐœ๋ฐœ ์ปจ๋ฒค์…˜ ์ถ”๊ฐ€

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* feat: ๋ฐฐ๋„ˆ ์ƒ์„ฑ, ๋ฉค๋ฒ„์˜ ๋ฐฐ๋„ˆ ๋ชฉ๋ก ์กฐํšŒ ๊ธฐ๋Šฅ ๊ตฌํ˜„

* [#8] ๋ฐฐ๋„ˆ ์ƒ์„ฑ ๋ฐ ๋ชฉ๋ก ์กฐํšŒ API ๊ตฌํ˜„ (#10)

* server initial commit

* Delete server.md

* feat: ๊ธฐ๋ณธ ๋„๋ฉ”์ธ ๊ตฌํ˜„ Member, Donation, Banner (#6)

* feat: ์—๋Ÿฌ ์‘๋‹ต DTO ์ƒ์„ฑ

* feat: ๋ฐฐ๋„ˆ ์ƒ์„ฑ, ๋ฉค๋ฒ„์˜ ๋ฐฐ๋„ˆ ๋ชฉ๋ก ์กฐํšŒ ๊ธฐ๋Šฅ ๊ตฌํ˜„

Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* refactor: ๋ฆฌ๋ทฐ ๋ฐ˜์˜

* Revert "[#8] ๋ฐฐ๋„ˆ ์ƒ์„ฑ ๋ฐ ๋ชฉ๋ก ์กฐํšŒ API ๊ตฌํ˜„ (#10)"

This reverts commit d31ffda.

Co-authored-by: hwano <jho2301@gmail.com>
Co-authored-by: dwl5 <ssop6403@gmail.com>
Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* [#11] ๋„๋ฉ”์ธ createdDate ์ถ”๊ฐ€ (#13)

* feat: BaseTimeEntity ์ถ”๊ฐ€

* refactor: delete baseTimeEntityTest

* refactor: member repository ์ค‘๋ณต ์ œ๊ฑฐ

Co-authored-by: dwl5 <ssop6403@gmail.com>

* [#15] JWT ํ† ํฐ ๊ด€๋ฆฌ์™€ ์ธํ„ฐ์…‰ํ„ฐ, ArgumentResolver ๊ตฌํ˜„ (#17)

* feat: jwtTokenProvider ์ƒ์„ฑ

* feat: ArguementsResolver, Interceptor ๊ตฌํ˜„ ๋ฐ Config ์ถ”๊ฐ€

* test: AuthenticationService ํ…Œ์ŠคํŠธ ์ž‘์„ฑ

* refactor: auth ๊ด€๋ จ ํด๋ž˜์Šค ํŒจํ‚ค์ง€ ๋ณ€๊ฒฝ

* refactor: throws exception ๊ตฌ๋ฌธ ์‚ญ์ œ

* refactor: ํ† ํฐ ๋งŒ๋ฃŒ์‹œ๊ฐ„ ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€ ๋ฐ ํŒจํ‚ค์ง€ ๋ณ€๊ฒฝ

* refactor: Authorization header ๋ชป์ฐพ์„ ์‹œ ์˜ˆ์™ธ ๋˜์ง€๊ฒŒ ๋ณ€๊ฒฝ

Co-authored-by: rok93 <goodboy302@naver.com>

* [#16] OAuth2 ๋กœ๊ทธ์ธ ๋ฐ ํšŒ์›๊ฐ€์ž… (#18)

* feat: OAuth2 ์นด์นด์˜ค ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* feat: ๊ตฌ๊ธ€, ์นด์นด์˜ค oauth ์—ฐ๋™

* feat: ๋กœ๊ทธ์ธ ๋ฐ์ดํ„ฐ properties๋กœ ๋ถ„๋ฆฌ

* feat: ํšŒ์›๊ฐ€์ž… ๊ตฌํ˜„

* fix: oauth ๋กœ๊ทธ์ธ ์•ˆ๋˜๋Š” ํ˜„์ƒ ์ˆ˜์ •

* docs: ํ”„๋กœํผํ‹ฐ ํŒŒ์ผ gitignore ์ถ”๊ฐ€

* remove properties

* refactor: ErrorResponse ์ƒ์„ฑ์ž ์ œ๊ฑฐ

* refactor: oauth ๊ธฐ๋Šฅ ์ถ”์ƒํ™”

Co-authored-by: ๊น€์ฃผ์› <kjw11077@naver.com>

* [#34] OAuth2 ๋กœ๊ทธ์ธ,ํšŒ์›๊ฐ€์ž… JWT ์—ฐ๋™ (#36)

* refactor: oauth2 ํŒจํ‚ค์ง€ auth๋กœ ๋ณ‘ํ•ฉ

* docs: oauth2 ํŒŒ์ผ gitignore ์ถ”๊ฐ€

* refactor: OAuth2 ์ถ”์ƒํ™” ๋ฐฉ์‹ ๋ณ€๊ฒฝ

* refactor: Api ํ˜ธ์ถœ ๋กœ์ง ๋ถ„๋ฆฌ

* refactor: ํšŒ์›๊ฐ€์ž… ์ค€๋น„ api ๊ตฌํ˜„

* refactor: readySignUp ๋ฉ”์„œ๋“œ ๋ถ„๋ฆฌ

Co-authored-by: dwl5 <ssop6403@gmail.com>

* [#37] ํšŒ์›๊ฐ€์ž…(๋ฉค๋ฒ„ ์ƒ์„ฑ) API (#39)

* refactor: oauth2 ํŒจํ‚ค์ง€ auth๋กœ ๋ณ‘ํ•ฉ

* docs: oauth2 ํŒŒ์ผ gitignore ์ถ”๊ฐ€

* refactor: OAuth2 ์ถ”์ƒํ™” ๋ฐฉ์‹ ๋ณ€๊ฒฝ

* refactor: Api ํ˜ธ์ถœ ๋กœ์ง ๋ถ„๋ฆฌ

* refactor: ํšŒ์›๊ฐ€์ž… ์ค€๋น„ api ๊ตฌํ˜„

* refactor: readySignUp ๋ฉ”์„œ๋“œ ๋ถ„๋ฆฌ

* feat: ํšŒ์›๊ฐ€์ž… api ๊ตฌํ˜„

Co-authored-by: dwl5 <ssop6403@gmail.com>

* fix: oauth2 jpa ํ…Œ์ด๋ธ” ๋ช… ์ˆ˜์ • (#42)

* [#49] ๋žœ๋”ฉํŽ˜์ด์ง€ ์ฃผ์†Œ, ๋‹‰๋„ค์ž„ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ, ์ฐฝ์ž‘์ž ์ •๋ณด ์š”์ฒญ, ์ฐฝ์ž‘์ž ํฌ์ธํŠธ ์กฐํšŒ API (#53)

* feat: langdingPageUrl ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ api ๊ตฌํ˜„

* feat: nickName ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ api ๊ตฌํ˜„

* refactor: OAuth -> Oauth ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ

* refactor: NickName -> Nickname ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ

* refactor: ํ† ํฐ claim์— id ์ถ”๊ฐ€

* feat: ์ฐฝ์ž‘์ž ์†Œ์œ  ํฌ์ธํŠธ ์กฐํšŒ api ๊ตฌํ˜„

* refactor: Donation ์—”ํ‹ฐํ‹ฐ isPublic ํ•„๋“œ์ถ”๊ฐ€

* feat: Interceptor ํŒจํ„ด ์ง€์ •

Co-authored-by: ๊น€์ฃผ์› <kjw11077@naver.com>

* docs: develop-server backend ํฌ๋ฃจ ์ด๋ฆ„ ์ถ”๊ฐ€ (#60)

* docs: backend ๊ธฐ์ˆ  ์Šคํƒ ์ถ”๊ฐ€

* docs: ๊ธฐ์ˆ  ์Šคํƒ ์ถ”๊ฐ€ (jenkins-test)

* docs: ๊ธฐ์ˆ  ์Šคํƒ ์ถ”๊ฐ€ (jenkins-test)

* docs: ๊ธฐ์ˆ  ์Šคํƒ ์ถ”๊ฐ€ (jenkins-test)

* [#54] ํ˜„์žฌ๊นŒ์ง€ ๊ตฌํ˜„ํ•œ API์˜ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•œ๋‹ค (#61)

* refactor: urlName -> pageName ๋ฆฌ๋„ค์ด๋ฐ

* refactor: Message VO๋กœ ์บก์Šํ™”

* refactor: API /me ๋ถ™์ด๋Š”๊ฑธ๋กœ ๋ณ€๊ฒฝ

* test: Donation ์ธ์ˆ˜ํ…Œ์ŠคํŠธ, isPublic -> secret ๋ฆฌ๋„ค์ž„

* test: Banner ์ธ์ˆ˜ํ…Œ์ŠคํŠธ ์ž‘์„ฑ

* test: Member ์ธ์ˆ˜ํ…Œ์ŠคํŠธ ์ž‘์„ฑ, DonationServiceTest ์˜ค๋ฅ˜์ˆ˜์ •

* test: ์˜ˆ์™ธ ํ…Œ์ŠคํŠธ

* [#58] ํ›„์› ๋ฆฌ์ŠคํŠธ API ์ž‘์„ฑ (#65)

* refactor: ์ˆ˜์ •๋˜์ง€ ์•Š์€ ์ด์ „ ํ•„๋“œ๋ช… ์ˆ˜์ •

* feat: ๊ณต๊ฐœ ํ›„์› ๋ฆฌ์ŠคํŠธ ์กฐํšŒ api ๊ตฌํ˜„ ๋ฐ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ

* feat: donationRepository ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€ ๋ฐ ํ…Œ์ŠคํŠธ

* feat: DonationService ๋ฉ”์„œ๋“œ ๋‚ด๋ถ€๋กœ์ง ๊ตฌํ˜„

* refactor: DonationController ๋‚ด๋ถ€ ์ฑ„์šฐ๊ธฐ

* refactor: ์ˆ˜๋ฆฌ ์ฝ”๋“œ ๋ฆฌ๋ทฐ ํ”ผ๋“œ๋ฐฑ ๋ฐ˜์˜

* feat: ํ›„์› ๋ฆฌ์ŠคํŠธ ์กฐํšŒ ์ธ์ˆ˜ํ…Œ์ŠคํŠธ ์ƒ์„ฑ

* refactor: Secret์—ฌ๋ถ€๊ฐ€ true์ธ ํ›„์›๋งŒ ๊ฐ€๋ฆฌ๊ฒŒ๋” ์ˆ˜์ •

* refactor: service๊ฐ€ ์•„๋‹Œ repository๋ฅผ ์ด์šฉํ•œ ๋ฉค๋ฒ„ ํƒ์ƒ‰

* refactor: DonationMessageRequest toEntity ๋ฉ”์„œ๋“œ ์ƒ์„ฑ

* [#55, #67] ์˜ˆ์™ธ ํ•ธ๋“ค๋ง ๊ตฌํ˜„ ๋ฐ API ๋ฆฌํŒฉํ† ๋ง (#71)

* feat: BaseException ๋ฐ ControllerAdviceHandler ์ถ”๊ฐ€

* feat: /donations api ์˜ˆ์™ธ ๋กœ์ง ์ฒ˜๋ฆฌ

* refactor: /donations request ํ•„๋“œ ๋ณ€๊ฒฝ์— ๋”ฐ๋ฅธ ๋กœ์ง ๋ณ€๊ฒฝ

* feat: /donations/{donationId}/messages api ์˜ˆ์™ธ ๋กœ์ง ์ฒ˜๋ฆฌ

* feat: auth ๊ด€๋ จ ์ต์…‰์…˜ ์ถ”๊ฐ€

* feat: /banners api ์˜ˆ์™ธ ๋กœ์ง ์ฒ˜๋ฆฌ

* feat: /members/validate/pageName api ์—๋Ÿฌ ๋กœ์ง ์ฒ˜๋ฆฌ

* feat: /members/validate/nickname api ์—๋Ÿฌ ๋กœ์ง ์ฒ˜๋ฆฌ

* refactor: @Valid ๋†“์นœ ๋ถ€๋ถ„ ๋‹ฌ์•„์คŒ

* refactor: ์ฝ”๋“œ ์ •๋ฆฌ, ๊ฐ„๋‹จํ•œ ๋ฆฌํŒฉํ„ฐ๋ง

* test: ํ›„์› ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€, ํ…Œ์ŠคํŠธ ๋ฆฌํŒฉํ„ฐ๋ง

* feat: ๋ฉค๋ฒ„,OAuth2 ์˜ˆ์™ธ ์ผ€์ด์Šค ํ•ธ๋“ค๋ง ๊ตฌํ˜„

* refactor: ์˜คํƒ€์ˆ˜์ •,๋ฆฌํฌ๋งทํŒ…

* feat: ์ธ์ฆ ์ธํ„ฐ์…‰ํ„ฐ ์ •์ฑ… ์ถ”๊ฐ€

* refactor: @Valid ๋น ํŠธ๋ฆฐ ๊ณณ ์ถ”๊ฐ€

* refactor: ๊ณต๋ฐฑํ•œ์นธ์ถ”๊ฐ€

* refactor: @ControllerAdvice -> @RestControllerAdvice ๋ณ€๊ฒฝ

* feat: SignUpRequestException ์ถ”๊ฐ€

* docs: TODO ์ถ”๊ฐ€

* refactor: ์ปค์Šคํ…€์˜ˆ์™ธํด๋ž˜์Šค์˜ ERROR_CODE ์ƒ์ˆ˜๋ฅผ public์œผ๋กœ ๋ณ€๊ฒฝ

Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* [#63]Prod-Server์˜ ์„ค์ •ํŒŒ์ผ์„ ์ƒ์„ฑ (#72)

* chore: jasypt ์˜์กด์„ฑ ์ถ”๊ฐ€

* feat: JasyptConfig ์ถ”๊ฐ€

* chore: oauth2 ์„ค์ •ํŒŒ์ผ gitignore์—์„œ ์ œ๊ฑฐ

* feat: jasypt secret ket ์™ธ๋ถ€์—์„œ ๊ฐ€์ ธ์˜ค๋„๋ก ์ˆ˜์ •

* feat: properties ํŒŒ์ผ ๋ถ„๋ฆฌ ๋ฐ ์•”ํ˜ธํ™”

* refactor: ์ฝ”๋“œ์ •๋ฆฌ

* fix: include property ๊ด€๋ จ ์—๋Ÿฌ ์ˆ˜์ •

* chore: mysql ์˜์กด์„ฑ ์ถ”๊ฐ€

* refactor: encrytor config ์ƒ์„ฑ ๋กœ์ง ๋ถ„๋ฆฌ

* refactor: @EnableEncryptableProperties ์–ด๋…ธํ…Œ์ด์…˜ ์ œ๊ฑฐ

* refactor: jashpyStringEncrytor ์ด๋ฆ„ ์ •ํ•ด์ฃผ๋Š” ๋ถ€๋ถ„ ์ œ๊ฑฐ

* feat: application-test ์ถ”๊ฐ€

* refactor: jasypt testํ™˜๊ฒฝ์—์„œ ์‹คํ–‰ํ•˜์ง€ ์•Š๋„๋ก ์ˆ˜์ •

* [#77] ์ฐฝ์ž‘์ž๊ฐ€ ์ž์‹ ์˜ ์ •๋ณด๋ฅผ ์กฐํšŒํ•˜๋Š” API๋ฅผ ์ž‘์„ฑํ•œ๋‹ค. (#78)

* feat: ์ฐฝ์ž‘์ž ์ž์‹ ์˜ ์ •๋ณด ์กฐํšŒ API ์ž‘์„ฑ,ํ…Œ์ŠคํŠธ

* refactor: ์˜คํƒ€์ˆ˜์ •,๊ฐ„๋‹จํ•œ ๋ฆฌํŒฉํ„ฐ๋ง

* refactor: MemberPrivateResponse -> MemberDetailResponse ๋ฆฌ๋„ค์ž„

* feat: cors ์„ค์ • ์ถ”๊ฐ€ (#88)

* [#84] ํ›„์›๊ธˆ ์ˆœ ํ๋ ˆ์ด์…˜ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ณด์—ฌ์ค€๋‹ค. (#85)

* feat: curation list api ๊ตฌํ˜„

* refactor: CurationsResponse ํ•„๋“œ์— pageName ์ถ”๊ฐ€

* [#83]๋กœ๊ทธ์ธ/ํšŒ์› ๊ฐ€์ž… ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ URL์„ ๋ถ„๋ฆฌ (#86)

* feat: Oauth2 login, signup redirect url ๋ถ„๊ธฐ

* feat: oauth2 ์š”์ฒญ ์ •๋ณด๋ฅผ ๋‹ด๋Š” DTO ์ƒ์„ฑ

* feat: Oauth2InfoDto ๋ฐ˜์˜

* refactor: Oauth2Info -> Oauth2Request๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ

* fix: kakao test secret id ์ถ”๊ฐ€

* refactor: login, readySignup ๋ผ์ธ ๋ถ„๋ฆฌ

* feat: Dev-Server์˜ mock data ์ถ”๊ฐ€ ๊ธฐ๋Šฅ ๊ตฌํ˜„ (#93)

* refactor: memberRepositoryImplTest fix

* feat: ํ† ํฐ ์œ ํšจ์„ฑ ๊ฒ€์ฆ API ๊ตฌํ˜„,ํ…Œ์ŠคํŠธ (#96)

* [#89]DB ์„œ๋ฒ„ ํ…Œ์ด๋ธ” ์—…๋ฐ์ดํŠธ (#100)

* chore: allowPublicKeyRetrieval ์†์„ฑ ์ถ”๊ฐ€

* chore: application.yml ddl-auto ์†์„ฑ ์ œ๊ฑฐ

* [#107] CORS ์—๋Ÿฌ ์ˆ˜์ • (#108)

* fix: intercepter prefilight ์„ค์ •

* fix: cors addMapping ํŒจํ„ด ์ˆ˜์ •

* fix: oauth2 property type ๋Œ€๋ฌธ์ž๋กœ ์ˆ˜์ • (#110)

* [#92] repository, service, controller ์Šฌ๋ผ์ด์‹ฑ ํ…Œ์ŠคํŠธ ๋ณด๊ฐ• (#101)

* refactor: Member, Point ๋„๋ฉ”์ธ ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* feat: Domain, Message ๋„๋ฉ”์ธ ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* feat: MemberServiceTest ์ž‘์„ฑ

* feat: DonationServiceTest ์ถ”๊ฐ€ ๋ฐ List<Donation> ํ•„๋“œ ์†์„ฑ ๋ณ€๊ฒฝ

* refactor: MemberRepositoryTest ๋ณด์™„

* refactor: DonationRepositoryTest ๋ณ€๊ฒฝ

* refactor: Banner ํŒจํ‚ค์ง• ๋ณ€๊ฒฝ

* feat: BannerServiceTest ์ž‘์„ฑ

* refactor: AuthenticationService ์Šฌ๋ผ์ด์‹ฑ ํ…Œ์ŠคํŠธ๋กœ ๋ณ€๊ฒฝ

* refactor: @EnableJpaAuditing ์„ ์–ธ ์œ„์น˜ ๋ณ€๊ฒฝ

@WebMvcTest ์‹œ์— jpa ์ƒ์„ฑ๊ณผ ๊ด€๋ จ๋œ ๊ธฐ๋Šฅ์ด ๋“ค์–ด์˜ค์ง€ ์•Š๋Š”๋ฐ main ํ•จ์ˆ˜๊ฐ€ ์†ํ•œ ํด๋ž˜์Šค ์œ„์— ์žˆ์œผ๋ฉด ์ด ๋–„๋ฌธ์— ํ…Œ์ŠคํŠธ ์œ„์— ์ถ”๊ฐ€์ ์ธ ์–ด๋…ธํ…Œ์ด์…˜์ด ๊ณ„์†ํ•ด์„œ ๋ถ™๊ฒŒ๋œ๋‹ค. reference: https://1-7171771.tistory.com/136?category=981620

* refactor: cors mapping ์„ ์–ธ ์œ„์น˜ ๋ณ€๊ฒฝ

* feat: MemberController Test ์ž‘์„ฑ

* feat: DonationControllerTest ์ž‘์„ฑ

* feat: BannerControllerTest ์ž‘์„ฑ

* refactor: ์ธ์ˆ˜ํ…Œ์ŠคํŠธ ๊นจ์ง ์›์ธ ํ•ด๊ฒฐ์„ ์œ„ํ•œ ๋””ํดํŠธ ์ƒ์„ฑ์ž ์ถ”๊ฐ€

* refactor: ์—๋Ÿฌ์ฝ”๋“œ ์ƒ์ˆ˜๋กœ ํ˜ธ์ถœ

Co-authored-by: Gyeonglok Kim <goodboy302@naver.com>

* refactor: ์ ‘๊ทผ ์ œ์–ด์ž ๋น ์ง„๊ฒƒ ๋ถ™์—ฌ์ฃผ๊ธฐ

Co-authored-by: Gyeonglok Kim <goodboy302@naver.com>

* refactor: ์—๋Ÿฌ์ฝ”๋“œ ์ƒ์ˆ˜ํ˜ธ์ถœ๋กœ ๋ณ€๊ฒฝ

* refactor: ์ •์ƒ์ ์ธ interceptor&resolver ๋ชจํ‚น์ž‘์—… ๋ฉ”์„œ๋“œ ๋ถ„๋ฆฌ

* refactor: conflict ์ฒ˜๋ฆฌ

Co-authored-by: Gyeonglok Kim <goodboy302@naver.com>
Co-authored-by: dwl5 <ssop6403@gmail.com>

* [#111] ํ›„์› ๊ธฐ๋ก(์ „์ฒด ํ›„์› ๋ฆฌ์ŠคํŠธ, ๊ณต๊ฐœ ํ›„์› ๋ฆฌ์ŠคํŠธ)์— createdDate ์ •๋ณด ์ถ”๊ฐ€ (#112)

* refactor: ์ค‘๋ณต๋˜๋Š” cors ์„ค์ • ์ œ๊ฑฐ

* fix: ํ†ต๊ณผํ•˜์ง€ ๋ชปํ•˜๋Š” ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ˆ˜์ • ๋ฐ ๋ถˆํ•„์š”ํ•œ import ์ œ๊ฑฐ

* feat: ํ›„์› ๊ธฐ๋ก์— createdAt data ์ถ”๊ฐ€

ํ›„์› ๊ธฐ๋ก(์ „์ฒด ํ›„์› ๋ฆฌ์ŠคํŠธ, ๊ณต๊ฐœ ํ›„์› ๋ฆฌ์ŠคํŠธ)์— '์ƒ์„ฑ์ผ์ž' ์ •๋ณด๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค.

* [#115]Logging ์ถ”๊ฐ€ (#116)

* chore: logback-slack ์˜์กด์„ฑ ์ถ”๊ฐ€

* chore: logback ์„ค์ • ์ถ”๊ฐ€

* feat: logging ์ ์šฉ ๋ฐ ๋ฏธ์ •์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ์ถ”๊ฐ€

* [#113] /members/validate/token ์ปจํŠธ๋กค๋Ÿฌ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€ ๋ฐ repositoryTest @import ์ถ”๊ฐ€ (#119)

* refactor: import annotation added

* feat: TokenValidation Test ์ถ”๊ฐ€

* refactor: signup Redirect URL ๋ณ€๊ฒฝ (#121)

* [#124]oauth2.0 ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ URL ์ถ”๊ฐ€  (#125)

* feat: prod ๋กœ๊ทธ์ธ ๊ด€๋ จ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ URL ์ถ”๊ฐ€

* feat: prod ํšŒ์› ๊ฐ€์ž… ๊ด€๋ จ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ URL ์ˆ˜์ •

* Delete index.html

* [#120, #128] Rest Docs ์—ฐ๋™ ๋ฐ ํ›„์›์ž ์ด๋ฆ„ ๊ธฐ๋ณธ๊ฐ’ ๋ณ€๊ฒฝ (#126)

* refactor: RestDocs ์„ค์ • ์ถ”๊ฐ€

* refactor: MemberControllerTest restDocs ์ฝ”๋“œ ์ถ”๊ฐ€

* refactor: BannerControllerTest restDocs ์ฝ”๋“œ ์ถ”๊ฐ€

* refactor: DonationControllerTest restDocs ์ฝ”๋“œ ์ถ”๊ฐ€

* docs: index.adoc ์ƒ์„ฑ

* refactor: enum toUpperCase ์ถ”๊ฐ€

* refactor: ํ…Œ์ŠคํŠธ์šฉ html ํŒŒ์ผ ์‚ญ์ œ

* refactor: asciidoctor ๋ฒ„์ „ ๋ณ€๊ฒฝ

* refactor: gradle ๋ฐ ๋ถ€ํŠธ ๋ฒ„์ „ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œ

* refactor: ํ›„์› ์ด๋ฆ„ default,secret name ๋ณ€๊ฒฝ

* refactor: restDocs๋ฅผ ์œ„ํ•œ gradle ์„ค์ • ๋ณ€๊ฒฝ

* refactor: logback console ๋‚˜์˜ค๋„๋ก ์ˆ˜์ •

Co-authored-by: dwl5 <ssop6403@gmail.com>

* chore: dev-server์˜ ddl-auto ์„ค์ •์„ update๋กœ ๋ณ€๊ฒฝ (#138)

dev-server๊ฐ€ ๋งค๋ฒˆ ๋ฐฐํฌ๋  ๋•Œ๋งˆ๋‹ค ๋ฐ์ดํ„ฐ๊ฐ€ ์ดˆ๊ธฐํ™”๋˜์ง€ ์•Š๋„๋ก ์„ค์ •

* refactor: if๋ฌธ ํ•˜๋‚˜ ๊ฑธ์–ด์คŒ (#139)

* docs: update README.md

* feat: ํ”„๋ก ํŠธ ๋ฐฐํฌ CORS ์„ค์ • (#142)

Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>
Co-authored-by: ๊น€์ฃผ์› <kjw11077@naver.com>
Co-authored-by: hwano <jho2301@gmail.com>
Co-authored-by: rok93 <goodboy302@naver.com>

* Release for tyf client v1.0.0  (#147)

* chore: yarn init

* chore: webpack ์„ธํŒ…

* chore: tsconfig, React ์„ธํŒ…

* chore: eslint, pretteir ์„ธํŒ…

* chore: ํ”„๋กœ์ ํŠธ boilerplate ๊ตฌํ˜„

* chore: ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์—…๋ฐ์ดํŠธ

- styled components ์ถ”๊ฐ€
- eslint ์˜ต์…˜ ์ถ”๊ฐ€
- tsconfig ์˜ต์…˜ ์ถ”๊ฐ€

* feat: ์ „์—ญ ์Šคํƒ€์ผ, Reset ์ ์šฉ

* feat: ๋ฒ„ํŠผ ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

- Button
- OutlineButton

Co-authored-by: Chayan <hchayan196@gmail.com>

* feat: Input ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: InputWithMessage ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: Textarea ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: Checkbox ์ปดํฌ๋„ŒํŠธ๊ตฌํ˜„

* refactor: styled-components, theme d.ts ํŒŒ์ผ ์ถ”๊ฐ€

* feat: Title ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: Noto Sans font ์ ์šฉ

* feat: anchor ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: Container ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* refactor: propsํƒ€์ž…์—์„œ children ์ œ๊ฑฐ

* feat: Template ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* chore: asset ๋ชจ๋“ˆ ์ถ”๊ฐ€

* Delete node_modules directory

* Delete yarn.lock

* feat: PUBLIC_URL ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์„ธํŒ…

* feat: ๊ตฌ๊ธ€, ์นด์นด์˜ค, ๋„ค์ด๋ฒ„ ๋กœ๊ณ  svg ํŒŒ์ผ ์ถ”๊ฐ€

* feat: ButtonWithIcon, OutlineButtonWithIcon molecule ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: svg, png, gif, jpg, jpeg ํŒŒ์ผ import ์‚ฌ์šฉ ์œ„ํ•œ custom.d.ts ๊ตฌํ˜„

* feat: assets ํด๋” src ๋‚ด๋กœ ์ด๋™

* feat: LoginPage ๊ตฌํ˜„

* refactor: style ๋ธ”๋ก ์ค„๋ฐ”๊ฟˆ ์ผ๋ถ€ ๊ฐœ์„ 

* refactor: buttonWithIcon์—์„œ img properties๋„ ๋ฐ›๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ณ€๊ฒฝ

* feat: IconButton ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: NavBar ์ปดํฌ๋„ŒํŠธ ๋งˆํฌ์—… ๊ตฌํ˜„

* feat: Footer ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: NavBar, Footer min-width ์ ์šฉ

* refactor: buttonWithIcon ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ

* test: BarButtonWithIcon, OutlineBarButtonWithIcon Storybook ํ…Œ์ŠคํŠธ ๊ตฌํ˜„

* feat: RegisterTermsPage ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* refactor: LoginPage style ๋„ค์ด๋ฐ ๊ฐœ์„  ๋ฐ ์ฃผ์„ ์ œ๊ฑฐ

* feat: RegisterAuthPage ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* style: StyledInputWithMessage ๋„ˆ๋น„, ๋†’์ด๊ฐ’ ์ˆ˜์ •

* feat: RegisterAddressPage ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* style: input ํƒœ๊ทธ ๊ธฐ๋ณธ ํฐํŠธ ์‚ฌ์ด์ฆˆ ์ถ”๊ฐ€

* style: ๋ถˆํ•„์š”ํ•œ ์Šคํƒ€์ผ ํ™•์žฅ์ž ์ œ๊ฑฐ

* feat: RegisterNamePage ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: RegisterSuccessPage ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* refactor: ์ผ๋ถ€ ํŒŒ์ผ import ์ˆœ์„œ ๋ณ€๊ฒฝ

* feat: ๋ฉ”์ธํŽ˜์ด์ง€ ๋งˆํฌ์—… ๊ตฌํ˜„

* test: ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž…ํŽ˜์ด์ง€ ์Šคํ† ๋ฆฌ๋ถ ์ถ”๊ฐ€

* feat: Profile ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* style: subTitle ์ปดํฌ๋„ŒํŠธ ํ…์ŠคํŠธ ์ƒ‰์ƒ ๋ณ€๊ฒฝ

* feat: CreatorPage ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* refactor: Comments ์ปดํฌ๋„ŒํŠธ ๋ถ„๋ฆฌ

* feat: StatisticsPage ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* refactor: ์ปดํฌ๋„ŒํŠธ import ์ˆœ์„œ ๋ฐ ํƒ€์ž… ๋ˆ„๋ฝ ํ•ด๊ฒฐ

* feat: ํ›„์› ๊ธˆ์•ก ํ…์ŠคํŠธ ์‚ฌ์ด์ฆˆ ์ฆ๊ฐ€

* feat: Profile ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* style: subTitle ์ปดํฌ๋„ŒํŠธ ํ…์ŠคํŠธ ์ƒ‰์ƒ ๋ณ€๊ฒฝ

* feat: CreatorPage ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* refactor: Comments ์ปดํฌ๋„ŒํŠธ ๋ถ„๋ฆฌ

* feat: StatisticsPage ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* refactor: ์ปดํฌ๋„ŒํŠธ import ์ˆœ์„œ ๋ฐ ํƒ€์ž… ๋ˆ„๋ฝ ํ•ด๊ฒฐ

* feat: ํ›„์› ๊ธˆ์•ก ํ…์ŠคํŠธ ์‚ฌ์ด์ฆˆ ์ฆ๊ฐ€

* test: ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž…ํŽ˜์ด์ง€ ์Šคํ† ๋ฆฌ๋ถ ์ถ”๊ฐ€

* Delete settings.json

* feat: Donation ํŽ˜์ด์ง€ ๋งˆํฌ์—… ๊ตฌํ˜„

Co-authored-by: Chayan <hchayan196@gmail.com>

* feat: MessageForm ์ปดํฌ๋„ŒํŠธ ๋งˆํฌ์—… ๊ตฌํ˜„

* feat: ํ›„์› ์„ฑ๊ณต ํŽ˜์ด์ง€ ๋งˆํฌ์—… ๊ตฌํ˜„

* feat: Modal ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: Menu ์ปดํฌ๋„ŒํŠธ ๋งˆํฌ์—… ๊ตฌํ˜„

* style: import๋ฌธ ์ •๋ฆฌ

* Delete settings.json

* chore: react-router-dom ์„ค์น˜

* feat: ๊ธฐ๋ณธ router ์ƒ์„ฑ

* feat: navBar ๊ตฌ์กฐ ๋ฐ ์Šคํƒ€์ผ ๊ฐœ์„ 

* feat: ๋ฉ”์ธ, ๋กœ๊ทธ์ธํŽ˜์ด์ง€ ๊ตฌ์กฐ ๋ฐ ์Šคํƒ€์ผ ๊ฐœ์„ 

* feat: ํšŒ์›๊ฐ€์ž… ์•ฝ๊ด€ ํŽ˜์ด์ง€ ๊ตฌ์กฐ ๋ฐ ์Šคํƒ€์ผ ๊ฐœ์„ 

* feat: ํšŒ์›๊ฐ€์ž… ์ ˆ์ฐจ ํŽ˜์ด์ง€ ๊ตฌ์กฐ ๋ฐ ์Šคํƒ€์ผ ๊ฐœ์„ 

* feat: ํ›„์› ์ ˆ์ฐจ ํŽ˜์ด์ง€ ๊ตฌ์กฐ ๋ฐ ์Šคํƒ€์ผ ๊ฐœ์„ 

* feat: ์ฐฝ์ž‘์ž ํŽ˜์ด์ง€ ๊ตฌ์กฐ ๋ฐ ์Šคํƒ€์ผ ๊ฐœ์„ 

* feat: ์ปดํฌ๋„ŒํŠธ ๋ผ์šฐํ„ฐ ๋ณต๊ตฌ ๋ฐ ์ผ๋ถ€ ์˜ค๋ฅ˜ ๊ฐœ์„ 

* test: storybook ๋ฏธ์ ์šฉ ํŽ˜์ด์ง€ ์ ์šฉ, react-router๋ฅผ ํ…Œ์ŠคํŠธ ํˆด์— ์ถ”๊ฐ€

* refactor: ๋ถˆํ•„์š” import ์ œ๊ฑฐ

* refactor: LoginForm ์ปดํฌ๋„ŒํŠธ ๋ถ„๋ฆฌ

* refactor: Register ๊ด€๋ จ Forms ์ปดํฌ๋„ŒํŠธ ๋ถ„๋ฆฌ

* chore: ํ…Œ์ŠคํŠธ ํ™˜๊ฒฝ ์™„๋ฒฝ ์„ธํŒ…

* feat: ์ด์šฉ์•ฝ๊ด€ ์ฒดํฌ๋ฐ•์Šค toggle ๊ตฌํ˜„, ์ „์ฒด toggle ๊ตฌํ˜„, ๋ฒ„ํŠผ ์กฐ๊ฑด๋ถ€ ํ™œ์„ฑํ™” ๊ตฌํ˜„

* feat: ์ด์šฉ์•ฝ๊ด€ ์ƒ์„ธ์„ค๋ช… ๋ชจ๋‹ฌ ๊ตฌํ˜„

* feat: google, kakao ์™ธ๋ถ€ ์ธ์ฆ ํšŒ์›๊ฐ€์ž… ์—ฐ๋™

* chore: ๋ฐฐํฌ ํ…Œ์ŠคํŠธ ์œ„ํ•œ netlify ์„ค์ • ์ฝ”๋“œ ์ถ”๊ฐ€

* refactor: oauth ์ฃผ์†Œ ์ƒ์ˆ˜ํ™”

* feat: useRegister๋กœ terms state ๋ถ„๋ฆฌ ๋ฐ ์ด์šฉ์•ฝ๊ด€ ํŽ˜์ด์ง€ ์ถœ๋ ฅ ๋ฐฉ์‹ ๋ณ€๊ฒฝ

* test: ํšŒ์›๊ฐ€์ž… ์ด์šฉ์•ฝ๊ด€ ํŽ˜์ด์ง€ ํ…Œ์ŠคํŠธ ๊ตฌํ˜„

* refactor: oauth ์ƒ์ˆ˜ํ™”

* refactor: ์™ธ๋ถ€์ธ์ฆ ์‚ฌ์ดํŠธ ์ด๋ฏธ์ง€ attr ์‚ฌ์šฉ ๋ฐ ์ผ๋ถ€ ๋ฆฌํŒฉํ† ๋ง

* refactor: useRegister ํŽ˜์ด์ง€๋ณ„ ๋ถ„๋ฆฌ ๋ฐ event ์ „๋‹ฌ๋ฐฉ์‹ ๊ฐœ์„ 

* feat: axios ์„ธํŒ… ๋ฐ ๊ณตํ†ต ๋””๋ ‰ํ† ๋ฆฌ ์„ธํŒ…

- service/request
- service/state
- service/hooks
- API.ts

* feat: ๋ฉ”์ธํŽ˜์ด์ง€, ์ฐฝ์ž‘์ž ๋ฆฌ์ŠคํŠธ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ

* test: ์ฐฝ์ž‘์ž ๋ฆฌ์ŠคํŠธ๋ฅผ ์กฐํšŒํ•œ๋‹ค.

* feat: ์ฃผ์†Œ๋ช… ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๊ตฌํ˜„

* refactor: ์ฃผ์†Œ ์ž…๋ ฅ ์„œ๋น„์Šค๋กœ์ง ์ปค์Šคํ…€ํ›…์œผ๋กœ ๋ถ„๋ฆฌ

* feat: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋ฐฉ์‹, ์ž…๋ ฅ ๋ฐฉ์ง€ ๊ธฐ๋Šฅ ์ œ๊ฑฐ

* feat: axios ์„ธํŒ… ๋ฐ ๊ณตํ†ต ๋””๋ ‰ํ† ๋ฆฌ ์„ธํŒ…

- service/request
- service/state
- service/hooks
- API.ts

* refactor: ์นด์นด์˜ค, ๋„ค์ด๋ฒ„, ๊ตฌ๊ธ€ ๋ฒ„ํŠผ ๋ชจ๋“ˆํ™”

* refactor: OAuth ์ธ์ฆํŽ˜์ด์ง€๋กœ routeํ•˜๋Š” ํ•จ์ˆ˜ ๊ฐœ์„ 

* feat: ์‚ฌ์šฉ์ž๋Š” ๋กœ๊ทธ์ธ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค.

* feat: ๋กœ๊ณ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ํ™ˆํ™”๋ฉด์œผ๋กœ ์ด๋™ํ•œ๋‹ค

* refactor: newUser ์ „์—ญ ์ •๋ณด ๊ตฌํ˜„ ๋ฐ ์—ญํ•  ๋ถ„๋ฆฌ

* feat: ๋ฉ”๋‰ด์ฐฝ์„ ์—ด๊ณ  ๋‹ซ์„ ์ˆ˜ ์žˆ๋‹ค

* feat: NavBar Menu ๋ผ์šฐํŒ… ๋ฐ ๋กœ๊ทธ์ธ / ๋กœ๊ทธ์•„์›ƒ ๋™์ž‘

* feat: ๋„๋„ค์ด์…˜ URL ๋ชจ๋ฐ”์ผ ๊ณต์œ ํ•˜๊ธฐ

* feat: ๋„๋„ค์ด์…˜ URL ๋ชจ๋ฐ”์ผ ๊ณต์œ ํ•˜๊ธฐ

* fix: null-possible ์ฝ”๋“œ์— ํƒ€์ž…๊ฐ€๋“œ ๋กœ์ง ์ถ”๊ฐ€

* refact: ์ฃผ์†Œ๋ช… db ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋กœ์ง ๋ถ„๋ฆฌ

* feat: web share API ์—†๋Š” ๊ฒฝ์šฐ clipboard์— ๋ณต์‚ฌ

* feat: ๋‹‰๋„ค์ž„ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๊ตฌํ˜„

* fix: axios interceptor response ๊ทธ๋Œ€๋กœ ๋ฐ˜ํ™˜

* feat: ๋‹‰๋„ค์ž„ DB ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ํ…œํ”Œ๋ฆฟ ๊ตฌํ˜„

* feat: ์‚ฌ์šฉ์ž๊ฐ€ ๊ธฐ์กด์— ์œ ํšจํ•œ ํ† ํฐ์„ ๊ฐ–๊ณ  ์žˆ์„ ๋•Œ ๋กœ๊ทธ์ธ์ด ์œ ์ง€๋œ๋‹ค.

* feat: ์‚ฌ์šฉ์ž๊ฐ€ ๋กœ๊ทธ์ธ ์œ ์ง€ ๊ธฐํ•œ์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋‹ค.

* refactor: useTerms ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ ๋ฐ ์ƒ์ˆ˜๋ช… ๋ณ€๊ฒฝ

* refactor: ๋‹‰๋„ค์ž„, ์ฃผ์†Œ ๊ธธ์ด ์ƒ์ˆ˜ํ™”

* feat: ํšŒ์›๊ฐ€์ž… ์™„๋ฃŒํŽ˜์ด์ง€ ๊ตฌํ˜„

* feat: ํšŒ์›๊ฐ€์ž… api ์—ฐ๋™

* feat: ๋กœ๊ทธ์ธํ•œ ์œ ์ €์˜ ์ด ํ›„์›๊ธˆ์•ก์„ ๋‚˜ํƒ€๋‚ธ๋‹ค.

* refactor: ์ƒ์ˆ˜ ๋Œ€๋ฌธ์žํ™” ๋ฐ ์ผ๋ถ€ ๋ฆฌํŒฉํ† ๋ง

* refactor: ์ƒ์ˆ˜ ๋Œ€๋ฌธ์ž, selector suffix ๋ณ€๊ฒฝ, ์ผ๋ถ€ ๋ฆฌํŒฉํ† ๋ง

* fix: ํ๋ฆ„ ๊ฒฝ๋กœ ๋ผ์šฐํ„ฐ ์ˆ˜์ •

* test: ์ฐฝ์ž‘์ž์˜ ์ด ํ›„์› ๊ธˆ์•ก์„ ๋‚˜ํƒ€๋‚ธ๋‹ค

* test: ํšŒ์›๊ฐ€์ž… ์ฃผ์†Œ ์ž…๋ ฅ, ๋‹‰๋„ค์ž„ ์ž…๋ ฅ ํŽ˜์ด์ง€ ํ…Œ์ŠคํŠธ ๊ตฌํ˜„

* feat: ์ฐฝ์ž‘์ž  ํ”„๋กœํ•„ ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: ์ฐฝ์ž‘์ž ๋žœ๋”ฉํŽ˜์ด์ง€ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ ๊ธฐ๋Šฅ ๊ตฌํ˜„

* feat: ์ฐฝ์ž‘์ž ๊ณต๊ฐœํ›„์› ๋ชฉ๋ก ๋ถˆ๋Ÿฌ์˜ค๊ธฐ ๊ธฐ๋Šฅ ๊ตฌํ˜„

* feat: ๋”๋ณด๊ธฐ ๋ฒ„ํŠผ ์กฐ๊ฑด๋ถ€ ๋ Œ๋”๋ง ๋ฐ import ์ˆœ์„œ, ํŒŒ์ผ๋ช… ๋ฆฌํŒฉํ† ๋ง

* feat: admin ์—ฌ๋ถ€์— ๋”ฐ๋ฅธ ํ›„์›๋ชฉ๋ก ์กฐ๊ฑด๋ถ€ ๋ Œ๋”๋ง ๊ตฌํ˜„ ๋ฐ ์ผ๋ถ€ ๋ฆฌํŒฉํ† ๋ง

* chore: webpack nested ๊ฒฝ๋กœ ์ ‘๊ทผ์‹œ ์ ‘๊ทผ ๋ถˆ๊ฐ€ ์—๋Ÿฌ ํ•ด๊ฒฐ

* feat: ๋”๋ณด๊ธฐ page state์™€ ํŽ˜์ด์ง€ ๋ผ์šฐํŒ… ๊ตฌํ˜„

* fix: API axios ๊ธฐ๋ณธ ์„ค์ • ์ฆ๋ฐœ ํ•ด๊ฒฐ

* feat: ํ›„์› ๋‚ ์งœ ์ •๋ณด ํ‘œ๊ธฐ ์ถ”๊ฐ€

* fix: ์ฐฝ์ž‘์ž ๋ฆฌ์ŠคํŠธ ๋ถˆ๋Ÿฌ์˜ค๋Š” path ์ˆ˜์ •

* feat: ํ›„์›์ž๋Š” ์ฐฝ์ž‘์ž์—๊ฒŒ ํ›„์›ํ•  ์ˆ˜ ์žˆ๋‹ค

* feat: ์‚ฌ์šฉ์ž๋Š” ํ›„์› ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๋‹ค

* refactor: currentPage๋กœ ๋ณ€์ˆ˜๋ช… ๊ฐ„๋žตํ™”

* refactor: ์ƒ์ˆ˜ํ™”

* fix: ์ฐฝ์ž‘์ž๋ฆฌ์ŠคํŠธ ํ”„๋กœํ•„์‚ฌ์ง„ ๋””ํดํŠธ ์ด๋ฏธ์ง€๋กœ ๋Œ€์ฒด

* fix: ์ฐฝ์ž‘์ž ๋ฆฌ์ŠคํŠธ ๋””ํดํŠธ ์ด๋ฏธ์ง€ ์„ค์ •

* oauth redirect_uri ์„ค์ •

* refactor: ํ”ผ๋“œ๋ฐฑ ์ ์šฉ ๋ฐ useEffect ์ œ๊ฑฐ

* fix: donationList ์กฐ๊ฑด๋ถ€ ๊ฐ’ ํ• ๋‹น ์˜ค๋ฅ˜ ์ˆ˜์ •

* fix: ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ ์ •๋ ฌ ์žฌ์กฐ์ •

* feat: ์ฐฝ์ž‘์ž ๋žœ๋”ฉํŽ˜์ด์ง€์—์„œ ํ›„์›ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋‹ค

* feat: ์ฐฝ์ž‘์ž ํŽ˜์ด์ง€๋กœ ์ด๋™์‹œ ์ƒˆ์ฐฝ ์ƒ์„ฑ ํ›„ ๊ธฐ์กด ํŒ์—…์ฐฝ์€ close

* fix: ๋กœ๊ทธ์ธํŽ˜์ด์ง€ ์—๋Ÿฌ ํŠน์ •์ง“์ง€ ๋ชปํ•˜๋Š” ์ด์Šˆ

* refactor: ๊ตฌ์กฐ ๊ฐœ์„ 

* feat: oauth, ํšŒ์›๊ฐ€์ž… api ์—ฐ๋™

* feat: ํ›„์› ๋ชฉ๋ก ์—†์„๋•Œ ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„

* feat: accessToken์„ ์ด์šฉํ•œ ์ฐฝ์ž‘์ž ํŽ˜์ด์ง€ ์กฐ๊ฑด๋ถ€ ๋ Œ๋”๋ง ๊ตฌํ˜„

* chore: netlify ์„ค์ • ํŒŒ์ผ ์œ„์น˜ ๊ฐœ์„ 

* fix: ํ›„์› ๊ธˆ์•ก ์ž…๋ ฅ ์ •์ƒํ™”

์ธํ’‹์„ ๋นˆ์นธ์œผ๋กœ ๋งŒ๋“ค๊ณ  ๊ธˆ์•ก์ถ”๊ฐ€ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ๊ธˆ์•ก์ด ์ถ”๊ฐ€๋˜์ง€ ์•Š๋Š” ํ˜„์ƒ

* fix: aceessToken ์ฝ์–ด์˜ค๊ธฐ ๋ฌธ์ œ ํ•ด๊ฒฐ

* feat: accessToken ์ด์šฉํ•œ ์ฐฝ์ž‘์ž ๋ณธ์ธ ํ™•์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„

* refactor: console.log ์ œ๊ฑฐ

This reverts commit 4be79fe.

* refactor: ๋”๋ณด๊ธฐ ๋ฒ„ํŠผ ์กฐ๊ฑด๋ถ€ ๋ Œ๋”๋ง ์กฐ๊ฑด ๋ณ€์ˆ˜ํ™”

* fix: console.log ์ œ๊ฑฐ

* fix: ํ›„์› ์„ฑ๊ณต ํŽ˜์ด์ง€ ์ƒˆ๋กœ๊ณ ์นจ์‹œ ์ฐฝ๋‹ซํž˜

* fix: ํšŒ์›๊ฐ€์ž… ํ›„ ์ž๋™์œผ๋กœ ๋กœ๊ทธ์ธ๋˜์ง€ ์•Š๋Š” ํ˜„์ƒ

* fix: ํ›„์› ๊ด€๋ จ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ์ˆ˜์ •

* fix: ๋กœ๊ณ  ์Šคํฌ๋กค ์ ์šฉ

* style: ํ›„์› ํ”Œ๋กœ์šฐ ํŽ˜์ด์ง€ ํ•œ ํŽ˜์ด์ง€ ์•ˆ์— ๋ชจ๋“  ์ปจํ…์ธ  ๋‹ค ๋ณด์ด๊ฒŒ ์Šคํƒ€์ผ ์กฐ์ •

* fix: ํ†ต๊ณ„ ํŽ˜์ด์ง€๊ฐ€ ๋…ธ์ถœ๋˜์ง€ ์•Š๋Š” ํ˜„์ƒ

* fix: ๋กœ๊ทธ์•„์›ƒ์‹œ ์Šคํ† ๋ฆฌ์ง€ ๊ฐ’ ์ œ๊ฑฐ

* feat: ํšŒ์›๊ฐ€์ž… ์ •๋ณด ์—†์œผ๋ฉด home์œผ๋กœ ์ด๋™ ๊ตฌํ˜„

* feat: privateRouting ๊ตฌํ˜„ ๋ฐ ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž… ํ”Œ๋กœ์šฐ, ํ›„์›ํ†ต๊ณ„ ํŽ˜์ด์ง€์— ์ ์šฉ

* refactor: ํšŒ์›๊ฐ€์ž… ์„ฑ๊ณต ์œ ๋ฌด์— ๋”ฐ๋ฅธ ๋ผ์šฐํŒ… ์ปค์Šคํ…€ ํ›…์œผ๋กœ ์ด๋™

* fix: ํšŒ์›๊ฐ€์ž… ์„ฑ๊ณต ํŽ˜์ด์ง€ ์กฐ๊ฑด๋ถ€๋ Œ๋”๋ง ํ•ด๊ฒฐ ๋ฐ console.log ์ œ๊ฑฐ

* fix: ํ›„์›๋ฉ”์„ธ์ง€ ๋”๋ณด๊ธฐ์‹œ ์Šคํฌ๋กค์ด ์œ„๋กœ์˜ฌ๋ผ๊ฐ€๋Š”ํ˜„์ƒ

* chore: webpack production, development config ๊ตฌํ˜„

* feat: favicon ์ถ”๊ฐ€

* fix: favicon ๊ฒฝ๋กœ ๋ฌธ์ œ ์ˆ˜์ •

* fix: webpack production mode netlify refresh ์˜ค๋ฅ˜ ๊ฐœ์„ 

* chore: favicon ์„ธํŒ…

* feat: ๋ฉ”๋‰ด ์Šคํƒ€์ผ ์กฐ์ •

* fix: ์ฐฝ์ž‘์ž ๋žœ๋”ฉํŽ˜์ด์ง€๋กœ ์ด๋™์‹œ ๋กœ๊ทธ์ธํ™”๋ฉด์œผ๋กœ ๋ฆฌ๋‹ค์ด๋ ‰์…˜๋˜๋Š” ํ˜„์ƒ

- ์„œ์ŠคํŽœ์Šค๋ฐ”์šด๋”๋ฆฌ๋ฅผ ๊ฐ™์ด ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ฒŒํ•จ

* refactor: logo.png svg๋กœ ๋ณ€๊ฒฝ

* feat: ๋ฉ”๋‰ด ์Šคํƒ€์ผ ์กฐ์ •

* fix: ๋กœ๊ทธ์ธ๋ฒ„ํŠผ ํด๋ฆญ์‹œ ์ƒˆ์ฐฝ์ด ๋œจ๋Š” ํ˜„์ƒ

* feat: ํ›„์›๋ฉ”์‹œ์ง€ ๋ณธ๋ฌธ ์Šคํƒ€์ผ ์กฐ์ •

Co-authored-by: Chayan <hchayan196@gmail.com>
Co-authored-by: Chayan <chayans999@gmail.com>

Co-authored-by: dwl5 <ssop6403@gmail.com>
Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>
Co-authored-by: ๊น€์ฃผ์› <kjw11077@naver.com>
Co-authored-by: rok93 <goodboy302@naver.com>
Co-authored-by: Chayan <hchayan196@gmail.com>
Co-authored-by: Chayan <chayans999@gmail.com>

* fix: ํ›„์›๋ฉ”์„ธ์ง€๊ฐ€ 5๊ฐœ์ผ ๋•Œ ๋”๋ณด๊ธฐ๊ฐ€ ์‚ฌ๋ผ์ง€์ง€ ์•Š๋Š” ํ˜„์ƒ (#149)

Co-authored-by: jho2301 <jho2301@gmail.com>

* feat: submodule added (#152)

* Delete application-oauth2-dev.yml

* feat: yamlController (#153)

* [#151] GitSubmodule ๋„์ž… (#154)

* refactor: jasypt ๊ด€๋ จ ์‚ญ์ œ

* refactor: ์•”ํ˜ธํ™”๋œ ymlํ•„๋“œ ์‚ญ์ œ

* Update securityKey

* refactor: gradle copySecret task ๋ณ€๊ฒฝ

* feat: S3 ์—ฐ๊ฒฐ

* ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ ๋“ฑ๋ก, ์ˆ˜์ •, ์‚ญ์ œ api ๊ตฌํ˜„ (#157)

* refactor: S3 ๊ด€๋ จ ํด๋ž˜์Šค ํŒจํ‚ค์ง€ ๊ตฌ์กฐ ๋ณ€๊ฒฝ

* feat: profile ๊ด€๋ จ Controller ๋ฉ”์„œ๋“œ ๋ฐ Service ๋ฉ”์„œ๋“œ ์ž‘์„ฑ

* feat: CloudFronUrlGenerator ๊ตฌํ˜„

* feat: S3 upload ์ฝ”๋“œ ๊ตฌํ˜„

* feat: profile image ์‚ญ์ œ ๊ธฐ๋Šฅ ๊ตฌํ˜„

* test: CloudFrontUrlGenerator ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* test: Upload ProfileImage Repository test ์ถ”๊ฐ€

* test: Upload ProfileImage Service test ์ถ”๊ฐ€

* feat: s3 ์Šคํ† ๋ฆฌ์ง€์—์„œ ํŒŒ์ผ์„ ์ฐพ์„ ์ˆ˜ ์—†๋Š” ์˜ˆ์™ธ ์ถ”๊ฐ€

* test: Upload ProfileImage Controller test ์ถ”๊ฐ€

Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* feat: image profile upload/delete ๊ธฐ๋Šฅ ๊ตฌํ˜„ (#158)

* feat: s3 ํŒŒ์ผ ํ™•์žฅ์ž ์ถ”๊ฐ€

* feat: S3 file not found exception ๋ฉ”์‹œ์ง€ ์ถ”๊ฐ€

* fix: db์— profile filename ๋งŒ ์ €์žฅํ•˜๋„๋ก ์ˆ˜์ •

* test: upload profile ํ…Œ์ŠคํŠธ ์ œ๊ฑฐ

* fix: if๋ฌธ return ๋ฐ˜์˜

* refactor: h2 console on

* refactor: web-allow-others ์†์„ฑ ๋ณ€๊ฒฝ

* refactor: ๋ฉ”์„ธ์ง€ ๋น„๊ณต๊ฐœ ํ”„๋กœ์„ธ์Šค ๋ณ€๊ฒฝ (#161)

* feat: s3 not found ์ผ€์ด์Šค ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€ (#163)

* [#162]ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ Api RestDocs ๋ฐ˜์˜ (#167)

* feat: restdocs index.html config ์ถ”๊ฐ€

* feat: profile api restdocs ๋ฐ˜์˜

* test: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ •๋ฆฌ

* refactor: s3 ํŒŒ์ผ ์ €์žฅ ๊ฒฝ๋กœ ๋ณ€๊ฒฝ (#169)

* refactor: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋ณ€๊ฒฝ (#184)

* refactor: test fixed

* [#164]์•„์ž„ํฌํŠธ ๊ฒฐ์ œ ๋„๋ฉ”์ธ, API ์ž‘์„ฑ (#188)

* feat: ์•„์ž„ํฌํŠธ API ์ž‘์„ฑ ์ค‘๊ฐ„์ปค๋ฐ‹

* feat: ์ฃผ๋ฌธ๋ฒˆํ˜ธ ์ƒ์„ฑํ•˜๊ธฐ ๊ธฐ๋Šฅ, ์•„์— ํฌํŠธ ์„œ๋ฒ„ ์•ก์„ธ์Šค ํ† ํฐ ๋ฐœ๊ธ‰ ๊ธฐ๋Šฅ ๋ฐ ๊ฒฐ์ œ์ •๋ณด ์กฐํšŒ ๊ธฐ๋Šฅ

* refactor: Donation request ํ•„๋“œ ๋ณ€๊ฒฝ

creator์˜ ์‹๋ณ„์ž ๋ณ€๊ฒฝ (nickName -> pageName)

* feat: ๊ฒฐ์ œ ํ”Œ๋กœ์šฐ ๊ตฌํ˜„

* test: ๊ฒฐ์ œ ํ”Œ๋กœ์šฐ ๊ตฌํ˜„์— ๋”ฐ๋ฅธ ํ…Œ์ŠคํŠธ ๋ณ€๊ฒฝ

* refactor: dataloader payment ์—๋Ÿฌ ์ˆ˜์ •

* test: DonationRepositoryTest ๊นจ์ง ์ˆ˜์ •

* feat: PaymentRequest ์œ ํšจ์„ฑ ์ถ”๊ฐ€

* refactor: ๊ฒฐ์ œ ๋กœ์ง ๋ฆฌํŒฉํ† ๋ง (iamport ๊ฒฐ์ œ๋กœ์ง ๋ถ„๋ฆฌ)

* test: payment ๋„๋ฉ”์ธ ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* refactor: IamPortPaymentServiceConnector @component์ถ”๊ฐ€

* refactor: donation service, acceptance ํ…Œ์ŠคํŠธ ์ˆ˜์ •

* refactor: jwtTokenProviderTest ActiveProfile ์„ค์ • ์ถ”๊ฐ€

* refactor: DataLoader dev๋งŒ ์ ์šฉ๋˜๋„๋ก ์ˆ˜์ •

* refactor: ํ›„์›๊ธˆ์•ก ์ด ํ•ฉ payment์˜ ๊ฐ’์œผ๋กœ ๋” ํ•ด์ฃผ๋„๋ก ์ˆ˜์ •

* refactor: CloudFrontUrlGenerator ActiveProfile์ถ”๊ฐ€

* refactor: DonationService Payment Mock ์ถ”๊ฐ€

* refactor: ๋ถˆํ•„์š”ํ•œ import ์‚ญ์ œ

* refactor: request url changed

* refactor: yml ํŒŒ์ผ iamport ์„ค์ • ์ถ”๊ฐ€ ๋ฐ DonationService ์ด์ „์œผ๋กœ ๋ณ€๊ฒฝ

* test: donation ์ธ์ˆ˜ํ…Œ์ŠคํŠธ disable ์ฒ˜๋ฆฌ

* refactor: ๊ฐ„๋‹จํ•œ ๋ฆฌํŒฉํ„ฐ๋ง

* test: DonationControllerTest ํ…Œ์ŠคํŠธ์ผ€์ด์Šค ์ˆ˜์ •

* refactor: ๋„๋„ค์ด์…˜ entity save๋กœ ๋ฆฌํ„ด๋œ ๊ฐ’ ์‚ฌ์šฉ

* feat: Payment ์˜ˆ์™ธ ์ฒ˜๋ฆฌ ์ถ”๊ฐ€

* refactor: PaymentInfo ๋ณ€์ˆ˜ ๋ช… ์ˆ˜์ •

* refactor: payment ์ •๋ณด ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋ฉ”์†Œ๋“œ ๋ถ„๋ฆฌ

* refactor: paymentComplete ๋ฉ”์†Œ๋“œ ์ œ๊ฑฐ

* refactor: iamport DTO tostring ์ œ๊ฑฐ

* refactor: index.html ๋ณ€๊ฒฝ ์‚ฌํ•ญ ๋ฐ˜์˜

Co-authored-by: ๊น€์ฃผ์› <kjw11077@naver.com>
Co-authored-by: rok93 <goodboy302@naver.com>
Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* refactor: test

* Update TyfServerApplication.java

* fix: ์  ํ‚จ์Šค ํ…Œ์ŠคํŠธ

* Update TyfServerApplication.java

* Update TyfServerApplication.java

* Update TyfServerApplication.java (#192)

* Update TyfServerApplication.java (#194)

* Update TyfServerApplication.java

* Update TyfServerApplication.java (#195)

* [#191] ์ž๊ธฐ์†Œ๊ฐœ, ๋‹‰๋„ค์ž„ ๋ณ€๊ฒฝ API ์ž‘์„ฑ  (#197)

* feat: ์ž๊ธฐ์†Œ๊ฐœ(BIO) update API

* style: ๋ถˆํ•„์š”ํ•œ todo ์ฃผ์„ ์ œ๊ฑฐ

* feat: ๋‹‰๋„ค์ž„(NickName) update API

* refactor: ๊ฐœํ–‰ ํ˜•์‹ ํ†ต์ผ๋˜๋„๋ก ๋ณ€๊ฒฝ

* refactor: Nickname ๋ณ€๊ฒฝ ์š”์ฒญ DTO ์ˆ˜์ •

* refactor: ์˜ˆ์™ธ error message ์ˆ˜์ •

* refactor: NickName์ด๋ผ๊ณ  ํ‘œ๊ธฐ๋ฒ•์ด ์ž˜๋ชป๋œ ํ‘œ๊ธฐ Nickname์œผ๋กœ ๋ณ€๊ฒฝ

* test: ์˜ˆ์™ธ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค ์ถ”๊ฐ€

* test: ์˜ˆ์™ธ ํ…Œ์ŠคํŠธ์— ๋Œ€ํ•œ errorCode ๊ฒ€์ฆ ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* refactor: @nullsource, @EmptySource ๋”ฐ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์• ๋„ˆํ…Œ์ด์…˜ @NullAndEmptySource๋กœ ๋ณ€๊ฒฝ

* [#189]Payment ์„œ๋น„์Šค, ์ปจํŠธ๋กค๋Ÿฌ ์Šฌ๋ผ์ด์‹ฑ ํ…Œ์ŠคํŠธ (#196)

* test: PaymentServiceTest ์ถ”๊ฐ€

* feat: ๊ฒฐ์ œ ์ •๋ณด ์ƒ์„ฑ ์š”์ฒญ ์œ ํšจ์„ฑ ๊ฒ€์ฆ

* test: PaymentController ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* docs: payment api rest docs ์ถ”๊ฐ€

* test: ๋ณ€๊ฒฝ๋œ ๋„๋„ค์ด์…˜ ๋กœ์ง ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* docs: ๋ณ€๊ฒฝ๋œ ๋„๋„ค์ด์…˜ ์˜ˆ์™ธ์‚ฌํ•ญ ์ถ”๊ฐ€

* refactor: ํ”„๋กœํ•„ ์—…๋กœ๋“œ method put์œผ๋กœ ๋ณ€๊ฒฝ

* test: multipart ํ…Œ์ŠคํŠธ ์š”์ฒญ ๋ฉ”์†Œ๋“œ put์œผ๋กœ ๋ณ€๊ฒฝ

* refactor: paymentException ์˜ˆ์™ธ ๊ฒฐ์ œ ๋ชจ๋“ˆ ๋ช…์‹œ

* refactor: test code private ๋น ์ง„ ๋ถ€๋ถ„ ์ถ”๊ฐ€

* refactor: ์ƒ์ˆ˜ ๋ณ€์ˆ˜๋ช… ๋Œ€๋ฌธ์ž๋กœ ๋ณ€๊ฒฝ

* refactor: savedPayment ์ง€์—ญ๋ณ€์ˆ˜ ์ œ๊ฑฐ

* refactor: thenReturn ๊ฐœํ–‰

* fix: profile CORS ์—๋Ÿฌ multipart resolver ์ถ”๊ฐ€

* fix: profile CORS ์—๋Ÿฌ ์˜์กด์„ฑ ์ถ”๊ฐ€

* refactor: getCurationsMember 5 To 10 (#202)

* [#203]๋ฉค๋ฒ„ API ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ (#204)

* feat: MemberResponse ๋ฐ CurationResponse profileImage ์ถ”๊ฐ€

* refactor: MemberDetailResponse ์ œ๊ฑฐ

* refactor: CloudFrontUrlGenerator ์ œ๊ฑฐ

* refactor: user profile s3 ์ €์žฅ๊ฒฝ๋กœ ๋ณ€๊ฒฝ

* fix: S3Connector ์ด์Šˆ ์ˆ˜์ •

* refactor: include aws profile

* fix: s3 ๊ฒฝ๋กœ ์ด์Šˆ ์ˆ˜์ •

* [#199, #198] ํ™˜๋ถˆ API ์ž‘์„ฑ, Payment์˜ Id ํƒ€์ž…์„ UUID๋กœ ๋ณ€๊ฒฝ (#200)

* refactor: PaymentSaveResponse -> PaymentPendingResponse ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ, PaymentPendingRequest dto ์ƒ์„ฑ

* feat: Payment ํ™˜๋ถˆ ๋„๋ฉ”์ธ ๋กœ์ง ์ž‘์„ฑ

* feat: Payment ํ™˜๋ถˆ ์ปจํŠธ๋กค๋Ÿฌ,์„œ๋น„์Šค ๋กœ์ง ์ž‘์„ฑ

* feat: ํ™˜๋ถˆAPI js์ฝ”๋“œ์˜ˆ์‹œ ์ž‘์„ฑ

* refactor: PaymentService#cancelPayment์˜ ๋ถˆํ•„์š”ํ•œ ๋กœ์ง ์ •๋ฆฌ

* refactor: PaymentCancelRequest์˜ ํ™˜๋ถˆ๊ธˆ์•ก ํ•„๋“œ ์ œ๊ฑฐ

* test: Payment ๋„๋ฉ”์ธ ํ…Œ์ŠคํŠธ ์ž‘์„ฑ

* feat: Payment์˜ id ํƒ€์ž…์„ UUID๋กœ ๋ณ€๊ฒฝ

* feat: Payment ๊ด€๋ จ DTO์˜ merchantUid ํƒ€์ž…์„ UUID๋กœ ๋ณ€๊ฒฝ, ๋”์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” DonationRequest ์‚ญ์ œ

* fix: request dto์—์„œ UUID๋ฅผ ๋ฐ›์ง€ ๋ชปํ•˜๋Š” ์ด์Šˆ ํ•ด๊ฒฐ

* fix: PaymentNotFoundException ๋ฉ”์‹œ์ง€/์—๋Ÿฌ์ฝ”๋“œ ์ˆ˜์ •, ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” PaymentRequestException,  PaymentCancelException ์‚ญ์ œ

* refactor: IllegalPaymentInfoException ์˜ˆ์™ธ๋ฉ”์‹œ์ง€ ์ˆ˜์ •

* fix: ํ™˜๋ถˆ์š”์ฒญdto ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์‹คํŒจ์‹œ PaymentCancelRequestException ๋ฐœ์ƒํ•˜๋„๋ก ๋ณ€๊ฒฝ

* test: Payment ์ปจํŠธ๋กค๋Ÿฌ ํ…Œ์ŠคํŠธ์ผ€์ด์Šค ์ถ”๊ฐ€

* refactor: convertToPaymentInfo ์ˆ˜์ •

* feat: Payment idํƒ€์ž… Long์œผ๋กœ ๋ณ€๊ฒฝ, merchantUid UUIDํƒ€์ž… ์ปฌ๋Ÿผ ์ถ”๊ฐ€

* style: ๋ฆฌํฌ๋งคํŒ…

* refactor: PaymentRequest -> PaymentCompleteRequest ๋ฆฌ๋„ค์ž„

* refactor: ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ํด๋ž˜์Šค ์ œ๊ฑฐ

* refactor: ํ™˜๋ถˆ์š”์ฒญ dto์˜ merchantUid ํƒ€์ž… UUID๋กœ ๋ณ€๊ฒฝ

* feat: Payment์˜ merchantUid ์ปฌ๋Ÿผ nullable=false ์ถ”๊ฐ€

* feat: UUID ์ปค์Šคํ…€ Validator ์ƒ์„ฑ, DTO์˜ merchantUid๋ฅผ Stringํƒ€์ž…์œผ๋กœ ๋ณ€๊ฒฝ

* refactor: ์Šค๋„ค์ดํฌ์ผ€์ด์Šค -> ์นด๋ฉœ์ผ€์ด์Šค๋กœ ๋ณ€๊ฒฝ

* feat: UUIDValidator null ๊ฒ€์ฆ ์ถ”๊ฐ€, ํ…Œ์ŠคํŠธ์ž‘์„ฑ

Co-authored-by: dwl5 <ssop6403@gmail.com>

* feat: member response์— bio ์ถ”๊ฐ€ (#208)

* fix: merchantId๋ฅผ return ํ•˜๊ฒŒ๋”, ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ blank ์ฒดํฌํ•˜๊ฒŒ๋”

* refactor: UUID ์ƒ์„ฑ ์ž‘์—…์„ ์ƒ์„ฑ์ž๋กœ ๋„ฃ์Œ

* refactor: return ์ฝ”๋“œ ๋ณ€๊ฒฝ

* refactor: cloudFront fileName splited

* refactor: cloudfront url ํŒŒ์‹ฑ

* refactor: cloud front url detached ๋ฉ”์„œ๋“œ ๋ถ„๋ฆฌ

* feat: ์šด์˜์—์„œ update ์•ˆ๋˜๋Š” ์ด์Šˆ๋กœ ์ธํ•ด application-dev.yml ์ˆ˜์ •

* refactor: ddl-auto create mode

* refactor: ํ•„๋“œ๊ฐ’ response์— ๋งž๊ฒŒ๋” ๋ณ€๊ฒฝ

* refactor: ddl-auto ์†์„ฑ ๋ณ€๊ฒฝ

* feat: ํ›„์› ๊ธˆ์•ก validation ์ถ”๊ฐ€

* Release tyf server v1.1.0 (#209)

* server initial commit

* Delete server.md

* feat: ๊ธฐ๋ณธ ๋„๋ฉ”์ธ ๊ตฌํ˜„ Member, Donation, Banner (#6)

* feat: ์—๋Ÿฌ ์‘๋‹ต DTO ์ƒ์„ฑ

* [#7] ํ›„์› ์š”์ฒญ ๋ฐ ๋ฉ”์‹œ์ง€ ์ „์†ก API ๊ตฌํ˜„ (#9)

* feat: ํ›„์› ์š”์ฒญ API ๊ตฌํ˜„

* feat: ํ›„์› ์š”์ฒญ API ๊ตฌํ˜„

* feat: ํ›„์› ๋ฉ”์‹œ์ง€ ์ „์†ก API ๊ตฌํ˜„

* refactor: ๋ถˆํ•„์š”ํ•œ ์ฝ”๋“œ ์‚ญ์ œ

* refactor: ๋ถˆํ•„์š”ํ•œ ์ž„ํฌํŠธ ์ œ๊ฑฐ

* fix: ๋งคํ•‘ url messages ์˜คํƒ€ ์ˆ˜์ •

* refactor: ํ…Œ์ŠคํŠธ ์ ‘๊ทผ ์ œํ•œ์ž private ์ ์šฉ

* fix : donations RequestMapping ์ˆ˜์ •

* refactor: @getter ์ถ”๊ฐ€ ๋ฐ ํ…Œ์ŠคํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ AssertJ๋กœ ๋ณ€๊ฒฝ

* [#12] ๋ฐฐ๋„ˆ ์ƒ์„ฑ ๋ฐ ๋ชฉ๋ก ์กฐํšŒ API ๊ตฌํ˜„ (#12)

* Create README.md

* docs: README.md ๊ฐœ๋ฐœ ์ปจ๋ฒค์…˜ ์ถ”๊ฐ€

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* feat: ๋ฐฐ๋„ˆ ์ƒ์„ฑ, ๋ฉค๋ฒ„์˜ ๋ฐฐ๋„ˆ ๋ชฉ๋ก ์กฐํšŒ ๊ธฐ๋Šฅ ๊ตฌํ˜„

* [#8] ๋ฐฐ๋„ˆ ์ƒ์„ฑ ๋ฐ ๋ชฉ๋ก ์กฐํšŒ API ๊ตฌํ˜„ (#10)

* server initial commit

* Delete server.md

* feat: ๊ธฐ๋ณธ ๋„๋ฉ”์ธ ๊ตฌํ˜„ Member, Donation, Banner (#6)

* feat: ์—๋Ÿฌ ์‘๋‹ต DTO ์ƒ์„ฑ

* feat: ๋ฐฐ๋„ˆ ์ƒ์„ฑ, ๋ฉค๋ฒ„์˜ ๋ฐฐ๋„ˆ ๋ชฉ๋ก ์กฐํšŒ ๊ธฐ๋Šฅ ๊ตฌํ˜„

Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* refactor: ๋ฆฌ๋ทฐ ๋ฐ˜์˜

* Revert "[#8] ๋ฐฐ๋„ˆ ์ƒ์„ฑ ๋ฐ ๋ชฉ๋ก ์กฐํšŒ API ๊ตฌํ˜„ (#10)"

This reverts commit d31ffda.

Co-authored-by: hwano <jho2301@gmail.com>
Co-authored-by: dwl5 <ssop6403@gmail.com>
Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* [#11] ๋„๋ฉ”์ธ createdDate ์ถ”๊ฐ€ (#13)

* feat: BaseTimeEntity ์ถ”๊ฐ€

* refactor: delete baseTimeEntityTest

* refactor: member repository ์ค‘๋ณต ์ œ๊ฑฐ

Co-authored-by: dwl5 <ssop6403@gmail.com>

* [#15] JWT ํ† ํฐ ๊ด€๋ฆฌ์™€ ์ธํ„ฐ์…‰ํ„ฐ, ArgumentResolver ๊ตฌํ˜„ (#17)

* feat: jwtTokenProvider ์ƒ์„ฑ

* feat: ArguementsResolver, Interceptor ๊ตฌํ˜„ ๋ฐ Config ์ถ”๊ฐ€

* test: AuthenticationService ํ…Œ์ŠคํŠธ ์ž‘์„ฑ

* refactor: auth ๊ด€๋ จ ํด๋ž˜์Šค ํŒจํ‚ค์ง€ ๋ณ€๊ฒฝ

* refactor: throws exception ๊ตฌ๋ฌธ ์‚ญ์ œ

* refactor: ํ† ํฐ ๋งŒ๋ฃŒ์‹œ๊ฐ„ ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€ ๋ฐ ํŒจํ‚ค์ง€ ๋ณ€๊ฒฝ

* refactor: Authorization header ๋ชป์ฐพ์„ ์‹œ ์˜ˆ์™ธ ๋˜์ง€๊ฒŒ ๋ณ€๊ฒฝ

Co-authored-by: rok93 <goodboy302@naver.com>

* [#16] OAuth2 ๋กœ๊ทธ์ธ ๋ฐ ํšŒ์›๊ฐ€์ž… (#18)

* feat: OAuth2 ์นด์นด์˜ค ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* feat: ๊ตฌ๊ธ€, ์นด์นด์˜ค oauth ์—ฐ๋™

* feat: ๋กœ๊ทธ์ธ ๋ฐ์ดํ„ฐ properties๋กœ ๋ถ„๋ฆฌ

* feat: ํšŒ์›๊ฐ€์ž… ๊ตฌํ˜„

* fix: oauth ๋กœ๊ทธ์ธ ์•ˆ๋˜๋Š” ํ˜„์ƒ ์ˆ˜์ •

* docs: ํ”„๋กœํผํ‹ฐ ํŒŒ์ผ gitignore ์ถ”๊ฐ€

* remove properties

* refactor: ErrorResponse ์ƒ์„ฑ์ž ์ œ๊ฑฐ

* refactor: oauth ๊ธฐ๋Šฅ ์ถ”์ƒํ™”

Co-authored-by: ๊น€์ฃผ์› <kjw11077@naver.com>

* [#34] OAuth2 ๋กœ๊ทธ์ธ,ํšŒ์›๊ฐ€์ž… JWT ์—ฐ๋™ (#36)

* refactor: oauth2 ํŒจํ‚ค์ง€ auth๋กœ ๋ณ‘ํ•ฉ

* docs: oauth2 ํŒŒ์ผ gitignore ์ถ”๊ฐ€

* refactor: OAuth2 ์ถ”์ƒํ™” ๋ฐฉ์‹ ๋ณ€๊ฒฝ

* refactor: Api ํ˜ธ์ถœ ๋กœ์ง ๋ถ„๋ฆฌ

* refactor: ํšŒ์›๊ฐ€์ž… ์ค€๋น„ api ๊ตฌํ˜„

* refactor: readySignUp ๋ฉ”์„œ๋“œ ๋ถ„๋ฆฌ

Co-authored-by: dwl5 <ssop6403@gmail.com>

* [#37] ํšŒ์›๊ฐ€์ž…(๋ฉค๋ฒ„ ์ƒ์„ฑ) API (#39)

* refactor: oauth2 ํŒจํ‚ค์ง€ auth๋กœ ๋ณ‘ํ•ฉ

* docs: oauth2 ํŒŒ์ผ gitignore ์ถ”๊ฐ€

* refactor: OAuth2 ์ถ”์ƒํ™” ๋ฐฉ์‹ ๋ณ€๊ฒฝ

* refactor: Api ํ˜ธ์ถœ ๋กœ์ง ๋ถ„๋ฆฌ

* refactor: ํšŒ์›๊ฐ€์ž… ์ค€๋น„ api ๊ตฌํ˜„

* refactor: readySignUp ๋ฉ”์„œ๋“œ ๋ถ„๋ฆฌ

* feat: ํšŒ์›๊ฐ€์ž… api ๊ตฌํ˜„

Co-authored-by: dwl5 <ssop6403@gmail.com>

* fix: oauth2 jpa ํ…Œ์ด๋ธ” ๋ช… ์ˆ˜์ • (#42)

* [#49] ๋žœ๋”ฉํŽ˜์ด์ง€ ์ฃผ์†Œ, ๋‹‰๋„ค์ž„ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ, ์ฐฝ์ž‘์ž ์ •๋ณด ์š”์ฒญ, ์ฐฝ์ž‘์ž ํฌ์ธํŠธ ์กฐํšŒ API (#53)

* feat: langdingPageUrl ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ api ๊ตฌํ˜„

* feat: nickName ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ api ๊ตฌํ˜„

* refactor: OAuth -> Oauth ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ

* refactor: NickName -> Nickname ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ

* refactor: ํ† ํฐ claim์— id ์ถ”๊ฐ€

* feat: ์ฐฝ์ž‘์ž ์†Œ์œ  ํฌ์ธํŠธ ์กฐํšŒ api ๊ตฌํ˜„

* refactor: Donation ์—”ํ‹ฐํ‹ฐ isPublic ํ•„๋“œ์ถ”๊ฐ€

* feat: Interceptor ํŒจํ„ด ์ง€์ •

Co-authored-by: ๊น€์ฃผ์› <kjw11077@naver.com>

* docs: develop-server backend ํฌ๋ฃจ ์ด๋ฆ„ ์ถ”๊ฐ€ (#60)

* docs: backend ๊ธฐ์ˆ  ์Šคํƒ ์ถ”๊ฐ€

* docs: ๊ธฐ์ˆ  ์Šคํƒ ์ถ”๊ฐ€ (jenkins-test)

* docs: ๊ธฐ์ˆ  ์Šคํƒ ์ถ”๊ฐ€ (jenkins-test)

* docs: ๊ธฐ์ˆ  ์Šคํƒ ์ถ”๊ฐ€ (jenkins-test)

* [#54] ํ˜„์žฌ๊นŒ์ง€ ๊ตฌํ˜„ํ•œ API์˜ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•œ๋‹ค (#61)

* refactor: urlName -> pageName ๋ฆฌ๋„ค์ด๋ฐ

* refactor: Message VO๋กœ ์บก์Šํ™”

* refactor: API /me ๋ถ™์ด๋Š”๊ฑธ๋กœ ๋ณ€๊ฒฝ

* test: Donation ์ธ์ˆ˜ํ…Œ์ŠคํŠธ, isPublic -> secret ๋ฆฌ๋„ค์ž„

* test: Banner ์ธ์ˆ˜ํ…Œ์ŠคํŠธ ์ž‘์„ฑ

* test: Member ์ธ์ˆ˜ํ…Œ์ŠคํŠธ ์ž‘์„ฑ, DonationServiceTest ์˜ค๋ฅ˜์ˆ˜์ •

* test: ์˜ˆ์™ธ ํ…Œ์ŠคํŠธ

* [#58] ํ›„์› ๋ฆฌ์ŠคํŠธ API ์ž‘์„ฑ (#65)

* refactor: ์ˆ˜์ •๋˜์ง€ ์•Š์€ ์ด์ „ ํ•„๋“œ๋ช… ์ˆ˜์ •

* feat: ๊ณต๊ฐœ ํ›„์› ๋ฆฌ์ŠคํŠธ ์กฐํšŒ api ๊ตฌํ˜„ ๋ฐ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ

* feat: donationRepository ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€ ๋ฐ ํ…Œ์ŠคํŠธ

* feat: DonationService ๋ฉ”์„œ๋“œ ๋‚ด๋ถ€๋กœ์ง ๊ตฌํ˜„

* refactor: DonationController ๋‚ด๋ถ€ ์ฑ„์šฐ๊ธฐ

* refactor: ์ˆ˜๋ฆฌ ์ฝ”๋“œ ๋ฆฌ๋ทฐ ํ”ผ๋“œ๋ฐฑ ๋ฐ˜์˜

* feat: ํ›„์› ๋ฆฌ์ŠคํŠธ ์กฐํšŒ ์ธ์ˆ˜ํ…Œ์ŠคํŠธ ์ƒ์„ฑ

* refactor: Secret์—ฌ๋ถ€๊ฐ€ true์ธ ํ›„์›๋งŒ ๊ฐ€๋ฆฌ๊ฒŒ๋” ์ˆ˜์ •

* refactor: service๊ฐ€ ์•„๋‹Œ repository๋ฅผ ์ด์šฉํ•œ ๋ฉค๋ฒ„ ํƒ์ƒ‰

* refactor: DonationMessageRequest toEntity ๋ฉ”์„œ๋“œ ์ƒ์„ฑ

* [#55, #67] ์˜ˆ์™ธ ํ•ธ๋“ค๋ง ๊ตฌํ˜„ ๋ฐ API ๋ฆฌํŒฉํ† ๋ง (#71)

* feat: BaseException ๋ฐ ControllerAdviceHandler ์ถ”๊ฐ€

* feat: /donations api ์˜ˆ์™ธ ๋กœ์ง ์ฒ˜๋ฆฌ

* refactor: /donations request ํ•„๋“œ ๋ณ€๊ฒฝ์— ๋”ฐ๋ฅธ ๋กœ์ง ๋ณ€๊ฒฝ

* feat: /donations/{donationId}/messages api ์˜ˆ์™ธ ๋กœ์ง ์ฒ˜๋ฆฌ

* feat: auth ๊ด€๋ จ ์ต์…‰์…˜ ์ถ”๊ฐ€

* feat: /banners api ์˜ˆ์™ธ ๋กœ์ง ์ฒ˜๋ฆฌ

* feat: /members/validate/pageName api ์—๋Ÿฌ ๋กœ์ง ์ฒ˜๋ฆฌ

* feat: /members/validate/nickname api ์—๋Ÿฌ ๋กœ์ง ์ฒ˜๋ฆฌ

* refactor: @Valid ๋†“์นœ ๋ถ€๋ถ„ ๋‹ฌ์•„์คŒ

* refactor: ์ฝ”๋“œ ์ •๋ฆฌ, ๊ฐ„๋‹จํ•œ ๋ฆฌํŒฉํ„ฐ๋ง

* test: ํ›„์› ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€, ํ…Œ์ŠคํŠธ ๋ฆฌํŒฉํ„ฐ๋ง

* feat: ๋ฉค๋ฒ„,OAuth2 ์˜ˆ์™ธ ์ผ€์ด์Šค ํ•ธ๋“ค๋ง ๊ตฌํ˜„

* refactor: ์˜คํƒ€์ˆ˜์ •,๋ฆฌํฌ๋งทํŒ…

* feat: ์ธ์ฆ ์ธํ„ฐ์…‰ํ„ฐ ์ •์ฑ… ์ถ”๊ฐ€

* refactor: @Valid ๋น ํŠธ๋ฆฐ ๊ณณ ์ถ”๊ฐ€

* refactor: ๊ณต๋ฐฑํ•œ์นธ์ถ”๊ฐ€

* refactor: @ControllerAdvice -> @RestControllerAdvice ๋ณ€๊ฒฝ

* feat: SignUpRequestException ์ถ”๊ฐ€

* docs: TODO ์ถ”๊ฐ€

* refactor: ์ปค์Šคํ…€์˜ˆ์™ธํด๋ž˜์Šค์˜ ERROR_CODE ์ƒ์ˆ˜๋ฅผ public์œผ๋กœ ๋ณ€๊ฒฝ

Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* [#63]Prod-Server์˜ ์„ค์ •ํŒŒ์ผ์„ ์ƒ์„ฑ (#72)

* chore: jasypt ์˜์กด์„ฑ ์ถ”๊ฐ€

* feat: JasyptConfig ์ถ”๊ฐ€

* chore: oauth2 ์„ค์ •ํŒŒ์ผ gitignore์—์„œ ์ œ๊ฑฐ

* feat: jasypt secret ket ์™ธ๋ถ€์—์„œ ๊ฐ€์ ธ์˜ค๋„๋ก ์ˆ˜์ •

* feat: properties ํŒŒ์ผ ๋ถ„๋ฆฌ ๋ฐ ์•”ํ˜ธํ™”

* refactor: ์ฝ”๋“œ์ •๋ฆฌ

* fix: include property ๊ด€๋ จ ์—๋Ÿฌ ์ˆ˜์ •

* chore: mysql ์˜์กด์„ฑ ์ถ”๊ฐ€

* refactor: encrytor config ์ƒ์„ฑ ๋กœ์ง ๋ถ„๋ฆฌ

* refactor: @EnableEncryptableProperties ์–ด๋…ธํ…Œ์ด์…˜ ์ œ๊ฑฐ

* refactor: jashpyStringEncrytor ์ด๋ฆ„ ์ •ํ•ด์ฃผ๋Š” ๋ถ€๋ถ„ ์ œ๊ฑฐ

* feat: application-test ์ถ”๊ฐ€

* refactor: jasypt testํ™˜๊ฒฝ์—์„œ ์‹คํ–‰ํ•˜์ง€ ์•Š๋„๋ก ์ˆ˜์ •

* [#77] ์ฐฝ์ž‘์ž๊ฐ€ ์ž์‹ ์˜ ์ •๋ณด๋ฅผ ์กฐํšŒํ•˜๋Š” API๋ฅผ ์ž‘์„ฑํ•œ๋‹ค. (#78)

* feat: ์ฐฝ์ž‘์ž ์ž์‹ ์˜ ์ •๋ณด ์กฐํšŒ API ์ž‘์„ฑ,ํ…Œ์ŠคํŠธ

* refactor: ์˜คํƒ€์ˆ˜์ •,๊ฐ„๋‹จํ•œ ๋ฆฌํŒฉํ„ฐ๋ง

* refactor: MemberPrivateResponse -> MemberDetailResponse ๋ฆฌ๋„ค์ž„

* feat: cors ์„ค์ • ์ถ”๊ฐ€ (#88)

* [#84] ํ›„์›๊ธˆ ์ˆœ ํ๋ ˆ์ด์…˜ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ณด์—ฌ์ค€๋‹ค. (#85)

* feat: curation list api ๊ตฌํ˜„

* refactor: CurationsResponse ํ•„๋“œ์— pageName ์ถ”๊ฐ€

* [#83]๋กœ๊ทธ์ธ/ํšŒ์› ๊ฐ€์ž… ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ URL์„ ๋ถ„๋ฆฌ (#86)

* feat: Oauth2 login, signup redirect url ๋ถ„๊ธฐ

* feat: oauth2 ์š”์ฒญ ์ •๋ณด๋ฅผ ๋‹ด๋Š” DTO ์ƒ์„ฑ

* feat: Oauth2InfoDto ๋ฐ˜์˜

* refactor: Oauth2Info -> Oauth2Request๋กœ ์ด๋ฆ„ ๋ณ€๊ฒฝ

* fix: kakao test secret id ์ถ”๊ฐ€

* refactor: login, readySignup ๋ผ์ธ ๋ถ„๋ฆฌ

* feat: Dev-Server์˜ mock data ์ถ”๊ฐ€ ๊ธฐ๋Šฅ ๊ตฌํ˜„ (#93)

* refactor: memberRepositoryImplTest fix

* feat: ํ† ํฐ ์œ ํšจ์„ฑ ๊ฒ€์ฆ API ๊ตฌํ˜„,ํ…Œ์ŠคํŠธ (#96)

* [#89]DB ์„œ๋ฒ„ ํ…Œ์ด๋ธ” ์—…๋ฐ์ดํŠธ (#100)

* chore: allowPublicKeyRetrieval ์†์„ฑ ์ถ”๊ฐ€

* chore: application.yml ddl-auto ์†์„ฑ ์ œ๊ฑฐ

* [#107] CORS ์—๋Ÿฌ ์ˆ˜์ • (#108)

* fix: intercepter prefilight ์„ค์ •

* fix: cors addMapping ํŒจํ„ด ์ˆ˜์ •

* fix: oauth2 property type ๋Œ€๋ฌธ์ž๋กœ ์ˆ˜์ • (#110)

* [#92] repository, service, controller ์Šฌ๋ผ์ด์‹ฑ ํ…Œ์ŠคํŠธ ๋ณด๊ฐ• (#101)

* refactor: Member, Point ๋„๋ฉ”์ธ ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* feat: Domain, Message ๋„๋ฉ”์ธ ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* feat: MemberServiceTest ์ž‘์„ฑ

* feat: DonationServiceTest ์ถ”๊ฐ€ ๋ฐ List<Donation> ํ•„๋“œ ์†์„ฑ ๋ณ€๊ฒฝ

* refactor: MemberRepositoryTest ๋ณด์™„

* refactor: DonationRepositoryTest ๋ณ€๊ฒฝ

* refactor: Banner ํŒจํ‚ค์ง• ๋ณ€๊ฒฝ

* feat: BannerServiceTest ์ž‘์„ฑ

* refactor: AuthenticationService ์Šฌ๋ผ์ด์‹ฑ ํ…Œ์ŠคํŠธ๋กœ ๋ณ€๊ฒฝ

* refactor: @EnableJpaAuditing ์„ ์–ธ ์œ„์น˜ ๋ณ€๊ฒฝ

@WebMvcTest ์‹œ์— jpa ์ƒ์„ฑ๊ณผ ๊ด€๋ จ๋œ ๊ธฐ๋Šฅ์ด ๋“ค์–ด์˜ค์ง€ ์•Š๋Š”๋ฐ main ํ•จ์ˆ˜๊ฐ€ ์†ํ•œ ํด๋ž˜์Šค ์œ„์— ์žˆ์œผ๋ฉด ์ด ๋–„๋ฌธ์— ํ…Œ์ŠคํŠธ ์œ„์— ์ถ”๊ฐ€์ ์ธ ์–ด๋…ธํ…Œ์ด์…˜์ด ๊ณ„์†ํ•ด์„œ ๋ถ™๊ฒŒ๋œ๋‹ค. reference: https://1-7171771.tistory.com/136?category=981620

* refactor: cors mapping ์„ ์–ธ ์œ„์น˜ ๋ณ€๊ฒฝ

* feat: MemberController Test ์ž‘์„ฑ

* feat: DonationControllerTest ์ž‘์„ฑ

* feat: BannerControllerTest ์ž‘์„ฑ

* refactor: ์ธ์ˆ˜ํ…Œ์ŠคํŠธ ๊นจ์ง ์›์ธ ํ•ด๊ฒฐ์„ ์œ„ํ•œ ๋””ํดํŠธ ์ƒ์„ฑ์ž ์ถ”๊ฐ€

* refactor: ์—๋Ÿฌ์ฝ”๋“œ ์ƒ์ˆ˜๋กœ ํ˜ธ์ถœ

Co-authored-by: Gyeonglok Kim <goodboy302@naver.com>

* refactor: ์ ‘๊ทผ ์ œ์–ด์ž ๋น ์ง„๊ฒƒ ๋ถ™์—ฌ์ฃผ๊ธฐ

Co-authored-by: Gyeonglok Kim <goodboy302@naver.com>

* refactor: ์—๋Ÿฌ์ฝ”๋“œ ์ƒ์ˆ˜ํ˜ธ์ถœ๋กœ ๋ณ€๊ฒฝ

* refactor: ์ •์ƒ์ ์ธ interceptor&resolver ๋ชจํ‚น์ž‘์—… ๋ฉ”์„œ๋“œ ๋ถ„๋ฆฌ

* refactor: conflict ์ฒ˜๋ฆฌ

Co-authored-by: Gyeonglok Kim <goodboy302@naver.com>
Co-authored-by: dwl5 <ssop6403@gmail.com>

* [#111] ํ›„์› ๊ธฐ๋ก(์ „์ฒด ํ›„์› ๋ฆฌ์ŠคํŠธ, ๊ณต๊ฐœ ํ›„์› ๋ฆฌ์ŠคํŠธ)์— createdDate ์ •๋ณด ์ถ”๊ฐ€ (#112)

* refactor: ์ค‘๋ณต๋˜๋Š” cors ์„ค์ • ์ œ๊ฑฐ

* fix: ํ†ต๊ณผํ•˜์ง€ ๋ชปํ•˜๋Š” ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ˆ˜์ • ๋ฐ ๋ถˆํ•„์š”ํ•œ import ์ œ๊ฑฐ

* feat: ํ›„์› ๊ธฐ๋ก์— createdAt data ์ถ”๊ฐ€

ํ›„์› ๊ธฐ๋ก(์ „์ฒด ํ›„์› ๋ฆฌ์ŠคํŠธ, ๊ณต๊ฐœ ํ›„์› ๋ฆฌ์ŠคํŠธ)์— '์ƒ์„ฑ์ผ์ž' ์ •๋ณด๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค.

* [#115]Logging ์ถ”๊ฐ€ (#116)

* chore: logback-slack ์˜์กด์„ฑ ์ถ”๊ฐ€

* chore: logback ์„ค์ • ์ถ”๊ฐ€

* feat: logging ์ ์šฉ ๋ฐ ๋ฏธ์ •์˜ ์—๋Ÿฌ ์ฒ˜๋ฆฌ ์ถ”๊ฐ€

* [#113] /members/validate/token ์ปจํŠธ๋กค๋Ÿฌ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€ ๋ฐ repositoryTest @import ์ถ”๊ฐ€ (#119)

* refactor: import annotation added

* feat: TokenValidation Test ์ถ”๊ฐ€

* refactor: signup Redirect URL ๋ณ€๊ฒฝ (#121)

* [#124]oauth2.0 ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ URL ์ถ”๊ฐ€  (#125)

* feat: prod ๋กœ๊ทธ์ธ ๊ด€๋ จ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ URL ์ถ”๊ฐ€

* feat: prod ํšŒ์› ๊ฐ€์ž… ๊ด€๋ จ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ URL ์ˆ˜์ •

* Delete index.html

* [#120, #128] Rest Docs ์—ฐ๋™ ๋ฐ ํ›„์›์ž ์ด๋ฆ„ ๊ธฐ๋ณธ๊ฐ’ ๋ณ€๊ฒฝ (#126)

* refactor: RestDocs ์„ค์ • ์ถ”๊ฐ€

* refactor: MemberControllerTest restDocs ์ฝ”๋“œ ์ถ”๊ฐ€

* refactor: BannerControllerTest restDocs ์ฝ”๋“œ ์ถ”๊ฐ€

* refactor: DonationControllerTest restDocs ์ฝ”๋“œ ์ถ”๊ฐ€

* docs: index.adoc ์ƒ์„ฑ

* refactor: enum toUpperCase ์ถ”๊ฐ€

* refactor: ํ…Œ์ŠคํŠธ์šฉ html ํŒŒ์ผ ์‚ญ์ œ

* refactor: asciidoctor ๋ฒ„์ „ ๋ณ€๊ฒฝ

* refactor: gradle ๋ฐ ๋ถ€ํŠธ ๋ฒ„์ „ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œ

* refactor: ํ›„์› ์ด๋ฆ„ default,secret name ๋ณ€๊ฒฝ

* refactor: restDocs๋ฅผ ์œ„ํ•œ gradle ์„ค์ • ๋ณ€๊ฒฝ

* refactor: logback console ๋‚˜์˜ค๋„๋ก ์ˆ˜์ •

Co-authored-by: dwl5 <ssop6403@gmail.com>

* chore: dev-server์˜ ddl-auto ์„ค์ •์„ update๋กœ ๋ณ€๊ฒฝ (#138)

dev-server๊ฐ€ ๋งค๋ฒˆ ๋ฐฐํฌ๋  ๋•Œ๋งˆ๋‹ค ๋ฐ์ดํ„ฐ๊ฐ€ ์ดˆ๊ธฐํ™”๋˜์ง€ ์•Š๋„๋ก ์„ค์ •

* refactor: if๋ฌธ ํ•˜๋‚˜ ๊ฑธ์–ด์คŒ (#139)

* docs: update README.md

* feat: ํ”„๋ก ํŠธ ๋ฐฐํฌ CORS ์„ค์ • (#142)

* feat: submodule added (#152)

* Delete application-oauth2-dev.yml

* feat: yamlController (#153)

* [#151] GitSubmodule ๋„์ž… (#154)

* refactor: jasypt ๊ด€๋ จ ์‚ญ์ œ

* refactor: ์•”ํ˜ธํ™”๋œ ymlํ•„๋“œ ์‚ญ์ œ

* Update securityKey

* refactor: gradle copySecret task ๋ณ€๊ฒฝ

* feat: S3 ์—ฐ๊ฒฐ

* ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ ๋“ฑ๋ก, ์ˆ˜์ •, ์‚ญ์ œ api ๊ตฌํ˜„ (#157)

* refactor: S3 ๊ด€๋ จ ํด๋ž˜์Šค ํŒจํ‚ค์ง€ ๊ตฌ์กฐ ๋ณ€๊ฒฝ

* feat: profile ๊ด€๋ จ Controller ๋ฉ”์„œ๋“œ ๋ฐ Service ๋ฉ”์„œ๋“œ ์ž‘์„ฑ

* feat: CloudFronUrlGenerator ๊ตฌํ˜„

* feat: S3 upload ์ฝ”๋“œ ๊ตฌํ˜„

* feat: profile image ์‚ญ์ œ ๊ธฐ๋Šฅ ๊ตฌํ˜„

* test: CloudFrontUrlGenerator ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* test: Upload ProfileImage Repository test ์ถ”๊ฐ€

* test: Upload ProfileImage Service test ์ถ”๊ฐ€

* feat: s3 ์Šคํ† ๋ฆฌ์ง€์—์„œ ํŒŒ์ผ์„ ์ฐพ์„ ์ˆ˜ ์—†๋Š” ์˜ˆ์™ธ ์ถ”๊ฐ€

* test: Upload ProfileImage Controller test ์ถ”๊ฐ€

Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* feat: image profile upload/delete ๊ธฐ๋Šฅ ๊ตฌํ˜„ (#158)

* feat: s3 ํŒŒ์ผ ํ™•์žฅ์ž ์ถ”๊ฐ€

* feat: S3 file not found exception ๋ฉ”์‹œ์ง€ ์ถ”๊ฐ€

* fix: db์— profile filename ๋งŒ ์ €์žฅํ•˜๋„๋ก ์ˆ˜์ •

* test: upload profile ํ…Œ์ŠคํŠธ ์ œ๊ฑฐ

* fix: if๋ฌธ return ๋ฐ˜์˜

* refactor: h2 console on

* refactor: web-allow-others ์†์„ฑ ๋ณ€๊ฒฝ

* refactor: ๋ฉ”์„ธ์ง€ ๋น„๊ณต๊ฐœ ํ”„๋กœ์„ธ์Šค ๋ณ€๊ฒฝ (#161)

* feat: s3 not found ์ผ€์ด์Šค ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€ (#163)

* [#162]ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ Api RestDocs ๋ฐ˜์˜ (#167)

* feat: restdocs index.html config ์ถ”๊ฐ€

* feat: profile api restdocs ๋ฐ˜์˜

* test: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ •๋ฆฌ

* refactor: s3 ํŒŒ์ผ ์ €์žฅ ๊ฒฝ๋กœ ๋ณ€๊ฒฝ (#169)

* refactor: ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋ณ€๊ฒฝ (#184)

* refactor: test fixed

* [#164]์•„์ž„ํฌํŠธ ๊ฒฐ์ œ ๋„๋ฉ”์ธ, API ์ž‘์„ฑ (#188)

* feat: ์•„์ž„ํฌํŠธ API ์ž‘์„ฑ ์ค‘๊ฐ„์ปค๋ฐ‹

* feat: ์ฃผ๋ฌธ๋ฒˆํ˜ธ ์ƒ์„ฑํ•˜๊ธฐ ๊ธฐ๋Šฅ, ์•„์— ํฌํŠธ ์„œ๋ฒ„ ์•ก์„ธ์Šค ํ† ํฐ ๋ฐœ๊ธ‰ ๊ธฐ๋Šฅ ๋ฐ ๊ฒฐ์ œ์ •๋ณด ์กฐํšŒ ๊ธฐ๋Šฅ

* refactor: Donation request ํ•„๋“œ ๋ณ€๊ฒฝ

creator์˜ ์‹๋ณ„์ž ๋ณ€๊ฒฝ (nickName -> pageName)

* feat: ๊ฒฐ์ œ ํ”Œ๋กœ์šฐ ๊ตฌํ˜„

* test: ๊ฒฐ์ œ ํ”Œ๋กœ์šฐ ๊ตฌํ˜„์— ๋”ฐ๋ฅธ ํ…Œ์ŠคํŠธ ๋ณ€๊ฒฝ

* refactor: dataloader payment ์—๋Ÿฌ ์ˆ˜์ •

* test: DonationRepositoryTest ๊นจ์ง ์ˆ˜์ •

* feat: PaymentRequest ์œ ํšจ์„ฑ ์ถ”๊ฐ€

* refactor: ๊ฒฐ์ œ ๋กœ์ง ๋ฆฌํŒฉํ† ๋ง (iamport ๊ฒฐ์ œ๋กœ์ง ๋ถ„๋ฆฌ)

* test: payment ๋„๋ฉ”์ธ ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* refactor: IamPortPaymentServiceConnector @component์ถ”๊ฐ€

* refactor: donation service, acceptance ํ…Œ์ŠคํŠธ ์ˆ˜์ •

* refactor: jwtTokenProviderTest ActiveProfile ์„ค์ • ์ถ”๊ฐ€

* refactor: DataLoader dev๋งŒ ์ ์šฉ๋˜๋„๋ก ์ˆ˜์ •

* refactor: ํ›„์›๊ธˆ์•ก ์ด ํ•ฉ payment์˜ ๊ฐ’์œผ๋กœ ๋” ํ•ด์ฃผ๋„๋ก ์ˆ˜์ •

* refactor: CloudFrontUrlGenerator ActiveProfile์ถ”๊ฐ€

* refactor: DonationService Payment Mock ์ถ”๊ฐ€

* refactor: ๋ถˆํ•„์š”ํ•œ import ์‚ญ์ œ

* refactor: request url changed

* refactor: yml ํŒŒ์ผ iamport ์„ค์ • ์ถ”๊ฐ€ ๋ฐ DonationService ์ด์ „์œผ๋กœ ๋ณ€๊ฒฝ

* test: donation ์ธ์ˆ˜ํ…Œ์ŠคํŠธ disable ์ฒ˜๋ฆฌ

* refactor: ๊ฐ„๋‹จํ•œ ๋ฆฌํŒฉํ„ฐ๋ง

* test: DonationControllerTest ํ…Œ์ŠคํŠธ์ผ€์ด์Šค ์ˆ˜์ •

* refactor: ๋„๋„ค์ด์…˜ entity save๋กœ ๋ฆฌํ„ด๋œ ๊ฐ’ ์‚ฌ์šฉ

* feat: Payment ์˜ˆ์™ธ ์ฒ˜๋ฆฌ ์ถ”๊ฐ€

* refactor: PaymentInfo ๋ณ€์ˆ˜ ๋ช… ์ˆ˜์ •

* refactor: payment ์ •๋ณด ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋ฉ”์†Œ๋“œ ๋ถ„๋ฆฌ

* refactor: paymentComplete ๋ฉ”์†Œ๋“œ ์ œ๊ฑฐ

* refactor: iamport DTO tostring ์ œ๊ฑฐ

* refactor: index.html ๋ณ€๊ฒฝ ์‚ฌํ•ญ ๋ฐ˜์˜

Co-authored-by: ๊น€์ฃผ์› <kjw11077@naver.com>
Co-authored-by: rok93 <goodboy302@naver.com>
Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>

* refactor: test

* Update TyfServerApplication.java

* fix: ์  ํ‚จ์Šค ํ…Œ์ŠคํŠธ

* Update TyfServerApplication.java

* Update TyfServerApplication.java

* Update TyfServerApplication.java (#192)

* Update TyfServerApplication.java (#194)

* Update TyfServerApplication.java

* [#191] ์ž๊ธฐ์†Œ๊ฐœ, ๋‹‰๋„ค์ž„ ๋ณ€๊ฒฝ API ์ž‘์„ฑ  (#197)

* feat: ์ž๊ธฐ์†Œ๊ฐœ(BIO) update API

* style: ๋ถˆํ•„์š”ํ•œ todo ์ฃผ์„ ์ œ๊ฑฐ

* feat: ๋‹‰๋„ค์ž„(NickName) update API

* refactor: ๊ฐœํ–‰ ํ˜•์‹ ํ†ต์ผ๋˜๋„๋ก ๋ณ€๊ฒฝ

* refactor: Nickname ๋ณ€๊ฒฝ ์š”์ฒญ DTO ์ˆ˜์ •

* refactor: ์˜ˆ์™ธ error message ์ˆ˜์ •

* refactor: NickName์ด๋ผ๊ณ  ํ‘œ๊ธฐ๋ฒ•์ด ์ž˜๋ชป๋œ ํ‘œ๊ธฐ Nickname์œผ๋กœ ๋ณ€๊ฒฝ

* test: ์˜ˆ์™ธ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค ์ถ”๊ฐ€

* test: ์˜ˆ์™ธ ํ…Œ์ŠคํŠธ์— ๋Œ€ํ•œ errorCode ๊ฒ€์ฆ ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* refactor: @nullsource, @EmptySource ๋”ฐ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์• ๋„ˆํ…Œ์ด์…˜ @NullAndEmptySource๋กœ ๋ณ€๊ฒฝ

* [#189]Payment ์„œ๋น„์Šค, ์ปจํŠธ๋กค๋Ÿฌ ์Šฌ๋ผ์ด์‹ฑ ํ…Œ์ŠคํŠธ (#196)

* test: PaymentServiceTest ์ถ”๊ฐ€

* feat: ๊ฒฐ์ œ ์ •๋ณด ์ƒ์„ฑ ์š”์ฒญ ์œ ํšจ์„ฑ ๊ฒ€์ฆ

* test: PaymentController ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* docs: payment api rest docs ์ถ”๊ฐ€

* test: ๋ณ€๊ฒฝ๋œ ๋„๋„ค์ด์…˜ ๋กœ์ง ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€

* docs: ๋ณ€๊ฒฝ๋œ ๋„๋„ค์ด์…˜ ์˜ˆ์™ธ์‚ฌํ•ญ ์ถ”๊ฐ€

* refactor: ํ”„๋กœํ•„ ์—…๋กœ๋“œ method put์œผ๋กœ ๋ณ€๊ฒฝ

* test: multipart ํ…Œ์ŠคํŠธ ์š”์ฒญ ๋ฉ”์†Œ๋“œ put์œผ๋กœ ๋ณ€๊ฒฝ

* refactor: paymentException ์˜ˆ์™ธ ๊ฒฐ์ œ ๋ชจ๋“ˆ ๋ช…์‹œ

* refactor: test code private ๋น ์ง„ ๋ถ€๋ถ„ ์ถ”๊ฐ€

* refactor: ์ƒ์ˆ˜ ๋ณ€์ˆ˜๋ช… ๋Œ€๋ฌธ์ž๋กœ ๋ณ€๊ฒฝ

* refactor: savedPayment ์ง€์—ญ๋ณ€์ˆ˜ ์ œ๊ฑฐ

* refactor: thenReturn ๊ฐœํ–‰

* fix: profile CORS ์—๋Ÿฌ multipart resolver ์ถ”๊ฐ€

* fix: profile CORS ์—๋Ÿฌ ์˜์กด์„ฑ ์ถ”๊ฐ€

* refactor: getCurationsMember 5 To 10 (#202)

* [#203]๋ฉค๋ฒ„ API ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ (#204)

* feat: MemberResponse ๋ฐ CurationResponse profileImage ์ถ”๊ฐ€

* refactor: MemberDetailResponse ์ œ๊ฑฐ

* refactor: CloudFrontUrlGenerator ์ œ๊ฑฐ

* refactor: user profile s3 ์ €์žฅ๊ฒฝ๋กœ ๋ณ€๊ฒฝ

* fix: S3Connector ์ด์Šˆ ์ˆ˜์ •

* refactor: include aws profile

* fix: s3 ๊ฒฝ๋กœ ์ด์Šˆ ์ˆ˜์ •

* [#199, #198] ํ™˜๋ถˆ API ์ž‘์„ฑ, Payment์˜ Id ํƒ€์ž…์„ UUID๋กœ ๋ณ€๊ฒฝ (#200)

* refactor: PaymentSaveResponse -> PaymentPendingResponse ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ, PaymentPendingRequest dto ์ƒ์„ฑ

* feat: Payment ํ™˜๋ถˆ ๋„๋ฉ”์ธ ๋กœ์ง ์ž‘์„ฑ

* feat: Payment ํ™˜๋ถˆ ์ปจํŠธ๋กค๋Ÿฌ,์„œ๋น„์Šค ๋กœ์ง ์ž‘์„ฑ

* feat: ํ™˜๋ถˆAPI js์ฝ”๋“œ์˜ˆ์‹œ ์ž‘์„ฑ

* refactor: PaymentService#cancelPayment์˜ ๋ถˆํ•„์š”ํ•œ ๋กœ์ง ์ •๋ฆฌ

* refactor: PaymentCancelRequest์˜ ํ™˜๋ถˆ๊ธˆ์•ก ํ•„๋“œ ์ œ๊ฑฐ

* test: Payment ๋„๋ฉ”์ธ ํ…Œ์ŠคํŠธ ์ž‘์„ฑ

* feat: Payment์˜ id ํƒ€์ž…์„ UUID๋กœ ๋ณ€๊ฒฝ

* feat: Payment ๊ด€๋ จ DTO์˜ merchantUid ํƒ€์ž…์„ UUID๋กœ ๋ณ€๊ฒฝ, ๋”์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” DonationRequest ์‚ญ์ œ

* fix: request dto์—์„œ UUID๋ฅผ ๋ฐ›์ง€ ๋ชปํ•˜๋Š” ์ด์Šˆ ํ•ด๊ฒฐ

* fix: PaymentNotFoundException ๋ฉ”์‹œ์ง€/์—๋Ÿฌ์ฝ”๋“œ ์ˆ˜์ •, ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” PaymentRequestException,  PaymentCancelException ์‚ญ์ œ

* refactor: IllegalPaymentInfoException ์˜ˆ์™ธ๋ฉ”์‹œ์ง€ ์ˆ˜์ •

* fix: ํ™˜๋ถˆ์š”์ฒญdto ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์‹คํŒจ์‹œ PaymentCancelRequestException ๋ฐœ์ƒํ•˜๋„๋ก ๋ณ€๊ฒฝ

* test: Payment ์ปจํŠธ๋กค๋Ÿฌ ํ…Œ์ŠคํŠธ์ผ€์ด์Šค ์ถ”๊ฐ€

* refactor: convertToPaymentInfo ์ˆ˜์ •

* feat: Payment idํƒ€์ž… Long์œผ๋กœ ๋ณ€๊ฒฝ, merchantUid UUIDํƒ€์ž… ์ปฌ๋Ÿผ ์ถ”๊ฐ€

* style: ๋ฆฌํฌ๋งคํŒ…

* refactor: PaymentRequest -> PaymentCompleteRequest ๋ฆฌ๋„ค์ž„

* refactor: ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ํด๋ž˜์Šค ์ œ๊ฑฐ

* refactor: ํ™˜๋ถˆ์š”์ฒญ dto์˜ merchantUid ํƒ€์ž… UUID๋กœ ๋ณ€๊ฒฝ

* feat: Payment์˜ merchantUid ์ปฌ๋Ÿผ nullable=false ์ถ”๊ฐ€

* feat: UUID ์ปค์Šคํ…€ Validator ์ƒ์„ฑ, DTO์˜ merchantUid๋ฅผ Stringํƒ€์ž…์œผ๋กœ ๋ณ€๊ฒฝ

* refactor: ์Šค๋„ค์ดํฌ์ผ€์ด์Šค -> ์นด๋ฉœ์ผ€์ด์Šค๋กœ ๋ณ€๊ฒฝ

* feat: UUIDValidator null ๊ฒ€์ฆ ์ถ”๊ฐ€, ํ…Œ์ŠคํŠธ์ž‘์„ฑ

Co-authored-by: dwl5 <ssop6403@gmail.com>

* feat: member response์— bio ์ถ”๊ฐ€ (#208)

* fix: merchantId๋ฅผ return ํ•˜๊ฒŒ๋”, ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ blank ์ฒดํฌํ•˜๊ฒŒ๋”

* refactor: UUID ์ƒ์„ฑ ์ž‘์—…์„ ์ƒ์„ฑ์ž๋กœ ๋„ฃ์Œ

* refactor: return ์ฝ”๋“œ ๋ณ€๊ฒฝ

* refactor: cloudFront fileName splited

* refactor: cloudfront url ํŒŒ์‹ฑ

* refactor: cloud front url detached ๋ฉ”์„œ๋“œ ๋ถ„๋ฆฌ

* feat: ์šด์˜์—์„œ update ์•ˆ๋˜๋Š” ์ด์Šˆ๋กœ ์ธํ•ด application-dev.yml ์ˆ˜์ •

* refactor: ddl-auto create mode

* refactor: ํ•„๋“œ๊ฐ’ response์— ๋งž๊ฒŒ๋” ๋ณ€๊ฒฝ

* refactor: ddl-auto ์†์„ฑ ๋ณ€๊ฒฝ

* feat: ํ›„์› ๊ธˆ์•ก validation ์ถ”๊ฐ€

Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>
Co-authored-by: ๊น€์ฃผ์› <kjw11077@naver.com>
Co-authored-by: hwano <jho2301@gmail.com>
Co-authored-by: rok93 <goodboy302@naver.com>

* feat: cors ๋ฐ interceptor path ์ถ”๊ฐ€

Co-authored-by: Bepoz <45073750+Be-poz@users.noreply.github.com>
Co-authored-by: hwano <jho2301@gmail.com>
Co-authored-by: Chayan <hchayan196@gmail.com>
Co-authored-by: ๊น€์ฃผ์› <kjw11077@naver.com>
Co-authored-by: rok93 <goodboy302@naver.com>
Co-authored-by: Chayan <chayans999@gmail.com>
  • Loading branch information
7 people committed Aug 1, 2021
1 parent c9f3112 commit 42061dd
Show file tree
Hide file tree
Showing 353 changed files with 28,535 additions and 4 deletions.
4 changes: 4 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[submodule "server/securityKey"]
path = server/securityKey
url = https://github.com/2021-tyf/securityKey.git
branch = main
34 changes: 34 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# 2021-tyf

### ๐ŸŽ Thank you for _ _ _

- ๋ˆ„๊ตฌ๋‚˜ ์‰ฝ๊ฒŒ ์ฐฝ์ž‘์ž๋ฅผ ์‘์›ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ„ํŽธ ๋„๋„ค์ด์…˜ ๋ชจ๋“ˆ ์„œ๋น„์Šค

### ๐Ÿ’ป ์ปค๋ฐ‹ ๋ฉ”์„ธ์ง€ ์ปจ๋ฒค์…˜

- ์•ต๊ทค๋Ÿฌ ์ปค๋ฐ‹ ์ปจ๋ฒค์…˜์„ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.
- (#[์ด์Šˆ๋ฒˆํ˜ธ]) ์ด์Šˆ ์ œ๋ชฉ
- feat : ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€
- fix : ๋ฒ„๊ทธ ์ˆ˜์ •
- docs : ๋ฌธ์„œ ๊ด€๋ จ
- style : ์Šคํƒ€์ผ ๋ณ€๊ฒฝ (ํฌ๋งคํŒ… ์ˆ˜์ •, ๋“ค์—ฌ์“ฐ๊ธฐ ์ถ”๊ฐ€, โ€ฆ)
- refactor : ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง
- test : ํ…Œ์ŠคํŠธ ๊ด€๋ จ ์ฝ”๋“œ
- build : ๋นŒ๋“œ ๊ด€๋ จ ํŒŒ์ผ ์ˆ˜์ •
- ci : CI ์„ค์ • ํŒŒ์ผ ์ˆ˜์ •
- perf : ์„ฑ๋Šฅ ๊ฐœ์„ 
- chore : ๊ทธ ์™ธ ์ž์ž˜ํ•œ ์ˆ˜์ •

### Pull Request ์ปจ๋ฒค์…˜

- [#์ด์Šˆ๋ฒˆํ˜ธ] ์ด์Šˆ์— ๋Œ€ํ•œ ๋‚ด์šฉ
- ์ด์Šˆ์— ๋Œ€ํ•œ ๋‚ด์šฉ
- ๊น”๋”ํ•˜๊ฒŒ ์ •๋ฆฌํ•ด์„œ ์“ฐ๊ธฐ (๋ฌธ์žฅํ˜•์‹ ์•„๋‹˜)
- ๋ผ๋ฒจ ๊ผผ๊ผผํžˆ ๋ถ™ํžˆ๊ธฐ
- Assignee ํ• ๋‹น ์ž˜ํ•˜๊ธฐ
- ๊ด€๋ จ ์ด์Šˆ ํ• ๋‹น ์ž˜ํ•˜๊ธฐ

### Branch ์ปจ๋ฒค์…˜
- feature/{feature-name}
- ๋ณธ์ธ fork ๋ ˆํฌ์ง€ํ† ๋ฆฌ์— ์œ„์™€ ๊ฐ™์ด ๋ธŒ๋žœ์น˜๋ฅผ ๋งŒ๋“ค์–ด ์ž‘์—…ํ•œ๋‹ค.
- ์™„๋ฃŒ๋˜๋ฉด upstream์˜ develop-server develop-client๋กœ pr ์š”์ฒญ
Binary file removed client/.DS_Store
Binary file not shown.
27 changes: 27 additions & 0 deletions client/.eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
"env": {
"browser": true,
"es2021": true,
"node": true
},
"extends": [
"eslint:recommended",
"plugin:react/recommended",
"plugin:@typescript-eslint/recommended"
],
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaFeatures": {
"jsx": true
},
"ecmaVersion": 12,
"sourceType": "module"
},
"plugins": ["react", "@typescript-eslint"],
"rules": {
"react/react-in-jsx-scope": "off",
"react/prop-types": "off",
"@typescript-eslint/explicit-module-boundary-types": "off",
"@typescript-eslint/no-empty-interface": "off"
}
}
3 changes: 3 additions & 0 deletions client/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
node_modules
.DS_Store
/build
5 changes: 5 additions & 0 deletions client/.prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"printWidth": 100,
"singleQuote": true,
"quoteProps": "consistent"
}
10 changes: 10 additions & 0 deletions client/.storybook/main.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
module.exports = {
"stories": [
"../src/**/*.stories.mdx",
"../src/**/*.stories.@(js|jsx|ts|tsx)"
],
"addons": [
"@storybook/addon-links",
"@storybook/addon-essentials"
]
}
36 changes: 36 additions & 0 deletions client/.storybook/preview.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
import { RecoilRoot } from 'recoil';
import { ThemeProvider } from 'styled-components';
import { BrowserRouter } from 'react-router-dom';

import GlobalStyle from '../src/Global.styles';
import { theme } from '../src/theme';
import { Suspense } from 'react';

export const parameters = {
actions: { argTypesRegex: '^on[A-Z].*' },
controls: {
matchers: {
color: /(background|color)$/i,
date: /Date$/,
},
},
};

export const decorators = [
(Story) => (
<>
<RecoilRoot>
<ThemeProvider theme={theme}>
<GlobalStyle />
<BrowserRouter>
<div style={{ height: '100vh' }}>
<Suspense fallback={true}>
<Story />
</Suspense>
</div>
</BrowserRouter>
</ThemeProvider>
</RecoilRoot>
</>
),
];
3 changes: 3 additions & 0 deletions client/.vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"git.ignoreLimitWarning": true
}
2 changes: 0 additions & 2 deletions client/client.md

This file was deleted.

13 changes: 13 additions & 0 deletions client/jest.config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
import type { Config } from '@jest/types';

const config: Config.InitialOptions = {
preset: 'ts-jest',
testEnvironment: 'jsdom',
setupFilesAfterEnv: ['<rootDir>/src/__test__/jest.setup.ts'],
moduleNameMapper: {
'\\.(jpg|jpeg|png|gif|webp|svg|mp4|webm|wav|mp3|m4a|aac)$':
'<rootDir>/src/__test__/utils/assetsTransformer.js',
},
};

export default config;
4 changes: 4 additions & 0 deletions client/netlify.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[[redirects]]
from = "/*"
to = "/index.html"
status = 200
71 changes: 71 additions & 0 deletions client/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
{
"name": "tyf-client",
"version": "0.0.1",
"description": "thank you for __ ์˜ ํด๋ผ์ด์–ธํŠธ ์•ฑ",
"main": "index.js",
"repository": "https://github.com/woowacourse-teams/2021-tyf",
"contributors": [
{
"name": "hchayan",
"email": "hchayan196@gmail.com",
"url": "https://chayan.oopy.io/"
},
{
"name": "jho2301",
"email": "jho2301@gmail.com",
"url": "https://github.com/jho2301"
}
],
"license": "MIT",
"private": false,
"scripts": {
"start": "webpack serve",
"build:dev": "webpack --mode=development --node-env=development",
"build": "webpack --mode=production --node-env=production",
"test": "jest src --watch ",
"test:clean": "jest --clearCache && jest src --watch ",
"storybook": "start-storybook -p 6006",
"build-storybook": "build-storybook"
},
"devDependencies": {
"@jest/types": "^27.0.6",
"@storybook/addon-actions": "^6.3.2",
"@storybook/addon-essentials": "^6.3.2",
"@storybook/addon-links": "^6.3.2",
"@storybook/react": "^6.3.2",
"@testing-library/jest-dom": "^5.14.1",
"@testing-library/react": "^12.0.0",
"@types/jest": "^26.0.24",
"@types/react": "^17.0.13",
"@types/react-dom": "^17.0.8",
"@types/react-router-dom": "^5.1.8",
"@types/styled-components": "^5.1.11",
"@types/webpack-dev-server": "^3.11.5",
"@typescript-eslint/eslint-plugin": "^4.28.1",
"@typescript-eslint/parser": "^4.28.1",
"eslint": "^7.30.0",
"eslint-plugin-react": "^7.24.0",
"fork-ts-checker-webpack-plugin": "^6.2.12",
"html-webpack-plugin": "^5.3.2",
"jest": "^27.0.6",
"msw": "^0.30.1",
"prettier": "^2.3.2",
"ts-jest": "^27.0.3",
"ts-loader": "^9.2.3",
"ts-node": "^10.0.0",
"typescript": "^4.3.5",
"webpack": "^5.42.0",
"webpack-cli": "^4.7.2",
"webpack-dev-server": "^3.11.2"
},
"dependencies": {
"axios": "^0.21.1",
"react": "^17.0.2",
"react-dom": "^17.0.2",
"react-error-boundary": "^3.1.3",
"react-router-dom": "^5.2.0",
"recoil": "^0.3.1",
"styled-components": "^5.3.0",
"styled-reset": "^4.3.4"
}
}
3 changes: 3 additions & 0 deletions client/public/_redirects
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
/* /index.html 200
/* /index.html 404

Binary file added client/public/favicon.ico
Binary file not shown.
19 changes: 19 additions & 0 deletions client/public/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Thank you for ___</title>
<link rel="preconnect" href="https://fonts.googleapis.com" crossorigin />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link
href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap"
rel="stylesheet"
crossorigin
/>
</head>
<body>
<div id="root"></div>
</body>
</html>
20 changes: 20 additions & 0 deletions client/src/API.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
import axios, { AxiosInstance } from 'axios';

const baseURL =
process.env.NODE_ENV === 'production'
? 'https://thank-you-for.kro.kr/'
: 'https://thank-you-for-test.kro.kr/';

export const apiClient: AxiosInstance = axios.create({
baseURL,
headers: {
'Content-Type': 'application/json; charset=utf-8',
},
});

// apiClient.interceptors.response.use(
// (response) => response,
// (error) => error.response
// );

// export const createAuthorizationHeader = () => {};
91 changes: 91 additions & 0 deletions client/src/App.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
import { Suspense } from 'react';
import { ErrorBoundary } from 'react-error-boundary';
import { Route, Switch, Redirect } from 'react-router-dom';
import { useRecoilValue } from 'recoil';

import Footer from './components/Footer/Footer';
import NavBar from './components/NavBar/NavBar';
import PrivateRoute from './components/PrivateRoute/PrivateRoute';
import CreatorPage from './pages/Creator/CreatorPage';
import DonationPage from './pages/Donation/Donation/DonationPage';
import DonationMessagePage from './pages/Donation/Message/DonationMessagePage';
import DonationSuccessPage from './pages/Donation/Success/DonationSuccessPage';
import LoginPage from './pages/Login/LoginPage';
import MainPage from './pages/Main/MainPage';
import RegisterAddressPage from './pages/Register/RegisterAddress/RegisterAddressPage';
import RegisterAuthPage from './pages/Register/RegisterAuth/RegisterAuthPage';
import RegisterNamePage from './pages/Register/RegisterName/RegisterNamePage';
import RegisterSuccessPage from './pages/Register/RegisterSuccess/RegisterSuccessPage';
import RegisterTermsPage from './pages/Register/RegisterTerms/RegisterTermsPage';
import StatisticsPage from './pages/Statistics/StatisticsPage';
import { accessTokenState } from './service/state/login';
import { CreatorId, OAuthProvider } from './types';

export interface ParamTypes {
oauthProvider: OAuthProvider;
creatorId: CreatorId;
}

const App = () => {
const accessToken = useRecoilValue(accessTokenState);

return (
<>
<NavBar />
<Switch>
<Route path="/" component={MainPage} exact />

<PrivateRoute
path="/login/:oauthProvider?"
component={LoginPage}
isAuthed={!accessToken}
redirectTo="/"
/>

<PrivateRoute
path="/register"
component={RegisterTermsPage}
isAuthed={!accessToken}
redirectTo="/"
exact
/>
<PrivateRoute
path="/register/auth"
component={RegisterAuthPage}
isAuthed={!accessToken}
redirectTo="/"
/>
<PrivateRoute
path="/register/url/:oauthProvider?"
component={RegisterAddressPage}
isAuthed={!accessToken}
redirectTo="/"
/>
<PrivateRoute
path="/register/name"
component={RegisterNamePage}
isAuthed={!accessToken}
redirectTo="/"
/>
<Route path="/register/success" component={RegisterSuccessPage} />

<Route path="/donation/:creatorId" component={DonationPage} exact />
<Route path="/donation/:creatorId/message" component={DonationMessagePage} />
<Route path="/donation/:creatorId/success" component={DonationSuccessPage} />

<Route path="/creator/:creatorId" component={CreatorPage} exact />
<PrivateRoute
path="/creator/:creatorId/statistic"
component={StatisticsPage}
isAuthed={!!accessToken}
redirectTo="/login"
/>

<Redirect from="*" to="/" />
</Switch>
<Footer />
</>
);
};

export default App;

0 comments on commit 42061dd

Please sign in to comment.