@muibook/components 2.0.0 → 3.1.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 (97) hide show
  1. package/dist/esm/agent/keywords/index.js +104 -4
  2. package/dist/esm/agent/prompts/index.js +518 -162
  3. package/dist/esm/components/mui-accordion/block/index.js +2 -6
  4. package/dist/esm/components/mui-accordion/group/index.js +1 -1
  5. package/dist/esm/components/mui-accordion/inline/index.js +2 -6
  6. package/dist/esm/components/mui-addon/index.js +1 -1
  7. package/dist/esm/components/mui-alert/index.js +10 -5
  8. package/dist/esm/components/mui-badge/index.js +4 -4
  9. package/dist/esm/components/mui-body/index.js +4 -4
  10. package/dist/esm/components/mui-button/index.js +5 -7
  11. package/dist/esm/components/mui-button-group/index.js +1 -1
  12. package/dist/esm/components/mui-card/body/index.js +22 -18
  13. package/dist/esm/components/mui-card/card/index.js +1 -1
  14. package/dist/esm/components/mui-card/footer/index.js +1 -1
  15. package/dist/esm/components/mui-card/header/index.js +1 -1
  16. package/dist/esm/components/mui-carousel/controller/index.js +1 -1
  17. package/dist/esm/components/mui-carousel/panel/index.js +2 -2
  18. package/dist/esm/components/mui-checkbox/index.js +186 -0
  19. package/dist/esm/components/mui-code/index.js +9 -6
  20. package/dist/esm/components/mui-container/index.js +1 -1
  21. package/dist/esm/components/mui-field/index.js +14 -7
  22. package/dist/esm/components/mui-file-upload/index.js +5 -4
  23. package/dist/esm/components/mui-grid/index.js +1 -1
  24. package/dist/esm/components/mui-heading/index.js +1 -1
  25. package/dist/esm/components/mui-icons/accessibility/index.js +4 -4
  26. package/dist/esm/components/mui-icons/add/index.js +5 -5
  27. package/dist/esm/components/mui-icons/attention/index.js +5 -5
  28. package/dist/esm/components/mui-icons/check/index.js +6 -6
  29. package/dist/esm/components/mui-icons/close/index.js +2 -2
  30. package/dist/esm/components/mui-icons/down-arrow-circle/index.js +55 -0
  31. package/dist/esm/components/mui-icons/down-chevron/index.js +2 -2
  32. package/dist/esm/components/mui-icons/ellipsis/index.js +55 -0
  33. package/dist/esm/components/mui-icons/globe/index.js +5 -5
  34. package/dist/esm/components/mui-icons/grid/index.js +1 -1
  35. package/dist/esm/components/mui-icons/index.js +2 -0
  36. package/dist/esm/components/mui-icons/info/index.js +2 -2
  37. package/dist/esm/components/mui-icons/left-arrow/index.js +1 -1
  38. package/dist/esm/components/mui-icons/left-chevron/index.js +1 -1
  39. package/dist/esm/components/mui-icons/left-sidebar/index.js +6 -6
  40. package/dist/esm/components/mui-icons/menu/index.js +6 -6
  41. package/dist/esm/components/mui-icons/message/index.js +6 -6
  42. package/dist/esm/components/mui-icons/moon/index.js +2 -2
  43. package/dist/esm/components/mui-icons/notification/index.js +2 -2
  44. package/dist/esm/components/mui-icons/right-chevron/index.js +5 -5
  45. package/dist/esm/components/mui-icons/stop/index.js +2 -2
  46. package/dist/esm/components/mui-icons/subtract/index.js +7 -7
  47. package/dist/esm/components/mui-icons/sun/index.js +6 -6
  48. package/dist/esm/components/mui-icons/toggle/index.js +1 -1
  49. package/dist/esm/components/mui-icons/up-arrow/index.js +4 -4
  50. package/dist/esm/components/mui-icons/up-chevron/index.js +1 -1
  51. package/dist/esm/components/mui-icons/warning/index.js +2 -2
  52. package/dist/esm/components/mui-image/index.js +1 -1
  53. package/dist/esm/components/mui-input/index.js +21 -27
  54. package/dist/esm/components/mui-link/index.js +13 -17
  55. package/dist/esm/components/mui-list/item/index.js +1 -1
  56. package/dist/esm/components/mui-list/list/index.js +1 -1
  57. package/dist/esm/components/mui-message/index.js +14 -9
  58. package/dist/esm/components/mui-quote/index.js +1 -1
  59. package/dist/esm/components/mui-responsive/index.js +1 -1
  60. package/dist/esm/components/mui-rule/index.js +5 -5
  61. package/dist/esm/components/mui-select/index.js +28 -27
  62. package/dist/esm/components/mui-slat/accessory/index.js +29 -0
  63. package/dist/esm/components/mui-slat/index.js +2 -21
  64. package/dist/esm/components/mui-slat/slat/index.js +139 -0
  65. package/dist/esm/components/mui-smart-card/index.js +14 -15
  66. package/dist/esm/components/mui-stack/hstack/index.js +1 -1
  67. package/dist/esm/components/mui-stack/vstack/index.js +1 -1
  68. package/dist/esm/components/mui-switch/index.js +3 -9
  69. package/dist/esm/components/mui-table/cell/index.js +1 -1
  70. package/dist/esm/components/mui-table/row/index.js +1 -1
  71. package/dist/esm/components/mui-table/row-group/index.js +1 -1
  72. package/dist/esm/components/mui-table/table/index.js +1 -1
  73. package/dist/esm/components/mui-tabs/controller/index.js +1 -1
  74. package/dist/esm/components/mui-tabs/item/index.js +2 -2
  75. package/dist/esm/components/mui-tabs/panel/index.js +1 -1
  76. package/dist/esm/components/mui-tabs/tab-bar/index.js +1 -1
  77. package/dist/esm/css/mui-base.css +27 -27
  78. package/dist/esm/css/mui-tokens.css +38 -1
  79. package/dist/esm/index.js +9 -5
  80. package/dist/types/components/mui-accordion/block/index.d.ts +1 -1
  81. package/dist/types/components/mui-accordion/inline/index.d.ts +1 -1
  82. package/dist/types/components/mui-alert/index.d.ts +5 -1
  83. package/dist/types/components/mui-checkbox/index.d.ts +1 -0
  84. package/dist/types/components/mui-field/index.d.ts +3 -1
  85. package/dist/types/components/mui-file-upload/index.d.ts +1 -1
  86. package/dist/types/components/mui-icons/down-arrow-circle.d.ts +1 -0
  87. package/dist/types/components/mui-icons/ellipsis.d.ts +1 -0
  88. package/dist/types/components/mui-icons/index.d.ts +2 -0
  89. package/dist/types/components/mui-message/index.d.ts +6 -1
  90. package/dist/types/components/mui-select/index.d.ts +1 -1
  91. package/dist/types/components/mui-slat/accessory/index.d.ts +1 -0
  92. package/dist/types/components/mui-slat/index.d.ts +2 -1
  93. package/dist/types/components/mui-slat/slat/index.d.ts +3 -0
  94. package/dist/types/components/mui-smart-card/index.d.ts +2 -1
  95. package/dist/types/index.d.ts +5 -1
  96. package/package.json +21 -1
  97. package/readme.md +19 -0
@@ -6,11 +6,7 @@ class c extends HTMLElement {
6
6
  }
7
7
  connectedCallback() {
8
8
  var o, r;
9
- if (customElements.get("mui-icon-right-chevron") || console.warn(
10
- "mui-accordion-block requires <mui-icon-right-chevron> to be defined. Please ensure it is imported and registered."
11
- ), customElements.get("mui-heading") || console.warn(
12
- "[mui-accordion-block] Warning: <mui-heading> is not registered. Please import it to ensure proper functionality."
13
- ), !this.shadowRoot) return;
9
+ if (!this.shadowRoot) return;
14
10
  const i = this.getAttribute("heading") || "Heading...", e = this.getAttribute("size") || "medium", s = this.getAttribute("level") || "3", a = this.getAttribute("detail-space"), n = a ? `detail-space-${a}` : "";
15
11
  let d = (
16
12
  /*html*/
@@ -169,4 +165,4 @@ class c extends HTMLElement {
169
165
  this.setOpen(!1);
170
166
  }
171
167
  }
172
- customElements.define("mui-accordion-block", c);
168
+ customElements.get("mui-accordion-block") || customElements.define("mui-accordion-block", c);
@@ -23,4 +23,4 @@ class e extends HTMLElement {
23
23
  }));
24
24
  }
25
25
  }
26
- customElements.define("mui-accordion-group", e);
26
+ customElements.get("mui-accordion-group") || customElements.define("mui-accordion-group", e);
@@ -6,11 +6,7 @@ class a extends HTMLElement {
6
6
  }
7
7
  connectedCallback() {
8
8
  var o, n;
9
- if (customElements.get("mui-icon-right-chevron") || console.warn(
10
- "mui-accordion-block requires <mui-icon-right-chevron> to be defined. Please ensure it is imported and registered."
11
- ), customElements.get("mui-heading") || console.warn(
12
- "[mui-accordion-block] Warning: <mui-heading> is not registered. Please import it to ensure proper functionality."
13
- ), !this.shadowRoot) return;
9
+ if (!this.shadowRoot) return;
14
10
  const e = this.getAttribute("heading") || "Heading...";
15
11
  let r = (
16
12
  /*html*/
@@ -93,4 +89,4 @@ class a extends HTMLElement {
93
89
  i && (e ? i.setAttribute("inert", "") : i.removeAttribute("inert"));
94
90
  }
95
91
  }
96
- customElements.define("mui-accordion-inline", a);
92
+ customElements.get("mui-accordion-inline") || customElements.define("mui-accordion-inline", a);
@@ -43,4 +43,4 @@ class o extends HTMLElement {
43
43
  `);
44
44
  }
45
45
  }
46
- customElements.define("mui-addon", o);
46
+ customElements.get("mui-addon") || customElements.define("mui-addon", o);
@@ -1,3 +1,8 @@
1
+ import "../mui-body/index.js";
2
+ import "../mui-icons/check/index.js";
3
+ import "../mui-icons/info/index.js";
4
+ import "../mui-icons/warning/index.js";
5
+ import "../mui-icons/attention/index.js";
1
6
  function A(n) {
2
7
  return ["positive", "info", "warning", "attention"].includes(n);
3
8
  }
@@ -37,14 +42,14 @@ class x extends HTMLElement {
37
42
  info: "--feedback-info-text",
38
43
  warning: "--feedback-warning-text",
39
44
  attention: "--feedback-attention-text"
40
- }, v = {
45
+ }, m = {
41
46
  positive: "Success!",
42
47
  info: "Info:",
43
48
  warning: "Warning!",
44
49
  attention: "Error!"
45
50
  };
46
51
  this.setAttribute("aria-live", s[t]);
47
- const r = g[t], h = u[t], m = b[t], f = v[t], w = (
52
+ const r = g[t], v = u[t], h = b[t], f = m[t], w = (
48
53
  /*css*/
49
54
  `
50
55
  :host {
@@ -83,7 +88,7 @@ class x extends HTMLElement {
83
88
  }
84
89
 
85
90
  .label {
86
- color: var(${m});
91
+ color: var(${h});
87
92
  font-weight: var(--font-weight-bold);
88
93
  }
89
94
 
@@ -112,7 +117,7 @@ class x extends HTMLElement {
112
117
  this.shadowRoot.innerHTML = /*html*/
113
118
  `
114
119
  <style>${w}</style>
115
- <${r} size="small" color="var(${h})" class="icon"></${r}>
120
+ <${r} size="small" color="var(${v})" class="icon"></${r}>
116
121
  <mui-body>
117
122
  <span class="label">${f}</span>
118
123
  <slot></slot>
@@ -133,4 +138,4 @@ class x extends HTMLElement {
133
138
  }
134
139
  }
135
140
  }
136
- customElements.define("mui-alert", x);
141
+ customElements.get("mui-alert") || customElements.define("mui-alert", x);
@@ -12,17 +12,17 @@ class n extends HTMLElement {
12
12
  this.render();
13
13
  }
14
14
  render() {
15
- const t = this.getAttribute("variant") || "neutral", a = {
15
+ const t = this.getAttribute("variant") || "neutral", e = {
16
16
  neutral: "var(--badge-background-neutral)",
17
17
  positive: "var(--badge-background-positive)",
18
18
  warning: "var(--badge-background-warning)",
19
19
  attention: "var(--badge-background-attention)"
20
- }, e = {
20
+ }, a = {
21
21
  neutral: "off",
22
22
  positive: "polite",
23
23
  warning: "assertive",
24
24
  attention: "assertive"
25
- }, r = a[t], i = e[t], s = (
25
+ }, r = e[t], i = a[t], s = (
26
26
  /*css*/
27
27
  `
28
28
  :host {
@@ -43,4 +43,4 @@ class n extends HTMLElement {
43
43
  `);
44
44
  }
45
45
  }
46
- customElements.define("mui-badge", n);
46
+ customElements.get("mui-badge") || customElements.define("mui-badge", n);
@@ -1,5 +1,5 @@
1
1
  import { getPartMap as i } from "../../utils/part-map/index.js";
2
- class o extends HTMLElement {
2
+ class r extends HTMLElement {
3
3
  static get observedAttributes() {
4
4
  return ["size", "weight", "variant"];
5
5
  }
@@ -9,8 +9,8 @@ class o extends HTMLElement {
9
9
  async connectedCallback() {
10
10
  this.hasAttribute("size") || this.setAttribute("size", "medium"), this.hasAttribute("weight") || this.setAttribute("weight", "regular"), this.hasAttribute("variant") || this.setAttribute("variant", "default"), await this.waitForPartMap(), this.render();
11
11
  }
12
- attributeChangedCallback(t, e, r) {
13
- e !== r && this.shadowRoot && this.render();
12
+ attributeChangedCallback(t, e, o) {
13
+ e !== o && this.shadowRoot && this.render();
14
14
  }
15
15
  render() {
16
16
  if (!this.shadowRoot) return;
@@ -93,4 +93,4 @@ class o extends HTMLElement {
93
93
  });
94
94
  }
95
95
  }
96
- customElements.define("mui-body", o);
96
+ customElements.get("mui-body") || customElements.define("mui-body", r);
@@ -313,20 +313,18 @@ class v extends HTMLElement {
313
313
 
314
314
  :host(.has-after.has-before) button {
315
315
  grid-template-columns: auto 1fr auto;
316
- padding-right: var(--space-300);
317
- padding-left: var(--space-300);
316
+ padding-right: var(--action-after-slot-padding);
317
+ padding-left: var(--action-before-slot-padding);
318
318
  }
319
319
 
320
320
  :host(.has-after) button {
321
321
  grid-template-columns: 1fr auto;
322
- padding-right: var(--space-300);
323
- padding-left: var(--space-400);
322
+ padding-right: var(--action-after-slot-padding);
324
323
  }
325
324
 
326
325
  :host(.has-before) button {
327
326
  grid-template-columns: auto 1fr;
328
- padding-right: var(--space-400);
329
- padding-left: var(--space-300);
327
+ padding-left: var(--action-before-slot-padding);
330
328
  }
331
329
 
332
330
  </style>
@@ -372,4 +370,4 @@ class v extends HTMLElement {
372
370
  });
373
371
  }
374
372
  }
375
- customElements.define("mui-button", v);
373
+ customElements.get("mui-button") || customElements.define("mui-button", v);
@@ -20,4 +20,4 @@ class e extends HTMLElement {
20
20
  this.shadowRoot && (this.shadowRoot.innerHTML = t);
21
21
  }
22
22
  }
23
- customElements.define("mui-button-group", e);
23
+ customElements.get("mui-button-group") || customElements.define("mui-button-group", e);
@@ -4,7 +4,7 @@ class d extends HTMLElement {
4
4
  }
5
5
  connectedCallback() {
6
6
  if (!this.shadowRoot) return;
7
- const i = (
7
+ const r = (
8
8
  /*html*/
9
9
  `
10
10
  <style>
@@ -12,6 +12,7 @@ class d extends HTMLElement {
12
12
  display: block;
13
13
  box-sizing: border-box;
14
14
  }
15
+
15
16
  :host(.inner-space) {
16
17
  padding: var(--space-500);
17
18
  }
@@ -24,25 +25,28 @@ class d extends HTMLElement {
24
25
  <slot></slot>
25
26
  `
26
27
  );
27
- this.shadowRoot.innerHTML = i, requestAnimationFrame(() => {
28
+ this.shadowRoot.innerHTML = r, requestAnimationFrame(() => {
28
29
  if (!this.shadowRoot) return;
29
- const s = this.shadowRoot.querySelector("slot");
30
- if (!s) return;
31
- const r = s.assignedNodes({ flatten: !0 });
32
- let o = !1;
33
- r.forEach((a) => {
34
- if (a.nodeType === Node.ELEMENT_NODE) {
35
- const e = a, c = e.tagName.toLowerCase() === "mui-accordion-group" ? e : e.querySelector("mui-accordion-group");
36
- c instanceof HTMLElement && (c.querySelectorAll("mui-accordion-block").forEach((t) => {
37
- t.classList.add("card-slot");
38
- }), o = !0);
39
- const n = e.tagName.toLowerCase() === "mui-table" ? e : e.querySelector("mui-table");
40
- n instanceof HTMLElement && (n.querySelectorAll("mui-cell").forEach((t) => {
41
- t.classList.add("card-slot");
42
- }), o = !0);
30
+ const a = this.shadowRoot.querySelector("slot");
31
+ if (!a) return;
32
+ const l = a.assignedNodes({ flatten: !0 });
33
+ let s = !1;
34
+ l.forEach((c) => {
35
+ if (c.nodeType === Node.ELEMENT_NODE) {
36
+ const t = c, i = t.tagName.toLowerCase() === "mui-accordion-group" ? t : t.querySelector("mui-accordion-group");
37
+ i instanceof HTMLElement && (i.querySelectorAll("mui-accordion-block").forEach((e) => {
38
+ e.classList.add("card-slot");
39
+ }), s = !0), (t.tagName.toLowerCase() === "mui-slat" ? [t] : Array.from(t.querySelectorAll("mui-slat"))).forEach((o) => {
40
+ const e = o.getAttribute("variant");
41
+ (e === "action" || e === "row") && (o.classList.add("card-slot"), this.hasAttribute("condensed") && o.classList.add("condensed-slot"));
42
+ });
43
+ const n = t.tagName.toLowerCase() === "mui-table" ? t : t.querySelector("mui-table");
44
+ n instanceof HTMLElement && (n.querySelectorAll("mui-cell").forEach((e) => {
45
+ e.classList.add("card-slot");
46
+ }), s = !0);
43
47
  }
44
- }), o || this.classList.add("inner-space");
48
+ }), !s && !this.hasAttribute("condensed") && this.classList.add("inner-space");
45
49
  });
46
50
  }
47
51
  }
48
- customElements.define("mui-card-body", d);
52
+ customElements.get("mui-card-body") || customElements.define("mui-card-body", d);
@@ -40,4 +40,4 @@ class n extends HTMLElement {
40
40
  });
41
41
  }
42
42
  }
43
- customElements.define("mui-card", n);
43
+ customElements.get("mui-card") || customElements.define("mui-card", n);
@@ -59,4 +59,4 @@ class d extends HTMLElement {
59
59
  });
60
60
  }
61
61
  }
62
- customElements.define("mui-card-footer", d);
62
+ customElements.get("mui-card-footer") || customElements.define("mui-card-footer", d);
@@ -26,4 +26,4 @@ class t extends HTMLElement {
26
26
  this.shadowRoot.innerHTML = e;
27
27
  }
28
28
  }
29
- customElements.define("mui-card-header", t);
29
+ customElements.get("mui-card-header") || customElements.define("mui-card-header", t);
@@ -117,4 +117,4 @@ class r extends HTMLElement {
117
117
  s !== -1 && (e.style.transform = `translateX(-${s * 100}%)`);
118
118
  }
119
119
  }
120
- customElements.define("mui-carousel-controller", r);
120
+ customElements.get("mui-carousel-controller") || customElements.define("mui-carousel-controller", r);
@@ -23,7 +23,7 @@ class t extends HTMLElement {
23
23
  set item(e) {
24
24
  e !== null && this.setAttribute("item", e);
25
25
  }
26
- attributeChangedCallback(e, i, o) {
26
+ attributeChangedCallback(e, i, l) {
27
27
  }
28
28
  }
29
- customElements.define("mui-carousel-panel", t);
29
+ customElements.get("mui-carousel-panel") || customElements.define("mui-carousel-panel", t);
@@ -0,0 +1,186 @@
1
+ import "../mui-body/index.js";
2
+ class d extends HTMLElement {
3
+ static get observedAttributes() {
4
+ return ["checked", "disabled", "id", "indeterminate"];
5
+ }
6
+ constructor() {
7
+ super(), this.attachShadow({ mode: "open" });
8
+ }
9
+ connectedCallback() {
10
+ this.render(), this.setupListener();
11
+ }
12
+ attributeChangedCallback(e, o, c) {
13
+ var i, r, s;
14
+ if (e === "checked") {
15
+ const t = (i = this.shadowRoot) == null ? void 0 : i.querySelector("input");
16
+ if (!t) return;
17
+ t.checked = c !== null;
18
+ }
19
+ if (e === "disabled") {
20
+ const t = (r = this.shadowRoot) == null ? void 0 : r.querySelector("input");
21
+ if (!t) return;
22
+ t.disabled = c !== null;
23
+ }
24
+ if (e === "indeterminate") {
25
+ const t = (s = this.shadowRoot) == null ? void 0 : s.querySelector("input");
26
+ if (!t) return;
27
+ const n = c !== null;
28
+ t.indeterminate = n, n && (t.checked = !0, this.setAttribute("checked", ""));
29
+ }
30
+ "id".includes(e) && (this.render(), this.setupListener());
31
+ }
32
+ setupListener() {
33
+ var o;
34
+ const e = (o = this.shadowRoot) == null ? void 0 : o.querySelector("input");
35
+ e && (e.addEventListener("change", (c) => {
36
+ const i = c.target;
37
+ this.dispatchEvent(
38
+ new CustomEvent("change", {
39
+ detail: { checked: i.checked },
40
+ bubbles: !0,
41
+ composed: !0
42
+ })
43
+ ), i.checked ? this.setAttribute("checked", "") : this.removeAttribute("checked");
44
+ }), e.indeterminate = this.hasAttribute("indeterminate"), e.addEventListener("change", (c) => {
45
+ const i = c.target;
46
+ this.dispatchEvent(
47
+ new CustomEvent("change", {
48
+ detail: { checked: i.checked },
49
+ bubbles: !0,
50
+ composed: !0
51
+ })
52
+ ), this.removeAttribute("indeterminate"), i.checked ? this.setAttribute("checked", "") : this.removeAttribute("checked");
53
+ }));
54
+ }
55
+ render() {
56
+ const e = this.getAttribute("id") || `mui-checkbox-${Math.random().toString(36).substr(2, 9)}`, o = this.hasAttribute("checked"), c = this.hasAttribute("disabled"), i = `
57
+ <svg
58
+ class="icon"
59
+ xmlns="http://www.w3.org/2000/svg"
60
+ width="16"
61
+ height="16"
62
+ fill="none"
63
+ viewBox="0 0 16 16"
64
+ >
65
+ <path
66
+ fill="currentColor"
67
+ d="M12.783 3.59a1 1 0 0 1 1.414 1.414L6.791 12.41a1 1 0 0 1-1.414 0L1.803 8.837l-.069-.076A1 1 0 0 1 3.14 7.353l.077.07 2.866 2.866z"
68
+ ></path>
69
+ </svg>
70
+ `, r = this.hasAttribute("indeterminate"), t = r ? `
71
+ <svg
72
+ class="icon"
73
+ xmlns="http://www.w3.org/2000/svg"
74
+ width="16"
75
+ height="16"
76
+ fill="none"
77
+ viewBox="0 0 16 16"
78
+ >
79
+ <path
80
+ fill="currentColor"
81
+ d="m12.5 7 .102.005a1 1 0 0 1 0 1.99L12.5 9h-9a1 1 0 0 1 0-2z"
82
+ ></path>
83
+ </svg>
84
+ ` : i, n = this.innerHTML.trim().length > 0;
85
+ this.shadowRoot.innerHTML = /*html*/
86
+ `
87
+ <style>
88
+ :host {
89
+ display: flex;
90
+ }
91
+
92
+ label {
93
+ display: flex;
94
+ align-items: start;
95
+ gap: var(--space-200);
96
+ cursor: pointer;
97
+ }
98
+
99
+ input[type="checkbox"] {
100
+ all: unset;
101
+ width: 19px;
102
+ height: 19px;
103
+ border: var(--border-thin);
104
+ border-color: var(--form-default-border-color);
105
+ border-radius: var(--checkbox-radius);
106
+ display: inline-block;
107
+ vertical-align: middle;
108
+ cursor: pointer;
109
+ background: var(--checkbox-background);
110
+ background-repeat: no-repeat;
111
+ background-position: center;
112
+ }
113
+
114
+ input[type="checkbox"]:hover {
115
+ border-color: var(--form-default-border-color-hover);
116
+ }
117
+
118
+ input[type="checkbox"]:checked {
119
+ background-color: var(--checkbox-background-checked);
120
+ }
121
+
122
+ input[type="checkbox"]:indeterminate {
123
+ background-color: var(--checkbox-background-checked);
124
+ }
125
+
126
+ input[type="checkbox"]:focus {
127
+ outline: var(--outline-thick);
128
+ }
129
+
130
+ input:disabled {
131
+ opacity: 0.5;
132
+ cursor: not-allowed;
133
+ }
134
+
135
+ .checkbox-wrapper {
136
+ position: relative;
137
+ display: flex;
138
+ }
139
+
140
+ .checkbox-wrapper .icon {
141
+ position: absolute;
142
+ top: 50%;
143
+ left: 50%;
144
+ transform: translate(-50%, -50%);
145
+ width: 16px;
146
+ height: 16px;
147
+ pointer-events: none;
148
+ display: none;
149
+ color: var(--checkbox-icon-color-checked);
150
+ }
151
+
152
+ .checkbox-wrapper input:checked + .icon {
153
+ display: block;
154
+ }
155
+
156
+ .checkbox-wrapper input:indeterminate + .icon {
157
+ display: block;
158
+ }
159
+
160
+ </style>
161
+
162
+ <label>
163
+ <span class="checkbox-wrapper">
164
+ <input
165
+ type="checkbox"
166
+ id="${e}"
167
+ ${r ? "indeterminate" : ""}
168
+ ${r || o ? "checked" : ""}
169
+ ${c ? "disabled" : ""}
170
+ />
171
+ ${t}
172
+ </span>
173
+ ${n ? '<mui-body size="small"><slot></slot></mui-body>' : ""}
174
+ </label>
175
+ `;
176
+ }
177
+ get checked() {
178
+ var o;
179
+ const e = (o = this.shadowRoot) == null ? void 0 : o.querySelector("input");
180
+ return (e == null ? void 0 : e.checked) ?? !1;
181
+ }
182
+ set checked(e) {
183
+ e ? this.setAttribute("checked", "") : this.removeAttribute("checked");
184
+ }
185
+ }
186
+ customElements.get("mui-checkbox") || customElements.define("mui-checkbox", d);
@@ -1,6 +1,6 @@
1
- class t extends HTMLElement {
1
+ class s extends HTMLElement {
2
2
  static get observedAttributes() {
3
- return ["size"];
3
+ return ["size", "scrollable"];
4
4
  }
5
5
  constructor() {
6
6
  super(), this.attachShadow({ mode: "open" });
@@ -13,11 +13,11 @@ class t extends HTMLElement {
13
13
  }
14
14
  render() {
15
15
  if (!this.shadowRoot) return;
16
- const e = (
16
+ const e = this.hasAttribute("scrollable"), t = (
17
17
  /*css*/
18
18
  `
19
19
  :host {
20
- display: block;
20
+ display: grid;
21
21
  }
22
22
  :host([size="x-small"]) code {
23
23
  font-size: var(--text-font-size-xs);
@@ -43,6 +43,9 @@ class t extends HTMLElement {
43
43
  background: var(--surface-elevated-200);
44
44
  padding: var(--space-400) var(--space-500);
45
45
  box-sizing: border-box;
46
+ width: 100%;
47
+ overflow-x: ${e ? "auto" : "visible"};
48
+ white-space: ${e ? "nowrap" : "wrap"};
46
49
  }
47
50
 
48
51
  @media (min-width: 600px) {
@@ -55,9 +58,9 @@ class t extends HTMLElement {
55
58
  );
56
59
  this.shadowRoot.innerHTML = /*html*/
57
60
  `
58
- <style>${e}</style>
61
+ <style>${t}</style>
59
62
  <code><slot></slot></code>
60
63
  `;
61
64
  }
62
65
  }
63
- customElements.define("mui-code", t);
66
+ customElements.get("mui-code") || customElements.define("mui-code", s);
@@ -54,4 +54,4 @@ class e extends HTMLElement {
54
54
  this.shadowRoot && (this.shadowRoot.innerHTML = t);
55
55
  }
56
56
  }
57
- customElements.define("mui-container", e);
57
+ customElements.get("mui-container") || customElements.define("mui-container", e);
@@ -1,3 +1,6 @@
1
+ import "../mui-icons/check/index.js";
2
+ import "../mui-icons/warning/index.js";
3
+ import "../mui-icons/attention/index.js";
1
4
  class r extends HTMLElement {
2
5
  static get observedAttributes() {
3
6
  return ["variant", "message"];
@@ -10,7 +13,7 @@ class r extends HTMLElement {
10
13
  connectedCallback() {
11
14
  this.render(), this.passAttributesToChild();
12
15
  }
13
- attributeChangedCallback(t, e, s) {
16
+ attributeChangedCallback(t, e, i) {
14
17
  (t === "variant" || t === "message") && (this.render(), this.passAttributesToChild());
15
18
  }
16
19
  passAttributesToChild() {
@@ -18,15 +21,15 @@ class r extends HTMLElement {
18
21
  if (!this.shadowRoot) return;
19
22
  const t = this.shadowRoot.querySelector("slot"), e = (a = t == null ? void 0 : t.assignedElements) == null ? void 0 : a.call(t)[0];
20
23
  if (!e) return;
21
- ["variant", "label", "hide-label"].forEach((i) => {
22
- this.hasAttribute(i) ? e.setAttribute(i, this.getAttribute(i) || "") : e.removeAttribute(i);
24
+ ["variant", "label", "hide-label"].forEach((s) => {
25
+ this.hasAttribute(s) ? e.setAttribute(s, this.getAttribute(s) || "") : e.removeAttribute(s);
23
26
  });
24
27
  }
25
28
  render() {
26
29
  const t = this.getAttribute("message"), e = this.getAttribute("variant");
27
30
  if (!this.shadowRoot) return;
28
- let s = "";
29
- e === "success" ? s = "check" : e === "warning" ? s = "warning" : e === "error" && (s = "attention"), this.shadowRoot.innerHTML = /*html*/
31
+ let i = "";
32
+ e === "success" ? i = "check" : e === "warning" ? i = "warning" : e === "error" && (i = "attention"), this.shadowRoot.innerHTML = /*html*/
30
33
  `
31
34
  <style>
32
35
  :host {
@@ -45,15 +48,19 @@ class r extends HTMLElement {
45
48
  mui-body::part(gap) {
46
49
  gap: var(--space-100);
47
50
  }
51
+
52
+ ::slotted(mui-checkbox) {
53
+ padding-left: var(--space-025);
54
+ }
48
55
  </style>
49
56
 
50
57
  <slot></slot>
51
58
  ${t ? `
52
59
  <mui-body size="small" variant="${e}">
53
- ${s ? `<mui-icon-${s}></mui-icon-${s}>` : ""}
60
+ ${i ? `<mui-icon-${i}></mui-icon-${i}>` : ""}
54
61
  ${t}
55
62
  </mui-body>` : ""}
56
63
  `;
57
64
  }
58
65
  }
59
- customElements.define("mui-field", r);
66
+ customElements.get("mui-field") || customElements.define("mui-field", r);
@@ -1,3 +1,4 @@
1
+ import "../mui-button/index.js";
1
2
  class r extends HTMLElement {
2
3
  constructor() {
3
4
  super(), this.attachShadow({ mode: "open" }), this.acceptedFileTypes = this.getAttribute("acceptedFileTypes") || "", this.currentFileName = this.getAttribute("currentFileName") || "", this.selectedFileName = null, this.render(), this.cacheElements(), this.attachEvents();
@@ -23,7 +24,7 @@ class r extends HTMLElement {
23
24
  border-color: var(--form-default-border-color);
24
25
  color: var(--text-color);
25
26
  background: var(--input-background);
26
- min-height: 4.2rem;
27
+ min-height: 4.4rem;
27
28
  }
28
29
  .wrapper:hover {
29
30
  border-color: var(--form-default-border-color-hover);
@@ -50,12 +51,12 @@ class r extends HTMLElement {
50
51
  }
51
52
  }
52
53
 
53
- mui-button::part(height) {
54
+ mui-button {
54
55
  margin-right: 0.1rem;
55
56
  }
56
57
 
57
58
  mui-button::part(height) {
58
- height: calc(4.2rem - 0.4rem);
59
+ height: calc(4.2rem - 0.2rem);
59
60
  padding: var(--space-400);
60
61
  padding-top: var(--space-000);
61
62
  padding-bottom: var(--space-000);
@@ -97,4 +98,4 @@ class r extends HTMLElement {
97
98
  ));
98
99
  }
99
100
  }
100
- customElements.define("mui-file-upload", r);
101
+ customElements.get("mui-file-upload") || customElements.define("mui-file-upload", r);
@@ -39,4 +39,4 @@ class i extends HTMLElement {
39
39
  });
40
40
  }
41
41
  }
42
- customElements.define("mui-grid", i);
42
+ customElements.get("mui-grid") || customElements.define("mui-grid", i);
@@ -32,4 +32,4 @@ class t extends HTMLElement {
32
32
  `;
33
33
  }
34
34
  }
35
- customElements.define("mui-heading", t);
35
+ customElements.get("mui-heading") || customElements.define("mui-heading", t);