@dotss/tictoccroc 0.0.7 → 0.0.8
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/Scheduler/Scheduler.mjs +22 -21
- package/dist/shared/utils/getDateRange/getDateRange.mjs +16 -15
- package/dist/teacher/profile/components/AvailableScheduleSection/AvailableScheduleSection.mjs +11 -12
- package/dist/teacher/profile/components/ProfileSummary/ProfileSummary.mjs +114 -121
- package/dist/teacher/profile/components/StatBadgeCollection/StatBadge/StatBadge.mjs +15 -15
- package/package.json +1 -1
|
@@ -4,9 +4,9 @@ import { Flexbox as m, Box as pe, Typography as q } from "@dotss/ui";
|
|
|
4
4
|
import Ae from "@dotss/ui/core/useTheme";
|
|
5
5
|
import v from "dayjs";
|
|
6
6
|
import ve from "./ScheduleEvent/ScheduleEvent.mjs";
|
|
7
|
-
import { generateWeek as
|
|
8
|
-
const R = Array.from({ length:
|
|
9
|
-
const $ = Math.floor((
|
|
7
|
+
import { generateWeek as ee, getDayScheduleEvents as Re, resolvePositionedScheduleEventsForDate as Fe, getMinutesFromMidnight as we } from "./Scheduler.utils.mjs";
|
|
8
|
+
const R = Array.from({ length: 33 }).map((_, P) => {
|
|
9
|
+
const $ = Math.floor((P + 14) / 2) % 24, w = (P + 14) % 2 === 0 ? "00" : "30", T = v().hour($).minute(parseInt(w)), H = v(), D = H.hour(), U = H.minute(), L = D === $ && (U < 30 && w === "00" || U >= 30 && w === "30");
|
|
10
10
|
return {
|
|
11
11
|
time: T.format("HH:mm"),
|
|
12
12
|
label: T.format("A h시 m분"),
|
|
@@ -15,17 +15,17 @@ const R = Array.from({ length: 34 }).map((_, U) => {
|
|
|
15
15
|
});
|
|
16
16
|
function Ye({
|
|
17
17
|
children: _,
|
|
18
|
-
date:
|
|
18
|
+
date: P = v(),
|
|
19
19
|
legend: $,
|
|
20
20
|
minScheduleBlockHeight: w = 20,
|
|
21
21
|
maxScheduleBlockHeight: T,
|
|
22
22
|
renderScheduleBlock: H,
|
|
23
23
|
onDateChange: D,
|
|
24
|
-
...
|
|
24
|
+
...U
|
|
25
25
|
}) {
|
|
26
26
|
const {
|
|
27
27
|
palette: { grey: L }
|
|
28
|
-
} = Ae(), [M, F] = j(
|
|
28
|
+
} = Ae(), [M, F] = j(P.startOf("week")), [Y, ge] = j("100%"), [z, g] = j(0), [I, k] = j(0), [be, ye] = j(""), J = d(null), te = d(null), re = d(null), Q = d(null), ne = d(0), oe = d(0), N = d(!1), X = d(!1), C = d(!1), K = d(0), ae = d(0), se = d(0), ie = d(0), Z = d(!1), S = d(null), G = d(0), V = d(0), E = d(0), p = d(null), B = fe.toArray(_).filter(me).map((e) => {
|
|
29
29
|
if (e.type === ve) {
|
|
30
30
|
const { startDate: n, endDate: a } = e.props;
|
|
31
31
|
return {
|
|
@@ -36,9 +36,9 @@ function Ye({
|
|
|
36
36
|
}
|
|
37
37
|
return null;
|
|
38
38
|
}).filter(Boolean), $e = fe.toArray(_).filter(me).filter((e) => e.type !== ve), ce = [
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
39
|
+
ee(M.subtract(1, "week"), B),
|
|
40
|
+
ee(M, B),
|
|
41
|
+
ee(M.add(1, "week"), B)
|
|
42
42
|
], ue = (e, n) => (a) => {
|
|
43
43
|
const o = Number(a.currentTarget.dataset.row), i = Number(a.currentTarget.dataset.col);
|
|
44
44
|
g(o), k(i), ye(`${e.format("dddd")} ${e.format("D")}일 ${n}`);
|
|
@@ -190,8 +190,8 @@ function Ye({
|
|
|
190
190
|
return W(() => {
|
|
191
191
|
const e = () => {
|
|
192
192
|
var n, a, o;
|
|
193
|
-
if (
|
|
194
|
-
const i = ((a = (n =
|
|
193
|
+
if (Q.current) {
|
|
194
|
+
const i = ((a = (n = J.current) == null ? void 0 : n.parentElement) == null ? void 0 : a.offsetHeight) ?? 0, b = Q.current.offsetHeight, y = ((o = re.current) == null ? void 0 : o.offsetHeight) ?? 0;
|
|
195
195
|
let c = (i - b - y) / R.length;
|
|
196
196
|
c = c < w ? w : c, c = Math.min(c, T ?? c), ge(c);
|
|
197
197
|
}
|
|
@@ -200,6 +200,7 @@ function Ye({
|
|
|
200
200
|
window.removeEventListener("resize", e);
|
|
201
201
|
};
|
|
202
202
|
}, [w, T, $]), W(() => {
|
|
203
|
+
J.current;
|
|
203
204
|
const e = te.current;
|
|
204
205
|
if (!e) return;
|
|
205
206
|
const n = () => {
|
|
@@ -207,19 +208,19 @@ function Ye({
|
|
|
207
208
|
};
|
|
208
209
|
n();
|
|
209
210
|
const a = (t, r) => {
|
|
210
|
-
C.current || (S.current && (e.removeEventListener("transitionend", S.current), S.current = null), ne.current = t, oe.current = r,
|
|
211
|
+
C.current || (S.current && (e.removeEventListener("transitionend", S.current), S.current = null), ne.current = t, oe.current = r, Z.current = !1, N.current = !0, K.current = 0);
|
|
211
212
|
}, o = (t, r, l) => {
|
|
212
213
|
if (!N.current) return;
|
|
213
214
|
const u = t - ne.current, f = r - oe.current;
|
|
214
|
-
if (
|
|
215
|
+
if (K.current = u, !Z.current && (se.current = Math.abs(u), ie.current = Math.abs(f), Z.current = !0, ie.current > se.current)) {
|
|
215
216
|
N.current = !1;
|
|
216
217
|
return;
|
|
217
218
|
}
|
|
218
|
-
l.cancelable && l.preventDefault(), e.style.transition = "none", e.style.transform = `translate3d(${
|
|
219
|
+
l.cancelable && l.preventDefault(), l.stopPropagation(), e.style.transition = "none", e.style.transform = `translate3d(${K.current}px, 0, 0)`, e.style.cursor = "grabbing";
|
|
219
220
|
}, i = () => {
|
|
220
221
|
if (e.style.cursor = "grab", !N.current) return;
|
|
221
222
|
N.current = !1, X.current = !1, C.current = !0;
|
|
222
|
-
const t =
|
|
223
|
+
const t = K.current, r = ae.current, l = r * 0.2;
|
|
223
224
|
e.style.transition = "transform 300ms cubic-bezier(0.25, 1, 0.5, 1)", t > l ? (e.style.transform = `translate3d(${r}px, 0, 0)`, S.current = (u) => {
|
|
224
225
|
u.propertyName === "transform" && (G.current = requestAnimationFrame(() => {
|
|
225
226
|
F((f) => f.add(-1, "week")), V.current = requestAnimationFrame(() => {
|
|
@@ -248,7 +249,7 @@ function Ye({
|
|
|
248
249
|
D == null || D(M);
|
|
249
250
|
}, [M, D]), W(() => () => {
|
|
250
251
|
G.current && cancelAnimationFrame(G.current), V.current && cancelAnimationFrame(V.current), E.current && cancelAnimationFrame(E.current);
|
|
251
|
-
}, []), /* @__PURE__ */ A(m, { ref:
|
|
252
|
+
}, []), /* @__PURE__ */ A(m, { ref: J, flex: 1, flexDirection: "column", "aria-label": "일정 안내", ...U, children: [
|
|
252
253
|
$ && ($ == null ? void 0 : $.length) > 0 && /* @__PURE__ */ h(
|
|
253
254
|
m,
|
|
254
255
|
{
|
|
@@ -281,7 +282,7 @@ function Ye({
|
|
|
281
282
|
/* @__PURE__ */ A(
|
|
282
283
|
m,
|
|
283
284
|
{
|
|
284
|
-
ref:
|
|
285
|
+
ref: Q,
|
|
285
286
|
alignItems: "center",
|
|
286
287
|
pt: 1,
|
|
287
288
|
pb: 2,
|
|
@@ -491,7 +492,7 @@ function Ye({
|
|
|
491
492
|
}),
|
|
492
493
|
y.map(
|
|
493
494
|
({ children: c, startDate: s, endDate: t, totalColumns: r, columnIndex: l }) => {
|
|
494
|
-
const u = we(s), f = we(t), x = Math.floor((u - 7 * 60) / 30), Ee = (u - 7 * 60) / 30 * (Number(Y) || w), Le = (f - u) / 30 * (Number(Y) || w), de = 100 / r, Se = l * de,
|
|
495
|
+
const u = we(s), f = we(t), x = Math.floor((u - 7 * 60) / 30), Ee = (u - 7 * 60) / 30 * (Number(Y) || w), Le = (f - u) / 30 * (Number(Y) || w), de = 100 / r, Se = l * de, O = c;
|
|
495
496
|
return /* @__PURE__ */ h(
|
|
496
497
|
m,
|
|
497
498
|
{
|
|
@@ -503,17 +504,17 @@ function Ye({
|
|
|
503
504
|
height: `${Le - (x > 0 ? 1 : 0)}px`,
|
|
504
505
|
zIndex: 1
|
|
505
506
|
},
|
|
506
|
-
children: he(
|
|
507
|
+
children: he(O, {
|
|
507
508
|
role: "button",
|
|
508
509
|
tabIndex: a === 1 ? 0 : -1,
|
|
509
|
-
onKeyDown: ke(
|
|
510
|
+
onKeyDown: ke(O.props.onKeyDown),
|
|
510
511
|
"data-start-date": s,
|
|
511
512
|
"data-start-time": v(s).format("HH:mm"),
|
|
512
513
|
"data-end-date": t,
|
|
513
514
|
"data-end-time": v(t).format("HH:mm"),
|
|
514
515
|
"data-is-event": !0,
|
|
515
516
|
"aria-label": `${v(s).format("dddd")} ${v(s).format("D")}일 ${v(s).format("A h시")}부터 ${v(t).format("dddd")} ${v(t).format("D")}일 ${v(t).format("A h시")}까지의 일정`,
|
|
516
|
-
...
|
|
517
|
+
...O.props
|
|
517
518
|
})
|
|
518
519
|
},
|
|
519
520
|
`${s}-${t}-${l}-${r}`
|
|
@@ -1,21 +1,22 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
a
|
|
4
|
-
|
|
5
|
-
const { format: o = "YYYY-MM-DD" } = f, t = a(i), r = a(n);
|
|
6
|
-
if (!t.isValid() || !r.isValid())
|
|
1
|
+
import o from "dayjs";
|
|
2
|
+
function l(t, r, f = {}) {
|
|
3
|
+
const { format: s = "YYYY-MM-DD" } = f, a = o(t), n = o(r);
|
|
4
|
+
if (!a.isValid() || !n.isValid())
|
|
7
5
|
return [];
|
|
8
|
-
if (
|
|
6
|
+
if (a.isAfter(n))
|
|
9
7
|
return [];
|
|
10
|
-
const
|
|
11
|
-
let e =
|
|
12
|
-
for (; e
|
|
13
|
-
|
|
14
|
-
label: e.format(
|
|
8
|
+
const i = [];
|
|
9
|
+
let e = a;
|
|
10
|
+
for (; u(e, n); )
|
|
11
|
+
i.push({
|
|
12
|
+
label: e.format(s),
|
|
15
13
|
value: e.toDate()
|
|
16
|
-
}),
|
|
17
|
-
return
|
|
14
|
+
}), s === "YYYY-MM" ? e = e.add(1, "month") : e = e.add(1, "day");
|
|
15
|
+
return i;
|
|
16
|
+
}
|
|
17
|
+
function u(t, r) {
|
|
18
|
+
return t.isBefore(r) || t.isSame(r);
|
|
18
19
|
}
|
|
19
20
|
export {
|
|
20
|
-
|
|
21
|
+
l as default
|
|
21
22
|
};
|
package/dist/teacher/profile/components/AvailableScheduleSection/AvailableScheduleSection.mjs
CHANGED
|
@@ -6,13 +6,12 @@ import D from "@dotss/ui/Switch";
|
|
|
6
6
|
import j from "../../../../shared/components/Image/Image.mjs";
|
|
7
7
|
import A from "../../../../shared/components/Scheduler/Scheduler.mjs";
|
|
8
8
|
import "dayjs";
|
|
9
|
-
|
|
10
|
-
const U = w(
|
|
9
|
+
const M = w(
|
|
11
10
|
function({
|
|
12
|
-
children:
|
|
13
|
-
title:
|
|
11
|
+
children: g,
|
|
12
|
+
title: m = "수업 가능 일정",
|
|
14
13
|
action: c,
|
|
15
|
-
footer:
|
|
14
|
+
footer: d,
|
|
16
15
|
flat: s = !1,
|
|
17
16
|
schedulerProps: p,
|
|
18
17
|
enableToggle: h = !0,
|
|
@@ -21,9 +20,9 @@ const U = w(
|
|
|
21
20
|
}, v) {
|
|
22
21
|
const {
|
|
23
22
|
palette: { grey: b, background: f }
|
|
24
|
-
} = R(), [t, C] = S(!1), x = () => C((
|
|
23
|
+
} = R(), [t, C] = S(!1), x = () => C((r) => !r), y = (r) => {
|
|
25
24
|
var u;
|
|
26
|
-
return (u = i.onChange) == null ? void 0 : u.call(i,
|
|
25
|
+
return (u = i.onChange) == null ? void 0 : u.call(i, r);
|
|
27
26
|
};
|
|
28
27
|
return /* @__PURE__ */ l(
|
|
29
28
|
n,
|
|
@@ -33,14 +32,14 @@ const U = w(
|
|
|
33
32
|
flexDirection: "column",
|
|
34
33
|
gap: 4,
|
|
35
34
|
"aria-labelledby": "available-schedule-section-title",
|
|
36
|
-
"aria-describedby":
|
|
35
|
+
"aria-describedby": d ? "available-schedule-section-footer" : void 0,
|
|
37
36
|
...a,
|
|
38
37
|
inlineCSS: {
|
|
39
38
|
width: "100%",
|
|
40
39
|
...a == null ? void 0 : a.inlineCSS
|
|
41
40
|
},
|
|
42
41
|
children: [
|
|
43
|
-
/* @__PURE__ */ e(o, { id: "available-schedule-section-title", tag: "h2", variant: "h2B", children:
|
|
42
|
+
/* @__PURE__ */ e(o, { id: "available-schedule-section-title", tag: "h2", variant: "h2B", children: m }),
|
|
44
43
|
i.active && /* @__PURE__ */ l(n, { flexDirection: "column", gap: 2, children: [
|
|
45
44
|
/* @__PURE__ */ l(
|
|
46
45
|
n,
|
|
@@ -62,7 +61,7 @@ const U = w(
|
|
|
62
61
|
id: "available-schedule-section-scheduler",
|
|
63
62
|
"aria-labelledby": "available-schedule-section-title",
|
|
64
63
|
...p,
|
|
65
|
-
children:
|
|
64
|
+
children: g
|
|
66
65
|
}
|
|
67
66
|
),
|
|
68
67
|
h && /* @__PURE__ */ e(
|
|
@@ -88,7 +87,7 @@ const U = w(
|
|
|
88
87
|
]
|
|
89
88
|
}
|
|
90
89
|
),
|
|
91
|
-
|
|
90
|
+
d && /* @__PURE__ */ e(n, { id: "available-schedule-section-footer", tag: "footer", pl: 12, pr: 2, children: d })
|
|
92
91
|
] }),
|
|
93
92
|
typeof i.onChange == "function" && /* @__PURE__ */ l(
|
|
94
93
|
n,
|
|
@@ -189,5 +188,5 @@ const U = w(
|
|
|
189
188
|
}
|
|
190
189
|
);
|
|
191
190
|
export {
|
|
192
|
-
|
|
191
|
+
M as default
|
|
193
192
|
};
|
|
@@ -1,48 +1,49 @@
|
|
|
1
|
-
import { jsxs as n, jsx as e, Fragment as
|
|
2
|
-
import { useState as
|
|
3
|
-
import { Flexbox as
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
avatar: l,
|
|
11
|
-
introduction: i,
|
|
1
|
+
import { jsxs as n, jsx as e, Fragment as w } from "react/jsx-runtime";
|
|
2
|
+
import { useState as R, useRef as J, useEffect as B } from "react";
|
|
3
|
+
import { Flexbox as t, Typography as o, Icon as h, Label as G, Button as K } from "@dotss/ui";
|
|
4
|
+
import O from "@dotss/ui/core/useTheme";
|
|
5
|
+
import L from "dayjs";
|
|
6
|
+
import P from "../../../../shared/components/Image/Image.mjs";
|
|
7
|
+
function Q({
|
|
8
|
+
avatar: i,
|
|
9
|
+
introduction: r,
|
|
12
10
|
name: p,
|
|
13
|
-
grade:
|
|
14
|
-
activeHours:
|
|
15
|
-
rating:
|
|
16
|
-
reviewCount:
|
|
17
|
-
adronment:
|
|
18
|
-
lastActiveAt:
|
|
19
|
-
action:
|
|
11
|
+
grade: y,
|
|
12
|
+
activeHours: b = 0,
|
|
13
|
+
rating: f = 0,
|
|
14
|
+
reviewCount: g = 0,
|
|
15
|
+
adronment: k,
|
|
16
|
+
lastActiveAt: E,
|
|
17
|
+
action: D
|
|
20
18
|
}) {
|
|
21
19
|
const {
|
|
22
|
-
palette: { background:
|
|
20
|
+
palette: { background: C, brand: I, etc: z },
|
|
23
21
|
spacing: a
|
|
24
|
-
} =
|
|
25
|
-
|
|
26
|
-
|
|
22
|
+
} = O(), [m, M] = R(!1), [$, T] = R(!1), x = J(null), j = b >= 0 && g > 0, u = E ? L(E) : null, v = (l) => {
|
|
23
|
+
const c = L(), s = c.diff(l, "minute"), S = c.diff(l, "hour"), d = c.diff(l, "day");
|
|
24
|
+
return s < 1 ? "방금 전 활동" : s < 60 ? `${s}분 전 활동` : S < 24 ? `${S}시간 전 활동` : d < 7 ? `${d}일 전 활동` : d < 14 ? "1주 이내 활동" : d < 21 ? "2주 이내 활동" : d < 28 ? "3주 이내 활동" : d <= 30 ? "한 달 이내 활동" : null;
|
|
25
|
+
}, H = (l) => {
|
|
26
|
+
var c, s;
|
|
27
|
+
switch (l.key) {
|
|
27
28
|
case "Enter":
|
|
28
|
-
|
|
29
|
+
l.preventDefault(), (c = i.onClick) == null || c.call(i, l);
|
|
29
30
|
break;
|
|
30
31
|
case " ":
|
|
31
|
-
|
|
32
|
+
l.preventDefault(), (s = i.onClick) == null || s.call(i, l);
|
|
32
33
|
break;
|
|
33
34
|
}
|
|
34
|
-
},
|
|
35
|
-
return
|
|
36
|
-
const
|
|
37
|
-
if (!
|
|
38
|
-
const
|
|
39
|
-
|
|
35
|
+
}, F = () => M((l) => !l);
|
|
36
|
+
return B(() => {
|
|
37
|
+
const l = () => {
|
|
38
|
+
if (!x.current) return;
|
|
39
|
+
const c = x.current, s = parseInt(window.getComputedStyle(c).lineHeight), S = c.scrollHeight, d = Math.ceil(S / s);
|
|
40
|
+
T(d > 4);
|
|
40
41
|
};
|
|
41
|
-
return
|
|
42
|
-
window.removeEventListener("resize",
|
|
42
|
+
return l(), window.addEventListener("resize", l), () => {
|
|
43
|
+
window.removeEventListener("resize", l);
|
|
43
44
|
};
|
|
44
|
-
}, [
|
|
45
|
-
|
|
45
|
+
}, [r.aboutMe]), /* @__PURE__ */ n(
|
|
46
|
+
t,
|
|
46
47
|
{
|
|
47
48
|
tag: "section",
|
|
48
49
|
flexDirection: "column",
|
|
@@ -52,15 +53,15 @@ function X({
|
|
|
52
53
|
width: "100%"
|
|
53
54
|
},
|
|
54
55
|
children: [
|
|
55
|
-
/* @__PURE__ */ n(
|
|
56
|
-
/* @__PURE__ */ n(
|
|
56
|
+
/* @__PURE__ */ n(t, { alignItems: "flex-start", gap: 4, children: [
|
|
57
|
+
/* @__PURE__ */ n(t, { flexDirection: "column", gap: 2, alignItems: "center", justifyContent: "center", children: [
|
|
57
58
|
/* @__PURE__ */ n(
|
|
58
|
-
|
|
59
|
+
t,
|
|
59
60
|
{
|
|
60
|
-
role: typeof
|
|
61
|
-
tabIndex: typeof
|
|
62
|
-
onKeyDown:
|
|
63
|
-
onClick:
|
|
61
|
+
role: typeof i.onClick == "function" ? "button" : void 0,
|
|
62
|
+
tabIndex: typeof i.onClick == "function" ? 0 : -1,
|
|
63
|
+
onKeyDown: H,
|
|
64
|
+
onClick: i.onClick,
|
|
64
65
|
alignItems: "center",
|
|
65
66
|
justifyContent: "center",
|
|
66
67
|
flexDirection: "column",
|
|
@@ -72,22 +73,23 @@ function X({
|
|
|
72
73
|
width: 88,
|
|
73
74
|
height: 88,
|
|
74
75
|
overflow: "hidden",
|
|
75
|
-
backgroundColor:
|
|
76
|
-
cursor: typeof
|
|
76
|
+
backgroundColor: C.primary,
|
|
77
|
+
cursor: typeof i.onClick == "function" ? "pointer" : void 0
|
|
77
78
|
},
|
|
78
79
|
children: [
|
|
79
|
-
|
|
80
|
-
|
|
80
|
+
i.src && /* @__PURE__ */ e(
|
|
81
|
+
P,
|
|
81
82
|
{
|
|
82
83
|
width: 88,
|
|
83
84
|
height: 88,
|
|
84
|
-
src:
|
|
85
|
+
src: i.src,
|
|
85
86
|
alt: `${p} 선생님 프로필 이미지`,
|
|
86
|
-
fit: "cover"
|
|
87
|
+
fit: "cover",
|
|
88
|
+
borderRadius: 100
|
|
87
89
|
}
|
|
88
90
|
),
|
|
89
|
-
!
|
|
90
|
-
|
|
91
|
+
!i.src && !i.placeholder && /* @__PURE__ */ n(
|
|
92
|
+
t,
|
|
91
93
|
{
|
|
92
94
|
role: "status",
|
|
93
95
|
flexDirection: "column",
|
|
@@ -95,7 +97,7 @@ function X({
|
|
|
95
97
|
justifyContent: "center",
|
|
96
98
|
children: [
|
|
97
99
|
/* @__PURE__ */ e(
|
|
98
|
-
|
|
100
|
+
o,
|
|
99
101
|
{
|
|
100
102
|
tag: "p",
|
|
101
103
|
variant: "c3M",
|
|
@@ -104,14 +106,14 @@ function X({
|
|
|
104
106
|
children: "프로필 사진"
|
|
105
107
|
}
|
|
106
108
|
),
|
|
107
|
-
/* @__PURE__ */ e(
|
|
109
|
+
/* @__PURE__ */ e(o, { tag: "span", variant: "c5R", color: "etc.red", "aria-hidden": !0, children: "(필수)" })
|
|
108
110
|
]
|
|
109
111
|
}
|
|
110
112
|
),
|
|
111
|
-
!
|
|
112
|
-
|
|
113
|
+
!i.src && i.placeholder && i.placeholder,
|
|
114
|
+
i.status === "REJECTED" && /* @__PURE__ */ n(w, { children: [
|
|
113
115
|
/* @__PURE__ */ e(
|
|
114
|
-
|
|
116
|
+
t,
|
|
115
117
|
{
|
|
116
118
|
alignItems: "center",
|
|
117
119
|
justifyContent: "center",
|
|
@@ -122,13 +124,13 @@ function X({
|
|
|
122
124
|
width: "100%",
|
|
123
125
|
height: "100%",
|
|
124
126
|
opacity: 0.8,
|
|
125
|
-
backgroundColor:
|
|
127
|
+
backgroundColor: C.primary,
|
|
126
128
|
zIndex: 1
|
|
127
129
|
}
|
|
128
130
|
}
|
|
129
131
|
),
|
|
130
132
|
/* @__PURE__ */ e(
|
|
131
|
-
|
|
133
|
+
h,
|
|
132
134
|
{
|
|
133
135
|
name: "AlertFill",
|
|
134
136
|
size: "xSmall",
|
|
@@ -142,24 +144,15 @@ function X({
|
|
|
142
144
|
}
|
|
143
145
|
}
|
|
144
146
|
),
|
|
145
|
-
/* @__PURE__ */ e(
|
|
147
|
+
/* @__PURE__ */ e(o, { role: "status", visuallyHidden: !0, children: "프로필 사진이 반려되었어요. 다시 등록해주세요." })
|
|
146
148
|
] })
|
|
147
149
|
]
|
|
148
150
|
}
|
|
149
151
|
),
|
|
150
|
-
(
|
|
151
|
-
t,
|
|
152
|
-
{
|
|
153
|
-
tag: "p",
|
|
154
|
-
variant: "c3M",
|
|
155
|
-
color: "grey.50",
|
|
156
|
-
"aria-label": `마지막 활동 시간 ${c.fromNow()}`,
|
|
157
|
-
children: c.fromNow()
|
|
158
|
-
}
|
|
159
|
-
)
|
|
152
|
+
(u == null ? void 0 : u.isValid()) && /* @__PURE__ */ e(o, { tag: "p", variant: "c3M", color: "grey.50", children: v(u) })
|
|
160
153
|
] }),
|
|
161
154
|
/* @__PURE__ */ n(
|
|
162
|
-
|
|
155
|
+
t,
|
|
163
156
|
{
|
|
164
157
|
flexDirection: "column",
|
|
165
158
|
justifyContent: "flex-start",
|
|
@@ -169,7 +162,7 @@ function X({
|
|
|
169
162
|
flexGrow: 1,
|
|
170
163
|
children: [
|
|
171
164
|
/* @__PURE__ */ n(
|
|
172
|
-
|
|
165
|
+
t,
|
|
173
166
|
{
|
|
174
167
|
alignItems: "center",
|
|
175
168
|
gap: 2,
|
|
@@ -177,18 +170,18 @@ function X({
|
|
|
177
170
|
maxHeight: 30
|
|
178
171
|
},
|
|
179
172
|
children: [
|
|
180
|
-
|
|
181
|
-
|
|
173
|
+
y && /* @__PURE__ */ e(
|
|
174
|
+
G,
|
|
182
175
|
{
|
|
183
176
|
variant: "outlined",
|
|
184
177
|
size: "small",
|
|
185
178
|
color: "blue",
|
|
186
|
-
"aria-label": `${p} 선생님의 등급: ${
|
|
187
|
-
children:
|
|
179
|
+
"aria-label": `${p} 선생님의 등급: ${y}`,
|
|
180
|
+
children: y
|
|
188
181
|
}
|
|
189
182
|
),
|
|
190
183
|
/* @__PURE__ */ n(
|
|
191
|
-
|
|
184
|
+
o,
|
|
192
185
|
{
|
|
193
186
|
tag: "p",
|
|
194
187
|
variant: "h2B",
|
|
@@ -206,12 +199,12 @@ function X({
|
|
|
206
199
|
]
|
|
207
200
|
}
|
|
208
201
|
),
|
|
209
|
-
|
|
202
|
+
k
|
|
210
203
|
]
|
|
211
204
|
}
|
|
212
205
|
),
|
|
213
|
-
|
|
214
|
-
|
|
206
|
+
j && /* @__PURE__ */ n(
|
|
207
|
+
t,
|
|
215
208
|
{
|
|
216
209
|
pl: 4,
|
|
217
210
|
pr: 4,
|
|
@@ -222,25 +215,25 @@ function X({
|
|
|
222
215
|
gap: 5,
|
|
223
216
|
inlineCSS: {
|
|
224
217
|
borderRadius: 8,
|
|
225
|
-
backgroundColor:
|
|
218
|
+
backgroundColor: C.primary
|
|
226
219
|
},
|
|
227
220
|
children: [
|
|
228
|
-
/* @__PURE__ */ n(
|
|
229
|
-
/* @__PURE__ */ e(
|
|
221
|
+
/* @__PURE__ */ n(t, { alignItems: "center", role: "group", "aria-label": `누적 수업 ${b}시간`, children: [
|
|
222
|
+
/* @__PURE__ */ e(h, { name: "TimeLine", size: "xSmall", color: "grey.70" }),
|
|
230
223
|
/* @__PURE__ */ e(
|
|
231
|
-
|
|
224
|
+
o,
|
|
232
225
|
{
|
|
233
226
|
tag: "p",
|
|
234
227
|
variant: "h4B",
|
|
235
228
|
inlineCSS: {
|
|
236
229
|
marginLeft: a.content(1),
|
|
237
|
-
color:
|
|
230
|
+
color: I.primary.text
|
|
238
231
|
},
|
|
239
|
-
children:
|
|
232
|
+
children: b.toLocaleString()
|
|
240
233
|
}
|
|
241
234
|
),
|
|
242
235
|
/* @__PURE__ */ e(
|
|
243
|
-
|
|
236
|
+
o,
|
|
244
237
|
{
|
|
245
238
|
tag: "span",
|
|
246
239
|
variant: "b5R",
|
|
@@ -253,28 +246,28 @@ function X({
|
|
|
253
246
|
)
|
|
254
247
|
] }),
|
|
255
248
|
/* @__PURE__ */ n(
|
|
256
|
-
|
|
249
|
+
t,
|
|
257
250
|
{
|
|
258
251
|
alignItems: "center",
|
|
259
252
|
role: "group",
|
|
260
|
-
"aria-label":
|
|
253
|
+
"aria-label": f > 0 ? `평점 ${f}, 리뷰 ${g}개` : `평점 집계중, 리뷰 ${g}개`,
|
|
261
254
|
children: [
|
|
262
|
-
/* @__PURE__ */ e(
|
|
263
|
-
|
|
255
|
+
/* @__PURE__ */ e(h, { name: "ReviewFill", size: "xSmall", color: "grey.70" }),
|
|
256
|
+
f > 0 ? /* @__PURE__ */ n(w, { children: [
|
|
264
257
|
/* @__PURE__ */ e(
|
|
265
|
-
|
|
258
|
+
o,
|
|
266
259
|
{
|
|
267
260
|
tag: "p",
|
|
268
261
|
variant: "h4B",
|
|
269
262
|
inlineCSS: {
|
|
270
263
|
marginLeft: a.content(1),
|
|
271
|
-
color:
|
|
264
|
+
color: I.primary.text
|
|
272
265
|
},
|
|
273
|
-
children:
|
|
266
|
+
children: f.toLocaleString()
|
|
274
267
|
}
|
|
275
268
|
),
|
|
276
269
|
/* @__PURE__ */ n(
|
|
277
|
-
|
|
270
|
+
o,
|
|
278
271
|
{
|
|
279
272
|
tag: "span",
|
|
280
273
|
variant: "b5R",
|
|
@@ -284,13 +277,13 @@ function X({
|
|
|
284
277
|
},
|
|
285
278
|
children: [
|
|
286
279
|
"(",
|
|
287
|
-
|
|
280
|
+
g.toLocaleString(),
|
|
288
281
|
")"
|
|
289
282
|
]
|
|
290
283
|
}
|
|
291
284
|
)
|
|
292
285
|
] }) : /* @__PURE__ */ e(
|
|
293
|
-
|
|
286
|
+
o,
|
|
294
287
|
{
|
|
295
288
|
tag: "p",
|
|
296
289
|
variant: "h4R",
|
|
@@ -312,15 +305,15 @@ function X({
|
|
|
312
305
|
)
|
|
313
306
|
] }),
|
|
314
307
|
/* @__PURE__ */ n(
|
|
315
|
-
|
|
308
|
+
t,
|
|
316
309
|
{
|
|
317
310
|
flexDirection: "column",
|
|
318
311
|
inlineCSS: {
|
|
319
312
|
position: "relative"
|
|
320
313
|
},
|
|
321
314
|
children: [
|
|
322
|
-
(!
|
|
323
|
-
|
|
315
|
+
(!r.summary || !r.aboutMe) && !r.placeholder && /* @__PURE__ */ n(
|
|
316
|
+
o,
|
|
324
317
|
{
|
|
325
318
|
tag: "p",
|
|
326
319
|
variant: "b4R",
|
|
@@ -328,7 +321,7 @@ function X({
|
|
|
328
321
|
"aria-label": "작성된 프로필 소개가 없어요.",
|
|
329
322
|
inlineCSS: {
|
|
330
323
|
"& > span": {
|
|
331
|
-
color:
|
|
324
|
+
color: z.red
|
|
332
325
|
}
|
|
333
326
|
},
|
|
334
327
|
children: [
|
|
@@ -337,22 +330,22 @@ function X({
|
|
|
337
330
|
]
|
|
338
331
|
}
|
|
339
332
|
),
|
|
340
|
-
(!
|
|
341
|
-
|
|
342
|
-
|
|
333
|
+
(!r.summary || !r.aboutMe) && r.placeholder && r.placeholder,
|
|
334
|
+
r.summary && r.aboutMe && /* @__PURE__ */ n(w, { children: [
|
|
335
|
+
r.status === "REJECTED" && /* @__PURE__ */ e(o, { role: "status", visuallyHidden: !0, children: "프로필 소개가 반려되었어요. 다시 작성해주세요." }),
|
|
343
336
|
/* @__PURE__ */ n(
|
|
344
|
-
|
|
337
|
+
o,
|
|
345
338
|
{
|
|
346
339
|
tag: "dl",
|
|
347
340
|
variant: "b4M",
|
|
348
|
-
color:
|
|
341
|
+
color: r.status === "REJECTED" ? "grey.30" : void 0,
|
|
349
342
|
inlineCSS: {
|
|
350
343
|
display: "flex",
|
|
351
344
|
alignItems: "center"
|
|
352
345
|
},
|
|
353
346
|
children: [
|
|
354
|
-
|
|
355
|
-
|
|
347
|
+
r.status === "REJECTED" && /* @__PURE__ */ e(
|
|
348
|
+
h,
|
|
356
349
|
{
|
|
357
350
|
name: "AlertFill",
|
|
358
351
|
size: "xSmall",
|
|
@@ -362,55 +355,55 @@ function X({
|
|
|
362
355
|
}
|
|
363
356
|
}
|
|
364
357
|
),
|
|
365
|
-
/* @__PURE__ */ e(
|
|
366
|
-
/* @__PURE__ */ e("dd", { children:
|
|
358
|
+
/* @__PURE__ */ e(t, { tag: "dt", visuallyHidden: !0, children: "한 줄 소개" }),
|
|
359
|
+
/* @__PURE__ */ e("dd", { children: r.summary })
|
|
367
360
|
]
|
|
368
361
|
}
|
|
369
362
|
),
|
|
370
363
|
/* @__PURE__ */ n(
|
|
371
|
-
|
|
364
|
+
o,
|
|
372
365
|
{
|
|
373
|
-
ref:
|
|
366
|
+
ref: x,
|
|
374
367
|
id: "about-me",
|
|
375
368
|
tag: "dl",
|
|
376
369
|
variant: "b4R",
|
|
377
|
-
color:
|
|
378
|
-
lineClamp:
|
|
370
|
+
color: r.status === "REJECTED" ? "grey.30" : "grey.70",
|
|
371
|
+
lineClamp: m ? void 0 : 4,
|
|
379
372
|
inlineCSS: {
|
|
380
373
|
marginTop: a.content(2),
|
|
381
374
|
whiteSpace: "pre-wrap"
|
|
382
375
|
},
|
|
383
376
|
children: [
|
|
384
|
-
/* @__PURE__ */ e(
|
|
385
|
-
/* @__PURE__ */ e("dd", { children:
|
|
377
|
+
/* @__PURE__ */ e(t, { tag: "dt", visuallyHidden: !0, children: "자기소개" }),
|
|
378
|
+
/* @__PURE__ */ e("dd", { children: r.aboutMe })
|
|
386
379
|
]
|
|
387
380
|
}
|
|
388
381
|
)
|
|
389
382
|
] }),
|
|
390
|
-
|
|
391
|
-
|
|
383
|
+
$ && /* @__PURE__ */ e(
|
|
384
|
+
K,
|
|
392
385
|
{
|
|
393
386
|
variant: "text",
|
|
394
387
|
size: "xSmall",
|
|
395
388
|
color: "secondary",
|
|
396
|
-
endAdornment: /* @__PURE__ */ e(
|
|
397
|
-
onClick:
|
|
398
|
-
"aria-expanded":
|
|
389
|
+
endAdornment: /* @__PURE__ */ e(h, { name: m ? "ChevronUpLine" : "ChevronDownLine" }),
|
|
390
|
+
onClick: F,
|
|
391
|
+
"aria-expanded": m,
|
|
399
392
|
"aria-controls": "about-me",
|
|
400
393
|
inlineCSS: {
|
|
401
394
|
marginLeft: "auto"
|
|
402
395
|
},
|
|
403
|
-
children:
|
|
396
|
+
children: m ? "접기" : "더보기"
|
|
404
397
|
}
|
|
405
398
|
)
|
|
406
399
|
]
|
|
407
400
|
}
|
|
408
401
|
),
|
|
409
|
-
|
|
402
|
+
D
|
|
410
403
|
]
|
|
411
404
|
}
|
|
412
405
|
);
|
|
413
406
|
}
|
|
414
407
|
export {
|
|
415
|
-
|
|
408
|
+
Q as default
|
|
416
409
|
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { jsxs as
|
|
1
|
+
import { jsxs as i, jsx as a } from "react/jsx-runtime";
|
|
2
2
|
import { Label as e } from "@dotss/ui";
|
|
3
3
|
import s from "../../../../../shared/components/Image/Image.mjs";
|
|
4
|
-
function
|
|
5
|
-
return l === "creativeArt" ? /* @__PURE__ */
|
|
4
|
+
function h({ type: l, percent: t, ...r }) {
|
|
5
|
+
return l === "creativeArt" ? /* @__PURE__ */ i(
|
|
6
6
|
e,
|
|
7
7
|
{
|
|
8
8
|
variant: "ghost",
|
|
@@ -15,18 +15,18 @@ function n({ type: l, percent: t, ...i }) {
|
|
|
15
15
|
height: 16,
|
|
16
16
|
src: "https://dev-static.tictoccroc.co.kr/teacher/images/design-system/graphic/illustration3D/brush.png",
|
|
17
17
|
alt: "창의미술 상위 배지 아이콘",
|
|
18
|
-
"
|
|
18
|
+
role: "presentation"
|
|
19
19
|
}
|
|
20
20
|
),
|
|
21
21
|
"aria-label": `창의미술 상위 ${t}퍼센트`,
|
|
22
|
-
...
|
|
22
|
+
...r,
|
|
23
23
|
children: [
|
|
24
24
|
"창의미술 상위 ",
|
|
25
25
|
t,
|
|
26
26
|
"%"
|
|
27
27
|
]
|
|
28
28
|
}
|
|
29
|
-
) : l === "english" ? /* @__PURE__ */
|
|
29
|
+
) : l === "english" ? /* @__PURE__ */ i(
|
|
30
30
|
e,
|
|
31
31
|
{
|
|
32
32
|
variant: "ghost",
|
|
@@ -39,18 +39,18 @@ function n({ type: l, percent: t, ...i }) {
|
|
|
39
39
|
height: 16,
|
|
40
40
|
src: "https://dev-static.tictoccroc.co.kr/teacher/images/design-system/graphic/illustration3D/english.png",
|
|
41
41
|
alt: "영어 상위 배지 아이콘",
|
|
42
|
-
"
|
|
42
|
+
role: "presentation"
|
|
43
43
|
}
|
|
44
44
|
),
|
|
45
45
|
"aria-label": `영어 상위 ${t}퍼센트`,
|
|
46
|
-
...
|
|
46
|
+
...r,
|
|
47
47
|
children: [
|
|
48
48
|
"영어 상위 ",
|
|
49
49
|
t,
|
|
50
50
|
"%"
|
|
51
51
|
]
|
|
52
52
|
}
|
|
53
|
-
) : l === "learning" ? /* @__PURE__ */
|
|
53
|
+
) : l === "learning" ? /* @__PURE__ */ i(
|
|
54
54
|
e,
|
|
55
55
|
{
|
|
56
56
|
variant: "ghost",
|
|
@@ -63,18 +63,18 @@ function n({ type: l, percent: t, ...i }) {
|
|
|
63
63
|
height: 16,
|
|
64
64
|
src: "https://dev-static.tictoccroc.co.kr/teacher/images/design-system/graphic/illustration3D/pencil.png",
|
|
65
65
|
alt: "학습 상위 배지 아이콘",
|
|
66
|
-
"
|
|
66
|
+
role: "presentation"
|
|
67
67
|
}
|
|
68
68
|
),
|
|
69
69
|
"aria-label": `학습 상위 ${t}퍼센트`,
|
|
70
|
-
...
|
|
70
|
+
...r,
|
|
71
71
|
children: [
|
|
72
72
|
"학습 상위 ",
|
|
73
73
|
t,
|
|
74
74
|
"%"
|
|
75
75
|
]
|
|
76
76
|
}
|
|
77
|
-
) : /* @__PURE__ */
|
|
77
|
+
) : /* @__PURE__ */ i(
|
|
78
78
|
e,
|
|
79
79
|
{
|
|
80
80
|
variant: "ghost",
|
|
@@ -87,11 +87,11 @@ function n({ type: l, percent: t, ...i }) {
|
|
|
87
87
|
height: 16,
|
|
88
88
|
src: "https://dev-static.tictoccroc.co.kr/teacher/images/design-system/graphic/illustration3D/block.png",
|
|
89
89
|
alt: "놀이 상위 배지 아이콘",
|
|
90
|
-
"
|
|
90
|
+
role: "presentation"
|
|
91
91
|
}
|
|
92
92
|
),
|
|
93
93
|
"aria-label": `놀이 상위 ${t}퍼센트`,
|
|
94
|
-
...
|
|
94
|
+
...r,
|
|
95
95
|
children: [
|
|
96
96
|
"놀이 상위 ",
|
|
97
97
|
t,
|
|
@@ -101,5 +101,5 @@ function n({ type: l, percent: t, ...i }) {
|
|
|
101
101
|
);
|
|
102
102
|
}
|
|
103
103
|
export {
|
|
104
|
-
|
|
104
|
+
h as default
|
|
105
105
|
};
|
package/package.json
CHANGED