UNPKG

1.34 kBJavaScriptView Raw
1import {
2 card_styles_default
3} from "./chunk.ADBSWGHR.js";
4import {
5 HasSlotController
6} from "./chunk.3IYPB6RR.js";
7import {
8 o
9} from "./chunk.IAELDRGJ.js";
10import {
11 n
12} from "./chunk.VKNZYXSO.js";
13import {
14 $,
15 s
16} from "./chunk.WWAD5WF4.js";
17import {
18 __decorateClass
19} from "./chunk.K2NRSETB.js";
20
21// src/components/card/card.ts
22var SlCard = class extends s {
23 constructor() {
24 super(...arguments);
25 this.hasSlotController = new HasSlotController(this, "footer", "header", "image");
26 }
27 render() {
28 return $`
29 <div
30 part="base"
31 class=${o({
32 card: true,
33 "card--has-footer": this.hasSlotController.test("footer"),
34 "card--has-image": this.hasSlotController.test("image"),
35 "card--has-header": this.hasSlotController.test("header")
36 })}
37 >
38 <div part="image" class="card__image">
39 <slot name="image"></slot>
40 </div>
41
42 <div part="header" class="card__header">
43 <slot name="header"></slot>
44 </div>
45
46 <div part="body" class="card__body">
47 <slot></slot>
48 </div>
49
50 <div part="footer" class="card__footer">
51 <slot name="footer"></slot>
52 </div>
53 </div>
54 `;
55 }
56};
57SlCard.styles = card_styles_default;
58SlCard = __decorateClass([
59 n("sl-card")
60], SlCard);
61
62export {
63 SlCard
64};