@muibook/components 9.1.0 → 10.0.0

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 (40) hide show
  1. package/dist/esm/components/mui-accordion/block/index.js +6 -6
  2. package/dist/esm/components/mui-alert/index.js +43 -40
  3. package/dist/esm/components/mui-badge/index.js +15 -7
  4. package/dist/esm/components/mui-button/index.js +41 -42
  5. package/dist/esm/components/mui-card/body/index.js +31 -31
  6. package/dist/esm/components/mui-card/card/index.js +6 -6
  7. package/dist/esm/components/mui-card/footer/index.js +10 -10
  8. package/dist/esm/components/mui-carousel/controller/index.js +75 -9
  9. package/dist/esm/components/mui-chip/index.js +40 -31
  10. package/dist/esm/components/mui-dropdown/index.js +45 -44
  11. package/dist/esm/components/mui-icons/ai/index.js +58 -0
  12. package/dist/esm/components/mui-icons/index.js +8 -0
  13. package/dist/esm/components/mui-icons/pin/index.js +53 -0
  14. package/dist/esm/components/mui-icons/pin-slash/index.js +53 -0
  15. package/dist/esm/components/mui-icons/rectangle/index.js +55 -0
  16. package/dist/esm/components/mui-icons/rectangle-bottom-panel/index.js +58 -0
  17. package/dist/esm/components/mui-icons/rectangle-dashed/index.js +55 -0
  18. package/dist/esm/components/mui-icons/rectangle-left-drawer/index.js +55 -0
  19. package/dist/esm/components/mui-icons/rectangle-media-text/index.js +55 -0
  20. package/dist/esm/components/mui-link/index.js +44 -44
  21. package/dist/esm/components/mui-slat/slat/index.js +6 -6
  22. package/dist/esm/components/mui-switch/index.js +19 -19
  23. package/dist/esm/components/mui-table/cell/index.js +4 -4
  24. package/dist/esm/components/mui-tabs/item/index.js +9 -9
  25. package/dist/esm/components/mui-tabs/tab-bar/index.js +17 -16
  26. package/dist/esm/css/mui-brand.css +1 -1
  27. package/dist/esm/css/mui-tokens.css +4 -0
  28. package/dist/esm/custom-elements.json +705 -275
  29. package/dist/esm/index.js +12 -4
  30. package/dist/types/components/mui-icons/ai.d.ts +1 -0
  31. package/dist/types/components/mui-icons/index.d.ts +8 -0
  32. package/dist/types/components/mui-icons/pin-slash.d.ts +1 -0
  33. package/dist/types/components/mui-icons/pin.d.ts +1 -0
  34. package/dist/types/components/mui-icons/rectangle-bottom-panel.d.ts +1 -0
  35. package/dist/types/components/mui-icons/rectangle-dashed.d.ts +1 -0
  36. package/dist/types/components/mui-icons/rectangle-left-drawer.d.ts +1 -0
  37. package/dist/types/components/mui-icons/rectangle-media-text.d.ts +1 -0
  38. package/dist/types/components/mui-icons/rectangle.d.ts +1 -0
  39. package/dist/types/index.d.ts +8 -0
  40. package/package.json +29 -1
@@ -0,0 +1,53 @@
1
+ class c extends HTMLElement {
2
+ static get observedAttributes() {
3
+ return ["size", "color"];
4
+ }
5
+ constructor() {
6
+ super(), this.attachShadow({ mode: "open" });
7
+ }
8
+ connectedCallback() {
9
+ this.render();
10
+ }
11
+ attributeChangedCallback(e, t, s) {
12
+ (e === "size" || e === "color") && t !== s && this.render();
13
+ }
14
+ render() {
15
+ const e = this.getAttribute("size") || "small", t = this.getAttribute("color"), l = t && {
16
+ default: "var(--icon-color-default)",
17
+ inverted: "var(--icon-color-inverted)"
18
+ }[t] || t || "var(--icon-color-default)", i = {
19
+ "x-small": "1.6rem",
20
+ small: "2.1rem",
21
+ medium: "2.4rem",
22
+ large: "2.8rem"
23
+ }, o = i[e] ?? i.small;
24
+ this.classList.add("mui-icon"), this.shadowRoot && (this.shadowRoot.innerHTML = /*html*/
25
+ `
26
+ <style>
27
+ :host {
28
+ width: ${o};
29
+ height: ${o};
30
+ display: inline-flex;
31
+ align-items: center;
32
+ justify-content: center;
33
+ fill: ${l};
34
+ }
35
+ svg {
36
+ width: 100%;
37
+ display: block;
38
+ fill: inherit;
39
+ }
40
+ </style>
41
+
42
+ <svg
43
+ xmlns="http://www.w3.org/2000/svg"
44
+ viewBox="0 0 36 36"
45
+ >
46
+ <path d="M12.552 6.171h11.325c.922 0 1.568.615 1.568 1.456 0 .41-.164.85-.492 1.25-.512.646-1.66 1.589-3.116 2.511l.329 4.96c2.756 1.118 4.58 3.342 4.58 5.678 0 .666-.286 1.2-.768 1.517L14.551 12.095l.04-.707c-1.455-.922-2.613-1.865-3.125-2.51-.318-.4-.482-.852-.482-1.251 0-.84.646-1.456 1.568-1.456m-4.91 3.7c-.327-.328-.337-.932 0-1.27a.91.91 0 0 1 1.292.02l19.412 19.39a.89.89 0 0 1 0 1.261.903.903 0 0 1-1.271 0zm2.04 12.155c0-1.885 1.2-3.7 3.096-4.899l6.928 6.929h-.144v4.837c0 1.056-.973 2.993-1.342 2.993-.38 0-1.353-1.937-1.353-2.993v-5.012h-5.289c-1.127 0-1.896-.748-1.896-1.855"></path>
47
+ </svg>
48
+
49
+
50
+ `);
51
+ }
52
+ }
53
+ customElements.get("mui-icon-pin-slash") || customElements.define("mui-icon-pin-slash", c);
@@ -0,0 +1,55 @@
1
+ class r extends HTMLElement {
2
+ static get observedAttributes() {
3
+ return ["size", "color"];
4
+ }
5
+ constructor() {
6
+ super(), this.attachShadow({ mode: "open" });
7
+ }
8
+ connectedCallback() {
9
+ this.render();
10
+ }
11
+ attributeChangedCallback(e, t, i) {
12
+ (e === "size" || e === "color") && t !== i && this.render();
13
+ }
14
+ render() {
15
+ const e = this.getAttribute("size") || "small", t = this.getAttribute("color"), l = t && {
16
+ default: "var(--icon-color-default)",
17
+ inverted: "var(--icon-color-inverted)"
18
+ }[t] || t || "var(--icon-color-default)", o = {
19
+ "x-small": "1.6rem",
20
+ small: "2.1rem",
21
+ medium: "2.4rem",
22
+ large: "2.8rem"
23
+ }, s = o[e] ?? o.small;
24
+ this.classList.add("mui-icon"), this.shadowRoot && (this.shadowRoot.innerHTML = /*html*/
25
+ `
26
+ <style>
27
+ :host {
28
+ width: ${s};
29
+ height: ${s};
30
+ display: inline-flex;
31
+ align-items: center;
32
+ justify-content: center;
33
+ fill: ${l};
34
+ }
35
+ svg {
36
+ width: 100%;
37
+ display: block;
38
+ fill: inherit;
39
+ }
40
+ </style>
41
+
42
+ <svg
43
+ xmlns="http://www.w3.org/2000/svg"
44
+ viewBox="0 0 36 36"
45
+ >
46
+ <path
47
+ d="M32.998 25.033a5.143 5.143 0 0 1-5.143 5.143H8.145a5.143 5.143 0 0 1-5.143-5.143V10.967a5.143 5.143 0 0 1 5.143-5.143h19.71a5.143 5.143 0 0 1 5.143 5.143zM8.145 9.681c-.71 0-1.286.576-1.286 1.286v14.066c0 .71.576 1.286 1.286 1.286h19.71c.71 0 1.285-.576 1.286-1.286V10.967c0-.71-.576-1.286-1.286-1.286z"
48
+ ></path>
49
+ </svg>
50
+
51
+
52
+ `);
53
+ }
54
+ }
55
+ customElements.get("mui-icon-rectangle") || customElements.define("mui-icon-rectangle", r);
@@ -0,0 +1,58 @@
1
+ class s extends HTMLElement {
2
+ static get observedAttributes() {
3
+ return ["size", "color"];
4
+ }
5
+ constructor() {
6
+ super(), this.attachShadow({ mode: "open" });
7
+ }
8
+ connectedCallback() {
9
+ this.render();
10
+ }
11
+ attributeChangedCallback(e, t, l) {
12
+ (e === "size" || e === "color") && t !== l && this.render();
13
+ }
14
+ render() {
15
+ const e = this.getAttribute("size") || "small", t = this.getAttribute("color"), i = t && {
16
+ default: "var(--icon-color-default)",
17
+ inverted: "var(--icon-color-inverted)"
18
+ }[t] || t || "var(--icon-color-default)", c = {
19
+ "x-small": "1.6rem",
20
+ small: "2.1rem",
21
+ medium: "2.4rem",
22
+ large: "2.8rem"
23
+ }, o = c[e] ?? c.small;
24
+ this.classList.add("mui-icon"), this.shadowRoot && (this.shadowRoot.innerHTML = /*html*/
25
+ `
26
+ <style>
27
+ :host {
28
+ width: ${o};
29
+ height: ${o};
30
+ display: inline-flex;
31
+ align-items: center;
32
+ justify-content: center;
33
+ fill: ${i};
34
+ }
35
+ svg {
36
+ width: 100%;
37
+ display: block;
38
+ fill: inherit;
39
+ }
40
+ </style>
41
+
42
+ <svg
43
+ xmlns="http://www.w3.org/2000/svg"
44
+ viewBox="0 0 36 36"
45
+ >
46
+ <path
47
+ d="M32.998 25.033a5.143 5.143 0 0 1-5.143 5.143H8.145a5.143 5.143 0 0 1-5.143-5.143V10.967a5.143 5.143 0 0 1 5.143-5.143h19.71a5.143 5.143 0 0 1 5.143 5.143zM8.145 9.681c-.71 0-1.286.576-1.286 1.286v14.066c0 .71.576 1.286 1.286 1.286h19.71c.71 0 1.285-.576 1.286-1.286V10.967c0-.71-.576-1.286-1.286-1.286z"
48
+ ></path>
49
+ <path
50
+ d="M19.927 22.244v2.572h-3.854v-2.572zm1.93-1.93c0-.956-.003-1.48-.041-1.853l-.005-.031-.03-.004c-.373-.038-.897-.041-1.854-.041h-3.854c-.957 0-1.481.003-1.854.04l-.031.005-.004.031c-.038.372-.041.897-.041 1.853 0 .957.003 1.481.041 1.854l.004.03q.015.002.031.005c.373.038.897.041 1.854.041v2.572l-1.197-.008c-.96-.019-1.568-.088-2.038-.35l-.124-.077a2.6 2.6 0 0 1-.559-.506l-.15-.202c-.325-.487-.407-1.117-.427-2.163l-.007-1.196c0-1.694 0-2.594.358-3.234l.077-.124c.14-.21.31-.4.505-.56l.203-.149c.486-.325 1.116-.407 2.162-.428l1.197-.006h3.854c1.807 0 2.71 0 3.359.434.28.188.52.428.708.709.434.648.435 1.552.435 3.358l-.007 1.196c-.02 1.046-.102 1.676-.428 2.163l-.15.202a2.6 2.6 0 0 1-.558.506c-.487.325-1.116.407-2.162.427l-1.197.008v-2.572c.957 0 1.481-.003 1.854-.041l.03-.005q.002-.015.005-.03c.038-.373.041-.897.041-1.854"
51
+ ></path>
52
+ </svg>
53
+
54
+
55
+ `);
56
+ }
57
+ }
58
+ customElements.get("mui-icon-rectangle-bottom-panel") || customElements.define("mui-icon-rectangle-bottom-panel", s);
@@ -0,0 +1,55 @@
1
+ class r extends HTMLElement {
2
+ static get observedAttributes() {
3
+ return ["size", "color"];
4
+ }
5
+ constructor() {
6
+ super(), this.attachShadow({ mode: "open" });
7
+ }
8
+ connectedCallback() {
9
+ this.render();
10
+ }
11
+ attributeChangedCallback(t, e, s) {
12
+ (t === "size" || t === "color") && e !== s && this.render();
13
+ }
14
+ render() {
15
+ const t = this.getAttribute("size") || "small", e = this.getAttribute("color"), l = e && {
16
+ default: "var(--icon-color-default)",
17
+ inverted: "var(--icon-color-inverted)"
18
+ }[e] || e || "var(--icon-color-default)", i = {
19
+ "x-small": "1.6rem",
20
+ small: "2.1rem",
21
+ medium: "2.4rem",
22
+ large: "2.8rem"
23
+ }, o = i[t] ?? i.small;
24
+ this.classList.add("mui-icon"), this.shadowRoot && (this.shadowRoot.innerHTML = /*html*/
25
+ `
26
+ <style>
27
+ :host {
28
+ width: ${o};
29
+ height: ${o};
30
+ display: inline-flex;
31
+ align-items: center;
32
+ justify-content: center;
33
+ fill: ${l};
34
+ }
35
+ svg {
36
+ width: 100%;
37
+ display: block;
38
+ fill: inherit;
39
+ }
40
+ </style>
41
+
42
+ <svg
43
+ xmlns="http://www.w3.org/2000/svg"
44
+ viewBox="0 0 36 36"
45
+ >
46
+ <path
47
+ d="M6.86 22.916v2.117c0 .71.575 1.286 1.285 1.286h3.999v3.857H8.145a5.143 5.143 0 0 1-5.143-5.143v-2.117zm14.425 3.403v3.857h-6.57v-3.857zm11.713-1.286a5.143 5.143 0 0 1-5.143 5.143h-3.999v-3.857h4c.709 0 1.284-.576 1.285-1.286v-2.117h3.857zm0-4.688h-3.857v-4.69h3.857zm-26.139-4.69v4.69H3.002v-4.69zm20.996-9.831a5.143 5.143 0 0 1 5.143 5.143v2.117h-3.857v-2.117c0-.71-.576-1.286-1.286-1.286h-3.999V5.824zM12.144 9.681H8.145c-.71 0-1.286.576-1.286 1.286v2.117H3.002v-2.117a5.143 5.143 0 0 1 5.143-5.143h3.999zm9.14 0h-6.569V5.824h6.57z"
48
+ ></path>
49
+ </svg>
50
+
51
+
52
+ `);
53
+ }
54
+ }
55
+ customElements.get("mui-icon-rectangle-dashed") || customElements.define("mui-icon-rectangle-dashed", r);
@@ -0,0 +1,55 @@
1
+ class l extends HTMLElement {
2
+ static get observedAttributes() {
3
+ return ["size", "color"];
4
+ }
5
+ constructor() {
6
+ super(), this.attachShadow({ mode: "open" });
7
+ }
8
+ connectedCallback() {
9
+ this.render();
10
+ }
11
+ attributeChangedCallback(t, e, i) {
12
+ (t === "size" || t === "color") && e !== i && this.render();
13
+ }
14
+ render() {
15
+ const t = this.getAttribute("size") || "small", e = this.getAttribute("color"), r = e && {
16
+ default: "var(--icon-color-default)",
17
+ inverted: "var(--icon-color-inverted)"
18
+ }[e] || e || "var(--icon-color-default)", o = {
19
+ "x-small": "1.6rem",
20
+ small: "2.1rem",
21
+ medium: "2.4rem",
22
+ large: "2.8rem"
23
+ }, s = o[t] ?? o.small;
24
+ this.classList.add("mui-icon"), this.shadowRoot && (this.shadowRoot.innerHTML = /*html*/
25
+ `
26
+ <style>
27
+ :host {
28
+ width: ${s};
29
+ height: ${s};
30
+ display: inline-flex;
31
+ align-items: center;
32
+ justify-content: center;
33
+ fill: ${r};
34
+ }
35
+ svg {
36
+ width: 100%;
37
+ display: block;
38
+ fill: inherit;
39
+ }
40
+ </style>
41
+
42
+ <svg
43
+ xmlns="http://www.w3.org/2000/svg"
44
+ viewBox="0 0 36 36"
45
+ >
46
+ <path
47
+ d="M27.855 5.823a5.143 5.143 0 0 1 5.143 5.143v14.068a5.143 5.143 0 0 1-5.143 5.143H8.145a5.143 5.143 0 0 1-5.143-5.143V10.966a5.143 5.143 0 0 1 5.143-5.143zM15.053 26.32h12.802c.71 0 1.285-.577 1.286-1.286V10.968c0-.71-.576-1.286-1.286-1.286H15.053zM8.145 9.682c-.71 0-1.286.576-1.286 1.285v14.067c0 .71.576 1.285 1.286 1.286h4.337V9.682z"
48
+ ></path>
49
+ </svg>
50
+
51
+
52
+ `);
53
+ }
54
+ }
55
+ customElements.get("mui-icon-rectangle-left-drawer") || customElements.define("mui-icon-rectangle-left-drawer", l);
@@ -0,0 +1,55 @@
1
+ class l extends HTMLElement {
2
+ static get observedAttributes() {
3
+ return ["size", "color"];
4
+ }
5
+ constructor() {
6
+ super(), this.attachShadow({ mode: "open" });
7
+ }
8
+ connectedCallback() {
9
+ this.render();
10
+ }
11
+ attributeChangedCallback(t, e, i) {
12
+ (t === "size" || t === "color") && e !== i && this.render();
13
+ }
14
+ render() {
15
+ const t = this.getAttribute("size") || "small", e = this.getAttribute("color"), s = e && {
16
+ default: "var(--icon-color-default)",
17
+ inverted: "var(--icon-color-inverted)"
18
+ }[e] || e || "var(--icon-color-default)", o = {
19
+ "x-small": "1.6rem",
20
+ small: "2.1rem",
21
+ medium: "2.4rem",
22
+ large: "2.8rem"
23
+ }, c = o[t] ?? o.small;
24
+ this.classList.add("mui-icon"), this.shadowRoot && (this.shadowRoot.innerHTML = /*html*/
25
+ `
26
+ <style>
27
+ :host {
28
+ width: ${c};
29
+ height: ${c};
30
+ display: inline-flex;
31
+ align-items: center;
32
+ justify-content: center;
33
+ fill: ${s};
34
+ }
35
+ svg {
36
+ width: 100%;
37
+ display: block;
38
+ fill: inherit;
39
+ }
40
+ </style>
41
+
42
+ <svg
43
+ xmlns="http://www.w3.org/2000/svg"
44
+ viewBox="0 0 36 36"
45
+ >
46
+ <path
47
+ d="M32.998 25.033a5.143 5.143 0 0 1-5.143 5.143H8.145a5.143 5.143 0 0 1-5.143-5.143V10.967a5.143 5.143 0 0 1 5.143-5.143h19.71a5.143 5.143 0 0 1 5.143 5.143zM8.145 9.681c-.71 0-1.286.576-1.286 1.286v14.066c0 .71.576 1.286 1.286 1.286h19.71c.71 0 1.285-.576 1.286-1.286V10.967c0-.71-.576-1.286-1.286-1.286zM22.67 22.103c.527 0 .91.396.91.924 0 .5-.383.896-.91.896H9.84c-.54 0-.923-.395-.923-.896 0-.528.382-.924.923-.924zm2.717-3.323c.527 0 .923.396.923.897a.91.91 0 0 1-.923.923H9.84a.9.9 0 0 1-.923-.923c0-.501.382-.896.923-.897zm-12.436-7.556c.963 0 1.477.527 1.477 1.477v2.559c0 .949-.514 1.476-1.476 1.476h-2.545c-.963 0-1.49-.527-1.49-1.476V12.7c0-.949.527-1.476 1.49-1.476z"
48
+ ></path>
49
+ </svg>
50
+
51
+
52
+ `);
53
+ }
54
+ }
55
+ customElements.get("mui-icon-rectangle-media-text") || customElements.define("mui-icon-rectangle-media-text", l);
@@ -52,7 +52,7 @@ class u extends HTMLElement {
52
52
  return n.nodeType === Node.ELEMENT_NODE || n.nodeType === Node.TEXT_NODE && !!((c = n.textContent) != null && c.trim());
53
53
  }
54
54
  ), s = d(e), r = d(t);
55
- this.classList.toggle("has-before", s), this.classList.toggle("has-after", r);
55
+ this.toggleAttribute("has-before", s), this.toggleAttribute("has-after", r);
56
56
  const i = (o == null ? void 0 : o.assignedNodes({ flatten: !0 })) ?? [], v = i.length > 0 && i.every(
57
57
  (l) => {
58
58
  var n;
@@ -289,44 +289,44 @@ class u extends HTMLElement {
289
289
  }
290
290
  /* ===================================== */
291
291
 
292
- :host(.alert-positive-slot) {
292
+ :host([alert-positive-slot]) {
293
293
  --alert-text: var(--feedback-positive-text);
294
294
  --alert-icon: var(--feedback-positive-icon);
295
295
  --alert-bg-hover: var(--feedback-positive-action-background);
296
296
  }
297
297
 
298
- :host(.alert-info-slot) {
298
+ :host([alert-info-slot]) {
299
299
  --alert-text: var(--feedback-info-text);
300
300
  --alert-icon: var(--feedback-info-icon);
301
301
  --alert-bg-hover: var(--feedback-info-action-background);
302
302
  }
303
303
 
304
- :host(.alert-warning-slot) {
304
+ :host([alert-warning-slot]) {
305
305
  --alert-text: var(--feedback-warning-text);
306
306
  --alert-icon: var(--feedback-warning-icon);
307
307
  --alert-bg-hover: var(--feedback-warning-action-background);
308
308
  }
309
309
 
310
- :host(.alert-attention-slot) {
310
+ :host([alert-attention-slot]) {
311
311
  --alert-text: var(--feedback-attention-text);
312
312
  --alert-icon: var(--feedback-attention-icon);
313
313
  --alert-bg-hover: var(--feedback-attention-action-background);
314
314
  }
315
315
 
316
- :host(.alert-slot) a {
316
+ :host([alert-slot]) a {
317
317
  font-weight: var(--font-weight-semi-bold);
318
318
  color: var(--alert-text);
319
319
  }
320
320
 
321
- :host(.alert-slot) a:hover,
322
- :host(.alert-slot) a:focus-visible {
321
+ :host([alert-slot]) a:hover,
322
+ :host([alert-slot]) a:focus-visible {
323
323
  background: var(--alert-bg-hover);
324
324
  color: var(--alert-text);
325
325
  }
326
326
 
327
- :host(.alert-slot) ::slotted(.mui-icon),
328
- :host(.alert-slot):hover ::slotted(.mui-icon),
329
- :host(.alert-slot):focus-visible ::slotted(.mui-icon) {
327
+ :host([alert-slot]) ::slotted(.mui-icon),
328
+ :host([alert-slot]):hover ::slotted(.mui-icon),
329
+ :host([alert-slot]):focus-visible ::slotted(.mui-icon) {
330
330
  fill: var(--alert-icon);
331
331
  }
332
332
 
@@ -380,39 +380,39 @@ class u extends HTMLElement {
380
380
 
381
381
  /* Before & After Icon
382
382
  ========================================= */
383
- :host(.has-after) a,
384
- :host(.has-before) a,
385
- :host(.has-after.has-before) a {
383
+ :host([has-after]) a,
384
+ :host([has-before]) a,
385
+ :host([has-after][has-before]) a {
386
386
  display: grid;
387
387
  align-items: center;
388
388
  gap: var(--space-100);
389
389
  }
390
390
 
391
- :host(.has-after.has-before) a {
391
+ :host([has-after][has-before]) a {
392
392
  grid-template-columns: auto 1fr auto;
393
393
  }
394
394
 
395
- :host(.has-after) a {
395
+ :host([has-after]) a {
396
396
  grid-template-columns: 1fr auto;
397
397
  }
398
398
 
399
- :host(.has-before) a {
399
+ :host([has-before]) a {
400
400
  grid-template-columns: auto 1fr;
401
401
  }
402
402
 
403
- :host(.has-after.has-before[variant]:not([variant="default"])) a,
404
- :host(.has-after.has-before[usage="input"]) a {
403
+ :host([has-after][has-before][variant]:not([variant="default"])) a,
404
+ :host([has-after][has-before][usage="input"]) a {
405
405
  padding-right: var(--action-after-slot-padding);
406
406
  padding-left: var(--action-before-slot-padding);
407
407
  }
408
408
 
409
- :host(.has-after[variant]:not([variant="default"])) a,
410
- :host(.has-after[usage="input"]) a {
409
+ :host([has-after][variant]:not([variant="default"])) a,
410
+ :host([has-after][usage="input"]) a {
411
411
  padding-right: var(--action-after-slot-padding);
412
412
  }
413
413
 
414
- :host(.has-before[variant]:not([variant="default"])) a,
415
- :host(.has-before[usage="input"]) a {
414
+ :host([has-before][variant]:not([variant="default"])) a,
415
+ :host([has-before][usage="input"]) a {
416
416
  padding-left: var(--action-before-slot-padding);
417
417
  }
418
418
 
@@ -547,76 +547,76 @@ class u extends HTMLElement {
547
547
  }
548
548
 
549
549
  /* Before & After Icon padding adjustments for x-small */
550
- :host([size="x-small"][variant]:not([variant="default"]).has-after) a,
551
- :host([size="x-small"][variant]:not([variant="default"]).has-before) a,
552
- :host([size="x-small"][variant]:not([variant="default"]).has-after.has-before) a {
550
+ :host([size="x-small"][variant]:not([variant="default"])[has-after]) a,
551
+ :host([size="x-small"][variant]:not([variant="default"])[has-before]) a,
552
+ :host([size="x-small"][variant]:not([variant="default"])[has-after][has-before]) a {
553
553
  gap: var(--space-025);
554
554
  }
555
555
 
556
- :host([size="x-small"][variant]:not([variant="default"]).has-after.has-before) a {
556
+ :host([size="x-small"][variant]:not([variant="default"])[has-after][has-before]) a {
557
557
  padding-right: var(--action-after-slot-padding-x-small);
558
558
  padding-left: var(--action-before-slot-padding-x-small);
559
559
  }
560
560
 
561
- :host([size="x-small"][variant]:not([variant="default"]).has-after) a {
561
+ :host([size="x-small"][variant]:not([variant="default"])[has-after]) a {
562
562
  padding-right: var(--action-after-slot-padding-x-small);
563
563
  }
564
564
 
565
- :host([size="x-small"][variant]:not([variant="default"]).has-before) a {
565
+ :host([size="x-small"][variant]:not([variant="default"])[has-before]) a {
566
566
  padding-left: var(--action-before-slot-padding-x-small);
567
567
  }
568
568
 
569
569
  /* Before & After Icon padding adjustments for small */
570
- :host([size="small"][variant]:not([variant="default"]).has-after) a,
571
- :host([size="small"][variant]:not([variant="default"]).has-before) a,
572
- :host([size="small"][variant]:not([variant="default"]).has-after.has-before) a {
570
+ :host([size="small"][variant]:not([variant="default"])[has-after]) a,
571
+ :host([size="small"][variant]:not([variant="default"])[has-before]) a,
572
+ :host([size="small"][variant]:not([variant="default"])[has-after][has-before]) a {
573
573
  gap: var(--space-050);
574
574
  }
575
575
 
576
- :host([size="small"][variant]:not([variant="default"]).has-after.has-before) a {
576
+ :host([size="small"][variant]:not([variant="default"])[has-after][has-before]) a {
577
577
  padding-right: var(--action-after-slot-padding-small);
578
578
  padding-left: var(--action-before-slot-padding-small);
579
579
  }
580
580
 
581
- :host([size="small"][variant]:not([variant="default"]).has-after) a {
581
+ :host([size="small"][variant]:not([variant="default"])[has-after]) a {
582
582
  padding-right: var(--action-after-slot-padding-small);
583
583
  }
584
584
 
585
- :host([size="small"][variant]:not([variant="default"]).has-before) a {
585
+ :host([size="small"][variant]:not([variant="default"])[has-before]) a {
586
586
  padding-left: var(--action-before-slot-padding-small);
587
587
  }
588
588
 
589
589
  /* Before & After Icon padding adjustments for medium */
590
- :host([size="medium"][variant]:not([variant="default"]).has-after.has-before) a {
590
+ :host([size="medium"][variant]:not([variant="default"])[has-after][has-before]) a {
591
591
  padding-right: var(--action-after-slot-padding);
592
592
  padding-left: var(--action-before-slot-padding);
593
593
  }
594
594
 
595
- :host([size="medium"][variant]:not([variant="default"]).has-after) a {
595
+ :host([size="medium"][variant]:not([variant="default"])[has-after]) a {
596
596
  padding-right: var(--action-after-slot-padding);
597
597
  }
598
598
 
599
- :host([size="medium"][variant]:not([variant="default"]).has-before) a {
599
+ :host([size="medium"][variant]:not([variant="default"])[has-before]) a {
600
600
  padding-left: var(--action-before-slot-padding);
601
601
  }
602
602
 
603
603
  /* Before & After Icon padding adjustments for large */
604
- :host([size="large"][variant]:not([variant="default"]).has-after) a,
605
- :host([size="large"][variant]:not([variant="default"]).has-before) a,
606
- :host([size="large"][variant]:not([variant="default"]).has-after.has-before) a {
604
+ :host([size="large"][variant]:not([variant="default"])[has-after]) a,
605
+ :host([size="large"][variant]:not([variant="default"])[has-before]) a,
606
+ :host([size="large"][variant]:not([variant="default"])[has-after][has-before]) a {
607
607
  gap: var(--space-200);
608
608
  }
609
609
 
610
- :host([size="large"][variant]:not([variant="default"]).has-after.has-before) a {
610
+ :host([size="large"][variant]:not([variant="default"])[has-after][has-before]) a {
611
611
  padding-right: var(--action-after-slot-padding-large);
612
612
  padding-left: var(--action-before-slot-padding-large);
613
613
  }
614
614
 
615
- :host([size="large"][variant]:not([variant="default"]).has-after) a {
615
+ :host([size="large"][variant]:not([variant="default"])[has-after]) a {
616
616
  padding-right: var(--action-after-slot-padding-large);
617
617
  }
618
618
 
619
- :host([size="large"][variant]:not([variant="default"]).has-before) a {
619
+ :host([size="large"][variant]:not([variant="default"])[has-before]) a {
620
620
  padding-left: var(--action-before-slot-padding-large);
621
621
  }
622
622
 
@@ -103,16 +103,16 @@ class i extends HTMLElement {
103
103
  text-align: right;
104
104
  }
105
105
 
106
- :host(.card-slot) {
106
+ :host([card-slot]) {
107
107
  --slat-background: var(--slat-card-background);
108
108
  --slat-background-hover: var(--slat-card-background-hover);
109
109
  }
110
110
 
111
- :host(.condensed-slot) .action::part(border-radius) {
111
+ :host([condensed-slot]) .action::part(border-radius) {
112
112
  border-radius: 0;
113
113
  }
114
114
 
115
- :host(.condensed-slot:last-of-type) .action::part(border-radius) {
115
+ :host([condensed-slot]:last-of-type) .action::part(border-radius) {
116
116
  border-bottom-left-radius: var(--card-radius);
117
117
  border-bottom-right-radius: var(--card-radius);
118
118
  }
@@ -125,11 +125,11 @@ class i extends HTMLElement {
125
125
  --avatar-background-override: var(--slat-avatar-background-hover);
126
126
  }
127
127
 
128
- :host(.card-slot) ::slotted(mui-avatar) {
128
+ :host([card-slot]) ::slotted(mui-avatar) {
129
129
  --avatar-background-override: var(--slat-card-avatar-background);
130
130
  }
131
- :host(.card-slot) .action:hover ::slotted(mui-avatar),
132
- :host(.card-slot) .action:focus ::slotted(mui-avatar) {
131
+ :host([card-slot]) .action:hover ::slotted(mui-avatar),
132
+ :host([card-slot]) .action:focus ::slotted(mui-avatar) {
133
133
  --avatar-background-override: var(--slat-card-avatar-background-hover);
134
134
  }
135
135