boottent-design 0.1.241 → 0.1.243

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 (47) hide show
  1. package/README.md +1 -0
  2. package/dist/DESIGN.md +2 -2
  3. package/dist/{article-asset-card-Dfzz2i_R.cjs → article-asset-card-BHCS9imn.cjs} +1 -1
  4. package/dist/{article-asset-card-BArztiG9.js → article-asset-card-qcDIWfT1.js} +5 -5
  5. package/dist/blog-review-card-D0A_OCfZ.cjs +1 -0
  6. package/dist/blog-review-card-DnGMnBpK.js +44 -0
  7. package/dist/company-info-card-2s2tEb3h.cjs +1 -0
  8. package/dist/{company-info-card-CbfighQM.js → company-info-card-DW0pvEeQ.js} +23 -23
  9. package/dist/components/article-asset-card.cjs.js +1 -1
  10. package/dist/components/article-asset-card.es.js +1 -1
  11. package/dist/components/blog-review-card.cjs.js +1 -1
  12. package/dist/components/blog-review-card.es.js +1 -1
  13. package/dist/components/company-info-card.cjs.js +1 -1
  14. package/dist/components/company-info-card.es.js +1 -1
  15. package/dist/components/environment-asset-photo.cjs.js +1 -1
  16. package/dist/components/environment-asset-photo.es.js +1 -1
  17. package/dist/components/event-asset-banner.cjs.js +1 -1
  18. package/dist/components/event-asset-banner.es.js +1 -1
  19. package/dist/components/lecturer-card.cjs.js +1 -1
  20. package/dist/components/lecturer-card.es.js +1 -1
  21. package/dist/components/partner-list-card.cjs.js +1 -1
  22. package/dist/components/partner-list-card.es.js +1 -1
  23. package/dist/components/portfolio-asset-card.cjs.js +1 -1
  24. package/dist/components/portfolio-asset-card.es.js +1 -1
  25. package/dist/components.cjs.js +1 -1
  26. package/dist/components.es.js +8 -8
  27. package/dist/{environment-asset-photo-BnAny_--.js → environment-asset-photo-BCR9v2we.js} +14 -14
  28. package/dist/environment-asset-photo-CXxtAAax.cjs +1 -0
  29. package/dist/event-asset-banner-7oR-mk_W.cjs +1 -0
  30. package/dist/{event-asset-banner-Ciodpld1.js → event-asset-banner-CtIZrEkF.js} +9 -9
  31. package/dist/foundation.css +201 -216
  32. package/dist/{lecturer-card-DxUE7e2-.js → lecturer-card-B80BJVu3.js} +13 -13
  33. package/dist/lecturer-card-CGPXVDdx.cjs +1 -0
  34. package/dist/{partner-list-card-CICvp20I.js → partner-list-card-Bx-UZxGG.js} +45 -45
  35. package/dist/partner-list-card-DL_omz4v.cjs +1 -0
  36. package/dist/{portfolio-asset-card-BMp0bpvB.js → portfolio-asset-card-BUpfqafC.js} +19 -19
  37. package/dist/portfolio-asset-card-BmMuzr1N.cjs +1 -0
  38. package/dist/styles.css +1 -1
  39. package/package.json +1 -1
  40. package/dist/blog-review-card-4XlcSDgR.js +0 -44
  41. package/dist/blog-review-card-ONlNLtgL.cjs +0 -1
  42. package/dist/company-info-card-qkBbW3NR.cjs +0 -1
  43. package/dist/environment-asset-photo-sckCXEJl.cjs +0 -1
  44. package/dist/event-asset-banner-B5VlsOHj.cjs +0 -1
  45. package/dist/lecturer-card-DBiqWwkS.cjs +0 -1
  46. package/dist/partner-list-card-BFLCQG68.cjs +0 -1
  47. package/dist/portfolio-asset-card-LGVusg6G.cjs +0 -1
@@ -1,251 +1,189 @@
1
- /* Tailwind v3 preflight, wrapped in @layer base.
2
- Layered styles lose to unlayered consumer styles, so legacy app styles (e.g., partner's
3
- `h1 { font-size: 3rem !important }`) win automatically DS components still get the
4
- same base reset Storybook gets via `@tailwind base`. */
5
-
6
- @layer base {
7
- *,
8
- ::before,
9
- ::after {
10
- box-sizing: border-box;
11
- border-width: 0;
12
- border-style: solid;
13
- border-color: #e5e7eb;
14
- }
15
-
16
- ::before,
17
- ::after {
18
- --tw-content: "";
19
- }
20
-
21
- :host,
22
- html {
23
- line-height: 1.5;
24
- -webkit-text-size-adjust: 100%;
25
- -moz-tab-size: 4;
26
- tab-size: 4;
27
- font-family: Pretendard, system-ui, sans-serif;
28
- font-feature-settings: normal;
29
- font-variation-settings: normal;
30
- -webkit-tap-highlight-color: transparent;
31
- }
32
-
33
- body {
34
- margin: 0;
35
- line-height: inherit;
36
- }
37
-
38
- hr {
39
- height: 0;
40
- color: inherit;
41
- border-top-width: 1px;
42
- }
43
-
44
- abbr:where([title]) {
45
- text-decoration: underline dotted;
46
- }
1
+ /* Tailwind v3 preflight, mirrored verbatim except for two adjustments so it works as a
2
+ drop-in stylesheet for consumers (not as @tailwind base output):
3
+ - Element selectors are wrapped in :where() to keep specificity 0, so consumer-defined
4
+ element rules (e.g., legacy `h1 { font-size: 3rem !important }`) automatically win and
5
+ non-DS UI is unaffected. DS components still get the same base reset they get in
6
+ Storybook (where it comes from `@tailwind base`).
7
+ - The unwrappable universal selector keeps Tailwind's own specificity. */
8
+
9
+ *,
10
+ ::before,
11
+ ::after {
12
+ box-sizing: border-box;
13
+ border-width: 0;
14
+ border-style: solid;
15
+ border-color: #e5e7eb;
16
+ }
47
17
 
48
- h1,
49
- h2,
50
- h3,
51
- h4,
52
- h5,
53
- h6 {
54
- font-size: inherit;
55
- font-weight: inherit;
56
- }
18
+ ::before,
19
+ ::after {
20
+ --tw-content: "";
21
+ }
57
22
 
58
- a {
59
- color: inherit;
60
- text-decoration: inherit;
61
- }
23
+ :where(:host),
24
+ :where(html) {
25
+ line-height: 1.5;
26
+ -webkit-text-size-adjust: 100%;
27
+ -moz-tab-size: 4;
28
+ tab-size: 4;
29
+ font-family: Pretendard, system-ui, sans-serif;
30
+ font-feature-settings: normal;
31
+ font-variation-settings: normal;
32
+ -webkit-tap-highlight-color: transparent;
33
+ }
62
34
 
63
- b,
64
- strong {
65
- font-weight: bolder;
66
- }
35
+ :where(body) {
36
+ margin: 0;
37
+ line-height: inherit;
38
+ }
67
39
 
68
- code,
69
- kbd,
70
- samp,
71
- pre {
72
- font-family:
73
- ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
74
- "Courier New", monospace;
75
- font-feature-settings: normal;
76
- font-variation-settings: normal;
77
- font-size: 1em;
78
- }
40
+ :where(hr) {
41
+ height: 0;
42
+ color: inherit;
43
+ border-top-width: 1px;
44
+ }
79
45
 
80
- small {
81
- font-size: 80%;
82
- }
46
+ :where(abbr[title]) {
47
+ text-decoration: underline dotted;
48
+ }
83
49
 
84
- sub,
85
- sup {
86
- font-size: 75%;
87
- line-height: 0;
88
- position: relative;
89
- vertical-align: baseline;
90
- }
50
+ :where(h1, h2, h3, h4, h5, h6) {
51
+ font-size: inherit;
52
+ font-weight: inherit;
53
+ }
91
54
 
92
- sub {
93
- bottom: -0.25em;
94
- }
55
+ :where(a) {
56
+ color: inherit;
57
+ text-decoration: inherit;
58
+ }
95
59
 
96
- sup {
97
- top: -0.5em;
98
- }
60
+ :where(b, strong) {
61
+ font-weight: bolder;
62
+ }
99
63
 
100
- table {
101
- text-indent: 0;
102
- border-color: inherit;
103
- border-collapse: collapse;
104
- }
64
+ :where(code, kbd, samp, pre) {
65
+ font-family:
66
+ ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
67
+ "Courier New", monospace;
68
+ font-feature-settings: normal;
69
+ font-variation-settings: normal;
70
+ font-size: 1em;
71
+ }
105
72
 
106
- button,
107
- input,
108
- optgroup,
109
- select,
110
- textarea {
111
- font-family: inherit;
112
- font-feature-settings: inherit;
113
- font-variation-settings: inherit;
114
- font-size: 100%;
115
- font-weight: inherit;
116
- line-height: inherit;
117
- letter-spacing: inherit;
118
- color: inherit;
119
- margin: 0;
120
- padding: 0;
121
- }
73
+ :where(small) {
74
+ font-size: 80%;
75
+ }
122
76
 
123
- button,
124
- select {
125
- text-transform: none;
126
- }
77
+ :where(sub, sup) {
78
+ font-size: 75%;
79
+ line-height: 0;
80
+ position: relative;
81
+ vertical-align: baseline;
82
+ }
127
83
 
128
- button,
129
- input:where([type="button"]),
130
- input:where([type="reset"]),
131
- input:where([type="submit"]) {
132
- -webkit-appearance: button;
133
- background-color: transparent;
134
- background-image: none;
135
- }
84
+ :where(sub) {
85
+ bottom: -0.25em;
86
+ }
136
87
 
137
- :-moz-focusring {
138
- outline: auto;
139
- }
88
+ :where(sup) {
89
+ top: -0.5em;
90
+ }
140
91
 
141
- :-moz-ui-invalid {
142
- box-shadow: none;
143
- }
92
+ :where(table) {
93
+ text-indent: 0;
94
+ border-color: inherit;
95
+ border-collapse: collapse;
96
+ }
144
97
 
145
- progress {
146
- vertical-align: baseline;
147
- }
98
+ :where(button, input, optgroup, select, textarea) {
99
+ font-family: inherit;
100
+ font-feature-settings: inherit;
101
+ font-variation-settings: inherit;
102
+ font-size: 100%;
103
+ font-weight: inherit;
104
+ line-height: inherit;
105
+ letter-spacing: inherit;
106
+ color: inherit;
107
+ margin: 0;
108
+ padding: 0;
109
+ }
148
110
 
149
- ::-webkit-inner-spin-button,
150
- ::-webkit-outer-spin-button {
151
- height: auto;
152
- }
111
+ :where(button, select) {
112
+ text-transform: none;
113
+ }
153
114
 
154
- [type="search"] {
155
- -webkit-appearance: textfield;
156
- outline-offset: -2px;
157
- }
115
+ :where(button, input[type="button"], input[type="reset"], input[type="submit"]) {
116
+ -webkit-appearance: button;
117
+ background-color: transparent;
118
+ background-image: none;
119
+ }
158
120
 
159
- ::-webkit-search-decoration {
160
- -webkit-appearance: none;
161
- }
121
+ :where(progress) {
122
+ vertical-align: baseline;
123
+ }
162
124
 
163
- ::-webkit-file-upload-button {
164
- -webkit-appearance: button;
165
- font: inherit;
166
- }
125
+ :where([type="search"]) {
126
+ -webkit-appearance: textfield;
127
+ outline-offset: -2px;
128
+ }
167
129
 
168
- summary {
169
- display: list-item;
170
- }
130
+ :where(summary) {
131
+ display: list-item;
132
+ }
171
133
 
172
- blockquote,
173
- dl,
174
- dd,
175
- h1,
176
- h2,
177
- h3,
178
- h4,
179
- h5,
180
- h6,
181
- hr,
182
- figure,
183
- p,
184
- pre {
185
- margin: 0;
186
- }
134
+ :where(blockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre) {
135
+ margin: 0;
136
+ }
187
137
 
188
- fieldset {
189
- margin: 0;
190
- padding: 0;
191
- }
138
+ :where(fieldset) {
139
+ margin: 0;
140
+ padding: 0;
141
+ }
192
142
 
193
- legend {
194
- padding: 0;
195
- }
143
+ :where(legend) {
144
+ padding: 0;
145
+ }
196
146
 
197
- ol,
198
- ul,
199
- menu {
200
- list-style: none;
201
- margin: 0;
202
- padding: 0;
203
- }
147
+ :where(ol, ul, menu) {
148
+ list-style: none;
149
+ margin: 0;
150
+ padding: 0;
151
+ }
204
152
 
205
- dialog {
206
- padding: 0;
207
- }
153
+ :where(dialog) {
154
+ padding: 0;
155
+ }
208
156
 
209
- textarea {
210
- resize: vertical;
211
- }
157
+ :where(textarea) {
158
+ resize: vertical;
159
+ }
212
160
 
213
- input::placeholder,
214
- textarea::placeholder {
215
- opacity: 1;
216
- color: #9ca3af;
217
- }
161
+ :where(input)::placeholder,
162
+ :where(textarea)::placeholder {
163
+ opacity: 1;
164
+ color: #9ca3af;
165
+ }
218
166
 
219
- button,
220
- [role="button"] {
221
- cursor: pointer;
222
- }
167
+ :where(button, [role="button"]) {
168
+ cursor: pointer;
169
+ }
223
170
 
224
- :disabled {
225
- cursor: default;
226
- }
171
+ :where(:disabled) {
172
+ cursor: default;
173
+ }
227
174
 
228
- img,
229
- svg,
230
- video,
231
- canvas,
232
- audio,
233
- iframe,
234
- embed,
235
- object {
236
- display: block;
237
- vertical-align: middle;
238
- }
175
+ :where(img, svg, video, canvas, audio, iframe, embed, object) {
176
+ display: block;
177
+ vertical-align: middle;
178
+ }
239
179
 
240
- img,
241
- video {
242
- max-width: 100%;
243
- height: auto;
244
- }
180
+ :where(img, video) {
181
+ max-width: 100%;
182
+ height: auto;
183
+ }
245
184
 
246
- [hidden] {
247
- display: none;
248
- }
185
+ :where([hidden]) {
186
+ display: none;
249
187
  }
250
188
 
251
189
  @font-face {
@@ -303,6 +241,53 @@
303
241
  --ring: 216 12.2% 83.9%;
304
242
  }
305
243
 
244
+ .bt-ds-surface {
245
+ border-width: 1px !important;
246
+ border-style: solid !important;
247
+ border-color: #dde2e6 !important;
248
+ background-color: var(--background) !important;
249
+ }
250
+
251
+ .bt-ds-surface-white {
252
+ background-color: #ffffff !important;
253
+ }
254
+
255
+ .bt-ds-radius-8 {
256
+ border-radius: 8px !important;
257
+ }
258
+
259
+ .bt-ds-radius-10 {
260
+ border-radius: 10px !important;
261
+ }
262
+
263
+ .bt-ds-radius-12 {
264
+ border-radius: 12px !important;
265
+ }
266
+
267
+ .bt-ds-radius-16 {
268
+ border-radius: 16px !important;
269
+ }
270
+
271
+ .bt-ds-radius-full {
272
+ border-radius: 9999px !important;
273
+ }
274
+
275
+ @media (min-width: 480px) {
276
+ .bt-ds-xs-radius-left-8 {
277
+ border-top-left-radius: 8px !important;
278
+ border-bottom-left-radius: 8px !important;
279
+ border-top-right-radius: 0 !important;
280
+ border-bottom-right-radius: 0 !important;
281
+ }
282
+
283
+ .bt-ds-xs-border-r-only {
284
+ border-top-width: 0 !important;
285
+ border-bottom-width: 0 !important;
286
+ border-left-width: 0 !important;
287
+ border-right-width: 1px !important;
288
+ }
289
+ }
290
+
306
291
  .scrollbar-hidden {
307
292
  -ms-overflow-style: none;
308
293
  scrollbar-width: none;
@@ -45,16 +45,16 @@ function ur({
45
45
  roleLabel: u,
46
46
  isMobile: o,
47
47
  isExpanded: t,
48
- onToggleExpand: g,
48
+ onToggleExpand: f,
49
49
  description: l,
50
- idx: f,
50
+ idx: g,
51
51
  numberOfLecturers: h,
52
52
  imagePriority: b,
53
53
  imageLoading: x,
54
54
  imageFetchPriority: N,
55
55
  imageDecoding: w
56
56
  }) {
57
- const m = `${a}-name`, p = `${a}-srdesc`, s = `${a}-content`, n = o && l.length > 3, v = $({
57
+ const m = `${a}-name`, s = `${a}-srdesc`, p = `${a}-content`, c = o && l.length > 3, v = $({
58
58
  imagePriority: b,
59
59
  imageLoading: x,
60
60
  imageFetchPriority: N,
@@ -65,11 +65,11 @@ function ur({
65
65
  {
66
66
  "aria-labelledby": m,
67
67
  className: d(
68
- "flex h-full w-full items-start gap-5 rounded-[10px] border border-grey-200 bg-background px-[30px] py-5",
68
+ "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",
69
69
  h === 1 && "col-span-2"
70
70
  ),
71
71
  children: [
72
- /* @__PURE__ */ r("div", { className: "shrink-0", children: e.imageUrl ? /* @__PURE__ */ r("div", { className: "relative flex aspect-square w-[60px] items-center justify-center overflow-hidden rounded-full border border-grey-200", children: /* @__PURE__ */ r(
72
+ /* @__PURE__ */ r("div", { className: "shrink-0", children: e.imageUrl ? /* @__PURE__ */ r("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__ */ r(
73
73
  "img",
74
74
  {
75
75
  src: e.imageUrl,
@@ -90,28 +90,28 @@ function ur({
90
90
  /* @__PURE__ */ r("span", { id: m, children: e.lecturerName }),
91
91
  /* @__PURE__ */ r(A, { variant: "solid-secondary-100", size: "sm", className: "px-1 py-0.5", children: u })
92
92
  ] }),
93
- /* @__PURE__ */ r("span", { className: "sr-only", id: p, children: "강사 소개를 목록으로 안내한다." }),
93
+ /* @__PURE__ */ r("span", { className: "sr-only", id: s, children: "강사 소개를 목록으로 안내한다." }),
94
94
  /* @__PURE__ */ i(
95
95
  "ul",
96
96
  {
97
- id: s,
98
- "aria-describedby": p,
99
- "aria-expanded": n ? t : void 0,
97
+ id: p,
98
+ "aria-describedby": s,
99
+ "aria-expanded": c ? t : void 0,
100
100
  className: d(
101
101
  "relative flex w-full flex-col whitespace-pre-wrap break-keep text-grey-600",
102
102
  o && t && "pb-6"
103
103
  ),
104
104
  children: [
105
105
  l.map(
106
- (y, c) => o && !t && c >= 3 ? null : /* @__PURE__ */ r("li", { children: y }, c)
106
+ (y, n) => o && !t && n >= 3 ? null : /* @__PURE__ */ r("li", { children: y }, n)
107
107
  ),
108
- n && /* @__PURE__ */ r("li", { className: "absolute bottom-0 right-0", children: /* @__PURE__ */ i(
108
+ c && /* @__PURE__ */ r("li", { className: "absolute bottom-0 right-0", children: /* @__PURE__ */ i(
109
109
  "button",
110
110
  {
111
111
  type: "button",
112
- onClick: () => g(f),
112
+ onClick: () => f(g),
113
113
  "aria-expanded": t,
114
- "aria-controls": s,
114
+ "aria-controls": p,
115
115
  className: "bg-white pl-1 text-main-600",
116
116
  children: [
117
117
  t ? "...정보 숨기기" : "...정보 더보기",
@@ -0,0 +1 @@
1
+ "use strict";const e=require("react/jsx-runtime"),o=require("./common-Ds1lanOg.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/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 w=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/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("react");require("./ui/switch.cjs.js");require("./ui/tabs.cjs.js");const v=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 y=require("./image-loading-DZFBFoVv.cjs");function L({keyPrefix:a,lecturer:r,roleLabel:q,isMobile:s,isExpanded:i,onToggleExpand:m,description:l,idx:g,numberOfLecturers:x,imagePriority:h,imageLoading:b,imageFetchPriority:f,imageDecoding:p}){const t=`${a}-name`,u=`${a}-srdesc`,n=`${a}-content`,c=s&&l.length>3,j=y.getImageLoadingAttributes({imagePriority:h,imageLoading:b,imageFetchPriority:f,imageDecoding:p});return e.jsxs("article",{"aria-labelledby":t,className:o.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",x===1&&"col-span-2"),children:[e.jsx("div",{className:"shrink-0",children:r.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:r.imageUrl,alt:`${r.lecturerName} 프로필 이미지`,className:"h-full w-full object-cover",...j})}):e.jsx("div",{className:"relative flex aspect-square w-[60px] items-center justify-center overflow-hidden rounded-full bg-grey-100","aria-label":`${r.lecturerName} 프로필 이미지 없음`,children:e.jsx(w.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:t,children:r.lecturerName}),e.jsx(v.Tag,{variant:"solid-secondary-100",size:"sm",className:"px-1 py-0.5",children:q})]}),e.jsx("span",{className:"sr-only",id:u,children:"강사 소개를 목록으로 안내한다."}),e.jsxs("ul",{id:n,"aria-describedby":u,"aria-expanded":c?i:void 0,className:o.cn("relative flex w-full flex-col whitespace-pre-wrap break-keep text-grey-600",s&&i&&"pb-6"),children:[l.map((N,d)=>s&&!i&&d>=3?null:e.jsx("li",{children:N},d)),c&&e.jsx("li",{className:"absolute bottom-0 right-0",children:e.jsxs("button",{type:"button",onClick:()=>m(g),"aria-expanded":i,"aria-controls":n,className:"bg-white pl-1 text-main-600",children:[i?"...정보 숨기기":"...정보 더보기",e.jsx("span",{"aria-hidden":"true",className:"absolute right-full h-full w-8 bg-gradient-to-r from-transparent to-white"})]})})]})]})]})}exports.LecturerCard=L;