@muibook/components 16.0.0 → 17.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.
@@ -2,36 +2,6 @@
2
2
  "schemaVersion": "1.0.0",
3
3
  "readme": "",
4
4
  "modules": [
5
- {
6
- "kind": "javascript-module",
7
- "path": "src/components/mui-accordion/doc.ts",
8
- "declarations": [
9
- {
10
- "kind": "variable",
11
- "name": "muiDocs",
12
- "type": {
13
- "text": "MuiDocs"
14
- },
15
- "default": "{ Accordion: { title: \"Accordion\", description: \"A collapsible container used to reveal sections of related content. Useful for progressive disclosure, especially when space is limited or the content is secondary. On smaller viewports, accordions can replace tables to group and reveal related rows of data.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/1TykTEhPNTJlZdyzqAayEH/b5293336f033020bbcef964db811cdd3/Accordion_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=958-8558&t=0ytskb8cxriEmdz2-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/content-accordion--docs\"], website: [\"https://muibook.com/#/accordion\"], guides: [\"https://guides.muibook.com/accordion\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-accordion/index.ts\"], usage: { list: [ \"Use to progressively reveal grouped or secondary content.\", \"Can replace tables on small viewports when content is grouped by row.\", \"Ideal for mobile or narrow layouts where space is constrained.\", \"Stack, slat, or grid layouts can be used inside an accordion for custom structures.\", ], }, accessibility: { designerList: [ \"Accordion summary uses role='button' and tabindex='0' for keyboard access.\", \"Supports Enter and Space keys for toggling.\", \"aria-expanded reflects open/closed state.\", \"aria-controls links summary to detail with a unique ID.\", \"mui-heading applies semantic heading with role='heading' and aria-level.\", \"Chevron icon rotates visually and the state is conveyed via aria-expanded.\", ], engineerList: [ \"Accordion summary uses role='button' and tabindex='0' for keyboard access.\", \"Supports Enter and Space keys for toggling.\", \"aria-expanded reflects open/closed state.\", \"aria-controls links summary to detail with a unique ID.\", \"mui-heading applies semantic heading with role='heading' and aria-level.\", \"Chevron icon rotates visually and the state is conveyed via aria-expanded.\", ], }, anatomy: { list: [ \"Heading: Provides the accordion with a heading\", \"Icon: A chevron icon that indicates the state of the Accordion\", \"Detail: Define the detail content for the expanded section within the Accordion.\", ], image: \"https://images.ctfassets.net/i5uwscj4pkk2/4JgAhsxwz3YOt28fLTVgDB/b404f3407eb06e2f26a196da04f7d217/Accordion_-_Anatomy.png\", }, variants: { items: [ { key: \"accordion-block\", title: \"Accordion Block\", description: \"The block accordion is typically used within a page layout full-width to the parent container.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1L2XfteVwNBQcFlddTYmfi/c791eb538285e2cfb919342e84228811/accordion-block_-_Variants.png\", }, { key: \"accordion-inline\", title: \"Accordion Inline\", description: \"The inline accordion is typically used within a block layout as a secondary UI element to a block element.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/RMnvBLRsW3Vvq9V3yaTcW/86afba39ed0b7ffc00d0033b1b1bfd07/accordion_inline_-_Variants.png\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"menu-groups\", name: \"Menu Groups\", description: \"Accordions can be used in menus to collapse and expand groups of related items, helping keep navigation organized and reducing visual clutter.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/zFHrSdH3CYbZXOv8WFKkL/90cad70c32b40fca61a875263d4cc366/accordion_menu_-_composition.png\", }, { key: \"code-snippets\", name: \"Code snippets\", description: \"An accordion in a card footer allows code snippets or supporting details to be revealed on demand, keeping the card compact while still providing access to additional information.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/7FKVgkCxv3UenOQTC9Tr4R/25c357aceea16b169c48775d7363df1d/accordion_card_footer_-_composition.png\", }, { key: \"account-activity\", name: \"Account Activity (Accordion + Card)\", description: \"Accordions can split account activity into segments, such as by year, with the ability to expand each section for detailed transactions. This makes large sets of data easier to scan and navigate.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/4PEUUHgxpuDM6nDgdGOotY/bf078e07bc3fbabf07f03b99800e5306/accordion_card_body_-_composition.png\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [ { description: \"\", image: \"\" }, { description: \"\", image: \"\" }, ], dontContent: [{ description: \"\" }, { description: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, related: { items: [ { name: \"Card\", link: \"https://guides.muibook.com/card\" }, { name: \"Slat\", link: \"https://guides.muibook.com/slat\" }, ], }, }, }"
16
- }
17
- ],
18
- "exports": [
19
- {
20
- "kind": "js",
21
- "name": "muiDocs",
22
- "declaration": {
23
- "name": "muiDocs",
24
- "module": "src/components/mui-accordion/doc.ts"
25
- }
26
- }
27
- ]
28
- },
29
- {
30
- "kind": "javascript-module",
31
- "path": "src/components/mui-accordion/index.ts",
32
- "declarations": [],
33
- "exports": []
34
- },
35
5
  {
36
6
  "kind": "javascript-module",
37
7
  "path": "src/components/mui-addon/doc.ts",
@@ -101,6 +71,36 @@
101
71
  }
102
72
  ]
103
73
  },
74
+ {
75
+ "kind": "javascript-module",
76
+ "path": "src/components/mui-accordion/doc.ts",
77
+ "declarations": [
78
+ {
79
+ "kind": "variable",
80
+ "name": "muiDocs",
81
+ "type": {
82
+ "text": "MuiDocs"
83
+ },
84
+ "default": "{ Accordion: { title: \"Accordion\", description: \"A collapsible container used to reveal sections of related content. Useful for progressive disclosure, especially when space is limited or the content is secondary. On smaller viewports, accordions can replace tables to group and reveal related rows of data.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/1TykTEhPNTJlZdyzqAayEH/b5293336f033020bbcef964db811cdd3/Accordion_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=958-8558&t=0ytskb8cxriEmdz2-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/content-accordion--docs\"], website: [\"https://muibook.com/#/accordion\"], guides: [\"https://guides.muibook.com/accordion\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-accordion/index.ts\"], usage: { list: [ \"Use to progressively reveal grouped or secondary content.\", \"Can replace tables on small viewports when content is grouped by row.\", \"Ideal for mobile or narrow layouts where space is constrained.\", \"Stack, slat, or grid layouts can be used inside an accordion for custom structures.\", ], }, accessibility: { designerList: [ \"Accordion summary uses role='button' and tabindex='0' for keyboard access.\", \"Supports Enter and Space keys for toggling.\", \"aria-expanded reflects open/closed state.\", \"aria-controls links summary to detail with a unique ID.\", \"mui-heading applies semantic heading with role='heading' and aria-level.\", \"Chevron icon rotates visually and the state is conveyed via aria-expanded.\", ], engineerList: [ \"Accordion summary uses role='button' and tabindex='0' for keyboard access.\", \"Supports Enter and Space keys for toggling.\", \"aria-expanded reflects open/closed state.\", \"aria-controls links summary to detail with a unique ID.\", \"mui-heading applies semantic heading with role='heading' and aria-level.\", \"Chevron icon rotates visually and the state is conveyed via aria-expanded.\", ], }, anatomy: { list: [ \"Heading: Provides the accordion with a heading\", \"Icon: A chevron icon that indicates the state of the Accordion\", \"Detail: Define the detail content for the expanded section within the Accordion.\", ], image: \"https://images.ctfassets.net/i5uwscj4pkk2/4JgAhsxwz3YOt28fLTVgDB/b404f3407eb06e2f26a196da04f7d217/Accordion_-_Anatomy.png\", }, variants: { items: [ { key: \"accordion-block\", title: \"Accordion Block\", description: \"The block accordion is typically used within a page layout full-width to the parent container.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1L2XfteVwNBQcFlddTYmfi/c791eb538285e2cfb919342e84228811/accordion-block_-_Variants.png\", }, { key: \"accordion-inline\", title: \"Accordion Inline\", description: \"The inline accordion is typically used within a block layout as a secondary UI element to a block element.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/RMnvBLRsW3Vvq9V3yaTcW/86afba39ed0b7ffc00d0033b1b1bfd07/accordion_inline_-_Variants.png\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"menu-groups\", name: \"Menu Groups\", description: \"Accordions can be used in menus to collapse and expand groups of related items, helping keep navigation organized and reducing visual clutter.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/zFHrSdH3CYbZXOv8WFKkL/90cad70c32b40fca61a875263d4cc366/accordion_menu_-_composition.png\", }, { key: \"code-snippets\", name: \"Code snippets\", description: \"An accordion in a card footer allows code snippets or supporting details to be revealed on demand, keeping the card compact while still providing access to additional information.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/7FKVgkCxv3UenOQTC9Tr4R/25c357aceea16b169c48775d7363df1d/accordion_card_footer_-_composition.png\", }, { key: \"account-activity\", name: \"Account Activity (Accordion + Card)\", description: \"Accordions can split account activity into segments, such as by year, with the ability to expand each section for detailed transactions. This makes large sets of data easier to scan and navigate.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/4PEUUHgxpuDM6nDgdGOotY/bf078e07bc3fbabf07f03b99800e5306/accordion_card_body_-_composition.png\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [ { description: \"\", image: \"\" }, { description: \"\", image: \"\" }, ], dontContent: [{ description: \"\" }, { description: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, related: { items: [ { name: \"Card\", link: \"https://guides.muibook.com/card\" }, { name: \"Slat\", link: \"https://guides.muibook.com/slat\" }, ], }, }, }"
85
+ }
86
+ ],
87
+ "exports": [
88
+ {
89
+ "kind": "js",
90
+ "name": "muiDocs",
91
+ "declaration": {
92
+ "name": "muiDocs",
93
+ "module": "src/components/mui-accordion/doc.ts"
94
+ }
95
+ }
96
+ ]
97
+ },
98
+ {
99
+ "kind": "javascript-module",
100
+ "path": "src/components/mui-accordion/index.ts",
101
+ "declarations": [],
102
+ "exports": []
103
+ },
104
104
  {
105
105
  "kind": "javascript-module",
106
106
  "path": "src/components/mui-alert/doc.ts",
@@ -245,7 +245,7 @@
245
245
  },
246
246
  {
247
247
  "kind": "javascript-module",
248
- "path": "src/components/mui-body/doc.ts",
248
+ "path": "src/components/mui-avatar/doc.ts",
249
249
  "declarations": [
250
250
  {
251
251
  "kind": "variable",
@@ -253,7 +253,7 @@
253
253
  "type": {
254
254
  "text": "MuiDocs"
255
255
  },
256
- "default": "{ Body: { title: \"Body\", description: \"Use the Body component for clear and readable paragraph text across the UI. It’s ideal for longer-form content such as descriptions, explanations, or supporting information. Variant styles are also available for status messages and other contextual needs.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/GGmtyOnGHBMGMrvkPTWSL/2c6ff12702d76c1393b2315b19728aa3/Body_-_Home_Image.png\", ], figma: [\"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=3-892&t=fSFYVey9aCoE5oQa-1\"], storybook: [\"https://stories.muibook.com/?path=/docs/content-body--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-body/index.ts\"], website: [\"https://muibook.com/#/button\"], guides: [\"https://guides.muibook.com/body\"], usage: { list: [ \"Use for supporting content or descriptions.\", \"Use states like Default, Success, Warning and Error to align with feedback or messaging contexts.\", \"Match the body size to the layout’s overall design and readability.\", \"Adjust the size by selecting x-small, small, medium or large.\", \"Use before/after slots to compose inline icons, badges, or helper UI with body text.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { image: \"\", list: [\"\"], }, variants: { items: [ { key: \"default\", title: \"Default\", description: \"Standard body text with x-small, small, medium and large for tailored readability. In addition to the size, font weight of regular and bold is available.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/2NAalFsBAkeBz69hO093eb/b9390132c50df11749aaa47dafdb2b93/default.png\", }, { key: \"optional\", title: \"Optional\", description: \"Optional text is visually lighter, providing subtle contrast to Standard body text. It comes in four sizes—x-small, small, medium, and large—for tailored readability. Font weights of regular and bold are also available, giving flexibility for emphasis or hierarchy.\", image: \"\", }, { key: \"success\", title: \"Success\", description: \"Indicates positive feedback with the option of x-small, small, medium and large for tailored readability. In addition to the size, font weight of regular and bold is available.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/8RChklU9yHSY7PTJH0JLD/c72f630006f2be4e7f1d850d7510c92f/success.png\", }, { key: \"warning\", title: \"Warning\", description: \"Highlights warning messages with the option of x-small, small, medium, and large for tailored readability. In addition to the size, font weight of regular and bold is available.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/2UJaVEXU2fbKPi3L7afjt/e82b06ef54e92cf2d6f6e984d8a27079/warning.png\", }, { key: \"error\", title: \"Error\", description: \"Highlights error messages with the option of x-small, small, medium, and large for tailored readability. In addition to the size, font weight of regular and bold is available.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/egb4l4ubM0A6T44xAxDgz/5d94fa59f0069b689da537710650e22b/error.png\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"muibook-resource\", name: \"Muibook Resource\", description: \"The Muibook documentation site uses MUI components to compose its layout, including headings, text, lists, buttons, icons, and image components.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3LVvuYDZWRnMhxNy6GMLNd/c5074a05eacb2c22c50ea172b3567c48/Muibook-List-Composition.png\", }, { key: \"outcomes-roadmap-dashboard\", name: \"Outcomes Roadmap Dashboard\", description: \"Example of the responsive component in the Outcomes Roadmap Dashboard, demonstrating layout, title, and padding adjustments across breakpoints.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3FsXandRr1Z9BAKv33twxT/b0d0e4a8b6237bf7d38660111bceb8ab/responsive-composition.gif\", }, { key: \"outcome-based-roadmap\", name: \"Outcome-Based Roadmap\", description: \"Example of an Outcome-Based Roadmap page showing objectives organised into Upcoming, Doing, and Finished columns. Progress bars indicate the completion status of each task, providing a clear view of overall progress.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3w5htPtfEz7QMCH9alVcwf/de35725fb4542b891bd695b900195291/Outcomes-Progress-Composition.png\", }, ], }, related: { items: [ { name: \"Heading\", link: \"https://guides.muibook.com/heading\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
256
+ "default": "{ Avatar: { title: \"Avatar\", description: \"Avatar components are used to represent users or entities visually, often through images, initials, or icons.\", hero: [\"https://images.ctfassets.net/i5uwscj4pkk2/2Qj1aPRsHVZZs6eF8XO6XC/54dd3c04d5a0ac379050cfa6f45d9732/Avatar_-_Home_Image.png\"], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=1498-15366&t=2P2nhh7B70fl6xQ4-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/inputs-avatar--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-avatar/index.ts\"], website: [\"https://muibook.com/#/avatar\"], guides: [\"https://guides.muibook.com/avatar\"], usage: { list: [ \"Represent a user or entity visually in lists, chats, comments, or profiles.\", \"Display a profile photo, initials, or icon associated with a person or object.\", \"Use in compact UI elements where space is limited (e.g., tables, cards).\", \"Pair with user metadata (name, role, status) for context.\", \"Indicate presence, status, or selection in collaborative interfaces.\", ], }, accessibility: { designerList: [ \"Avatars should always include an accessible label via the label attribute to ensure screen readers can convey their purpose.\", \"When using images, ensure they are clear and appropriately sized for the avatar component.\", \"For avatars representing users, consider using initials or icons when images are not available to maintain visual consistency.\", ], engineerList: [ \"Avatars should always include an accessible label via the label attribute to ensure screen readers can convey their purpose.\", \"When using images, ensure they are clear and appropriately sized for the avatar component.\", \"For avatars representing users, consider using initials or icons when images are not available to maintain visual consistency.\", ], }, anatomy: { image: \"\", list: [\"\"], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, compositions: { description: \"\", items: [ { key: \"\", name: \"\", description: \"\", image: \"\", }, ], }, related: { items: [ { name: \"\", link: \"\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
257
257
  }
258
258
  ],
259
259
  "exports": [
@@ -262,84 +262,91 @@
262
262
  "name": "muiDocs",
263
263
  "declaration": {
264
264
  "name": "muiDocs",
265
- "module": "src/components/mui-body/doc.ts"
265
+ "module": "src/components/mui-avatar/doc.ts"
266
266
  }
267
267
  }
268
268
  ]
269
269
  },
270
270
  {
271
271
  "kind": "javascript-module",
272
- "path": "src/components/mui-body/index.ts",
272
+ "path": "src/components/mui-avatar/index.ts",
273
273
  "declarations": [
274
274
  {
275
275
  "kind": "class",
276
276
  "description": "",
277
- "name": "MuiBody",
277
+ "name": "MuiAvatar",
278
278
  "members": [
279
279
  {
280
- "kind": "method",
281
- "name": "render"
280
+ "kind": "field",
281
+ "name": "_imageFailed",
282
+ "type": {
283
+ "text": "boolean | undefined"
284
+ },
285
+ "privacy": "private"
282
286
  },
283
287
  {
284
288
  "kind": "method",
285
- "name": "setupSlotBehavior",
286
- "privacy": "private"
289
+ "name": "hasSlottedContent"
287
290
  },
288
291
  {
289
292
  "kind": "method",
290
- "name": "syncInlineSlotSizes",
291
- "privacy": "private",
293
+ "name": "getInitials",
292
294
  "parameters": [
293
295
  {
294
- "name": "elements",
296
+ "name": "label",
295
297
  "type": {
296
- "text": "Element[]"
298
+ "text": "string | null"
297
299
  }
298
300
  }
299
301
  ]
300
302
  },
301
303
  {
302
304
  "kind": "method",
303
- "name": "waitForPartMap",
304
- "return": {
305
- "type": {
306
- "text": "Promise<void>"
307
- }
308
- }
305
+ "name": "getBackgroundCSS"
306
+ },
307
+ {
308
+ "kind": "method",
309
+ "name": "render"
309
310
  }
310
311
  ],
311
312
  "attributes": [
313
+ {
314
+ "name": "label"
315
+ },
316
+ {
317
+ "name": "image"
318
+ },
312
319
  {
313
320
  "name": "size"
314
321
  },
315
322
  {
316
- "name": "weight"
323
+ "name": "background"
317
324
  },
318
325
  {
319
- "name": "variant"
326
+ "name": "background-color"
320
327
  }
321
328
  ],
322
329
  "superclass": {
323
330
  "name": "HTMLElement"
324
331
  },
325
- "tagName": "mui-body",
332
+ "tagName": "mui-avatar",
326
333
  "customElement": true
327
334
  }
328
335
  ],
329
336
  "exports": [
330
337
  {
331
338
  "kind": "custom-element-definition",
332
- "name": "mui-body",
339
+ "name": "mui-avatar",
333
340
  "declaration": {
334
- "name": "MuiBody",
335
- "module": "src/components/mui-body/index.ts"
341
+ "name": "MuiAvatar",
342
+ "module": "src/components/mui-avatar/index.ts"
336
343
  }
337
344
  }
338
345
  ]
339
346
  },
340
347
  {
341
348
  "kind": "javascript-module",
342
- "path": "src/components/mui-avatar/doc.ts",
349
+ "path": "src/components/mui-badge/doc.ts",
343
350
  "declarations": [
344
351
  {
345
352
  "kind": "variable",
@@ -347,7 +354,7 @@
347
354
  "type": {
348
355
  "text": "MuiDocs"
349
356
  },
350
- "default": "{ Avatar: { title: \"Avatar\", description: \"Avatar components are used to represent users or entities visually, often through images, initials, or icons.\", hero: [\"https://images.ctfassets.net/i5uwscj4pkk2/2Qj1aPRsHVZZs6eF8XO6XC/54dd3c04d5a0ac379050cfa6f45d9732/Avatar_-_Home_Image.png\"], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=1498-15366&t=2P2nhh7B70fl6xQ4-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/inputs-avatar--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-avatar/index.ts\"], website: [\"https://muibook.com/#/avatar\"], guides: [\"https://guides.muibook.com/avatar\"], usage: { list: [ \"Represent a user or entity visually in lists, chats, comments, or profiles.\", \"Display a profile photo, initials, or icon associated with a person or object.\", \"Use in compact UI elements where space is limited (e.g., tables, cards).\", \"Pair with user metadata (name, role, status) for context.\", \"Indicate presence, status, or selection in collaborative interfaces.\", ], }, accessibility: { designerList: [ \"Avatars should always include an accessible label via the label attribute to ensure screen readers can convey their purpose.\", \"When using images, ensure they are clear and appropriately sized for the avatar component.\", \"For avatars representing users, consider using initials or icons when images are not available to maintain visual consistency.\", ], engineerList: [ \"Avatars should always include an accessible label via the label attribute to ensure screen readers can convey their purpose.\", \"When using images, ensure they are clear and appropriately sized for the avatar component.\", \"For avatars representing users, consider using initials or icons when images are not available to maintain visual consistency.\", ], }, anatomy: { image: \"\", list: [\"\"], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, compositions: { description: \"\", items: [ { key: \"\", name: \"\", description: \"\", image: \"\", }, ], }, related: { items: [ { name: \"\", link: \"\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
357
+ "default": "{ Badge: { title: \"Badge\", description: \"Badges are non-interactive and indicate counts or statuses.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/3uhL6lnJTEY4LtVyMA3og5/7844fa7e691b9f97e3c335e1a978e881/Badge_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=3-1108&t=FSv3FEahG8VQW1FZ-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/feedback-badge--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-badge/index.ts\"], website: [\"https://muibook.com/#/badge\"], guides: [\"https://guides.muibook.com/badge\"], usage: { list: [ \"Show the number of unread notifications E.g. '4' unread messages\", \"Indicate the status of a user – E.g. Online, Busy, or Away\", \"Use size variants (xx-small, x-small, small, medium, large) to match surrounding component scale.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { image: \"\", list: [\"\"], }, variants: { items: [ { key: \"default\", title: \"default\", description: \"Used for data that is visually in the foreground.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3Xgz2qoLs8NACel4fRr9iC/52699b5763f1efd4853a9ffb991b3ff3/badge-default.png\", }, { key: \"positive\", title: \"positive\", description: \"For positive or completed statuses.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/65RMIuUEUIzusbSAwqLQcI/63edb290041c708fc69d0d27fc49e25d/badge-positive.png\", }, { key: \"warning\", title: \"warning\", description: \"For urgent or important statuses.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/5AFfOShVyTEKO1wgIe6rYv/e809c76ddabdfd9789adc31a26becf83/badge-warning.png\", }, { key: \"error\", title: \"error\", description: \"Represents an error, issue or critical state.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/E0jtn7WSTwYligMqSNl0k/c3c041e025c3725682ec12eb3ab98400/badge-error.png\", }, { key: \"overlay\", title: \"overlay\", description: \"For labels placed on media/image surfaces with stronger contrast.\", image: \"\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"outcome-based-roadmap\", name: \"Outcome-Based Roadmap\", description: \"Example of an Outcome-Based Roadmap page showing objectives organised into Upcoming, Doing, and Finished columns. Progress bars indicate the completion status of each task, providing a clear view of overall progress.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3w5htPtfEz7QMCH9alVcwf/de35725fb4542b891bd695b900195291/Outcomes-Progress-Composition.png\", }, { key: \"compliance-dashboard-table\", name: \"Compliance Dashboard Table\", description: \"This example shows a desktop view of a table used within an accounting compliance dashboard.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3vUKA5C5iJ3LvjLwf2WiO9/274ffe423dbe828244294f6809172ce1/table-composition-compliance-dashboard.png\", }, { key: \"carousel-showcase\", name: \"Carousel Showcase\", description: \"This example from the GuruSuite website demonstrates the carousel used to showcase two of the products on offer.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/2TaRRm351HyujF9mT2w1wH/3958f69e939d20618751742130dc5f06/GuruSuite-Carousel-Composition.png\", }, { key: \"outcomes-roadmap-dashboard\", name: \"Outcomes Roadmap Dashboard\", description: \"Example of the responsive component in the Outcomes Roadmap Dashboard, demonstrating layout, title, and padding adjustments across breakpoints.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3FsXandRr1Z9BAKv33twxT/b0d0e4a8b6237bf7d38660111bceb8ab/responsive-composition.gif\", }, ], }, related: { items: [ { name: \"Button\", link: \"https://guides.muibook.com/button\", }, { name: \"Link\", link: \"https://guides.muibook.com/link\", }, { name: \"Tab Bar\", link: \"https://guides.muibook.com/tab-bar\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
351
358
  }
352
359
  ],
353
360
  "exports": [
@@ -356,48 +363,20 @@
356
363
  "name": "muiDocs",
357
364
  "declaration": {
358
365
  "name": "muiDocs",
359
- "module": "src/components/mui-avatar/doc.ts"
366
+ "module": "src/components/mui-badge/doc.ts"
360
367
  }
361
368
  }
362
369
  ]
363
370
  },
364
371
  {
365
372
  "kind": "javascript-module",
366
- "path": "src/components/mui-avatar/index.ts",
373
+ "path": "src/components/mui-badge/index.ts",
367
374
  "declarations": [
368
375
  {
369
376
  "kind": "class",
370
377
  "description": "",
371
- "name": "MuiAvatar",
378
+ "name": "MuiBadge",
372
379
  "members": [
373
- {
374
- "kind": "field",
375
- "name": "_imageFailed",
376
- "type": {
377
- "text": "boolean | undefined"
378
- },
379
- "privacy": "private"
380
- },
381
- {
382
- "kind": "method",
383
- "name": "hasSlottedContent"
384
- },
385
- {
386
- "kind": "method",
387
- "name": "getInitials",
388
- "parameters": [
389
- {
390
- "name": "label",
391
- "type": {
392
- "text": "string | null"
393
- }
394
- }
395
- ]
396
- },
397
- {
398
- "kind": "method",
399
- "name": "getBackgroundCSS"
400
- },
401
380
  {
402
381
  "kind": "method",
403
382
  "name": "render"
@@ -405,42 +384,33 @@
405
384
  ],
406
385
  "attributes": [
407
386
  {
408
- "name": "label"
409
- },
410
- {
411
- "name": "image"
387
+ "name": "variant"
412
388
  },
413
389
  {
414
390
  "name": "size"
415
- },
416
- {
417
- "name": "background"
418
- },
419
- {
420
- "name": "background-color"
421
391
  }
422
392
  ],
423
393
  "superclass": {
424
394
  "name": "HTMLElement"
425
395
  },
426
- "tagName": "mui-avatar",
396
+ "tagName": "mui-badge",
427
397
  "customElement": true
428
398
  }
429
399
  ],
430
400
  "exports": [
431
401
  {
432
402
  "kind": "custom-element-definition",
433
- "name": "mui-avatar",
403
+ "name": "mui-badge",
434
404
  "declaration": {
435
- "name": "MuiAvatar",
436
- "module": "src/components/mui-avatar/index.ts"
405
+ "name": "MuiBadge",
406
+ "module": "src/components/mui-badge/index.ts"
437
407
  }
438
408
  }
439
409
  ]
440
410
  },
441
411
  {
442
412
  "kind": "javascript-module",
443
- "path": "src/components/mui-badge/doc.ts",
413
+ "path": "src/components/mui-body/doc.ts",
444
414
  "declarations": [
445
415
  {
446
416
  "kind": "variable",
@@ -448,7 +418,7 @@
448
418
  "type": {
449
419
  "text": "MuiDocs"
450
420
  },
451
- "default": "{ Badge: { title: \"Badge\", description: \"Badges are non-interactive and indicate counts or statuses.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/3uhL6lnJTEY4LtVyMA3og5/7844fa7e691b9f97e3c335e1a978e881/Badge_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=3-1108&t=FSv3FEahG8VQW1FZ-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/feedback-badge--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-badge/index.ts\"], website: [\"https://muibook.com/#/badge\"], guides: [\"https://guides.muibook.com/badge\"], usage: { list: [ \"Show the number of unread notifications E.g. '4' unread messages\", \"Indicate the status of a user E.g. Online, Busy, or Away\", \"Use size variants (xx-small, x-small, small, medium, large) to match surrounding component scale.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { image: \"\", list: [\"\"], }, variants: { items: [ { key: \"default\", title: \"default\", description: \"Used for data that is visually in the foreground.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3Xgz2qoLs8NACel4fRr9iC/52699b5763f1efd4853a9ffb991b3ff3/badge-default.png\", }, { key: \"positive\", title: \"positive\", description: \"For positive or completed statuses.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/65RMIuUEUIzusbSAwqLQcI/63edb290041c708fc69d0d27fc49e25d/badge-positive.png\", }, { key: \"warning\", title: \"warning\", description: \"For urgent or important statuses.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/5AFfOShVyTEKO1wgIe6rYv/e809c76ddabdfd9789adc31a26becf83/badge-warning.png\", }, { key: \"error\", title: \"error\", description: \"Represents an error, issue or critical state.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/E0jtn7WSTwYligMqSNl0k/c3c041e025c3725682ec12eb3ab98400/badge-error.png\", }, { key: \"overlay\", title: \"overlay\", description: \"For labels placed on media/image surfaces with stronger contrast.\", image: \"\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"outcome-based-roadmap\", name: \"Outcome-Based Roadmap\", description: \"Example of an Outcome-Based Roadmap page showing objectives organised into Upcoming, Doing, and Finished columns. Progress bars indicate the completion status of each task, providing a clear view of overall progress.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3w5htPtfEz7QMCH9alVcwf/de35725fb4542b891bd695b900195291/Outcomes-Progress-Composition.png\", }, { key: \"compliance-dashboard-table\", name: \"Compliance Dashboard Table\", description: \"This example shows a desktop view of a table used within an accounting compliance dashboard.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3vUKA5C5iJ3LvjLwf2WiO9/274ffe423dbe828244294f6809172ce1/table-composition-compliance-dashboard.png\", }, { key: \"carousel-showcase\", name: \"Carousel Showcase\", description: \"This example from the GuruSuite website demonstrates the carousel used to showcase two of the products on offer.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/2TaRRm351HyujF9mT2w1wH/3958f69e939d20618751742130dc5f06/GuruSuite-Carousel-Composition.png\", }, { key: \"outcomes-roadmap-dashboard\", name: \"Outcomes Roadmap Dashboard\", description: \"Example of the responsive component in the Outcomes Roadmap Dashboard, demonstrating layout, title, and padding adjustments across breakpoints.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3FsXandRr1Z9BAKv33twxT/b0d0e4a8b6237bf7d38660111bceb8ab/responsive-composition.gif\", }, ], }, related: { items: [ { name: \"Button\", link: \"https://guides.muibook.com/button\", }, { name: \"Link\", link: \"https://guides.muibook.com/link\", }, { name: \"Tab Bar\", link: \"https://guides.muibook.com/tab-bar\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
421
+ "default": "{ Body: { title: \"Body\", description: \"Use the Body component for clear and readable paragraph text across the UI. It’s ideal for longer-form content such as descriptions, explanations, or supporting information. Variant styles are also available for status messages and other contextual needs.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/GGmtyOnGHBMGMrvkPTWSL/2c6ff12702d76c1393b2315b19728aa3/Body_-_Home_Image.png\", ], figma: [\"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=3-892&t=fSFYVey9aCoE5oQa-1\"], storybook: [\"https://stories.muibook.com/?path=/docs/content-body--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-body/index.ts\"], website: [\"https://muibook.com/#/button\"], guides: [\"https://guides.muibook.com/body\"], usage: { list: [ \"Use for supporting content or descriptions.\", \"Use states like Default, Success, Warning and Error to align with feedback or messaging contexts.\", \"Match the body size to the layout’s overall design and readability.\", \"Adjust the size by selecting x-small, small, medium or large.\", \"Use before/after slots to compose inline icons, badges, or helper UI with body text.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { image: \"\", list: [\"\"], }, variants: { items: [ { key: \"default\", title: \"Default\", description: \"Standard body text with x-small, small, medium and large for tailored readability. In addition to the size, font weight of regular and bold is available.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/2NAalFsBAkeBz69hO093eb/b9390132c50df11749aaa47dafdb2b93/default.png\", }, { key: \"optional\", title: \"Optional\", description: \"Optional text is visually lighter, providing subtle contrast to Standard body text. It comes in four sizes—x-small, small, medium, and large—for tailored readability. Font weights of regular and bold are also available, giving flexibility for emphasis or hierarchy.\", image: \"\", }, { key: \"success\", title: \"Success\", description: \"Indicates positive feedback with the option of x-small, small, medium and large for tailored readability. In addition to the size, font weight of regular and bold is available.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/8RChklU9yHSY7PTJH0JLD/c72f630006f2be4e7f1d850d7510c92f/success.png\", }, { key: \"warning\", title: \"Warning\", description: \"Highlights warning messages with the option of x-small, small, medium, and large for tailored readability. In addition to the size, font weight of regular and bold is available.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/2UJaVEXU2fbKPi3L7afjt/e82b06ef54e92cf2d6f6e984d8a27079/warning.png\", }, { key: \"error\", title: \"Error\", description: \"Highlights error messages with the option of x-small, small, medium, and large for tailored readability. In addition to the size, font weight of regular and bold is available.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/egb4l4ubM0A6T44xAxDgz/5d94fa59f0069b689da537710650e22b/error.png\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"muibook-resource\", name: \"Muibook Resource\", description: \"The Muibook documentation site uses MUI components to compose its layout, including headings, text, lists, buttons, icons, and image components.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3LVvuYDZWRnMhxNy6GMLNd/c5074a05eacb2c22c50ea172b3567c48/Muibook-List-Composition.png\", }, { key: \"outcomes-roadmap-dashboard\", name: \"Outcomes Roadmap Dashboard\", description: \"Example of the responsive component in the Outcomes Roadmap Dashboard, demonstrating layout, title, and padding adjustments across breakpoints.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3FsXandRr1Z9BAKv33twxT/b0d0e4a8b6237bf7d38660111bceb8ab/responsive-composition.gif\", }, { key: \"outcome-based-roadmap\", name: \"Outcome-Based Roadmap\", description: \"Example of an Outcome-Based Roadmap page showing objectives organised into Upcoming, Doing, and Finished columns. Progress bars indicate the completion status of each task, providing a clear view of overall progress.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3w5htPtfEz7QMCH9alVcwf/de35725fb4542b891bd695b900195291/Outcomes-Progress-Composition.png\", }, ], }, related: { items: [ { name: \"Heading\", link: \"https://guides.muibook.com/heading\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
452
422
  }
453
423
  ],
454
424
  "exports": [
@@ -457,47 +427,77 @@
457
427
  "name": "muiDocs",
458
428
  "declaration": {
459
429
  "name": "muiDocs",
460
- "module": "src/components/mui-badge/doc.ts"
430
+ "module": "src/components/mui-body/doc.ts"
461
431
  }
462
432
  }
463
433
  ]
464
434
  },
465
435
  {
466
436
  "kind": "javascript-module",
467
- "path": "src/components/mui-badge/index.ts",
437
+ "path": "src/components/mui-body/index.ts",
468
438
  "declarations": [
469
439
  {
470
440
  "kind": "class",
471
441
  "description": "",
472
- "name": "MuiBadge",
442
+ "name": "MuiBody",
473
443
  "members": [
474
444
  {
475
445
  "kind": "method",
476
446
  "name": "render"
447
+ },
448
+ {
449
+ "kind": "method",
450
+ "name": "setupSlotBehavior",
451
+ "privacy": "private"
452
+ },
453
+ {
454
+ "kind": "method",
455
+ "name": "syncInlineSlotSizes",
456
+ "privacy": "private",
457
+ "parameters": [
458
+ {
459
+ "name": "elements",
460
+ "type": {
461
+ "text": "Element[]"
462
+ }
463
+ }
464
+ ]
465
+ },
466
+ {
467
+ "kind": "method",
468
+ "name": "waitForPartMap",
469
+ "return": {
470
+ "type": {
471
+ "text": "Promise<void>"
472
+ }
473
+ }
477
474
  }
478
475
  ],
479
476
  "attributes": [
480
477
  {
481
- "name": "variant"
478
+ "name": "size"
482
479
  },
483
480
  {
484
- "name": "size"
481
+ "name": "weight"
482
+ },
483
+ {
484
+ "name": "variant"
485
485
  }
486
486
  ],
487
487
  "superclass": {
488
488
  "name": "HTMLElement"
489
489
  },
490
- "tagName": "mui-badge",
490
+ "tagName": "mui-body",
491
491
  "customElement": true
492
492
  }
493
493
  ],
494
494
  "exports": [
495
495
  {
496
496
  "kind": "custom-element-definition",
497
- "name": "mui-badge",
497
+ "name": "mui-body",
498
498
  "declaration": {
499
- "name": "MuiBadge",
500
- "module": "src/components/mui-badge/index.ts"
499
+ "name": "MuiBody",
500
+ "module": "src/components/mui-body/index.ts"
501
501
  }
502
502
  }
503
503
  ]
@@ -3221,16 +3221,155 @@
3221
3221
  },
3222
3222
  {
3223
3223
  "kind": "javascript-module",
3224
- "path": "src/components/mui-icons/accessibility.ts",
3224
+ "path": "src/components/mui-input/doc.ts",
3225
+ "declarations": [
3226
+ {
3227
+ "kind": "variable",
3228
+ "name": "muiDocs",
3229
+ "type": {
3230
+ "text": "MuiDocs"
3231
+ },
3232
+ "default": "{ Input: { title: \"Input\", description: \"An input component for capturing user text, styled for consistency across your UI.\", hero: [\"\"], figma: [\"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=3-795&t=GMqx21isUVAMpLJp-1\"], storybook: [\"https://stories.muibook.com/?path=/docs/inputs-input--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-input/index.ts\"], website: [\"https://muibook.com/#/input\"], guides: [\"https://guides.muibook.com/input\"], usage: { list: [ \"Ensure the purpose of the input is clear, either through a placeholder text or surrounding context.\", \"Ensure validation feedback is considered when using an input. E.g. Error text.\", \"Ensure the experience has clear focus states to support keyboard accessibility.\", \"Select the appropriate input types for the specific use case. E.g. Text, Email, Password.\", \"Use size='x-small|small|medium|large' to align inputs with surrounding form controls.\", \"Use slot='hint' for contextual overlays, including mui-hint with interactive tooltip content.\", \"Use mui-chip in before/after slots for tag-style contextual input patterns.\", \"Use placeholder text to provide context of the input use; avoid using them as primary labels.\", \"Avoid relying solely on placeholder text for instructions, as it disappears when users start typing.\", \"Use the optional attribute when a field is not required to show a clear (optional) marker in the label.\", \"Use max-length when input limits matter; the component shows a live character count.\", \"In React controlled mode, keep value updates isolated from structural attribute updates (label, type, placeholder, variant) to avoid focus loss while typing.\", ], }, accessibility: { designerList: [\"\"], engineerList: [ \"A label is required for screen reader support to describe the input's purpose.\", \"If hide-label is used, the label is visually hidden but accessible via aria-label.\", \"The label and input are linked via for and id. If no id is provided, one is generated.\", \"Clear focus styles are shown for keyboard users.\", \"The native disabled attribute is fully supported by assistive tech.\", \"Optional fields can be explicitly communicated with the optional attribute without changing label association.\", \"When max-length is set, users get visible character progress while native maxlength enforcement remains intact.\", \"For React integrations, prefer reading event.detail.value from the web component custom event instead of querying shadow DOM internals.\", ], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/5aiWlqSJ4BYCGtXn9MbGd/2734f1771c0e666806060bc85f753927/Input_-_Anatomy.png\", list: [ \"Label: Describes the purpose of the Input; required for accessibility. Can be hidden if the context is clear. Ensure the label text is still provided for developers to support screen reader access.\", \"Text: The label or placeholder text that describes the input field’s purpose.\", \"Before: Optional icons can be placed before or after the text input for additional functionality or clarity (e.g., search or password visibility icons).\", \"After: Optional icons can be placed before or after the text input for additional functionality or clarity (e.g., search or password visibility icons).\", \"Slot Before: Allows insertion of an Add-On, Select, or Button before the input to provide contextual or interactive elements. Some design craft may be needed to align elements visually in tools like Figma.\", \"Slot After: Allows insertion of an Add-On, Select, or Button after the input to support or clarify the user’s entry. Some design craft may be needed to ensure alignment and spacing look accurate in design tools.\", ], }, variants: { items: [ { key: \"default\", title: \"Default\", description: \"The standard Input with visible label and no interaction or validation states applied. Used for most form field scenarios.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/5t0SMtVRHvOSHiuHZ8jLfS/64da2bbaf5d2f4216f1c876f205c1298/input-default.png\", }, { key: \"hide-label\", title: \"Hide Label\", description: \"The label is visually hidden but remains accessible to screen readers. Use when the label context is already clear from surrounding UI. Ensure the label name is documented for developers, as the component requires a label for accessibility.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/4wC0xbPgmsMGi6YhMG8PnI/f01da9a977092a2da1e128fbee3325eb/input-hide-label.png\", }, { key: \"hover\", title: \"Hover\", description: \"Displays the hover state styling when a pointer is placed over the Input. Useful for demonstrating interactive feedback.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/5IXEcxa2RxqubupHmblDhd/ab41eba34289194733a87994b096e95d/input-hover.png\", }, { key: \"focus\", title: \"Focus\", description: \"Shows the focus ring or border to indicate that the Input is currently active. Supports accessible keyboard navigation.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/4AA4IcIdnov9MfSeY4rSdL/bbaf44297cdd4bd09d626b707dbe5f47/input-focus.png\", }, { key: \"error\", title: \"Error\", description: \"Displays a visual error style to indicate invalid input. Used with the Field component to surface validation messaging.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/2LYMpJwtH7f8KfPYl0vwAg/385529402b5e73399320c9581c8e1301/input-error.png\", }, { key: \"input-field\", title: \"Input + Field\", description: \"Displays a visual error style to indicate invalid input. Used with the Field component to surface validation messaging.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/kSXvQ6D4hvuP3c9bC0ZUa/319272dc75f0b08493753a49c0fbff75/success-message.png\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"user-details\", name: \"User Details (Step 1)\", description: \"This composition uses an accordion to contain a step in a multi-step flow. It focuses on input fields with labels, placeholders, and optional states, keeping the layout compact and clear.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1L2XfteVwNBQcFlddTYmfi/c791eb538285e2cfb919342e84228811/accordion-block_-_Variants.png\", }, { key: \"onboarding-form\", name: \"Onboarding Form\", description: \"Demonstrates an onboarding form within a card, using logic to confirm terms acceptance. Components include Heading, Input Fields, Checkbox, and Button.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1NrgynTcdmVVKSYCsQwlOW/5fc4776c1860b498a59a2865b4e57ecb/Card-Onboarding-Composition.png\", }, ], }, related: { items: [ { name: \"Field\", link: \"https://guides.muibook.com/field\", }, { name: \"Select\", link: \"https://guides.muibook.com/select\", }, { name: \"File Upload\", link: \"https://guides.muibook.com/file-upload\", }, { name: \"Add on\", link: \"https://guides.muibook.com/add-on\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
3233
+ }
3234
+ ],
3235
+ "exports": [
3236
+ {
3237
+ "kind": "js",
3238
+ "name": "muiDocs",
3239
+ "declaration": {
3240
+ "name": "muiDocs",
3241
+ "module": "src/components/mui-input/doc.ts"
3242
+ }
3243
+ }
3244
+ ]
3245
+ },
3246
+ {
3247
+ "kind": "javascript-module",
3248
+ "path": "src/components/mui-input/index.ts",
3225
3249
  "declarations": [
3226
3250
  {
3227
3251
  "kind": "class",
3228
3252
  "description": "",
3229
- "name": "MuiIconAccessibility",
3253
+ "name": "MuiInput",
3230
3254
  "members": [
3231
3255
  {
3232
- "kind": "method",
3233
- "name": "render",
3256
+ "kind": "field",
3257
+ "name": "_changeHandler",
3258
+ "type": {
3259
+ "text": "(e: Event) => void | undefined"
3260
+ }
3261
+ },
3262
+ {
3263
+ "kind": "method",
3264
+ "name": "cleanupListeners"
3265
+ },
3266
+ {
3267
+ "kind": "method",
3268
+ "name": "setupListener"
3269
+ },
3270
+ {
3271
+ "kind": "method",
3272
+ "name": "updateCharacterCount"
3273
+ },
3274
+ {
3275
+ "kind": "method",
3276
+ "name": "updateSlottedButtons",
3277
+ "return": {
3278
+ "type": {
3279
+ "text": "void"
3280
+ }
3281
+ }
3282
+ },
3283
+ {
3284
+ "kind": "method",
3285
+ "name": "render"
3286
+ }
3287
+ ],
3288
+ "events": [
3289
+ {
3290
+ "name": "change",
3291
+ "type": {
3292
+ "text": "CustomEvent"
3293
+ }
3294
+ },
3295
+ {
3296
+ "name": "input",
3297
+ "type": {
3298
+ "text": "CustomEvent"
3299
+ }
3300
+ }
3301
+ ],
3302
+ "attributes": [
3303
+ {
3304
+ "name": "type"
3305
+ },
3306
+ {
3307
+ "name": "name"
3308
+ },
3309
+ {
3310
+ "name": "value"
3311
+ },
3312
+ {
3313
+ "name": "placeholder"
3314
+ },
3315
+ {
3316
+ "name": "id"
3317
+ },
3318
+ {
3319
+ "name": "label"
3320
+ },
3321
+ {
3322
+ "name": "disabled"
3323
+ },
3324
+ {
3325
+ "name": "hide-label"
3326
+ },
3327
+ {
3328
+ "name": "variant"
3329
+ },
3330
+ {
3331
+ "name": "optional"
3332
+ },
3333
+ {
3334
+ "name": "max-length"
3335
+ },
3336
+ {
3337
+ "name": "size"
3338
+ },
3339
+ {
3340
+ "name": "slot-layout"
3341
+ }
3342
+ ],
3343
+ "superclass": {
3344
+ "name": "HTMLElement"
3345
+ },
3346
+ "tagName": "mui-input",
3347
+ "customElement": true
3348
+ }
3349
+ ],
3350
+ "exports": [
3351
+ {
3352
+ "kind": "custom-element-definition",
3353
+ "name": "mui-input",
3354
+ "declaration": {
3355
+ "name": "MuiInput",
3356
+ "module": "src/components/mui-input/index.ts"
3357
+ }
3358
+ }
3359
+ ]
3360
+ },
3361
+ {
3362
+ "kind": "javascript-module",
3363
+ "path": "src/components/mui-icons/accessibility.ts",
3364
+ "declarations": [
3365
+ {
3366
+ "kind": "class",
3367
+ "description": "",
3368
+ "name": "MuiIconAccessibility",
3369
+ "members": [
3370
+ {
3371
+ "kind": "method",
3372
+ "name": "render",
3234
3373
  "return": {
3235
3374
  "type": {
3236
3375
  "text": "void"
@@ -5513,145 +5652,6 @@
5513
5652
  }
5514
5653
  ]
5515
5654
  },
5516
- {
5517
- "kind": "javascript-module",
5518
- "path": "src/components/mui-input/doc.ts",
5519
- "declarations": [
5520
- {
5521
- "kind": "variable",
5522
- "name": "muiDocs",
5523
- "type": {
5524
- "text": "MuiDocs"
5525
- },
5526
- "default": "{ Input: { title: \"Input\", description: \"An input component for capturing user text, styled for consistency across your UI.\", hero: [\"\"], figma: [\"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=3-795&t=GMqx21isUVAMpLJp-1\"], storybook: [\"https://stories.muibook.com/?path=/docs/inputs-input--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-input/index.ts\"], website: [\"https://muibook.com/#/input\"], guides: [\"https://guides.muibook.com/input\"], usage: { list: [ \"Ensure the purpose of the input is clear, either through a placeholder text or surrounding context.\", \"Ensure validation feedback is considered when using an input. E.g. Error text.\", \"Ensure the experience has clear focus states to support keyboard accessibility.\", \"Select the appropriate input types for the specific use case. E.g. Text, Email, Password.\", \"Use size='x-small|small|medium|large' to align inputs with surrounding form controls.\", \"Use slot='hint' for contextual overlays, including mui-hint with interactive tooltip content.\", \"Use mui-chip in before/after slots for tag-style contextual input patterns.\", \"Use placeholder text to provide context of the input use; avoid using them as primary labels.\", \"Avoid relying solely on placeholder text for instructions, as it disappears when users start typing.\", \"Use the optional attribute when a field is not required to show a clear (optional) marker in the label.\", \"Use max-length when input limits matter; the component shows a live character count.\", \"In React controlled mode, keep value updates isolated from structural attribute updates (label, type, placeholder, variant) to avoid focus loss while typing.\", ], }, accessibility: { designerList: [\"\"], engineerList: [ \"A label is required for screen reader support to describe the input's purpose.\", \"If hide-label is used, the label is visually hidden but accessible via aria-label.\", \"The label and input are linked via for and id. If no id is provided, one is generated.\", \"Clear focus styles are shown for keyboard users.\", \"The native disabled attribute is fully supported by assistive tech.\", \"Optional fields can be explicitly communicated with the optional attribute without changing label association.\", \"When max-length is set, users get visible character progress while native maxlength enforcement remains intact.\", \"For React integrations, prefer reading event.detail.value from the web component custom event instead of querying shadow DOM internals.\", ], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/5aiWlqSJ4BYCGtXn9MbGd/2734f1771c0e666806060bc85f753927/Input_-_Anatomy.png\", list: [ \"Label: Describes the purpose of the Input; required for accessibility. Can be hidden if the context is clear. Ensure the label text is still provided for developers to support screen reader access.\", \"Text: The label or placeholder text that describes the input field’s purpose.\", \"Before: Optional icons can be placed before or after the text input for additional functionality or clarity (e.g., search or password visibility icons).\", \"After: Optional icons can be placed before or after the text input for additional functionality or clarity (e.g., search or password visibility icons).\", \"Slot Before: Allows insertion of an Add-On, Select, or Button before the input to provide contextual or interactive elements. Some design craft may be needed to align elements visually in tools like Figma.\", \"Slot After: Allows insertion of an Add-On, Select, or Button after the input to support or clarify the user’s entry. Some design craft may be needed to ensure alignment and spacing look accurate in design tools.\", ], }, variants: { items: [ { key: \"default\", title: \"Default\", description: \"The standard Input with visible label and no interaction or validation states applied. Used for most form field scenarios.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/5t0SMtVRHvOSHiuHZ8jLfS/64da2bbaf5d2f4216f1c876f205c1298/input-default.png\", }, { key: \"hide-label\", title: \"Hide Label\", description: \"The label is visually hidden but remains accessible to screen readers. Use when the label context is already clear from surrounding UI. Ensure the label name is documented for developers, as the component requires a label for accessibility.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/4wC0xbPgmsMGi6YhMG8PnI/f01da9a977092a2da1e128fbee3325eb/input-hide-label.png\", }, { key: \"hover\", title: \"Hover\", description: \"Displays the hover state styling when a pointer is placed over the Input. Useful for demonstrating interactive feedback.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/5IXEcxa2RxqubupHmblDhd/ab41eba34289194733a87994b096e95d/input-hover.png\", }, { key: \"focus\", title: \"Focus\", description: \"Shows the focus ring or border to indicate that the Input is currently active. Supports accessible keyboard navigation.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/4AA4IcIdnov9MfSeY4rSdL/bbaf44297cdd4bd09d626b707dbe5f47/input-focus.png\", }, { key: \"error\", title: \"Error\", description: \"Displays a visual error style to indicate invalid input. Used with the Field component to surface validation messaging.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/2LYMpJwtH7f8KfPYl0vwAg/385529402b5e73399320c9581c8e1301/input-error.png\", }, { key: \"input-field\", title: \"Input + Field\", description: \"Displays a visual error style to indicate invalid input. Used with the Field component to surface validation messaging.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/kSXvQ6D4hvuP3c9bC0ZUa/319272dc75f0b08493753a49c0fbff75/success-message.png\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"user-details\", name: \"User Details (Step 1)\", description: \"This composition uses an accordion to contain a step in a multi-step flow. It focuses on input fields with labels, placeholders, and optional states, keeping the layout compact and clear.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1L2XfteVwNBQcFlddTYmfi/c791eb538285e2cfb919342e84228811/accordion-block_-_Variants.png\", }, { key: \"onboarding-form\", name: \"Onboarding Form\", description: \"Demonstrates an onboarding form within a card, using logic to confirm terms acceptance. Components include Heading, Input Fields, Checkbox, and Button.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1NrgynTcdmVVKSYCsQwlOW/5fc4776c1860b498a59a2865b4e57ecb/Card-Onboarding-Composition.png\", }, ], }, related: { items: [ { name: \"Field\", link: \"https://guides.muibook.com/field\", }, { name: \"Select\", link: \"https://guides.muibook.com/select\", }, { name: \"File Upload\", link: \"https://guides.muibook.com/file-upload\", }, { name: \"Add on\", link: \"https://guides.muibook.com/add-on\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
5527
- }
5528
- ],
5529
- "exports": [
5530
- {
5531
- "kind": "js",
5532
- "name": "muiDocs",
5533
- "declaration": {
5534
- "name": "muiDocs",
5535
- "module": "src/components/mui-input/doc.ts"
5536
- }
5537
- }
5538
- ]
5539
- },
5540
- {
5541
- "kind": "javascript-module",
5542
- "path": "src/components/mui-input/index.ts",
5543
- "declarations": [
5544
- {
5545
- "kind": "class",
5546
- "description": "",
5547
- "name": "MuiInput",
5548
- "members": [
5549
- {
5550
- "kind": "field",
5551
- "name": "_changeHandler",
5552
- "type": {
5553
- "text": "(e: Event) => void | undefined"
5554
- }
5555
- },
5556
- {
5557
- "kind": "method",
5558
- "name": "cleanupListeners"
5559
- },
5560
- {
5561
- "kind": "method",
5562
- "name": "setupListener"
5563
- },
5564
- {
5565
- "kind": "method",
5566
- "name": "updateCharacterCount"
5567
- },
5568
- {
5569
- "kind": "method",
5570
- "name": "updateSlottedButtons",
5571
- "return": {
5572
- "type": {
5573
- "text": "void"
5574
- }
5575
- }
5576
- },
5577
- {
5578
- "kind": "method",
5579
- "name": "render"
5580
- }
5581
- ],
5582
- "events": [
5583
- {
5584
- "name": "change",
5585
- "type": {
5586
- "text": "CustomEvent"
5587
- }
5588
- },
5589
- {
5590
- "name": "input",
5591
- "type": {
5592
- "text": "CustomEvent"
5593
- }
5594
- }
5595
- ],
5596
- "attributes": [
5597
- {
5598
- "name": "type"
5599
- },
5600
- {
5601
- "name": "name"
5602
- },
5603
- {
5604
- "name": "value"
5605
- },
5606
- {
5607
- "name": "placeholder"
5608
- },
5609
- {
5610
- "name": "id"
5611
- },
5612
- {
5613
- "name": "label"
5614
- },
5615
- {
5616
- "name": "disabled"
5617
- },
5618
- {
5619
- "name": "hide-label"
5620
- },
5621
- {
5622
- "name": "variant"
5623
- },
5624
- {
5625
- "name": "optional"
5626
- },
5627
- {
5628
- "name": "max-length"
5629
- },
5630
- {
5631
- "name": "size"
5632
- },
5633
- {
5634
- "name": "slot-layout"
5635
- }
5636
- ],
5637
- "superclass": {
5638
- "name": "HTMLElement"
5639
- },
5640
- "tagName": "mui-input",
5641
- "customElement": true
5642
- }
5643
- ],
5644
- "exports": [
5645
- {
5646
- "kind": "custom-element-definition",
5647
- "name": "mui-input",
5648
- "declaration": {
5649
- "name": "MuiInput",
5650
- "module": "src/components/mui-input/index.ts"
5651
- }
5652
- }
5653
- ]
5654
- },
5655
5655
  {
5656
5656
  "kind": "javascript-module",
5657
5657
  "path": "src/components/mui-link/doc.ts",
@@ -6363,70 +6363,6 @@
6363
6363
  }
6364
6364
  ]
6365
6365
  },
6366
- {
6367
- "kind": "javascript-module",
6368
- "path": "src/components/mui-progress/doc.ts",
6369
- "declarations": [
6370
- {
6371
- "kind": "variable",
6372
- "name": "muiDocs",
6373
- "type": {
6374
- "text": "MuiDocs"
6375
- },
6376
- "default": "{ Progress: { title: \"Progress\", description: \"A Progress Bar visually represents completion status by filling a bar based on a percentage value. It gives users a clear indication of progress for a given task or process.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/2NPcL7tA0zGUWFLShr66fS/23d0050dce8c8379afc6deb8e351d049/Progress_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=948-4161&t=0ytskb8cxriEmdz2-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/inputs-progress--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-progress/index.ts\"], website: [\"https://muibook.com/#/progress\"], guides: [\"https://guides.muibook.com/progress\"], usage: { list: [ \"Show task progress – Indicate how much of a task or process has been completed.\", \"Display loading states – Represent the progress of a background operation, such as file uploads.\", \"Track step completion – Show progress in multi-step workflows or onboarding processes.\", \"Tune visual density and motion with component tokens such as --progress-radius, --progress-syncing-width, and --progress-pending-stripe-size.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/1iPll53Pmtgjh50qYwhsgY/908da9c51dd605895bd6306290fc6bd9/Progress_-_Anatomy.png\", list: [ \"Fill (Indicator) – The colored portion inside the track that represents the progress percentage.\", \"Track – The background of the progress bar, providing the visual boundary for progress.\", ], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"outcome-based-roadmap\", name: \"Outcome-Based Roadmap\", description: \"Example of an Outcome-Based Roadmap page showing objectives organised into Upcoming, Doing, and Finished columns. Progress bars indicate the completion status of each task, providing a clear view of overall progress.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3w5htPtfEz7QMCH9alVcwf/de35725fb4542b891bd695b900195291/Outcomes-Progress-Composition.png\", }, ], }, related: { items: [ { name: \"\", link: \"\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
6377
- }
6378
- ],
6379
- "exports": [
6380
- {
6381
- "kind": "js",
6382
- "name": "muiDocs",
6383
- "declaration": {
6384
- "name": "muiDocs",
6385
- "module": "src/components/mui-progress/doc.ts"
6386
- }
6387
- }
6388
- ]
6389
- },
6390
- {
6391
- "kind": "javascript-module",
6392
- "path": "src/components/mui-progress/index.ts",
6393
- "declarations": [
6394
- {
6395
- "kind": "class",
6396
- "description": "",
6397
- "name": "MuiProgress",
6398
- "members": [
6399
- {
6400
- "kind": "method",
6401
- "name": "render"
6402
- }
6403
- ],
6404
- "attributes": [
6405
- {
6406
- "name": "progress"
6407
- },
6408
- {
6409
- "name": "state"
6410
- }
6411
- ],
6412
- "superclass": {
6413
- "name": "HTMLElement"
6414
- },
6415
- "tagName": "mui-progress",
6416
- "customElement": true
6417
- }
6418
- ],
6419
- "exports": [
6420
- {
6421
- "kind": "custom-element-definition",
6422
- "name": "mui-progress",
6423
- "declaration": {
6424
- "name": "MuiProgress",
6425
- "module": "src/components/mui-progress/index.ts"
6426
- }
6427
- }
6428
- ]
6429
- },
6430
6366
  {
6431
6367
  "kind": "javascript-module",
6432
6368
  "path": "src/components/mui-prompt/doc.ts",
@@ -7129,6 +7065,70 @@
7129
7065
  }
7130
7066
  ]
7131
7067
  },
7068
+ {
7069
+ "kind": "javascript-module",
7070
+ "path": "src/components/mui-progress/doc.ts",
7071
+ "declarations": [
7072
+ {
7073
+ "kind": "variable",
7074
+ "name": "muiDocs",
7075
+ "type": {
7076
+ "text": "MuiDocs"
7077
+ },
7078
+ "default": "{ Progress: { title: \"Progress\", description: \"A Progress Bar visually represents completion status by filling a bar based on a percentage value. It gives users a clear indication of progress for a given task or process.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/2NPcL7tA0zGUWFLShr66fS/23d0050dce8c8379afc6deb8e351d049/Progress_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=948-4161&t=0ytskb8cxriEmdz2-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/inputs-progress--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-progress/index.ts\"], website: [\"https://muibook.com/#/progress\"], guides: [\"https://guides.muibook.com/progress\"], usage: { list: [ \"Show task progress – Indicate how much of a task or process has been completed.\", \"Display loading states – Represent the progress of a background operation, such as file uploads.\", \"Track step completion – Show progress in multi-step workflows or onboarding processes.\", \"Tune visual density and motion with component tokens such as --progress-radius, --progress-syncing-width, and --progress-pending-stripe-size.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/1iPll53Pmtgjh50qYwhsgY/908da9c51dd605895bd6306290fc6bd9/Progress_-_Anatomy.png\", list: [ \"Fill (Indicator) – The colored portion inside the track that represents the progress percentage.\", \"Track – The background of the progress bar, providing the visual boundary for progress.\", ], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"outcome-based-roadmap\", name: \"Outcome-Based Roadmap\", description: \"Example of an Outcome-Based Roadmap page showing objectives organised into Upcoming, Doing, and Finished columns. Progress bars indicate the completion status of each task, providing a clear view of overall progress.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3w5htPtfEz7QMCH9alVcwf/de35725fb4542b891bd695b900195291/Outcomes-Progress-Composition.png\", }, ], }, related: { items: [ { name: \"\", link: \"\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
7079
+ }
7080
+ ],
7081
+ "exports": [
7082
+ {
7083
+ "kind": "js",
7084
+ "name": "muiDocs",
7085
+ "declaration": {
7086
+ "name": "muiDocs",
7087
+ "module": "src/components/mui-progress/doc.ts"
7088
+ }
7089
+ }
7090
+ ]
7091
+ },
7092
+ {
7093
+ "kind": "javascript-module",
7094
+ "path": "src/components/mui-progress/index.ts",
7095
+ "declarations": [
7096
+ {
7097
+ "kind": "class",
7098
+ "description": "",
7099
+ "name": "MuiProgress",
7100
+ "members": [
7101
+ {
7102
+ "kind": "method",
7103
+ "name": "render"
7104
+ }
7105
+ ],
7106
+ "attributes": [
7107
+ {
7108
+ "name": "progress"
7109
+ },
7110
+ {
7111
+ "name": "state"
7112
+ }
7113
+ ],
7114
+ "superclass": {
7115
+ "name": "HTMLElement"
7116
+ },
7117
+ "tagName": "mui-progress",
7118
+ "customElement": true
7119
+ }
7120
+ ],
7121
+ "exports": [
7122
+ {
7123
+ "kind": "custom-element-definition",
7124
+ "name": "mui-progress",
7125
+ "declaration": {
7126
+ "name": "MuiProgress",
7127
+ "module": "src/components/mui-progress/index.ts"
7128
+ }
7129
+ }
7130
+ ]
7131
+ },
7132
7132
  {
7133
7133
  "kind": "javascript-module",
7134
7134
  "path": "src/components/mui-prompt-message/doc.ts",
@@ -7437,6 +7437,56 @@
7437
7437
  }
7438
7438
  ]
7439
7439
  },
7440
+ {
7441
+ "kind": "javascript-module",
7442
+ "path": "src/components/mui-quote/doc.ts",
7443
+ "declarations": [
7444
+ {
7445
+ "kind": "variable",
7446
+ "name": "muiDocs",
7447
+ "type": {
7448
+ "text": "MuiDocs"
7449
+ },
7450
+ "default": "{ Quote: { title: \"Quote\", description: \"Used to highlight a piece of text, typically a statement or excerpt, that adds emphasis or authority. Quotes help break up content and draw attention to important or inspirational messages.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/K68wChzSMiLUojTMGoDcY/9de538ad493e36cb14afa388ecadbf47/Quote_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=1069-15815&t=BwezUSymTClm00wJ-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/content-quote--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-quote/index.ts\"], website: [\"https://muibook.com/#/quote\"], guides: [\"https://guides.muibook.com/quote\"], usage: { list: [ \"Use to emphasise key statements or citations within content.\", \"Ideal for highlighting testimonials, excerpts, or impactful text.\", \"Keep quotes concise and visually distinct from body text.\", \"Avoid overusing to maintain impact and clarity.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { image: \"\", list: [\"\"], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, compositions: { description: \"\", items: [ { key: \"\", name: \"\", description: \"\", image: \"\", }, ], }, related: { items: [ { name: \"\", link: \"\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
7451
+ }
7452
+ ],
7453
+ "exports": [
7454
+ {
7455
+ "kind": "js",
7456
+ "name": "muiDocs",
7457
+ "declaration": {
7458
+ "name": "muiDocs",
7459
+ "module": "src/components/mui-quote/doc.ts"
7460
+ }
7461
+ }
7462
+ ]
7463
+ },
7464
+ {
7465
+ "kind": "javascript-module",
7466
+ "path": "src/components/mui-quote/index.ts",
7467
+ "declarations": [
7468
+ {
7469
+ "kind": "class",
7470
+ "description": "",
7471
+ "name": "MuiQuote",
7472
+ "superclass": {
7473
+ "name": "HTMLElement"
7474
+ },
7475
+ "tagName": "mui-quote",
7476
+ "customElement": true
7477
+ }
7478
+ ],
7479
+ "exports": [
7480
+ {
7481
+ "kind": "custom-element-definition",
7482
+ "name": "mui-quote",
7483
+ "declaration": {
7484
+ "name": "MuiQuote",
7485
+ "module": "src/components/mui-quote/index.ts"
7486
+ }
7487
+ }
7488
+ ]
7489
+ },
7440
7490
  {
7441
7491
  "kind": "javascript-module",
7442
7492
  "path": "src/components/mui-prompt-toggle/index.ts",
@@ -7493,56 +7543,6 @@
7493
7543
  }
7494
7544
  ]
7495
7545
  },
7496
- {
7497
- "kind": "javascript-module",
7498
- "path": "src/components/mui-quote/doc.ts",
7499
- "declarations": [
7500
- {
7501
- "kind": "variable",
7502
- "name": "muiDocs",
7503
- "type": {
7504
- "text": "MuiDocs"
7505
- },
7506
- "default": "{ Quote: { title: \"Quote\", description: \"Used to highlight a piece of text, typically a statement or excerpt, that adds emphasis or authority. Quotes help break up content and draw attention to important or inspirational messages.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/K68wChzSMiLUojTMGoDcY/9de538ad493e36cb14afa388ecadbf47/Quote_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=1069-15815&t=BwezUSymTClm00wJ-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/content-quote--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-quote/index.ts\"], website: [\"https://muibook.com/#/quote\"], guides: [\"https://guides.muibook.com/quote\"], usage: { list: [ \"Use to emphasise key statements or citations within content.\", \"Ideal for highlighting testimonials, excerpts, or impactful text.\", \"Keep quotes concise and visually distinct from body text.\", \"Avoid overusing to maintain impact and clarity.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { image: \"\", list: [\"\"], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, compositions: { description: \"\", items: [ { key: \"\", name: \"\", description: \"\", image: \"\", }, ], }, related: { items: [ { name: \"\", link: \"\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
7507
- }
7508
- ],
7509
- "exports": [
7510
- {
7511
- "kind": "js",
7512
- "name": "muiDocs",
7513
- "declaration": {
7514
- "name": "muiDocs",
7515
- "module": "src/components/mui-quote/doc.ts"
7516
- }
7517
- }
7518
- ]
7519
- },
7520
- {
7521
- "kind": "javascript-module",
7522
- "path": "src/components/mui-quote/index.ts",
7523
- "declarations": [
7524
- {
7525
- "kind": "class",
7526
- "description": "",
7527
- "name": "MuiQuote",
7528
- "superclass": {
7529
- "name": "HTMLElement"
7530
- },
7531
- "tagName": "mui-quote",
7532
- "customElement": true
7533
- }
7534
- ],
7535
- "exports": [
7536
- {
7537
- "kind": "custom-element-definition",
7538
- "name": "mui-quote",
7539
- "declaration": {
7540
- "name": "MuiQuote",
7541
- "module": "src/components/mui-quote/index.ts"
7542
- }
7543
- }
7544
- ]
7545
- },
7546
7546
  {
7547
7547
  "kind": "javascript-module",
7548
7548
  "path": "src/components/mui-radio/doc.ts",
@@ -8346,7 +8346,7 @@
8346
8346
  },
8347
8347
  {
8348
8348
  "kind": "javascript-module",
8349
- "path": "src/components/mui-smart-card/doc.ts",
8349
+ "path": "src/components/mui-slide-frame/doc.ts",
8350
8350
  "declarations": [
8351
8351
  {
8352
8352
  "kind": "variable",
@@ -8354,7 +8354,7 @@
8354
8354
  "type": {
8355
8355
  "text": "MuiDocs"
8356
8356
  },
8357
- "default": "{ SmartCard: { title: \"Smart Card\", description: \"A visually rich, responsive component used to represent digital or physical cards within interfaces such as wallets, dashboards, or rewards experiences. Designed to surface key information at a glance, with space for branding, balance, status, or interactive actions.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/7qITxDlh6vSZatNH00P4bS/4c825fa8f3109b175b0cd75a2a6d261d/Smart-card_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=440-1250&t=FSv3FEahG8VQW1FZ-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/content-smartcard--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-smart-card/index.ts\"], website: [\"https://muibook.com/#/smart-card\"], guides: [\"https://guides.muibook.com/smart-card\"], usage: { list: [ \"Use to display account, card, or membership information in a recognisable format.\", \"Ideal for wallets, rewards, or financial dashboards where visual identity matters.\", \"Surface primary details such as balance, expiry, or card type clearly.\", \"Avoid overloading with actions—prioritise clarity and visual hierarchy.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/7axH5SYpu0aVyMIglUrjra/1d9ab89d5861da9a22f856bd85ce9961/SmartCard_-_Anatomy.png\", list: [ \"Type: Used to visually or semantically describe the card’s usage.\", \"Logo: Option to add logo to the card top right.\", \"Number: Only the last 4 digits are shown (no full card number for security).\", \"Partner: Section to add the card partner.\", \"Background: Ability to change card colour, add a static or animated background.\", ], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"smart-card\", name: \"Smart Card\", description: \"The Smart Card composition uses slats to present structured information in a compact format. Slats help organise details such as titles, descriptions, and supporting actions, making the card easy to scan and interact with.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/74knMtil1vp9nHPPWXM1kr/54f8d978b0a82bca2c126e8ab800826f/SmartCard_-_Card_Composition.png\", }, ], }, related: { items: [ { name: \"\", link: \"\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
8357
+ "default": "{ SlideFrame: { title: \"Slide Frame\", description: \"Slide Frame is a composable presentation surface for UI-builder workflows. It supports configurable ratio, variants, radius, image composition, and overflow handling.\", hero: [\"\"], figma: [\"\"], storybook: [\"\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-slide-frame/index.ts\"], website: [\"https://muibook.com/#/slide-frame\"], guides: [\"https://guides.muibook.com/slide-frame\"], usage: { list: [ \"Use as a presentation shell and compose page content with existing components like Stack, Grid, Card, and Media.\", \"Prefer one <mui-slide-section> per page in the default slot for scalable composition.\", \"Use ratio='16:9|4:3|1:1|3:2|9:16' (or any valid W:H string) for presentation formats.\", \"Use title for built-in header text and footer-text for built-in footer copy.\", \"Section counter is built into the footer and updates with active-section.\", \"Use slot='header-after' and slot='footer-after' for trailing actions.\", \"Use slot='header-description' for secondary lines.\", \"Use variant='default|plain' to control frame chrome.\", \"Use radius='default | none | small | medium | large' to align with your layout language.\", \"Use scroll to opt into surface scrolling when content exceeds the frame.\", \"When multiple sections exist, users can navigate with Left/Right arrows.\", \"Use section-add-request to intercept Add Section and inject app-specific section content.\", \"In present mode, press Esc to exit quickly.\", \"Use header/footer slots for frame-level controls, metadata, or actions.\", ], }, accessibility: { designerList: [\"\"], engineerList: [ \"The surface is focusable in present mode and supports keyboard section navigation with Left/Right arrows.\", \"Esc exits present mode.\", \"Use hide-counter when you need to suppress the built-in Section X/Y footer counter.\", \"Expose external controls for next/previous actions when building guided presentation flows.\", ], }, anatomy: { image: \"\", list: [\"Header Slot\", \"Surface\", \"Image Slot\", \"Default Slot Content\", \"Notes Slot\", \"Footer Slot\"], }, variants: { items: [ { key: \"default\", title: \"Default\", description: \"Standard frame with ratio and padding control.\", image: \"\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [], }, related: { items: [ { name: \"Stack\", link: \"https://guides.muibook.com/stack\" }, { name: \"Grid\", link: \"https://guides.muibook.com/grid\" }, { name: \"Card\", link: \"https://guides.muibook.com/card\" }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"] }, writing: { list: [\"\"] }, }, }"
8358
8358
  }
8359
8359
  ],
8360
8360
  "exports": [
@@ -8363,189 +8363,28 @@
8363
8363
  "name": "muiDocs",
8364
8364
  "declaration": {
8365
8365
  "name": "muiDocs",
8366
- "module": "src/components/mui-smart-card/doc.ts"
8366
+ "module": "src/components/mui-slide-frame/doc.ts"
8367
8367
  }
8368
8368
  }
8369
8369
  ]
8370
8370
  },
8371
8371
  {
8372
8372
  "kind": "javascript-module",
8373
- "path": "src/components/mui-smart-card/index.ts",
8373
+ "path": "src/components/mui-slide-frame/index.ts",
8374
8374
  "declarations": [
8375
8375
  {
8376
8376
  "kind": "class",
8377
8377
  "description": "",
8378
- "name": "MuiSmartCard",
8378
+ "name": "MuiSlideFrame",
8379
8379
  "members": [
8380
8380
  {
8381
- "kind": "method",
8382
- "name": "render"
8383
- }
8384
- ],
8385
- "attributes": [
8386
- {
8387
- "name": "state"
8388
- },
8389
- {
8390
- "name": "number"
8391
- },
8392
- {
8393
- "name": "variant"
8394
- },
8395
- {
8396
- "name": "partner"
8397
- },
8398
- {
8399
- "name": "type"
8400
- },
8401
- {
8402
- "name": "logo"
8403
- },
8404
- {
8405
- "name": "logo-width"
8406
- },
8407
- {
8408
- "name": "logo-height"
8409
- },
8410
- {
8411
- "name": "bg-color"
8412
- },
8413
- {
8414
- "name": "bg-image"
8415
- },
8416
- {
8417
- "name": "inverted"
8418
- }
8419
- ],
8420
- "superclass": {
8421
- "name": "HTMLElement"
8422
- },
8423
- "tagName": "mui-smart-card",
8424
- "customElement": true
8425
- }
8426
- ],
8427
- "exports": [
8428
- {
8429
- "kind": "custom-element-definition",
8430
- "name": "mui-smart-card",
8431
- "declaration": {
8432
- "name": "MuiSmartCard",
8433
- "module": "src/components/mui-smart-card/index.ts"
8434
- }
8435
- }
8436
- ]
8437
- },
8438
- {
8439
- "kind": "javascript-module",
8440
- "path": "src/components/mui-spinner/doc.ts",
8441
- "declarations": [
8442
- {
8443
- "kind": "variable",
8444
- "name": "muiDocs",
8445
- "type": {
8446
- "text": "MuiDocs"
8447
- },
8448
- "default": "{ Spinner: { title: \"Spinner\", description: \"Spinner provides compact loading feedback for short async states.\", hero: [\"\"], figma: [\"\"], storybook: [\"https://stories.muibook.com\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-spinner/index.ts\"], website: [\"https://muibook.com/#/loader\"], guides: [\"https://guides.muibook.com/loader\"], usage: { list: [ \"Use when content is loading and progress percentage is unavailable.\", \"Use size variants (xx-small to large) to match surrounding density.\", \"Set label for assistive technology context.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"Provide a meaningful label when context is unclear.\"] }, anatomy: { image: \"\", list: [\"Animated ring\", \"Accessible label\"] }, variants: { items: [{ key: \"\", title: \"\", description: \"\", image: \"\" }] }, compositions: { description: \"\", items: [] }, related: { items: [{ name: \"Loader\", link: \"https://guides.muibook.com/loader\" }] }, rules: [{ heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }] }], behaviour: { list: [\"\"] }, writing: { list: [\"\"] }, }, }"
8449
- }
8450
- ],
8451
- "exports": [
8452
- {
8453
- "kind": "js",
8454
- "name": "muiDocs",
8455
- "declaration": {
8456
- "name": "muiDocs",
8457
- "module": "src/components/mui-spinner/doc.ts"
8458
- }
8459
- }
8460
- ]
8461
- },
8462
- {
8463
- "kind": "javascript-module",
8464
- "path": "src/components/mui-spinner/index.ts",
8465
- "declarations": [
8466
- {
8467
- "kind": "class",
8468
- "description": "",
8469
- "name": "MuiSpinner",
8470
- "members": [
8471
- {
8472
- "kind": "method",
8473
- "name": "render"
8474
- }
8475
- ],
8476
- "attributes": [
8477
- {
8478
- "name": "size"
8479
- },
8480
- {
8481
- "name": "color"
8482
- },
8483
- {
8484
- "name": "duration"
8485
- },
8486
- {
8487
- "name": "label"
8488
- }
8489
- ],
8490
- "superclass": {
8491
- "name": "HTMLElement"
8492
- },
8493
- "tagName": "mui-spinner",
8494
- "customElement": true
8495
- }
8496
- ],
8497
- "exports": [
8498
- {
8499
- "kind": "custom-element-definition",
8500
- "name": "mui-spinner",
8501
- "declaration": {
8502
- "name": "MuiSpinner",
8503
- "module": "src/components/mui-spinner/index.ts"
8504
- }
8505
- }
8506
- ]
8507
- },
8508
- {
8509
- "kind": "javascript-module",
8510
- "path": "src/components/mui-slide-frame/doc.ts",
8511
- "declarations": [
8512
- {
8513
- "kind": "variable",
8514
- "name": "muiDocs",
8515
- "type": {
8516
- "text": "MuiDocs"
8517
- },
8518
- "default": "{ SlideFrame: { title: \"Slide Frame\", description: \"Slide Frame is a composable presentation surface for UI-builder workflows. It supports configurable ratio, variants, radius, image composition, and overflow handling.\", hero: [\"\"], figma: [\"\"], storybook: [\"\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-slide-frame/index.ts\"], website: [\"https://muibook.com/#/slide-frame\"], guides: [\"https://guides.muibook.com/slide-frame\"], usage: { list: [ \"Use as a single-slide shell and compose internals with existing components like Stack, Grid, Card, and Media.\", \"Use ratio='16:9|4:3|1:1|3:2|9:16' (or any valid W:H string) for presentation formats.\", \"Use title for built-in header text and footer-text for built-in footer copy.\", \"Section counter is built into the footer and updates with active-section.\", \"Use slot='header-after' and slot='footer-after' for trailing actions.\", \"Use slot='header-description' for secondary lines.\", \"Use variant='default|plain' to control frame chrome.\", \"Use radius='default | none | small | medium | large' to align with your layout language.\", \"Use scroll to opt into surface scrolling when content exceeds the frame.\", \"When multiple sections exist, users can navigate with Left/Right arrows or horizontal swipe gestures.\", \"In present mode, press Esc to exit quickly.\", \"Use header/footer slots for frame-level controls, metadata, or actions.\", ], }, accessibility: { designerList: [\"\"], engineerList: [ \"The surface is focusable in present mode and supports keyboard section navigation with Left/Right arrows.\", \"Esc exits present mode.\", \"Use hide-counter when you need to suppress the built-in Section X/Y footer counter.\", \"Expose external controls for next/previous actions when building guided presentation flows.\", ], }, anatomy: { image: \"\", list: [\"Header Slot\", \"Surface\", \"Image Slot\", \"Default Slot Content\", \"Notes Slot\", \"Footer Slot\"], }, variants: { items: [ { key: \"default\", title: \"Default\", description: \"Standard frame with ratio and padding control.\", image: \"\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [], }, related: { items: [ { name: \"Stack\", link: \"https://guides.muibook.com/stack\" }, { name: \"Grid\", link: \"https://guides.muibook.com/grid\" }, { name: \"Card\", link: \"https://guides.muibook.com/card\" }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"] }, writing: { list: [\"\"] }, }, }"
8519
- }
8520
- ],
8521
- "exports": [
8522
- {
8523
- "kind": "js",
8524
- "name": "muiDocs",
8525
- "declaration": {
8526
- "name": "muiDocs",
8527
- "module": "src/components/mui-slide-frame/doc.ts"
8528
- }
8529
- }
8530
- ]
8531
- },
8532
- {
8533
- "kind": "javascript-module",
8534
- "path": "src/components/mui-slide-frame/index.ts",
8535
- "declarations": [
8536
- {
8537
- "kind": "class",
8538
- "description": "",
8539
- "name": "MuiSlideFrame",
8540
- "members": [
8541
- {
8542
- "kind": "field",
8543
- "name": "defaultSlot",
8544
- "type": {
8545
- "text": "HTMLSlotElement | null"
8546
- },
8547
- "privacy": "private",
8548
- "default": "null"
8381
+ "kind": "field",
8382
+ "name": "defaultSlot",
8383
+ "type": {
8384
+ "text": "HTMLSlotElement | null"
8385
+ },
8386
+ "privacy": "private",
8387
+ "default": "null"
8549
8388
  },
8550
8389
  {
8551
8390
  "kind": "field",
@@ -8619,15 +8458,6 @@
8619
8458
  "privacy": "private",
8620
8459
  "default": "null"
8621
8460
  },
8622
- {
8623
- "kind": "field",
8624
- "name": "surfaceEl",
8625
- "type": {
8626
- "text": "HTMLElement | null"
8627
- },
8628
- "privacy": "private",
8629
- "default": "null"
8630
- },
8631
8461
  {
8632
8462
  "kind": "field",
8633
8463
  "name": "activeSectionEl",
@@ -8646,24 +8476,6 @@
8646
8476
  "privacy": "private",
8647
8477
  "default": "false"
8648
8478
  },
8649
- {
8650
- "kind": "field",
8651
- "name": "pointerStartX",
8652
- "type": {
8653
- "text": "number | null"
8654
- },
8655
- "privacy": "private",
8656
- "default": "null"
8657
- },
8658
- {
8659
- "kind": "field",
8660
- "name": "pointerStartY",
8661
- "type": {
8662
- "text": "number | null"
8663
- },
8664
- "privacy": "private",
8665
- "default": "null"
8666
- },
8667
8479
  {
8668
8480
  "kind": "field",
8669
8481
  "name": "onSlotChange",
@@ -8674,16 +8486,6 @@
8674
8486
  "name": "onChromeSlotChange",
8675
8487
  "privacy": "private"
8676
8488
  },
8677
- {
8678
- "kind": "field",
8679
- "name": "onPointerDown",
8680
- "privacy": "private"
8681
- },
8682
- {
8683
- "kind": "field",
8684
- "name": "onPointerUp",
8685
- "privacy": "private"
8686
- },
8687
8489
  {
8688
8490
  "kind": "field",
8689
8491
  "name": "onKeyDown",
@@ -8766,6 +8568,19 @@
8766
8568
  "kind": "method",
8767
8569
  "name": "prevSection"
8768
8570
  },
8571
+ {
8572
+ "kind": "method",
8573
+ "name": "createDefaultSection",
8574
+ "privacy": "private",
8575
+ "parameters": [
8576
+ {
8577
+ "name": "label",
8578
+ "type": {
8579
+ "text": "string"
8580
+ }
8581
+ }
8582
+ ]
8583
+ },
8769
8584
  {
8770
8585
  "kind": "method",
8771
8586
  "name": "addSection",
@@ -8779,6 +8594,11 @@
8779
8594
  }
8780
8595
  ]
8781
8596
  },
8597
+ {
8598
+ "kind": "method",
8599
+ "name": "requestAddSection",
8600
+ "privacy": "private"
8601
+ },
8782
8602
  {
8783
8603
  "kind": "method",
8784
8604
  "name": "toggleNotes",
@@ -8856,32 +8676,6 @@
8856
8676
  "name": "syncChromeState",
8857
8677
  "privacy": "private"
8858
8678
  },
8859
- {
8860
- "kind": "method",
8861
- "name": "handlePointerDown",
8862
- "privacy": "private",
8863
- "parameters": [
8864
- {
8865
- "name": "event",
8866
- "type": {
8867
- "text": "PointerEvent"
8868
- }
8869
- }
8870
- ]
8871
- },
8872
- {
8873
- "kind": "method",
8874
- "name": "handlePointerUp",
8875
- "privacy": "private",
8876
- "parameters": [
8877
- {
8878
- "name": "event",
8879
- "type": {
8880
- "text": "PointerEvent"
8881
- }
8882
- }
8883
- ]
8884
- },
8885
8679
  {
8886
8680
  "kind": "method",
8887
8681
  "name": "handleFullscreenChange",
@@ -9010,37 +8804,40 @@
9010
8804
  },
9011
8805
  {
9012
8806
  "kind": "javascript-module",
9013
- "path": "src/components/mui-stack/doc.ts",
8807
+ "path": "src/components/mui-slide-section/index.ts",
9014
8808
  "declarations": [
9015
8809
  {
9016
- "kind": "variable",
9017
- "name": "muiDocs",
9018
- "type": {
9019
- "text": "MuiDocs"
8810
+ "kind": "class",
8811
+ "description": "",
8812
+ "name": "MuiSlideSection",
8813
+ "members": [
8814
+ {
8815
+ "kind": "method",
8816
+ "name": "render",
8817
+ "privacy": "private"
8818
+ }
8819
+ ],
8820
+ "superclass": {
8821
+ "name": "HTMLElement"
9020
8822
  },
9021
- "default": "{ Stack: { title: \"Stack\", description: \"A layout helper component that arranges its children in a horizontal or vertical flow with consistent spacing.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/37Cyk0jaIIKA8EBj2bp1ep/95d5adc24bccb051c355865d9e14bfa3/Stack_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=1059-12708&t=BwezUSymTClm00wJ-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/layout-stack--docs\"], github: [\"https://github.com/michaeltrilford/muibook/tree/main/src/components/mui-stack\"], website: [\"https://muibook.com/#/stack\"], guides: [\"https://guides.muibook.com/stack\"], usage: { list: [ \"Use to organise content or components in a single, consistent direction.\", \"Ideal for managing spacing without manual margin or padding adjustments.\", \"Supports responsive layouts by changing direction or spacing at breakpoints.\", \"Recognise it as a developer layout tool rather than a design asset.\", \"Use the space design token to maintain consistent gap spacing.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { image: \"\", list: [\"\"], }, variants: { description: \"While not a Figma component (designers should use auto-layout), it’s useful for designers to understand this pattern as engineers commonly use it to control layout and spacing.\", items: [ { key: \"horizontal\", title: \"Horizontal\", description: \"A layout component that arranges its children in a horizontal flow\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/5tHpmQRhIWn0ACqjb1jNBu/d99ca0d9ada0af45cd0f1c2aaa7c995d/stack-horizontal.png\", }, { key: \"vertical\", title: \"Vertical\", description: \"A layout component that arranges its children in a vertical flow\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1w2YeWwXerMc2YGqfGm6KJ/898f3ef195e01f775ae880e0968dbaa6/stack-vertical.png\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"outcomes-roadmap-dashboard\", name: \"Outcomes Roadmap Dashboard\", description: \"Example of the responsive component in the Outcomes Roadmap Dashboard, demonstrating layout, title, and padding adjustments across breakpoints.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3FsXandRr1Z9BAKv33twxT/b0d0e4a8b6237bf7d38660111bceb8ab/responsive-composition.gif\", }, { key: \"outcomes-roadmap-roadmap\", name: \"Outcome-Based Roadmap\", description: \"Example of an Outcome-Based Roadmap page showing objectives organised into Upcoming, Doing, and Finished columns. Progress bars indicate the completion status of each task, providing a clear view of overall progress.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3w5htPtfEz7QMCH9alVcwf/de35725fb4542b891bd695b900195291/Outcomes-Progress-Composition.png\", }, { key: \"smart-card\", name: \"Smart Card\", description: \"The Smart Card composition uses slats to present structured information in a compact format. Slats help organise details such as titles, descriptions, and supporting actions, making the card easy to scan and interact with.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/74knMtil1vp9nHPPWXM1kr/54f8d978b0a82bca2c126e8ab800826f/SmartCard_-_Card_Composition.png\", }, ], }, related: { items: [ { name: \"Grid\", link: \"https://guides.muibook.com/grid\", }, { name: \"Responsive\", link: \"https://guides.muibook.com/responsive\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
8823
+ "tagName": "mui-slide-section",
8824
+ "customElement": true
9022
8825
  }
9023
8826
  ],
9024
8827
  "exports": [
9025
8828
  {
9026
- "kind": "js",
9027
- "name": "muiDocs",
8829
+ "kind": "custom-element-definition",
8830
+ "name": "mui-slide-section",
9028
8831
  "declaration": {
9029
- "name": "muiDocs",
9030
- "module": "src/components/mui-stack/doc.ts"
8832
+ "name": "MuiSlideSection",
8833
+ "module": "src/components/mui-slide-section/index.ts"
9031
8834
  }
9032
8835
  }
9033
8836
  ]
9034
8837
  },
9035
8838
  {
9036
8839
  "kind": "javascript-module",
9037
- "path": "src/components/mui-stack/index.ts",
9038
- "declarations": [],
9039
- "exports": []
9040
- },
9041
- {
9042
- "kind": "javascript-module",
9043
- "path": "src/components/mui-switch/doc.ts",
8840
+ "path": "src/components/mui-smart-card/doc.ts",
9044
8841
  "declarations": [
9045
8842
  {
9046
8843
  "kind": "variable",
@@ -9048,7 +8845,7 @@
9048
8845
  "type": {
9049
8846
  "text": "MuiDocs"
9050
8847
  },
9051
- "default": "{ Switch: { title: \"Switch\", description: \"A Switch is a UI component used to toggle between two states, typically “on” and “off.” It provides a clear visual indication of an active or inactive setting.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/0dWww7c9wOs9YLPwgsTyy/323dcb62a6be394bbba8f268c8ae62b9/Switch_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=147-1003&t=FSv3FEahG8VQW1FZ-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/inputs-switch--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-switch/index.ts\"], website: [\"https://muibook.com/#/switch\"], guides: [\"https://guides.muibook.com/switch\"], usage: { list: [ \"Enable or disable a setting Toggle features like dark mode or notifications.\", \"Control device states Switch on/off smart devices or system settings.\", \"Trigger immediate actions Instantly apply changes without requiring confirmation.\", \"Use size='x-small|small|medium|large' to match switch density with surrounding controls.\", ], }, accessibility: { designerList: [\"\"], engineerList: [ \"A label is required and applied as aria-label to describe the switch’s purpose.\", \"Uses role='switch' and updates aria-checked for assistive tech.\", \"The label isn’t shown visually—context is provided through icons or nearby text.\", \"disabled sets aria-disabled and blocks interaction.\", \"Supports keyboard navigation with visible focus styles.\", ], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/5XNIjIfzNIfo3uIavVlSCU/7bbdc09ee60c7fa03ab19ff2dab558a8/Switch_-_Anatomy.png\", list: [ \"Thumb (Handle) The movable part that toggles between the on and off states.\", \"Off Track: The background when the switch is in the “off” state.\", \"On Track: The background when the switch is in the “on” state.\", ], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"theme-switch\", name: \"Theme Switch\", description: \"This example from the Muibook Docs website demonstrates a switch component used to toggle the interface between light and dark modes.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/19NvfLGnzRI4MebRSU2aMH/d6ffcca7dffb6c7b843cafc83b812d90/SwitchTheme-Composition.png\", }, ], }, related: { items: [ { name: \"Checkbox\", link: \"https://guides.muibook.com/checkbox\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
8848
+ "default": "{ SmartCard: { title: \"Smart Card\", description: \"A visually rich, responsive component used to represent digital or physical cards within interfaces such as wallets, dashboards, or rewards experiences. Designed to surface key information at a glance, with space for branding, balance, status, or interactive actions.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/7qITxDlh6vSZatNH00P4bS/4c825fa8f3109b175b0cd75a2a6d261d/Smart-card_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=440-1250&t=FSv3FEahG8VQW1FZ-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/content-smartcard--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-smart-card/index.ts\"], website: [\"https://muibook.com/#/smart-card\"], guides: [\"https://guides.muibook.com/smart-card\"], usage: { list: [ \"Use to display account, card, or membership information in a recognisable format.\", \"Ideal for wallets, rewards, or financial dashboards where visual identity matters.\", \"Surface primary details such as balance, expiry, or card type clearly.\", \"Avoid overloading with actions—prioritise clarity and visual hierarchy.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/7axH5SYpu0aVyMIglUrjra/1d9ab89d5861da9a22f856bd85ce9961/SmartCard_-_Anatomy.png\", list: [ \"Type: Used to visually or semantically describe the card’s usage.\", \"Logo: Option to add logo to the card top right.\", \"Number: Only the last 4 digits are shown (no full card number for security).\", \"Partner: Section to add the card partner.\", \"Background: Ability to change card colour, add a static or animated background.\", ], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"smart-card\", name: \"Smart Card\", description: \"The Smart Card composition uses slats to present structured information in a compact format. Slats help organise details such as titles, descriptions, and supporting actions, making the card easy to scan and interact with.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/74knMtil1vp9nHPPWXM1kr/54f8d978b0a82bca2c126e8ab800826f/SmartCard_-_Card_Composition.png\", }, ], }, related: { items: [ { name: \"\", link: \"\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
9052
8849
  }
9053
8850
  ],
9054
8851
  "exports": [
@@ -9057,119 +8854,74 @@
9057
8854
  "name": "muiDocs",
9058
8855
  "declaration": {
9059
8856
  "name": "muiDocs",
9060
- "module": "src/components/mui-switch/doc.ts"
8857
+ "module": "src/components/mui-smart-card/doc.ts"
9061
8858
  }
9062
8859
  }
9063
8860
  ]
9064
8861
  },
9065
8862
  {
9066
8863
  "kind": "javascript-module",
9067
- "path": "src/components/mui-switch/index.ts",
8864
+ "path": "src/components/mui-smart-card/index.ts",
9068
8865
  "declarations": [
9069
8866
  {
9070
8867
  "kind": "class",
9071
8868
  "description": "",
9072
- "name": "MuiSwitch",
8869
+ "name": "MuiSmartCard",
9073
8870
  "members": [
9074
8871
  {
9075
- "kind": "field",
9076
- "name": "_checked",
9077
- "type": {
9078
- "text": "boolean"
9079
- },
9080
- "privacy": "private",
9081
- "default": "false"
9082
- },
9083
- {
9084
- "kind": "field",
9085
- "name": "_checkbox",
9086
- "type": {
9087
- "text": "HTMLInputElement | null"
9088
- },
9089
- "privacy": "private",
9090
- "default": "null"
9091
- },
8872
+ "kind": "method",
8873
+ "name": "render"
8874
+ }
8875
+ ],
8876
+ "attributes": [
9092
8877
  {
9093
- "kind": "field",
9094
- "name": "_changeHandler",
9095
- "type": {
9096
- "text": "() => void | undefined"
9097
- },
9098
- "privacy": "private"
8878
+ "name": "state"
9099
8879
  },
9100
8880
  {
9101
- "kind": "field",
9102
- "name": "checked"
8881
+ "name": "number"
9103
8882
  },
9104
8883
  {
9105
- "kind": "method",
9106
- "name": "_cleanupListeners",
9107
- "privacy": "private"
8884
+ "name": "variant"
9108
8885
  },
9109
8886
  {
9110
- "kind": "method",
9111
- "name": "_updateDisabledState"
8887
+ "name": "partner"
9112
8888
  },
9113
8889
  {
9114
- "kind": "method",
9115
- "name": "_setupListener",
9116
- "privacy": "private"
8890
+ "name": "type"
9117
8891
  },
9118
8892
  {
9119
- "kind": "method",
9120
- "name": "_enforceIconSize",
9121
- "privacy": "private",
9122
- "return": {
9123
- "type": {
9124
- "text": "void"
9125
- }
9126
- }
8893
+ "name": "logo"
9127
8894
  },
9128
8895
  {
9129
- "kind": "method",
9130
- "name": "_updateIcons"
8896
+ "name": "logo-width"
9131
8897
  },
9132
8898
  {
9133
- "kind": "method",
9134
- "name": "render"
9135
- }
9136
- ],
9137
- "events": [
9138
- {
9139
- "name": "change",
9140
- "type": {
9141
- "text": "CustomEvent"
9142
- }
9143
- }
9144
- ],
9145
- "attributes": [
9146
- {
9147
- "name": "label"
8899
+ "name": "logo-height"
9148
8900
  },
9149
8901
  {
9150
- "name": "disabled"
8902
+ "name": "bg-color"
9151
8903
  },
9152
8904
  {
9153
- "name": "checked"
8905
+ "name": "bg-image"
9154
8906
  },
9155
8907
  {
9156
- "name": "size"
8908
+ "name": "inverted"
9157
8909
  }
9158
8910
  ],
9159
8911
  "superclass": {
9160
8912
  "name": "HTMLElement"
9161
8913
  },
9162
- "tagName": "mui-switch",
8914
+ "tagName": "mui-smart-card",
9163
8915
  "customElement": true
9164
8916
  }
9165
8917
  ],
9166
8918
  "exports": [
9167
8919
  {
9168
8920
  "kind": "custom-element-definition",
9169
- "name": "mui-switch",
8921
+ "name": "mui-smart-card",
9170
8922
  "declaration": {
9171
- "name": "MuiSwitch",
9172
- "module": "src/components/mui-switch/index.ts"
8923
+ "name": "MuiSmartCard",
8924
+ "module": "src/components/mui-smart-card/index.ts"
9173
8925
  }
9174
8926
  }
9175
8927
  ]
@@ -9206,7 +8958,7 @@
9206
8958
  },
9207
8959
  {
9208
8960
  "kind": "javascript-module",
9209
- "path": "src/components/mui-table/doc.ts",
8961
+ "path": "src/components/mui-stack/doc.ts",
9210
8962
  "declarations": [
9211
8963
  {
9212
8964
  "kind": "variable",
@@ -9214,7 +8966,7 @@
9214
8966
  "type": {
9215
8967
  "text": "MuiDocs"
9216
8968
  },
9217
- "default": "{ Table: { title: \"Table\", description: \"Displays data in a grid layout to support scanability and comparison across rows and columns. Best suited for structured, repeatable content.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/34Yd6uWrfM5Ihv4rdniHYy/9e1698ce2c23d6c74006bf3f2ae93066/Table_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=958-8696&t=0ytskb8cxriEmdz2-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/content-table--docs\"], github: [\"https://github.com/michaeltrilford/muibook/tree/main/src/components/mui-table\"], website: [\"https://muibook.com/#/table\"], guides: [\"https://guides.muibook.com/table\"], usage: { list: [ \"Use for structured content that benefits from a grid format.\", \"Ideal for comparing data across multiple rows and columns.\", \"Supports sorting, filtering, or action buttons if needed.\", \"Avoid for unstructured, visual, or narrative-based content.\", \"Tables should adapt for smaller viewports by switching to the Slat component.\", \"Prioritise key content and simplify structure when transitioning to mobile views.\", ], }, accessibility: { designerList: [ \"mui-table uses role='table'.\", \"mui-row-group uses role='rowgroup'.\", \"mui-row uses role='row'.\", \"mui-cell uses role='cell'.\", \"Follows table semantics for screen reader support.\", ], engineerList: [ \"mui-table uses role='table'.\", \"mui-row-group uses role='rowgroup'.\", \"mui-row uses role='row'.\", \"mui-cell uses role='cell'.\", \"Follows table semantics for screen reader support.\", ], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/2KHxAyGbYW7qwySwCLYrbo/0ffc98c3eef07098afaf64bebc6afd4a/Table_-_Anatomy.png\", list: [ \"Heading: The header row of the table accepts headings and other arrangements as needed.\", \"Data: The row contains standard data as well as other arrangements, such as grouped content.\", \"Actions: The main actions for each table row can be included in a dedicated column or slot.\", ], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"prop-types-table\", name: \"Prop Types Table\", description: \"Attached is a standard example demonstrating how to use the table to present general data for component prop types.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1JeUHjbeqVNgTvlVZkeHjw/7f652efbea5cc6aa436449905e2ae48e/table_-_composition.png\", }, { key: \"simple-table-dropdown\", name: \"Simple Table w/ Dropdown\", description: \"Example of a simple table with a dropdown action positioned on the far right, following the content. Demonstrates the table used within a card layout, as it might appear on a page or settings view.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3IIRPg0pdQB66NJniCZvlo/2600a8bee4ad1c79a63dc48d3032ee34/table-composition-design-pricing.png\", }, { key: \"compliance-dashboard-table\", name: \"Compliance Dashboard Table\", description: \"This example shows a desktop view of a table used within an accounting compliance dashboard.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3vUKA5C5iJ3LvjLwf2WiO9/274ffe423dbe828244294f6809172ce1/table-composition-compliance-dashboard.png\", }, ], }, related: { items: [ { name: \"\", link: \"\", }, ], }, rules: [ { heading: \"Icon-Only Actions\", description: \"\", doContent: [ { description: \"Use a 'medium' size icon when using an icon-only medium sized action\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3syzrNBEXbBjp5hGEUvF4M/0471f4b16939d8ee54deaf48997ff455/action-icon-do.png\", }, ], dontContent: [ { description: \"Avoid 'x-small', 'medium' or 'large' size icons within an icon-only medium sized action\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/5V2TE85dY848jz1dP6Y0lC/b8e433c8abad5a4402ff1f86ddb8c848/action-icon-dont.png\", }, ], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
8969
+ "default": "{ Stack: { title: \"Stack\", description: \"A layout helper component that arranges its children in a horizontal or vertical flow with consistent spacing.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/37Cyk0jaIIKA8EBj2bp1ep/95d5adc24bccb051c355865d9e14bfa3/Stack_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=1059-12708&t=BwezUSymTClm00wJ-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/layout-stack--docs\"], github: [\"https://github.com/michaeltrilford/muibook/tree/main/src/components/mui-stack\"], website: [\"https://muibook.com/#/stack\"], guides: [\"https://guides.muibook.com/stack\"], usage: { list: [ \"Use to organise content or components in a single, consistent direction.\", \"Ideal for managing spacing without manual margin or padding adjustments.\", \"Supports responsive layouts by changing direction or spacing at breakpoints.\", \"Recognise it as a developer layout tool rather than a design asset.\", \"Use the space design token to maintain consistent gap spacing.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { image: \"\", list: [\"\"], }, variants: { description: \"While not a Figma component (designers should use auto-layout), it’s useful for designers to understand this pattern as engineers commonly use it to control layout and spacing.\", items: [ { key: \"horizontal\", title: \"Horizontal\", description: \"A layout component that arranges its children in a horizontal flow\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/5tHpmQRhIWn0ACqjb1jNBu/d99ca0d9ada0af45cd0f1c2aaa7c995d/stack-horizontal.png\", }, { key: \"vertical\", title: \"Vertical\", description: \"A layout component that arranges its children in a vertical flow\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1w2YeWwXerMc2YGqfGm6KJ/898f3ef195e01f775ae880e0968dbaa6/stack-vertical.png\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"outcomes-roadmap-dashboard\", name: \"Outcomes Roadmap Dashboard\", description: \"Example of the responsive component in the Outcomes Roadmap Dashboard, demonstrating layout, title, and padding adjustments across breakpoints.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3FsXandRr1Z9BAKv33twxT/b0d0e4a8b6237bf7d38660111bceb8ab/responsive-composition.gif\", }, { key: \"outcomes-roadmap-roadmap\", name: \"Outcome-Based Roadmap\", description: \"Example of an Outcome-Based Roadmap page showing objectives organised into Upcoming, Doing, and Finished columns. Progress bars indicate the completion status of each task, providing a clear view of overall progress.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3w5htPtfEz7QMCH9alVcwf/de35725fb4542b891bd695b900195291/Outcomes-Progress-Composition.png\", }, { key: \"smart-card\", name: \"Smart Card\", description: \"The Smart Card composition uses slats to present structured information in a compact format. Slats help organise details such as titles, descriptions, and supporting actions, making the card easy to scan and interact with.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/74knMtil1vp9nHPPWXM1kr/54f8d978b0a82bca2c126e8ab800826f/SmartCard_-_Card_Composition.png\", }, ], }, related: { items: [ { name: \"Grid\", link: \"https://guides.muibook.com/grid\", }, { name: \"Responsive\", link: \"https://guides.muibook.com/responsive\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
9218
8970
  }
9219
8971
  ],
9220
8972
  "exports": [
@@ -9223,20 +8975,20 @@
9223
8975
  "name": "muiDocs",
9224
8976
  "declaration": {
9225
8977
  "name": "muiDocs",
9226
- "module": "src/components/mui-table/doc.ts"
8978
+ "module": "src/components/mui-stack/doc.ts"
9227
8979
  }
9228
8980
  }
9229
8981
  ]
9230
8982
  },
9231
8983
  {
9232
8984
  "kind": "javascript-module",
9233
- "path": "src/components/mui-table/index.ts",
8985
+ "path": "src/components/mui-stack/index.ts",
9234
8986
  "declarations": [],
9235
8987
  "exports": []
9236
8988
  },
9237
8989
  {
9238
8990
  "kind": "javascript-module",
9239
- "path": "src/components/mui-tabs/doc.ts",
8991
+ "path": "src/components/mui-spinner/doc.ts",
9240
8992
  "declarations": [
9241
8993
  {
9242
8994
  "kind": "variable",
@@ -9244,7 +8996,7 @@
9244
8996
  "type": {
9245
8997
  "text": "MuiDocs"
9246
8998
  },
9247
- "default": "{ Tabs: { title: \"Tabs\", description: \"Allows users to switch between views or content sections by selecting from a group of tabs. Tabs keep related content within a single surface, reducing the need for navigation and maintaining context.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/5EC8Uj4pMaQGe2UcNntYLX/040eb1feec8def04504dfa3729494b52/Tab_bar_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=126-560&t=ZfvVjZFxH7mQ72pi-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/navigation-tabbar--docs\"], github: [\"https://github.com/michaeltrilford/muibook/tree/main/src/components/mui-tabs\"], website: [\"https://muibook.com/#/tab-bar\"], guides: [\"https://guides.muibook.com/tab-bar\"], usage: { list: [ \"Use to organise related content or views at the same level of hierarchy.\", \"Ideal for toggling between sections without navigating away from the page.\", \"Use the size API (x-small, small, medium, large) to align tabs with adjacent buttons.\", \"Use named slots (before/after) to compose icons and badges in tab items.\", \"Use variant='dots' for compact pagination controls such as carousel navigation.\", \"Use variant='ghost' when you want only active-tab emphasis without outer tab bar chrome.\", \"Keep labels short, clear, and consistently styled.\", \"Avoid using when content is unrelated or exceeds a manageable number of tabs.\", ], }, accessibility: { designerList: [ \"Keyboard users can navigate across tabs using the left/right arrow keys, as well as Home and End keys to jump to the first or last tab.\", \"The active tab always shows a clear focus outline and can be navigated to using the keyboard.\", \"Tabs are grouped in a way that assistive technologies can understand, using standard roles and attributes.\", \"The system keeps track of which tab is active behind the scenes, so screen readers and keyboard users always stay in sync.\", ], engineerList: [ \"Left/Right arrows, Home and End keys let keyboard users navigate between tab-items.\", \"aria-selected and tabindex attributes are updated on each tab-item when it becomes active or inactive.\", \"Each active tab-item can receive focus and shows a focus-visible outline.\", \"tab-bar uses role=tablist to group related tab-items and each tab-item uses role=tab within the tab-bar.\", ], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/koeu63xbKYOWZgs8i0eev/983e09362714a2dcdcc7262889ba1236/Tabs_-_Anatomy.png\", list: [ \"Active: Indicates the currently selected tab.\", \"Inactive: Indicates a tab that is not selected and is waiting for user interaction.\", ], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"wallet\", name: \"Wallet\", description: \"This example shows a wallet view featuring a digital card, transaction and statement tabs. It demonstrates how foundational components like tabs, slats, and buttons can be composed to create flexible, real-world layouts.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/6RoGBcahh63o16PAcEsgyX/36f5c8d9bf0e8754a574955b32ee6eda/Tab_Bar_-_Composition.png\", }, { key: \"product-carousel\", name: \"Product Carousel\", description: \"Demonstrates how to add custom compositions and layouts within the carousel panels.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/4NRMfGil4AcMUh7FDhYyHz/7c4636822eba6d3ae15e684f50d10fdd/Carousel_-_Composition.png\", }, { key: \"carousel-showcase\", name: \"Carousel Showcase\", description: \"This example from the GuruSuite website demonstrates the carousel used to showcase two of the products on offer.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/2TaRRm351HyujF9mT2w1wH/3958f69e939d20618751742130dc5f06/GuruSuite-Carousel-Composition.png\", }, ], }, related: { items: [ { name: \"Carousel\", link: \"https://guides.muibook.com/carousel\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
8999
+ "default": "{ Spinner: { title: \"Spinner\", description: \"Spinner provides compact loading feedback for short async states.\", hero: [\"\"], figma: [\"\"], storybook: [\"https://stories.muibook.com\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-spinner/index.ts\"], website: [\"https://muibook.com/#/loader\"], guides: [\"https://guides.muibook.com/loader\"], usage: { list: [ \"Use when content is loading and progress percentage is unavailable.\", \"Use size variants (xx-small to large) to match surrounding density.\", \"Set label for assistive technology context.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"Provide a meaningful label when context is unclear.\"] }, anatomy: { image: \"\", list: [\"Animated ring\", \"Accessible label\"] }, variants: { items: [{ key: \"\", title: \"\", description: \"\", image: \"\" }] }, compositions: { description: \"\", items: [] }, related: { items: [{ name: \"Loader\", link: \"https://guides.muibook.com/loader\" }] }, rules: [{ heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }] }], behaviour: { list: [\"\"] }, writing: { list: [\"\"] }, }, }"
9248
9000
  }
9249
9001
  ],
9250
9002
  "exports": [
@@ -9253,122 +9005,60 @@
9253
9005
  "name": "muiDocs",
9254
9006
  "declaration": {
9255
9007
  "name": "muiDocs",
9256
- "module": "src/components/mui-tabs/doc.ts"
9008
+ "module": "src/components/mui-spinner/doc.ts"
9257
9009
  }
9258
9010
  }
9259
9011
  ]
9260
9012
  },
9261
9013
  {
9262
9014
  "kind": "javascript-module",
9263
- "path": "src/components/mui-tabs/index.ts",
9264
- "declarations": [],
9265
- "exports": []
9266
- },
9267
- {
9268
- "kind": "javascript-module",
9269
- "path": "src/components/mui-accordion/block/index.ts",
9015
+ "path": "src/components/mui-spinner/index.ts",
9270
9016
  "declarations": [
9271
9017
  {
9272
9018
  "kind": "class",
9273
9019
  "description": "",
9274
- "name": "MuiAccordionBlock",
9020
+ "name": "MuiSpinner",
9275
9021
  "members": [
9276
- {
9277
- "kind": "field",
9278
- "name": "summaryEl",
9279
- "type": {
9280
- "text": "HTMLElement | null"
9281
- },
9282
- "privacy": "private",
9283
- "default": "null"
9284
- },
9285
- {
9286
- "kind": "field",
9287
- "name": "detailEl",
9288
- "type": {
9289
- "text": "HTMLElement | null"
9290
- },
9291
- "privacy": "private",
9292
- "default": "null"
9293
- },
9294
- {
9295
- "kind": "field",
9296
- "name": "chevronEl",
9297
- "type": {
9298
- "text": "HTMLElement | null"
9299
- },
9300
- "privacy": "private",
9301
- "default": "null"
9302
- },
9303
- {
9304
- "kind": "field",
9305
- "name": "accordionId",
9306
- "type": {
9307
- "text": "string"
9308
- },
9309
- "privacy": "private",
9310
- "default": "`accordion-detail-${Math.random() .toString(36) .substring(2, 9)}`"
9311
- },
9312
9022
  {
9313
9023
  "kind": "method",
9314
- "name": "getDetailEl",
9315
- "privacy": "private",
9316
- "return": {
9317
- "type": {
9318
- "text": "HTMLElement | null"
9319
- }
9320
- }
9321
- },
9024
+ "name": "render"
9025
+ }
9026
+ ],
9027
+ "attributes": [
9322
9028
  {
9323
- "kind": "method",
9324
- "name": "toggleAccordion"
9029
+ "name": "size"
9325
9030
  },
9326
9031
  {
9327
- "kind": "method",
9328
- "name": "setOpen",
9329
- "parameters": [
9330
- {
9331
- "name": "state",
9332
- "type": {
9333
- "text": "boolean"
9334
- }
9335
- }
9336
- ]
9032
+ "name": "color"
9337
9033
  },
9338
9034
  {
9339
- "kind": "method",
9340
- "name": "closeAccordion"
9341
- }
9342
- ],
9343
- "events": [
9035
+ "name": "duration"
9036
+ },
9344
9037
  {
9345
- "name": "accordion-opened",
9346
- "type": {
9347
- "text": "CustomEvent"
9348
- }
9038
+ "name": "label"
9349
9039
  }
9350
9040
  ],
9351
9041
  "superclass": {
9352
9042
  "name": "HTMLElement"
9353
9043
  },
9354
- "tagName": "mui-accordion-block",
9044
+ "tagName": "mui-spinner",
9355
9045
  "customElement": true
9356
9046
  }
9357
9047
  ],
9358
9048
  "exports": [
9359
9049
  {
9360
9050
  "kind": "custom-element-definition",
9361
- "name": "mui-accordion-block",
9051
+ "name": "mui-spinner",
9362
9052
  "declaration": {
9363
- "name": "MuiAccordionBlock",
9364
- "module": "src/components/mui-accordion/block/index.ts"
9053
+ "name": "MuiSpinner",
9054
+ "module": "src/components/mui-spinner/index.ts"
9365
9055
  }
9366
9056
  }
9367
9057
  ]
9368
9058
  },
9369
9059
  {
9370
9060
  "kind": "javascript-module",
9371
- "path": "src/components/mui-textarea/doc.ts",
9061
+ "path": "src/components/mui-switch/doc.ts",
9372
9062
  "declarations": [
9373
9063
  {
9374
9064
  "kind": "variable",
@@ -9376,7 +9066,7 @@
9376
9066
  "type": {
9377
9067
  "text": "MuiDocs"
9378
9068
  },
9379
- "default": "{ Textarea: { title: \"Textarea\", description: \"A multiline text input for longer-form content such as notes, comments, and descriptions.\", hero: [\"\"], figma: [\"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System\"], storybook: [\"https://stories.muibook.com\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-textarea/index.ts\"], website: [\"https://muibook.com/#/textarea\"], guides: [\"https://guides.muibook.com/textarea\"], usage: { list: [ \"Use textarea when users need to enter multiple lines of text.\", \"Use size='x-small|small|medium|large' to align textarea scale with surrounding form controls.\", \"Provide a clear label and helpful placeholder for expected content.\", \"Use the optional attribute when a field is not required to show a clear (optional) marker in the label.\", \"Use max-length when limits matter; the component shows a live character count.\", \"Pair with field validation messaging when collecting required information.\", ], }, accessibility: { designerList: [\"\"], engineerList: [ \"A label is required for screen reader support.\", \"If hide-label is used, an aria-label is generated from label.\", \"Optional fields can be explicitly communicated with the optional attribute without changing label association.\", \"When max-length is set, users get visible character progress while native maxlength enforcement remains intact.\", \"The native disabled attribute is supported.\", ], }, anatomy: { image: \"\", list: [\"Label\", \"Textarea Field\", \"Placeholder Text\"], }, variants: { items: [ { key: \"default\", title: \"Default\", description: \"Base textarea style.\", image: \"\" }, { key: \"success\", title: \"Success\", description: \"Validation success style.\", image: \"\" }, { key: \"warning\", title: \"Warning\", description: \"Validation warning style.\", image: \"\" }, { key: \"error\", title: \"Error\", description: \"Validation error style.\", image: \"\" }, ], }, compositions: { description: \"Common use cases for multiline text input.\", items: [], }, related: { items: [ { name: \"Input\", link: \"https://guides.muibook.com/input\" }, { name: \"Field\", link: \"https://guides.muibook.com/field\" }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
9069
+ "default": "{ Switch: { title: \"Switch\", description: \"A Switch is a UI component used to toggle between two states, typically “on” and “off.” It provides a clear visual indication of an active or inactive setting.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/0dWww7c9wOs9YLPwgsTyy/323dcb62a6be394bbba8f268c8ae62b9/Switch_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=147-1003&t=FSv3FEahG8VQW1FZ-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/inputs-switch--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-switch/index.ts\"], website: [\"https://muibook.com/#/switch\"], guides: [\"https://guides.muibook.com/switch\"], usage: { list: [ \"Enable or disable a setting Toggle features like dark mode or notifications.\", \"Control device states Switch on/off smart devices or system settings.\", \"Trigger immediate actions Instantly apply changes without requiring confirmation.\", \"Use size='x-small|small|medium|large' to match switch density with surrounding controls.\", ], }, accessibility: { designerList: [\"\"], engineerList: [ \"A label is required and applied as aria-label to describe the switch’s purpose.\", \"Uses role='switch' and updates aria-checked for assistive tech.\", \"The label isn’t shown visually—context is provided through icons or nearby text.\", \"disabled sets aria-disabled and blocks interaction.\", \"Supports keyboard navigation with visible focus styles.\", ], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/5XNIjIfzNIfo3uIavVlSCU/7bbdc09ee60c7fa03ab19ff2dab558a8/Switch_-_Anatomy.png\", list: [ \"Thumb (Handle) – The movable part that toggles between the on and off states.\", \"Off Track: The background when the switch is in the “off” state.\", \"On Track: The background when the switch is in the “on” state.\", ], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"theme-switch\", name: \"Theme Switch\", description: \"This example from the Muibook Docs website demonstrates a switch component used to toggle the interface between light and dark modes.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/19NvfLGnzRI4MebRSU2aMH/d6ffcca7dffb6c7b843cafc83b812d90/SwitchTheme-Composition.png\", }, ], }, related: { items: [ { name: \"Checkbox\", link: \"https://guides.muibook.com/checkbox\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
9380
9070
  }
9381
9071
  ],
9382
9072
  "exports": [
@@ -9385,39 +9075,77 @@
9385
9075
  "name": "muiDocs",
9386
9076
  "declaration": {
9387
9077
  "name": "muiDocs",
9388
- "module": "src/components/mui-textarea/doc.ts"
9078
+ "module": "src/components/mui-switch/doc.ts"
9389
9079
  }
9390
9080
  }
9391
9081
  ]
9392
9082
  },
9393
9083
  {
9394
9084
  "kind": "javascript-module",
9395
- "path": "src/components/mui-textarea/index.ts",
9085
+ "path": "src/components/mui-switch/index.ts",
9396
9086
  "declarations": [
9397
9087
  {
9398
9088
  "kind": "class",
9399
9089
  "description": "",
9400
- "name": "MuiTextarea",
9090
+ "name": "MuiSwitch",
9401
9091
  "members": [
9092
+ {
9093
+ "kind": "field",
9094
+ "name": "_checked",
9095
+ "type": {
9096
+ "text": "boolean"
9097
+ },
9098
+ "privacy": "private",
9099
+ "default": "false"
9100
+ },
9101
+ {
9102
+ "kind": "field",
9103
+ "name": "_checkbox",
9104
+ "type": {
9105
+ "text": "HTMLInputElement | null"
9106
+ },
9107
+ "privacy": "private",
9108
+ "default": "null"
9109
+ },
9402
9110
  {
9403
9111
  "kind": "field",
9404
9112
  "name": "_changeHandler",
9405
9113
  "type": {
9406
- "text": "(e: Event) => void | undefined"
9114
+ "text": "() => void | undefined"
9407
9115
  },
9408
9116
  "privacy": "private"
9409
9117
  },
9118
+ {
9119
+ "kind": "field",
9120
+ "name": "checked"
9121
+ },
9410
9122
  {
9411
9123
  "kind": "method",
9412
- "name": "cleanupListeners"
9124
+ "name": "_cleanupListeners",
9125
+ "privacy": "private"
9413
9126
  },
9414
9127
  {
9415
9128
  "kind": "method",
9416
- "name": "setupListener"
9129
+ "name": "_updateDisabledState"
9417
9130
  },
9418
9131
  {
9419
9132
  "kind": "method",
9420
- "name": "updateCharacterCount"
9133
+ "name": "_setupListener",
9134
+ "privacy": "private"
9135
+ },
9136
+ {
9137
+ "kind": "method",
9138
+ "name": "_enforceIconSize",
9139
+ "privacy": "private",
9140
+ "return": {
9141
+ "type": {
9142
+ "text": "void"
9143
+ }
9144
+ }
9145
+ },
9146
+ {
9147
+ "kind": "method",
9148
+ "name": "_updateIcons"
9421
9149
  },
9422
9150
  {
9423
9151
  "kind": "method",
@@ -9430,7 +9158,165 @@
9430
9158
  "type": {
9431
9159
  "text": "CustomEvent"
9432
9160
  }
9433
- },
9161
+ }
9162
+ ],
9163
+ "attributes": [
9164
+ {
9165
+ "name": "label"
9166
+ },
9167
+ {
9168
+ "name": "disabled"
9169
+ },
9170
+ {
9171
+ "name": "checked"
9172
+ },
9173
+ {
9174
+ "name": "size"
9175
+ }
9176
+ ],
9177
+ "superclass": {
9178
+ "name": "HTMLElement"
9179
+ },
9180
+ "tagName": "mui-switch",
9181
+ "customElement": true
9182
+ }
9183
+ ],
9184
+ "exports": [
9185
+ {
9186
+ "kind": "custom-element-definition",
9187
+ "name": "mui-switch",
9188
+ "declaration": {
9189
+ "name": "MuiSwitch",
9190
+ "module": "src/components/mui-switch/index.ts"
9191
+ }
9192
+ }
9193
+ ]
9194
+ },
9195
+ {
9196
+ "kind": "javascript-module",
9197
+ "path": "src/components/mui-tabs/doc.ts",
9198
+ "declarations": [
9199
+ {
9200
+ "kind": "variable",
9201
+ "name": "muiDocs",
9202
+ "type": {
9203
+ "text": "MuiDocs"
9204
+ },
9205
+ "default": "{ Tabs: { title: \"Tabs\", description: \"Allows users to switch between views or content sections by selecting from a group of tabs. Tabs keep related content within a single surface, reducing the need for navigation and maintaining context.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/5EC8Uj4pMaQGe2UcNntYLX/040eb1feec8def04504dfa3729494b52/Tab_bar_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=126-560&t=ZfvVjZFxH7mQ72pi-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/navigation-tabbar--docs\"], github: [\"https://github.com/michaeltrilford/muibook/tree/main/src/components/mui-tabs\"], website: [\"https://muibook.com/#/tab-bar\"], guides: [\"https://guides.muibook.com/tab-bar\"], usage: { list: [ \"Use to organise related content or views at the same level of hierarchy.\", \"Ideal for toggling between sections without navigating away from the page.\", \"Use the size API (x-small, small, medium, large) to align tabs with adjacent buttons.\", \"Use named slots (before/after) to compose icons and badges in tab items.\", \"Use variant='dots' for compact pagination controls such as carousel navigation.\", \"Use variant='ghost' when you want only active-tab emphasis without outer tab bar chrome.\", \"Keep labels short, clear, and consistently styled.\", \"Avoid using when content is unrelated or exceeds a manageable number of tabs.\", ], }, accessibility: { designerList: [ \"Keyboard users can navigate across tabs using the left/right arrow keys, as well as Home and End keys to jump to the first or last tab.\", \"The active tab always shows a clear focus outline and can be navigated to using the keyboard.\", \"Tabs are grouped in a way that assistive technologies can understand, using standard roles and attributes.\", \"The system keeps track of which tab is active behind the scenes, so screen readers and keyboard users always stay in sync.\", ], engineerList: [ \"Left/Right arrows, Home and End keys let keyboard users navigate between tab-items.\", \"aria-selected and tabindex attributes are updated on each tab-item when it becomes active or inactive.\", \"Each active tab-item can receive focus and shows a focus-visible outline.\", \"tab-bar uses role=tablist to group related tab-items and each tab-item uses role=tab within the tab-bar.\", ], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/koeu63xbKYOWZgs8i0eev/983e09362714a2dcdcc7262889ba1236/Tabs_-_Anatomy.png\", list: [ \"Active: Indicates the currently selected tab.\", \"Inactive: Indicates a tab that is not selected and is waiting for user interaction.\", ], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"wallet\", name: \"Wallet\", description: \"This example shows a wallet view featuring a digital card, transaction and statement tabs. It demonstrates how foundational components like tabs, slats, and buttons can be composed to create flexible, real-world layouts.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/6RoGBcahh63o16PAcEsgyX/36f5c8d9bf0e8754a574955b32ee6eda/Tab_Bar_-_Composition.png\", }, { key: \"product-carousel\", name: \"Product Carousel\", description: \"Demonstrates how to add custom compositions and layouts within the carousel panels.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/4NRMfGil4AcMUh7FDhYyHz/7c4636822eba6d3ae15e684f50d10fdd/Carousel_-_Composition.png\", }, { key: \"carousel-showcase\", name: \"Carousel Showcase\", description: \"This example from the GuruSuite website demonstrates the carousel used to showcase two of the products on offer.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/2TaRRm351HyujF9mT2w1wH/3958f69e939d20618751742130dc5f06/GuruSuite-Carousel-Composition.png\", }, ], }, related: { items: [ { name: \"Carousel\", link: \"https://guides.muibook.com/carousel\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
9206
+ }
9207
+ ],
9208
+ "exports": [
9209
+ {
9210
+ "kind": "js",
9211
+ "name": "muiDocs",
9212
+ "declaration": {
9213
+ "name": "muiDocs",
9214
+ "module": "src/components/mui-tabs/doc.ts"
9215
+ }
9216
+ }
9217
+ ]
9218
+ },
9219
+ {
9220
+ "kind": "javascript-module",
9221
+ "path": "src/components/mui-tabs/index.ts",
9222
+ "declarations": [],
9223
+ "exports": []
9224
+ },
9225
+ {
9226
+ "kind": "javascript-module",
9227
+ "path": "src/components/mui-table/doc.ts",
9228
+ "declarations": [
9229
+ {
9230
+ "kind": "variable",
9231
+ "name": "muiDocs",
9232
+ "type": {
9233
+ "text": "MuiDocs"
9234
+ },
9235
+ "default": "{ Table: { title: \"Table\", description: \"Displays data in a grid layout to support scanability and comparison across rows and columns. Best suited for structured, repeatable content.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/34Yd6uWrfM5Ihv4rdniHYy/9e1698ce2c23d6c74006bf3f2ae93066/Table_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=958-8696&t=0ytskb8cxriEmdz2-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/content-table--docs\"], github: [\"https://github.com/michaeltrilford/muibook/tree/main/src/components/mui-table\"], website: [\"https://muibook.com/#/table\"], guides: [\"https://guides.muibook.com/table\"], usage: { list: [ \"Use for structured content that benefits from a grid format.\", \"Ideal for comparing data across multiple rows and columns.\", \"Supports sorting, filtering, or action buttons if needed.\", \"Avoid for unstructured, visual, or narrative-based content.\", \"Tables should adapt for smaller viewports by switching to the Slat component.\", \"Prioritise key content and simplify structure when transitioning to mobile views.\", ], }, accessibility: { designerList: [ \"mui-table uses role='table'.\", \"mui-row-group uses role='rowgroup'.\", \"mui-row uses role='row'.\", \"mui-cell uses role='cell'.\", \"Follows table semantics for screen reader support.\", ], engineerList: [ \"mui-table uses role='table'.\", \"mui-row-group uses role='rowgroup'.\", \"mui-row uses role='row'.\", \"mui-cell uses role='cell'.\", \"Follows table semantics for screen reader support.\", ], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/2KHxAyGbYW7qwySwCLYrbo/0ffc98c3eef07098afaf64bebc6afd4a/Table_-_Anatomy.png\", list: [ \"Heading: The header row of the table accepts headings and other arrangements as needed.\", \"Data: The row contains standard data as well as other arrangements, such as grouped content.\", \"Actions: The main actions for each table row can be included in a dedicated column or slot.\", ], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"prop-types-table\", name: \"Prop Types Table\", description: \"Attached is a standard example demonstrating how to use the table to present general data for component prop types.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1JeUHjbeqVNgTvlVZkeHjw/7f652efbea5cc6aa436449905e2ae48e/table_-_composition.png\", }, { key: \"simple-table-dropdown\", name: \"Simple Table w/ Dropdown\", description: \"Example of a simple table with a dropdown action positioned on the far right, following the content. Demonstrates the table used within a card layout, as it might appear on a page or settings view.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3IIRPg0pdQB66NJniCZvlo/2600a8bee4ad1c79a63dc48d3032ee34/table-composition-design-pricing.png\", }, { key: \"compliance-dashboard-table\", name: \"Compliance Dashboard Table\", description: \"This example shows a desktop view of a table used within an accounting compliance dashboard.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3vUKA5C5iJ3LvjLwf2WiO9/274ffe423dbe828244294f6809172ce1/table-composition-compliance-dashboard.png\", }, ], }, related: { items: [ { name: \"\", link: \"\", }, ], }, rules: [ { heading: \"Icon-Only Actions\", description: \"\", doContent: [ { description: \"Use a 'medium' size icon when using an icon-only medium sized action\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3syzrNBEXbBjp5hGEUvF4M/0471f4b16939d8ee54deaf48997ff455/action-icon-do.png\", }, ], dontContent: [ { description: \"Avoid 'x-small', 'medium' or 'large' size icons within an icon-only medium sized action\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/5V2TE85dY848jz1dP6Y0lC/b8e433c8abad5a4402ff1f86ddb8c848/action-icon-dont.png\", }, ], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
9236
+ }
9237
+ ],
9238
+ "exports": [
9239
+ {
9240
+ "kind": "js",
9241
+ "name": "muiDocs",
9242
+ "declaration": {
9243
+ "name": "muiDocs",
9244
+ "module": "src/components/mui-table/doc.ts"
9245
+ }
9246
+ }
9247
+ ]
9248
+ },
9249
+ {
9250
+ "kind": "javascript-module",
9251
+ "path": "src/components/mui-table/index.ts",
9252
+ "declarations": [],
9253
+ "exports": []
9254
+ },
9255
+ {
9256
+ "kind": "javascript-module",
9257
+ "path": "src/components/mui-textarea/doc.ts",
9258
+ "declarations": [
9259
+ {
9260
+ "kind": "variable",
9261
+ "name": "muiDocs",
9262
+ "type": {
9263
+ "text": "MuiDocs"
9264
+ },
9265
+ "default": "{ Textarea: { title: \"Textarea\", description: \"A multiline text input for longer-form content such as notes, comments, and descriptions.\", hero: [\"\"], figma: [\"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System\"], storybook: [\"https://stories.muibook.com\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-textarea/index.ts\"], website: [\"https://muibook.com/#/textarea\"], guides: [\"https://guides.muibook.com/textarea\"], usage: { list: [ \"Use textarea when users need to enter multiple lines of text.\", \"Use size='x-small|small|medium|large' to align textarea scale with surrounding form controls.\", \"Provide a clear label and helpful placeholder for expected content.\", \"Use the optional attribute when a field is not required to show a clear (optional) marker in the label.\", \"Use max-length when limits matter; the component shows a live character count.\", \"Pair with field validation messaging when collecting required information.\", ], }, accessibility: { designerList: [\"\"], engineerList: [ \"A label is required for screen reader support.\", \"If hide-label is used, an aria-label is generated from label.\", \"Optional fields can be explicitly communicated with the optional attribute without changing label association.\", \"When max-length is set, users get visible character progress while native maxlength enforcement remains intact.\", \"The native disabled attribute is supported.\", ], }, anatomy: { image: \"\", list: [\"Label\", \"Textarea Field\", \"Placeholder Text\"], }, variants: { items: [ { key: \"default\", title: \"Default\", description: \"Base textarea style.\", image: \"\" }, { key: \"success\", title: \"Success\", description: \"Validation success style.\", image: \"\" }, { key: \"warning\", title: \"Warning\", description: \"Validation warning style.\", image: \"\" }, { key: \"error\", title: \"Error\", description: \"Validation error style.\", image: \"\" }, ], }, compositions: { description: \"Common use cases for multiline text input.\", items: [], }, related: { items: [ { name: \"Input\", link: \"https://guides.muibook.com/input\" }, { name: \"Field\", link: \"https://guides.muibook.com/field\" }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
9266
+ }
9267
+ ],
9268
+ "exports": [
9269
+ {
9270
+ "kind": "js",
9271
+ "name": "muiDocs",
9272
+ "declaration": {
9273
+ "name": "muiDocs",
9274
+ "module": "src/components/mui-textarea/doc.ts"
9275
+ }
9276
+ }
9277
+ ]
9278
+ },
9279
+ {
9280
+ "kind": "javascript-module",
9281
+ "path": "src/components/mui-textarea/index.ts",
9282
+ "declarations": [
9283
+ {
9284
+ "kind": "class",
9285
+ "description": "",
9286
+ "name": "MuiTextarea",
9287
+ "members": [
9288
+ {
9289
+ "kind": "field",
9290
+ "name": "_changeHandler",
9291
+ "type": {
9292
+ "text": "(e: Event) => void | undefined"
9293
+ },
9294
+ "privacy": "private"
9295
+ },
9296
+ {
9297
+ "kind": "method",
9298
+ "name": "cleanupListeners"
9299
+ },
9300
+ {
9301
+ "kind": "method",
9302
+ "name": "setupListener"
9303
+ },
9304
+ {
9305
+ "kind": "method",
9306
+ "name": "updateCharacterCount"
9307
+ },
9308
+ {
9309
+ "kind": "method",
9310
+ "name": "render"
9311
+ }
9312
+ ],
9313
+ "events": [
9314
+ {
9315
+ "name": "change",
9316
+ "type": {
9317
+ "text": "CustomEvent"
9318
+ }
9319
+ },
9434
9320
  {
9435
9321
  "name": "input",
9436
9322
  "type": {
@@ -9496,12 +9382,12 @@
9496
9382
  },
9497
9383
  {
9498
9384
  "kind": "javascript-module",
9499
- "path": "src/components/mui-accordion/core/index.ts",
9385
+ "path": "src/components/mui-accordion/block/index.ts",
9500
9386
  "declarations": [
9501
9387
  {
9502
9388
  "kind": "class",
9503
9389
  "description": "",
9504
- "name": "MuiAccordionCore",
9390
+ "name": "MuiAccordionBlock",
9505
9391
  "members": [
9506
9392
  {
9507
9393
  "kind": "field",
@@ -9509,7 +9395,8 @@
9509
9395
  "type": {
9510
9396
  "text": "HTMLElement | null"
9511
9397
  },
9512
- "privacy": "private"
9398
+ "privacy": "private",
9399
+ "default": "null"
9513
9400
  },
9514
9401
  {
9515
9402
  "kind": "field",
@@ -9517,7 +9404,8 @@
9517
9404
  "type": {
9518
9405
  "text": "HTMLElement | null"
9519
9406
  },
9520
- "privacy": "private"
9407
+ "privacy": "private",
9408
+ "default": "null"
9521
9409
  },
9522
9410
  {
9523
9411
  "kind": "field",
@@ -9525,19 +9413,27 @@
9525
9413
  "type": {
9526
9414
  "text": "HTMLElement | null"
9527
9415
  },
9528
- "privacy": "private"
9416
+ "privacy": "private",
9417
+ "default": "null"
9529
9418
  },
9530
9419
  {
9531
9420
  "kind": "field",
9532
- "name": "iconToggleEl",
9421
+ "name": "accordionId",
9533
9422
  "type": {
9534
- "text": "HTMLElement | null"
9423
+ "text": "string"
9535
9424
  },
9536
- "privacy": "private"
9425
+ "privacy": "private",
9426
+ "default": "`accordion-detail-${Math.random() .toString(36) .substring(2, 9)}`"
9537
9427
  },
9538
9428
  {
9539
- "kind": "field",
9540
- "name": "open"
9429
+ "kind": "method",
9430
+ "name": "getDetailEl",
9431
+ "privacy": "private",
9432
+ "return": {
9433
+ "type": {
9434
+ "text": "HTMLElement | null"
9435
+ }
9436
+ }
9541
9437
  },
9542
9438
  {
9543
9439
  "kind": "method",
@@ -9545,149 +9441,161 @@
9545
9441
  },
9546
9442
  {
9547
9443
  "kind": "method",
9548
- "name": "openAccordion"
9444
+ "name": "setOpen",
9445
+ "parameters": [
9446
+ {
9447
+ "name": "state",
9448
+ "type": {
9449
+ "text": "boolean"
9450
+ }
9451
+ }
9452
+ ]
9549
9453
  },
9550
9454
  {
9551
9455
  "kind": "method",
9552
9456
  "name": "closeAccordion"
9553
9457
  }
9554
9458
  ],
9555
- "attributes": [
9459
+ "events": [
9556
9460
  {
9557
- "name": "open"
9461
+ "name": "accordion-opened",
9462
+ "type": {
9463
+ "text": "CustomEvent"
9464
+ }
9558
9465
  }
9559
9466
  ],
9560
9467
  "superclass": {
9561
9468
  "name": "HTMLElement"
9562
9469
  },
9563
- "tagName": "mui-accordion-core",
9470
+ "tagName": "mui-accordion-block",
9564
9471
  "customElement": true
9565
9472
  }
9566
9473
  ],
9567
9474
  "exports": [
9568
9475
  {
9569
9476
  "kind": "custom-element-definition",
9570
- "name": "mui-accordion-core",
9477
+ "name": "mui-accordion-block",
9571
9478
  "declaration": {
9572
- "name": "MuiAccordionCore",
9573
- "module": "src/components/mui-accordion/core/index.ts"
9479
+ "name": "MuiAccordionBlock",
9480
+ "module": "src/components/mui-accordion/block/index.ts"
9574
9481
  }
9575
9482
  }
9576
9483
  ]
9577
9484
  },
9578
9485
  {
9579
9486
  "kind": "javascript-module",
9580
- "path": "src/components/mui-accordion/group/index.ts",
9487
+ "path": "src/components/mui-accordion/core/index.ts",
9581
9488
  "declarations": [
9582
9489
  {
9583
9490
  "kind": "class",
9584
9491
  "description": "",
9585
- "name": "MuiAccordionGroup",
9492
+ "name": "MuiAccordionCore",
9586
9493
  "members": [
9587
9494
  {
9588
9495
  "kind": "field",
9589
- "name": "accordions",
9496
+ "name": "summaryEl",
9590
9497
  "type": {
9591
- "text": "AccordionBlockElement[]"
9498
+ "text": "HTMLElement | null"
9592
9499
  },
9593
- "privacy": "private",
9594
- "default": "[]"
9595
- }
9596
- ],
9597
- "superclass": {
9598
- "name": "HTMLElement"
9599
- },
9600
- "tagName": "mui-accordion-group",
9601
- "customElement": true
9602
- }
9603
- ],
9604
- "exports": [
9605
- {
9606
- "kind": "custom-element-definition",
9607
- "name": "mui-accordion-group",
9608
- "declaration": {
9609
- "name": "MuiAccordionGroup",
9610
- "module": "src/components/mui-accordion/group/index.ts"
9611
- }
9612
- }
9613
- ]
9614
- },
9615
- {
9616
- "kind": "javascript-module",
9617
- "path": "src/components/mui-card/body/index.ts",
9618
- "declarations": [
9619
- {
9620
- "kind": "class",
9621
- "description": "",
9622
- "name": "MuiCardBody",
9623
- "members": [
9500
+ "privacy": "private"
9501
+ },
9624
9502
  {
9625
- "kind": "method",
9626
- "name": "updateSlottedContent",
9627
- "return": {
9628
- "type": {
9629
- "text": "void"
9630
- }
9631
- }
9503
+ "kind": "field",
9504
+ "name": "detailEl",
9505
+ "type": {
9506
+ "text": "HTMLElement | null"
9507
+ },
9508
+ "privacy": "private"
9509
+ },
9510
+ {
9511
+ "kind": "field",
9512
+ "name": "chevronEl",
9513
+ "type": {
9514
+ "text": "HTMLElement | null"
9515
+ },
9516
+ "privacy": "private"
9517
+ },
9518
+ {
9519
+ "kind": "field",
9520
+ "name": "iconToggleEl",
9521
+ "type": {
9522
+ "text": "HTMLElement | null"
9523
+ },
9524
+ "privacy": "private"
9525
+ },
9526
+ {
9527
+ "kind": "field",
9528
+ "name": "open"
9632
9529
  },
9633
9530
  {
9634
9531
  "kind": "method",
9635
- "name": "render"
9532
+ "name": "toggleAccordion"
9533
+ },
9534
+ {
9535
+ "kind": "method",
9536
+ "name": "openAccordion"
9537
+ },
9538
+ {
9539
+ "kind": "method",
9540
+ "name": "closeAccordion"
9636
9541
  }
9637
9542
  ],
9638
9543
  "attributes": [
9639
9544
  {
9640
- "name": "condensed"
9545
+ "name": "open"
9641
9546
  }
9642
9547
  ],
9643
9548
  "superclass": {
9644
9549
  "name": "HTMLElement"
9645
9550
  },
9646
- "tagName": "mui-card-body",
9551
+ "tagName": "mui-accordion-core",
9647
9552
  "customElement": true
9648
9553
  }
9649
9554
  ],
9650
9555
  "exports": [
9651
9556
  {
9652
9557
  "kind": "custom-element-definition",
9653
- "name": "mui-card-body",
9558
+ "name": "mui-accordion-core",
9654
9559
  "declaration": {
9655
- "name": "MuiCardBody",
9656
- "module": "src/components/mui-card/body/index.ts"
9560
+ "name": "MuiAccordionCore",
9561
+ "module": "src/components/mui-accordion/core/index.ts"
9657
9562
  }
9658
9563
  }
9659
9564
  ]
9660
9565
  },
9661
9566
  {
9662
9567
  "kind": "javascript-module",
9663
- "path": "src/components/mui-card/card/index.ts",
9568
+ "path": "src/components/mui-accordion/group/index.ts",
9664
9569
  "declarations": [
9665
9570
  {
9666
9571
  "kind": "class",
9667
9572
  "description": "",
9668
- "name": "MuiCard",
9669
- "attributes": [
9670
- {
9671
- "name": "footer"
9672
- },
9573
+ "name": "MuiAccordionGroup",
9574
+ "members": [
9673
9575
  {
9674
- "name": "borderless"
9576
+ "kind": "field",
9577
+ "name": "accordions",
9578
+ "type": {
9579
+ "text": "AccordionBlockElement[]"
9580
+ },
9581
+ "privacy": "private",
9582
+ "default": "[]"
9675
9583
  }
9676
9584
  ],
9677
9585
  "superclass": {
9678
9586
  "name": "HTMLElement"
9679
9587
  },
9680
- "tagName": "mui-card",
9588
+ "tagName": "mui-accordion-group",
9681
9589
  "customElement": true
9682
9590
  }
9683
9591
  ],
9684
9592
  "exports": [
9685
9593
  {
9686
9594
  "kind": "custom-element-definition",
9687
- "name": "mui-card",
9595
+ "name": "mui-accordion-group",
9688
9596
  "declaration": {
9689
- "name": "MuiCard",
9690
- "module": "src/components/mui-card/card/index.ts"
9597
+ "name": "MuiAccordionGroup",
9598
+ "module": "src/components/mui-accordion/group/index.ts"
9691
9599
  }
9692
9600
  }
9693
9601
  ]
@@ -9748,6 +9656,86 @@
9748
9656
  }
9749
9657
  ]
9750
9658
  },
9659
+ {
9660
+ "kind": "javascript-module",
9661
+ "path": "src/components/mui-card/body/index.ts",
9662
+ "declarations": [
9663
+ {
9664
+ "kind": "class",
9665
+ "description": "",
9666
+ "name": "MuiCardBody",
9667
+ "members": [
9668
+ {
9669
+ "kind": "method",
9670
+ "name": "updateSlottedContent",
9671
+ "return": {
9672
+ "type": {
9673
+ "text": "void"
9674
+ }
9675
+ }
9676
+ },
9677
+ {
9678
+ "kind": "method",
9679
+ "name": "render"
9680
+ }
9681
+ ],
9682
+ "attributes": [
9683
+ {
9684
+ "name": "condensed"
9685
+ }
9686
+ ],
9687
+ "superclass": {
9688
+ "name": "HTMLElement"
9689
+ },
9690
+ "tagName": "mui-card-body",
9691
+ "customElement": true
9692
+ }
9693
+ ],
9694
+ "exports": [
9695
+ {
9696
+ "kind": "custom-element-definition",
9697
+ "name": "mui-card-body",
9698
+ "declaration": {
9699
+ "name": "MuiCardBody",
9700
+ "module": "src/components/mui-card/body/index.ts"
9701
+ }
9702
+ }
9703
+ ]
9704
+ },
9705
+ {
9706
+ "kind": "javascript-module",
9707
+ "path": "src/components/mui-card/card/index.ts",
9708
+ "declarations": [
9709
+ {
9710
+ "kind": "class",
9711
+ "description": "",
9712
+ "name": "MuiCard",
9713
+ "attributes": [
9714
+ {
9715
+ "name": "footer"
9716
+ },
9717
+ {
9718
+ "name": "borderless"
9719
+ }
9720
+ ],
9721
+ "superclass": {
9722
+ "name": "HTMLElement"
9723
+ },
9724
+ "tagName": "mui-card",
9725
+ "customElement": true
9726
+ }
9727
+ ],
9728
+ "exports": [
9729
+ {
9730
+ "kind": "custom-element-definition",
9731
+ "name": "mui-card",
9732
+ "declaration": {
9733
+ "name": "MuiCard",
9734
+ "module": "src/components/mui-card/card/index.ts"
9735
+ }
9736
+ }
9737
+ ]
9738
+ },
9751
9739
  {
9752
9740
  "kind": "javascript-module",
9753
9741
  "path": "src/components/mui-card/footer/index.ts",
@@ -9800,6 +9788,48 @@
9800
9788
  }
9801
9789
  ]
9802
9790
  },
9791
+ {
9792
+ "kind": "javascript-module",
9793
+ "path": "src/components/mui-carousel/panel/index.ts",
9794
+ "declarations": [
9795
+ {
9796
+ "kind": "class",
9797
+ "description": "",
9798
+ "name": "MuiCarouselPanel",
9799
+ "members": [
9800
+ {
9801
+ "kind": "field",
9802
+ "name": "item"
9803
+ },
9804
+ {
9805
+ "kind": "field",
9806
+ "name": "innerHTML",
9807
+ "default": "` <style> :host { display: block; box-sizing: border-box; overflow: hidden; } </style> <slot></slot> `"
9808
+ }
9809
+ ],
9810
+ "attributes": [
9811
+ {
9812
+ "name": "item"
9813
+ }
9814
+ ],
9815
+ "superclass": {
9816
+ "name": "HTMLElement"
9817
+ },
9818
+ "tagName": "mui-carousel-panel",
9819
+ "customElement": true
9820
+ }
9821
+ ],
9822
+ "exports": [
9823
+ {
9824
+ "kind": "custom-element-definition",
9825
+ "name": "mui-carousel-panel",
9826
+ "declaration": {
9827
+ "name": "MuiCarouselPanel",
9828
+ "module": "src/components/mui-carousel/panel/index.ts"
9829
+ }
9830
+ }
9831
+ ]
9832
+ },
9803
9833
  {
9804
9834
  "kind": "javascript-module",
9805
9835
  "path": "src/components/mui-carousel/controller/index.ts",
@@ -9934,48 +9964,6 @@
9934
9964
  }
9935
9965
  ]
9936
9966
  },
9937
- {
9938
- "kind": "javascript-module",
9939
- "path": "src/components/mui-carousel/panel/index.ts",
9940
- "declarations": [
9941
- {
9942
- "kind": "class",
9943
- "description": "",
9944
- "name": "MuiCarouselPanel",
9945
- "members": [
9946
- {
9947
- "kind": "field",
9948
- "name": "item"
9949
- },
9950
- {
9951
- "kind": "field",
9952
- "name": "innerHTML",
9953
- "default": "` <style> :host { display: block; box-sizing: border-box; overflow: hidden; } </style> <slot></slot> `"
9954
- }
9955
- ],
9956
- "attributes": [
9957
- {
9958
- "name": "item"
9959
- }
9960
- ],
9961
- "superclass": {
9962
- "name": "HTMLElement"
9963
- },
9964
- "tagName": "mui-carousel-panel",
9965
- "customElement": true
9966
- }
9967
- ],
9968
- "exports": [
9969
- {
9970
- "kind": "custom-element-definition",
9971
- "name": "mui-carousel-panel",
9972
- "declaration": {
9973
- "name": "MuiCarouselPanel",
9974
- "module": "src/components/mui-carousel/panel/index.ts"
9975
- }
9976
- }
9977
- ]
9978
- },
9979
9967
  {
9980
9968
  "kind": "javascript-module",
9981
9969
  "path": "src/components/mui-list/item/index.ts",
@@ -10181,185 +10169,17 @@
10181
10169
  },
10182
10170
  {
10183
10171
  "kind": "javascript-module",
10184
- "path": "src/components/mui-stack/hstack/index.ts",
10172
+ "path": "src/components/mui-stepper/stepper/index.ts",
10185
10173
  "declarations": [
10186
10174
  {
10187
10175
  "kind": "class",
10188
10176
  "description": "",
10189
- "name": "MuiHStack",
10177
+ "name": "MuiStepper",
10190
10178
  "members": [
10191
10179
  {
10192
10180
  "kind": "field",
10193
- "name": "space",
10194
- "type": {
10195
- "text": "string"
10196
- },
10197
- "privacy": "private",
10198
- "default": "`var(--space-500)`"
10199
- },
10200
- {
10201
- "kind": "field",
10202
- "name": "alignX",
10203
- "type": {
10204
- "text": "string"
10205
- },
10206
- "privacy": "private",
10207
- "default": "`flex-start`"
10208
- },
10209
- {
10210
- "kind": "field",
10211
- "name": "alignY",
10212
- "type": {
10213
- "text": "string"
10214
- },
10215
- "privacy": "private",
10216
- "default": "`flex-start`"
10217
- },
10218
- {
10219
- "kind": "field",
10220
- "name": "styles",
10221
- "type": {
10222
- "text": "string"
10223
- },
10224
- "privacy": "private",
10225
- "default": "` :host { display: block; } slot { display: flex; gap: var(--space); align-items: var(--alignY); justify-content: var(--alignX); } `"
10226
- },
10227
- {
10228
- "kind": "method",
10229
- "name": "waitForPartMap",
10230
- "return": {
10231
- "type": {
10232
- "text": "Promise<void>"
10233
- }
10234
- }
10235
- }
10236
- ],
10237
- "attributes": [
10238
- {
10239
- "name": "space"
10240
- },
10241
- {
10242
- "name": "aligny"
10243
- },
10244
- {
10245
- "name": "alignx"
10246
- }
10247
- ],
10248
- "superclass": {
10249
- "name": "HTMLElement"
10250
- },
10251
- "tagName": "mui-h-stack",
10252
- "customElement": true
10253
- }
10254
- ],
10255
- "exports": [
10256
- {
10257
- "kind": "custom-element-definition",
10258
- "name": "mui-h-stack",
10259
- "declaration": {
10260
- "name": "MuiHStack",
10261
- "module": "src/components/mui-stack/hstack/index.ts"
10262
- }
10263
- }
10264
- ]
10265
- },
10266
- {
10267
- "kind": "javascript-module",
10268
- "path": "src/components/mui-stack/vstack/index.ts",
10269
- "declarations": [
10270
- {
10271
- "kind": "class",
10272
- "description": "",
10273
- "name": "MuiVStack",
10274
- "members": [
10275
- {
10276
- "kind": "field",
10277
- "name": "space",
10278
- "type": {
10279
- "text": "string"
10280
- },
10281
- "privacy": "private",
10282
- "default": "`var(--space-500)`"
10283
- },
10284
- {
10285
- "kind": "field",
10286
- "name": "alignX",
10287
- "type": {
10288
- "text": "string"
10289
- },
10290
- "privacy": "private",
10291
- "default": "`normal`"
10292
- },
10293
- {
10294
- "kind": "field",
10295
- "name": "alignY",
10296
- "type": {
10297
- "text": "string"
10298
- },
10299
- "privacy": "private",
10300
- "default": "`normal`"
10301
- },
10302
- {
10303
- "kind": "field",
10304
- "name": "styles",
10305
- "type": {
10306
- "text": "string"
10307
- },
10308
- "privacy": "private",
10309
- "default": "` :host { display: block; } slot { display: grid; gap: var(--space); justify-items: var(--alignX); align-items: var(--alignY); } `"
10310
- },
10311
- {
10312
- "kind": "method",
10313
- "name": "waitForPartMap",
10314
- "return": {
10315
- "type": {
10316
- "text": "Promise<void>"
10317
- }
10318
- }
10319
- }
10320
- ],
10321
- "attributes": [
10322
- {
10323
- "name": "space"
10324
- },
10325
- {
10326
- "name": "alignx"
10327
- },
10328
- {
10329
- "name": "aligny"
10330
- }
10331
- ],
10332
- "superclass": {
10333
- "name": "HTMLElement"
10334
- },
10335
- "tagName": "mui-v-stack",
10336
- "customElement": true
10337
- }
10338
- ],
10339
- "exports": [
10340
- {
10341
- "kind": "custom-element-definition",
10342
- "name": "mui-v-stack",
10343
- "declaration": {
10344
- "name": "MuiVStack",
10345
- "module": "src/components/mui-stack/vstack/index.ts"
10346
- }
10347
- }
10348
- ]
10349
- },
10350
- {
10351
- "kind": "javascript-module",
10352
- "path": "src/components/mui-stepper/stepper/index.ts",
10353
- "declarations": [
10354
- {
10355
- "kind": "class",
10356
- "description": "",
10357
- "name": "MuiStepper",
10358
- "members": [
10359
- {
10360
- "kind": "field",
10361
- "name": "onKeyDown",
10362
- "privacy": "private"
10181
+ "name": "onKeyDown",
10182
+ "privacy": "private"
10363
10183
  },
10364
10184
  {
10365
10185
  "kind": "field",
@@ -10522,107 +10342,180 @@
10522
10342
  },
10523
10343
  {
10524
10344
  "kind": "javascript-module",
10525
- "path": "src/components/mui-stepper/step/index.ts",
10345
+ "path": "src/components/mui-stack/vstack/index.ts",
10526
10346
  "declarations": [
10527
10347
  {
10528
10348
  "kind": "class",
10529
10349
  "description": "",
10530
- "name": "MuiStep",
10350
+ "name": "MuiVStack",
10531
10351
  "members": [
10532
10352
  {
10533
- "kind": "method",
10534
- "name": "render"
10535
- }
10536
- ],
10537
- "attributes": [
10353
+ "kind": "field",
10354
+ "name": "space",
10355
+ "type": {
10356
+ "text": "string"
10357
+ },
10358
+ "privacy": "private",
10359
+ "default": "`var(--space-500)`"
10360
+ },
10538
10361
  {
10539
- "name": "state"
10362
+ "kind": "field",
10363
+ "name": "alignX",
10364
+ "type": {
10365
+ "text": "string"
10366
+ },
10367
+ "privacy": "private",
10368
+ "default": "`normal`"
10540
10369
  },
10541
10370
  {
10542
- "name": "resolved-state"
10371
+ "kind": "field",
10372
+ "name": "alignY",
10373
+ "type": {
10374
+ "text": "string"
10375
+ },
10376
+ "privacy": "private",
10377
+ "default": "`normal`"
10543
10378
  },
10544
10379
  {
10545
- "name": "title"
10380
+ "kind": "field",
10381
+ "name": "styles",
10382
+ "type": {
10383
+ "text": "string"
10384
+ },
10385
+ "privacy": "private",
10386
+ "default": "` :host { display: block; } slot { display: grid; gap: var(--space); justify-items: var(--alignX); align-items: var(--alignY); } `"
10546
10387
  },
10547
10388
  {
10548
- "name": "direction"
10389
+ "kind": "method",
10390
+ "name": "waitForPartMap",
10391
+ "return": {
10392
+ "type": {
10393
+ "text": "Promise<void>"
10394
+ }
10395
+ }
10396
+ }
10397
+ ],
10398
+ "attributes": [
10399
+ {
10400
+ "name": "space"
10549
10401
  },
10550
10402
  {
10551
- "name": "hide-icon"
10403
+ "name": "alignx"
10552
10404
  },
10553
10405
  {
10554
- "name": "size"
10406
+ "name": "aligny"
10555
10407
  }
10556
10408
  ],
10557
10409
  "superclass": {
10558
10410
  "name": "HTMLElement"
10559
10411
  },
10560
- "tagName": "mui-step",
10412
+ "tagName": "mui-v-stack",
10561
10413
  "customElement": true
10562
10414
  }
10563
10415
  ],
10564
10416
  "exports": [
10565
10417
  {
10566
10418
  "kind": "custom-element-definition",
10567
- "name": "mui-step",
10419
+ "name": "mui-v-stack",
10568
10420
  "declaration": {
10569
- "name": "MuiStep",
10570
- "module": "src/components/mui-stepper/step/index.ts"
10421
+ "name": "MuiVStack",
10422
+ "module": "src/components/mui-stack/vstack/index.ts"
10571
10423
  }
10572
10424
  }
10573
10425
  ]
10574
10426
  },
10575
10427
  {
10576
10428
  "kind": "javascript-module",
10577
- "path": "src/components/mui-table/row/index.ts",
10429
+ "path": "src/components/mui-stack/hstack/index.ts",
10578
10430
  "declarations": [
10579
10431
  {
10580
10432
  "kind": "class",
10581
10433
  "description": "",
10582
- "name": "MuiRow",
10434
+ "name": "MuiHStack",
10583
10435
  "members": [
10584
10436
  {
10585
- "kind": "method",
10586
- "name": "syncContextAttributes",
10587
- "privacy": "private"
10437
+ "kind": "field",
10438
+ "name": "space",
10439
+ "type": {
10440
+ "text": "string"
10441
+ },
10442
+ "privacy": "private",
10443
+ "default": "`var(--space-500)`"
10444
+ },
10445
+ {
10446
+ "kind": "field",
10447
+ "name": "alignX",
10448
+ "type": {
10449
+ "text": "string"
10450
+ },
10451
+ "privacy": "private",
10452
+ "default": "`flex-start`"
10453
+ },
10454
+ {
10455
+ "kind": "field",
10456
+ "name": "alignY",
10457
+ "type": {
10458
+ "text": "string"
10459
+ },
10460
+ "privacy": "private",
10461
+ "default": "`flex-start`"
10462
+ },
10463
+ {
10464
+ "kind": "field",
10465
+ "name": "styles",
10466
+ "type": {
10467
+ "text": "string"
10468
+ },
10469
+ "privacy": "private",
10470
+ "default": "` :host { display: block; } slot { display: flex; gap: var(--space); align-items: var(--alignY); justify-content: var(--alignX); } `"
10588
10471
  },
10589
10472
  {
10590
10473
  "kind": "method",
10591
- "name": "render",
10592
- "privacy": "private"
10474
+ "name": "waitForPartMap",
10475
+ "return": {
10476
+ "type": {
10477
+ "text": "Promise<void>"
10478
+ }
10479
+ }
10593
10480
  }
10594
10481
  ],
10595
10482
  "attributes": [
10596
10483
  {
10597
- "name": "columns"
10484
+ "name": "space"
10485
+ },
10486
+ {
10487
+ "name": "aligny"
10488
+ },
10489
+ {
10490
+ "name": "alignx"
10598
10491
  }
10599
10492
  ],
10600
10493
  "superclass": {
10601
10494
  "name": "HTMLElement"
10602
10495
  },
10603
- "tagName": "mui-row",
10496
+ "tagName": "mui-h-stack",
10604
10497
  "customElement": true
10605
10498
  }
10606
10499
  ],
10607
10500
  "exports": [
10608
10501
  {
10609
10502
  "kind": "custom-element-definition",
10610
- "name": "mui-row",
10503
+ "name": "mui-h-stack",
10611
10504
  "declaration": {
10612
- "name": "MuiRow",
10613
- "module": "src/components/mui-table/row/index.ts"
10505
+ "name": "MuiHStack",
10506
+ "module": "src/components/mui-stack/hstack/index.ts"
10614
10507
  }
10615
10508
  }
10616
10509
  ]
10617
10510
  },
10618
10511
  {
10619
10512
  "kind": "javascript-module",
10620
- "path": "src/components/mui-table/cell/index.ts",
10513
+ "path": "src/components/mui-stepper/step/index.ts",
10621
10514
  "declarations": [
10622
10515
  {
10623
10516
  "kind": "class",
10624
10517
  "description": "",
10625
- "name": "MuiCell",
10518
+ "name": "MuiStep",
10626
10519
  "members": [
10627
10520
  {
10628
10521
  "kind": "method",
@@ -10631,180 +10524,38 @@
10631
10524
  ],
10632
10525
  "attributes": [
10633
10526
  {
10634
- "name": "align-y"
10635
- }
10636
- ],
10637
- "superclass": {
10638
- "name": "HTMLElement"
10639
- },
10640
- "tagName": "mui-cell",
10641
- "customElement": true
10642
- }
10643
- ],
10644
- "exports": [
10645
- {
10646
- "kind": "custom-element-definition",
10647
- "name": "mui-cell",
10648
- "declaration": {
10649
- "name": "MuiCell",
10650
- "module": "src/components/mui-table/cell/index.ts"
10651
- }
10652
- }
10653
- ]
10654
- },
10655
- {
10656
- "kind": "javascript-module",
10657
- "path": "src/components/mui-table/table/index.ts",
10658
- "declarations": [
10659
- {
10660
- "kind": "class",
10661
- "description": "",
10662
- "name": "MuiTable",
10663
- "superclass": {
10664
- "name": "HTMLElement"
10665
- },
10666
- "tagName": "mui-table",
10667
- "customElement": true
10668
- }
10669
- ],
10670
- "exports": [
10671
- {
10672
- "kind": "custom-element-definition",
10673
- "name": "mui-table",
10674
- "declaration": {
10675
- "name": "MuiTable",
10676
- "module": "src/components/mui-table/table/index.ts"
10677
- }
10678
- }
10679
- ]
10680
- },
10681
- {
10682
- "kind": "javascript-module",
10683
- "path": "src/components/mui-table/row-group/index.ts",
10684
- "declarations": [
10685
- {
10686
- "kind": "class",
10687
- "description": "",
10688
- "name": "MuiRowGroup",
10689
- "superclass": {
10690
- "name": "HTMLElement"
10691
- },
10692
- "tagName": "mui-row-group",
10693
- "customElement": true
10694
- }
10695
- ],
10696
- "exports": [
10697
- {
10698
- "kind": "custom-element-definition",
10699
- "name": "mui-row-group",
10700
- "declaration": {
10701
- "name": "MuiRowGroup",
10702
- "module": "src/components/mui-table/row-group/index.ts"
10703
- }
10704
- }
10705
- ]
10706
- },
10707
- {
10708
- "kind": "javascript-module",
10709
- "path": "src/components/mui-tabs/item/index.ts",
10710
- "declarations": [
10711
- {
10712
- "kind": "class",
10713
- "description": "",
10714
- "name": "MuiTabItem",
10715
- "members": [
10716
- {
10717
- "kind": "field",
10718
- "name": "beforeSlot",
10719
- "type": {
10720
- "text": "HTMLSlotElement | null | undefined"
10721
- },
10722
- "privacy": "private"
10723
- },
10724
- {
10725
- "kind": "field",
10726
- "name": "afterSlot",
10727
- "type": {
10728
- "text": "HTMLSlotElement | null | undefined"
10729
- },
10730
- "privacy": "private"
10731
- },
10732
- {
10733
- "kind": "method",
10734
- "name": "getIconSizeFromTabSize",
10735
- "privacy": "private"
10736
- },
10737
- {
10738
- "kind": "method",
10739
- "name": "getBadgeSizeFromTabSize",
10740
- "privacy": "private"
10741
- },
10742
- {
10743
- "kind": "method",
10744
- "name": "hasAssignedContent",
10745
- "privacy": "private",
10746
- "return": {
10747
- "type": {
10748
- "text": "boolean"
10749
- }
10750
- },
10751
- "parameters": [
10752
- {
10753
- "name": "slot",
10754
- "type": {
10755
- "text": "HTMLSlotElement | null | undefined"
10756
- }
10757
- }
10758
- ]
10759
- },
10760
- {
10761
- "kind": "method",
10762
- "name": "syncSlottedAffordances",
10763
- "privacy": "private",
10764
- "parameters": [
10765
- {
10766
- "name": "slot",
10767
- "type": {
10768
- "text": "HTMLSlotElement | null | undefined"
10769
- }
10770
- }
10771
- ]
10772
- },
10773
- {
10774
- "kind": "method",
10775
- "name": "updateSlotState",
10776
- "privacy": "private"
10527
+ "name": "state"
10777
10528
  },
10778
10529
  {
10779
- "kind": "method",
10780
- "name": "updateActiveState"
10781
- }
10782
- ],
10783
- "attributes": [
10530
+ "name": "resolved-state"
10531
+ },
10784
10532
  {
10785
- "name": "active"
10533
+ "name": "title"
10786
10534
  },
10787
10535
  {
10788
- "name": "size"
10536
+ "name": "direction"
10789
10537
  },
10790
10538
  {
10791
- "name": "variant"
10539
+ "name": "hide-icon"
10540
+ },
10541
+ {
10542
+ "name": "size"
10792
10543
  }
10793
10544
  ],
10794
10545
  "superclass": {
10795
10546
  "name": "HTMLElement"
10796
10547
  },
10797
- "tagName": "mui-tab-item",
10548
+ "tagName": "mui-step",
10798
10549
  "customElement": true
10799
10550
  }
10800
10551
  ],
10801
10552
  "exports": [
10802
10553
  {
10803
10554
  "kind": "custom-element-definition",
10804
- "name": "mui-tab-item",
10555
+ "name": "mui-step",
10805
10556
  "declaration": {
10806
- "name": "MuiTabItem",
10807
- "module": "src/components/mui-tabs/item/index.ts"
10557
+ "name": "MuiStep",
10558
+ "module": "src/components/mui-stepper/step/index.ts"
10808
10559
  }
10809
10560
  }
10810
10561
  ]
@@ -11041,6 +10792,111 @@
11041
10792
  }
11042
10793
  ]
11043
10794
  },
10795
+ {
10796
+ "kind": "javascript-module",
10797
+ "path": "src/components/mui-tabs/item/index.ts",
10798
+ "declarations": [
10799
+ {
10800
+ "kind": "class",
10801
+ "description": "",
10802
+ "name": "MuiTabItem",
10803
+ "members": [
10804
+ {
10805
+ "kind": "field",
10806
+ "name": "beforeSlot",
10807
+ "type": {
10808
+ "text": "HTMLSlotElement | null | undefined"
10809
+ },
10810
+ "privacy": "private"
10811
+ },
10812
+ {
10813
+ "kind": "field",
10814
+ "name": "afterSlot",
10815
+ "type": {
10816
+ "text": "HTMLSlotElement | null | undefined"
10817
+ },
10818
+ "privacy": "private"
10819
+ },
10820
+ {
10821
+ "kind": "method",
10822
+ "name": "getIconSizeFromTabSize",
10823
+ "privacy": "private"
10824
+ },
10825
+ {
10826
+ "kind": "method",
10827
+ "name": "getBadgeSizeFromTabSize",
10828
+ "privacy": "private"
10829
+ },
10830
+ {
10831
+ "kind": "method",
10832
+ "name": "hasAssignedContent",
10833
+ "privacy": "private",
10834
+ "return": {
10835
+ "type": {
10836
+ "text": "boolean"
10837
+ }
10838
+ },
10839
+ "parameters": [
10840
+ {
10841
+ "name": "slot",
10842
+ "type": {
10843
+ "text": "HTMLSlotElement | null | undefined"
10844
+ }
10845
+ }
10846
+ ]
10847
+ },
10848
+ {
10849
+ "kind": "method",
10850
+ "name": "syncSlottedAffordances",
10851
+ "privacy": "private",
10852
+ "parameters": [
10853
+ {
10854
+ "name": "slot",
10855
+ "type": {
10856
+ "text": "HTMLSlotElement | null | undefined"
10857
+ }
10858
+ }
10859
+ ]
10860
+ },
10861
+ {
10862
+ "kind": "method",
10863
+ "name": "updateSlotState",
10864
+ "privacy": "private"
10865
+ },
10866
+ {
10867
+ "kind": "method",
10868
+ "name": "updateActiveState"
10869
+ }
10870
+ ],
10871
+ "attributes": [
10872
+ {
10873
+ "name": "active"
10874
+ },
10875
+ {
10876
+ "name": "size"
10877
+ },
10878
+ {
10879
+ "name": "variant"
10880
+ }
10881
+ ],
10882
+ "superclass": {
10883
+ "name": "HTMLElement"
10884
+ },
10885
+ "tagName": "mui-tab-item",
10886
+ "customElement": true
10887
+ }
10888
+ ],
10889
+ "exports": [
10890
+ {
10891
+ "kind": "custom-element-definition",
10892
+ "name": "mui-tab-item",
10893
+ "declaration": {
10894
+ "name": "MuiTabItem",
10895
+ "module": "src/components/mui-tabs/item/index.ts"
10896
+ }
10897
+ }
10898
+ ]
10899
+ },
11044
10900
  {
11045
10901
  "kind": "javascript-module",
11046
10902
  "path": "src/components/mui-tabs/panel/index.ts",
@@ -11085,6 +10941,138 @@
11085
10941
  }
11086
10942
  }
11087
10943
  ]
10944
+ },
10945
+ {
10946
+ "kind": "javascript-module",
10947
+ "path": "src/components/mui-table/row/index.ts",
10948
+ "declarations": [
10949
+ {
10950
+ "kind": "class",
10951
+ "description": "",
10952
+ "name": "MuiRow",
10953
+ "members": [
10954
+ {
10955
+ "kind": "method",
10956
+ "name": "syncContextAttributes",
10957
+ "privacy": "private"
10958
+ },
10959
+ {
10960
+ "kind": "method",
10961
+ "name": "render",
10962
+ "privacy": "private"
10963
+ }
10964
+ ],
10965
+ "attributes": [
10966
+ {
10967
+ "name": "columns"
10968
+ }
10969
+ ],
10970
+ "superclass": {
10971
+ "name": "HTMLElement"
10972
+ },
10973
+ "tagName": "mui-row",
10974
+ "customElement": true
10975
+ }
10976
+ ],
10977
+ "exports": [
10978
+ {
10979
+ "kind": "custom-element-definition",
10980
+ "name": "mui-row",
10981
+ "declaration": {
10982
+ "name": "MuiRow",
10983
+ "module": "src/components/mui-table/row/index.ts"
10984
+ }
10985
+ }
10986
+ ]
10987
+ },
10988
+ {
10989
+ "kind": "javascript-module",
10990
+ "path": "src/components/mui-table/cell/index.ts",
10991
+ "declarations": [
10992
+ {
10993
+ "kind": "class",
10994
+ "description": "",
10995
+ "name": "MuiCell",
10996
+ "members": [
10997
+ {
10998
+ "kind": "method",
10999
+ "name": "render"
11000
+ }
11001
+ ],
11002
+ "attributes": [
11003
+ {
11004
+ "name": "align-y"
11005
+ }
11006
+ ],
11007
+ "superclass": {
11008
+ "name": "HTMLElement"
11009
+ },
11010
+ "tagName": "mui-cell",
11011
+ "customElement": true
11012
+ }
11013
+ ],
11014
+ "exports": [
11015
+ {
11016
+ "kind": "custom-element-definition",
11017
+ "name": "mui-cell",
11018
+ "declaration": {
11019
+ "name": "MuiCell",
11020
+ "module": "src/components/mui-table/cell/index.ts"
11021
+ }
11022
+ }
11023
+ ]
11024
+ },
11025
+ {
11026
+ "kind": "javascript-module",
11027
+ "path": "src/components/mui-table/row-group/index.ts",
11028
+ "declarations": [
11029
+ {
11030
+ "kind": "class",
11031
+ "description": "",
11032
+ "name": "MuiRowGroup",
11033
+ "superclass": {
11034
+ "name": "HTMLElement"
11035
+ },
11036
+ "tagName": "mui-row-group",
11037
+ "customElement": true
11038
+ }
11039
+ ],
11040
+ "exports": [
11041
+ {
11042
+ "kind": "custom-element-definition",
11043
+ "name": "mui-row-group",
11044
+ "declaration": {
11045
+ "name": "MuiRowGroup",
11046
+ "module": "src/components/mui-table/row-group/index.ts"
11047
+ }
11048
+ }
11049
+ ]
11050
+ },
11051
+ {
11052
+ "kind": "javascript-module",
11053
+ "path": "src/components/mui-table/table/index.ts",
11054
+ "declarations": [
11055
+ {
11056
+ "kind": "class",
11057
+ "description": "",
11058
+ "name": "MuiTable",
11059
+ "superclass": {
11060
+ "name": "HTMLElement"
11061
+ },
11062
+ "tagName": "mui-table",
11063
+ "customElement": true
11064
+ }
11065
+ ],
11066
+ "exports": [
11067
+ {
11068
+ "kind": "custom-element-definition",
11069
+ "name": "mui-table",
11070
+ "declaration": {
11071
+ "name": "MuiTable",
11072
+ "module": "src/components/mui-table/table/index.ts"
11073
+ }
11074
+ }
11075
+ ]
11088
11076
  }
11089
11077
  ]
11090
11078
  }