@dotss/tictoccroc 0.9.0 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/shared/components/ChatKit/ImageMessage/ImageMessage.mjs +7 -6
- package/dist/shared/components/ChatKit/Message/Message.utils.mjs +15 -3
- package/dist/shared/components/ChatKit/Message/Message.utils.test.d.ts +1 -0
- package/dist/shared/components/Image/Image.mjs +113 -111
- package/dist/shared/components/Image/Image.utils.d.ts +7 -0
- package/dist/shared/components/Image/Image.utils.mjs +21 -0
- package/dist/shared/components/Image/Image.utils.test.d.ts +1 -0
- package/dist/teacher/profile/components/AbilityCollection/AbilityCollection.d.ts +3 -1
- package/dist/teacher/profile/components/AbilityCollection/AbilityCollection.mjs +25 -24
- package/dist/teacher/profile/components/ActivityGallery/ActivityGallery.d.ts +2 -1
- package/dist/teacher/profile/components/ActivityGallery/ActivityGallery.mjs +19 -18
- package/dist/teacher/profile/components/AvailableScheduleSection/AvailableScheduleSection.d.ts +1 -0
- package/dist/teacher/profile/components/AvailableScheduleSection/AvailableScheduleSection.mjs +29 -28
- package/dist/teacher/profile/components/CareNoteSection/CareNoteSection.d.ts +2 -0
- package/dist/teacher/profile/components/CareNoteSection/CareNoteSection.mjs +53 -49
- package/dist/teacher/profile/components/CareerSection/CareerSection.d.ts +2 -1
- package/dist/teacher/profile/components/CareerSection/CareerSection.mjs +25 -24
- package/dist/teacher/profile/components/CertificateSection/CertificateSection.d.ts +2 -1
- package/dist/teacher/profile/components/CertificateSection/CertificateSection.mjs +21 -20
- package/dist/teacher/profile/components/EducationSection/EducationSection.d.ts +2 -1
- package/dist/teacher/profile/components/EducationSection/EducationSection.mjs +21 -20
- package/dist/teacher/profile/components/ParentReviewSection/ParentReviewSection.d.ts +2 -0
- package/dist/teacher/profile/components/ParentReviewSection/ParentReviewSection.mjs +12 -11
- package/dist/teacher/profile/components/PreferredActivityKeywordGroup/PreferredActivityKeywordGroup.d.ts +2 -1
- package/dist/teacher/profile/components/PreferredActivityKeywordGroup/PreferredActivityKeywordGroup.mjs +4 -3
- package/dist/teacher/profile/components/PreferredAgeGroup/PreferredAgeGroup.d.ts +2 -1
- package/dist/teacher/profile/components/PreferredAgeGroup/PreferredAgeGroup.mjs +4 -3
- package/package.json +2 -2
package/dist/teacher/profile/components/AvailableScheduleSection/AvailableScheduleSection.mjs
CHANGED
|
@@ -6,19 +6,19 @@ import c from "@dotss/ui/core/useTheme";
|
|
|
6
6
|
import { jsx as l, jsxs as u } from "react/jsx-runtime";
|
|
7
7
|
import d from "@dotss/ui/Switch";
|
|
8
8
|
//#region teacher/profile/components/AvailableScheduleSection/AvailableScheduleSection.tsx
|
|
9
|
-
var f = n(function({ children: n, title: f = "수업 가능 일정", action: p,
|
|
10
|
-
let { palette: { grey:
|
|
9
|
+
var f = n(function({ children: n, title: f = "수업 가능 일정", action: p, description: m, footer: h, flat: g = !1, schedulerProps: _, enableToggle: v = !0, teacherStatus: y, ...b }, x) {
|
|
10
|
+
let { palette: { grey: S, background: C } } = c(), [w, T] = r(!1), E = () => T((e) => !e), D = (e) => y.onChange?.(e);
|
|
11
11
|
return /* @__PURE__ */ u(a, {
|
|
12
|
-
ref:
|
|
12
|
+
ref: x,
|
|
13
13
|
tag: "section",
|
|
14
14
|
flexDirection: "column",
|
|
15
15
|
gap: 4,
|
|
16
16
|
"aria-labelledby": "available-schedule-section-title",
|
|
17
|
-
"aria-describedby":
|
|
18
|
-
...
|
|
17
|
+
"aria-describedby": h ? "available-schedule-section-footer" : void 0,
|
|
18
|
+
...b,
|
|
19
19
|
inlineCSS: {
|
|
20
20
|
width: "100%",
|
|
21
|
-
...
|
|
21
|
+
...b?.inlineCSS
|
|
22
22
|
},
|
|
23
23
|
children: [
|
|
24
24
|
/* @__PURE__ */ l(s, {
|
|
@@ -27,54 +27,55 @@ var f = n(function({ children: n, title: f = "수업 가능 일정", action: p,
|
|
|
27
27
|
variant: "h2B",
|
|
28
28
|
children: f
|
|
29
29
|
}),
|
|
30
|
-
|
|
30
|
+
m,
|
|
31
|
+
y.active && /* @__PURE__ */ u(a, {
|
|
31
32
|
flexDirection: "column",
|
|
32
33
|
gap: 2,
|
|
33
34
|
children: [/* @__PURE__ */ u(a, {
|
|
34
35
|
flexDirection: "column",
|
|
35
36
|
inlineCSS: {
|
|
36
|
-
...
|
|
37
|
-
border: `1px solid ${
|
|
37
|
+
...g ? void 0 : {
|
|
38
|
+
border: `1px solid ${S[20]}`,
|
|
38
39
|
borderRadius: 12
|
|
39
40
|
},
|
|
40
|
-
maxHeight:
|
|
41
|
+
maxHeight: w ? void 0 : v ? 384 : void 0,
|
|
41
42
|
overflow: "hidden"
|
|
42
43
|
},
|
|
43
44
|
children: [
|
|
44
|
-
!
|
|
45
|
+
!g && /* @__PURE__ */ l(a, { pt: 4 }),
|
|
45
46
|
/* @__PURE__ */ l(t, {
|
|
46
47
|
id: "available-schedule-section-scheduler",
|
|
47
48
|
"aria-labelledby": "available-schedule-section-title",
|
|
48
|
-
...
|
|
49
|
+
..._,
|
|
49
50
|
children: n
|
|
50
51
|
}),
|
|
51
|
-
|
|
52
|
+
v && /* @__PURE__ */ l(i, {
|
|
52
53
|
variant: "text",
|
|
53
54
|
color: "secondary",
|
|
54
|
-
endAdornment: /* @__PURE__ */ l(o, { name:
|
|
55
|
-
onClick:
|
|
56
|
-
"aria-expanded":
|
|
55
|
+
endAdornment: /* @__PURE__ */ l(o, { name: w ? "ChevronUpLine" : "ChevronDownLine" }),
|
|
56
|
+
onClick: E,
|
|
57
|
+
"aria-expanded": w,
|
|
57
58
|
"aria-controls": "available-schedule-section-scheduler",
|
|
58
59
|
inlineCSS: {
|
|
59
60
|
position: "sticky",
|
|
60
61
|
bottom: 0,
|
|
61
62
|
borderTopRightRadius: 0,
|
|
62
63
|
borderTopLeftRadius: 0,
|
|
63
|
-
backgroundColor:
|
|
64
|
+
backgroundColor: S.white,
|
|
64
65
|
zIndex: 1
|
|
65
66
|
},
|
|
66
|
-
children:
|
|
67
|
+
children: w ? "접기" : "펼쳐보기"
|
|
67
68
|
})
|
|
68
69
|
]
|
|
69
|
-
}),
|
|
70
|
+
}), h && /* @__PURE__ */ l(a, {
|
|
70
71
|
id: "available-schedule-section-footer",
|
|
71
72
|
tag: "footer",
|
|
72
73
|
pl: 12,
|
|
73
74
|
pr: 2,
|
|
74
|
-
children:
|
|
75
|
+
children: h
|
|
75
76
|
})]
|
|
76
77
|
}),
|
|
77
|
-
typeof
|
|
78
|
+
typeof y.onChange == "function" && /* @__PURE__ */ u(a, {
|
|
78
79
|
alignItems: "center",
|
|
79
80
|
justifyContent: "space-between",
|
|
80
81
|
gap: 2,
|
|
@@ -85,14 +86,14 @@ var f = n(function({ children: n, title: f = "수업 가능 일정", action: p,
|
|
|
85
86
|
htmlFor: "available-schedule-section-switch",
|
|
86
87
|
children: "활동 여부"
|
|
87
88
|
}), /* @__PURE__ */ l(d, {
|
|
88
|
-
selected: !!
|
|
89
|
-
onChange:
|
|
89
|
+
selected: !!y.active,
|
|
90
|
+
onChange: D,
|
|
90
91
|
selectedLabel: "활동중",
|
|
91
92
|
unselectedLabel: "쉬는중",
|
|
92
93
|
inputProps: { id: "available-schedule-section-switch" }
|
|
93
94
|
})]
|
|
94
95
|
}),
|
|
95
|
-
!
|
|
96
|
+
!y.active && /* @__PURE__ */ u(a, {
|
|
96
97
|
role: "status",
|
|
97
98
|
pt: 5,
|
|
98
99
|
pb: 5,
|
|
@@ -106,13 +107,13 @@ var f = n(function({ children: n, title: f = "수업 가능 일정", action: p,
|
|
|
106
107
|
"aria-describedby": "available-schedule-section-status-desc",
|
|
107
108
|
inlineCSS: {
|
|
108
109
|
borderRadius: 8,
|
|
109
|
-
backgroundColor:
|
|
110
|
+
backgroundColor: C.primary
|
|
110
111
|
},
|
|
111
112
|
children: [
|
|
112
113
|
/* @__PURE__ */ l(e, {
|
|
113
114
|
width: 48,
|
|
114
115
|
height: 48,
|
|
115
|
-
src: `${
|
|
116
|
+
src: `${y.fallback.iconBasePath}/images/design-system/graphic/illustration3D/island.png`,
|
|
116
117
|
alt: "쉬는 중",
|
|
117
118
|
"aria-hidden": !0
|
|
118
119
|
}),
|
|
@@ -121,7 +122,7 @@ var f = n(function({ children: n, title: f = "수업 가능 일정", action: p,
|
|
|
121
122
|
tag: "h3",
|
|
122
123
|
variant: "h4B",
|
|
123
124
|
textAlign: "center",
|
|
124
|
-
children:
|
|
125
|
+
children: y.fallback.title || "쉬는 중일 때는 수업 요청이 오지 않아요!"
|
|
125
126
|
}),
|
|
126
127
|
/* @__PURE__ */ l(s, {
|
|
127
128
|
id: "available-schedule-section-status-desc",
|
|
@@ -130,7 +131,7 @@ var f = n(function({ children: n, title: f = "수업 가능 일정", action: p,
|
|
|
130
131
|
color: "grey.70",
|
|
131
132
|
textAlign: "center",
|
|
132
133
|
inlineCSS: { whiteSpace: "pre-line" },
|
|
133
|
-
children:
|
|
134
|
+
children: y.fallback.description || "이미 매칭된 수업은 그대로 유지되니\n변경이 필요한 경우 부모님과 소통해 주세요."
|
|
134
135
|
})
|
|
135
136
|
]
|
|
136
137
|
}),
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
1
2
|
import { FlexboxProps } from 'node_modules/@dotss/ui/Flexbox/Flexbox';
|
|
2
3
|
export interface CareNoteSectionProps extends FlexboxProps {
|
|
3
4
|
totalCount: number;
|
|
5
|
+
description?: ReactNode;
|
|
4
6
|
onClickViewAll?: () => void;
|
|
5
7
|
}
|
|
6
8
|
declare const CareNoteSection: import('react').ForwardRefExoticComponent<Omit<CareNoteSectionProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
|
|
@@ -4,10 +4,10 @@ import { Button as r, Flexbox as i, Icon as a, Typography as o } from "@dotss/ui
|
|
|
4
4
|
import s from "@dotss/ui/core/useTheme";
|
|
5
5
|
import { jsx as c, jsxs as l } from "react/jsx-runtime";
|
|
6
6
|
//#region teacher/profile/components/CareNoteSection/CareNoteSection.tsx
|
|
7
|
-
var u = n(({ children: n, totalCount: u = 0,
|
|
8
|
-
let { palette: { background:
|
|
7
|
+
var u = n(({ children: n, totalCount: u = 0, description: d, onClickViewAll: f, ...p }, m) => {
|
|
8
|
+
let { palette: { background: h }, spacing: g } = s(), _ = t.count(n);
|
|
9
9
|
return /* @__PURE__ */ l(i, {
|
|
10
|
-
ref:
|
|
10
|
+
ref: m,
|
|
11
11
|
tag: "section",
|
|
12
12
|
pt: 10,
|
|
13
13
|
pb: 10,
|
|
@@ -16,56 +16,60 @@ var u = n(({ children: n, totalCount: u = 0, onClickViewAll: d, ...f }, p) => {
|
|
|
16
16
|
gap: 4,
|
|
17
17
|
flexDirection: "column",
|
|
18
18
|
"aria-labelledby": "care-note-section-title",
|
|
19
|
-
...
|
|
19
|
+
...p,
|
|
20
20
|
inlineCSS: {
|
|
21
21
|
width: "100%",
|
|
22
|
-
backgroundColor:
|
|
23
|
-
...
|
|
22
|
+
backgroundColor: h.primary,
|
|
23
|
+
...p?.inlineCSS
|
|
24
24
|
},
|
|
25
|
-
children: [
|
|
26
|
-
|
|
27
|
-
justifyContent: "space-between",
|
|
28
|
-
gap: 1,
|
|
29
|
-
children: [/* @__PURE__ */ c(i, {
|
|
25
|
+
children: [
|
|
26
|
+
/* @__PURE__ */ l(i, {
|
|
30
27
|
alignItems: "center",
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
children:
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
28
|
+
justifyContent: "space-between",
|
|
29
|
+
gap: 1,
|
|
30
|
+
children: [/* @__PURE__ */ c(i, {
|
|
31
|
+
alignItems: "center",
|
|
32
|
+
gap: 2,
|
|
33
|
+
children: /* @__PURE__ */ l(o, {
|
|
34
|
+
id: "care-note-section-title",
|
|
35
|
+
tag: "h2",
|
|
36
|
+
variant: "h2B",
|
|
37
|
+
children: ["선생님의 수업 노트", u > 0 && /* @__PURE__ */ l(o, {
|
|
38
|
+
tag: "span",
|
|
39
|
+
variant: "h4R",
|
|
40
|
+
color: "grey.70",
|
|
41
|
+
inlineCSS: {
|
|
42
|
+
marginLeft: g.content(2),
|
|
43
|
+
verticalAlign: 2
|
|
44
|
+
},
|
|
45
|
+
children: [
|
|
46
|
+
"(",
|
|
47
|
+
u.toLocaleString(),
|
|
48
|
+
"개)"
|
|
49
|
+
]
|
|
50
|
+
})]
|
|
51
|
+
})
|
|
52
|
+
}), typeof f == "function" && /* @__PURE__ */ c(r, {
|
|
53
|
+
variant: "text",
|
|
54
|
+
size: "small",
|
|
55
|
+
color: "secondary",
|
|
56
|
+
endAdornment: /* @__PURE__ */ c(a, { name: "ChevronRightLine" }),
|
|
57
|
+
onClick: f,
|
|
58
|
+
children: "전체보기"
|
|
59
|
+
})]
|
|
60
|
+
}),
|
|
61
|
+
d,
|
|
62
|
+
/* @__PURE__ */ c(e, {
|
|
63
|
+
rowCount: 1,
|
|
64
|
+
spacing: 3,
|
|
65
|
+
inlineCSS: {
|
|
66
|
+
width: `calc(100% + ${g.content(8)}px)`,
|
|
67
|
+
gridAutoColumns: _ > 1 ? `calc(100% - ${g.content(8)}px)` : "100%",
|
|
68
|
+
margin: `0 -${g.content(4)}px`
|
|
69
|
+
},
|
|
70
|
+
children: n
|
|
71
|
+
})
|
|
72
|
+
]
|
|
69
73
|
});
|
|
70
74
|
});
|
|
71
75
|
//#endregion
|
|
@@ -2,8 +2,9 @@ import { ReactNode } from 'react';
|
|
|
2
2
|
import { FlexboxProps } from 'node_modules/@dotss/ui/Flexbox/Flexbox';
|
|
3
3
|
export interface CareerSectionProps extends FlexboxProps {
|
|
4
4
|
action?: ReactNode;
|
|
5
|
+
description?: ReactNode;
|
|
5
6
|
showTooltip?: boolean;
|
|
6
7
|
enableToggle?: boolean;
|
|
7
8
|
}
|
|
8
|
-
declare function CareerSection({ children, action, showTooltip, enableToggle, ...props }: CareerSectionProps): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
9
|
+
declare function CareerSection({ children, action, description, showTooltip, enableToggle, ...props }: CareerSectionProps): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
9
10
|
export default CareerSection;
|
|
@@ -5,9 +5,9 @@ import l from "@dotss/ui/core/useTheme";
|
|
|
5
5
|
import u from "dayjs";
|
|
6
6
|
import { Fragment as d, jsx as f, jsxs as p } from "react/jsx-runtime";
|
|
7
7
|
//#region teacher/profile/components/CareerSection/CareerSection.tsx
|
|
8
|
-
function m({ children: m, action: h,
|
|
9
|
-
let { spacing:
|
|
10
|
-
(e.key === "Enter" || e.key === " ") &&
|
|
8
|
+
function m({ children: m, action: h, description: g, showTooltip: _ = !1, enableToggle: v = !1, ...y }) {
|
|
9
|
+
let { spacing: b } = l(), [x, S] = r(!1), [C, w] = r(!1), T = t.toArray(m).filter(n).filter((t) => t.type === e), E = T.length > 0, D = T.length > 3, O = T.map((e) => [e.props.startDate, e.props.endDate ?? u().format("YYYY-MM-DD")]).map(([e, t]) => [u(e), u(t)]).map(([e, t]) => t.diff(e, "month") < 1 ? 1 : t.diff(e, "month")), k = Math.floor(O.reduce((e, t) => e + t, 0) / 12), A = O.reduce((e, t) => e + t, 0) % 12, j = () => w((e) => !e), M = () => S((e) => !e), N = (e) => {
|
|
10
|
+
(e.key === "Enter" || e.key === " ") && M();
|
|
11
11
|
};
|
|
12
12
|
return /* @__PURE__ */ p(a, {
|
|
13
13
|
tag: "section",
|
|
@@ -15,10 +15,10 @@ function m({ children: m, action: h, showTooltip: g = !1, enableToggle: _ = !1,
|
|
|
15
15
|
alignItems: "flex-start",
|
|
16
16
|
"aria-labelledby": "career-title",
|
|
17
17
|
gap: 2,
|
|
18
|
-
...
|
|
18
|
+
...y,
|
|
19
19
|
inlineCSS: {
|
|
20
20
|
width: "100%",
|
|
21
|
-
...
|
|
21
|
+
...y?.inlineCSS
|
|
22
22
|
},
|
|
23
23
|
children: [
|
|
24
24
|
/* @__PURE__ */ p(a, {
|
|
@@ -37,9 +37,9 @@ function m({ children: m, action: h, showTooltip: g = !1, enableToggle: _ = !1,
|
|
|
37
37
|
variant: "h2B",
|
|
38
38
|
"aria-label": "선생님 경력 안내",
|
|
39
39
|
children: "경력"
|
|
40
|
-
}),
|
|
41
|
-
open:
|
|
42
|
-
onClose:
|
|
40
|
+
}), _ && /* @__PURE__ */ f(s, {
|
|
41
|
+
open: x,
|
|
42
|
+
onClose: M,
|
|
43
43
|
color: "secondary",
|
|
44
44
|
id: "career-section-tooltip",
|
|
45
45
|
bodyId: "career-section-tooltip-body",
|
|
@@ -50,7 +50,7 @@ function m({ children: m, action: h, showTooltip: g = !1, enableToggle: _ = !1,
|
|
|
50
50
|
noWrap: !0,
|
|
51
51
|
inlineCSS: {
|
|
52
52
|
display: "flex",
|
|
53
|
-
gap:
|
|
53
|
+
gap: b.content(1),
|
|
54
54
|
"& svg": {
|
|
55
55
|
width: "20px !important",
|
|
56
56
|
height: "20px !important",
|
|
@@ -75,35 +75,36 @@ function m({ children: m, action: h, showTooltip: g = !1, enableToggle: _ = !1,
|
|
|
75
75
|
name: "TooltipFill",
|
|
76
76
|
size: "small",
|
|
77
77
|
color: "grey.50",
|
|
78
|
-
onClick:
|
|
79
|
-
onKeyDown:
|
|
78
|
+
onClick: M,
|
|
79
|
+
onKeyDown: N,
|
|
80
80
|
"aria-label": "추가 정보 안내",
|
|
81
81
|
inlineCSS: { cursor: "pointer" }
|
|
82
82
|
})
|
|
83
83
|
})]
|
|
84
|
-
}), (
|
|
84
|
+
}), (k > 0 || A > 0) && /* @__PURE__ */ p(c, {
|
|
85
85
|
tag: "p",
|
|
86
86
|
variant: "h4R",
|
|
87
87
|
inlineCSS: { "& strong": { fontWeight: 700 } },
|
|
88
88
|
children: [
|
|
89
89
|
"총\xA0",
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
/* @__PURE__ */ f("strong", { children:
|
|
90
|
+
k > 0 && /* @__PURE__ */ p(d, { children: [/* @__PURE__ */ f("strong", { children: k }), "년"] }),
|
|
91
|
+
A > 0 && /* @__PURE__ */ p(d, { children: [
|
|
92
|
+
k > 0 && /* @__PURE__ */ f(d, { children: "\xA0" }),
|
|
93
|
+
/* @__PURE__ */ f("strong", { children: A }),
|
|
94
94
|
"개월"
|
|
95
95
|
] })
|
|
96
96
|
]
|
|
97
97
|
})]
|
|
98
98
|
}),
|
|
99
|
-
|
|
99
|
+
g,
|
|
100
|
+
E && /* @__PURE__ */ f(a, {
|
|
100
101
|
id: "career-section-career-items",
|
|
101
102
|
tag: "ul",
|
|
102
103
|
flexDirection: "column",
|
|
103
104
|
inlineCSS: { width: "inherit" },
|
|
104
|
-
children:
|
|
105
|
+
children: T.slice(0, !v || C ? void 0 : 3)
|
|
105
106
|
}),
|
|
106
|
-
|
|
107
|
+
v && D && /* @__PURE__ */ f(a, {
|
|
107
108
|
alignItems: "center",
|
|
108
109
|
justifyContent: "center",
|
|
109
110
|
mt: 2,
|
|
@@ -112,14 +113,14 @@ function m({ children: m, action: h, showTooltip: g = !1, enableToggle: _ = !1,
|
|
|
112
113
|
fullWidth: !0,
|
|
113
114
|
variant: "text",
|
|
114
115
|
color: "secondary",
|
|
115
|
-
endAdornment: /* @__PURE__ */ f(o, { name:
|
|
116
|
-
onClick:
|
|
116
|
+
endAdornment: /* @__PURE__ */ f(o, { name: C ? "ChevronUpLine" : "ChevronDownLine" }),
|
|
117
|
+
onClick: j,
|
|
117
118
|
"aria-controls": "career-section-career-items",
|
|
118
|
-
"aria-expanded":
|
|
119
|
-
children:
|
|
119
|
+
"aria-expanded": C,
|
|
120
|
+
children: C ? "접기" : "더 보기"
|
|
120
121
|
})
|
|
121
122
|
}),
|
|
122
|
-
!
|
|
123
|
+
!v && h && /* @__PURE__ */ f(a, {
|
|
123
124
|
mt: 4,
|
|
124
125
|
flexGrow: 1,
|
|
125
126
|
alignItems: "center",
|
|
@@ -2,8 +2,9 @@ import { ReactNode } from 'react';
|
|
|
2
2
|
import { FlexboxProps } from 'node_modules/@dotss/ui/Flexbox/Flexbox';
|
|
3
3
|
export interface CertificateSectionProps extends FlexboxProps {
|
|
4
4
|
action?: ReactNode;
|
|
5
|
+
description?: ReactNode;
|
|
5
6
|
showTooltip?: boolean;
|
|
6
7
|
enableToggle?: boolean;
|
|
7
8
|
}
|
|
8
|
-
declare function CertificateList({ children, action, showTooltip, enableToggle, ...props }: CertificateSectionProps): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
9
|
+
declare function CertificateList({ children, action, description, showTooltip, enableToggle, ...props }: CertificateSectionProps): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
9
10
|
export default CertificateList;
|
|
@@ -4,20 +4,20 @@ import { Button as i, Flexbox as a, Icon as o, Tooltip as s, Typography as c } f
|
|
|
4
4
|
import l from "@dotss/ui/core/useTheme";
|
|
5
5
|
import { jsx as u, jsxs as d } from "react/jsx-runtime";
|
|
6
6
|
//#region teacher/profile/components/CertificateSection/CertificateSection.tsx
|
|
7
|
-
function f({ children: f, action: p,
|
|
8
|
-
let { spacing:
|
|
9
|
-
(e.key === "Enter" || e.key === " ") &&
|
|
10
|
-
},
|
|
7
|
+
function f({ children: f, action: p, description: m, showTooltip: h = !1, enableToggle: g = !1, ..._ }) {
|
|
8
|
+
let { spacing: v } = l(), [y, b] = r(!1), [x, S] = r(!1), C = t.toArray(f).filter(n).filter((t) => t.type === e), w = C.length > 0, T = C.length > 3, E = () => b((e) => !e), D = (e) => {
|
|
9
|
+
(e.key === "Enter" || e.key === " ") && E();
|
|
10
|
+
}, O = () => S((e) => !e);
|
|
11
11
|
return /* @__PURE__ */ d(a, {
|
|
12
12
|
tag: "section",
|
|
13
13
|
flexDirection: "column",
|
|
14
14
|
alignItems: "flex-start",
|
|
15
15
|
"aria-labelledby": "certificate-section-title",
|
|
16
16
|
gap: 2,
|
|
17
|
-
...
|
|
17
|
+
..._,
|
|
18
18
|
inlineCSS: {
|
|
19
19
|
width: "100%",
|
|
20
|
-
...
|
|
20
|
+
..._?.inlineCSS
|
|
21
21
|
},
|
|
22
22
|
children: [
|
|
23
23
|
/* @__PURE__ */ d(a, {
|
|
@@ -30,9 +30,9 @@ function f({ children: f, action: p, showTooltip: m = !1, enableToggle: h = !1,
|
|
|
30
30
|
variant: "h2B",
|
|
31
31
|
"aria-label": "선생님 자격증 목록",
|
|
32
32
|
children: "자격증"
|
|
33
|
-
}),
|
|
34
|
-
open:
|
|
35
|
-
onClose:
|
|
33
|
+
}), h && /* @__PURE__ */ u(s, {
|
|
34
|
+
open: y,
|
|
35
|
+
onClose: E,
|
|
36
36
|
color: "secondary",
|
|
37
37
|
id: "certificate-section-tooltip",
|
|
38
38
|
bodyId: "certificate-section-tooltip-body",
|
|
@@ -43,7 +43,7 @@ function f({ children: f, action: p, showTooltip: m = !1, enableToggle: h = !1,
|
|
|
43
43
|
noWrap: !0,
|
|
44
44
|
inlineCSS: {
|
|
45
45
|
display: "flex",
|
|
46
|
-
gap:
|
|
46
|
+
gap: v.content(1),
|
|
47
47
|
"& svg": {
|
|
48
48
|
width: "20px !important",
|
|
49
49
|
height: "20px !important",
|
|
@@ -68,21 +68,22 @@ function f({ children: f, action: p, showTooltip: m = !1, enableToggle: h = !1,
|
|
|
68
68
|
name: "TooltipFill",
|
|
69
69
|
size: "small",
|
|
70
70
|
color: "grey.50",
|
|
71
|
-
onClick:
|
|
72
|
-
onKeyDown:
|
|
71
|
+
onClick: E,
|
|
72
|
+
onKeyDown: D,
|
|
73
73
|
"aria-label": "추가 정보 안내",
|
|
74
74
|
inlineCSS: { cursor: "pointer" }
|
|
75
75
|
})
|
|
76
76
|
})]
|
|
77
77
|
}),
|
|
78
|
-
|
|
78
|
+
m,
|
|
79
|
+
w && /* @__PURE__ */ u(a, {
|
|
79
80
|
id: "certificate-section-certificate-items",
|
|
80
81
|
tag: "ul",
|
|
81
82
|
flexDirection: "column",
|
|
82
83
|
inlineCSS: { width: "inherit" },
|
|
83
|
-
children:
|
|
84
|
+
children: C.slice(0, !g || x ? void 0 : 3)
|
|
84
85
|
}),
|
|
85
|
-
|
|
86
|
+
g && T && /* @__PURE__ */ u(a, {
|
|
86
87
|
alignItems: "center",
|
|
87
88
|
justifyContent: "center",
|
|
88
89
|
mt: 2,
|
|
@@ -91,14 +92,14 @@ function f({ children: f, action: p, showTooltip: m = !1, enableToggle: h = !1,
|
|
|
91
92
|
fullWidth: !0,
|
|
92
93
|
variant: "text",
|
|
93
94
|
color: "secondary",
|
|
94
|
-
endAdornment: /* @__PURE__ */ u(o, { name:
|
|
95
|
-
onClick:
|
|
95
|
+
endAdornment: /* @__PURE__ */ u(o, { name: x ? "ChevronUpLine" : "ChevronDownLine" }),
|
|
96
|
+
onClick: O,
|
|
96
97
|
"aria-controls": "certificate-section-certificate-items",
|
|
97
|
-
"aria-expanded":
|
|
98
|
-
children:
|
|
98
|
+
"aria-expanded": x,
|
|
99
|
+
children: x ? "접기" : "더 보기"
|
|
99
100
|
})
|
|
100
101
|
}),
|
|
101
|
-
!
|
|
102
|
+
!g && p && /* @__PURE__ */ u(a, {
|
|
102
103
|
mt: 4,
|
|
103
104
|
flexGrow: 1,
|
|
104
105
|
alignItems: "center",
|
|
@@ -2,8 +2,9 @@ import { ReactNode } from 'react';
|
|
|
2
2
|
import { FlexboxProps } from 'node_modules/@dotss/ui/Flexbox/Flexbox';
|
|
3
3
|
export interface EducationSectionProps extends FlexboxProps {
|
|
4
4
|
action?: ReactNode;
|
|
5
|
+
description?: ReactNode;
|
|
5
6
|
showTooltip?: boolean;
|
|
6
7
|
enableToggle?: boolean;
|
|
7
8
|
}
|
|
8
|
-
declare function EducationSection({ children, action, showTooltip, enableToggle, ...props }: EducationSectionProps): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
9
|
+
declare function EducationSection({ children, action, description, showTooltip, enableToggle, ...props }: EducationSectionProps): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
9
10
|
export default EducationSection;
|
|
@@ -4,20 +4,20 @@ import { Button as i, Flexbox as a, Icon as o, Tooltip as s, Typography as c } f
|
|
|
4
4
|
import l from "@dotss/ui/core/useTheme";
|
|
5
5
|
import { jsx as u, jsxs as d } from "react/jsx-runtime";
|
|
6
6
|
//#region teacher/profile/components/EducationSection/EducationSection.tsx
|
|
7
|
-
function f({ children: f, action: p,
|
|
8
|
-
let { spacing:
|
|
9
|
-
(e.key === "Enter" || e.key === " ") &&
|
|
10
|
-
},
|
|
7
|
+
function f({ children: f, action: p, description: m, showTooltip: h = !1, enableToggle: g = !1, ..._ }) {
|
|
8
|
+
let { spacing: v } = l(), [y, b] = r(!1), [x, S] = r(!1), C = t.toArray(f).filter(n).filter((t) => t.type === e), w = C.length > 0, T = C.length > 3, E = () => b((e) => !e), D = (e) => {
|
|
9
|
+
(e.key === "Enter" || e.key === " ") && E();
|
|
10
|
+
}, O = () => S((e) => !e);
|
|
11
11
|
return /* @__PURE__ */ d(a, {
|
|
12
12
|
tag: "section",
|
|
13
13
|
flexDirection: "column",
|
|
14
14
|
alignItems: "flex-start",
|
|
15
15
|
"aria-labelledby": "education-section-title",
|
|
16
16
|
gap: 2,
|
|
17
|
-
...
|
|
17
|
+
..._,
|
|
18
18
|
inlineCSS: {
|
|
19
19
|
width: "100%",
|
|
20
|
-
...
|
|
20
|
+
..._?.inlineCSS
|
|
21
21
|
},
|
|
22
22
|
children: [
|
|
23
23
|
/* @__PURE__ */ d(a, {
|
|
@@ -30,9 +30,9 @@ function f({ children: f, action: p, showTooltip: m = !1, enableToggle: h = !1,
|
|
|
30
30
|
variant: "h2B",
|
|
31
31
|
"aria-label": "선생님 학력 목록",
|
|
32
32
|
children: "학력"
|
|
33
|
-
}),
|
|
34
|
-
open:
|
|
35
|
-
onClose:
|
|
33
|
+
}), h && /* @__PURE__ */ u(s, {
|
|
34
|
+
open: y,
|
|
35
|
+
onClose: E,
|
|
36
36
|
color: "secondary",
|
|
37
37
|
id: "education-section-tooltip",
|
|
38
38
|
bodyId: "education-section-tooltip-body",
|
|
@@ -43,7 +43,7 @@ function f({ children: f, action: p, showTooltip: m = !1, enableToggle: h = !1,
|
|
|
43
43
|
noWrap: !0,
|
|
44
44
|
inlineCSS: {
|
|
45
45
|
display: "flex",
|
|
46
|
-
gap:
|
|
46
|
+
gap: v.content(1),
|
|
47
47
|
"& svg": {
|
|
48
48
|
width: "20px !important",
|
|
49
49
|
height: "20px !important",
|
|
@@ -68,21 +68,22 @@ function f({ children: f, action: p, showTooltip: m = !1, enableToggle: h = !1,
|
|
|
68
68
|
name: "TooltipFill",
|
|
69
69
|
size: "small",
|
|
70
70
|
color: "grey.50",
|
|
71
|
-
onClick:
|
|
72
|
-
onKeyDown:
|
|
71
|
+
onClick: E,
|
|
72
|
+
onKeyDown: D,
|
|
73
73
|
"aria-label": "추가 정보 안내",
|
|
74
74
|
inlineCSS: { cursor: "pointer" }
|
|
75
75
|
})
|
|
76
76
|
})]
|
|
77
77
|
}),
|
|
78
|
-
|
|
78
|
+
m,
|
|
79
|
+
w && /* @__PURE__ */ u(a, {
|
|
79
80
|
id: "education-section-education-items",
|
|
80
81
|
tag: "ul",
|
|
81
82
|
flexDirection: "column",
|
|
82
83
|
inlineCSS: { width: "inherit" },
|
|
83
|
-
children:
|
|
84
|
+
children: C.slice(0, !g || x ? void 0 : 3)
|
|
84
85
|
}),
|
|
85
|
-
|
|
86
|
+
g && T && /* @__PURE__ */ u(a, {
|
|
86
87
|
alignItems: "center",
|
|
87
88
|
justifyContent: "center",
|
|
88
89
|
mt: 2,
|
|
@@ -91,14 +92,14 @@ function f({ children: f, action: p, showTooltip: m = !1, enableToggle: h = !1,
|
|
|
91
92
|
fullWidth: !0,
|
|
92
93
|
variant: "text",
|
|
93
94
|
color: "secondary",
|
|
94
|
-
endAdornment: /* @__PURE__ */ u(o, { name:
|
|
95
|
-
onClick:
|
|
95
|
+
endAdornment: /* @__PURE__ */ u(o, { name: x ? "ChevronUpLine" : "ChevronDownLine" }),
|
|
96
|
+
onClick: O,
|
|
96
97
|
"aria-controls": "education-section-education-items",
|
|
97
|
-
"aria-expanded":
|
|
98
|
-
children:
|
|
98
|
+
"aria-expanded": x,
|
|
99
|
+
children: x ? "접기" : "더 보기"
|
|
99
100
|
})
|
|
100
101
|
}),
|
|
101
|
-
!
|
|
102
|
+
!g && p && /* @__PURE__ */ u(a, {
|
|
102
103
|
mt: 4,
|
|
103
104
|
flexGrow: 1,
|
|
104
105
|
alignItems: "center",
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
1
2
|
import { FlexboxProps } from 'node_modules/@dotss/ui/Flexbox/Flexbox';
|
|
2
3
|
export interface ParentReviewSectionProps extends FlexboxProps {
|
|
3
4
|
totalCount: number;
|
|
5
|
+
description?: ReactNode;
|
|
4
6
|
onClickViewAll?: () => void;
|
|
5
7
|
}
|
|
6
8
|
declare const ParentReviewSection: import('react').ForwardRefExoticComponent<Omit<ParentReviewSectionProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
|