@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,441 @@
1
+ import { jsxs as r, Fragment as d, jsx as i } from "react/jsx-runtime";
2
+ import { Flexbox as a, Typography as t, BottomSheet as x, BottomSheetTitle as C, BottomSheetContent as f, Label as v, BottomSheetAction as R, Button as L } from "@dotss/ui";
3
+ import $ from "@dotss/ui/core/useTheme";
4
+ import y from "../../../../../shared/components/Image/Image.mjs";
5
+ import { getIconFileName as B } from "../AbilityCollection.utils.mjs";
6
+ function k({
7
+ name: e,
8
+ iconBasePath: h,
9
+ completed: c,
10
+ detail: { open: g, label: m, description: b, onClose: S, onClickApply: p },
11
+ ...o
12
+ }) {
13
+ const {
14
+ palette: { brand: l },
15
+ spacing: n
16
+ } = $(), s = `${h}/images/activities/${B(e, c)}`, u = ["창의악어", "영어악어", "영유아 악어"].includes(e) ? "ability" : "eductation";
17
+ return /* @__PURE__ */ r(d, { children: [
18
+ /* @__PURE__ */ r(
19
+ a,
20
+ {
21
+ role: "button",
22
+ flexDirection: "column",
23
+ alignItems: "center",
24
+ justifyContent: "center",
25
+ "aria-label": `${e} 배지 상세 정보 확인하기`,
26
+ "aria-describedby": `ability-badge-status-${e}`,
27
+ "aria-controls": `ability-badge-detail-${e}`,
28
+ "aria-expanded": g,
29
+ gap: 2,
30
+ ...o,
31
+ inlineCSS: { width: "100%", cursor: "pointer", ...o == null ? void 0 : o.inlineCSS },
32
+ children: [
33
+ /* @__PURE__ */ i(
34
+ y,
35
+ {
36
+ width: 48,
37
+ height: 48,
38
+ src: s,
39
+ alt: `${e} 배지`,
40
+ borderRadius: 12,
41
+ "aria-hidden": !0
42
+ }
43
+ ),
44
+ /* @__PURE__ */ i(
45
+ t,
46
+ {
47
+ variant: "c1M",
48
+ color: "grey.70",
49
+ textAlign: "center",
50
+ inlineCSS: {
51
+ wordBreak: "keep-all"
52
+ },
53
+ children: e
54
+ }
55
+ ),
56
+ /* @__PURE__ */ i(t, { id: `ability-badge-status-${e}`, role: "status", visuallyHidden: !0, children: c ? "획득 완료" : "미획득" })
57
+ ]
58
+ }
59
+ ),
60
+ /* @__PURE__ */ r(
61
+ x,
62
+ {
63
+ id: `ability-badge-detail-${e}`,
64
+ open: g,
65
+ onClose: S,
66
+ "aria-labelledby": `ability-badge-detail-name-${e}`,
67
+ "aria-describedby": `ability-badge-detail-description-${e}`,
68
+ children: [
69
+ /* @__PURE__ */ i(C, { onClose: S, autoFocus: !0, hideLine: !0 }),
70
+ /* @__PURE__ */ r(
71
+ f,
72
+ {
73
+ inlineCSS: {
74
+ alignItems: "center",
75
+ justifyContent: "center",
76
+ gap: n.content(4)
77
+ },
78
+ children: [
79
+ /* @__PURE__ */ i(
80
+ y,
81
+ {
82
+ width: 80,
83
+ height: 80,
84
+ src: s,
85
+ alt: `${e} 배지`,
86
+ borderRadius: 12,
87
+ "aria-hidden": !0
88
+ }
89
+ ),
90
+ /* @__PURE__ */ r(
91
+ a,
92
+ {
93
+ flexDirection: "column",
94
+ alignItems: "center",
95
+ justifyContent: "center",
96
+ gap: 2,
97
+ mb: c ? 4 : void 0,
98
+ children: [
99
+ /* @__PURE__ */ i(t, { tag: "h3", variant: "h3B", id: `ability-badge-detail-name-${e}`, children: e }),
100
+ /* @__PURE__ */ i(v, { variant: "outlined", color: "blue", size: "small", children: m }),
101
+ /* @__PURE__ */ i(
102
+ t,
103
+ {
104
+ variant: "c1M",
105
+ textAlign: "center",
106
+ color: "grey.70",
107
+ id: `ability-badge-detail-description-${e}`,
108
+ inlineCSS: {
109
+ whiteSpace: "pre-line"
110
+ },
111
+ children: b
112
+ }
113
+ )
114
+ ]
115
+ }
116
+ ),
117
+ !c && /* @__PURE__ */ r(
118
+ a,
119
+ {
120
+ mt: 2,
121
+ mb: 2,
122
+ pl: 4,
123
+ pr: 4,
124
+ pt: 5,
125
+ pb: 5,
126
+ gap: 1,
127
+ flexGrow: 1,
128
+ flexDirection: "column",
129
+ inlineCSS: {
130
+ width: "100%",
131
+ backgroundColor: l.primary.disable,
132
+ borderRadius: 12
133
+ },
134
+ children: [
135
+ /* @__PURE__ */ i(t, { tag: "h3", variant: "h5B", inlineCSS: { color: l.primary.text }, children: "배지 취득 방법" }),
136
+ /* @__PURE__ */ r(
137
+ a,
138
+ {
139
+ tag: "ul",
140
+ flexDirection: "column",
141
+ gap: 1,
142
+ inlineCSS: {
143
+ listStyle: u === "ability" ? "decimal" : "disc",
144
+ padding: 0,
145
+ paddingLeft: n.content(4),
146
+ "& li": {
147
+ padding: 0
148
+ }
149
+ },
150
+ children: [
151
+ e === "창의악어" && /* @__PURE__ */ r(d, { children: [
152
+ /* @__PURE__ */ r(
153
+ t,
154
+ {
155
+ tag: "li",
156
+ variant: "c3B",
157
+ inlineCSS: {
158
+ marginLeft: n.content(1),
159
+ color: l.primary.text
160
+ },
161
+ children: [
162
+ "서류 전형",
163
+ /* @__PURE__ */ r(
164
+ a,
165
+ {
166
+ tag: "ul",
167
+ flexDirection: "column",
168
+ inlineCSS: {
169
+ listStyle: "disc",
170
+ padding: 0,
171
+ "& li": {
172
+ padding: 0
173
+ }
174
+ },
175
+ children: [
176
+ /* @__PURE__ */ i(
177
+ t,
178
+ {
179
+ tag: "li",
180
+ variant: "b5R",
181
+ inlineCSS: {
182
+ display: "list-item",
183
+ listStyle: '"• "',
184
+ color: l.primary.text
185
+ },
186
+ children: "서류 전형 대상 : 미술, 유아동 관련 전공자로 현장 교육 경력 1년 이상"
187
+ }
188
+ ),
189
+ /* @__PURE__ */ i(
190
+ t,
191
+ {
192
+ tag: "li",
193
+ variant: "b5R",
194
+ inlineCSS: {
195
+ display: "list-item",
196
+ listStyle: '"• "',
197
+ color: l.primary.text
198
+ },
199
+ children: "제출 서류 : 전공 확인이 가능한 졸업증명서과 경력증명서"
200
+ }
201
+ )
202
+ ]
203
+ }
204
+ )
205
+ ]
206
+ }
207
+ ),
208
+ /* @__PURE__ */ r(
209
+ t,
210
+ {
211
+ tag: "li",
212
+ variant: "c3B",
213
+ inlineCSS: {
214
+ marginTop: n.content(1),
215
+ marginLeft: n.content(1),
216
+ color: l.primary.text
217
+ },
218
+ children: [
219
+ "실기 전형",
220
+ /* @__PURE__ */ r(
221
+ a,
222
+ {
223
+ tag: "ul",
224
+ flexDirection: "column",
225
+ inlineCSS: {
226
+ listStyle: "disc",
227
+ padding: 0,
228
+ "& li": {
229
+ padding: 0
230
+ }
231
+ },
232
+ children: [
233
+ /* @__PURE__ */ i(
234
+ t,
235
+ {
236
+ tag: "li",
237
+ variant: "b5R",
238
+ inlineCSS: {
239
+ display: "list-item",
240
+ listStyle: '"• "',
241
+ color: l.primary.text
242
+ },
243
+ children: "작품 사진"
244
+ }
245
+ ),
246
+ /* @__PURE__ */ i(
247
+ t,
248
+ {
249
+ tag: "li",
250
+ variant: "b5R",
251
+ inlineCSS: {
252
+ display: "list-item",
253
+ listStyle: '"• "',
254
+ color: l.primary.text
255
+ },
256
+ children: "수업 활동 계획서"
257
+ }
258
+ )
259
+ ]
260
+ }
261
+ )
262
+ ]
263
+ }
264
+ ),
265
+ /* @__PURE__ */ r(
266
+ t,
267
+ {
268
+ tag: "li",
269
+ variant: "b5R",
270
+ inlineCSS: {
271
+ display: "list-item",
272
+ listStyle: '"* "',
273
+ marginLeft: n.content(-1),
274
+ marginTop: n.content(1),
275
+ color: l.primary.text
276
+ },
277
+ children: [
278
+ "창의미술 수업이란?",
279
+ /* @__PURE__ */ i(
280
+ a,
281
+ {
282
+ tag: "ul",
283
+ flexDirection: "column",
284
+ inlineCSS: {
285
+ listStyle: "disc",
286
+ padding: 0,
287
+ marginLeft: n.content(2),
288
+ "& li": {
289
+ padding: 0
290
+ }
291
+ },
292
+ children: /* @__PURE__ */ i(
293
+ t,
294
+ {
295
+ tag: "li",
296
+ variant: "b5R",
297
+ inlineCSS: {
298
+ display: "list-item",
299
+ listStyle: '"• "',
300
+ color: l.primary.text
301
+ },
302
+ children: "아이들과 창의적인 미술 수업을 진행하는 돌봄으로 커리큘럼은 부모님과 상의하여 정해요."
303
+ }
304
+ )
305
+ }
306
+ )
307
+ ]
308
+ }
309
+ )
310
+ ] }),
311
+ e === "영어악어" && /* @__PURE__ */ r(d, { children: [
312
+ /* @__PURE__ */ i(
313
+ t,
314
+ {
315
+ tag: "li",
316
+ variant: "b5R",
317
+ inlineCSS: {
318
+ marginLeft: n.content(1),
319
+ color: l.primary.text
320
+ },
321
+ children: "째깍악어가 제시하는 주제에 대한 답변을 영어로 녹음한 음성파일을 제출해요."
322
+ }
323
+ ),
324
+ /* @__PURE__ */ i(
325
+ t,
326
+ {
327
+ tag: "li",
328
+ variant: "b5R",
329
+ inlineCSS: {
330
+ marginLeft: n.content(1),
331
+ color: l.primary.text
332
+ },
333
+ children: "영어권 국가 거주 또는 학업, 연수 등 경험에 대해 서술해요."
334
+ }
335
+ ),
336
+ /* @__PURE__ */ i(
337
+ t,
338
+ {
339
+ tag: "li",
340
+ variant: "b5R",
341
+ inlineCSS: {
342
+ marginLeft: n.content(1),
343
+ color: l.primary.text
344
+ },
345
+ children: "공인 어학 성적 등 증빙 가능 서류가 있다면 제출해요. (선택)"
346
+ }
347
+ )
348
+ ] }),
349
+ e === "영유아 악어" && /* @__PURE__ */ r(d, { children: [
350
+ /* @__PURE__ */ i(
351
+ t,
352
+ {
353
+ tag: "li",
354
+ variant: "b5R",
355
+ inlineCSS: {
356
+ marginLeft: n.content(1),
357
+ color: l.primary.text
358
+ },
359
+ children: "육아 경험, 기저귀 갈이 경험 유무 등 영유아 돌봄에 필요한 기본 능력이 있어야 해요."
360
+ }
361
+ ),
362
+ /* @__PURE__ */ i(
363
+ t,
364
+ {
365
+ tag: "li",
366
+ variant: "b5R",
367
+ inlineCSS: {
368
+ marginLeft: n.content(1),
369
+ color: l.primary.text
370
+ },
371
+ children: "신청서를 제출하면 째깍악어에서 심사 후 배지를 부여해요."
372
+ }
373
+ )
374
+ ] }),
375
+ [
376
+ "산업안전 보건교육",
377
+ "아동학대 예방교육",
378
+ "응급상황 대처교육",
379
+ "놀이돌봄 기초교육"
380
+ ].includes(e) && /* @__PURE__ */ r(d, { children: [
381
+ /* @__PURE__ */ i(
382
+ t,
383
+ {
384
+ tag: "li",
385
+ variant: "b5R",
386
+ inlineCSS: {
387
+ display: "list-item",
388
+ listStyle: '"• "',
389
+ marginLeft: n.content(1),
390
+ color: l.primary.text
391
+ },
392
+ children: "신청 버튼을 누르면 째깍캠퍼스 강의로 이동해요."
393
+ }
394
+ ),
395
+ /* @__PURE__ */ i(
396
+ t,
397
+ {
398
+ tag: "li",
399
+ variant: "b5R",
400
+ inlineCSS: {
401
+ display: "list-item",
402
+ listStyle: '"• "',
403
+ marginLeft: n.content(1),
404
+ color: l.primary.text
405
+ },
406
+ children: "수강을 완료하면 배지가 자동 부여되며, 최대 하루 뒤 앱에 표시돼요."
407
+ }
408
+ ),
409
+ /* @__PURE__ */ i(
410
+ t,
411
+ {
412
+ tag: "li",
413
+ variant: "b5R",
414
+ inlineCSS: {
415
+ display: "list-item",
416
+ listStyle: '"• "',
417
+ marginLeft: n.content(1),
418
+ color: l.primary.text
419
+ },
420
+ children: "취득한 배지는 부모님에게 보여져요. 배지를 획득하여 선생님의 신뢰도를 높여보세요!"
421
+ }
422
+ )
423
+ ] })
424
+ ]
425
+ }
426
+ )
427
+ ]
428
+ }
429
+ )
430
+ ]
431
+ }
432
+ ),
433
+ !c && /* @__PURE__ */ i(R, { children: /* @__PURE__ */ i(L, { size: "large", onClick: p, children: "신청하기" }) })
434
+ ]
435
+ }
436
+ )
437
+ ] });
438
+ }
439
+ export {
440
+ k as default
441
+ };
@@ -0,0 +1,3 @@
1
+ import { default as AbilityBadge, AbilityBadgeProps } from './AbilityBadge';
2
+ export { AbilityBadge, type AbilityBadgeProps };
3
+ export default AbilityBadge;
@@ -0,0 +1,5 @@
1
+ import i from "./AbilityBadge.mjs";
2
+ export {
3
+ i as AbilityBadge,
4
+ i as default
5
+ };
@@ -0,0 +1,6 @@
1
+ import { FlexboxProps } from 'node_modules/@dotss/ui/Flexbox/Flexbox';
2
+ export interface AbilityCollectionProps extends FlexboxProps {
3
+ enableToggle?: boolean;
4
+ }
5
+ declare function AbilityCollection({ children, enableToggle, ...props }: AbilityCollectionProps): import("@emotion/react/jsx-runtime").JSX.Element;
6
+ export default AbilityCollection;
@@ -0,0 +1,111 @@
1
+ import { jsxs as T, jsx as n } from "react/jsx-runtime";
2
+ import { useState as m, useRef as N, Children as A, isValidElement as I, cloneElement as q } from "react";
3
+ import { Flexbox as l, Typography as B, Button as j, Icon as G } from "@dotss/ui";
4
+ import U from "@dotss/ui/core/useTheme";
5
+ import z from "./AbilityBadge/AbilityBadge.mjs";
6
+ function Q({ children: $, enableToggle: s = !1, ...a }) {
7
+ const { spacing: u } = U(), [i, R] = m(!1), [k, d] = m(0), [F, f] = m(0), c = N(null), w = A.toArray($).filter(I).filter((e) => e.type === z), D = () => R((e) => !e), E = (e) => (t) => {
8
+ const r = Number(t.currentTarget.getAttribute("data-row") || -1), o = Number(t.currentTarget.getAttribute("data-col") || -1);
9
+ d(r), f(o), e == null || e(t);
10
+ }, L = (e) => (t) => {
11
+ var g, p, y, C, h, S, x, v;
12
+ const r = Number(t.currentTarget.getAttribute("data-row") || -1), o = Number(t.currentTarget.getAttribute("data-col") || -1);
13
+ switch (t.key) {
14
+ case "ArrowUp": {
15
+ if (t.preventDefault(), r === 0)
16
+ return;
17
+ d(r - 1), (p = (g = c.current) == null ? void 0 : g.querySelector(`[data-row="${r - 1}"][data-col="${o}"]`)) == null || p.focus();
18
+ break;
19
+ }
20
+ case "ArrowDown": {
21
+ if (t.preventDefault(), r === 2 || r === 1 && s && !i)
22
+ return;
23
+ d(r + 1), (C = (y = c.current) == null ? void 0 : y.querySelector(`[data-row="${r + 1}"][data-col="${o}"]`)) == null || C.focus();
24
+ break;
25
+ }
26
+ case "ArrowLeft": {
27
+ if (t.preventDefault(), o === 0)
28
+ return;
29
+ f(o - 1), (S = (h = c.current) == null ? void 0 : h.querySelector(`[data-row="${r}"][data-col="${o - 1}"]`)) == null || S.focus();
30
+ break;
31
+ }
32
+ case "ArrowRight": {
33
+ if (t.preventDefault(), o === 2)
34
+ return;
35
+ f(o + 1), (v = (x = c.current) == null ? void 0 : x.querySelector(`[data-row="${r}"][data-col="${o + 1}"]`)) == null || v.focus();
36
+ break;
37
+ }
38
+ case "Enter":
39
+ case " ":
40
+ t.preventDefault(), t.currentTarget.click();
41
+ break;
42
+ }
43
+ e == null || e(t);
44
+ };
45
+ return /* @__PURE__ */ T(
46
+ l,
47
+ {
48
+ tag: "section",
49
+ flexDirection: "column",
50
+ gap: 4,
51
+ "aria-labelledby": "ability-collection-title",
52
+ ...a,
53
+ inlineCSS: { width: "100%", ...a == null ? void 0 : a.inlineCSS },
54
+ children: [
55
+ /* @__PURE__ */ n(B, { id: "ability-collection-title", tag: "h2", variant: "h2B", children: "능력치 배지" }),
56
+ /* @__PURE__ */ n(
57
+ l,
58
+ {
59
+ ref: c,
60
+ id: "ability-badge-grid",
61
+ role: "grid",
62
+ gap: 2,
63
+ pt: 3,
64
+ pb: 3,
65
+ alignItems: "center",
66
+ inlineCSS: {
67
+ display: "grid",
68
+ gridTemplateColumns: "repeat(3, 1fr)",
69
+ width: "inherit",
70
+ columnGap: u.content(2),
71
+ rowGap: u.content(6),
72
+ maxHeight: i ? void 0 : s ? `calc(2 * 74px + ${u.content(12)}px)` : void 0,
73
+ overflow: "hidden",
74
+ ...a == null ? void 0 : a.inlineCSS
75
+ },
76
+ children: A.map(w, (e, t) => {
77
+ const r = Math.floor(t / 3), o = t % 3;
78
+ return /* @__PURE__ */ n(l, { role: "gridcell", children: q(e, {
79
+ tabIndex: k === r && F === o ? 0 : -1,
80
+ // @ts-expect-error 데이터 속성 타입 오류 무시
81
+ "data-row": r,
82
+ "data-col": o,
83
+ "aria-posinset": t + 1,
84
+ "aria-setsize": w.length,
85
+ onFocus: E(e.props.onFocus),
86
+ onKeyDown: L(e.props.onKeyDown),
87
+ ...e.props
88
+ }) }, `ability-badge-gridcell-${t}`);
89
+ })
90
+ }
91
+ ),
92
+ s && /* @__PURE__ */ n(l, { alignItems: "center", justifyContent: "center", inlineCSS: { width: "inherit" }, children: /* @__PURE__ */ n(
93
+ j,
94
+ {
95
+ fullWidth: !0,
96
+ variant: "text",
97
+ color: "secondary",
98
+ endAdornment: /* @__PURE__ */ n(G, { name: i ? "ChevronUpLine" : "ChevronDownLine" }),
99
+ onClick: D,
100
+ "aria-controls": "ability-badge-grid",
101
+ "aria-expanded": i,
102
+ children: i ? "접기" : "더 보기"
103
+ }
104
+ ) })
105
+ ]
106
+ }
107
+ );
108
+ }
109
+ export {
110
+ Q as default
111
+ };
@@ -0,0 +1,6 @@
1
+ export declare function getIconFileName(abilityName: string, completed: boolean): string;
2
+ export declare function getAbilityCollection(data: Record<string, string>): {
3
+ key: string;
4
+ name: string;
5
+ completed: boolean;
6
+ }[];
@@ -0,0 +1,43 @@
1
+ function c(a, n) {
2
+ let e = "";
3
+ switch (a) {
4
+ case "창의악어":
5
+ e = "creative-icon.png";
6
+ break;
7
+ case "영어악어":
8
+ e = "english-icon.png";
9
+ break;
10
+ case "영유아 악어":
11
+ e = "infant-icon.png";
12
+ break;
13
+ case "산업안전 보건교육":
14
+ e = "osh-education-icon.png";
15
+ break;
16
+ case "아동학대 예방교육":
17
+ e = "cap-education-icon.png";
18
+ break;
19
+ case "응급상황 대처교육":
20
+ e = "emergency-response-training-icon.png";
21
+ break;
22
+ case "놀이돌봄 기초교육":
23
+ e = "basic-play-care-education-icon.png";
24
+ break;
25
+ }
26
+ return e = n ? e : `incomplete-${e}`, e;
27
+ }
28
+ function i(a) {
29
+ const n = {
30
+ creativeFlag: "창의악어",
31
+ englishFlag: "영어악어",
32
+ infantsFlag: "영유아 악어"
33
+ };
34
+ return Object.keys(n).map((e) => ({
35
+ key: e,
36
+ name: n[e],
37
+ completed: a[e] === "Y"
38
+ }));
39
+ }
40
+ export {
41
+ i as getAbilityCollection,
42
+ c as getIconFileName
43
+ };
@@ -0,0 +1,5 @@
1
+ import { AbilityCollectionProps, default as AbilityCollection } from './AbilityCollection';
2
+ export { default as AbilityBadge, type AbilityBadgeProps } from './AbilityBadge';
3
+ export { getAbilityCollection } from './AbilityCollection.utils';
4
+ export type { AbilityCollectionProps };
5
+ export default AbilityCollection;
@@ -0,0 +1,8 @@
1
+ import o from "./AbilityCollection.mjs";
2
+ import { default as l } from "./AbilityBadge/AbilityBadge.mjs";
3
+ import { getAbilityCollection as a } from "./AbilityCollection.utils.mjs";
4
+ export {
5
+ l as AbilityBadge,
6
+ o as default,
7
+ a as getAbilityCollection
8
+ };
@@ -0,0 +1,11 @@
1
+ import { ReactNode } from 'react';
2
+ import { FlexboxProps } from 'node_modules/@dotss/ui/Flexbox/Flexbox';
3
+ import { MasonryProps } from '../../../../shared/components/Masonry';
4
+ export interface ActivityGalleryProps extends FlexboxProps {
5
+ onClickViewAll?: () => void;
6
+ action?: ReactNode;
7
+ hideHeader?: boolean;
8
+ masonryProps?: MasonryProps;
9
+ }
10
+ declare function ActivityGallery({ children, onClickViewAll, action, hideHeader, masonryProps: { columnCount, rowCount, spacing, edgeSpacing, direction, defaultContainerWidth, defaultContainerHeight, ...masonryProps }, ...props }: ActivityGalleryProps): import("@emotion/react/jsx-runtime").JSX.Element;
11
+ export default ActivityGallery;