@dotss/tictoccroc 0.0.0 → 0.0.2

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.
Files changed (159) hide show
  1. package/dist/LessonNotesSection-a2QNdQtj.js +196 -0
  2. package/dist/index.d.ts +1 -0
  3. package/dist/index.mjs +109 -52
  4. package/dist/shared/components/Calendar/Calendar.d.ts +3 -2
  5. package/dist/shared/components/Calendar/Calendar.mjs +1 -1
  6. package/dist/shared/components/Carousel/Carousel.d.ts +1 -1
  7. package/dist/shared/components/Carousel/Carousel.mjs +13 -13
  8. package/dist/shared/components/Carousel/CarouselSlide/CarouselSlide.d.ts +1 -1
  9. package/dist/shared/components/Carousel/CarouselSlide/CarouselSlide.mjs +1 -1
  10. package/dist/shared/components/Image/Image.d.ts +1 -1
  11. package/dist/shared/components/Image/Image.mjs +94 -93
  12. package/dist/shared/components/ImageZoomDialog/ImageBlock/ImageBlock.mjs +12 -26
  13. package/dist/shared/components/ImageZoomDialog/ImageZoomDialog.mjs +77 -98
  14. package/dist/shared/components/ImageZoomDialog/ImageZoomDialogContent/ImageZoomDialogContent.mjs +4 -4
  15. package/dist/shared/components/ImageZoomDialog/ImageZoomDialogFooter/ImageZoomDialogFooter.mjs +4 -4
  16. package/dist/shared/components/ImageZoomDialog/ImageZoomDialogToolbar/ImageZoomDialogToolbar.mjs +1 -1
  17. package/dist/shared/components/LoadingAnnouncer/LoadingAnnouncer.d.ts +7 -0
  18. package/dist/shared/components/LoadingAnnouncer/LoadingAnnouncer.mjs +19 -0
  19. package/dist/shared/components/LoadingAnnouncer/index.d.ts +3 -0
  20. package/dist/shared/components/LoadingAnnouncer/index.mjs +4 -0
  21. package/dist/shared/components/Masonry/Masonry.d.ts +12 -0
  22. package/dist/shared/components/Masonry/Masonry.mjs +220 -0
  23. package/dist/shared/components/Masonry/Masonry.utils.d.ts +7 -0
  24. package/dist/shared/components/Masonry/Masonry.utils.mjs +76 -0
  25. package/dist/shared/components/Masonry/MasonryBlock/MasonryBlock.d.ts +11 -0
  26. package/dist/shared/components/Masonry/MasonryBlock/MasonryBlock.mjs +77 -0
  27. package/dist/shared/components/Masonry/MasonryBlock/index.d.ts +3 -0
  28. package/dist/shared/components/Masonry/MasonryBlock/index.mjs +4 -0
  29. package/dist/shared/components/Masonry/index.d.ts +4 -0
  30. package/dist/shared/components/Masonry/index.mjs +6 -0
  31. package/dist/shared/components/Roller/Roller.d.ts +1 -2
  32. package/dist/shared/components/Roller/Roller.mjs +7 -120
  33. package/dist/shared/components/Roller/RollerBlock/RollerBlock.d.ts +1 -1
  34. package/dist/shared/components/Roller/RollerBlock/RollerBlock.mjs +1 -1
  35. package/dist/shared/components/Roller/index.mjs +3 -3
  36. package/dist/shared/components/Scheduler/ScheduleBlock/ScheduleBlock.d.ts +2 -5
  37. package/dist/shared/components/Scheduler/ScheduleBlock/ScheduleBlock.mjs +1 -1
  38. package/dist/shared/components/Scheduler/ScheduleEvent/ScheduleEvent.d.ts +1 -1
  39. package/dist/shared/components/Scheduler/ScheduleEvent/ScheduleEvent.mjs +2 -2
  40. package/dist/shared/components/Scheduler/Scheduler.d.ts +4 -4
  41. package/dist/shared/components/Scheduler/Scheduler.mjs +167 -178
  42. package/dist/shared/components/Swiper/Swiper.d.ts +1 -1
  43. package/dist/shared/components/Swiper/Swiper.mjs +77 -97
  44. package/dist/shared/components/Swiper/SwiperBlock/SwiperBlock.d.ts +1 -1
  45. package/dist/shared/components/Swiper/SwiperBlock/SwiperBlock.mjs +1 -1
  46. package/dist/shared/components/TimePicker/TimePicker.d.ts +2 -2
  47. package/dist/shared/components/TimePicker/TimePicker.mjs +1 -1
  48. package/dist/shared/components/index.d.ts +14 -1
  49. package/dist/shared/components/index.mjs +40 -28
  50. package/dist/shared/utils/birthDateToAge/birthDateToAge.test.mjs +9 -10
  51. package/dist/shared/utils/getDateRange/getDateRange.d.ts +1 -1
  52. package/dist/shared/utils/getDateRange/getDateRange.test.mjs +27 -28
  53. package/dist/shared/utils/getImageUrl/getImageUrl.test.mjs +19 -20
  54. package/dist/shared/utils/getTimeRange/getTimeRange.test.mjs +22 -23
  55. package/dist/shared/utils/getVimeoId/getVimeoId.test.mjs +11 -12
  56. package/dist/shared/utils/index.d.ts +1 -0
  57. package/dist/shared/utils/index.mjs +6 -4
  58. package/dist/shared/utils/isAndroid/isAndroid.test.mjs +9 -10
  59. package/dist/shared/utils/isApp/isApp.test.mjs +14 -15
  60. package/dist/shared/utils/isDesktop/isDesktop.test.mjs +8 -9
  61. package/dist/shared/utils/isServer/isServer.test.mjs +10 -11
  62. package/dist/shared/utils/objectToQueryString/objectToQueryString.test.mjs +7 -7
  63. package/dist/shared/utils/parseQueryString/parseQueryString.test.mjs +10 -11
  64. package/dist/shared/utils/share/index.d.ts +2 -0
  65. package/dist/shared/utils/share/index.mjs +4 -0
  66. package/dist/shared/utils/share/share.d.ts +9 -0
  67. package/dist/shared/utils/share/share.mjs +15 -0
  68. package/dist/shared/utils/share/share.test.d.ts +1 -0
  69. package/dist/shared/utils/share/share.test.mjs +31 -0
  70. package/dist/teacher/profile/components/AbilityCollection/AbilityBadge/AbilityBadge.d.ts +15 -0
  71. package/dist/teacher/profile/components/AbilityCollection/AbilityBadge/AbilityBadge.mjs +441 -0
  72. package/dist/teacher/profile/components/AbilityCollection/AbilityBadge/index.d.ts +3 -0
  73. package/dist/teacher/profile/components/AbilityCollection/AbilityBadge/index.mjs +5 -0
  74. package/dist/teacher/profile/components/AbilityCollection/AbilityCollection.d.ts +6 -0
  75. package/dist/teacher/profile/components/AbilityCollection/AbilityCollection.mjs +111 -0
  76. package/dist/teacher/profile/components/AbilityCollection/AbilityCollection.utils.d.ts +6 -0
  77. package/dist/teacher/profile/components/AbilityCollection/AbilityCollection.utils.mjs +43 -0
  78. package/dist/teacher/profile/components/AbilityCollection/index.d.ts +5 -0
  79. package/dist/teacher/profile/components/AbilityCollection/index.mjs +8 -0
  80. package/dist/teacher/profile/components/ActivityGallery/ActivityGallery.d.ts +11 -0
  81. package/dist/teacher/profile/components/ActivityGallery/ActivityGallery.mjs +101 -0
  82. package/dist/teacher/profile/components/ActivityGallery/ActivityGalleryItem/ActivityGalleryItem.d.ts +8 -0
  83. package/dist/teacher/profile/components/ActivityGallery/ActivityGalleryItem/ActivityGalleryItem.mjs +124 -0
  84. package/dist/teacher/profile/components/ActivityGallery/ActivityGalleryItem/index.d.ts +3 -0
  85. package/dist/teacher/profile/components/ActivityGallery/ActivityGalleryItem/index.mjs +4 -0
  86. package/dist/teacher/profile/components/ActivityGallery/index.d.ts +4 -0
  87. package/dist/teacher/profile/components/ActivityGallery/index.mjs +6 -0
  88. package/dist/teacher/profile/components/AvailableScheduleSection/AvailableScheduleSection.d.ts +22 -0
  89. package/dist/teacher/profile/components/AvailableScheduleSection/AvailableScheduleSection.mjs +179 -0
  90. package/dist/teacher/profile/components/AvailableScheduleSection/index.d.ts +3 -0
  91. package/dist/teacher/profile/components/AvailableScheduleSection/index.mjs +4 -0
  92. package/dist/teacher/profile/components/CareerSection/CareerItem/CareerItem.d.ts +10 -0
  93. package/dist/teacher/profile/components/CareerSection/CareerItem/CareerItem.mjs +136 -0
  94. package/dist/teacher/profile/components/CareerSection/CareerItem/index.d.ts +3 -0
  95. package/dist/teacher/profile/components/CareerSection/CareerItem/index.mjs +4 -0
  96. package/dist/teacher/profile/components/CareerSection/CareerSection.d.ts +9 -0
  97. package/dist/teacher/profile/components/CareerSection/CareerSection.mjs +185 -0
  98. package/dist/teacher/profile/components/CareerSection/index.d.ts +4 -0
  99. package/dist/teacher/profile/components/CareerSection/index.mjs +6 -0
  100. package/dist/teacher/profile/components/CertificationSection/CertificationItem/CertificationItem.d.ts +8 -0
  101. package/dist/teacher/profile/components/CertificationSection/CertificationItem/CertificationItem.mjs +91 -0
  102. package/dist/teacher/profile/components/CertificationSection/CertificationItem/index.d.ts +3 -0
  103. package/dist/teacher/profile/components/CertificationSection/CertificationItem/index.mjs +4 -0
  104. package/dist/teacher/profile/components/CertificationSection/CertificationSection.d.ts +9 -0
  105. package/dist/teacher/profile/components/CertificationSection/CertificationSection.mjs +152 -0
  106. package/dist/teacher/profile/components/CertificationSection/index.d.ts +4 -0
  107. package/dist/teacher/profile/components/CertificationSection/index.mjs +6 -0
  108. package/dist/teacher/profile/components/EducationSection/EducationItem/EducationItem.d.ts +9 -0
  109. package/dist/teacher/profile/components/EducationSection/EducationItem/EducationItem.mjs +105 -0
  110. package/dist/teacher/profile/components/EducationSection/EducationItem/index.d.ts +3 -0
  111. package/dist/teacher/profile/components/EducationSection/EducationItem/index.mjs +4 -0
  112. package/dist/teacher/profile/components/EducationSection/EducationSection.d.ts +9 -0
  113. package/dist/teacher/profile/components/EducationSection/EducationSection.mjs +152 -0
  114. package/dist/teacher/profile/components/EducationSection/index.d.ts +4 -0
  115. package/dist/teacher/profile/components/EducationSection/index.mjs +6 -0
  116. package/dist/teacher/profile/components/LessonNotesSection/LessonNote/LessonNote.d.ts +9 -0
  117. package/dist/teacher/profile/components/LessonNotesSection/LessonNote/LessonNote.mjs +54 -0
  118. package/dist/teacher/profile/components/LessonNotesSection/LessonNote/index.d.ts +3 -0
  119. package/dist/teacher/profile/components/LessonNotesSection/LessonNote/index.mjs +4 -0
  120. package/dist/teacher/profile/components/LessonNotesSection/LessonNotesSection.d.ts +7 -0
  121. package/dist/teacher/profile/components/LessonNotesSection/LessonNotesSection.mjs +8 -0
  122. package/dist/teacher/profile/components/LessonNotesSection/LessonNotesSection.utils.d.ts +4 -0
  123. package/dist/teacher/profile/components/LessonNotesSection/LessonNotesSection.utils.mjs +13 -0
  124. package/dist/teacher/profile/components/LessonNotesSection/index.d.ts +4 -0
  125. package/dist/teacher/profile/components/LessonNotesSection/index.mjs +6 -0
  126. package/dist/teacher/profile/components/ParentReviewSection/ParentReviewCard/ParentReviewCard.d.ts +10 -0
  127. package/dist/teacher/profile/components/ParentReviewSection/ParentReviewCard/ParentReviewCard.mjs +103 -0
  128. package/dist/teacher/profile/components/ParentReviewSection/ParentReviewCard/index.d.ts +3 -0
  129. package/dist/teacher/profile/components/ParentReviewSection/ParentReviewCard/index.mjs +4 -0
  130. package/dist/teacher/profile/components/ParentReviewSection/ParentReviewSection.d.ts +7 -0
  131. package/dist/teacher/profile/components/ParentReviewSection/ParentReviewSection.mjs +79 -0
  132. package/dist/teacher/profile/components/ParentReviewSection/ParentReviewSection.utils.d.ts +4 -0
  133. package/dist/teacher/profile/components/ParentReviewSection/ParentReviewSection.utils.mjs +13 -0
  134. package/dist/teacher/profile/components/ParentReviewSection/index.d.ts +4 -0
  135. package/dist/teacher/profile/components/ParentReviewSection/index.mjs +6 -0
  136. package/dist/teacher/profile/components/PreferredActivityKeywordGroup/PreferredActivityKeywordGroup.d.ts +9 -0
  137. package/dist/teacher/profile/components/PreferredActivityKeywordGroup/PreferredActivityKeywordGroup.mjs +37 -0
  138. package/dist/teacher/profile/components/PreferredActivityKeywordGroup/index.d.ts +3 -0
  139. package/dist/teacher/profile/components/PreferredActivityKeywordGroup/index.mjs +4 -0
  140. package/dist/teacher/profile/components/PreferredAgeGroup/PreferredAgeGroup.d.ts +8 -0
  141. package/dist/teacher/profile/components/PreferredAgeGroup/PreferredAgeGroup.mjs +32 -0
  142. package/dist/teacher/profile/components/PreferredAgeGroup/PreferredAgeGroup.utils.d.ts +18 -0
  143. package/dist/teacher/profile/components/PreferredAgeGroup/PreferredAgeGroup.utils.mjs +14 -0
  144. package/dist/teacher/profile/components/PreferredAgeGroup/index.d.ts +4 -0
  145. package/dist/teacher/profile/components/PreferredAgeGroup/index.mjs +6 -0
  146. package/dist/teacher/profile/components/ProfileSummary/ProfileSummary.d.ts +25 -1
  147. package/dist/teacher/profile/components/ProfileSummary/ProfileSummary.mjs +413 -5
  148. package/dist/teacher/profile/components/ProfileSummary/index.d.ts +2 -1
  149. package/dist/teacher/profile/components/StatBadgeCollection/StatBadge/StatBadge.d.ts +7 -0
  150. package/dist/teacher/profile/components/StatBadgeCollection/StatBadge/StatBadge.mjs +105 -0
  151. package/dist/teacher/profile/components/StatBadgeCollection/StatBadge/index.d.ts +3 -0
  152. package/dist/teacher/profile/components/StatBadgeCollection/StatBadge/index.mjs +4 -0
  153. package/dist/teacher/profile/components/StatBadgeCollection/StatBadgeCollection.d.ts +6 -0
  154. package/dist/teacher/profile/components/StatBadgeCollection/StatBadgeCollection.mjs +28 -0
  155. package/dist/teacher/profile/components/StatBadgeCollection/index.d.ts +4 -0
  156. package/dist/teacher/profile/components/StatBadgeCollection/index.mjs +6 -0
  157. package/dist/teacher/profile/components/index.d.ts +24 -0
  158. package/dist/teacher/profile/components/index.mjs +46 -0
  159. package/package.json +2 -2
@@ -0,0 +1,152 @@
1
+ import { jsxs as r, jsx as e } from "react/jsx-runtime";
2
+ import { useState as u, Children as p, isValidElement as v } from "react";
3
+ import { Flexbox as n, Typography as f, Tooltip as E, Icon as c, Button as j } from "@dotss/ui";
4
+ import k from "@dotss/ui/core/useTheme";
5
+ import D from "./EducationItem/EducationItem.mjs";
6
+ function B({
7
+ children: s,
8
+ hideTooltip: y = !1,
9
+ action: d,
10
+ enableToggle: h = !1,
11
+ ...i
12
+ }) {
13
+ const { spacing: l } = k(), [g, x] = u(!1), [o, S] = u(!1), m = p.toArray(s).filter(v).filter((t) => t.type === D), C = m.length > 0, b = m.length > 3, a = () => x((t) => !t), I = (t) => {
14
+ (t.key === "Enter" || t.key === " ") && a();
15
+ }, w = () => S((t) => !t);
16
+ return /* @__PURE__ */ r(
17
+ n,
18
+ {
19
+ tag: "section",
20
+ flexDirection: "column",
21
+ alignItems: "flex-start",
22
+ "aria-labelledby": "education-section-title",
23
+ gap: 2,
24
+ ...i,
25
+ inlineCSS: {
26
+ width: "100%",
27
+ ...i == null ? void 0 : i.inlineCSS
28
+ },
29
+ children: [
30
+ /* @__PURE__ */ r(n, { alignItems: "center", justifyContent: "center", gap: 1, children: [
31
+ /* @__PURE__ */ e(
32
+ f,
33
+ {
34
+ id: "education-section-title",
35
+ tag: "h2",
36
+ variant: "h2B",
37
+ "aria-label": "선생님 학력 목록",
38
+ children: "학력"
39
+ }
40
+ ),
41
+ !y && /* @__PURE__ */ e(
42
+ E,
43
+ {
44
+ open: g,
45
+ onClose: a,
46
+ color: "secondary",
47
+ role: "tooltip",
48
+ "aria-labelledby": "education-section-tooltip",
49
+ "aria-describedby": "education-section-tooltip-desc",
50
+ body: /* @__PURE__ */ r(
51
+ f,
52
+ {
53
+ id: "education-section-tooltip-desc",
54
+ tag: "p",
55
+ variant: "b4R",
56
+ color: "grey.white",
57
+ noWrap: !0,
58
+ inlineCSS: {
59
+ display: "flex",
60
+ gap: l.content(1),
61
+ "& svg": {
62
+ width: "20px !important",
63
+ height: "20px !important",
64
+ flexShrink: 0
65
+ }
66
+ },
67
+ children: [
68
+ "째깍악어가 확인한 정보는",
69
+ /* @__PURE__ */ e(c, { name: "InfoFill", size: "small", color: "tictoccroc-teacher.brand.green" }),
70
+ "인증 마크가 붙어요!"
71
+ ]
72
+ }
73
+ ),
74
+ inlineCSS: {
75
+ "&:after": {
76
+ transform: `translateX(-${100 + l.content(1)}px)`
77
+ }
78
+ },
79
+ style: {
80
+ top: -8,
81
+ left: `calc(50% + 100px - ${l.content(0.5)}px)`
82
+ },
83
+ children: /* @__PURE__ */ e(
84
+ c,
85
+ {
86
+ id: "education-section-tooltip",
87
+ role: "button",
88
+ tabIndex: 0,
89
+ name: "TooltipFill",
90
+ size: "small",
91
+ color: "grey.50",
92
+ onClick: a,
93
+ onKeyDown: I,
94
+ "aria-label": "추가 정보 안내",
95
+ inlineCSS: {
96
+ cursor: "pointer"
97
+ }
98
+ }
99
+ )
100
+ }
101
+ )
102
+ ] }),
103
+ C && /* @__PURE__ */ e(
104
+ n,
105
+ {
106
+ id: "education-section-education-items",
107
+ tag: "ul",
108
+ flexDirection: "column",
109
+ inlineCSS: { width: "inherit" },
110
+ children: p.toArray(s).slice(0, o ? void 0 : 3)
111
+ }
112
+ ),
113
+ h && b && /* @__PURE__ */ e(
114
+ n,
115
+ {
116
+ alignItems: "center",
117
+ justifyContent: "center",
118
+ mt: 2,
119
+ inlineCSS: { width: "inherit" },
120
+ children: /* @__PURE__ */ e(
121
+ j,
122
+ {
123
+ fullWidth: !0,
124
+ variant: "text",
125
+ color: "secondary",
126
+ endAdornment: /* @__PURE__ */ e(c, { name: o ? "ChevronUpLine" : "ChevronDownLine" }),
127
+ onClick: w,
128
+ "aria-controls": "education-section-education-items",
129
+ "aria-expanded": o,
130
+ children: o ? "접기" : "더 보기"
131
+ }
132
+ )
133
+ }
134
+ ),
135
+ !h && d && /* @__PURE__ */ e(
136
+ n,
137
+ {
138
+ mt: 4,
139
+ flexGrow: 1,
140
+ alignItems: "center",
141
+ justifyContent: "center",
142
+ inlineCSS: { width: "inherit" },
143
+ children: d
144
+ }
145
+ )
146
+ ]
147
+ }
148
+ );
149
+ }
150
+ export {
151
+ B as default
152
+ };
@@ -0,0 +1,4 @@
1
+ import { default as EducationSection, EducationSectionProps } from './EducationSection';
2
+ export type { EducationSectionProps };
3
+ export { default as EducationItem, type EducationItemProps } from './EducationItem';
4
+ export default EducationSection;
@@ -0,0 +1,6 @@
1
+ import o from "./EducationSection.mjs";
2
+ import { default as r } from "./EducationItem/EducationItem.mjs";
3
+ export {
4
+ r as EducationItem,
5
+ o as default
6
+ };
@@ -0,0 +1,9 @@
1
+ import { RollerBlockProps } from '../../../../../shared/components/Roller/RollerBlock';
2
+ export interface LessonNoteProps extends RollerBlockProps {
3
+ content: string;
4
+ keywords: string[];
5
+ regDatetime: string;
6
+ childrenInfo: Record<'childBirth' | 'childGender', string>[];
7
+ }
8
+ declare function LessonNote({ content, keywords, regDatetime, childrenInfo, ...props }: LessonNoteProps): import("@emotion/react/jsx-runtime").JSX.Element;
9
+ export default LessonNote;
@@ -0,0 +1,54 @@
1
+ import { jsxs as r, jsx as e } from "react/jsx-runtime";
2
+ import { Typography as l, Flexbox as g, Label as u } from "@dotss/ui";
3
+ import x from "@dotss/ui/core/useTheme";
4
+ import y from "dayjs";
5
+ import C from "../../../../../shared/components/Roller/RollerBlock/RollerBlock.mjs";
6
+ import { getChildLabel as S } from "../LessonNotesSection.utils.mjs";
7
+ function L({ content: h, keywords: t, regDatetime: s, childrenInfo: p, ...n }) {
8
+ var c, m;
9
+ const {
10
+ palette: { grey: f, brand: i }
11
+ } = x(), { label: o, other: a } = S(p), b = y(s);
12
+ return /* @__PURE__ */ r(
13
+ C,
14
+ {
15
+ p: 4,
16
+ flexDirection: "column",
17
+ gap: 3,
18
+ ...n,
19
+ inlineCSS: {
20
+ minHeight: 220,
21
+ borderRadius: 12,
22
+ backgroundColor: f.white,
23
+ ...n == null ? void 0 : n.inlineCSS
24
+ },
25
+ children: [
26
+ /* @__PURE__ */ e(l, { tag: "p", variant: "b4R", color: "grey.70", lineClamp: 6, inlineCSS: { flexGrow: 1 }, children: h }),
27
+ t.length > 0 && /* @__PURE__ */ e(g, { alignItems: "center", gap: 1, flexWrap: "wrap", children: t.map((d) => /* @__PURE__ */ e(u, { variant: "ghost", color: "yellow", size: "small", children: d }, `activity-keyword-${d}`)) }),
28
+ /* @__PURE__ */ r(g, { alignItems: "center", justifyContent: "space-between", gap: 1, children: [
29
+ /* @__PURE__ */ e(l, { tag: "p", variant: "b4R", color: "grey.70", children: b.format("YYYY-MM-DD") }),
30
+ /* @__PURE__ */ r(
31
+ l,
32
+ {
33
+ tag: "p",
34
+ variant: "b4M",
35
+ color: "grey.70",
36
+ inlineCSS: {
37
+ "& > span": {
38
+ color: o.includes("여아") ? (c = i.extend) == null ? void 0 : c.pink : (m = i.extend) == null ? void 0 : m.blue
39
+ }
40
+ },
41
+ children: [
42
+ /* @__PURE__ */ e("span", { children: o }),
43
+ a ? ` ${a}` : ""
44
+ ]
45
+ }
46
+ )
47
+ ] })
48
+ ]
49
+ }
50
+ );
51
+ }
52
+ export {
53
+ L as default
54
+ };
@@ -0,0 +1,3 @@
1
+ import { default as LessonNote, LessonNoteProps } from './LessonNote';
2
+ export type { LessonNoteProps };
3
+ export default LessonNote;
@@ -0,0 +1,4 @@
1
+ import e from "./LessonNote.mjs";
2
+ export {
3
+ e as default
4
+ };
@@ -0,0 +1,7 @@
1
+ import { FlexboxProps } from 'node_modules/@dotss/ui/Flexbox/Flexbox';
2
+ export interface LessonNotesSectionProps extends FlexboxProps {
3
+ totalCount: number;
4
+ onClickViewAll?: () => void;
5
+ }
6
+ declare const LessonNotesSection: import('react').ForwardRefExoticComponent<Omit<LessonNotesSectionProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
7
+ export default LessonNotesSection;
@@ -0,0 +1,8 @@
1
+ import "react/jsx-runtime";
2
+ import "react";
3
+ import "@dotss/ui";
4
+ import "@dotss/ui/core/useTheme";
5
+ import { L as a } from "../../../../LessonNotesSection-a2QNdQtj.js";
6
+ export {
7
+ a as default
8
+ };
@@ -0,0 +1,4 @@
1
+ export declare function getChildLabel(children: Record<'childBirth' | 'childGender', string>[]): {
2
+ label: string;
3
+ other: string;
4
+ };
@@ -0,0 +1,13 @@
1
+ import c from "../../../../shared/utils/birthDateToAge/birthDateToAge.mjs";
2
+ function b(t) {
3
+ if (!t || t.length === 0)
4
+ return { label: "", other: "" };
5
+ const [e] = t;
6
+ if (!(e != null && e.childBirth) || !(e != null && e.childGender))
7
+ return { label: "", other: "" };
8
+ const o = c(e == null ? void 0 : e.childBirth), n = (e == null ? void 0 : e.childGender) === "0" ? "남아" : "여아", r = `${o}세 ${n}`, a = t.length > 1 ? `외 ${t.length - 1}명` : "";
9
+ return { label: r, other: a };
10
+ }
11
+ export {
12
+ b as getChildLabel
13
+ };
@@ -0,0 +1,4 @@
1
+ import { default as LessonNotesSection, LessonNotesSectionProps } from './LessonNotesSection';
2
+ export type { LessonNotesSectionProps };
3
+ export { default as LessonNote, type LessonNoteProps } from './LessonNote';
4
+ export default LessonNotesSection;
@@ -0,0 +1,6 @@
1
+ import { L as e } from "../../../../LessonNotesSection-a2QNdQtj.js";
2
+ import { default as a } from "./LessonNote/LessonNote.mjs";
3
+ export {
4
+ a as LessonNote,
5
+ e as default
6
+ };
@@ -0,0 +1,10 @@
1
+ import { FlexboxProps } from 'node_modules/@dotss/ui/Flexbox/Flexbox';
2
+ export interface ParentReviewCardProps extends FlexboxProps {
3
+ score: number;
4
+ content: string;
5
+ careTypeLabel: string;
6
+ childrenInfo: Record<'childBirth' | 'childGender', string>[];
7
+ regDatetime: string;
8
+ }
9
+ declare function ParentReviewCard({ score, content, careTypeLabel, childrenInfo, regDatetime, ...props }: ParentReviewCardProps): import("@emotion/react/jsx-runtime").JSX.Element;
10
+ export default ParentReviewCard;
@@ -0,0 +1,103 @@
1
+ import { jsxs as n, jsx as e } from "react/jsx-runtime";
2
+ import { useState as f, useRef as z, useEffect as j } from "react";
3
+ import { Flexbox as i, Icon as u, Typography as t, Button as D } from "@dotss/ui";
4
+ import H from "@dotss/ui/core/useTheme";
5
+ import Y from "dayjs";
6
+ import { getChildLabel as k } from "../ParentReviewSection.utils.mjs";
7
+ function B({
8
+ score: l = 0,
9
+ content: c,
10
+ careTypeLabel: v,
11
+ childrenInfo: x,
12
+ regDatetime: w,
13
+ ...b
14
+ }) {
15
+ var h, g;
16
+ const {
17
+ palette: { brand: s }
18
+ } = H(), [y, C] = f(!1), [a, S] = f(!1), o = z(null), { label: d, other: p } = k(x), I = Y(w), R = () => S((r) => !r);
19
+ return j(() => {
20
+ const r = () => {
21
+ if (!o.current) return;
22
+ const m = o.current, E = parseInt(window.getComputedStyle(m).lineHeight), L = m.scrollHeight, M = Math.ceil(L / E);
23
+ C(M > 3);
24
+ };
25
+ return r(), window.addEventListener("resize", r), () => {
26
+ window.removeEventListener("resize", r);
27
+ };
28
+ }, [c]), /* @__PURE__ */ n(i, { tag: "li", flexDirection: "column", gap: 3, flexGrow: 1, ...b, children: [
29
+ /* @__PURE__ */ n(i, { alignItems: "center", gap: 1, children: [
30
+ /* @__PURE__ */ e(u, { name: "ReviewFill", size: "small", color: "tictoccroc-teacher.brand.yellow" }),
31
+ /* @__PURE__ */ e(t, { tag: "span", variant: "h4M", "aria-label": `${l}점`, children: l })
32
+ ] }),
33
+ /* @__PURE__ */ n(i, { alignItems: "center", justifyContent: "space-between", gap: 1, children: [
34
+ /* @__PURE__ */ n(i, { flexGrow: 1, gap: 1, alignItems: "center", children: [
35
+ /* @__PURE__ */ e(t, { tag: "span", variant: "b4M", color: "grey.70", children: v }),
36
+ /* @__PURE__ */ e(
37
+ t,
38
+ {
39
+ tag: "span",
40
+ variant: "b5M",
41
+ color: "grey.70",
42
+ textAlign: "center",
43
+ "aria-hidden": !0,
44
+ inlineCSS: {
45
+ width: 7,
46
+ height: 20,
47
+ lineHeight: "20px"
48
+ },
49
+ children: "•"
50
+ }
51
+ ),
52
+ /* @__PURE__ */ n(
53
+ t,
54
+ {
55
+ tag: "p",
56
+ variant: "b4M",
57
+ color: "grey.70",
58
+ inlineCSS: {
59
+ "& > span": {
60
+ color: d.includes("여아") ? (h = s.extend) == null ? void 0 : h.pink : (g = s.extend) == null ? void 0 : g.blue
61
+ }
62
+ },
63
+ children: [
64
+ /* @__PURE__ */ e("span", { children: d }),
65
+ p ? ` ${p}` : ""
66
+ ]
67
+ }
68
+ )
69
+ ] }),
70
+ /* @__PURE__ */ e(t, { tag: "span", variant: "b4R", color: "grey.70", children: I.format("YYYY년 M월 D일") })
71
+ ] }),
72
+ /* @__PURE__ */ n(i, { flexDirection: "column", children: [
73
+ /* @__PURE__ */ e(
74
+ t,
75
+ {
76
+ ref: o,
77
+ id: "parent-review-content",
78
+ tag: "p",
79
+ variant: "b4R",
80
+ lineClamp: a ? void 0 : 3,
81
+ children: c
82
+ }
83
+ ),
84
+ y && /* @__PURE__ */ e(
85
+ D,
86
+ {
87
+ variant: "text",
88
+ size: "xSmall",
89
+ color: "secondary",
90
+ endAdornment: /* @__PURE__ */ e(u, { name: a ? "ChevronUpLine" : "ChevronDownLine" }),
91
+ onClick: R,
92
+ "aria-expanded": a,
93
+ "aria-controls": "parent-review-content",
94
+ inlineCSS: { marginLeft: "auto" },
95
+ children: a ? "접기" : "더 보기"
96
+ }
97
+ )
98
+ ] })
99
+ ] });
100
+ }
101
+ export {
102
+ B as default
103
+ };
@@ -0,0 +1,3 @@
1
+ import { default as ParentReviewCard, ParentReviewCardProps } from './ParentReviewCard';
2
+ export { type ParentReviewCardProps };
3
+ export default ParentReviewCard;
@@ -0,0 +1,4 @@
1
+ import r from "./ParentReviewCard.mjs";
2
+ export {
3
+ r as default
4
+ };
@@ -0,0 +1,7 @@
1
+ import { FlexboxProps } from 'node_modules/@dotss/ui/Flexbox/Flexbox';
2
+ export interface ParentReviewSectionProps extends FlexboxProps {
3
+ totalCount: number;
4
+ onClickViewAll?: () => void;
5
+ }
6
+ declare const ParentReviewSection: import('react').ForwardRefExoticComponent<Omit<ParentReviewSectionProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
7
+ export default ParentReviewSection;
@@ -0,0 +1,79 @@
1
+ import { jsxs as n, jsx as t } from "react/jsx-runtime";
2
+ import { forwardRef as m } from "react";
3
+ import { Flexbox as i, Typography as l, Button as s, Icon as h } from "@dotss/ui";
4
+ import p from "@dotss/ui/core/useTheme";
5
+ const v = m(
6
+ ({ children: c, totalCount: o, onClickViewAll: a, ...e }, g) => {
7
+ const {
8
+ palette: { grey: d },
9
+ spacing: r
10
+ } = p();
11
+ return /* @__PURE__ */ n(
12
+ i,
13
+ {
14
+ ref: g,
15
+ tag: "section",
16
+ pl: 4,
17
+ pr: 4,
18
+ gap: 4,
19
+ flexDirection: "column",
20
+ "aria-labelledby": "parent-review-section-title",
21
+ ...e,
22
+ inlineCSS: {
23
+ width: "100%",
24
+ ...e == null ? void 0 : e.inlineCSS
25
+ },
26
+ children: [
27
+ /* @__PURE__ */ n(i, { alignItems: "center", justifyContent: "space-between", gap: 1, children: [
28
+ /* @__PURE__ */ t(i, { alignItems: "center", gap: 2, children: /* @__PURE__ */ n(l, { id: "parent-review-section-title", tag: "h2", variant: "h2B", children: [
29
+ "부모님 리뷰",
30
+ o > 0 && /* @__PURE__ */ n(
31
+ l,
32
+ {
33
+ tag: "span",
34
+ variant: "h4R",
35
+ color: "grey.70",
36
+ inlineCSS: { marginLeft: r.content(2), verticalAlign: 2 },
37
+ children: [
38
+ "(",
39
+ o.toLocaleString(),
40
+ "개)"
41
+ ]
42
+ }
43
+ )
44
+ ] }) }),
45
+ typeof a == "function" && /* @__PURE__ */ t(
46
+ s,
47
+ {
48
+ variant: "text",
49
+ size: "small",
50
+ color: "secondary",
51
+ endAdornment: /* @__PURE__ */ t(h, { name: "ChevronRightLine" }),
52
+ onClick: a,
53
+ children: "전체보기"
54
+ }
55
+ )
56
+ ] }),
57
+ /* @__PURE__ */ t(
58
+ i,
59
+ {
60
+ tag: "ul",
61
+ flexDirection: "column",
62
+ inlineCSS: {
63
+ "& > li + li": {
64
+ borderTop: `1px solid ${d[10]}`,
65
+ marginTop: r.content(5),
66
+ paddingTop: r.content(5)
67
+ }
68
+ },
69
+ children: c
70
+ }
71
+ )
72
+ ]
73
+ }
74
+ );
75
+ }
76
+ );
77
+ export {
78
+ v as default
79
+ };
@@ -0,0 +1,4 @@
1
+ export declare function getChildLabel(children: Record<'childBirth' | 'childGender', string>[]): {
2
+ label: string;
3
+ other: string;
4
+ };
@@ -0,0 +1,13 @@
1
+ import c from "../../../../shared/utils/birthDateToAge/birthDateToAge.mjs";
2
+ function b(t) {
3
+ if (!t || t.length === 0)
4
+ return { label: "", other: "" };
5
+ const [e] = t;
6
+ if (!(e != null && e.childBirth) || !(e != null && e.childGender))
7
+ return { label: "", other: "" };
8
+ const o = c(e == null ? void 0 : e.childBirth), n = (e == null ? void 0 : e.childGender) === "0" ? "남아" : "여아", r = `${o}세 ${n}`, a = t.length > 1 ? `외 ${t.length - 1}명` : "";
9
+ return { label: r, other: a };
10
+ }
11
+ export {
12
+ b as getChildLabel
13
+ };
@@ -0,0 +1,4 @@
1
+ import { default as ParentReviewSection, ParentReviewSectionProps } from './ParentReviewSection';
2
+ export { type ParentReviewSectionProps };
3
+ export { default as ParentReviewCard, type ParentReviewCardProps } from './ParentReviewCard';
4
+ export default ParentReviewSection;
@@ -0,0 +1,6 @@
1
+ import r from "./ParentReviewSection.mjs";
2
+ import { default as o } from "./ParentReviewCard/ParentReviewCard.mjs";
3
+ export {
4
+ o as ParentReviewCard,
5
+ r as default
6
+ };
@@ -0,0 +1,9 @@
1
+ import { ReactNode } from 'react';
2
+ import { FlexboxProps } from 'node_modules/@dotss/ui/Flexbox/Flexbox';
3
+ export interface PreferredActivityKeywordGroupProps extends FlexboxProps {
4
+ keywords: string[];
5
+ title?: string;
6
+ action?: ReactNode;
7
+ }
8
+ declare function PreferredActivityKeywordGroup({ keywords, title, action, ...props }: PreferredActivityKeywordGroupProps): import("@emotion/react/jsx-runtime").JSX.Element;
9
+ export default PreferredActivityKeywordGroup;
@@ -0,0 +1,37 @@
1
+ import { jsxs as d, jsx as i } from "react/jsx-runtime";
2
+ import { Flexbox as t, Typography as c, Label as g } from "@dotss/ui";
3
+ function f({
4
+ keywords: r,
5
+ title: a = "자신 있는 활동 키워드",
6
+ action: n,
7
+ ...e
8
+ }) {
9
+ return /* @__PURE__ */ d(
10
+ t,
11
+ {
12
+ tag: "section",
13
+ flexDirection: "column",
14
+ gap: 4,
15
+ "aria-labelledby": "preferred-activity-keyword-group-title",
16
+ ...e,
17
+ inlineCSS: { width: "100%", ...e == null ? void 0 : e.inlineCSS },
18
+ children: [
19
+ /* @__PURE__ */ i(c, { id: "preferred-activity-keyword-group-title", tag: "h2", variant: "h2B", children: a }),
20
+ r.length > 0 && /* @__PURE__ */ i(t, { tag: "ul", flexWrap: "wrap", gap: 2, alignItems: "center", children: r.map((l) => /* @__PURE__ */ i(g, { tag: "li", variant: "outlined", children: l }, l)) }),
21
+ n && /* @__PURE__ */ i(
22
+ t,
23
+ {
24
+ mt: 2,
25
+ alignItems: "center",
26
+ justifyContent: "center",
27
+ inlineCSS: { width: "inherit" },
28
+ children: n
29
+ }
30
+ )
31
+ ]
32
+ }
33
+ );
34
+ }
35
+ export {
36
+ f as default
37
+ };
@@ -0,0 +1,3 @@
1
+ import { default as PreferredActivityKeywordGroup, PreferredActivityKeywordGroupProps } from './PreferredActivityKeywordGroup';
2
+ export type { PreferredActivityKeywordGroupProps };
3
+ export default PreferredActivityKeywordGroup;
@@ -0,0 +1,4 @@
1
+ import e from "./PreferredActivityKeywordGroup.mjs";
2
+ export {
3
+ e as default
4
+ };
@@ -0,0 +1,8 @@
1
+ import { ReactNode } from 'react';
2
+ import { FlexboxProps } from 'node_modules/@dotss/ui/Flexbox/Flexbox';
3
+ export interface PreferredAgeGroupProps extends FlexboxProps {
4
+ keywords: string[];
5
+ action?: ReactNode;
6
+ }
7
+ declare function PreferredAgeGroup({ keywords, action, ...props }: PreferredAgeGroupProps): import("@emotion/react/jsx-runtime").JSX.Element;
8
+ export default PreferredAgeGroup;
@@ -0,0 +1,32 @@
1
+ import { jsxs as a, jsx as i } from "react/jsx-runtime";
2
+ import { Flexbox as t, Typography as g, Label as c } from "@dotss/ui";
3
+ function u({ keywords: r, action: n, ...e }) {
4
+ return /* @__PURE__ */ a(
5
+ t,
6
+ {
7
+ tag: "section",
8
+ flexDirection: "column",
9
+ gap: 4,
10
+ "aria-labelledby": "preferred-age-group-title",
11
+ ...e,
12
+ inlineCSS: { width: "100%", ...e == null ? void 0 : e.inlineCSS },
13
+ children: [
14
+ /* @__PURE__ */ i(g, { id: "preferred-age-group-title", tag: "h2", variant: "h2B", children: "자신 있는 아이 연령" }),
15
+ r.length > 0 && /* @__PURE__ */ i(t, { tag: "ul", flexWrap: "wrap", gap: 2, alignItems: "center", children: r.map((l) => /* @__PURE__ */ i(c, { tag: "li", variant: "outlined", color: "blue", children: l }, l)) }),
16
+ n && /* @__PURE__ */ i(
17
+ t,
18
+ {
19
+ mt: 2,
20
+ alignItems: "center",
21
+ justifyContent: "center",
22
+ inlineCSS: { width: "inherit" },
23
+ children: n
24
+ }
25
+ )
26
+ ]
27
+ }
28
+ );
29
+ }
30
+ export {
31
+ u as default
32
+ };