boottent-design 0.1.233 → 0.1.235
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 +43 -2
- package/dist/DESIGN.md +8 -23
- package/dist/components/event-card.cjs.js +1 -1
- package/dist/components/event-card.es.js +1 -1
- package/dist/components/premium-card.cjs.js +1 -1
- package/dist/components/premium-card.es.js +1 -1
- package/dist/components/title-tag-card.cjs.js +1 -1
- package/dist/components/title-tag-card.es.js +1 -1
- package/dist/components.cjs.js +1 -1
- package/dist/components.es.js +3 -3
- package/dist/{event-card-DeIzR5uk.js → event-card-DCs6nu0G.js} +21 -20
- package/dist/event-card-DwnP_Qsj.cjs +1 -0
- package/dist/foundation.css +89 -0
- package/dist/{premium-card-B0RyOTbr.js → premium-card-BOlG7ZZG.js} +13 -12
- package/dist/premium-card-Dk-pTOyb.cjs +1 -0
- package/dist/styles.css +1 -1
- package/dist/tailwind-preset.cjs +315 -0
- package/dist/tailwind-preset.js +3 -0
- package/dist/{title-tag-card-CoPGtka1.js → title-tag-card-CCInX94f.js} +7 -6
- package/dist/title-tag-card-kzgE6S3R.cjs +1 -0
- package/dist/types/tag.d.ts +1 -1
- package/dist/types/tailwind-preset.d.ts +2 -0
- package/dist/types/text.d.ts +1 -1
- package/dist/types/ui.d.ts +1 -1
- package/dist/ui/tag.cjs.js +1 -1
- package/dist/ui/tag.es.js +4 -3
- package/package.json +12 -2
- package/dist/event-card-P9DJCupH.cjs +0 -1
- package/dist/premium-card-BbkNnfVA.cjs +0 -1
- package/dist/title-tag-card-C-pn0u7P.cjs +0 -1
package/README.md
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
- [시작하기](#시작하기)
|
|
8
8
|
- [설치](#설치)
|
|
9
9
|
- [빠른 사용법 (Tailwind 설정 불필요)](#빠른-사용법-tailwind-설정-불필요)
|
|
10
|
+
- [Tailwind 앱 권장 사용법](#tailwind-앱-권장-사용법)
|
|
10
11
|
- [성능 권장 import](#성능-권장-import)
|
|
11
12
|
- [모듈 import 경로](#모듈-import-경로)
|
|
12
13
|
- [제작 및 배포](#제작-및-배포)
|
|
@@ -36,6 +37,9 @@ npm install boottent-design@latest
|
|
|
36
37
|
Tailwind를 직접 설치하거나 `tailwind.config`를 수정하지 않아도 됩니다.
|
|
37
38
|
라이브러리에서 미리 빌드된 CSS를 함께 제공하므로, 아래 2단계만 하면 동작합니다.
|
|
38
39
|
|
|
40
|
+
이 방식은 Tailwind를 쓰지 않는 앱이나 빠른 프로토타이핑에 적합합니다.
|
|
41
|
+
Tailwind를 직접 운영하는 앱에서는 아래의 `Tailwind 앱 권장 사용법`을 사용하세요.
|
|
42
|
+
|
|
39
43
|
1. 앱 엔트리에서 스타일 1회 임포트
|
|
40
44
|
|
|
41
45
|
```tsx
|
|
@@ -61,6 +65,39 @@ export function Sample() {
|
|
|
61
65
|
}
|
|
62
66
|
```
|
|
63
67
|
|
|
68
|
+
### Tailwind 앱 권장 사용법
|
|
69
|
+
|
|
70
|
+
Tailwind를 직접 운영하는 앱에서는 `styles.css` 대신 `foundation.css`와 `tailwind-preset`을 사용하세요.
|
|
71
|
+
이 방식은 유틸 클래스를 앱 CSS에서 한 번만 생성하게 만들어, 디자인시스템 CSS와 앱 CSS 간 우선순위 충돌을 막습니다.
|
|
72
|
+
|
|
73
|
+
1. 앱 엔트리에서 foundation CSS 1회 임포트
|
|
74
|
+
|
|
75
|
+
```tsx
|
|
76
|
+
import "boottent-design/foundation.css";
|
|
77
|
+
import "./index.css";
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
2. `tailwind.config`에서 preset과 content를 추가
|
|
81
|
+
|
|
82
|
+
```ts
|
|
83
|
+
const boottentDesignTailwindPreset = require("boottent-design/tailwind-preset");
|
|
84
|
+
|
|
85
|
+
module.exports = {
|
|
86
|
+
content: ["./src/**/*.{ts,tsx}", "./node_modules/boottent-design/dist/**/*.{js,cjs,mjs}"],
|
|
87
|
+
presets: [boottentDesignTailwindPreset],
|
|
88
|
+
};
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
3. 필요한 모듈 import 후 바로 사용
|
|
92
|
+
|
|
93
|
+
```tsx
|
|
94
|
+
import { EventCard } from "boottent-design/components";
|
|
95
|
+
|
|
96
|
+
export function Sample() {
|
|
97
|
+
return <EventCard {...props} />;
|
|
98
|
+
}
|
|
99
|
+
```
|
|
100
|
+
|
|
64
101
|
### 성능 권장 import
|
|
65
102
|
|
|
66
103
|
소비자 앱 빌드 시간을 줄이려면 배럴 import보다 deep import를 권장합니다.
|
|
@@ -83,11 +120,15 @@ export function Sample() {
|
|
|
83
120
|
- `boottent-design/ui`
|
|
84
121
|
- `boottent-design/ui/*`
|
|
85
122
|
- `boottent-design/tokens`
|
|
123
|
+
- `boottent-design/components`
|
|
124
|
+
- `boottent-design/components/*`
|
|
125
|
+
- `boottent-design/foundation.css`
|
|
126
|
+
- `boottent-design/tailwind-preset`
|
|
86
127
|
|
|
87
128
|
### 참고
|
|
88
129
|
|
|
89
|
-
-
|
|
90
|
-
-
|
|
130
|
+
- Tailwind를 직접 운영하는 소비자 앱은 `styles.css` 대신 `foundation.css + tailwind-preset` 조합을 권장합니다.
|
|
131
|
+
- `styles.css`는 Tailwind 미사용 소비자를 위한 올인원 엔트리로 계속 유지됩니다.
|
|
91
132
|
|
|
92
133
|
## 제작 및 배포
|
|
93
134
|
|
package/dist/DESIGN.md
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
> [!WARNING]
|
|
4
4
|
> **자동 생성된 파일 — 직접 수정 금지**
|
|
5
|
-
> 생성 일시: 2026.
|
|
6
|
-
> 원본 소스: boottent-design v0.1.
|
|
5
|
+
> 생성 일시: 2026. 5. 4. 오전 10:50:49
|
|
6
|
+
> 원본 소스: boottent-design v0.1.234
|
|
7
7
|
|
|
8
8
|
## 1. 개요 (Overview)
|
|
9
9
|
|
|
@@ -97,28 +97,12 @@ Stitch(AI 디자인 도구)와 Claude Code(AI 코딩 에이전트)는 이 파일
|
|
|
97
97
|
|
|
98
98
|
### 2.2 타이포그래피 (Typography)
|
|
99
99
|
```javascript
|
|
100
|
-
{
|
|
101
|
-
bold30: ["30px", { lineHeight: "38px", fontWeight: "700" }],
|
|
102
|
-
bold24: ["24px", { lineHeight: "32px", fontWeight: "700" }],
|
|
103
|
-
bold20: ["20px", { lineHeight: "28px", fontWeight: "700" }],
|
|
104
|
-
semibold18: ["18px", { lineHeight: "26px", fontWeight: "600" }],
|
|
105
|
-
semibold16: ["16px", { lineHeight: "24px", fontWeight: "600" }],
|
|
106
|
-
semibold15: ["15px", { lineHeight: "23px", fontWeight: "600" }],
|
|
107
|
-
semibold14: ["14px", { lineHeight: "20px", fontWeight: "600" }],
|
|
108
|
-
semibold13: ["13px", { lineHeight: "19px", fontWeight: "600" }],
|
|
109
|
-
semibold12: ["12px", { lineHeight: "16px", fontWeight: "600" }],
|
|
110
|
-
medium16: ["16px", { lineHeight: "24px", fontWeight: "500" }],
|
|
111
|
-
medium14: ["14px", { lineHeight: "20px", fontWeight: "500" }],
|
|
112
|
-
regular16: ["16px", { lineHeight: "24px", fontWeight: "400" }],
|
|
113
|
-
regular14: ["14px", { lineHeight: "20px", fontWeight: "400" }],
|
|
114
|
-
regular13: ["13px", { lineHeight: "19px", fontWeight: "400" }],
|
|
115
|
-
regular12: ["12px", { lineHeight: "16px", fontWeight: "400" }],
|
|
116
|
-
}
|
|
100
|
+
{}
|
|
117
101
|
```
|
|
118
102
|
|
|
119
103
|
### 2.3 기타 토큰
|
|
120
|
-
- **Border Radius**: `
|
|
121
|
-
- **Screens**: `
|
|
104
|
+
- **Border Radius**: `default Tailwind radius`
|
|
105
|
+
- **Screens**: `default Tailwind screens`
|
|
122
106
|
- **Spacing**: 기본 Tailwind Spacing 스케일 사용 (4px 단위)
|
|
123
107
|
|
|
124
108
|
---
|
|
@@ -1643,9 +1627,10 @@ import { cn }
|
|
|
1643
1627
|
{
|
|
1644
1628
|
// size : padding, border-radius, 텍스트 크기
|
|
1645
1629
|
size: {
|
|
1646
|
-
sm: "px-2 py-1 text-xs font-normal rounded",
|
|
1630
|
+
sm: "px-2 py-1 text-xs font-normal rounded-sm",
|
|
1647
1631
|
md: "px-2.5 py-1 text-sm font-normal rounded-md",
|
|
1648
1632
|
lg: "px-3.5 py-1.5 text-base font-medium rounded-lg",
|
|
1633
|
+
ad: "absolute top-0 right-0 px-2.5 py-1 rounded-t-none rounded-br-none rounded-bl-xl text-sm font-normal",
|
|
1649
1634
|
},
|
|
1650
1635
|
// shape : round, square, adCard
|
|
1651
1636
|
shape: {
|
|
@@ -1654,7 +1639,7 @@ import { cn }
|
|
|
1654
1639
|
},
|
|
1655
1640
|
// variant : solid과 outline을 결합하여 하나의 값으로 처리
|
|
1656
1641
|
variant: {
|
|
1657
|
-
ad: "
|
|
1642
|
+
ad: "bg-grey-800 text-white",
|
|
1658
1643
|
"solid-primary-50": "bg-main-50 text-main-600",
|
|
1659
1644
|
"solid-primary-100": "bg-main-100 text-main-600",
|
|
1660
1645
|
"solid-primary-600": "bg-main-600 text-main-50",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../event-card-
|
|
1
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../event-card-DwnP_Qsj.cjs");exports.EventCard=e.EventCard;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../premium-card-
|
|
1
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../premium-card-Dk-pTOyb.cjs");exports.PremiumCard=e.PremiumCard;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../title-tag-card-
|
|
1
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../title-tag-card-kzgE6S3R.cjs");exports.TitleTagCard=e.TitleTagCard;
|
package/dist/components.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./event-card-
|
|
1
|
+
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./event-card-DwnP_Qsj.cjs"),r=require("./main-banner-image-Ce2c6ODO.cjs"),t=require("./premium-card-Dk-pTOyb.cjs"),n=require("./title-tag-card-kzgE6S3R.cjs"),a=require("./article-asset-card-CuTpHnoq.cjs"),s=require("./environment-asset-photo-DMSQ1Ext.cjs"),i=require("./event-asset-banner-I7Wv47iX.cjs"),o=require("./lecturer-card-DLMnM4fU.cjs"),d=require("./portfolio-asset-card-DVhoypCN.cjs");exports.EventCard=e.EventCard;exports.MainBannerImage=r.MainBannerImage;exports.PremiumCard=t.PremiumCard;exports.TitleTagCard=n.TitleTagCard;exports.ArticleAssetCard=a.ArticleAssetCard;exports.EnvironmentAssetPhoto=s.EnvironmentAssetPhoto;exports.EventAssetBanner=i.EventAssetBanner;exports.LecturerCard=o.LecturerCard;exports.PortfolioAssetCard=d.PortfolioAssetCard;
|
package/dist/components.es.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { E as o } from "./event-card-
|
|
2
|
+
import { E as o } from "./event-card-DCs6nu0G.js";
|
|
3
3
|
import { M as a } from "./main-banner-image-Cwwt6xKE.js";
|
|
4
|
-
import { P as m } from "./premium-card-
|
|
5
|
-
import { T as f } from "./title-tag-card-
|
|
4
|
+
import { P as m } from "./premium-card-BOlG7ZZG.js";
|
|
5
|
+
import { T as f } from "./title-tag-card-CCInX94f.js";
|
|
6
6
|
import { A as x } from "./article-asset-card-B30fjI_9.js";
|
|
7
7
|
import { E as d } from "./environment-asset-photo-Dk8pKTD3.js";
|
|
8
8
|
import { E as C } from "./event-asset-banner-DLK5HF29.js";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { jsx as e, jsxs as
|
|
1
|
+
import { jsx as e, jsxs as i } from "react/jsx-runtime";
|
|
2
2
|
import { a as t } from "./index-DWvwbdTU.js";
|
|
3
|
-
import { c } from "./common-C3JaD1vJ.js";
|
|
4
3
|
import "./ui/accordion.es.js";
|
|
5
4
|
import "./ui/alert-dialog.es.js";
|
|
5
|
+
import { c } from "./common-C3JaD1vJ.js";
|
|
6
6
|
import "@radix-ui/react-aspect-ratio";
|
|
7
7
|
import "./ui/avatar.es.js";
|
|
8
8
|
import "./ui/badge.es.js";
|
|
@@ -27,7 +27,7 @@ import "./ui/radio-group.es.js";
|
|
|
27
27
|
import "./ui/scroll-area.es.js";
|
|
28
28
|
import "./ui/select.es.js";
|
|
29
29
|
import "./ui/separator.es.js";
|
|
30
|
-
import { Skeleton as
|
|
30
|
+
import { Skeleton as a } from "./ui/skeleton.es.js";
|
|
31
31
|
import "@radix-ui/react-slider";
|
|
32
32
|
import "react";
|
|
33
33
|
import "./ui/switch.es.js";
|
|
@@ -42,11 +42,11 @@ import "./ui/tooltip.es.js";
|
|
|
42
42
|
import { g as v, a as b, b as y } from "./utils-DMV7dwIW.js";
|
|
43
43
|
function se({
|
|
44
44
|
adProduct: r,
|
|
45
|
-
logo:
|
|
45
|
+
logo: m,
|
|
46
46
|
title: o,
|
|
47
47
|
batchName: p = "",
|
|
48
48
|
adTitle: n,
|
|
49
|
-
startDate:
|
|
49
|
+
startDate: l,
|
|
50
50
|
tuition: d,
|
|
51
51
|
nbCardRequired: f,
|
|
52
52
|
isLoading: x = !1,
|
|
@@ -55,11 +55,11 @@ function se({
|
|
|
55
55
|
}) {
|
|
56
56
|
if (x)
|
|
57
57
|
return /* @__PURE__ */ e(N, { className: s });
|
|
58
|
-
const h = `${v(
|
|
58
|
+
const h = `${v(l)} 개강 · ${b(d, f)}`;
|
|
59
59
|
return /* @__PURE__ */ e(
|
|
60
60
|
w,
|
|
61
61
|
{
|
|
62
|
-
logo:
|
|
62
|
+
logo: m,
|
|
63
63
|
title: `${o} ${p}`,
|
|
64
64
|
adTitle: n,
|
|
65
65
|
footerText: h,
|
|
@@ -71,14 +71,14 @@ function se({
|
|
|
71
71
|
}
|
|
72
72
|
function w({
|
|
73
73
|
adProduct: r,
|
|
74
|
-
logo:
|
|
74
|
+
logo: m,
|
|
75
75
|
title: o,
|
|
76
76
|
adTitle: p,
|
|
77
77
|
footerText: n,
|
|
78
|
-
regEndDate:
|
|
78
|
+
regEndDate: l,
|
|
79
79
|
className: d
|
|
80
80
|
}) {
|
|
81
|
-
return /* @__PURE__ */
|
|
81
|
+
return /* @__PURE__ */ i(
|
|
82
82
|
"div",
|
|
83
83
|
{
|
|
84
84
|
className: c(
|
|
@@ -90,15 +90,16 @@ function w({
|
|
|
90
90
|
u,
|
|
91
91
|
{
|
|
92
92
|
variant: "ad",
|
|
93
|
+
size: "ad",
|
|
93
94
|
style: {
|
|
94
95
|
background: t.event.background,
|
|
95
96
|
color: t.event.color
|
|
96
97
|
},
|
|
97
|
-
children: r === t.dDay.value &&
|
|
98
|
+
children: r === t.dDay.value && l ? y(l) : t.event.value.toUpperCase()
|
|
98
99
|
}
|
|
99
100
|
),
|
|
100
|
-
/* @__PURE__ */ e("img", { src:
|
|
101
|
-
/* @__PURE__ */
|
|
101
|
+
/* @__PURE__ */ e("img", { src: m, alt: `${o} 로고`, className: "h-4 object-contain", loading: "lazy" }),
|
|
102
|
+
/* @__PURE__ */ i("div", { className: "flex w-full flex-col items-start gap-2", children: [
|
|
102
103
|
/* @__PURE__ */ e("h3", { className: "line-clamp-2 h-auto text-sm font-normal md:text-base lg:h-12", title: o, children: o }),
|
|
103
104
|
/* @__PURE__ */ e("p", { className: "line-clamp-2 h-auto w-full break-keep rounded bg-grey-100 px-2 py-1 text-[13px] font-semibold text-grey-600 md:h-[54px] md:text-[15px] md:text-grey-800", children: p }),
|
|
104
105
|
/* @__PURE__ */ e("div", { className: "text-[13px] leading-[19px] text-grey-600", children: n })
|
|
@@ -108,8 +109,8 @@ function w({
|
|
|
108
109
|
);
|
|
109
110
|
}
|
|
110
111
|
function N({ className: r }) {
|
|
111
|
-
return /* @__PURE__ */
|
|
112
|
-
|
|
112
|
+
return /* @__PURE__ */ i(
|
|
113
|
+
a,
|
|
113
114
|
{
|
|
114
115
|
type: "background",
|
|
115
116
|
className: c(
|
|
@@ -129,12 +130,12 @@ function N({ className: r }) {
|
|
|
129
130
|
children: ""
|
|
130
131
|
}
|
|
131
132
|
),
|
|
132
|
-
/* @__PURE__ */ e(
|
|
133
|
-
/* @__PURE__ */
|
|
134
|
-
/* @__PURE__ */ e("div", { className: "h-10 w-full", children: /* @__PURE__ */ e(
|
|
135
|
-
/* @__PURE__ */ e(
|
|
133
|
+
/* @__PURE__ */ e(a, { className: "h-4 w-1/2" }),
|
|
134
|
+
/* @__PURE__ */ i("div", { className: "flex flex-col items-start gap-2", children: [
|
|
135
|
+
/* @__PURE__ */ e("div", { className: "h-10 w-full", children: /* @__PURE__ */ e(a, { className: "h-5 w-4/5" }) }),
|
|
136
|
+
/* @__PURE__ */ e(a, { className: "h-14 w-full" })
|
|
136
137
|
] }),
|
|
137
|
-
/* @__PURE__ */ e(
|
|
138
|
+
/* @__PURE__ */ e(a, { className: "mt-2 h-[19px] w-2/3" })
|
|
138
139
|
]
|
|
139
140
|
}
|
|
140
141
|
);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const e=require("react/jsx-runtime"),r=require("./index-B8SY6s5B.cjs");require("./ui/accordion.cjs.js");require("./ui/alert-dialog.cjs.js");const x=require("./common-Ds1lanOg.cjs");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/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");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/radio-group.cjs.js");require("./ui/scroll-area.cjs.js");require("./ui/select.cjs.js");require("./ui/separator.cjs.js");const i=require("./ui/skeleton.cjs.js");require("@radix-ui/react-slider");require("react");require("./ui/switch.cjs.js");require("./ui/tabs.cjs.js");const q=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 o=require("./utils-CQ8Ml7W5.cjs");function h({adProduct:t,logo:s,title:l,batchName:a="",adTitle:n,startDate:u,tuition:d,nbCardRequired:m,isLoading:g=!1,regEndDate:p,className:c}){if(g)return e.jsx(j,{className:c});const f=`${o.getCampDateText(u)} 개강 · ${o.getEventCampCostValue(d,m)}`;return e.jsx(v,{logo:s,title:`${l} ${a}`,adTitle:n,footerText:f,regEndDate:p,className:c,adProduct:t})}function v({adProduct:t,logo:s,title:l,adTitle:a,footerText:n,regEndDate:u,className:d}){return e.jsxs("div",{className:x.cn("relative z-10 flex h-full w-full flex-col items-start justify-between gap-2 overflow-hidden rounded-xl border border-grey-200 bg-white p-4 text-grey-800 md:p-5 lg:p-6",d),children:[e.jsx(q.Tag,{variant:"ad",size:"ad",style:{background:r.adProducts.event.background,color:r.adProducts.event.color},children:t===r.adProducts.dDay.value&&u?o.getCampDdayText(u):r.adProducts.event.value.toUpperCase()}),e.jsx("img",{src:s,alt:`${l} 로고`,className:"h-4 object-contain",loading:"lazy"}),e.jsxs("div",{className:"flex w-full flex-col items-start gap-2",children:[e.jsx("h3",{className:"line-clamp-2 h-auto text-sm font-normal md:text-base lg:h-12",title:l,children:l}),e.jsx("p",{className:"line-clamp-2 h-auto w-full break-keep rounded bg-grey-100 px-2 py-1 text-[13px] font-semibold text-grey-600 md:h-[54px] md:text-[15px] md:text-grey-800",children:a}),e.jsx("div",{className:"text-[13px] leading-[19px] text-grey-600",children:n})]})]})}function j({className:t}){return e.jsxs(i.Skeleton,{type:"background",className:x.cn("relative z-10 flex h-full w-full flex-col justify-between gap-2 overflow-hidden rounded-xl p-4 md:p-5 lg:p-6",t),children:[e.jsx(q.Tag,{variant:"ad",style:{background:r.adProducts.event.background,color:r.adProducts.event.color},className:"h-7 w-20 animate-pulse rounded-bl-lg rounded-br-none rounded-tl-none rounded-tr-lg px-2 py-1 text-sm",children:""}),e.jsx(i.Skeleton,{className:"h-4 w-1/2"}),e.jsxs("div",{className:"flex flex-col items-start gap-2",children:[e.jsx("div",{className:"h-10 w-full",children:e.jsx(i.Skeleton,{className:"h-5 w-4/5"})}),e.jsx(i.Skeleton,{className:"h-14 w-full"})]}),e.jsx(i.Skeleton,{className:"mt-2 h-[19px] w-2/3"})]})}exports.EventCard=h;
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
@font-face {
|
|
2
|
+
font-family: "Pretendard";
|
|
3
|
+
src:
|
|
4
|
+
url("https://cdn.jsdelivr.net/npm/pretendard/dist/web/static/pretendard.woff2") format("woff2"),
|
|
5
|
+
url("https://cdn.jsdelivr.net/npm/pretendard/dist/web/static/pretendard.woff") format("woff");
|
|
6
|
+
font-weight: 100 900;
|
|
7
|
+
font-display: swap;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
:root {
|
|
11
|
+
--background: #ffffff;
|
|
12
|
+
--foreground: #26282a;
|
|
13
|
+
--card: 0 0% 100%;
|
|
14
|
+
--card-foreground: 224 71.4% 4.1%;
|
|
15
|
+
--popover: 0 0% 100%;
|
|
16
|
+
--popover-foreground: 224 71.4% 4.1%;
|
|
17
|
+
--primary: #7344e3;
|
|
18
|
+
--primary-foreground: #ffffff;
|
|
19
|
+
--secondary: #26282a;
|
|
20
|
+
--secondary-foreground: #ffffff;
|
|
21
|
+
--muted: #a2a3a4;
|
|
22
|
+
--muted-foreground: #ffffff;
|
|
23
|
+
--muted-border: #dde2e6;
|
|
24
|
+
--accent: #3a8af1;
|
|
25
|
+
--accent-foreground: 220.9 39.3% 11%;
|
|
26
|
+
--destructive: #e91927;
|
|
27
|
+
--destructive-foreground: 210 20% 98%;
|
|
28
|
+
--border: #dde2e6;
|
|
29
|
+
--input: 220 13% 91%;
|
|
30
|
+
--ring: 224 71.4% 4.1%;
|
|
31
|
+
--radius: 0.5rem;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.dark {
|
|
35
|
+
--background: 224 71.4% 4.1%;
|
|
36
|
+
--foreground: 210 20% 98%;
|
|
37
|
+
--card: 224 71.4% 4.1%;
|
|
38
|
+
--card-foreground: 210 20% 98%;
|
|
39
|
+
--popover: 224 71.4% 4.1%;
|
|
40
|
+
--popover-foreground: 210 20% 98%;
|
|
41
|
+
--primary: 210 20% 98%;
|
|
42
|
+
--primary-foreground: 220.9 39.3% 11%;
|
|
43
|
+
--secondary: 215 27.9% 16.9%;
|
|
44
|
+
--secondary-foreground: 210 20% 98%;
|
|
45
|
+
--muted: 215 27.9% 16.9%;
|
|
46
|
+
--muted-foreground: 217.9 10.6% 64.9%;
|
|
47
|
+
--accent: 215 27.9% 16.9%;
|
|
48
|
+
--accent-foreground: 210 20% 98%;
|
|
49
|
+
--destructive: 0 62.8% 30.6%;
|
|
50
|
+
--destructive-foreground: 210 20% 98%;
|
|
51
|
+
--border: 215 27.9% 16.9%;
|
|
52
|
+
--input: 215 27.9% 16.9%;
|
|
53
|
+
--ring: 216 12.2% 83.9%;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.scrollbar-hidden {
|
|
57
|
+
-ms-overflow-style: none;
|
|
58
|
+
scrollbar-width: none;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.scrollbar-hidden::-webkit-scrollbar {
|
|
62
|
+
display: none;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.truncate-none {
|
|
66
|
+
overflow: visible;
|
|
67
|
+
display: block;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.truncate1,
|
|
71
|
+
.truncate2,
|
|
72
|
+
.truncate3 {
|
|
73
|
+
width: 100%;
|
|
74
|
+
overflow: hidden;
|
|
75
|
+
display: -webkit-box;
|
|
76
|
+
-webkit-box-orient: vertical;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.truncate1 {
|
|
80
|
+
-webkit-line-clamp: 1;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
.truncate2 {
|
|
84
|
+
-webkit-line-clamp: 2;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
.truncate3 {
|
|
88
|
+
-webkit-line-clamp: 3;
|
|
89
|
+
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsxs as e, jsx as r } from "react/jsx-runtime";
|
|
2
2
|
import { a as d } from "./index-DWvwbdTU.js";
|
|
3
|
-
import { c as n } from "./common-C3JaD1vJ.js";
|
|
4
3
|
import "./ui/accordion.es.js";
|
|
5
4
|
import "./ui/alert-dialog.es.js";
|
|
5
|
+
import { c as n } from "./common-C3JaD1vJ.js";
|
|
6
6
|
import "@radix-ui/react-aspect-ratio";
|
|
7
7
|
import "./ui/avatar.es.js";
|
|
8
8
|
import "./ui/badge.es.js";
|
|
@@ -39,12 +39,12 @@ import "./ui/toast.es.js";
|
|
|
39
39
|
import "./ui/toggle.es.js";
|
|
40
40
|
import "./ui/toggle-group.es.js";
|
|
41
41
|
import "./ui/tooltip.es.js";
|
|
42
|
-
function
|
|
43
|
-
logo:
|
|
42
|
+
function lr({
|
|
43
|
+
logo: l,
|
|
44
44
|
title: a,
|
|
45
45
|
subtitle: o,
|
|
46
46
|
thumbnail: p,
|
|
47
|
-
batchTitle:
|
|
47
|
+
batchTitle: i,
|
|
48
48
|
batchName: s = "",
|
|
49
49
|
brandName: c,
|
|
50
50
|
tag: x,
|
|
@@ -65,6 +65,7 @@ function ir({
|
|
|
65
65
|
/* @__PURE__ */ r(
|
|
66
66
|
u,
|
|
67
67
|
{
|
|
68
|
+
size: "ad",
|
|
68
69
|
variant: "ad",
|
|
69
70
|
style: {
|
|
70
71
|
background: d.premiumCard.background,
|
|
@@ -77,9 +78,9 @@ function ir({
|
|
|
77
78
|
t ? /* @__PURE__ */ r(w, {}) : /* @__PURE__ */ r(
|
|
78
79
|
h,
|
|
79
80
|
{
|
|
80
|
-
logo:
|
|
81
|
+
logo: l,
|
|
81
82
|
brandName: c,
|
|
82
|
-
batchTitle:
|
|
83
|
+
batchTitle: i,
|
|
83
84
|
batchName: s,
|
|
84
85
|
subtitle: o,
|
|
85
86
|
thumbnail: p
|
|
@@ -90,15 +91,15 @@ function ir({
|
|
|
90
91
|
);
|
|
91
92
|
}
|
|
92
93
|
function h({
|
|
93
|
-
logo:
|
|
94
|
+
logo: l,
|
|
94
95
|
brandName: a,
|
|
95
96
|
batchTitle: o,
|
|
96
97
|
batchName: p,
|
|
97
|
-
subtitle:
|
|
98
|
+
subtitle: i,
|
|
98
99
|
thumbnail: s
|
|
99
100
|
}) {
|
|
100
101
|
return /* @__PURE__ */ e("div", { className: "flex h-full flex-col items-start justify-start gap-2", children: [
|
|
101
|
-
/* @__PURE__ */ r("img", { src:
|
|
102
|
+
/* @__PURE__ */ r("img", { src: l, alt: `${a} 로고`, className: "h-4 object-contain", loading: "lazy" }),
|
|
102
103
|
/* @__PURE__ */ e("div", { className: "flex w-full flex-row items-start justify-between gap-6", children: [
|
|
103
104
|
/* @__PURE__ */ e("div", { className: "flex h-full grow flex-col items-start justify-between gap-2 pb-2", children: [
|
|
104
105
|
/* @__PURE__ */ e("h3", { className: "line-clamp-2 h-auto text-sm font-normal md:h-12 md:text-base", children: [
|
|
@@ -110,8 +111,8 @@ function h({
|
|
|
110
111
|
"h4",
|
|
111
112
|
{
|
|
112
113
|
className: "line-clamp-2 max-h-[56px] w-full break-keep rounded bg-grey-100 px-2 py-1 text-[13px] font-semibold text-grey-600 md:text-[15px] md:text-grey-800",
|
|
113
|
-
title:
|
|
114
|
-
children:
|
|
114
|
+
title: i,
|
|
115
|
+
children: i
|
|
115
116
|
}
|
|
116
117
|
)
|
|
117
118
|
] }),
|
|
@@ -140,5 +141,5 @@ function w() {
|
|
|
140
141
|
] });
|
|
141
142
|
}
|
|
142
143
|
export {
|
|
143
|
-
|
|
144
|
+
lr as P
|
|
144
145
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const e=require("react/jsx-runtime"),x=require("./index-B8SY6s5B.cjs");require("./ui/accordion.cjs.js");require("./ui/alert-dialog.cjs.js");const d=require("./common-Ds1lanOg.cjs");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/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");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/radio-group.cjs.js");require("./ui/scroll-area.cjs.js");require("./ui/select.cjs.js");require("./ui/separator.cjs.js");const s=require("./ui/skeleton.cjs.js");require("@radix-ui/react-slider");require("react");require("./ui/switch.cjs.js");require("./ui/tabs.cjs.js");const p=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");function h({logo:u,title:t,subtitle:i,thumbnail:a,batchTitle:l,batchName:n="",brandName:c,tag:m,isLoading:r=!1,className:o}){const q=r?s.Skeleton:"div";return e.jsxs(q,{title:t,type:"background",className:d.cn("relative z-10 box-border h-[154px] w-full max-w-[720px] cursor-pointer overflow-hidden rounded-xl bg-white p-4 xs:h-full md:h-[174px] md:max-w-[592px] md:p-5 lg:h-[174px] lg:p-6 xl:h-[174px]",r?"":"border border-grey-200",o),children:[e.jsx(p.Tag,{size:"ad",variant:"ad",style:{background:x.adProducts.premiumCard.background,color:x.adProducts.premiumCard.color},className:d.cn("rounded-bl-xl",r&&"h-7 w-28 animate-pulse"),children:r?"":m}),r?e.jsx(j,{}):e.jsx(f,{logo:u,brandName:c,batchTitle:l,batchName:n,subtitle:i,thumbnail:a})]})}function f({logo:u,brandName:t,batchTitle:i,batchName:a,subtitle:l,thumbnail:n}){return e.jsxs("div",{className:"flex h-full flex-col items-start justify-start gap-2",children:[e.jsx("img",{src:u,alt:`${t} 로고`,className:"h-4 object-contain",loading:"lazy"}),e.jsxs("div",{className:"flex w-full flex-row items-start justify-between gap-6",children:[e.jsxs("div",{className:"flex h-full grow flex-col items-start justify-between gap-2 pb-2",children:[e.jsxs("h3",{className:"line-clamp-2 h-auto text-sm font-normal md:h-12 md:text-base",children:[i," ",a]}),e.jsx("h4",{className:"line-clamp-2 max-h-[56px] w-full break-keep rounded bg-grey-100 px-2 py-1 text-[13px] font-semibold text-grey-600 md:text-[15px] md:text-grey-800",title:l,children:l})]}),e.jsx("img",{src:n,alt:`${i} 썸네일`,className:"h-[86px] w-[86px] shrink-0 grow-0 rounded-xl border border-grey-200 object-cover md:h-[96px] md:w-[96px]",loading:"lazy"})]})]})}function j(){return e.jsxs("div",{className:"flex h-full flex-col items-start justify-center gap-2",children:[e.jsx(s.Skeleton,{className:"h-4 w-1/2"}),e.jsxs("div",{className:"flex w-full items-start justify-between gap-6",children:[e.jsxs("div",{className:"flex h-full w-full flex-col items-start justify-between gap-2 pb-2",children:[e.jsx(s.Skeleton,{className:"h-5 w-4/5 lg:h-12"}),e.jsx(s.Skeleton,{className:"h-5 w-4/5"})]}),e.jsx(s.Skeleton,{className:"h-[86px] w-[86px] shrink-0 grow-0 rounded-xl md:h-[96px] md:w-[96px]"})]})]})}exports.PremiumCard=h;
|