boottent-design 0.1.269 → 0.1.271
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/README.md +8 -4
- package/bin/postinstall-sync.mjs +50 -0
- package/dist/components/lecturer-card.cjs.js +1 -1
- package/dist/components/lecturer-card.es.js +1 -1
- package/dist/components.cjs.js +1 -1
- package/dist/components.es.js +1 -1
- package/dist/design-system/components/article-asset-card.md +1 -1
- package/dist/design-system/components/blog-review-card.md +1 -1
- package/dist/design-system/components/boottent-event-card.md +1 -1
- package/dist/design-system/components/camp-card.md +1 -1
- package/dist/design-system/components/company-info-card.md +1 -1
- package/dist/design-system/components/dday-card.md +1 -1
- package/dist/design-system/components/environment-asset-photo.md +1 -1
- package/dist/design-system/components/event-asset-banner.md +1 -1
- package/dist/design-system/components/event-card.md +1 -1
- package/dist/design-system/components/lecturer-card.md +1 -5
- package/dist/design-system/components/main-banner-image.md +1 -1
- package/dist/design-system/components/mobile-camp-card.md +1 -1
- package/dist/design-system/components/partner-list-card.md +1 -1
- package/dist/design-system/components/portfolio-asset-card.md +1 -1
- package/dist/design-system/components/premium-card.md +1 -1
- package/dist/design-system/components/title-tag-card.md +1 -1
- package/dist/design-system/components/youtube-video-modal.md +1 -1
- package/dist/design-system/consumer-setup.md +45 -0
- package/dist/design-system/design-system.md +2 -1
- package/dist/design-system/tokens.md +1 -1
- package/dist/design-system/ui/accordion.md +1 -1
- package/dist/design-system/ui/alert-dialog.md +1 -1
- package/dist/design-system/ui/anchor.md +1 -1
- package/dist/design-system/ui/aspect-ratio.md +1 -1
- package/dist/design-system/ui/avatar.md +1 -1
- package/dist/design-system/ui/badge.md +1 -1
- package/dist/design-system/ui/button.md +1 -1
- package/dist/design-system/ui/calendar.md +1 -1
- package/dist/design-system/ui/callout.md +1 -1
- package/dist/design-system/ui/card-label.md +1 -1
- package/dist/design-system/ui/card.md +1 -1
- package/dist/design-system/ui/checkbox.md +1 -1
- package/dist/design-system/ui/circled-check-button.md +1 -1
- package/dist/design-system/ui/command.md +1 -1
- package/dist/design-system/ui/dialog.md +1 -1
- package/dist/design-system/ui/dropdown-menu.md +1 -1
- package/dist/design-system/ui/file-uploader.md +1 -1
- package/dist/design-system/ui/form.md +1 -1
- package/dist/design-system/ui/highlight-text.md +1 -1
- package/dist/design-system/ui/icons.md +1 -1
- package/dist/design-system/ui/image.md +1 -1
- package/dist/design-system/ui/input.md +1 -1
- package/dist/design-system/ui/label.md +1 -1
- package/dist/design-system/ui/month-picker.md +1 -1
- package/dist/design-system/ui/multi-select.md +1 -1
- package/dist/design-system/ui/navigation-menu.md +1 -1
- package/dist/design-system/ui/popover.md +1 -1
- package/dist/design-system/ui/portal.md +1 -1
- package/dist/design-system/ui/progress.md +1 -1
- package/dist/design-system/ui/radio-group.md +1 -1
- package/dist/design-system/ui/scroll-area.md +1 -1
- package/dist/design-system/ui/select.md +1 -1
- package/dist/design-system/ui/separator.md +1 -1
- package/dist/design-system/ui/simple-table.md +1 -1
- package/dist/design-system/ui/skeleton.md +1 -1
- package/dist/design-system/ui/slider.md +1 -1
- package/dist/design-system/ui/switch.md +1 -1
- package/dist/design-system/ui/symbols.md +1 -1
- package/dist/design-system/ui/tabs.md +1 -1
- package/dist/design-system/ui/tag.md +1 -1
- package/dist/design-system/ui/text.md +1 -1
- package/dist/design-system/ui/textarea.md +1 -1
- package/dist/design-system/ui/toast.md +1 -1
- package/dist/design-system/ui/toggle-group.md +1 -1
- package/dist/design-system/ui/toggle.md +1 -1
- package/dist/design-system/ui/tooltip.md +1 -1
- package/dist/design-system/usage.md +1 -1
- package/dist/design-system/when-to-use.md +1 -1
- package/dist/lecturer-card-D4nR3tgq.cjs +1 -0
- package/dist/lecturer-card-DaAD77e-.js +163 -0
- package/dist/styles.css +1 -1
- package/dist/types/components.d.ts +1 -5
- package/dist/types/lecturer-card.d.ts +1 -5
- package/package.json +2 -1
- package/dist/lecturer-card-BBkqiic3.js +0 -140
- package/dist/lecturer-card-C7E4UkU8.cjs +0 -1
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — label.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — month-picker.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — multi-select.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — navigation-menu.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — popover.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — portal.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — progress.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — radio-group.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — scroll-area.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — select.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — separator.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — simple-table.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — skeleton.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — slider.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — switch.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — symbols.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — tabs.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — tag.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — text.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — textarea.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — toast.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — toggle-group.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — toggle.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> UI 프리미티브 — tooltip.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 허브](../design-system.md) · [언제 무엇을 쓰나](../when-to-use.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> 설치 · CSS 배포 모드 · 소비 규칙의 기계 생성 정본.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 디자인 시스템 허브](./design-system.md)
|
|
9
9
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지** (`yarn docs:gen` 으로 재생성)
|
|
5
5
|
> 어떤 상황에 어떤 컴포넌트를 쓰는가 — 결정 가이드.
|
|
6
|
-
> 버전: boottent-design v0.1.
|
|
6
|
+
> 버전: boottent-design v0.1.271 · 생성: 2026. 7. 14. 오후 12:00:30
|
|
7
7
|
|
|
8
8
|
[← 디자인 시스템 허브](./design-system.md)
|
|
9
9
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const e=require("react/jsx-runtime"),t=require("react"),g=require("framer-motion"),x=require("./common-DeneXo5X.cjs");require("./ui/accordion.cjs.js");require("./ui/alert-dialog.cjs.js");require("@radix-ui/react-aspect-ratio");require("./ui/avatar.cjs.js");require("./ui/badge.cjs.js");require("./ui/button.cjs.js");require("./ui/calendar.cjs.js");require("./ui/callout.cjs.js");require("./ui/card.cjs.js");require("./ui/card-label.cjs.js");require("./ui/checkbox.cjs.js");require("lucide-react");require("./ui/command.cjs.js");require("./ui/dialog.cjs.js");require("./ui/dropdown-menu.cjs.js");require("./ui/file-uploader.cjs.js");require("./ui/form.cjs.js");const h=require("./ui/icons.cjs.js");require("./ui/input.cjs.js");require("./ui/label.cjs.js");require("./ui/month-picker.cjs.js");require("./ui/multi-select.cjs.js");require("./ui/navigation-menu.cjs.js");require("./ui/popover.cjs.js");require("./ui/progress.cjs.js");require("./ui/radio-group.cjs.js");require("./ui/scroll-area.cjs.js");require("./ui/select.cjs.js");require("./ui/separator.cjs.js");require("@radix-ui/react-slider");require("./ui/switch.cjs.js");require("./ui/tabs.cjs.js");const H=require("./ui/tag.cjs.js");require("./ui/text.cjs.js");require("./ui/textarea.cjs.js");require("./ui/toast.cjs.js");require("./ui/toggle.cjs.js");require("./ui/toggle-group.cjs.js");require("./ui/tooltip.cjs.js");const T=require("./image-loading-DZFBFoVv.cjs"),u=80;function O({keyPrefix:o,lecturer:s,roleLabel:b,description:l,numberOfLecturers:p,imagePriority:j,imageLoading:N,imageFetchPriority:v,imageDecoding:w}){const c=`${o}-name`,d=`${o}-srdesc`,m=`${o}-content`,q=t.useRef(null),[i,y]=t.useState(!1),[a,L]=t.useState(!1),[C,I]=t.useState(u),A=g.useReducedMotion();t.useLayoutEffect(()=>{const r=q.current;if(!r)return;const n=()=>{I(r.scrollHeight),L(r.scrollHeight>u+1)};n();const f=new ResizeObserver(n);return f.observe(r),()=>f.disconnect()},[l]);const R=T.getImageLoadingAttributes({imagePriority:j,imageLoading:N,imageFetchPriority:v,imageDecoding:w});return e.jsxs("article",{"aria-labelledby":c,className:x.cn("bt-ds-surface bt-ds-radius-10 flex h-full w-full items-start gap-5 rounded-[10px] border border-grey-200 bg-background px-[30px] py-5",p===1&&"col-span-2"),children:[e.jsx("div",{className:"shrink-0",children:s.imageUrl?e.jsx("div",{className:"bt-ds-surface bt-ds-radius-full relative flex aspect-square w-[60px] items-center justify-center overflow-hidden rounded-full border border-grey-200",children:e.jsx("img",{src:s.imageUrl,alt:`${s.lecturerName} 프로필 이미지`,className:"h-full w-full object-cover",...R})}):e.jsx("div",{className:"relative flex aspect-square w-[60px] items-center justify-center overflow-hidden rounded-full bg-grey-100","aria-label":`${s.lecturerName} 프로필 이미지 없음`,children:e.jsx(h.Icon.Profile,{size:"32",fill:"#A2A3A4","aria-hidden":"true"})})}),e.jsxs("div",{className:"flex w-full flex-col gap-2 text-regular14 text-grey-800",children:[e.jsxs("header",{className:"flex items-center gap-2 text-semibold16",children:[e.jsx("span",{id:c,children:s.lecturerName}),e.jsx(H.Tag,{variant:"solid-secondary-100",size:"sm",className:"px-1 py-0.5",children:b})]}),e.jsx("span",{className:"sr-only",id:d,children:"강사 소개를 목록으로 안내한다."}),e.jsxs(g.motion.div,{initial:!1,animate:{height:a?i?C:u:"auto"},transition:{duration:A?0:.35,ease:[.4,0,.2,1]},className:"relative overflow-hidden",children:[e.jsx("ul",{ref:q,id:m,"aria-describedby":d,"aria-expanded":a?i:void 0,className:"flex w-full flex-col whitespace-pre-wrap break-keep text-grey-600",children:l.map((r,n)=>e.jsx("li",{children:r},n))}),a&&!i&&e.jsx("span",{"aria-hidden":"true",className:"pointer-events-none absolute inset-x-0 bottom-0 h-8 bg-gradient-to-t from-white to-transparent"})]}),a&&e.jsxs("button",{type:"button",onClick:()=>y(r=>!r),"aria-expanded":i,"aria-controls":m,className:"flex items-center gap-0.5 self-end text-main-600",children:[i?"정보 숨기기":"정보 더보기",e.jsx(h.Icon.ArrowDown2,{size:"16",fill:"currentColor","aria-hidden":"true",className:x.cn("shrink-0 transition-transform duration-200",i&&"rotate-180")})]})]})]})}exports.LecturerCard=O;
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import { jsxs as o, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { useRef as O, useState as l, useLayoutEffect as R } from "react";
|
|
3
|
+
import { useReducedMotion as $, motion as k } from "framer-motion";
|
|
4
|
+
import { c as h } from "./common-zQ5XY0UN.js";
|
|
5
|
+
import "./ui/accordion.es.js";
|
|
6
|
+
import "./ui/alert-dialog.es.js";
|
|
7
|
+
import "@radix-ui/react-aspect-ratio";
|
|
8
|
+
import "./ui/avatar.es.js";
|
|
9
|
+
import "./ui/badge.es.js";
|
|
10
|
+
import "./ui/button.es.js";
|
|
11
|
+
import "./ui/calendar.es.js";
|
|
12
|
+
import "./ui/callout.es.js";
|
|
13
|
+
import "./ui/card.es.js";
|
|
14
|
+
import "./ui/card-label.es.js";
|
|
15
|
+
import "./ui/checkbox.es.js";
|
|
16
|
+
import "lucide-react";
|
|
17
|
+
import "./ui/command.es.js";
|
|
18
|
+
import "./ui/dialog.es.js";
|
|
19
|
+
import "./ui/dropdown-menu.es.js";
|
|
20
|
+
import "./ui/file-uploader.es.js";
|
|
21
|
+
import "./ui/form.es.js";
|
|
22
|
+
import { Icon as b } from "./ui/icons.es.js";
|
|
23
|
+
import "./ui/input.es.js";
|
|
24
|
+
import "./ui/label.es.js";
|
|
25
|
+
import "./ui/month-picker.es.js";
|
|
26
|
+
import "./ui/multi-select.es.js";
|
|
27
|
+
import "./ui/navigation-menu.es.js";
|
|
28
|
+
import "./ui/popover.es.js";
|
|
29
|
+
import "./ui/progress.es.js";
|
|
30
|
+
import "./ui/radio-group.es.js";
|
|
31
|
+
import "./ui/scroll-area.es.js";
|
|
32
|
+
import "./ui/select.es.js";
|
|
33
|
+
import "./ui/separator.es.js";
|
|
34
|
+
import "@radix-ui/react-slider";
|
|
35
|
+
import "./ui/switch.es.js";
|
|
36
|
+
import "./ui/tabs.es.js";
|
|
37
|
+
import { Tag as z } from "./ui/tag.es.js";
|
|
38
|
+
import "./ui/text.es.js";
|
|
39
|
+
import "./ui/textarea.es.js";
|
|
40
|
+
import "./ui/toast.es.js";
|
|
41
|
+
import "./ui/toggle.es.js";
|
|
42
|
+
import "./ui/toggle-group.es.js";
|
|
43
|
+
import "./ui/tooltip.es.js";
|
|
44
|
+
import { g as E } from "./image-loading-BX5rKZfC.js";
|
|
45
|
+
const m = 80;
|
|
46
|
+
function Le({
|
|
47
|
+
keyPrefix: n,
|
|
48
|
+
lecturer: i,
|
|
49
|
+
roleLabel: x,
|
|
50
|
+
description: c,
|
|
51
|
+
numberOfLecturers: N,
|
|
52
|
+
imagePriority: v,
|
|
53
|
+
imageLoading: w,
|
|
54
|
+
imageFetchPriority: y,
|
|
55
|
+
imageDecoding: A
|
|
56
|
+
}) {
|
|
57
|
+
const d = `${n}-name`, p = `${n}-srdesc`, u = `${n}-content`, f = O(null), [r, C] = l(!1), [a, I] = l(!1), [L, H] = l(m), T = $();
|
|
58
|
+
R(() => {
|
|
59
|
+
const t = f.current;
|
|
60
|
+
if (!t) return;
|
|
61
|
+
const s = () => {
|
|
62
|
+
H(t.scrollHeight), I(t.scrollHeight > m + 1);
|
|
63
|
+
};
|
|
64
|
+
s();
|
|
65
|
+
const g = new ResizeObserver(s);
|
|
66
|
+
return g.observe(t), () => g.disconnect();
|
|
67
|
+
}, [c]);
|
|
68
|
+
const j = E({
|
|
69
|
+
imagePriority: v,
|
|
70
|
+
imageLoading: w,
|
|
71
|
+
imageFetchPriority: y,
|
|
72
|
+
imageDecoding: A
|
|
73
|
+
});
|
|
74
|
+
return /* @__PURE__ */ o(
|
|
75
|
+
"article",
|
|
76
|
+
{
|
|
77
|
+
"aria-labelledby": d,
|
|
78
|
+
className: h(
|
|
79
|
+
"bt-ds-surface bt-ds-radius-10 flex h-full w-full items-start gap-5 rounded-[10px] border border-grey-200 bg-background px-[30px] py-5",
|
|
80
|
+
N === 1 && "col-span-2"
|
|
81
|
+
),
|
|
82
|
+
children: [
|
|
83
|
+
/* @__PURE__ */ e("div", { className: "shrink-0", children: i.imageUrl ? /* @__PURE__ */ e("div", { className: "bt-ds-surface bt-ds-radius-full relative flex aspect-square w-[60px] items-center justify-center overflow-hidden rounded-full border border-grey-200", children: /* @__PURE__ */ e(
|
|
84
|
+
"img",
|
|
85
|
+
{
|
|
86
|
+
src: i.imageUrl,
|
|
87
|
+
alt: `${i.lecturerName} 프로필 이미지`,
|
|
88
|
+
className: "h-full w-full object-cover",
|
|
89
|
+
...j
|
|
90
|
+
}
|
|
91
|
+
) }) : /* @__PURE__ */ e(
|
|
92
|
+
"div",
|
|
93
|
+
{
|
|
94
|
+
className: "relative flex aspect-square w-[60px] items-center justify-center overflow-hidden rounded-full bg-grey-100",
|
|
95
|
+
"aria-label": `${i.lecturerName} 프로필 이미지 없음`,
|
|
96
|
+
children: /* @__PURE__ */ e(b.Profile, { size: "32", fill: "#A2A3A4", "aria-hidden": "true" })
|
|
97
|
+
}
|
|
98
|
+
) }),
|
|
99
|
+
/* @__PURE__ */ o("div", { className: "flex w-full flex-col gap-2 text-regular14 text-grey-800", children: [
|
|
100
|
+
/* @__PURE__ */ o("header", { className: "flex items-center gap-2 text-semibold16", children: [
|
|
101
|
+
/* @__PURE__ */ e("span", { id: d, children: i.lecturerName }),
|
|
102
|
+
/* @__PURE__ */ e(z, { variant: "solid-secondary-100", size: "sm", className: "px-1 py-0.5", children: x })
|
|
103
|
+
] }),
|
|
104
|
+
/* @__PURE__ */ e("span", { className: "sr-only", id: p, children: "강사 소개를 목록으로 안내한다." }),
|
|
105
|
+
/* @__PURE__ */ o(
|
|
106
|
+
k.div,
|
|
107
|
+
{
|
|
108
|
+
initial: !1,
|
|
109
|
+
animate: { height: a ? r ? L : m : "auto" },
|
|
110
|
+
transition: { duration: T ? 0 : 0.35, ease: [0.4, 0, 0.2, 1] },
|
|
111
|
+
className: "relative overflow-hidden",
|
|
112
|
+
children: [
|
|
113
|
+
/* @__PURE__ */ e(
|
|
114
|
+
"ul",
|
|
115
|
+
{
|
|
116
|
+
ref: f,
|
|
117
|
+
id: u,
|
|
118
|
+
"aria-describedby": p,
|
|
119
|
+
"aria-expanded": a ? r : void 0,
|
|
120
|
+
className: "flex w-full flex-col whitespace-pre-wrap break-keep text-grey-600",
|
|
121
|
+
children: c.map((t, s) => /* @__PURE__ */ e("li", { children: t }, s))
|
|
122
|
+
}
|
|
123
|
+
),
|
|
124
|
+
a && !r && /* @__PURE__ */ e(
|
|
125
|
+
"span",
|
|
126
|
+
{
|
|
127
|
+
"aria-hidden": "true",
|
|
128
|
+
className: "pointer-events-none absolute inset-x-0 bottom-0 h-8 bg-gradient-to-t from-white to-transparent"
|
|
129
|
+
}
|
|
130
|
+
)
|
|
131
|
+
]
|
|
132
|
+
}
|
|
133
|
+
),
|
|
134
|
+
a && /* @__PURE__ */ o(
|
|
135
|
+
"button",
|
|
136
|
+
{
|
|
137
|
+
type: "button",
|
|
138
|
+
onClick: () => C((t) => !t),
|
|
139
|
+
"aria-expanded": r,
|
|
140
|
+
"aria-controls": u,
|
|
141
|
+
className: "flex items-center gap-0.5 self-end text-main-600",
|
|
142
|
+
children: [
|
|
143
|
+
r ? "정보 숨기기" : "정보 더보기",
|
|
144
|
+
/* @__PURE__ */ e(
|
|
145
|
+
b.ArrowDown2,
|
|
146
|
+
{
|
|
147
|
+
size: "16",
|
|
148
|
+
fill: "currentColor",
|
|
149
|
+
"aria-hidden": "true",
|
|
150
|
+
className: h("shrink-0 transition-transform duration-200", r && "rotate-180")
|
|
151
|
+
}
|
|
152
|
+
)
|
|
153
|
+
]
|
|
154
|
+
}
|
|
155
|
+
)
|
|
156
|
+
] })
|
|
157
|
+
]
|
|
158
|
+
}
|
|
159
|
+
);
|
|
160
|
+
}
|
|
161
|
+
export {
|
|
162
|
+
Le as L
|
|
163
|
+
};
|