Skip to content

Commit d48b69a

Browse files
authored
Merge pull request #142 from mash-up-kr/release/v0.3.0
Main Release/v0.3.0
2 parents 94bd096 + c15f4f7 commit d48b69a

36 files changed

+762
-135
lines changed

public/assets/favicon.svg

Lines changed: 33 additions & 0 deletions
Loading

public/assets/og-image.png

17.1 KB
Loading

public/index.html

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,11 @@
55
<meta charset="UTF-8">
66
<meta name="viewport" content="width=device-width,initial-scale=1">
77
<meta http-equiv="X-UA-Compatible" content="ie=edge">
8-
<title>mashup-admin</title>
8+
<title>Mash-Up Adminsoo | IT 연합 동아리</title>
9+
<meta
10+
property="description"
11+
content="매쉬업은 개발, 디자인에 관심과 열정이 있는 사람들이 모인 단체로 Product Design, Android, iOS, Backend(노드,스프링), Web 총 6개의 팀으로 구성되어 있습니다. 매쉬업에서는 전체모임의 세미나 및 네트워킹을 진행하고 있으며, 이를 통하여 개인의 전문역량과 협업능력을 증대시키고자 합니다."
12+
/>
913
<link
1014
href="/fonts/SpoqaHanSansNeo-Regular.woff2"
1115
rel="preload"
@@ -27,6 +31,15 @@
2731
type="font/woff2"
2832
crossOrigin="anonymous"
2933
/>
34+
<meta property="og:url" content="https://adminsoo.mash-up.kr/" />
35+
<meta property="og:type" content="website" />
36+
<meta property="og:title" content="Mash-Up Adminsoo | IT 연합 동아리" />
37+
<meta
38+
property="og:description"
39+
content="매쉬업은 개발, 디자인에 관심과 열정이 있는 사람들이 모인 단체로 Product Design, Android, iOS, Backend(노드,스프링), Web 총 6개의 팀으로 구성되어 있습니다. 매쉬업에서는 전체모임의 세미나 및 네트워킹을 진행하고 있으며, 이를 통하여 개인의 전문역량과 협업능력을 증대시키고자 합니다."
40+
/>
41+
<meta property="og:image" content="/assets/og-image.png" />
42+
<link rel="icon" href="/assets/favicon.svg" />
3043
</head>
3144
<body>
3245
<div id="root"></div>

src/App.tsx

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import { ACCESS_TOKEN, PATH } from './constants';
1212

1313
import {
1414
LoginPage,
15+
ApplicationList,
1516
ApplicationFormList,
1617
CreateApplicationForm,
1718
UpdateApplicationForm,
@@ -63,6 +64,14 @@ const App = () => {
6364
<ModalViewer />
6465
<Routes>
6566
<Route path="/" element={<Layout />}>
67+
<Route
68+
path={PATH.APPLICATION}
69+
element={
70+
<RequiredAuth isAuth={isAuthorized}>
71+
<ApplicationList />
72+
</RequiredAuth>
73+
}
74+
/>
6675
<Route
6776
path={PATH.APPLICATION_FORM}
6877
element={
@@ -103,21 +112,14 @@ const App = () => {
103112
</RequiredAuth>
104113
}
105114
/>
106-
{/* // TODO:(용재) 추후 PATH.APPLICATION로 변경 */}
107-
<Route
108-
path="/"
109-
element={<Navigate to={TOKEN ? PATH.APPLICATION_FORM : PATH.LOGIN} />}
110-
/>
115+
<Route path="/" element={<Navigate to={TOKEN ? PATH.APPLICATION : PATH.LOGIN} />} />
111116
{/* // TODO:(용재) 추후 404로 변경 */}
112-
<Route
113-
path="*"
114-
element={<Navigate to={TOKEN ? PATH.APPLICATION_FORM : PATH.LOGIN} />}
115-
/>
117+
<Route path="*" element={<Navigate to={TOKEN ? PATH.APPLICATION : PATH.LOGIN} />} />
116118
</Route>
117119
<Route
118120
path={PATH.LOGIN}
119121
element={
120-
<RequiredAuth isAuth={!isAuthorized} to={PATH.APPLICATION_FORM}>
122+
<RequiredAuth isAuth={!isAuthorized} to={PATH.APPLICATION}>
121123
<LoginPage />
122124
</RequiredAuth>
123125
}

src/api/application.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ import {
66
BaseResponse,
77
ApplicationUpdateResultByIdRequest,
88
ApplicationUpdateMultipleResultRequest,
9+
ApplicationRequest,
10+
ApplicationResponse,
911
} from '@/types';
1012

1113
export const getApplicationById = ({
@@ -15,6 +17,14 @@ export const getApplicationById = ({
1517
url: `/applications/${applicationId}`,
1618
});
1719

20+
export const getApplications = (
21+
params: ApplicationRequest,
22+
): Promise<BaseResponse<ApplicationResponse[]>> =>
23+
http.get({
24+
url: '/applications',
25+
params,
26+
});
27+
1828
export const postUpdateResult = ({
1929
applicationId,
2030
applicationResultStatus,

src/components/ApplicationDetail/ApplicationPanel/ApplicationPanel.component.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -181,14 +181,14 @@ const ControlArea = ({ confirmationStatus, resultStatus, interviewDate }: Contro
181181
{formatDate(date.format(), 'YYYY년 M월 D일(ddd) a hh시 mm분')}
182182
</TitleWithContent>
183183
)}
184-
<Styled.ButtonContainer>
184+
{/* <Styled.ButtonContainer>
185185
<Button
186186
$size={ButtonSize.sm}
187187
shape={ButtonShape.primaryLine}
188188
label="수정"
189189
onClick={handleToggleIsEdit}
190190
/>
191-
</Styled.ButtonContainer>
191+
</Styled.ButtonContainer> */}
192192
</>
193193
);
194194
};

src/components/ApplicationDetail/ApplicationPanel/ApplicationPanel.stories.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ const Template: ComponentStory<typeof ApplicationPanel> = (args: ApplicationPane
1414
export const applicationPanelTBD = Template.bind({});
1515

1616
applicationPanelTBD.args = {
17-
confirmationStatus: 'TBD',
17+
confirmationStatus: 'TO_BE_DETERMINED',
1818
resultStatus: 'NOT_RATED',
1919
interviewDate: '2022-02-22T08:10:11+09:00',
2020
};

src/components/ApplicationDetail/ApplicationQnAItem/ApplicationQnAItem.component.tsx

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,25 @@
11
import React from 'react';
22
import * as Styled from './ApplicationQnAItem.styled';
3-
import { Question } from '@/types';
3+
import { Question, Answer } from '@/types';
44

5-
const ApplicationQnAItem = ({ content, description, maxContentLength }: Question) => {
5+
export interface ApplicationQnAItemProps extends Question {
6+
answer: Answer;
7+
}
8+
9+
const ApplicationQnAItem = ({
10+
content,
11+
description,
12+
maxContentLength,
13+
answer,
14+
}: ApplicationQnAItemProps) => {
615
return (
716
<Styled.ApplicationQnAItemContainer>
817
<Styled.Title>{content}</Styled.Title>
9-
<Styled.Description>{description}</Styled.Description>
18+
{description && <Styled.Description>{description}</Styled.Description>}
19+
{answer.content && <Styled.Answer>{answer.content}</Styled.Answer>}
1020
{maxContentLength && (
1121
<Styled.TextLength>
12-
<strong>{description?.length}</strong>
22+
<strong>{answer.content.length}</strong>
1323
자/{maxContentLength}
1424
</Styled.TextLength>
1525
)}
Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
import React from 'react';
22
import { ComponentStory, ComponentMeta } from '@storybook/react';
3-
import ApplicationQnAItem from './ApplicationQnAItem.component';
4-
import { Question } from '@/types';
3+
import ApplicationQnAItem, { ApplicationQnAItemProps } from './ApplicationQnAItem.component';
54

65
export default {
76
title: 'ApplicationDetail/Application Qn A Item',
87
component: ApplicationQnAItem,
98
} as ComponentMeta<typeof ApplicationQnAItem>;
109

11-
const Template: ComponentStory<typeof ApplicationQnAItem> = (args: Question) => (
10+
const Template: ComponentStory<typeof ApplicationQnAItem> = (args: ApplicationQnAItemProps) => (
1211
<ApplicationQnAItem {...args} />
1312
);
1413

@@ -18,6 +17,11 @@ applicationQnAItem.args = {
1817
content: 'TEST',
1918
description: 'test',
2019
maxContentLength: 300,
21-
questionId: '0',
20+
questionId: 0,
2221
required: false,
22+
answer: {
23+
answerId: 0,
24+
content: 'ㅎㅇㅎㅇㅎㅇㅎ',
25+
questionId: 0,
26+
},
2327
};

src/components/ApplicationDetail/ApplicationQnAItem/ApplicationQnAItem.styled.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,23 @@ export const Title = styled.div`
1717
`;
1818

1919
export const Description = styled.div`
20+
${({ theme }) => css`
21+
${theme.fonts.regular13};
22+
color: ${theme.colors.gray60};
23+
`}
24+
`;
25+
26+
export const Answer = styled.div`
2027
${({ theme }) => css`
2128
${theme.fonts.regular15};
29+
margin-top: 1.2rem;
2230
color: ${theme.colors.gray70};
2331
`}
2432
`;
2533

2634
export const TextLength = styled.div`
2735
${({ theme }) => css`
28-
${theme.fonts.regular15};
36+
${theme.fonts.regular14};
2937
width: 100%;
3038
margin-top: 1.2rem;
3139
padding-top: 1.2rem;

0 commit comments

Comments
 (0)