@muibook/components 11.0.1 → 13.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.
- package/dist/esm/components/mui-addon/index.js +41 -8
- package/dist/esm/components/mui-field/index.js +26 -9
- package/dist/esm/components/mui-hint/index.js +6 -6
- package/dist/esm/components/mui-image/index.js +89 -42
- package/dist/esm/components/mui-input/index.js +67 -27
- package/dist/esm/components/mui-prompt/index.js +87 -64
- package/dist/esm/components/mui-prompt-preview/index.js +43 -18
- package/dist/esm/components/mui-rule/index.js +7 -5
- package/dist/esm/components/mui-select/index.js +48 -15
- package/dist/esm/components/mui-skeleton/index.js +139 -0
- package/dist/esm/components/mui-slide-frame/index.js +410 -0
- package/dist/esm/components/mui-switch/index.js +72 -35
- package/dist/esm/components/mui-tabs/tab-bar/index.js +1 -1
- package/dist/esm/components/mui-textarea/index.js +40 -7
- package/dist/esm/css/mui-brand.css +1 -1
- package/dist/esm/css/mui-tokens.css +26 -0
- package/dist/esm/custom-elements.json +1573 -732
- package/dist/esm/index.js +6 -5
- package/dist/types/components/mui-prompt-preview/index.d.ts +1 -0
- package/dist/types/components/mui-slide-frame/index.d.ts +7 -0
- package/dist/types/index.d.ts +2 -1
- package/package.json +11 -11
- package/dist/esm/components/mui-markdown/index.js +0 -149
- package/dist/types/components/mui-agent-bubble/index.d.ts +0 -1
- package/dist/types/components/mui-agent-prompt/index.d.ts +0 -1
- package/dist/types/components/mui-markdown/doc.d.ts +0 -2
- package/dist/types/components/mui-markdown/index.d.ts +0 -1
- package/dist/types/components/mui-prompt-chip/index.d.ts +0 -1
- package/dist/types/components/mui-slat/accessory/index.d.ts +0 -1
- package/dist/types/tokens/js/mui-brand.d.ts +0 -140
- /package/dist/types/components/{mui-agent-bubble → mui-skeleton}/doc.d.ts +0 -0
- /package/dist/types/components/{mui-form-group-horizontal → mui-skeleton}/index.d.ts +0 -0
- /package/dist/types/components/{mui-agent-prompt → mui-slide-frame}/doc.d.ts +0 -0
|
@@ -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",
|
|
@@ -42,7 +12,7 @@
|
|
|
42
12
|
"type": {
|
|
43
13
|
"text": "MuiDocs"
|
|
44
14
|
},
|
|
45
|
-
"default": "{ AddOn: { title: \"Add on\", description: \"Enhances form inputs by displaying supplementary information such as units, prefixes, or suffixes adjacent to the input field. Add Ons improve clarity by providing context without adding clutter to the input area.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/3GH67kZLZAjADf3kTIoSV3/82a1ab87bc13b25e6dc1e81c81f69532/AddOn_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=948-4065&t=rIU93UcpsUxOVNN9-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/inputs-addon--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-addon/index.ts\"], website: [\"https://muibook.com/#/addon\"], guides: [\"https://guides.muibook.com/add-on\"], usage: { list: [ \"Use to display units (e.g. %, $, kg) or fixed prefixes/suffixes alongside inputs.\", \"Ideal for improving data entry accuracy and user understanding.\", \"Ensure Add Ons are visually distinct but do not overpower the main input content.\", \"Avoid overcrowding inputs with multiple Add Ons to maintain clarity.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { list: [ \"Add-on placed before the Input Field\", \"Add-on placed after the Input Field\", \"Short text, an icon, or both to support input context.\", ], image: \"https://images.ctfassets.net/i5uwscj4pkk2/13NH06kdHIzm8hDGNBgihx/f5715279e5ab5e2ce6bfd5d38f5f2d1d/Add_on_-_Anatomy.png\", }, variants: { items: [ { key: \"text\", title: \"Text\", description: \"Use for units, currency, or short static labels.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/VfAoQuP8u7icg5s6Shwd6/f5f838a3ffda0d0839ef062af308fc97/text-variant.png\", }, { key: \"icon\", title: \"Icon\", description: \"Use for symbolic cues or clarification of the input’s intent.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1LY5GdVijhp7bpfRs3WyFc/6d1708bd25496d7f33acba796b8b2aa6/icon-variant.png\", }, ], }, related: { items: [ { name: \"Field\", link: \"https://guides.muibook.com/field\" }, { name: \"Input\", link: \"https://guides.muibook.com/input\" }, { name: \"Select\", link: \"https://guides.muibook.com/select\" }, { name: \"File Upload\", link: \"https://guides.muibook.com/file-upload\" }, { name: \"Icons\", link: \"https://guides.muibook.com/icons\" }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [ { description: \"\", image: \"\" }, { description: \"\", image: \"\" }, ], dontContent: [{ description: \"\" }, { description: \"\" }], }, ], compositions: { description: \"\", items: [ { key: \"\", name: \"\", description: \"\", image: \"\", }, ], }, behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
|
|
15
|
+
"default": "{ AddOn: { title: \"Add on\", description: \"Enhances form inputs by displaying supplementary information such as units, prefixes, or suffixes adjacent to the input field. Add Ons improve clarity by providing context without adding clutter to the input area.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/3GH67kZLZAjADf3kTIoSV3/82a1ab87bc13b25e6dc1e81c81f69532/AddOn_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=948-4065&t=rIU93UcpsUxOVNN9-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/inputs-addon--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-addon/index.ts\"], website: [\"https://muibook.com/#/addon\"], guides: [\"https://guides.muibook.com/add-on\"], usage: { list: [ \"Use to display units (e.g. %, $, kg) or fixed prefixes/suffixes alongside inputs.\", \"Ideal for improving data entry accuracy and user understanding.\", \"Use size (x-small to large) to match compact and dense input layouts.\", \"Ensure Add Ons are visually distinct but do not overpower the main input content.\", \"Avoid overcrowding inputs with multiple Add Ons to maintain clarity.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { list: [ \"Add-on placed before the Input Field\", \"Add-on placed after the Input Field\", \"Short text, an icon, or both to support input context.\", ], image: \"https://images.ctfassets.net/i5uwscj4pkk2/13NH06kdHIzm8hDGNBgihx/f5715279e5ab5e2ce6bfd5d38f5f2d1d/Add_on_-_Anatomy.png\", }, variants: { items: [ { key: \"text\", title: \"Text\", description: \"Use for units, currency, or short static labels.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/VfAoQuP8u7icg5s6Shwd6/f5f838a3ffda0d0839ef062af308fc97/text-variant.png\", }, { key: \"icon\", title: \"Icon\", description: \"Use for symbolic cues or clarification of the input’s intent.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1LY5GdVijhp7bpfRs3WyFc/6d1708bd25496d7f33acba796b8b2aa6/icon-variant.png\", }, ], }, related: { items: [ { name: \"Field\", link: \"https://guides.muibook.com/field\" }, { name: \"Input\", link: \"https://guides.muibook.com/input\" }, { name: \"Select\", link: \"https://guides.muibook.com/select\" }, { name: \"File Upload\", link: \"https://guides.muibook.com/file-upload\" }, { name: \"Icons\", link: \"https://guides.muibook.com/icons\" }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [ { description: \"\", image: \"\" }, { description: \"\", image: \"\" }, ], dontContent: [{ description: \"\" }, { description: \"\" }], }, ], compositions: { description: \"\", items: [ { key: \"\", name: \"\", description: \"\", image: \"\", }, ], }, behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
|
|
46
16
|
}
|
|
47
17
|
],
|
|
48
18
|
"exports": [
|
|
@@ -65,6 +35,11 @@
|
|
|
65
35
|
"description": "",
|
|
66
36
|
"name": "MuiAddon",
|
|
67
37
|
"members": [
|
|
38
|
+
{
|
|
39
|
+
"kind": "method",
|
|
40
|
+
"name": "syncSlottedContent",
|
|
41
|
+
"privacy": "private"
|
|
42
|
+
},
|
|
68
43
|
{
|
|
69
44
|
"kind": "method",
|
|
70
45
|
"name": "render"
|
|
@@ -73,6 +48,9 @@
|
|
|
73
48
|
"attributes": [
|
|
74
49
|
{
|
|
75
50
|
"name": "slot"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"name": "size"
|
|
76
54
|
}
|
|
77
55
|
],
|
|
78
56
|
"superclass": {
|
|
@@ -95,7 +73,7 @@
|
|
|
95
73
|
},
|
|
96
74
|
{
|
|
97
75
|
"kind": "javascript-module",
|
|
98
|
-
"path": "src/components/mui-
|
|
76
|
+
"path": "src/components/mui-accordion/doc.ts",
|
|
99
77
|
"declarations": [
|
|
100
78
|
{
|
|
101
79
|
"kind": "variable",
|
|
@@ -103,7 +81,7 @@
|
|
|
103
81
|
"type": {
|
|
104
82
|
"text": "MuiDocs"
|
|
105
83
|
},
|
|
106
|
-
"default": "{
|
|
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\" }, ], }, }, }"
|
|
107
85
|
}
|
|
108
86
|
],
|
|
109
87
|
"exports": [
|
|
@@ -112,84 +90,155 @@
|
|
|
112
90
|
"name": "muiDocs",
|
|
113
91
|
"declaration": {
|
|
114
92
|
"name": "muiDocs",
|
|
115
|
-
"module": "src/components/mui-
|
|
93
|
+
"module": "src/components/mui-accordion/doc.ts"
|
|
116
94
|
}
|
|
117
95
|
}
|
|
118
96
|
]
|
|
119
97
|
},
|
|
120
98
|
{
|
|
121
99
|
"kind": "javascript-module",
|
|
122
|
-
"path": "src/components/mui-
|
|
100
|
+
"path": "src/components/mui-accordion/index.ts",
|
|
101
|
+
"declarations": [],
|
|
102
|
+
"exports": []
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"kind": "javascript-module",
|
|
106
|
+
"path": "src/components/mui-alert/doc.ts",
|
|
107
|
+
"declarations": [
|
|
108
|
+
{
|
|
109
|
+
"kind": "variable",
|
|
110
|
+
"name": "muiDocs",
|
|
111
|
+
"type": {
|
|
112
|
+
"text": "MuiDocs"
|
|
113
|
+
},
|
|
114
|
+
"default": "{ Alert: { title: \"Alert\", description: \"Alerts surface meaningful system messages related to the users' current task or action.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/7GnGBCbpMF3wyjCDC06hX7/24739b86a907d15400fe8e9e240a9619/Alert_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=3-4444&t=ZA9uH4LK37tSuk6r-1\", ], guides: [\"https://guides.muibook.com/alert\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-alert/index.ts\"], storybook: [\"https://stories.muibook.com/?path=/docs/feedback-alert--docs\"], website: [\"https://muibook.com/#/alert\"], usage: { list: [ \"Success: Confirm completed actions such as form submissions, data saves, or task completion.\", \"Info: For sharing new features, updates, contextual tips, or non-urgent system statuses.\", \"Warning: Alert users to unsaved changes, deprecated features, or risky actions.\", \"Error: Alert users of form validation issues, system failures, or tasks that need attention.\", ], }, accessibility: { designerList: [ \"ARIA-live is built in, using POLITE + ASSERTIVE for screen readers.\", \"The role is set to ALERT for immediate screen reader feedback.\", ], engineerList: [ \"ARIA-live is built in, using POLITE + ASSERTIVE for screen readers.\", \"The role is set to ALERT for immediate screen reader feedback.\", ], }, anatomy: { list: [ \"Preset icon: Communicates the type of alert visually. E.g. info, success, warning, error.\", \"Preset title: Provides a clear, predefined heading that reflects the alert’s purpose.\", \"Customisable text: Allows for specific details or guidance relevant to the situation.\", ], image: \"https://images.ctfassets.net/i5uwscj4pkk2/17j3DxAFlne6rvMi6QUXqZ/aedab2c349c8f8b0a8414b41132cda51/Alert_-_Anatomy.png\", }, variants: { items: [ { key: \"success\", title: \"Success\", description: \"Indicates that an operation or action has been completed successfully. Use this variant for scenarios such as form submissions processed without errors, successful data updates or saves, and confirmations of completed tasks or actions. For accessibility, this variant uses an aria-live value of polite.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/2EbJsP3GZ98WPOiF4PbGh2/bc3e020b37b73f949be745e4e26b6e5a/alert-success.png\", }, { key: \"info\", title: \"Info\", description: \"Provides general information or updates that are helpful but not critical. This variant is used for announcing new features or updates, offering contextual information or tips, and informing users about non-urgent system statuses. For accessibility, it uses an aria-live value of polite.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1SDh1JVNouysPHylu9lTUj/6793dd8aa854d08045c2159b450b762c/alert-info.png\", }, { key: \"warning\", title: \"Warning\", description: \"Alerts users to potential issues or situations that require caution. Common use cases include notifying about unsaved changes, indicating deprecated features or upcoming changes, and highlighting actions that may have unintended consequences. For accessibility, this variant uses an aria-live value of assertive.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/2zympGRb3wlU5P36FsKWsL/dd9bde33646345e65d5bff505d512e22/alert-warning.png\", }, { key: \"error\", title: \"Error\", description: \"Indicates that an error has occurred, requiring user attention or action. This variant is typically used for form validation errors, system failures or exceptions, and failed operations or transactions. For accessibility, it uses an aria-live value of assertive.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/zOH2Xinum4ZjIv3qp6LJM/180a2306dd624b6bc2fa55c0ad81ea0e/alert-error.png\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"ai-playground-error-1\", name: \"AI Playground (Error)\", description: \"Demonstrates the Muiplay AI Playground showing a floating error positioned close to the field where a prompt is required to generate a task.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/40RfRPVAN9dvWO7UFuIiUC/52de3cffd69a5bcc2e457f8de03bb9cf/Play-Alert-Composition.png\", }, { key: \"ai-playground-error-2\", name: \"AI Playground (Error)\", description: \"Demonstrates the Muiplay AI Playground showing a floating error positioned close to the field where a prompt is required to generate a task.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/40RfRPVAN9dvWO7UFuIiUC/52de3cffd69a5bcc2e457f8de03bb9cf/Play-Alert-Composition.png\", }, ], }, related: { items: [ { name: \"Message\", link: \"https://guides.muibook.com/message\" }, { name: \"Link\", link: \"https://guides.muibook.com/link\" }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [ { description: \"\", image: \"\" }, { description: \"\", image: \"\" }, ], dontContent: [{ description: \"\" }, { description: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
|
|
115
|
+
}
|
|
116
|
+
],
|
|
117
|
+
"exports": [
|
|
118
|
+
{
|
|
119
|
+
"kind": "js",
|
|
120
|
+
"name": "muiDocs",
|
|
121
|
+
"declaration": {
|
|
122
|
+
"name": "muiDocs",
|
|
123
|
+
"module": "src/components/mui-alert/doc.ts"
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
]
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"kind": "javascript-module",
|
|
130
|
+
"path": "src/components/mui-alert/index.ts",
|
|
123
131
|
"declarations": [
|
|
124
132
|
{
|
|
125
133
|
"kind": "class",
|
|
126
134
|
"description": "",
|
|
127
|
-
"name": "
|
|
135
|
+
"name": "MuiAlert",
|
|
128
136
|
"members": [
|
|
129
137
|
{
|
|
130
138
|
"kind": "field",
|
|
131
|
-
"name": "
|
|
139
|
+
"name": "actionSlotListener",
|
|
132
140
|
"type": {
|
|
133
|
-
"text": "
|
|
141
|
+
"text": "(() => void) | null"
|
|
134
142
|
},
|
|
135
|
-
"privacy": "private"
|
|
143
|
+
"privacy": "private",
|
|
144
|
+
"default": "null"
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"kind": "field",
|
|
148
|
+
"name": "contentSlotListener",
|
|
149
|
+
"type": {
|
|
150
|
+
"text": "(() => void) | null"
|
|
151
|
+
},
|
|
152
|
+
"privacy": "private",
|
|
153
|
+
"default": "null"
|
|
136
154
|
},
|
|
137
155
|
{
|
|
138
156
|
"kind": "method",
|
|
139
|
-
"name": "
|
|
157
|
+
"name": "render"
|
|
140
158
|
},
|
|
141
159
|
{
|
|
142
160
|
"kind": "method",
|
|
143
|
-
"name": "
|
|
161
|
+
"name": "getAlertSize",
|
|
162
|
+
"privacy": "private",
|
|
163
|
+
"return": {
|
|
164
|
+
"type": {
|
|
165
|
+
"text": "AlertSize"
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
"kind": "method",
|
|
171
|
+
"name": "getInlineContentSize",
|
|
172
|
+
"privacy": "private",
|
|
173
|
+
"return": {
|
|
174
|
+
"type": {
|
|
175
|
+
"text": "string"
|
|
176
|
+
}
|
|
177
|
+
},
|
|
144
178
|
"parameters": [
|
|
145
179
|
{
|
|
146
|
-
"name": "
|
|
180
|
+
"name": "size",
|
|
147
181
|
"type": {
|
|
148
|
-
"text": "
|
|
182
|
+
"text": "AlertSize"
|
|
149
183
|
}
|
|
150
184
|
}
|
|
151
185
|
]
|
|
152
186
|
},
|
|
153
187
|
{
|
|
154
188
|
"kind": "method",
|
|
155
|
-
"name": "
|
|
189
|
+
"name": "getActionControlSize",
|
|
190
|
+
"privacy": "private",
|
|
191
|
+
"return": {
|
|
192
|
+
"type": {
|
|
193
|
+
"text": "string"
|
|
194
|
+
}
|
|
195
|
+
},
|
|
196
|
+
"parameters": [
|
|
197
|
+
{
|
|
198
|
+
"name": "size",
|
|
199
|
+
"type": {
|
|
200
|
+
"text": "AlertSize"
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
]
|
|
156
204
|
},
|
|
157
205
|
{
|
|
158
206
|
"kind": "method",
|
|
159
|
-
"name": "
|
|
207
|
+
"name": "setupActionSlot"
|
|
208
|
+
},
|
|
209
|
+
{
|
|
210
|
+
"kind": "method",
|
|
211
|
+
"name": "setupContentSlot"
|
|
160
212
|
}
|
|
161
213
|
],
|
|
162
214
|
"attributes": [
|
|
163
215
|
{
|
|
164
|
-
"name": "
|
|
165
|
-
},
|
|
166
|
-
{
|
|
167
|
-
"name": "image"
|
|
216
|
+
"name": "variant"
|
|
168
217
|
},
|
|
169
218
|
{
|
|
170
|
-
"name": "
|
|
219
|
+
"name": "label"
|
|
171
220
|
},
|
|
172
221
|
{
|
|
173
|
-
"name": "
|
|
222
|
+
"name": "hide-label"
|
|
174
223
|
},
|
|
175
224
|
{
|
|
176
|
-
"name": "
|
|
225
|
+
"name": "size"
|
|
177
226
|
}
|
|
178
227
|
],
|
|
179
228
|
"superclass": {
|
|
180
229
|
"name": "HTMLElement"
|
|
181
230
|
},
|
|
182
|
-
"tagName": "mui-
|
|
231
|
+
"tagName": "mui-alert",
|
|
183
232
|
"customElement": true
|
|
184
233
|
}
|
|
185
234
|
],
|
|
186
235
|
"exports": [
|
|
187
236
|
{
|
|
188
237
|
"kind": "custom-element-definition",
|
|
189
|
-
"name": "mui-
|
|
238
|
+
"name": "mui-alert",
|
|
190
239
|
"declaration": {
|
|
191
|
-
"name": "
|
|
192
|
-
"module": "src/components/mui-
|
|
240
|
+
"name": "MuiAlert",
|
|
241
|
+
"module": "src/components/mui-alert/index.ts"
|
|
193
242
|
}
|
|
194
243
|
}
|
|
195
244
|
]
|
|
@@ -354,7 +403,7 @@
|
|
|
354
403
|
},
|
|
355
404
|
{
|
|
356
405
|
"kind": "javascript-module",
|
|
357
|
-
"path": "src/components/mui-
|
|
406
|
+
"path": "src/components/mui-avatar/doc.ts",
|
|
358
407
|
"declarations": [
|
|
359
408
|
{
|
|
360
409
|
"kind": "variable",
|
|
@@ -362,7 +411,7 @@
|
|
|
362
411
|
"type": {
|
|
363
412
|
"text": "MuiDocs"
|
|
364
413
|
},
|
|
365
|
-
"default": "{
|
|
414
|
+
"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: [\"\"], }, }, }"
|
|
366
415
|
}
|
|
367
416
|
],
|
|
368
417
|
"exports": [
|
|
@@ -371,125 +420,84 @@
|
|
|
371
420
|
"name": "muiDocs",
|
|
372
421
|
"declaration": {
|
|
373
422
|
"name": "muiDocs",
|
|
374
|
-
"module": "src/components/mui-
|
|
423
|
+
"module": "src/components/mui-avatar/doc.ts"
|
|
375
424
|
}
|
|
376
425
|
}
|
|
377
426
|
]
|
|
378
427
|
},
|
|
379
428
|
{
|
|
380
429
|
"kind": "javascript-module",
|
|
381
|
-
"path": "src/components/mui-
|
|
430
|
+
"path": "src/components/mui-avatar/index.ts",
|
|
382
431
|
"declarations": [
|
|
383
432
|
{
|
|
384
433
|
"kind": "class",
|
|
385
434
|
"description": "",
|
|
386
|
-
"name": "
|
|
435
|
+
"name": "MuiAvatar",
|
|
387
436
|
"members": [
|
|
388
437
|
{
|
|
389
438
|
"kind": "field",
|
|
390
|
-
"name": "
|
|
391
|
-
"type": {
|
|
392
|
-
"text": "(() => void) | null"
|
|
393
|
-
},
|
|
394
|
-
"privacy": "private",
|
|
395
|
-
"default": "null"
|
|
396
|
-
},
|
|
397
|
-
{
|
|
398
|
-
"kind": "field",
|
|
399
|
-
"name": "contentSlotListener",
|
|
439
|
+
"name": "_imageFailed",
|
|
400
440
|
"type": {
|
|
401
|
-
"text": "
|
|
441
|
+
"text": "boolean | undefined"
|
|
402
442
|
},
|
|
403
|
-
"privacy": "private"
|
|
404
|
-
"default": "null"
|
|
405
|
-
},
|
|
406
|
-
{
|
|
407
|
-
"kind": "method",
|
|
408
|
-
"name": "render"
|
|
409
|
-
},
|
|
410
|
-
{
|
|
411
|
-
"kind": "method",
|
|
412
|
-
"name": "getAlertSize",
|
|
413
|
-
"privacy": "private",
|
|
414
|
-
"return": {
|
|
415
|
-
"type": {
|
|
416
|
-
"text": "AlertSize"
|
|
417
|
-
}
|
|
418
|
-
}
|
|
443
|
+
"privacy": "private"
|
|
419
444
|
},
|
|
420
445
|
{
|
|
421
446
|
"kind": "method",
|
|
422
|
-
"name": "
|
|
423
|
-
"privacy": "private",
|
|
424
|
-
"return": {
|
|
425
|
-
"type": {
|
|
426
|
-
"text": "string"
|
|
427
|
-
}
|
|
428
|
-
},
|
|
429
|
-
"parameters": [
|
|
430
|
-
{
|
|
431
|
-
"name": "size",
|
|
432
|
-
"type": {
|
|
433
|
-
"text": "AlertSize"
|
|
434
|
-
}
|
|
435
|
-
}
|
|
436
|
-
]
|
|
447
|
+
"name": "hasSlottedContent"
|
|
437
448
|
},
|
|
438
449
|
{
|
|
439
450
|
"kind": "method",
|
|
440
|
-
"name": "
|
|
441
|
-
"privacy": "private",
|
|
442
|
-
"return": {
|
|
443
|
-
"type": {
|
|
444
|
-
"text": "string"
|
|
445
|
-
}
|
|
446
|
-
},
|
|
451
|
+
"name": "getInitials",
|
|
447
452
|
"parameters": [
|
|
448
453
|
{
|
|
449
|
-
"name": "
|
|
454
|
+
"name": "label",
|
|
450
455
|
"type": {
|
|
451
|
-
"text": "
|
|
456
|
+
"text": "string | null"
|
|
452
457
|
}
|
|
453
458
|
}
|
|
454
459
|
]
|
|
455
460
|
},
|
|
456
461
|
{
|
|
457
462
|
"kind": "method",
|
|
458
|
-
"name": "
|
|
463
|
+
"name": "getBackgroundCSS"
|
|
459
464
|
},
|
|
460
465
|
{
|
|
461
466
|
"kind": "method",
|
|
462
|
-
"name": "
|
|
467
|
+
"name": "render"
|
|
463
468
|
}
|
|
464
469
|
],
|
|
465
470
|
"attributes": [
|
|
466
|
-
{
|
|
467
|
-
"name": "variant"
|
|
468
|
-
},
|
|
469
471
|
{
|
|
470
472
|
"name": "label"
|
|
471
473
|
},
|
|
472
474
|
{
|
|
473
|
-
"name": "
|
|
475
|
+
"name": "image"
|
|
474
476
|
},
|
|
475
477
|
{
|
|
476
478
|
"name": "size"
|
|
479
|
+
},
|
|
480
|
+
{
|
|
481
|
+
"name": "background"
|
|
482
|
+
},
|
|
483
|
+
{
|
|
484
|
+
"name": "background-color"
|
|
477
485
|
}
|
|
478
486
|
],
|
|
479
487
|
"superclass": {
|
|
480
488
|
"name": "HTMLElement"
|
|
481
489
|
},
|
|
482
|
-
"tagName": "mui-
|
|
490
|
+
"tagName": "mui-avatar",
|
|
483
491
|
"customElement": true
|
|
484
492
|
}
|
|
485
493
|
],
|
|
486
494
|
"exports": [
|
|
487
495
|
{
|
|
488
496
|
"kind": "custom-element-definition",
|
|
489
|
-
"name": "mui-
|
|
497
|
+
"name": "mui-avatar",
|
|
490
498
|
"declaration": {
|
|
491
|
-
"name": "
|
|
492
|
-
"module": "src/components/mui-
|
|
499
|
+
"name": "MuiAvatar",
|
|
500
|
+
"module": "src/components/mui-avatar/index.ts"
|
|
493
501
|
}
|
|
494
502
|
}
|
|
495
503
|
]
|
|
@@ -2058,7 +2066,7 @@
|
|
|
2058
2066
|
"type": {
|
|
2059
2067
|
"text": "MuiDocs"
|
|
2060
2068
|
},
|
|
2061
|
-
"default": "{ Field: { title: \"Field\", description: \"A Field allows users to input or select data. It includes a label, an optional required indicator, and supports validation feedback to communicate errors or requirements.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/1HqTclvMBXW2jyvUwLummp/ac1dc5c5a4c0596c2122b3f4bc06d0be/Field_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=112-620&t=GMqx21isUVAMpLJp-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/inputs-field--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-field/index.ts\"], website: [\"https://muibook.com/#/field\"], guides: [\"https://guides.muibook.com/field\"], usage: { list: [ \"Acts as a parent wrapper for form elements such as Input, Select, Textarea, and Radio Group.\", \"Use size='x-small|small|medium|large' on Field to
|
|
2069
|
+
"default": "{ Field: { title: \"Field\", description: \"A Field allows users to input or select data. It includes a label, an optional required indicator, and supports validation feedback to communicate errors or requirements.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/1HqTclvMBXW2jyvUwLummp/ac1dc5c5a4c0596c2122b3f4bc06d0be/Field_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=112-620&t=GMqx21isUVAMpLJp-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/inputs-field--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-field/index.ts\"], website: [\"https://muibook.com/#/field\"], guides: [\"https://guides.muibook.com/field\"], usage: { list: [ \"Acts as a parent wrapper for form elements such as Input, Select, Textarea, and Radio Group.\", \"Use size='x-small|small|medium|large' on Field and let it inherit size to the slotted control.\", \"Use slot='message' for rich helper/validation content (for example, mui-form-message with icons); Field inherits size to message content.\", \"Use optional on Field and let it inherit to the slotted form control label treatment.\", \"Inside Form Group, keep helper/validation content attached to each related Field via slot='message'.\", \"Use clear, descriptive labels so users understand the purpose of the form field.\", \"Mark required fields with an asterisk (*) and validate input before submission.\", \"Display validation messages in real-time or upon submission to guide corrections.\", \"Helper and supporting copy should be intentionally knocked back so form controls remain visually primary.\", ], }, accessibility: { designerList: [ \"A visible or hidden label is required to describe the input’s purpose for screen readers.\", \"Using hide-label keeps the label accessible via aria-label while hiding it visually.\", \"The label and input are linked using for and id; an id is auto-generated if not provided.\", \"Clear focus styles are shown to support keyboard navigation.\", ], 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 form element 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.\", ], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/5nW3j8xOoMpTGLTljUAqPI/6ea6a47139a044feaa63697a40753cf2/Field_-_Anatomy.png\", list: [ \"Label: The Field component supports a label, useful for grouping multiple inputs or when applying the label at the parent level is preferred.\", \"Message: Supports rendering static text or dynamic messages that reflect the field’s state, such as success, warning, or error.\", \"Slot: Allows insertion of related form components like Input or Select as children within the Field.\", \"Message Slot: Supports custom helper content using slot='message'.\", ], }, variants: { items: [ { key: \"default\", title: \"Default\", description: \"Standard field with label and no message. Used when no additional feedback is required.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/7rycX2tj569EplbANsiQmA/3c4f173807e9a3f40750a49e31612285/default.png\", }, { key: \"default-with-message\", title: \"Default w/ Message\", description: \"Includes supporting text beneath the field. Use to provide guidance, context, or character limits.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1krnirIt4OKRZTkYRqXR2T/bbbb42a4afc3873407ceeb78e0fdb801/default-message.png\", }, { key: \"optional-with-message\", title: \"Optional w/ Message\", description: \"Use for non-blocking helper context. The optional token keeps emphasis low while preserving clarity.\", image: \"\", }, { key: \"success-with-message\", title: \"Success w/ Message\", description: \"Indicates a successful validation state. Use to confirm correct input, such as valid formatting or completion.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/kSXvQ6D4hvuP3c9bC0ZUa/319272dc75f0b08493753a49c0fbff75/success-message.png\", }, { key: \"warning-with-message\", title: \"Warning w/ Message\", description: \"Indicates a non-blocking issue. Use when input may be acceptable but needs user attention.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/5YIUAUlqh3ZfzzDvq5YgN5/7bb42ed1049af149719796b5cfb1a949/warning-message.png\", }, { key: \"error-with-message\", title: \"Error w/ Message\", description: \"Displays a validation error. Use when input is invalid or required and has not been completed.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/4yYS7D87CmJmnOVh75fwMc/c000af5c0ce3cb42a10c8e18b41d6312/error-message.png\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { 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: \"Input\", link: \"https://guides.muibook.com/input\" }, { 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: [\"\"], }, }, }"
|
|
2062
2070
|
}
|
|
2063
2071
|
],
|
|
2064
2072
|
"exports": [
|
|
@@ -2101,6 +2109,10 @@
|
|
|
2101
2109
|
"kind": "field",
|
|
2102
2110
|
"name": "size"
|
|
2103
2111
|
},
|
|
2112
|
+
{
|
|
2113
|
+
"kind": "field",
|
|
2114
|
+
"name": "optional"
|
|
2115
|
+
},
|
|
2104
2116
|
{
|
|
2105
2117
|
"kind": "method",
|
|
2106
2118
|
"name": "passAttributesToChild"
|
|
@@ -2109,6 +2121,10 @@
|
|
|
2109
2121
|
"kind": "method",
|
|
2110
2122
|
"name": "renderMessage"
|
|
2111
2123
|
},
|
|
2124
|
+
{
|
|
2125
|
+
"kind": "method",
|
|
2126
|
+
"name": "syncMessageSlotSizing"
|
|
2127
|
+
},
|
|
2112
2128
|
{
|
|
2113
2129
|
"kind": "method",
|
|
2114
2130
|
"name": "bindSlotEvents"
|
|
@@ -2134,6 +2150,9 @@
|
|
|
2134
2150
|
},
|
|
2135
2151
|
{
|
|
2136
2152
|
"name": "size"
|
|
2153
|
+
},
|
|
2154
|
+
{
|
|
2155
|
+
"name": "optional"
|
|
2137
2156
|
}
|
|
2138
2157
|
],
|
|
2139
2158
|
"superclass": {
|
|
@@ -2681,68 +2700,6 @@
|
|
|
2681
2700
|
}
|
|
2682
2701
|
]
|
|
2683
2702
|
},
|
|
2684
|
-
{
|
|
2685
|
-
"kind": "javascript-module",
|
|
2686
|
-
"path": "src/components/mui-form-section-footer/doc.ts",
|
|
2687
|
-
"declarations": [
|
|
2688
|
-
{
|
|
2689
|
-
"kind": "variable",
|
|
2690
|
-
"name": "muiDocs",
|
|
2691
|
-
"type": {
|
|
2692
|
-
"text": "MuiDocs"
|
|
2693
|
-
},
|
|
2694
|
-
"default": "{ FormSectionFooter: { title: \"Form Section Footer\", description: \"Footer wrapper for Form Section actions and divider patterns.\", hero: [\"\"], figma: [\"\"], storybook: [\"https://stories.muibook.com\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-form-section-footer/index.ts\"], website: [\"https://muibook.com/#/form-section-footer\"], guides: [\"https://guides.muibook.com/form-section\"], usage: { list: [ \"Use in slot='footer' on mui-form-section for consistent footer spacing.\", \"Place mui-rule first when you need a visual separation before actions.\", \"Keep responsive action layouts inside the footer wrapper.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"Footer actions remain keyboard accessible based on slotted controls.\"], }, anatomy: { image: \"\", list: [\"Footer wrapper\", \"Optional divider (mui-rule)\", \"Action content\"], }, variants: { items: [{ key: \"\", title: \"\", description: \"\", image: \"\" }] }, compositions: { description: \"\", items: [] }, related: { items: [ { name: \"Form Section\", link: \"https://guides.muibook.com/form-section\" }, { name: \"Form Group\", link: \"https://guides.muibook.com/form-group\" }, ], }, rules: [{ heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }] }], behaviour: { list: [\"\"] }, writing: { list: [\"\"] }, }, }"
|
|
2695
|
-
}
|
|
2696
|
-
],
|
|
2697
|
-
"exports": [
|
|
2698
|
-
{
|
|
2699
|
-
"kind": "js",
|
|
2700
|
-
"name": "muiDocs",
|
|
2701
|
-
"declaration": {
|
|
2702
|
-
"name": "muiDocs",
|
|
2703
|
-
"module": "src/components/mui-form-section-footer/doc.ts"
|
|
2704
|
-
}
|
|
2705
|
-
}
|
|
2706
|
-
]
|
|
2707
|
-
},
|
|
2708
|
-
{
|
|
2709
|
-
"kind": "javascript-module",
|
|
2710
|
-
"path": "src/components/mui-form-section-footer/index.ts",
|
|
2711
|
-
"declarations": [
|
|
2712
|
-
{
|
|
2713
|
-
"kind": "class",
|
|
2714
|
-
"description": "",
|
|
2715
|
-
"name": "MuiFormSectionFooter",
|
|
2716
|
-
"members": [
|
|
2717
|
-
{
|
|
2718
|
-
"kind": "field",
|
|
2719
|
-
"name": "onSlotChange",
|
|
2720
|
-
"privacy": "private"
|
|
2721
|
-
},
|
|
2722
|
-
{
|
|
2723
|
-
"kind": "method",
|
|
2724
|
-
"name": "render",
|
|
2725
|
-
"privacy": "private"
|
|
2726
|
-
}
|
|
2727
|
-
],
|
|
2728
|
-
"superclass": {
|
|
2729
|
-
"name": "HTMLElement"
|
|
2730
|
-
},
|
|
2731
|
-
"tagName": "mui-form-section-footer",
|
|
2732
|
-
"customElement": true
|
|
2733
|
-
}
|
|
2734
|
-
],
|
|
2735
|
-
"exports": [
|
|
2736
|
-
{
|
|
2737
|
-
"kind": "custom-element-definition",
|
|
2738
|
-
"name": "mui-form-section-footer",
|
|
2739
|
-
"declaration": {
|
|
2740
|
-
"name": "MuiFormSectionFooter",
|
|
2741
|
-
"module": "src/components/mui-form-section-footer/index.ts"
|
|
2742
|
-
}
|
|
2743
|
-
}
|
|
2744
|
-
]
|
|
2745
|
-
},
|
|
2746
2703
|
{
|
|
2747
2704
|
"kind": "javascript-module",
|
|
2748
2705
|
"path": "src/components/mui-grid/doc.ts",
|
|
@@ -2854,6 +2811,68 @@
|
|
|
2854
2811
|
}
|
|
2855
2812
|
]
|
|
2856
2813
|
},
|
|
2814
|
+
{
|
|
2815
|
+
"kind": "javascript-module",
|
|
2816
|
+
"path": "src/components/mui-form-section-footer/doc.ts",
|
|
2817
|
+
"declarations": [
|
|
2818
|
+
{
|
|
2819
|
+
"kind": "variable",
|
|
2820
|
+
"name": "muiDocs",
|
|
2821
|
+
"type": {
|
|
2822
|
+
"text": "MuiDocs"
|
|
2823
|
+
},
|
|
2824
|
+
"default": "{ FormSectionFooter: { title: \"Form Section Footer\", description: \"Footer wrapper for Form Section actions and divider patterns.\", hero: [\"\"], figma: [\"\"], storybook: [\"https://stories.muibook.com\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-form-section-footer/index.ts\"], website: [\"https://muibook.com/#/form-section-footer\"], guides: [\"https://guides.muibook.com/form-section\"], usage: { list: [ \"Use in slot='footer' on mui-form-section for consistent footer spacing.\", \"Place mui-rule first when you need a visual separation before actions.\", \"Keep responsive action layouts inside the footer wrapper.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"Footer actions remain keyboard accessible based on slotted controls.\"], }, anatomy: { image: \"\", list: [\"Footer wrapper\", \"Optional divider (mui-rule)\", \"Action content\"], }, variants: { items: [{ key: \"\", title: \"\", description: \"\", image: \"\" }] }, compositions: { description: \"\", items: [] }, related: { items: [ { name: \"Form Section\", link: \"https://guides.muibook.com/form-section\" }, { name: \"Form Group\", link: \"https://guides.muibook.com/form-group\" }, ], }, rules: [{ heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }] }], behaviour: { list: [\"\"] }, writing: { list: [\"\"] }, }, }"
|
|
2825
|
+
}
|
|
2826
|
+
],
|
|
2827
|
+
"exports": [
|
|
2828
|
+
{
|
|
2829
|
+
"kind": "js",
|
|
2830
|
+
"name": "muiDocs",
|
|
2831
|
+
"declaration": {
|
|
2832
|
+
"name": "muiDocs",
|
|
2833
|
+
"module": "src/components/mui-form-section-footer/doc.ts"
|
|
2834
|
+
}
|
|
2835
|
+
}
|
|
2836
|
+
]
|
|
2837
|
+
},
|
|
2838
|
+
{
|
|
2839
|
+
"kind": "javascript-module",
|
|
2840
|
+
"path": "src/components/mui-form-section-footer/index.ts",
|
|
2841
|
+
"declarations": [
|
|
2842
|
+
{
|
|
2843
|
+
"kind": "class",
|
|
2844
|
+
"description": "",
|
|
2845
|
+
"name": "MuiFormSectionFooter",
|
|
2846
|
+
"members": [
|
|
2847
|
+
{
|
|
2848
|
+
"kind": "field",
|
|
2849
|
+
"name": "onSlotChange",
|
|
2850
|
+
"privacy": "private"
|
|
2851
|
+
},
|
|
2852
|
+
{
|
|
2853
|
+
"kind": "method",
|
|
2854
|
+
"name": "render",
|
|
2855
|
+
"privacy": "private"
|
|
2856
|
+
}
|
|
2857
|
+
],
|
|
2858
|
+
"superclass": {
|
|
2859
|
+
"name": "HTMLElement"
|
|
2860
|
+
},
|
|
2861
|
+
"tagName": "mui-form-section-footer",
|
|
2862
|
+
"customElement": true
|
|
2863
|
+
}
|
|
2864
|
+
],
|
|
2865
|
+
"exports": [
|
|
2866
|
+
{
|
|
2867
|
+
"kind": "custom-element-definition",
|
|
2868
|
+
"name": "mui-form-section-footer",
|
|
2869
|
+
"declaration": {
|
|
2870
|
+
"name": "MuiFormSectionFooter",
|
|
2871
|
+
"module": "src/components/mui-form-section-footer/index.ts"
|
|
2872
|
+
}
|
|
2873
|
+
}
|
|
2874
|
+
]
|
|
2875
|
+
},
|
|
2857
2876
|
{
|
|
2858
2877
|
"kind": "javascript-module",
|
|
2859
2878
|
"path": "src/components/mui-heading/doc.ts",
|
|
@@ -3081,7 +3100,7 @@
|
|
|
3081
3100
|
"type": {
|
|
3082
3101
|
"text": "MuiDocs"
|
|
3083
3102
|
},
|
|
3084
|
-
"default": "{ Image: { title: \"Image\", description: \"Displays an image alongside an optional caption to provide context, explanation, or attribution. Useful for supporting content visually while maintaining clarity through descriptive labelling.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/14eozXMPlzipgAfqaIR2Py/4e211990a30b4a08549deccfd30c71a9/Image_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=948-4194&t=0ytskb8cxriEmdz2-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/content-image--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-image/index.ts\"], website: [\"\"], guides: [\"https://guides.muibook.com/image\"], usage: { list: [ \"Use to display images that require additional context or explanation.\", \"Captions should clarify the relevance of the image, not repeat surrounding content.\", \"Ideal for diagrams, UI examples, or content requiring attribution.\", \"Ensure images are accessible with alt text and meaningful captions.\", ], }, accessibility: { designerList: [ \"Use meaningful alt text that describes the image’s purpose.\", \"Use alt=“” for decorative images that don’t convey information.\", \"Use the caption slot for extended context, especially for diagrams or UI patterns.\", ], engineerList: [ \"Use meaningful alt text that describes the image’s purpose.\", \"Use alt=“” for decorative images that don’t convey information.\", \"Use the caption slot for extended context, especially for diagrams or UI patterns.\", ], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/3BSbMl1cqUOB6oDmFLQjRx/193889c0f6d3da6178d51e5fff06b8ed/Image_-_Anatomy.png\", list: [\"Standard styling for a hero image.\", \"Optional caption for the image.\"], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, 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\", }, ], }, related: { items: [ { name: \"\", link: \"\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
|
|
3103
|
+
"default": "{ Image: { title: \"Image\", description: \"Displays an image alongside an optional caption to provide context, explanation, or attribution. Useful for supporting content visually while maintaining clarity through descriptive labelling.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/14eozXMPlzipgAfqaIR2Py/4e211990a30b4a08549deccfd30c71a9/Image_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=948-4194&t=0ytskb8cxriEmdz2-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/content-image--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-image/index.ts\"], website: [\"\"], guides: [\"https://guides.muibook.com/image\"], usage: { list: [ \"Use to display images that require additional context or explanation.\", \"Use height + crop + fit=cover when you need fixed-height visual crops.\", \"Use max-height with aspect-ratio for responsive image frames that should not exceed a visual cap.\", \"Use focal-x/focal-y or position to keep important content in frame.\", \"Use zoom carefully to tighten framing without switching to background-image.\", \"Captions should clarify the relevance of the image, not repeat surrounding content.\", \"Ideal for diagrams, UI examples, or content requiring attribution.\", \"Ensure images are accessible with alt text and meaningful captions.\", ], }, accessibility: { designerList: [ \"Use meaningful alt text that describes the image’s purpose.\", \"Use alt=“” for decorative images that don’t convey information.\", \"Use the caption slot for extended context, especially for diagrams or UI patterns.\", ], engineerList: [ \"Use meaningful alt text that describes the image’s purpose.\", \"Use alt=“” for decorative images that don’t convey information.\", \"Use the caption slot for extended context, especially for diagrams or UI patterns.\", ], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/3BSbMl1cqUOB6oDmFLQjRx/193889c0f6d3da6178d51e5fff06b8ed/Image_-_Anatomy.png\", list: [\"Standard styling for a hero image.\", \"Optional caption for the image.\"], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, 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\", }, ], }, related: { items: [ { name: \"\", link: \"\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
|
|
3085
3104
|
}
|
|
3086
3105
|
],
|
|
3087
3106
|
"exports": [
|
|
@@ -3103,160 +3122,100 @@
|
|
|
3103
3122
|
"kind": "class",
|
|
3104
3123
|
"description": "",
|
|
3105
3124
|
"name": "MuiImage",
|
|
3106
|
-
"superclass": {
|
|
3107
|
-
"name": "HTMLElement"
|
|
3108
|
-
},
|
|
3109
|
-
"tagName": "mui-image",
|
|
3110
|
-
"customElement": true
|
|
3111
|
-
}
|
|
3112
|
-
],
|
|
3113
|
-
"exports": [
|
|
3114
|
-
{
|
|
3115
|
-
"kind": "custom-element-definition",
|
|
3116
|
-
"name": "mui-image",
|
|
3117
|
-
"declaration": {
|
|
3118
|
-
"name": "MuiImage",
|
|
3119
|
-
"module": "src/components/mui-image/index.ts"
|
|
3120
|
-
}
|
|
3121
|
-
}
|
|
3122
|
-
]
|
|
3123
|
-
},
|
|
3124
|
-
{
|
|
3125
|
-
"kind": "javascript-module",
|
|
3126
|
-
"path": "src/components/mui-input/doc.ts",
|
|
3127
|
-
"declarations": [
|
|
3128
|
-
{
|
|
3129
|
-
"kind": "variable",
|
|
3130
|
-
"name": "muiDocs",
|
|
3131
|
-
"type": {
|
|
3132
|
-
"text": "MuiDocs"
|
|
3133
|
-
},
|
|
3134
|
-
"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 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: [\"\"], }, }, }"
|
|
3135
|
-
}
|
|
3136
|
-
],
|
|
3137
|
-
"exports": [
|
|
3138
|
-
{
|
|
3139
|
-
"kind": "js",
|
|
3140
|
-
"name": "muiDocs",
|
|
3141
|
-
"declaration": {
|
|
3142
|
-
"name": "muiDocs",
|
|
3143
|
-
"module": "src/components/mui-input/doc.ts"
|
|
3144
|
-
}
|
|
3145
|
-
}
|
|
3146
|
-
]
|
|
3147
|
-
},
|
|
3148
|
-
{
|
|
3149
|
-
"kind": "javascript-module",
|
|
3150
|
-
"path": "src/components/mui-input/index.ts",
|
|
3151
|
-
"declarations": [
|
|
3152
|
-
{
|
|
3153
|
-
"kind": "class",
|
|
3154
|
-
"description": "",
|
|
3155
|
-
"name": "MuiInput",
|
|
3156
3125
|
"members": [
|
|
3157
3126
|
{
|
|
3158
3127
|
"kind": "field",
|
|
3159
|
-
"name": "
|
|
3128
|
+
"name": "observer",
|
|
3160
3129
|
"type": {
|
|
3161
|
-
"text": "
|
|
3162
|
-
}
|
|
3130
|
+
"text": "MutationObserver | null"
|
|
3131
|
+
},
|
|
3132
|
+
"privacy": "private",
|
|
3133
|
+
"default": "null"
|
|
3163
3134
|
},
|
|
3164
3135
|
{
|
|
3165
3136
|
"kind": "method",
|
|
3166
|
-
"name": "
|
|
3137
|
+
"name": "syncChildSlots",
|
|
3138
|
+
"privacy": "private"
|
|
3167
3139
|
},
|
|
3168
3140
|
{
|
|
3169
3141
|
"kind": "method",
|
|
3170
|
-
"name": "
|
|
3142
|
+
"name": "clampPercent",
|
|
3143
|
+
"privacy": "private",
|
|
3144
|
+
"parameters": [
|
|
3145
|
+
{
|
|
3146
|
+
"name": "value",
|
|
3147
|
+
"type": {
|
|
3148
|
+
"text": "string | null"
|
|
3149
|
+
}
|
|
3150
|
+
},
|
|
3151
|
+
{
|
|
3152
|
+
"name": "fallback",
|
|
3153
|
+
"type": {
|
|
3154
|
+
"text": "number"
|
|
3155
|
+
}
|
|
3156
|
+
}
|
|
3157
|
+
]
|
|
3171
3158
|
},
|
|
3172
3159
|
{
|
|
3173
3160
|
"kind": "method",
|
|
3174
|
-
"name": "
|
|
3161
|
+
"name": "getPosition",
|
|
3162
|
+
"privacy": "private"
|
|
3175
3163
|
},
|
|
3176
3164
|
{
|
|
3177
3165
|
"kind": "method",
|
|
3178
|
-
"name": "
|
|
3179
|
-
"
|
|
3180
|
-
"type": {
|
|
3181
|
-
"text": "void"
|
|
3182
|
-
}
|
|
3183
|
-
}
|
|
3166
|
+
"name": "getZoom",
|
|
3167
|
+
"privacy": "private"
|
|
3184
3168
|
},
|
|
3185
3169
|
{
|
|
3186
3170
|
"kind": "method",
|
|
3187
|
-
"name": "render"
|
|
3188
|
-
|
|
3189
|
-
],
|
|
3190
|
-
"events": [
|
|
3191
|
-
{
|
|
3192
|
-
"name": "change",
|
|
3193
|
-
"type": {
|
|
3194
|
-
"text": "CustomEvent"
|
|
3195
|
-
}
|
|
3196
|
-
},
|
|
3197
|
-
{
|
|
3198
|
-
"name": "input",
|
|
3199
|
-
"type": {
|
|
3200
|
-
"text": "CustomEvent"
|
|
3201
|
-
}
|
|
3171
|
+
"name": "render",
|
|
3172
|
+
"privacy": "private"
|
|
3202
3173
|
}
|
|
3203
3174
|
],
|
|
3204
3175
|
"attributes": [
|
|
3205
3176
|
{
|
|
3206
|
-
"name": "
|
|
3207
|
-
},
|
|
3208
|
-
{
|
|
3209
|
-
"name": "name"
|
|
3210
|
-
},
|
|
3211
|
-
{
|
|
3212
|
-
"name": "value"
|
|
3213
|
-
},
|
|
3214
|
-
{
|
|
3215
|
-
"name": "placeholder"
|
|
3216
|
-
},
|
|
3217
|
-
{
|
|
3218
|
-
"name": "id"
|
|
3177
|
+
"name": "height"
|
|
3219
3178
|
},
|
|
3220
3179
|
{
|
|
3221
|
-
"name": "
|
|
3180
|
+
"name": "fit"
|
|
3222
3181
|
},
|
|
3223
3182
|
{
|
|
3224
|
-
"name": "
|
|
3183
|
+
"name": "crop"
|
|
3225
3184
|
},
|
|
3226
3185
|
{
|
|
3227
|
-
"name": "
|
|
3186
|
+
"name": "position"
|
|
3228
3187
|
},
|
|
3229
3188
|
{
|
|
3230
|
-
"name": "
|
|
3189
|
+
"name": "zoom"
|
|
3231
3190
|
},
|
|
3232
3191
|
{
|
|
3233
|
-
"name": "
|
|
3192
|
+
"name": "focal-x"
|
|
3234
3193
|
},
|
|
3235
3194
|
{
|
|
3236
|
-
"name": "
|
|
3195
|
+
"name": "focal-y"
|
|
3237
3196
|
},
|
|
3238
3197
|
{
|
|
3239
|
-
"name": "
|
|
3198
|
+
"name": "radius"
|
|
3240
3199
|
},
|
|
3241
3200
|
{
|
|
3242
|
-
"name": "
|
|
3201
|
+
"name": "aspect-ratio"
|
|
3243
3202
|
}
|
|
3244
3203
|
],
|
|
3245
3204
|
"superclass": {
|
|
3246
3205
|
"name": "HTMLElement"
|
|
3247
3206
|
},
|
|
3248
|
-
"tagName": "mui-
|
|
3207
|
+
"tagName": "mui-image",
|
|
3249
3208
|
"customElement": true
|
|
3250
3209
|
}
|
|
3251
3210
|
],
|
|
3252
3211
|
"exports": [
|
|
3253
3212
|
{
|
|
3254
3213
|
"kind": "custom-element-definition",
|
|
3255
|
-
"name": "mui-
|
|
3214
|
+
"name": "mui-image",
|
|
3256
3215
|
"declaration": {
|
|
3257
|
-
"name": "
|
|
3258
|
-
"module": "src/components/mui-
|
|
3259
|
-
}
|
|
3216
|
+
"name": "MuiImage",
|
|
3217
|
+
"module": "src/components/mui-image/index.ts"
|
|
3218
|
+
}
|
|
3260
3219
|
}
|
|
3261
3220
|
]
|
|
3262
3221
|
},
|
|
@@ -5554,6 +5513,145 @@
|
|
|
5554
5513
|
}
|
|
5555
5514
|
]
|
|
5556
5515
|
},
|
|
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
|
+
},
|
|
5557
5655
|
{
|
|
5558
5656
|
"kind": "javascript-module",
|
|
5559
5657
|
"path": "src/components/mui-link/doc.ts",
|
|
@@ -5739,7 +5837,7 @@
|
|
|
5739
5837
|
},
|
|
5740
5838
|
{
|
|
5741
5839
|
"kind": "javascript-module",
|
|
5742
|
-
"path": "src/components/mui-
|
|
5840
|
+
"path": "src/components/mui-loader/doc.ts",
|
|
5743
5841
|
"declarations": [
|
|
5744
5842
|
{
|
|
5745
5843
|
"kind": "variable",
|
|
@@ -5747,7 +5845,7 @@
|
|
|
5747
5845
|
"type": {
|
|
5748
5846
|
"text": "MuiDocs"
|
|
5749
5847
|
},
|
|
5750
|
-
"default": "{
|
|
5848
|
+
"default": "{ Loader: { title: \"Loader\", description: \"The Loader component applies smooth, built-in transitions during page loads, content updates, or skeleton placeholders to maintain a seamless, polished experience.\", hero: [\"\"], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=1059-12710&t=BwezUSymTClm00wJ-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/feedback-loader--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-loader/index.ts\"], website: [\"\"], guides: [\"https://guides.muibook.com/loader\"], usage: { list: [ \"Wrap any page or UI section with Mui-Loader to automatically display loading animations.\", \"Ideal for initial page loads, content transitions, or skeleton screens while data is fetching.\", \"When crafting skeleton states inside Loader, prefer design tokens, rem units, and percentages over fixed pixel sizes.\", \"Compose placeholders with Muibook layout components such as mui-v-stack, mui-h-stack, and mui-grid for consistent spacing.\", \"Applied to pages or key components for seamless load transitions.\", \"Works seamlessly with other MUI components and layouts without additional setup.\", \"Use with Mui Spinner, skeletons, or other feedback to improve perceived performance.\", ], }, accessibility: { designerList: [ \"The loader is announced to screen readers via role='status', ensuring updates are conveyed politely.\", \"aria-busy is set to true when loading, indicating the region is currently in a 'busy' state.\", \"A visually hidden 'Loading…' text is included by default to provide meaningful content for screen readers, even if the slotted content is purely visual.\", \"The component respects the user’s reduced motion preferences via prefers-reduced-motion, preventing potentially distracting animations.\", \"No additional labels are required from the consumer, making it lightweight and flexible while remaining accessible by default.\", ], engineerList: [ \"The loader is announced to screen readers via role='status', ensuring updates are conveyed politely.\", \"aria-busy is set to true when loading, indicating the region is currently in a 'busy' state.\", \"A visually hidden 'Loading…' text is included by default to provide meaningful content for screen readers, even if the slotted content is purely visual.\", \"The component respects the user’s reduced motion preferences via prefers-reduced-motion, preventing potentially distracting animations.\", \"No additional labels are required from the consumer, making it lightweight and flexible while remaining accessible by default.\", ], }, anatomy: { image: \"\", list: [\"\"], }, variants: { items: [ { key: \"pulsate\", title: \"Pulsate\", description: \"\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/5gZwRuH4Ojs38xlq7HAMCt/47be2502487c0d85955c203788442d12/pulse.gif\", }, { key: \"fade-in\", title: \"Fade-In\", description: \"\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/xPo8WGtJjoiW5y8gcXFJG/ed432ec413dc4839129139dad546e926/fade-in.gif\", }, { key: \"translate-up\", title: \"Translate: Up\", description: \"Default direction is Up. Ability to define the preferred direction: Up, Right, Down, Left.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/4UTi4tmMxdiTDNR0wi5AOt/8d0e21d88eb33c71d1c7f69df8f42772/up.gif\", }, { key: \"translate-down\", title: \"Translate: Down\", description: \"Default direction is Up. Ability to define the preferred direction: Up, Right, Down, Left.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/63936AreBgAC7oxohQbLpY/e26318a5b4b6aaa790f363c4180d92ad/down.gif\", }, { key: \"translate-left\", title: \"Translate: Left\", description: \"Default direction is Up. Ability to define the preferred direction: Up, Right, Down, Left.\", image: \"hhttps://images.ctfassets.net/i5uwscj4pkk2/5Rzmo4ISRIfaY5aMAbO1U6/0db9896ce44b9704960fde8bc9b70a07/left.gif\", }, { key: \"translate-right\", title: \"Translate: Right\", description: \"Default direction is Up. Ability to define the preferred direction: Up, Right, Down, Left.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/2pzlTEsdJj4FKmnsleLO0T/79a8d4fbecc3953a9ec21772df5ee9ac/right.gif\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"guru-outcomes-dashboard\", name: \"Guru Outcomes - Dashboard\", description: \"Use the <mui-loader> component to mask slow network or initial data load times. Combine its features to create a seamless loading experience.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/7fsKn4mqKGieVh2D1EdyuR/a9afa145001e13470054aa9d7004127d/outcomes-home.gif\", }, { key: \"guru-outcomes-roadmap\", name: \"Guru Outcomes - Roadmap\", description: \"The Loader component in action on the roadmap page, smoothly loading the UI while masking delays and improving perceived performance.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/7Hebis0o1mlvvDZlQRZfzl/f0c06679ab417f2ee624b570226da77d/outcomes-roadmap.gif\", }, ], }, related: { items: [ { name: \"Spinner\", link: \"https://guides.muibook.com/loader\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
|
|
5751
5849
|
}
|
|
5752
5850
|
],
|
|
5753
5851
|
"exports": [
|
|
@@ -5756,74 +5854,53 @@
|
|
|
5756
5854
|
"name": "muiDocs",
|
|
5757
5855
|
"declaration": {
|
|
5758
5856
|
"name": "muiDocs",
|
|
5759
|
-
"module": "src/components/mui-
|
|
5857
|
+
"module": "src/components/mui-loader/doc.ts"
|
|
5760
5858
|
}
|
|
5761
5859
|
}
|
|
5762
5860
|
]
|
|
5763
5861
|
},
|
|
5764
5862
|
{
|
|
5765
5863
|
"kind": "javascript-module",
|
|
5766
|
-
"path": "src/components/mui-
|
|
5864
|
+
"path": "src/components/mui-loader/index.ts",
|
|
5767
5865
|
"declarations": [
|
|
5768
5866
|
{
|
|
5769
5867
|
"kind": "class",
|
|
5770
5868
|
"description": "",
|
|
5771
|
-
"name": "
|
|
5869
|
+
"name": "MuiLoader",
|
|
5772
5870
|
"members": [
|
|
5773
|
-
{
|
|
5774
|
-
"kind": "field",
|
|
5775
|
-
"name": "observer",
|
|
5776
|
-
"type": {
|
|
5777
|
-
"text": "MutationObserver | undefined"
|
|
5778
|
-
},
|
|
5779
|
-
"privacy": "private"
|
|
5780
|
-
},
|
|
5781
|
-
{
|
|
5782
|
-
"kind": "method",
|
|
5783
|
-
"name": "getBodySize",
|
|
5784
|
-
"privacy": "private"
|
|
5785
|
-
},
|
|
5786
|
-
{
|
|
5787
|
-
"kind": "method",
|
|
5788
|
-
"name": "getCodeSize",
|
|
5789
|
-
"privacy": "private"
|
|
5790
|
-
},
|
|
5791
5871
|
{
|
|
5792
5872
|
"kind": "method",
|
|
5793
|
-
"name": "
|
|
5794
|
-
"privacy": "private"
|
|
5795
|
-
},
|
|
5796
|
-
{
|
|
5797
|
-
"kind": "method",
|
|
5798
|
-
"name": "render",
|
|
5799
|
-
"privacy": "private"
|
|
5873
|
+
"name": "render"
|
|
5800
5874
|
}
|
|
5801
5875
|
],
|
|
5802
5876
|
"attributes": [
|
|
5803
5877
|
{
|
|
5804
|
-
"name": "
|
|
5878
|
+
"name": "loading"
|
|
5805
5879
|
},
|
|
5806
5880
|
{
|
|
5807
|
-
"name": "
|
|
5881
|
+
"name": "animation"
|
|
5808
5882
|
},
|
|
5809
5883
|
{
|
|
5810
|
-
"name": "
|
|
5884
|
+
"name": "direction"
|
|
5885
|
+
},
|
|
5886
|
+
{
|
|
5887
|
+
"name": "duration"
|
|
5811
5888
|
}
|
|
5812
5889
|
],
|
|
5813
5890
|
"superclass": {
|
|
5814
5891
|
"name": "HTMLElement"
|
|
5815
5892
|
},
|
|
5816
|
-
"tagName": "mui-
|
|
5893
|
+
"tagName": "mui-loader",
|
|
5817
5894
|
"customElement": true
|
|
5818
5895
|
}
|
|
5819
5896
|
],
|
|
5820
5897
|
"exports": [
|
|
5821
5898
|
{
|
|
5822
5899
|
"kind": "custom-element-definition",
|
|
5823
|
-
"name": "mui-
|
|
5900
|
+
"name": "mui-loader",
|
|
5824
5901
|
"declaration": {
|
|
5825
|
-
"name": "
|
|
5826
|
-
"module": "src/components/mui-
|
|
5902
|
+
"name": "MuiLoader",
|
|
5903
|
+
"module": "src/components/mui-loader/index.ts"
|
|
5827
5904
|
}
|
|
5828
5905
|
}
|
|
5829
5906
|
]
|
|
@@ -5980,7 +6057,7 @@
|
|
|
5980
6057
|
},
|
|
5981
6058
|
{
|
|
5982
6059
|
"kind": "javascript-module",
|
|
5983
|
-
"path": "src/components/mui-
|
|
6060
|
+
"path": "src/components/mui-markdown/doc.ts",
|
|
5984
6061
|
"declarations": [
|
|
5985
6062
|
{
|
|
5986
6063
|
"kind": "variable",
|
|
@@ -5988,7 +6065,7 @@
|
|
|
5988
6065
|
"type": {
|
|
5989
6066
|
"text": "MuiDocs"
|
|
5990
6067
|
},
|
|
5991
|
-
"default": "{
|
|
6068
|
+
"default": "{ Markdown: { title: \"Markdown\", description: \"Renders Markdown content using Muibook components so docs stay on-brand and framework-agnostic.\", hero: [\"\"], figma: [\"\"], storybook: [\"\"], github: [ \"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-markdown/index.ts\", ], website: [\"\"], guides: [\"\"], usage: { list: [ \"Use when Markdown content should render using Muibook components.\", \"Great for docs, release notes, and help content sourced from files or APIs.\", \"Supports GFM tables, code blocks, inline code, blockquotes, links, and images.\", \"Adds stable heading IDs for in-page navigation and TOC linking.\", \"Provides copy buttons for code blocks by default.\", \"Supports custom markers like grid, box, space, and rule.\", \"Use body-size and code-size to align typography with the surrounding UI.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { image: \"\", list: [\"\"], }, variants: { items: [ { key: \"default\", title: \"Default\", description: \"Markdown rendered with Muibook components.\", image: \"\", }, ], }, compositions: { description: \"Markdown can be used to author content that will render into Muibook layout and typography components.\", items: [ { key: \"docs\", name: \"Docs\", description: \"Use for rich documentation pages that need headings, lists, tables, and code blocks.\", image: \"\", }, ], }, related: { items: [ { name: \"Code\", link: \"https://guides.muibook.com/code\" }, { name: \"Table\", link: \"https://guides.muibook.com/table\" }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [ \"Accepts markdown via the markdown attribute or inner text content.\", \"Re-renders when markdown, body-size, or code-size attributes change.\", \"Observes text content when markdown is not set, so live edits are reflected.\", \"Renders tables into mui-table with horizontal scroll and a minimum width.\", \"Code blocks render mui-code with a copy button that writes to clipboard.\", ], }, writing: { list: [ \"Keep headings short and scannable.\", \"Prefer lists and short paragraphs for readability.\", \"Use markers like -- space-400 -- or -- grid-col-1fr-1fr -- for layout spacing and grids.\", ], }, }, }"
|
|
5992
6069
|
}
|
|
5993
6070
|
],
|
|
5994
6071
|
"exports": [
|
|
@@ -5997,111 +6074,177 @@
|
|
|
5997
6074
|
"name": "muiDocs",
|
|
5998
6075
|
"declaration": {
|
|
5999
6076
|
"name": "muiDocs",
|
|
6000
|
-
"module": "src/components/mui-
|
|
6077
|
+
"module": "src/components/mui-markdown/doc.ts"
|
|
6001
6078
|
}
|
|
6002
6079
|
}
|
|
6003
6080
|
]
|
|
6004
6081
|
},
|
|
6005
6082
|
{
|
|
6006
6083
|
"kind": "javascript-module",
|
|
6007
|
-
"path": "src/components/mui-
|
|
6084
|
+
"path": "src/components/mui-markdown/index.ts",
|
|
6008
6085
|
"declarations": [
|
|
6009
6086
|
{
|
|
6010
6087
|
"kind": "class",
|
|
6011
6088
|
"description": "",
|
|
6012
|
-
"name": "
|
|
6089
|
+
"name": "MuiMarkdown",
|
|
6013
6090
|
"members": [
|
|
6014
6091
|
{
|
|
6015
6092
|
"kind": "field",
|
|
6016
|
-
"name": "
|
|
6093
|
+
"name": "observer",
|
|
6017
6094
|
"type": {
|
|
6018
|
-
"text": "
|
|
6095
|
+
"text": "MutationObserver | undefined"
|
|
6096
|
+
},
|
|
6097
|
+
"privacy": "private"
|
|
6098
|
+
},
|
|
6099
|
+
{
|
|
6100
|
+
"kind": "field",
|
|
6101
|
+
"name": "lightboxEl",
|
|
6102
|
+
"type": {
|
|
6103
|
+
"text": "HTMLDivElement | null"
|
|
6019
6104
|
},
|
|
6020
6105
|
"privacy": "private",
|
|
6021
6106
|
"default": "null"
|
|
6022
6107
|
},
|
|
6023
6108
|
{
|
|
6024
6109
|
"kind": "method",
|
|
6025
|
-
"name": "
|
|
6026
|
-
"privacy": "private"
|
|
6027
|
-
"return": {
|
|
6028
|
-
"type": {
|
|
6029
|
-
"text": "MessageSize"
|
|
6030
|
-
}
|
|
6031
|
-
}
|
|
6110
|
+
"name": "getBodySize",
|
|
6111
|
+
"privacy": "private"
|
|
6032
6112
|
},
|
|
6033
6113
|
{
|
|
6034
6114
|
"kind": "method",
|
|
6035
|
-
"name": "
|
|
6115
|
+
"name": "getCodeSize",
|
|
6116
|
+
"privacy": "private"
|
|
6117
|
+
},
|
|
6118
|
+
{
|
|
6119
|
+
"kind": "method",
|
|
6120
|
+
"name": "getMarkdown",
|
|
6121
|
+
"privacy": "private"
|
|
6122
|
+
},
|
|
6123
|
+
{
|
|
6124
|
+
"kind": "method",
|
|
6125
|
+
"name": "getRenderRoot",
|
|
6126
|
+
"privacy": "private"
|
|
6127
|
+
},
|
|
6128
|
+
{
|
|
6129
|
+
"kind": "method",
|
|
6130
|
+
"name": "isLightboxEnabled",
|
|
6131
|
+
"privacy": "private"
|
|
6132
|
+
},
|
|
6133
|
+
{
|
|
6134
|
+
"kind": "method",
|
|
6135
|
+
"name": "applyTableColumns",
|
|
6036
6136
|
"privacy": "private",
|
|
6037
|
-
"return": {
|
|
6038
|
-
"type": {
|
|
6039
|
-
"text": "string"
|
|
6040
|
-
}
|
|
6041
|
-
},
|
|
6042
6137
|
"parameters": [
|
|
6043
6138
|
{
|
|
6044
|
-
"name": "
|
|
6139
|
+
"name": "renderRoot",
|
|
6045
6140
|
"type": {
|
|
6046
|
-
"text": "
|
|
6141
|
+
"text": "ParentNode"
|
|
6047
6142
|
}
|
|
6048
6143
|
}
|
|
6049
6144
|
]
|
|
6050
6145
|
},
|
|
6051
6146
|
{
|
|
6052
6147
|
"kind": "method",
|
|
6053
|
-
"name": "
|
|
6148
|
+
"name": "openLightbox",
|
|
6054
6149
|
"privacy": "private",
|
|
6055
6150
|
"parameters": [
|
|
6056
6151
|
{
|
|
6057
|
-
"name": "
|
|
6152
|
+
"name": "src",
|
|
6058
6153
|
"type": {
|
|
6059
|
-
"text": "
|
|
6154
|
+
"text": "string"
|
|
6060
6155
|
}
|
|
6061
|
-
}
|
|
6062
|
-
|
|
6063
|
-
|
|
6156
|
+
},
|
|
6157
|
+
{
|
|
6158
|
+
"name": "alt",
|
|
6159
|
+
"type": {
|
|
6160
|
+
"text": "string"
|
|
6161
|
+
}
|
|
6162
|
+
},
|
|
6163
|
+
{
|
|
6164
|
+
"name": "caption",
|
|
6165
|
+
"optional": true,
|
|
6166
|
+
"type": {
|
|
6167
|
+
"text": "string"
|
|
6168
|
+
}
|
|
6169
|
+
}
|
|
6170
|
+
]
|
|
6171
|
+
},
|
|
6172
|
+
{
|
|
6173
|
+
"kind": "method",
|
|
6174
|
+
"name": "closeLightbox",
|
|
6175
|
+
"privacy": "private"
|
|
6176
|
+
},
|
|
6177
|
+
{
|
|
6178
|
+
"kind": "method",
|
|
6179
|
+
"name": "bindHandlers",
|
|
6180
|
+
"privacy": "private",
|
|
6181
|
+
"parameters": [
|
|
6182
|
+
{
|
|
6183
|
+
"name": "renderRoot",
|
|
6184
|
+
"type": {
|
|
6185
|
+
"text": "ParentNode"
|
|
6186
|
+
}
|
|
6187
|
+
}
|
|
6188
|
+
]
|
|
6189
|
+
},
|
|
6064
6190
|
{
|
|
6065
6191
|
"kind": "method",
|
|
6066
6192
|
"name": "render",
|
|
6067
6193
|
"privacy": "private"
|
|
6068
6194
|
}
|
|
6069
6195
|
],
|
|
6196
|
+
"events": [
|
|
6197
|
+
{
|
|
6198
|
+
"name": "mui-markdown-lightbox-change",
|
|
6199
|
+
"type": {
|
|
6200
|
+
"text": "CustomEvent"
|
|
6201
|
+
}
|
|
6202
|
+
},
|
|
6203
|
+
{
|
|
6204
|
+
"name": "mui-markdown-image-click",
|
|
6205
|
+
"type": {
|
|
6206
|
+
"text": "CustomEvent"
|
|
6207
|
+
}
|
|
6208
|
+
}
|
|
6209
|
+
],
|
|
6070
6210
|
"attributes": [
|
|
6071
6211
|
{
|
|
6072
|
-
"name": "
|
|
6212
|
+
"name": "markdown"
|
|
6073
6213
|
},
|
|
6074
6214
|
{
|
|
6075
|
-
"name": "
|
|
6215
|
+
"name": "body-size"
|
|
6076
6216
|
},
|
|
6077
6217
|
{
|
|
6078
|
-
"name": "
|
|
6218
|
+
"name": "code-size"
|
|
6079
6219
|
},
|
|
6080
6220
|
{
|
|
6081
|
-
"name": "
|
|
6221
|
+
"name": "render-mode"
|
|
6222
|
+
},
|
|
6223
|
+
{
|
|
6224
|
+
"name": "lightbox"
|
|
6082
6225
|
}
|
|
6083
6226
|
],
|
|
6084
6227
|
"superclass": {
|
|
6085
6228
|
"name": "HTMLElement"
|
|
6086
6229
|
},
|
|
6087
|
-
"tagName": "mui-
|
|
6230
|
+
"tagName": "mui-markdown",
|
|
6088
6231
|
"customElement": true
|
|
6089
6232
|
}
|
|
6090
6233
|
],
|
|
6091
6234
|
"exports": [
|
|
6092
6235
|
{
|
|
6093
6236
|
"kind": "custom-element-definition",
|
|
6094
|
-
"name": "mui-
|
|
6237
|
+
"name": "mui-markdown",
|
|
6095
6238
|
"declaration": {
|
|
6096
|
-
"name": "
|
|
6097
|
-
"module": "src/components/mui-
|
|
6239
|
+
"name": "MuiMarkdown",
|
|
6240
|
+
"module": "src/components/mui-markdown/index.ts"
|
|
6098
6241
|
}
|
|
6099
6242
|
}
|
|
6100
6243
|
]
|
|
6101
6244
|
},
|
|
6102
6245
|
{
|
|
6103
6246
|
"kind": "javascript-module",
|
|
6104
|
-
"path": "src/components/mui-
|
|
6247
|
+
"path": "src/components/mui-message/doc.ts",
|
|
6105
6248
|
"declarations": [
|
|
6106
6249
|
{
|
|
6107
6250
|
"kind": "variable",
|
|
@@ -6109,7 +6252,7 @@
|
|
|
6109
6252
|
"type": {
|
|
6110
6253
|
"text": "MuiDocs"
|
|
6111
6254
|
},
|
|
6112
|
-
"default": "{
|
|
6255
|
+
"default": "{ Message: { title: \"Message\", description: \"The message component provides persistent, non-dismissible notifications that remain visible until the system determines they should be suspended. Unlike alerts, these messages are static elements integrated into the page layout, offering continuous information without disrupting the user’s workflow.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/01OU9JbOlDZGvbpkq2ismi/b0410cb8002858ded88987d9556daa04/Message_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=9-1053&t=ZA9uH4LK37tSuk6r-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/feedback-message--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-message/index.ts\"], website: [\"https://muibook.com/#/message\"], guides: [\"https://guides.muibook.com/message\"], usage: { list: [ \"Plain: A subtle, transparent style suited for vibrant backgrounds where minimal visual impact is preferred.\", \"Neutral: A calm, balanced tone for non-critical, persistent messages.\", \"Positive: To confirm successful actions like form submissions, saves, or completed tasks.\", \"Info: To share feature announcements, enhancements, or contextual onboarding tips.\", \"Warning: Caution users about potential issues such as unsaved changes or upcoming expirations.\", \"Attention: Highlight urgent issues like system errors or security breaches requiring immediate action.\", ], }, accessibility: { designerList: [ \"ARIA-live is built in, using POLITE + ASSERTIVE for screen readers.\", \"Neutral, Postive, Info support the role of STATUS for screen reader feedback.\", \"Warning, Attention support the role of ALERT for screen reader feedback.\", ], engineerList: [ \"ARIA-live is built in, using POLITE + ASSERTIVE for screen readers.\", \"Neutral, Postive, Info support the role of STATUS for screen reader feedback.\", \"Warning, Attention support the role of ALERT for screen reader feedback.\", ], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/6S1MOtZZKP2bxYuIUNScSC/993a910363fbfbba29a3de384ecb182a/Message_-_Anatomy.png\", list: [ \"Preset icon: Communicates the type of message visually. E.g. neutral, positive, info, warning, attention.\", \"Customisable title: Allows for a general heading that describes the message details or guidance relevant to the situation.\", \"Customisable text: Allows for specific details or guidance relevant to the situation.\", ], }, variants: { items: [ { key: \"plain\", title: \"Plain\", description: \"A subtle, transparent style designed for vibrant backgrounds where minimal visual impact is preferred. Best for passive messages like accessibility notes, system status, or routine updates. Use for non-critical information that doesn’t require immediate attention or action. This variant sets aria-live='polite' and role='status' for accessibility.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/21KWc3TZOJPqZ2BtZ3ngrY/3cbf4aa6df3a72f195eebaa8fe8ecfde/message-plain.png\", }, { key: \"neutral\", title: \"Neutral\", description: \"The Neutral state offers a calm, balanced tone for non-critical, persistent messages. It is suitable for displaying non-urgent information, such as background status like sync confirmation or feature explanations. This variant uses aria-live='polite' and role='status' for accessibility.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/2VF8KPxaXCm6P4dlpsAnXs/5a2011d1a63a900dcdd6669ec5c097e9/message-neutral.png\", }, { key: \"positive\", title: \"Positive\", description: \"The Positive state conveys successful actions, confirmations, or achievements, helping foster a sense of accomplishment and satisfaction. It’s used to indicate things like successful form submissions, completed tasks, or acknowledged milestones. This variant uses aria-live='polite' and role='status' for accessibility.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/2HOuPOpHOuMGuVUoPAs5MI/ff1e156bc8f31e580972289fcc7bf3d7/message-positive.png\", }, { key: \"info\", title: \"Info\", description: \"The Info state provides helpful messages that inform users about system status, feature updates, or changes—guiding them without urgency. It’s suitable for announcing new features, enhancements, or system changes, and works well for onboarding tips or contextual help. This variant uses aria-live='polite' and role='status' for accessibility.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1x63W880Trpx0GYiYQJhCt/72c09a93d6ec34a18bc15310927fe9ef/message-info.png\", }, { key: \"warning\", title: \"Warning\", description: \"The Warning state alerts users to potential issues that may require attention, helping prevent errors or misunderstandings. It’s commonly used to notify users of unsaved changes, actions with potential consequences, or upcoming limitations or expirations. This variant uses aria-live='assertive' and role='alert' for accessibility.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/50V1Ap7vVxPUWRbbKh0kx5/2fe4c203befa779087c8b23984d951b7/message-warning.png\", }, { key: \"attention\", title: \"Attention\", description: \"The Attention state demands immediate user focus, highlighting critical issues that require prompt action. It’s used to alert users to urgent problems like system errors or security breaches, or for time-sensitive notifications that significantly impact the user experience. This variant uses aria-live='assertive' and role='alert' for accessibility.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/5GXIEuluNJBlg8h4hDCfWH/ddeec560354ab06af73bf5c5d8749c12/message-attention.png\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"plain-message\", name: \"Plain message\", description: \"This example uses the Plain variant, suitable for both white and colored backgrounds. It’s ideal for presenting information passively, without demanding user attention. In this case, it’s used to deliver accessibility notes.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/3akJJDd28DOIhQrYq6g4y2/456c02f32dc9c40d84d92371b7ddbead/message-composition-neutral.png\", }, { key: \"info-message\", name: \"Info message\", description: \"Use a page-level Info message to remind users to log in to the provided tools, ensuring the MUI Guidelines are shown instead of the default guidelines.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/1ySFimf3eEleYLPKomWuem/34772aed4257db976f2ca8cb633d3d5b/message-composition-info.png\", }, ], }, related: { items: [ { name: \"Alert\", link: \"https://guides.muibook.com/alert\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
|
|
6113
6256
|
}
|
|
6114
6257
|
],
|
|
6115
6258
|
"exports": [
|
|
@@ -6118,53 +6261,104 @@
|
|
|
6118
6261
|
"name": "muiDocs",
|
|
6119
6262
|
"declaration": {
|
|
6120
6263
|
"name": "muiDocs",
|
|
6121
|
-
"module": "src/components/mui-
|
|
6264
|
+
"module": "src/components/mui-message/doc.ts"
|
|
6122
6265
|
}
|
|
6123
6266
|
}
|
|
6124
6267
|
]
|
|
6125
6268
|
},
|
|
6126
6269
|
{
|
|
6127
6270
|
"kind": "javascript-module",
|
|
6128
|
-
"path": "src/components/mui-
|
|
6271
|
+
"path": "src/components/mui-message/index.ts",
|
|
6129
6272
|
"declarations": [
|
|
6130
6273
|
{
|
|
6131
6274
|
"kind": "class",
|
|
6132
6275
|
"description": "",
|
|
6133
|
-
"name": "
|
|
6276
|
+
"name": "MuiMessage",
|
|
6134
6277
|
"members": [
|
|
6278
|
+
{
|
|
6279
|
+
"kind": "field",
|
|
6280
|
+
"name": "contentSlotListener",
|
|
6281
|
+
"type": {
|
|
6282
|
+
"text": "(() => void) | null"
|
|
6283
|
+
},
|
|
6284
|
+
"privacy": "private",
|
|
6285
|
+
"default": "null"
|
|
6286
|
+
},
|
|
6135
6287
|
{
|
|
6136
6288
|
"kind": "method",
|
|
6137
|
-
"name": "
|
|
6289
|
+
"name": "getMessageSize",
|
|
6290
|
+
"privacy": "private",
|
|
6291
|
+
"return": {
|
|
6292
|
+
"type": {
|
|
6293
|
+
"text": "MessageSize"
|
|
6294
|
+
}
|
|
6295
|
+
}
|
|
6296
|
+
},
|
|
6297
|
+
{
|
|
6298
|
+
"kind": "method",
|
|
6299
|
+
"name": "getInlineContentSize",
|
|
6300
|
+
"privacy": "private",
|
|
6301
|
+
"return": {
|
|
6302
|
+
"type": {
|
|
6303
|
+
"text": "string"
|
|
6304
|
+
}
|
|
6305
|
+
},
|
|
6306
|
+
"parameters": [
|
|
6307
|
+
{
|
|
6308
|
+
"name": "size",
|
|
6309
|
+
"type": {
|
|
6310
|
+
"text": "MessageSize"
|
|
6311
|
+
}
|
|
6312
|
+
}
|
|
6313
|
+
]
|
|
6314
|
+
},
|
|
6315
|
+
{
|
|
6316
|
+
"kind": "method",
|
|
6317
|
+
"name": "setupContentSlot",
|
|
6318
|
+
"privacy": "private",
|
|
6319
|
+
"parameters": [
|
|
6320
|
+
{
|
|
6321
|
+
"name": "size",
|
|
6322
|
+
"type": {
|
|
6323
|
+
"text": "MessageSize"
|
|
6324
|
+
}
|
|
6325
|
+
}
|
|
6326
|
+
]
|
|
6327
|
+
},
|
|
6328
|
+
{
|
|
6329
|
+
"kind": "method",
|
|
6330
|
+
"name": "render",
|
|
6331
|
+
"privacy": "private"
|
|
6138
6332
|
}
|
|
6139
6333
|
],
|
|
6140
6334
|
"attributes": [
|
|
6141
6335
|
{
|
|
6142
|
-
"name": "
|
|
6336
|
+
"name": "variant"
|
|
6143
6337
|
},
|
|
6144
6338
|
{
|
|
6145
|
-
"name": "
|
|
6339
|
+
"name": "heading"
|
|
6146
6340
|
},
|
|
6147
6341
|
{
|
|
6148
|
-
"name": "
|
|
6342
|
+
"name": "icon"
|
|
6149
6343
|
},
|
|
6150
6344
|
{
|
|
6151
|
-
"name": "
|
|
6345
|
+
"name": "size"
|
|
6152
6346
|
}
|
|
6153
6347
|
],
|
|
6154
6348
|
"superclass": {
|
|
6155
6349
|
"name": "HTMLElement"
|
|
6156
6350
|
},
|
|
6157
|
-
"tagName": "mui-
|
|
6351
|
+
"tagName": "mui-message",
|
|
6158
6352
|
"customElement": true
|
|
6159
6353
|
}
|
|
6160
6354
|
],
|
|
6161
6355
|
"exports": [
|
|
6162
6356
|
{
|
|
6163
6357
|
"kind": "custom-element-definition",
|
|
6164
|
-
"name": "mui-
|
|
6358
|
+
"name": "mui-message",
|
|
6165
6359
|
"declaration": {
|
|
6166
|
-
"name": "
|
|
6167
|
-
"module": "src/components/mui-
|
|
6360
|
+
"name": "MuiMessage",
|
|
6361
|
+
"module": "src/components/mui-message/index.ts"
|
|
6168
6362
|
}
|
|
6169
6363
|
}
|
|
6170
6364
|
]
|
|
@@ -6233,110 +6427,6 @@
|
|
|
6233
6427
|
}
|
|
6234
6428
|
]
|
|
6235
6429
|
},
|
|
6236
|
-
{
|
|
6237
|
-
"kind": "javascript-module",
|
|
6238
|
-
"path": "src/components/mui-prompt-message/doc.ts",
|
|
6239
|
-
"declarations": [
|
|
6240
|
-
{
|
|
6241
|
-
"kind": "variable",
|
|
6242
|
-
"name": "muiDocs",
|
|
6243
|
-
"type": {
|
|
6244
|
-
"text": "MuiDocs"
|
|
6245
|
-
},
|
|
6246
|
-
"default": "{ PromptMessage: { title: \"Prompt Message\", description: \"Prompt Message provides a consistent conversation row shell with avatar and message content slots.\", hero: [\"\"], figma: [\"\"], storybook: [\"https://stories.muibook.com\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-prompt-message/index.ts\"], website: [\"https://muibook.com/#/prompt-message\"], guides: [\"https://guides.muibook.com/body\"], usage: { list: [ \"Use for chat-style reply rows in assistant and support interfaces.\", \"This component is extracted from composition patterns to keep conversation shells consistent.\", \"Slot avatar content into slot='avatar'.\", \"Use body/content components for message text.\", \"Use size='x-small|small|medium|large' to scale avatar/text rhythm across dense and spacious layouts.\", \"Use variant='ghost' when the message row should render without surface treatment.\", \"Use density='compact' when padding should be removed for tight compositions.\", \"Prefer this component over ad hoc grid wrappers when building threaded chat content.\", ], }, accessibility: { designerList: [ \"Maintain clear speaker distinction through avatar + message pairing.\", \"Keep contrast and typography readable in long conversation threads.\", ], engineerList: [ \"Provide meaningful avatar labels where identity context matters.\", \"Preserve DOM reading order (identity first, then message content).\", \"Avoid injecting decorative-only text into message content; keep semantics focused on conversation copy.\", ], }, anatomy: { image: \"\", list: [\"Bubble container\", \"Avatar slot\", \"Message content slot\"] }, variants: { items: [{ key: \"\", title: \"\", description: \"\", image: \"\" }] }, compositions: { description: \"\", items: [] }, related: { items: [ { name: \"Avatar\", link: \"https://guides.muibook.com/avatar\" }, { name: \"Body\", link: \"https://guides.muibook.com/body\" }, ], }, rules: [ { heading: \"Pattern Rule\", description: \"Use Prompt Message as the base conversation row primitive.\", doContent: [{ description: \"Compose identity + message content through avatar and body slots.\", image: \"\" }], dontContent: [{ description: \"Avoid custom one-off bubble containers per page.\", image: \"\" }], }, ], behaviour: { list: [ \"Avatar and message content align consistently across rows.\", ], }, writing: { list: [ \"Keep message copy concise and scannable in multi-row threads.\", ], }, }, }"
|
|
6247
|
-
}
|
|
6248
|
-
],
|
|
6249
|
-
"exports": [
|
|
6250
|
-
{
|
|
6251
|
-
"kind": "js",
|
|
6252
|
-
"name": "muiDocs",
|
|
6253
|
-
"declaration": {
|
|
6254
|
-
"name": "muiDocs",
|
|
6255
|
-
"module": "src/components/mui-prompt-message/doc.ts"
|
|
6256
|
-
}
|
|
6257
|
-
}
|
|
6258
|
-
]
|
|
6259
|
-
},
|
|
6260
|
-
{
|
|
6261
|
-
"kind": "javascript-module",
|
|
6262
|
-
"path": "src/components/mui-prompt-message/index.ts",
|
|
6263
|
-
"declarations": [
|
|
6264
|
-
{
|
|
6265
|
-
"kind": "class",
|
|
6266
|
-
"description": "",
|
|
6267
|
-
"name": "MuiPromptMessage",
|
|
6268
|
-
"members": [
|
|
6269
|
-
{
|
|
6270
|
-
"kind": "field",
|
|
6271
|
-
"name": "resizeObserver",
|
|
6272
|
-
"type": {
|
|
6273
|
-
"text": "ResizeObserver | null"
|
|
6274
|
-
},
|
|
6275
|
-
"privacy": "private",
|
|
6276
|
-
"default": "null"
|
|
6277
|
-
},
|
|
6278
|
-
{
|
|
6279
|
-
"kind": "field",
|
|
6280
|
-
"name": "avatarSlotEl",
|
|
6281
|
-
"type": {
|
|
6282
|
-
"text": "HTMLSlotElement | null"
|
|
6283
|
-
},
|
|
6284
|
-
"privacy": "private",
|
|
6285
|
-
"default": "null"
|
|
6286
|
-
},
|
|
6287
|
-
{
|
|
6288
|
-
"kind": "field",
|
|
6289
|
-
"name": "contentSlotEl",
|
|
6290
|
-
"type": {
|
|
6291
|
-
"text": "HTMLSlotElement | null"
|
|
6292
|
-
},
|
|
6293
|
-
"privacy": "private",
|
|
6294
|
-
"default": "null"
|
|
6295
|
-
},
|
|
6296
|
-
{
|
|
6297
|
-
"kind": "method",
|
|
6298
|
-
"name": "render"
|
|
6299
|
-
},
|
|
6300
|
-
{
|
|
6301
|
-
"kind": "method",
|
|
6302
|
-
"name": "bindSlotSync",
|
|
6303
|
-
"privacy": "private"
|
|
6304
|
-
},
|
|
6305
|
-
{
|
|
6306
|
-
"kind": "method",
|
|
6307
|
-
"name": "bindLayoutSync",
|
|
6308
|
-
"privacy": "private"
|
|
6309
|
-
}
|
|
6310
|
-
],
|
|
6311
|
-
"attributes": [
|
|
6312
|
-
{
|
|
6313
|
-
"name": "size"
|
|
6314
|
-
},
|
|
6315
|
-
{
|
|
6316
|
-
"name": "variant"
|
|
6317
|
-
},
|
|
6318
|
-
{
|
|
6319
|
-
"name": "density"
|
|
6320
|
-
}
|
|
6321
|
-
],
|
|
6322
|
-
"superclass": {
|
|
6323
|
-
"name": "HTMLElement"
|
|
6324
|
-
},
|
|
6325
|
-
"tagName": "mui-prompt-message",
|
|
6326
|
-
"customElement": true
|
|
6327
|
-
}
|
|
6328
|
-
],
|
|
6329
|
-
"exports": [
|
|
6330
|
-
{
|
|
6331
|
-
"kind": "custom-element-definition",
|
|
6332
|
-
"name": "mui-prompt-message",
|
|
6333
|
-
"declaration": {
|
|
6334
|
-
"name": "MuiPromptMessage",
|
|
6335
|
-
"module": "src/components/mui-prompt-message/index.ts"
|
|
6336
|
-
}
|
|
6337
|
-
}
|
|
6338
|
-
]
|
|
6339
|
-
},
|
|
6340
6430
|
{
|
|
6341
6431
|
"kind": "javascript-module",
|
|
6342
6432
|
"path": "src/components/mui-prompt/doc.ts",
|
|
@@ -6347,7 +6437,7 @@
|
|
|
6347
6437
|
"type": {
|
|
6348
6438
|
"text": "MuiDocs"
|
|
6349
6439
|
},
|
|
6350
|
-
"default": "{ Prompt: { title: \"Prompt\", description: \"Prompt provides a reusable prompt surface with floating actions and Enter-to-submit behavior.\", hero: [\"\"], figma: [\"\"], storybook: [\"https://stories.muibook.com\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-prompt/index.ts\"], website: [\"https://muibook.com/#/prompt\"], guides: [\"https://guides.muibook.com/input\"], usage: { list: [ \"Use for AI/chat prompt entry surfaces with action controls.\", \"In Muibook stories, use the Interactive Prompt story at the top of the page as the primary end-to-end reference (paste/upload/context/submit).\", \"This component is extracted from composition patterns to standardize prompt behavior across experiences.\", \"Keep prompt as a controlled input in app state: write value via attribute/property and sync from input events.\", \"Use Enter submit for fast send flows; keep Shift+Enter for multiline authoring.\", \"Press Enter to submit and Shift+Enter to add a newline.\", \"Set enter-submit='false' to disable Enter submit behavior.\", \"Use slot='actions' for utility actions (attach, source, tools).\", \"Prompt includes a default submit control in actions-right; override by slotting your own actions-right control when needed.\", \"All utility actions are intended to be slotted so product teams can wire behavior from app state.\", \"A default fan trigger is included out-of-the-box; provide slot='actions-trigger' only when customizing.\", \"Use slot='actions-right' when you need a custom submit/toggle action instead of the default.\", \"Set loading to show built-in async feedback spinner beside actions-right while requests are in flight.\", \"Use loading-label to provide accessible status text for the spinner.\", \"Use actions-fan
|
|
6440
|
+
"default": "{ Prompt: { title: \"Prompt\", description: \"Prompt provides a reusable prompt surface with floating actions and Enter-to-submit behavior.\", hero: [\"\"], figma: [\"\"], storybook: [\"https://stories.muibook.com\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-prompt/index.ts\"], website: [\"https://muibook.com/#/prompt\"], guides: [\"https://guides.muibook.com/input\"], usage: { list: [ \"Use for AI/chat prompt entry surfaces with action controls.\", \"In Muibook stories, use the Interactive Prompt story at the top of the page as the primary end-to-end reference (paste/upload/context/submit).\", \"This component is extracted from composition patterns to standardize prompt behavior across experiences.\", \"Keep prompt as a controlled input in app state: write value via attribute/property and sync from input events.\", \"Use Enter submit for fast send flows; keep Shift+Enter for multiline authoring.\", \"Press Enter to submit and Shift+Enter to add a newline.\", \"Set enter-submit='false' to disable Enter submit behavior.\", \"Use slot='actions' for utility actions (attach, source, tools).\", \"Prompt includes a default submit control in actions-right; override by slotting your own actions-right control when needed.\", \"All utility actions are intended to be slotted so product teams can wire behavior from app state.\", \"A default fan trigger is included out-of-the-box; provide slot='actions-trigger' only when customizing.\", \"Use slot='actions-right' when you need a custom submit/toggle action instead of the default.\", \"Set loading to show built-in async feedback spinner beside actions-right while requests are in flight.\", \"Use loading-label to provide accessible status text for the spinner.\", \"Use actions-fan for fan-out behavior (closed by default), and add fan-open only when you want it open by default.\", \"fan-open normalizes fan behavior in composed trees by enabling fan mode when needed.\", \"Use context-mode='icon|chip' with slotted <mui-prompt-toggle> for app-driven context state.\", \"Fan spread, speed, and amplitude are fixed to system defaults; tune through component tokens/CSS where needed.\", \"Built-in preview dialog handling is enabled for prompt-preview-open events.\", \"Set preview-threshold-chars to control when pasted text is converted into preview attachments.\", \"Set preview-overflow-to-preview='false' to always paste text directly into the textarea.\", \"When internal preview dialog handling is enabled, slotted prompt previews are auto-clickable by default.\", \"Set preview-auto-clickable='false' to keep previews non-clickable unless explicitly configured.\", \"Set preview-loading to force slotted previews into loading state while async metadata resolves.\", \"Set preview-loading='auto' to mirror prompt loading state onto slotted previews.\", \"Use preview-loading-label to provide accessible loading text for preview spinners.\", \"Use error-message for direct prompt-level error feedback rendered below the input.\", \"Set debug to render built-in submit debug telemetry (status + JSON payload) below the prompt.\", \"Use slot='error' to render fully custom error content when product needs bespoke treatment.\", \"Use setError(message) and clearError() for app-driven validation and transport error handling.\", \"Use prompt-paste to ingest user clipboard payloads and convert them into prompt-preview items.\", \"Use prompt-preview-open to react to preview activation and update app-level analytics/state.\", \"For native media previews, use direct .mp4/.mp3 values so the built-in dialog opens with native media controls.\", \"Prefer system/semantic tokens for color-top-* values when theming prompt color surfaces.\", \"For React wrappers, map CustomEvent handlers to props (onSubmit, onPromptPaste, onPromptPreviewOpen, onEscape).\", \"Mark the trigger action with fan-trigger; if omitted, the first action is used.\", \"Prefer this component instead of ad hoc prompt wrappers when the same interaction model is needed.\", ], }, accessibility: { designerList: [ \"Provide clear prompt intent through nearby heading/body context; placeholder alone should not carry all instruction.\", \"Ensure action icons are understandable and consistently positioned (utility actions left, submit/state action right).\", \"Keep status text low-emphasis visually, but persistent enough to communicate send state changes.\", ], engineerList: [ \"Support keyboard parity: Enter submits, Shift+Enter adds newline.\", \"If showing send status, use an aria-live region so updates are announced to assistive tech.\", \"Do not trap focus; users must be able to tab into and out of the prompt and actions naturally.\", \"Ensure a clear placeholder or label context for prompt intent.\", \"Provide aria-label values for icon-only action buttons slotted into actions.\", \"When authoring themes, rely on public --prompt-* tokens and attributes rather than internal prompt CSS variables.\", ], }, anatomy: { image: \"\", list: [\"Prompt surface\", \"Input area\", \"Action slot\"] }, variants: { items: [{ key: \"\", title: \"\", description: \"\", image: \"\" }] }, compositions: { description: \"\", items: [] }, related: { items: [ { name: \"Input\", link: \"https://guides.muibook.com/input\" }, { name: \"Button\", link: \"https://guides.muibook.com/button\" }, ], }, rules: [ { heading: \"Pattern Rule\", description: \"Use Prompt as the shared prompt-surface primitive; keep product-specific flows in compositions.\", doContent: [ { description: \"Reuse this component when Enter submit + floating actions are expected.\", image: \"\" }, ], dontContent: [ { description: \"Do not rebuild the prompt shell in each composition with custom wrappers.\", image: \"\" }, ], }, ], behaviour: { list: [ \"Enter emits a submit event with current value.\", \"Shift+Enter inserts a newline.\", \"Pasting emits prompt-paste with detected payload metadata for consumers to store and render previews.\", \"Short text paste remains in the textarea; long text and binary paste can be converted to preview items based on threshold settings.\", \"Clicking a preview emits prompt-preview-open with normalized preview payload (badge, value, image metadata).\", \"Escape emits escape and closes fan actions when open.\", \"Error feedback supports dismiss and optional expand/collapse for long copy.\", \"Clicking content inside a slotted <mui-prompt-toggle> emits prompt-context-change and switches to context chip mode.\", \"Dismissing content marked with [context-chip] emits prompt-context-dismiss and returns to icon mode.\", \"Actions remain anchored at the prompt edge while text grows.\", \"Action behavior should be equivalent whether triggered by keyboard submit or click.\", \"When loading is set, prompt shows async spinner feedback near submit and blocks additional submits.\", ], }, writing: { list: [\"Use clear placeholder prompts that describe expected user input.\"], }, }, }"
|
|
6351
6441
|
}
|
|
6352
6442
|
],
|
|
6353
6443
|
"exports": [
|
|
@@ -6571,6 +6661,11 @@
|
|
|
6571
6661
|
"name": "onContextChipDismiss",
|
|
6572
6662
|
"privacy": "private"
|
|
6573
6663
|
},
|
|
6664
|
+
{
|
|
6665
|
+
"kind": "method",
|
|
6666
|
+
"name": "ensureFanMode",
|
|
6667
|
+
"privacy": "private"
|
|
6668
|
+
},
|
|
6574
6669
|
{
|
|
6575
6670
|
"kind": "method",
|
|
6576
6671
|
"name": "runColorFade",
|
|
@@ -6737,6 +6832,20 @@
|
|
|
6737
6832
|
}
|
|
6738
6833
|
]
|
|
6739
6834
|
},
|
|
6835
|
+
{
|
|
6836
|
+
"kind": "method",
|
|
6837
|
+
"name": "syncPreviewLoadingState",
|
|
6838
|
+
"privacy": "private",
|
|
6839
|
+
"parameters": [
|
|
6840
|
+
{
|
|
6841
|
+
"name": "assigned",
|
|
6842
|
+
"optional": true,
|
|
6843
|
+
"type": {
|
|
6844
|
+
"text": "Element[]"
|
|
6845
|
+
}
|
|
6846
|
+
}
|
|
6847
|
+
]
|
|
6848
|
+
},
|
|
6740
6849
|
{
|
|
6741
6850
|
"kind": "method",
|
|
6742
6851
|
"name": "normalizePreviewDetail",
|
|
@@ -6909,6 +7018,12 @@
|
|
|
6909
7018
|
{
|
|
6910
7019
|
"name": "preview-auto-clickable"
|
|
6911
7020
|
},
|
|
7021
|
+
{
|
|
7022
|
+
"name": "preview-loading"
|
|
7023
|
+
},
|
|
7024
|
+
{
|
|
7025
|
+
"name": "preview-loading-label"
|
|
7026
|
+
},
|
|
6912
7027
|
{
|
|
6913
7028
|
"name": "preview-dialog-width"
|
|
6914
7029
|
},
|
|
@@ -6986,7 +7101,7 @@
|
|
|
6986
7101
|
"type": {
|
|
6987
7102
|
"text": "MuiDocs"
|
|
6988
7103
|
},
|
|
6989
|
-
"default": "{ PromptPreview: { title: \"Prompt Preview\", description: \"Prompt Preview shows long pasted content in a structured box with title and badge context.\", hero: [\"\"], figma: [\"\"], storybook: [\"https://stories.muibook.com\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-prompt-preview/index.ts\"], website: [\"https://muibook.com/#/prompt-preview\"], guides: [\"https://guides.muibook.com/input\"], usage: { list: [ \"Use before prompt submission when users paste long content.\", \"Show first-line identity and concise snippet for fast scanning.\", \"Use badge to classify payload types like JSON, CSS, or Insightful.\", \"Use `bg-image` to render a visual source and `image-tint` to tune color tone.\", \"Use `inverted` for high-contrast white-on-dark surfaces.\", \"Use the `dismiss` event to track analytics/API updates before removing a preview.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"Keep preview text readable and avoid replacing the editable source input.\"], }, anatomy: { image: \"\", list: [\"Preview box\", \"Image surface (optional)\", \"Name line\", \"Type badge\", \"Snippet body\"] }, variants: { items: [{ key: \"\", title: \"\", description: \"\", image: \"\" }] }, compositions: { description: \"\", items: [] }, related: { items: [ { name: \"Prompt\", link: \"https://guides.muibook.com/input\" }, { name: \"Badge\", link: \"https://guides.muibook.com/badge\" }, { name: \"Body\", link: \"https://guides.muibook.com/body\" }, ], }, rules: [{ heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }] }], behaviour: { list: [\"\"] }, writing: { list: [\"\"] }, }, }"
|
|
7104
|
+
"default": "{ PromptPreview: { title: \"Prompt Preview\", description: \"Prompt Preview shows long pasted content in a structured box with title and badge context.\", hero: [\"\"], figma: [\"\"], storybook: [\"https://stories.muibook.com\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-prompt-preview/index.ts\"], website: [\"https://muibook.com/#/prompt-preview\"], guides: [\"https://guides.muibook.com/input\"], usage: { list: [ \"Use before prompt submission when users paste long content.\", \"Show first-line identity and concise snippet for fast scanning.\", \"Use badge to classify payload types like JSON, CSS, or Insightful.\", \"Use `bg-image` to render a visual source and `image-tint` to tune color tone.\", \"Use `inverted` for high-contrast white-on-dark surfaces.\", \"Use `loading` during async enrichment flows (metadata, URL checks, or media probing).\", \"Set `loading-label` to provide clear accessible loading feedback.\", \"Use the `dismiss` event to track analytics/API updates before removing a preview.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"Keep preview text readable and avoid replacing the editable source input.\"], }, anatomy: { image: \"\", list: [\"Preview box\", \"Image surface (optional)\", \"Name line\", \"Type badge\", \"Snippet body\"] }, variants: { items: [{ key: \"\", title: \"\", description: \"\", image: \"\" }] }, compositions: { description: \"\", items: [] }, related: { items: [ { name: \"Prompt\", link: \"https://guides.muibook.com/input\" }, { name: \"Badge\", link: \"https://guides.muibook.com/badge\" }, { name: \"Body\", link: \"https://guides.muibook.com/body\" }, ], }, rules: [{ heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }] }], behaviour: { list: [\"\"] }, writing: { list: [\"\"] }, }, }"
|
|
6990
7105
|
}
|
|
6991
7106
|
],
|
|
6992
7107
|
"exports": [
|
|
@@ -7168,6 +7283,12 @@
|
|
|
7168
7283
|
},
|
|
7169
7284
|
{
|
|
7170
7285
|
"name": "clickable"
|
|
7286
|
+
},
|
|
7287
|
+
{
|
|
7288
|
+
"name": "loading"
|
|
7289
|
+
},
|
|
7290
|
+
{
|
|
7291
|
+
"name": "loading-label"
|
|
7171
7292
|
}
|
|
7172
7293
|
],
|
|
7173
7294
|
"superclass": {
|
|
@@ -7188,6 +7309,110 @@
|
|
|
7188
7309
|
}
|
|
7189
7310
|
]
|
|
7190
7311
|
},
|
|
7312
|
+
{
|
|
7313
|
+
"kind": "javascript-module",
|
|
7314
|
+
"path": "src/components/mui-prompt-message/doc.ts",
|
|
7315
|
+
"declarations": [
|
|
7316
|
+
{
|
|
7317
|
+
"kind": "variable",
|
|
7318
|
+
"name": "muiDocs",
|
|
7319
|
+
"type": {
|
|
7320
|
+
"text": "MuiDocs"
|
|
7321
|
+
},
|
|
7322
|
+
"default": "{ PromptMessage: { title: \"Prompt Message\", description: \"Prompt Message provides a consistent conversation row shell with avatar and message content slots.\", hero: [\"\"], figma: [\"\"], storybook: [\"https://stories.muibook.com\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-prompt-message/index.ts\"], website: [\"https://muibook.com/#/prompt-message\"], guides: [\"https://guides.muibook.com/body\"], usage: { list: [ \"Use for chat-style reply rows in assistant and support interfaces.\", \"This component is extracted from composition patterns to keep conversation shells consistent.\", \"Slot avatar content into slot='avatar'.\", \"Use body/content components for message text.\", \"Use size='x-small|small|medium|large' to scale avatar/text rhythm across dense and spacious layouts.\", \"Use variant='ghost' when the message row should render without surface treatment.\", \"Use density='compact' when padding should be removed for tight compositions.\", \"Prefer this component over ad hoc grid wrappers when building threaded chat content.\", ], }, accessibility: { designerList: [ \"Maintain clear speaker distinction through avatar + message pairing.\", \"Keep contrast and typography readable in long conversation threads.\", ], engineerList: [ \"Provide meaningful avatar labels where identity context matters.\", \"Preserve DOM reading order (identity first, then message content).\", \"Avoid injecting decorative-only text into message content; keep semantics focused on conversation copy.\", ], }, anatomy: { image: \"\", list: [\"Bubble container\", \"Avatar slot\", \"Message content slot\"] }, variants: { items: [{ key: \"\", title: \"\", description: \"\", image: \"\" }] }, compositions: { description: \"\", items: [] }, related: { items: [ { name: \"Avatar\", link: \"https://guides.muibook.com/avatar\" }, { name: \"Body\", link: \"https://guides.muibook.com/body\" }, ], }, rules: [ { heading: \"Pattern Rule\", description: \"Use Prompt Message as the base conversation row primitive.\", doContent: [{ description: \"Compose identity + message content through avatar and body slots.\", image: \"\" }], dontContent: [{ description: \"Avoid custom one-off bubble containers per page.\", image: \"\" }], }, ], behaviour: { list: [ \"Avatar and message content align consistently across rows.\", ], }, writing: { list: [ \"Keep message copy concise and scannable in multi-row threads.\", ], }, }, }"
|
|
7323
|
+
}
|
|
7324
|
+
],
|
|
7325
|
+
"exports": [
|
|
7326
|
+
{
|
|
7327
|
+
"kind": "js",
|
|
7328
|
+
"name": "muiDocs",
|
|
7329
|
+
"declaration": {
|
|
7330
|
+
"name": "muiDocs",
|
|
7331
|
+
"module": "src/components/mui-prompt-message/doc.ts"
|
|
7332
|
+
}
|
|
7333
|
+
}
|
|
7334
|
+
]
|
|
7335
|
+
},
|
|
7336
|
+
{
|
|
7337
|
+
"kind": "javascript-module",
|
|
7338
|
+
"path": "src/components/mui-prompt-message/index.ts",
|
|
7339
|
+
"declarations": [
|
|
7340
|
+
{
|
|
7341
|
+
"kind": "class",
|
|
7342
|
+
"description": "",
|
|
7343
|
+
"name": "MuiPromptMessage",
|
|
7344
|
+
"members": [
|
|
7345
|
+
{
|
|
7346
|
+
"kind": "field",
|
|
7347
|
+
"name": "resizeObserver",
|
|
7348
|
+
"type": {
|
|
7349
|
+
"text": "ResizeObserver | null"
|
|
7350
|
+
},
|
|
7351
|
+
"privacy": "private",
|
|
7352
|
+
"default": "null"
|
|
7353
|
+
},
|
|
7354
|
+
{
|
|
7355
|
+
"kind": "field",
|
|
7356
|
+
"name": "avatarSlotEl",
|
|
7357
|
+
"type": {
|
|
7358
|
+
"text": "HTMLSlotElement | null"
|
|
7359
|
+
},
|
|
7360
|
+
"privacy": "private",
|
|
7361
|
+
"default": "null"
|
|
7362
|
+
},
|
|
7363
|
+
{
|
|
7364
|
+
"kind": "field",
|
|
7365
|
+
"name": "contentSlotEl",
|
|
7366
|
+
"type": {
|
|
7367
|
+
"text": "HTMLSlotElement | null"
|
|
7368
|
+
},
|
|
7369
|
+
"privacy": "private",
|
|
7370
|
+
"default": "null"
|
|
7371
|
+
},
|
|
7372
|
+
{
|
|
7373
|
+
"kind": "method",
|
|
7374
|
+
"name": "render"
|
|
7375
|
+
},
|
|
7376
|
+
{
|
|
7377
|
+
"kind": "method",
|
|
7378
|
+
"name": "bindSlotSync",
|
|
7379
|
+
"privacy": "private"
|
|
7380
|
+
},
|
|
7381
|
+
{
|
|
7382
|
+
"kind": "method",
|
|
7383
|
+
"name": "bindLayoutSync",
|
|
7384
|
+
"privacy": "private"
|
|
7385
|
+
}
|
|
7386
|
+
],
|
|
7387
|
+
"attributes": [
|
|
7388
|
+
{
|
|
7389
|
+
"name": "size"
|
|
7390
|
+
},
|
|
7391
|
+
{
|
|
7392
|
+
"name": "variant"
|
|
7393
|
+
},
|
|
7394
|
+
{
|
|
7395
|
+
"name": "density"
|
|
7396
|
+
}
|
|
7397
|
+
],
|
|
7398
|
+
"superclass": {
|
|
7399
|
+
"name": "HTMLElement"
|
|
7400
|
+
},
|
|
7401
|
+
"tagName": "mui-prompt-message",
|
|
7402
|
+
"customElement": true
|
|
7403
|
+
}
|
|
7404
|
+
],
|
|
7405
|
+
"exports": [
|
|
7406
|
+
{
|
|
7407
|
+
"kind": "custom-element-definition",
|
|
7408
|
+
"name": "mui-prompt-message",
|
|
7409
|
+
"declaration": {
|
|
7410
|
+
"name": "MuiPromptMessage",
|
|
7411
|
+
"module": "src/components/mui-prompt-message/index.ts"
|
|
7412
|
+
}
|
|
7413
|
+
}
|
|
7414
|
+
]
|
|
7415
|
+
},
|
|
7191
7416
|
{
|
|
7192
7417
|
"kind": "javascript-module",
|
|
7193
7418
|
"path": "src/components/mui-prompt-toggle/index.ts",
|
|
@@ -7934,37 +8159,7 @@
|
|
|
7934
8159
|
},
|
|
7935
8160
|
{
|
|
7936
8161
|
"kind": "javascript-module",
|
|
7937
|
-
"path": "src/components/mui-
|
|
7938
|
-
"declarations": [
|
|
7939
|
-
{
|
|
7940
|
-
"kind": "variable",
|
|
7941
|
-
"name": "muiDocs",
|
|
7942
|
-
"type": {
|
|
7943
|
-
"text": "MuiDocs"
|
|
7944
|
-
},
|
|
7945
|
-
"default": "{ Slat: { title: \"Slat\", description: \"Used to display structured data in a stacked format, typically on smaller viewports or within narrow-width layouts. Slats offer flexibility to surface key content and support custom layouts, stacking, or expansion of additional details.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/2SHOSwTkf7V7Ql4OaobtMg/2cacf5103d02e00f67748578213f4433/Slat_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=957-8535&t=0ytskb8cxriEmdz2-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/content-slat--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-slat/index.ts\"], website: [\"https://muibook.com/#/slat\"], guides: [\"https://guides.muibook.com/slat\"], usage: { list: [ \"Suitable for displaying data in narrow-width containers, such as side panels\", \"Use as a responsive alternative to tables on mobile or narrow viewports\", \"deal for presenting structured data in a compact, scannable format\", \"Supports stacking labels and values for easier readability\", \"Can include expandable sections to reveal more content on demand\", ], }, accessibility: { designerList: [\"mui-slat uses role='row'\", \"slotted children inherit role='cell'\"], engineerList: [\"mui-slat uses role='row'\", \"slotted children inherit role='cell'\"], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/0OzwVoT0EyK1sR1ufn3Vw/3cbee51beec1240ebeaaad485bff5970/Slat_-_Anatomy.png\", list: [ \"Header (Start): Slot for the header of slat items.\", \"Header (End): Optional area for secondary information.\", \"Row (Start): Primary content slot in a slat layout.\", \"Row (End): Secondary content slot in a slat layout.\", \"Accessory: Use for an icon or other suitable elements within the limited space available.\", \"Action: Enables the slat to become a clickable action.\", ], }, 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\", }, { key: \"account-activity\", name: \"Account Activity\", description: \"In Account Activity, slats are used to display a list of recent actions. Each slat provides a clear breakdown of primary details with optional secondary information, ensuring activity is both easy to read and consistent across the interface.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/5GVrfo3fcsVnX7yduux6kE/978c2c6635bf19ee7e67ccd26744ad33/Slat_-_Account_Composition.png\", }, ], }, related: { items: [ { name: \"Icons\", link: \"https://guides.muibook.com/icons\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
|
|
7946
|
-
}
|
|
7947
|
-
],
|
|
7948
|
-
"exports": [
|
|
7949
|
-
{
|
|
7950
|
-
"kind": "js",
|
|
7951
|
-
"name": "muiDocs",
|
|
7952
|
-
"declaration": {
|
|
7953
|
-
"name": "muiDocs",
|
|
7954
|
-
"module": "src/components/mui-slat/doc.ts"
|
|
7955
|
-
}
|
|
7956
|
-
}
|
|
7957
|
-
]
|
|
7958
|
-
},
|
|
7959
|
-
{
|
|
7960
|
-
"kind": "javascript-module",
|
|
7961
|
-
"path": "src/components/mui-slat/index.ts",
|
|
7962
|
-
"declarations": [],
|
|
7963
|
-
"exports": []
|
|
7964
|
-
},
|
|
7965
|
-
{
|
|
7966
|
-
"kind": "javascript-module",
|
|
7967
|
-
"path": "src/components/mui-smart-card/doc.ts",
|
|
8162
|
+
"path": "src/components/mui-skeleton/doc.ts",
|
|
7968
8163
|
"declarations": [
|
|
7969
8164
|
{
|
|
7970
8165
|
"kind": "variable",
|
|
@@ -7972,7 +8167,7 @@
|
|
|
7972
8167
|
"type": {
|
|
7973
8168
|
"text": "MuiDocs"
|
|
7974
8169
|
},
|
|
7975
|
-
"default": "{
|
|
8170
|
+
"default": "{ Skeleton: { title: \"Skeleton\", description: \"Skeleton provides reusable placeholder blocks for loading and wireframe prototyping flows.\", hero: [\"\"], figma: [\"\"], storybook: [\"https://stories.muibook.com\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-skeleton/index.ts\"], website: [\"https://muibook.com/#/skeleton\"], guides: [\"https://guides.muibook.com/loader\"], usage: { list: [ \"Use line skeletons for text placeholders and rect/circle for media/avatar placeholders.\", \"Prefer token, rem, and percentage sizing over fixed pixel values for responsive placeholder design.\", \"Use Muibook layout components (mui-v-stack, mui-h-stack, mui-grid) to compose skeleton structures.\", \"Use duration to slow down shimmer in calmer loading contexts.\", \"Use max-width to constrain placeholder length without inline styles.\", \"Use before/after slots to compose action or avatar placeholders around loading content.\", \"Set loading='false' to reveal real content in the same markup shell.\", ], }, accessibility: { designerList: [\"\"], engineerList: [ \"Skeleton is decorative by default; keep it paired with semantic loading context at section/page level.\", \"Respect prefers-reduced-motion by avoiding mandatory motion-only communication.\", ], }, anatomy: { image: \"\", list: [\"Before slot\", \"Skeleton blocks\", \"After slot\", \"Optional content reveal slot\"] }, variants: { items: [{ key: \"\", title: \"\", description: \"\", image: \"\" }] }, compositions: { description: \"\", items: [] }, related: { items: [ { name: \"Loader\", link: \"https://guides.muibook.com/loader\" }, { name: \"Spinner\", link: \"https://guides.muibook.com/loader\" }, ], }, rules: [{ heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }] }], behaviour: { list: [\"\"] }, writing: { list: [\"\"] }, }, }"
|
|
7976
8171
|
}
|
|
7977
8172
|
],
|
|
7978
8173
|
"exports": [
|
|
@@ -7981,20 +8176,59 @@
|
|
|
7981
8176
|
"name": "muiDocs",
|
|
7982
8177
|
"declaration": {
|
|
7983
8178
|
"name": "muiDocs",
|
|
7984
|
-
"module": "src/components/mui-
|
|
8179
|
+
"module": "src/components/mui-skeleton/doc.ts"
|
|
7985
8180
|
}
|
|
7986
8181
|
}
|
|
7987
8182
|
]
|
|
7988
8183
|
},
|
|
7989
8184
|
{
|
|
7990
8185
|
"kind": "javascript-module",
|
|
7991
|
-
"path": "src/components/mui-
|
|
8186
|
+
"path": "src/components/mui-skeleton/index.ts",
|
|
7992
8187
|
"declarations": [
|
|
7993
8188
|
{
|
|
7994
8189
|
"kind": "class",
|
|
7995
8190
|
"description": "",
|
|
7996
|
-
"name": "
|
|
8191
|
+
"name": "MuiSkeleton",
|
|
7997
8192
|
"members": [
|
|
8193
|
+
{
|
|
8194
|
+
"kind": "method",
|
|
8195
|
+
"name": "getSizeHeight",
|
|
8196
|
+
"privacy": "private",
|
|
8197
|
+
"parameters": [
|
|
8198
|
+
{
|
|
8199
|
+
"name": "size",
|
|
8200
|
+
"type": {
|
|
8201
|
+
"text": "string"
|
|
8202
|
+
}
|
|
8203
|
+
}
|
|
8204
|
+
]
|
|
8205
|
+
},
|
|
8206
|
+
{
|
|
8207
|
+
"kind": "method",
|
|
8208
|
+
"name": "getCircleSize",
|
|
8209
|
+
"privacy": "private",
|
|
8210
|
+
"parameters": [
|
|
8211
|
+
{
|
|
8212
|
+
"name": "size",
|
|
8213
|
+
"type": {
|
|
8214
|
+
"text": "string"
|
|
8215
|
+
}
|
|
8216
|
+
}
|
|
8217
|
+
]
|
|
8218
|
+
},
|
|
8219
|
+
{
|
|
8220
|
+
"kind": "method",
|
|
8221
|
+
"name": "getLineWidths",
|
|
8222
|
+
"privacy": "private",
|
|
8223
|
+
"parameters": [
|
|
8224
|
+
{
|
|
8225
|
+
"name": "lines",
|
|
8226
|
+
"type": {
|
|
8227
|
+
"text": "number"
|
|
8228
|
+
}
|
|
8229
|
+
}
|
|
8230
|
+
]
|
|
8231
|
+
},
|
|
7998
8232
|
{
|
|
7999
8233
|
"kind": "method",
|
|
8000
8234
|
"name": "render"
|
|
@@ -8002,60 +8236,63 @@
|
|
|
8002
8236
|
],
|
|
8003
8237
|
"attributes": [
|
|
8004
8238
|
{
|
|
8005
|
-
"name": "
|
|
8239
|
+
"name": "shape"
|
|
8006
8240
|
},
|
|
8007
8241
|
{
|
|
8008
|
-
"name": "
|
|
8242
|
+
"name": "size"
|
|
8009
8243
|
},
|
|
8010
8244
|
{
|
|
8011
|
-
"name": "
|
|
8245
|
+
"name": "width"
|
|
8012
8246
|
},
|
|
8013
8247
|
{
|
|
8014
|
-
"name": "
|
|
8248
|
+
"name": "height"
|
|
8015
8249
|
},
|
|
8016
8250
|
{
|
|
8017
|
-
"name": "
|
|
8251
|
+
"name": "radius"
|
|
8018
8252
|
},
|
|
8019
8253
|
{
|
|
8020
|
-
"name": "
|
|
8254
|
+
"name": "animation"
|
|
8021
8255
|
},
|
|
8022
8256
|
{
|
|
8023
|
-
"name": "
|
|
8257
|
+
"name": "lines"
|
|
8024
8258
|
},
|
|
8025
8259
|
{
|
|
8026
|
-
"name": "
|
|
8260
|
+
"name": "gap"
|
|
8027
8261
|
},
|
|
8028
8262
|
{
|
|
8029
|
-
"name": "
|
|
8263
|
+
"name": "loading"
|
|
8030
8264
|
},
|
|
8031
8265
|
{
|
|
8032
|
-
"name": "
|
|
8266
|
+
"name": "line-widths"
|
|
8033
8267
|
},
|
|
8034
8268
|
{
|
|
8035
|
-
"name": "
|
|
8269
|
+
"name": "max-width"
|
|
8270
|
+
},
|
|
8271
|
+
{
|
|
8272
|
+
"name": "duration"
|
|
8036
8273
|
}
|
|
8037
8274
|
],
|
|
8038
8275
|
"superclass": {
|
|
8039
8276
|
"name": "HTMLElement"
|
|
8040
8277
|
},
|
|
8041
|
-
"tagName": "mui-
|
|
8278
|
+
"tagName": "mui-skeleton",
|
|
8042
8279
|
"customElement": true
|
|
8043
8280
|
}
|
|
8044
8281
|
],
|
|
8045
8282
|
"exports": [
|
|
8046
8283
|
{
|
|
8047
8284
|
"kind": "custom-element-definition",
|
|
8048
|
-
"name": "mui-
|
|
8285
|
+
"name": "mui-skeleton",
|
|
8049
8286
|
"declaration": {
|
|
8050
|
-
"name": "
|
|
8051
|
-
"module": "src/components/mui-
|
|
8287
|
+
"name": "MuiSkeleton",
|
|
8288
|
+
"module": "src/components/mui-skeleton/index.ts"
|
|
8052
8289
|
}
|
|
8053
8290
|
}
|
|
8054
8291
|
]
|
|
8055
8292
|
},
|
|
8056
8293
|
{
|
|
8057
8294
|
"kind": "javascript-module",
|
|
8058
|
-
"path": "src/components/mui-
|
|
8295
|
+
"path": "src/components/mui-slat/doc.ts",
|
|
8059
8296
|
"declarations": [
|
|
8060
8297
|
{
|
|
8061
8298
|
"kind": "variable",
|
|
@@ -8063,7 +8300,7 @@
|
|
|
8063
8300
|
"type": {
|
|
8064
8301
|
"text": "MuiDocs"
|
|
8065
8302
|
},
|
|
8066
|
-
"default": "{
|
|
8303
|
+
"default": "{ Slat: { title: \"Slat\", description: \"Used to display structured data in a stacked format, typically on smaller viewports or within narrow-width layouts. Slats offer flexibility to surface key content and support custom layouts, stacking, or expansion of additional details.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/2SHOSwTkf7V7Ql4OaobtMg/2cacf5103d02e00f67748578213f4433/Slat_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=957-8535&t=0ytskb8cxriEmdz2-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/content-slat--docs\"], github: [\"https://github.com/michaeltrilford/muibook/blob/main/src/components/mui-slat/index.ts\"], website: [\"https://muibook.com/#/slat\"], guides: [\"https://guides.muibook.com/slat\"], usage: { list: [ \"Suitable for displaying data in narrow-width containers, such as side panels\", \"Use as a responsive alternative to tables on mobile or narrow viewports\", \"deal for presenting structured data in a compact, scannable format\", \"Supports stacking labels and values for easier readability\", \"Can include expandable sections to reveal more content on demand\", ], }, accessibility: { designerList: [\"mui-slat uses role='row'\", \"slotted children inherit role='cell'\"], engineerList: [\"mui-slat uses role='row'\", \"slotted children inherit role='cell'\"], }, anatomy: { image: \"https://images.ctfassets.net/i5uwscj4pkk2/0OzwVoT0EyK1sR1ufn3Vw/3cbee51beec1240ebeaaad485bff5970/Slat_-_Anatomy.png\", list: [ \"Header (Start): Slot for the header of slat items.\", \"Header (End): Optional area for secondary information.\", \"Row (Start): Primary content slot in a slat layout.\", \"Row (End): Secondary content slot in a slat layout.\", \"Accessory: Use for an icon or other suitable elements within the limited space available.\", \"Action: Enables the slat to become a clickable action.\", ], }, 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\", }, { key: \"account-activity\", name: \"Account Activity\", description: \"In Account Activity, slats are used to display a list of recent actions. Each slat provides a clear breakdown of primary details with optional secondary information, ensuring activity is both easy to read and consistent across the interface.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/5GVrfo3fcsVnX7yduux6kE/978c2c6635bf19ee7e67ccd26744ad33/Slat_-_Account_Composition.png\", }, ], }, related: { items: [ { name: \"Icons\", link: \"https://guides.muibook.com/icons\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
|
|
8067
8304
|
}
|
|
8068
8305
|
],
|
|
8069
8306
|
"exports": [
|
|
@@ -8072,60 +8309,500 @@
|
|
|
8072
8309
|
"name": "muiDocs",
|
|
8073
8310
|
"declaration": {
|
|
8074
8311
|
"name": "muiDocs",
|
|
8075
|
-
"module": "src/components/mui-
|
|
8312
|
+
"module": "src/components/mui-slat/doc.ts"
|
|
8076
8313
|
}
|
|
8077
8314
|
}
|
|
8078
8315
|
]
|
|
8079
8316
|
},
|
|
8080
8317
|
{
|
|
8081
8318
|
"kind": "javascript-module",
|
|
8082
|
-
"path": "src/components/mui-
|
|
8319
|
+
"path": "src/components/mui-slat/index.ts",
|
|
8320
|
+
"declarations": [],
|
|
8321
|
+
"exports": []
|
|
8322
|
+
},
|
|
8323
|
+
{
|
|
8324
|
+
"kind": "javascript-module",
|
|
8325
|
+
"path": "src/components/mui-slide-frame/doc.ts",
|
|
8083
8326
|
"declarations": [
|
|
8084
8327
|
{
|
|
8085
|
-
"kind": "
|
|
8086
|
-
"
|
|
8087
|
-
"
|
|
8088
|
-
|
|
8089
|
-
{
|
|
8090
|
-
"kind": "method",
|
|
8091
|
-
"name": "render"
|
|
8092
|
-
}
|
|
8093
|
-
],
|
|
8094
|
-
"attributes": [
|
|
8095
|
-
{
|
|
8096
|
-
"name": "size"
|
|
8097
|
-
},
|
|
8098
|
-
{
|
|
8099
|
-
"name": "color"
|
|
8100
|
-
},
|
|
8101
|
-
{
|
|
8102
|
-
"name": "duration"
|
|
8103
|
-
},
|
|
8104
|
-
{
|
|
8105
|
-
"name": "label"
|
|
8106
|
-
}
|
|
8107
|
-
],
|
|
8108
|
-
"superclass": {
|
|
8109
|
-
"name": "HTMLElement"
|
|
8328
|
+
"kind": "variable",
|
|
8329
|
+
"name": "muiDocs",
|
|
8330
|
+
"type": {
|
|
8331
|
+
"text": "MuiDocs"
|
|
8110
8332
|
},
|
|
8111
|
-
"
|
|
8112
|
-
"customElement": true
|
|
8333
|
+
"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|custom' 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|ghost' 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.\", \"Use preview to show warning treatment for draft/unreviewed slide states.\", \"Use lightbox to open slotted image content in a built-in dialog when clicked.\", \"When multiple sections exist, users can navigate with arrow keys or horizontal swipe gestures.\", \"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 arrow keys.\", \"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: [\"\"] }, }, }"
|
|
8113
8334
|
}
|
|
8114
8335
|
],
|
|
8115
8336
|
"exports": [
|
|
8116
8337
|
{
|
|
8117
|
-
"kind": "
|
|
8118
|
-
"name": "
|
|
8338
|
+
"kind": "js",
|
|
8339
|
+
"name": "muiDocs",
|
|
8119
8340
|
"declaration": {
|
|
8120
|
-
"name": "
|
|
8121
|
-
"module": "src/components/mui-
|
|
8341
|
+
"name": "muiDocs",
|
|
8342
|
+
"module": "src/components/mui-slide-frame/doc.ts"
|
|
8343
|
+
}
|
|
8344
|
+
}
|
|
8345
|
+
]
|
|
8346
|
+
},
|
|
8347
|
+
{
|
|
8348
|
+
"kind": "javascript-module",
|
|
8349
|
+
"path": "src/components/mui-slide-frame/index.ts",
|
|
8350
|
+
"declarations": [
|
|
8351
|
+
{
|
|
8352
|
+
"kind": "class",
|
|
8353
|
+
"description": "",
|
|
8354
|
+
"name": "MuiSlideFrame",
|
|
8355
|
+
"members": [
|
|
8356
|
+
{
|
|
8357
|
+
"kind": "field",
|
|
8358
|
+
"name": "defaultSlot",
|
|
8359
|
+
"type": {
|
|
8360
|
+
"text": "HTMLSlotElement | null"
|
|
8361
|
+
},
|
|
8362
|
+
"privacy": "private",
|
|
8363
|
+
"default": "null"
|
|
8364
|
+
},
|
|
8365
|
+
{
|
|
8366
|
+
"kind": "field",
|
|
8367
|
+
"name": "headerSlot",
|
|
8368
|
+
"type": {
|
|
8369
|
+
"text": "HTMLSlotElement | null"
|
|
8370
|
+
},
|
|
8371
|
+
"privacy": "private",
|
|
8372
|
+
"default": "null"
|
|
8373
|
+
},
|
|
8374
|
+
{
|
|
8375
|
+
"kind": "field",
|
|
8376
|
+
"name": "headerAfterSlot",
|
|
8377
|
+
"type": {
|
|
8378
|
+
"text": "HTMLSlotElement | null"
|
|
8379
|
+
},
|
|
8380
|
+
"privacy": "private",
|
|
8381
|
+
"default": "null"
|
|
8382
|
+
},
|
|
8383
|
+
{
|
|
8384
|
+
"kind": "field",
|
|
8385
|
+
"name": "headerDescriptionSlot",
|
|
8386
|
+
"type": {
|
|
8387
|
+
"text": "HTMLSlotElement | null"
|
|
8388
|
+
},
|
|
8389
|
+
"privacy": "private",
|
|
8390
|
+
"default": "null"
|
|
8391
|
+
},
|
|
8392
|
+
{
|
|
8393
|
+
"kind": "field",
|
|
8394
|
+
"name": "footerSlot",
|
|
8395
|
+
"type": {
|
|
8396
|
+
"text": "HTMLSlotElement | null"
|
|
8397
|
+
},
|
|
8398
|
+
"privacy": "private",
|
|
8399
|
+
"default": "null"
|
|
8400
|
+
},
|
|
8401
|
+
{
|
|
8402
|
+
"kind": "field",
|
|
8403
|
+
"name": "footerAfterSlot",
|
|
8404
|
+
"type": {
|
|
8405
|
+
"text": "HTMLSlotElement | null"
|
|
8406
|
+
},
|
|
8407
|
+
"privacy": "private",
|
|
8408
|
+
"default": "null"
|
|
8409
|
+
},
|
|
8410
|
+
{
|
|
8411
|
+
"kind": "field",
|
|
8412
|
+
"name": "footerDescriptionSlot",
|
|
8413
|
+
"type": {
|
|
8414
|
+
"text": "HTMLSlotElement | null"
|
|
8415
|
+
},
|
|
8416
|
+
"privacy": "private",
|
|
8417
|
+
"default": "null"
|
|
8418
|
+
},
|
|
8419
|
+
{
|
|
8420
|
+
"kind": "field",
|
|
8421
|
+
"name": "notesSlot",
|
|
8422
|
+
"type": {
|
|
8423
|
+
"text": "HTMLSlotElement | null"
|
|
8424
|
+
},
|
|
8425
|
+
"privacy": "private",
|
|
8426
|
+
"default": "null"
|
|
8427
|
+
},
|
|
8428
|
+
{
|
|
8429
|
+
"kind": "field",
|
|
8430
|
+
"name": "imageSlot",
|
|
8431
|
+
"type": {
|
|
8432
|
+
"text": "HTMLSlotElement | null"
|
|
8433
|
+
},
|
|
8434
|
+
"privacy": "private",
|
|
8435
|
+
"default": "null"
|
|
8436
|
+
},
|
|
8437
|
+
{
|
|
8438
|
+
"kind": "field",
|
|
8439
|
+
"name": "surfaceEl",
|
|
8440
|
+
"type": {
|
|
8441
|
+
"text": "HTMLElement | null"
|
|
8442
|
+
},
|
|
8443
|
+
"privacy": "private",
|
|
8444
|
+
"default": "null"
|
|
8445
|
+
},
|
|
8446
|
+
{
|
|
8447
|
+
"kind": "field",
|
|
8448
|
+
"name": "pointerStartX",
|
|
8449
|
+
"type": {
|
|
8450
|
+
"text": "number | null"
|
|
8451
|
+
},
|
|
8452
|
+
"privacy": "private",
|
|
8453
|
+
"default": "null"
|
|
8454
|
+
},
|
|
8455
|
+
{
|
|
8456
|
+
"kind": "field",
|
|
8457
|
+
"name": "pointerStartY",
|
|
8458
|
+
"type": {
|
|
8459
|
+
"text": "number | null"
|
|
8460
|
+
},
|
|
8461
|
+
"privacy": "private",
|
|
8462
|
+
"default": "null"
|
|
8463
|
+
},
|
|
8464
|
+
{
|
|
8465
|
+
"kind": "field",
|
|
8466
|
+
"name": "onSlotChange",
|
|
8467
|
+
"privacy": "private"
|
|
8468
|
+
},
|
|
8469
|
+
{
|
|
8470
|
+
"kind": "field",
|
|
8471
|
+
"name": "onChromeSlotChange",
|
|
8472
|
+
"privacy": "private"
|
|
8473
|
+
},
|
|
8474
|
+
{
|
|
8475
|
+
"kind": "field",
|
|
8476
|
+
"name": "onSurfaceClick",
|
|
8477
|
+
"privacy": "private"
|
|
8478
|
+
},
|
|
8479
|
+
{
|
|
8480
|
+
"kind": "field",
|
|
8481
|
+
"name": "onPointerDown",
|
|
8482
|
+
"privacy": "private"
|
|
8483
|
+
},
|
|
8484
|
+
{
|
|
8485
|
+
"kind": "field",
|
|
8486
|
+
"name": "onPointerUp",
|
|
8487
|
+
"privacy": "private"
|
|
8488
|
+
},
|
|
8489
|
+
{
|
|
8490
|
+
"kind": "field",
|
|
8491
|
+
"name": "onKeyDown",
|
|
8492
|
+
"privacy": "private"
|
|
8493
|
+
},
|
|
8494
|
+
{
|
|
8495
|
+
"kind": "field",
|
|
8496
|
+
"name": "onDocumentKeyDown",
|
|
8497
|
+
"privacy": "private"
|
|
8498
|
+
},
|
|
8499
|
+
{
|
|
8500
|
+
"kind": "method",
|
|
8501
|
+
"name": "getSections",
|
|
8502
|
+
"privacy": "private"
|
|
8503
|
+
},
|
|
8504
|
+
{
|
|
8505
|
+
"kind": "method",
|
|
8506
|
+
"name": "getActiveSectionIndex",
|
|
8507
|
+
"privacy": "private"
|
|
8508
|
+
},
|
|
8509
|
+
{
|
|
8510
|
+
"kind": "method",
|
|
8511
|
+
"name": "setActiveSectionIndex",
|
|
8512
|
+
"privacy": "private",
|
|
8513
|
+
"parameters": [
|
|
8514
|
+
{
|
|
8515
|
+
"name": "index",
|
|
8516
|
+
"type": {
|
|
8517
|
+
"text": "number"
|
|
8518
|
+
}
|
|
8519
|
+
}
|
|
8520
|
+
]
|
|
8521
|
+
},
|
|
8522
|
+
{
|
|
8523
|
+
"kind": "method",
|
|
8524
|
+
"name": "nextSection"
|
|
8525
|
+
},
|
|
8526
|
+
{
|
|
8527
|
+
"kind": "method",
|
|
8528
|
+
"name": "prevSection"
|
|
8529
|
+
},
|
|
8530
|
+
{
|
|
8531
|
+
"kind": "method",
|
|
8532
|
+
"name": "addSection",
|
|
8533
|
+
"parameters": [
|
|
8534
|
+
{
|
|
8535
|
+
"name": "content",
|
|
8536
|
+
"optional": true,
|
|
8537
|
+
"type": {
|
|
8538
|
+
"text": "HTMLElement | string"
|
|
8539
|
+
}
|
|
8540
|
+
}
|
|
8541
|
+
]
|
|
8542
|
+
},
|
|
8543
|
+
{
|
|
8544
|
+
"kind": "method",
|
|
8545
|
+
"name": "toggleNotes",
|
|
8546
|
+
"parameters": [
|
|
8547
|
+
{
|
|
8548
|
+
"name": "force",
|
|
8549
|
+
"optional": true,
|
|
8550
|
+
"type": {
|
|
8551
|
+
"text": "boolean"
|
|
8552
|
+
}
|
|
8553
|
+
}
|
|
8554
|
+
]
|
|
8555
|
+
},
|
|
8556
|
+
{
|
|
8557
|
+
"kind": "method",
|
|
8558
|
+
"name": "resolveRatio",
|
|
8559
|
+
"privacy": "private"
|
|
8560
|
+
},
|
|
8561
|
+
{
|
|
8562
|
+
"kind": "method",
|
|
8563
|
+
"name": "syncSections",
|
|
8564
|
+
"privacy": "private"
|
|
8565
|
+
},
|
|
8566
|
+
{
|
|
8567
|
+
"kind": "method",
|
|
8568
|
+
"name": "handleArrowNavigation",
|
|
8569
|
+
"privacy": "private",
|
|
8570
|
+
"parameters": [
|
|
8571
|
+
{
|
|
8572
|
+
"name": "event",
|
|
8573
|
+
"type": {
|
|
8574
|
+
"text": "KeyboardEvent"
|
|
8575
|
+
}
|
|
8576
|
+
}
|
|
8577
|
+
]
|
|
8578
|
+
},
|
|
8579
|
+
{
|
|
8580
|
+
"kind": "method",
|
|
8581
|
+
"name": "isEditableTarget",
|
|
8582
|
+
"privacy": "private",
|
|
8583
|
+
"parameters": [
|
|
8584
|
+
{
|
|
8585
|
+
"name": "target",
|
|
8586
|
+
"type": {
|
|
8587
|
+
"text": "EventTarget | null"
|
|
8588
|
+
}
|
|
8589
|
+
}
|
|
8590
|
+
]
|
|
8591
|
+
},
|
|
8592
|
+
{
|
|
8593
|
+
"kind": "method",
|
|
8594
|
+
"name": "shouldHandleGlobalKeys",
|
|
8595
|
+
"privacy": "private",
|
|
8596
|
+
"parameters": [
|
|
8597
|
+
{
|
|
8598
|
+
"name": "event",
|
|
8599
|
+
"type": {
|
|
8600
|
+
"text": "KeyboardEvent"
|
|
8601
|
+
}
|
|
8602
|
+
}
|
|
8603
|
+
]
|
|
8604
|
+
},
|
|
8605
|
+
{
|
|
8606
|
+
"kind": "method",
|
|
8607
|
+
"name": "render",
|
|
8608
|
+
"privacy": "private"
|
|
8609
|
+
},
|
|
8610
|
+
{
|
|
8611
|
+
"kind": "method",
|
|
8612
|
+
"name": "syncChromeState",
|
|
8613
|
+
"privacy": "private"
|
|
8614
|
+
},
|
|
8615
|
+
{
|
|
8616
|
+
"kind": "method",
|
|
8617
|
+
"name": "handleSurfaceClick",
|
|
8618
|
+
"privacy": "private",
|
|
8619
|
+
"parameters": [
|
|
8620
|
+
{
|
|
8621
|
+
"name": "event",
|
|
8622
|
+
"type": {
|
|
8623
|
+
"text": "Event"
|
|
8624
|
+
}
|
|
8625
|
+
}
|
|
8626
|
+
]
|
|
8627
|
+
},
|
|
8628
|
+
{
|
|
8629
|
+
"kind": "method",
|
|
8630
|
+
"name": "handlePointerDown",
|
|
8631
|
+
"privacy": "private",
|
|
8632
|
+
"parameters": [
|
|
8633
|
+
{
|
|
8634
|
+
"name": "event",
|
|
8635
|
+
"type": {
|
|
8636
|
+
"text": "PointerEvent"
|
|
8637
|
+
}
|
|
8638
|
+
}
|
|
8639
|
+
]
|
|
8640
|
+
},
|
|
8641
|
+
{
|
|
8642
|
+
"kind": "method",
|
|
8643
|
+
"name": "handlePointerUp",
|
|
8644
|
+
"privacy": "private",
|
|
8645
|
+
"parameters": [
|
|
8646
|
+
{
|
|
8647
|
+
"name": "event",
|
|
8648
|
+
"type": {
|
|
8649
|
+
"text": "PointerEvent"
|
|
8650
|
+
}
|
|
8651
|
+
}
|
|
8652
|
+
]
|
|
8653
|
+
},
|
|
8654
|
+
{
|
|
8655
|
+
"kind": "method",
|
|
8656
|
+
"name": "resolveLightboxImage",
|
|
8657
|
+
"privacy": "private",
|
|
8658
|
+
"parameters": [
|
|
8659
|
+
{
|
|
8660
|
+
"name": "path",
|
|
8661
|
+
"type": {
|
|
8662
|
+
"text": "EventTarget[]"
|
|
8663
|
+
}
|
|
8664
|
+
},
|
|
8665
|
+
{
|
|
8666
|
+
"name": "assigned",
|
|
8667
|
+
"type": {
|
|
8668
|
+
"text": "Element[]"
|
|
8669
|
+
}
|
|
8670
|
+
}
|
|
8671
|
+
]
|
|
8672
|
+
},
|
|
8673
|
+
{
|
|
8674
|
+
"kind": "method",
|
|
8675
|
+
"name": "openLightbox",
|
|
8676
|
+
"privacy": "private",
|
|
8677
|
+
"parameters": [
|
|
8678
|
+
{
|
|
8679
|
+
"name": "src",
|
|
8680
|
+
"type": {
|
|
8681
|
+
"text": "string"
|
|
8682
|
+
}
|
|
8683
|
+
},
|
|
8684
|
+
{
|
|
8685
|
+
"name": "alt",
|
|
8686
|
+
"type": {
|
|
8687
|
+
"text": "string"
|
|
8688
|
+
}
|
|
8689
|
+
}
|
|
8690
|
+
]
|
|
8691
|
+
},
|
|
8692
|
+
{
|
|
8693
|
+
"kind": "method",
|
|
8694
|
+
"name": "escapeHtml",
|
|
8695
|
+
"privacy": "private",
|
|
8696
|
+
"parameters": [
|
|
8697
|
+
{
|
|
8698
|
+
"name": "value",
|
|
8699
|
+
"type": {
|
|
8700
|
+
"text": "string"
|
|
8701
|
+
}
|
|
8702
|
+
}
|
|
8703
|
+
]
|
|
8704
|
+
}
|
|
8705
|
+
],
|
|
8706
|
+
"events": [
|
|
8707
|
+
{
|
|
8708
|
+
"name": "section-change",
|
|
8709
|
+
"type": {
|
|
8710
|
+
"text": "CustomEvent"
|
|
8711
|
+
}
|
|
8712
|
+
},
|
|
8713
|
+
{
|
|
8714
|
+
"name": "section-add",
|
|
8715
|
+
"type": {
|
|
8716
|
+
"text": "CustomEvent"
|
|
8717
|
+
}
|
|
8718
|
+
},
|
|
8719
|
+
{
|
|
8720
|
+
"name": "notes-toggle",
|
|
8721
|
+
"type": {
|
|
8722
|
+
"text": "CustomEvent"
|
|
8723
|
+
}
|
|
8724
|
+
},
|
|
8725
|
+
{
|
|
8726
|
+
"name": "lightbox-close",
|
|
8727
|
+
"type": {
|
|
8728
|
+
"text": "CustomEvent"
|
|
8729
|
+
}
|
|
8730
|
+
},
|
|
8731
|
+
{
|
|
8732
|
+
"name": "lightbox-open",
|
|
8733
|
+
"type": {
|
|
8734
|
+
"text": "CustomEvent"
|
|
8735
|
+
}
|
|
8736
|
+
}
|
|
8737
|
+
],
|
|
8738
|
+
"attributes": [
|
|
8739
|
+
{
|
|
8740
|
+
"name": "ratio"
|
|
8741
|
+
},
|
|
8742
|
+
{
|
|
8743
|
+
"name": "ratio-width"
|
|
8744
|
+
},
|
|
8745
|
+
{
|
|
8746
|
+
"name": "ratio-height"
|
|
8747
|
+
},
|
|
8748
|
+
{
|
|
8749
|
+
"name": "present"
|
|
8750
|
+
},
|
|
8751
|
+
{
|
|
8752
|
+
"name": "active-section"
|
|
8753
|
+
},
|
|
8754
|
+
{
|
|
8755
|
+
"name": "padding"
|
|
8756
|
+
},
|
|
8757
|
+
{
|
|
8758
|
+
"name": "notes-open"
|
|
8759
|
+
},
|
|
8760
|
+
{
|
|
8761
|
+
"name": "variant"
|
|
8762
|
+
},
|
|
8763
|
+
{
|
|
8764
|
+
"name": "radius"
|
|
8765
|
+
},
|
|
8766
|
+
{
|
|
8767
|
+
"name": "title"
|
|
8768
|
+
},
|
|
8769
|
+
{
|
|
8770
|
+
"name": "footer-text"
|
|
8771
|
+
},
|
|
8772
|
+
{
|
|
8773
|
+
"name": "hide-counter"
|
|
8774
|
+
},
|
|
8775
|
+
{
|
|
8776
|
+
"name": "preview"
|
|
8777
|
+
},
|
|
8778
|
+
{
|
|
8779
|
+
"name": "lightbox"
|
|
8780
|
+
},
|
|
8781
|
+
{
|
|
8782
|
+
"name": "scroll"
|
|
8783
|
+
}
|
|
8784
|
+
],
|
|
8785
|
+
"superclass": {
|
|
8786
|
+
"name": "HTMLElement"
|
|
8787
|
+
},
|
|
8788
|
+
"tagName": "mui-slide-frame",
|
|
8789
|
+
"customElement": true
|
|
8790
|
+
}
|
|
8791
|
+
],
|
|
8792
|
+
"exports": [
|
|
8793
|
+
{
|
|
8794
|
+
"kind": "custom-element-definition",
|
|
8795
|
+
"name": "mui-slide-frame",
|
|
8796
|
+
"declaration": {
|
|
8797
|
+
"name": "MuiSlideFrame",
|
|
8798
|
+
"module": "src/components/mui-slide-frame/index.ts"
|
|
8122
8799
|
}
|
|
8123
8800
|
}
|
|
8124
8801
|
]
|
|
8125
8802
|
},
|
|
8126
8803
|
{
|
|
8127
8804
|
"kind": "javascript-module",
|
|
8128
|
-
"path": "src/components/mui-
|
|
8805
|
+
"path": "src/components/mui-smart-card/doc.ts",
|
|
8129
8806
|
"declarations": [
|
|
8130
8807
|
{
|
|
8131
8808
|
"kind": "variable",
|
|
@@ -8133,7 +8810,7 @@
|
|
|
8133
8810
|
"type": {
|
|
8134
8811
|
"text": "MuiDocs"
|
|
8135
8812
|
},
|
|
8136
|
-
"default": "{
|
|
8813
|
+
"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: [\"\"], }, }, }"
|
|
8137
8814
|
}
|
|
8138
8815
|
],
|
|
8139
8816
|
"exports": [
|
|
@@ -8142,20 +8819,81 @@
|
|
|
8142
8819
|
"name": "muiDocs",
|
|
8143
8820
|
"declaration": {
|
|
8144
8821
|
"name": "muiDocs",
|
|
8145
|
-
"module": "src/components/mui-
|
|
8822
|
+
"module": "src/components/mui-smart-card/doc.ts"
|
|
8146
8823
|
}
|
|
8147
8824
|
}
|
|
8148
8825
|
]
|
|
8149
8826
|
},
|
|
8150
8827
|
{
|
|
8151
8828
|
"kind": "javascript-module",
|
|
8152
|
-
"path": "src/components/mui-
|
|
8153
|
-
"declarations": [
|
|
8154
|
-
|
|
8829
|
+
"path": "src/components/mui-smart-card/index.ts",
|
|
8830
|
+
"declarations": [
|
|
8831
|
+
{
|
|
8832
|
+
"kind": "class",
|
|
8833
|
+
"description": "",
|
|
8834
|
+
"name": "MuiSmartCard",
|
|
8835
|
+
"members": [
|
|
8836
|
+
{
|
|
8837
|
+
"kind": "method",
|
|
8838
|
+
"name": "render"
|
|
8839
|
+
}
|
|
8840
|
+
],
|
|
8841
|
+
"attributes": [
|
|
8842
|
+
{
|
|
8843
|
+
"name": "state"
|
|
8844
|
+
},
|
|
8845
|
+
{
|
|
8846
|
+
"name": "number"
|
|
8847
|
+
},
|
|
8848
|
+
{
|
|
8849
|
+
"name": "variant"
|
|
8850
|
+
},
|
|
8851
|
+
{
|
|
8852
|
+
"name": "partner"
|
|
8853
|
+
},
|
|
8854
|
+
{
|
|
8855
|
+
"name": "type"
|
|
8856
|
+
},
|
|
8857
|
+
{
|
|
8858
|
+
"name": "logo"
|
|
8859
|
+
},
|
|
8860
|
+
{
|
|
8861
|
+
"name": "logo-width"
|
|
8862
|
+
},
|
|
8863
|
+
{
|
|
8864
|
+
"name": "logo-height"
|
|
8865
|
+
},
|
|
8866
|
+
{
|
|
8867
|
+
"name": "bg-color"
|
|
8868
|
+
},
|
|
8869
|
+
{
|
|
8870
|
+
"name": "bg-image"
|
|
8871
|
+
},
|
|
8872
|
+
{
|
|
8873
|
+
"name": "inverted"
|
|
8874
|
+
}
|
|
8875
|
+
],
|
|
8876
|
+
"superclass": {
|
|
8877
|
+
"name": "HTMLElement"
|
|
8878
|
+
},
|
|
8879
|
+
"tagName": "mui-smart-card",
|
|
8880
|
+
"customElement": true
|
|
8881
|
+
}
|
|
8882
|
+
],
|
|
8883
|
+
"exports": [
|
|
8884
|
+
{
|
|
8885
|
+
"kind": "custom-element-definition",
|
|
8886
|
+
"name": "mui-smart-card",
|
|
8887
|
+
"declaration": {
|
|
8888
|
+
"name": "MuiSmartCard",
|
|
8889
|
+
"module": "src/components/mui-smart-card/index.ts"
|
|
8890
|
+
}
|
|
8891
|
+
}
|
|
8892
|
+
]
|
|
8155
8893
|
},
|
|
8156
8894
|
{
|
|
8157
8895
|
"kind": "javascript-module",
|
|
8158
|
-
"path": "src/components/mui-
|
|
8896
|
+
"path": "src/components/mui-spinner/doc.ts",
|
|
8159
8897
|
"declarations": [
|
|
8160
8898
|
{
|
|
8161
8899
|
"kind": "variable",
|
|
@@ -8163,7 +8901,7 @@
|
|
|
8163
8901
|
"type": {
|
|
8164
8902
|
"text": "MuiDocs"
|
|
8165
8903
|
},
|
|
8166
|
-
"default": "{
|
|
8904
|
+
"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: [\"\"] }, }, }"
|
|
8167
8905
|
}
|
|
8168
8906
|
],
|
|
8169
8907
|
"exports": [
|
|
@@ -8172,14 +8910,84 @@
|
|
|
8172
8910
|
"name": "muiDocs",
|
|
8173
8911
|
"declaration": {
|
|
8174
8912
|
"name": "muiDocs",
|
|
8175
|
-
"module": "src/components/mui-
|
|
8913
|
+
"module": "src/components/mui-spinner/doc.ts"
|
|
8176
8914
|
}
|
|
8177
8915
|
}
|
|
8178
8916
|
]
|
|
8179
8917
|
},
|
|
8180
8918
|
{
|
|
8181
8919
|
"kind": "javascript-module",
|
|
8182
|
-
"path": "src/components/mui-
|
|
8920
|
+
"path": "src/components/mui-spinner/index.ts",
|
|
8921
|
+
"declarations": [
|
|
8922
|
+
{
|
|
8923
|
+
"kind": "class",
|
|
8924
|
+
"description": "",
|
|
8925
|
+
"name": "MuiSpinner",
|
|
8926
|
+
"members": [
|
|
8927
|
+
{
|
|
8928
|
+
"kind": "method",
|
|
8929
|
+
"name": "render"
|
|
8930
|
+
}
|
|
8931
|
+
],
|
|
8932
|
+
"attributes": [
|
|
8933
|
+
{
|
|
8934
|
+
"name": "size"
|
|
8935
|
+
},
|
|
8936
|
+
{
|
|
8937
|
+
"name": "color"
|
|
8938
|
+
},
|
|
8939
|
+
{
|
|
8940
|
+
"name": "duration"
|
|
8941
|
+
},
|
|
8942
|
+
{
|
|
8943
|
+
"name": "label"
|
|
8944
|
+
}
|
|
8945
|
+
],
|
|
8946
|
+
"superclass": {
|
|
8947
|
+
"name": "HTMLElement"
|
|
8948
|
+
},
|
|
8949
|
+
"tagName": "mui-spinner",
|
|
8950
|
+
"customElement": true
|
|
8951
|
+
}
|
|
8952
|
+
],
|
|
8953
|
+
"exports": [
|
|
8954
|
+
{
|
|
8955
|
+
"kind": "custom-element-definition",
|
|
8956
|
+
"name": "mui-spinner",
|
|
8957
|
+
"declaration": {
|
|
8958
|
+
"name": "MuiSpinner",
|
|
8959
|
+
"module": "src/components/mui-spinner/index.ts"
|
|
8960
|
+
}
|
|
8961
|
+
}
|
|
8962
|
+
]
|
|
8963
|
+
},
|
|
8964
|
+
{
|
|
8965
|
+
"kind": "javascript-module",
|
|
8966
|
+
"path": "src/components/mui-stack/doc.ts",
|
|
8967
|
+
"declarations": [
|
|
8968
|
+
{
|
|
8969
|
+
"kind": "variable",
|
|
8970
|
+
"name": "muiDocs",
|
|
8971
|
+
"type": {
|
|
8972
|
+
"text": "MuiDocs"
|
|
8973
|
+
},
|
|
8974
|
+
"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: [\"\"], }, }, }"
|
|
8975
|
+
}
|
|
8976
|
+
],
|
|
8977
|
+
"exports": [
|
|
8978
|
+
{
|
|
8979
|
+
"kind": "js",
|
|
8980
|
+
"name": "muiDocs",
|
|
8981
|
+
"declaration": {
|
|
8982
|
+
"name": "muiDocs",
|
|
8983
|
+
"module": "src/components/mui-stack/doc.ts"
|
|
8984
|
+
}
|
|
8985
|
+
}
|
|
8986
|
+
]
|
|
8987
|
+
},
|
|
8988
|
+
{
|
|
8989
|
+
"kind": "javascript-module",
|
|
8990
|
+
"path": "src/components/mui-stack/index.ts",
|
|
8183
8991
|
"declarations": [],
|
|
8184
8992
|
"exports": []
|
|
8185
8993
|
},
|
|
@@ -8193,7 +9001,7 @@
|
|
|
8193
9001
|
"type": {
|
|
8194
9002
|
"text": "MuiDocs"
|
|
8195
9003
|
},
|
|
8196
|
-
"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.\", ], }, 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: [\"\"], }, }, }"
|
|
9004
|
+
"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: [\"\"], }, }, }"
|
|
8197
9005
|
}
|
|
8198
9006
|
],
|
|
8199
9007
|
"exports": [
|
|
@@ -8296,6 +9104,9 @@
|
|
|
8296
9104
|
},
|
|
8297
9105
|
{
|
|
8298
9106
|
"name": "checked"
|
|
9107
|
+
},
|
|
9108
|
+
{
|
|
9109
|
+
"name": "size"
|
|
8299
9110
|
}
|
|
8300
9111
|
],
|
|
8301
9112
|
"superclass": {
|
|
@@ -8316,6 +9127,36 @@
|
|
|
8316
9127
|
}
|
|
8317
9128
|
]
|
|
8318
9129
|
},
|
|
9130
|
+
{
|
|
9131
|
+
"kind": "javascript-module",
|
|
9132
|
+
"path": "src/components/mui-stepper/doc.ts",
|
|
9133
|
+
"declarations": [
|
|
9134
|
+
{
|
|
9135
|
+
"kind": "variable",
|
|
9136
|
+
"name": "muiDocs",
|
|
9137
|
+
"type": {
|
|
9138
|
+
"text": "MuiDocs"
|
|
9139
|
+
},
|
|
9140
|
+
"default": "{ Stepper: { title: \"Stepper\", description: \"A Stepper component visually represents a sequence of steps in a process. It helps users understand progress and navigate through multi-step workflows. This component supports both horizontal and vertical orientations.\", hero: [ \"https://images.ctfassets.net/i5uwscj4pkk2/423YAEfIeoDzzsK9ClbTkP/485c6c4f637080247caa150afed0ef14/Stepper_-_Home_Image.png\", ], figma: [ \"https://www.figma.com/design/l0mt1lXu97XoHJCEdnrWLp/Mui-Design-System?node-id=948-4195&t=0ytskb8cxriEmdz2-1\", ], storybook: [\"https://stories.muibook.com/?path=/docs/navigation-stepper--docs\"], github: [\"https://github.com/michaeltrilford/muibook/tree/main/src/components/mui-stepper\"], website: [\"https://muibook.com/#/stepper\"], guides: [\"https://guides.muibook.com/stepper\"], usage: { list: [ \"Use active-step to control the current step in a multi-step flow.\", \"Use size='x-small|small|medium' to match the density of the surrounding layout.\", \"Use interactive when users should be able to click and keyboard-navigate steps.\", \"Use linear with interactive to limit forward progression to the next available step while still allowing users to move backwards.\", \"Use explicit step states (success, pending, error, disabled) for async and validation workflows.\", ], }, accessibility: { designerList: [\"\"], engineerList: [\"\"], }, anatomy: { description: \"The stepper uses two simple styles: active and inactive. Their meaning changes based on position in the sequence, representing progress through different states.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/6Y5iyISdhK7PX8d1cHJxWv/761efb630c924af42ebf8d8bd5fabfb2/Stepper_-_Anatomy.png\", list: [ \"Active / Completed / Success: Indicates the current step or a task that has been successfully finished.\", \"Pending / Error / Disabled: Communicates processing, validation failure, or temporarily unavailable steps.\", \"Upcoming: Represents a step or task that has not yet started.\", ], }, variants: { items: [ { key: \"\", title: \"\", description: \"\", image: \"\", }, ], }, compositions: { description: \"Showcases actual use cases, demonstrating how the component fits into real-world UI scenarios.\", items: [ { key: \"review-items-task\", name: \"Review Items Task\", description: \"A permanent drawer remains visible at all times and is typically used for core navigation or tools that support the main content. It doesn’t open or close, and is always part of the current layout or workflow.\", image: \"https://images.ctfassets.net/i5uwscj4pkk2/rHTSU9sPUdmwrmGETRLcC/fa444ff8d8a72a28e8f10537324bbca3/drawer-composition-smart-bills.png\", }, ], }, related: { items: [ { name: \"\", link: \"\", }, ], }, rules: [ { heading: \"\", description: \"\", doContent: [{ description: \"\", image: \"\" }], dontContent: [{ description: \"\", image: \"\" }], }, ], behaviour: { list: [\"\"], }, writing: { list: [\"\"], }, }, }"
|
|
9141
|
+
}
|
|
9142
|
+
],
|
|
9143
|
+
"exports": [
|
|
9144
|
+
{
|
|
9145
|
+
"kind": "js",
|
|
9146
|
+
"name": "muiDocs",
|
|
9147
|
+
"declaration": {
|
|
9148
|
+
"name": "muiDocs",
|
|
9149
|
+
"module": "src/components/mui-stepper/doc.ts"
|
|
9150
|
+
}
|
|
9151
|
+
}
|
|
9152
|
+
]
|
|
9153
|
+
},
|
|
9154
|
+
{
|
|
9155
|
+
"kind": "javascript-module",
|
|
9156
|
+
"path": "src/components/mui-stepper/index.ts",
|
|
9157
|
+
"declarations": [],
|
|
9158
|
+
"exports": []
|
|
9159
|
+
},
|
|
8319
9160
|
{
|
|
8320
9161
|
"kind": "javascript-module",
|
|
8321
9162
|
"path": "src/components/mui-table/doc.ts",
|
|
@@ -9264,81 +10105,29 @@
|
|
|
9264
10105
|
],
|
|
9265
10106
|
"attributes": [
|
|
9266
10107
|
{
|
|
9267
|
-
"name": "variant"
|
|
9268
|
-
},
|
|
9269
|
-
{
|
|
9270
|
-
"name": "col"
|
|
9271
|
-
},
|
|
9272
|
-
{
|
|
9273
|
-
"name": "space"
|
|
9274
|
-
}
|
|
9275
|
-
],
|
|
9276
|
-
"superclass": {
|
|
9277
|
-
"name": "HTMLElement"
|
|
9278
|
-
},
|
|
9279
|
-
"tagName": "mui-slat",
|
|
9280
|
-
"customElement": true
|
|
9281
|
-
}
|
|
9282
|
-
],
|
|
9283
|
-
"exports": [
|
|
9284
|
-
{
|
|
9285
|
-
"kind": "custom-element-definition",
|
|
9286
|
-
"name": "mui-slat",
|
|
9287
|
-
"declaration": {
|
|
9288
|
-
"name": "MuiSlat",
|
|
9289
|
-
"module": "src/components/mui-slat/slat/index.ts"
|
|
9290
|
-
}
|
|
9291
|
-
}
|
|
9292
|
-
]
|
|
9293
|
-
},
|
|
9294
|
-
{
|
|
9295
|
-
"kind": "javascript-module",
|
|
9296
|
-
"path": "src/components/mui-stepper/step/index.ts",
|
|
9297
|
-
"declarations": [
|
|
9298
|
-
{
|
|
9299
|
-
"kind": "class",
|
|
9300
|
-
"description": "",
|
|
9301
|
-
"name": "MuiStep",
|
|
9302
|
-
"members": [
|
|
9303
|
-
{
|
|
9304
|
-
"kind": "method",
|
|
9305
|
-
"name": "render"
|
|
9306
|
-
}
|
|
9307
|
-
],
|
|
9308
|
-
"attributes": [
|
|
9309
|
-
{
|
|
9310
|
-
"name": "state"
|
|
9311
|
-
},
|
|
9312
|
-
{
|
|
9313
|
-
"name": "resolved-state"
|
|
9314
|
-
},
|
|
9315
|
-
{
|
|
9316
|
-
"name": "title"
|
|
9317
|
-
},
|
|
9318
|
-
{
|
|
9319
|
-
"name": "direction"
|
|
10108
|
+
"name": "variant"
|
|
9320
10109
|
},
|
|
9321
10110
|
{
|
|
9322
|
-
"name": "
|
|
10111
|
+
"name": "col"
|
|
9323
10112
|
},
|
|
9324
10113
|
{
|
|
9325
|
-
"name": "
|
|
10114
|
+
"name": "space"
|
|
9326
10115
|
}
|
|
9327
10116
|
],
|
|
9328
10117
|
"superclass": {
|
|
9329
10118
|
"name": "HTMLElement"
|
|
9330
10119
|
},
|
|
9331
|
-
"tagName": "mui-
|
|
10120
|
+
"tagName": "mui-slat",
|
|
9332
10121
|
"customElement": true
|
|
9333
10122
|
}
|
|
9334
10123
|
],
|
|
9335
10124
|
"exports": [
|
|
9336
10125
|
{
|
|
9337
10126
|
"kind": "custom-element-definition",
|
|
9338
|
-
"name": "mui-
|
|
10127
|
+
"name": "mui-slat",
|
|
9339
10128
|
"declaration": {
|
|
9340
|
-
"name": "
|
|
9341
|
-
"module": "src/components/mui-
|
|
10129
|
+
"name": "MuiSlat",
|
|
10130
|
+
"module": "src/components/mui-slat/slat/index.ts"
|
|
9342
10131
|
}
|
|
9343
10132
|
}
|
|
9344
10133
|
]
|
|
@@ -9427,6 +10216,58 @@
|
|
|
9427
10216
|
}
|
|
9428
10217
|
]
|
|
9429
10218
|
},
|
|
10219
|
+
{
|
|
10220
|
+
"kind": "javascript-module",
|
|
10221
|
+
"path": "src/components/mui-stepper/step/index.ts",
|
|
10222
|
+
"declarations": [
|
|
10223
|
+
{
|
|
10224
|
+
"kind": "class",
|
|
10225
|
+
"description": "",
|
|
10226
|
+
"name": "MuiStep",
|
|
10227
|
+
"members": [
|
|
10228
|
+
{
|
|
10229
|
+
"kind": "method",
|
|
10230
|
+
"name": "render"
|
|
10231
|
+
}
|
|
10232
|
+
],
|
|
10233
|
+
"attributes": [
|
|
10234
|
+
{
|
|
10235
|
+
"name": "state"
|
|
10236
|
+
},
|
|
10237
|
+
{
|
|
10238
|
+
"name": "resolved-state"
|
|
10239
|
+
},
|
|
10240
|
+
{
|
|
10241
|
+
"name": "title"
|
|
10242
|
+
},
|
|
10243
|
+
{
|
|
10244
|
+
"name": "direction"
|
|
10245
|
+
},
|
|
10246
|
+
{
|
|
10247
|
+
"name": "hide-icon"
|
|
10248
|
+
},
|
|
10249
|
+
{
|
|
10250
|
+
"name": "size"
|
|
10251
|
+
}
|
|
10252
|
+
],
|
|
10253
|
+
"superclass": {
|
|
10254
|
+
"name": "HTMLElement"
|
|
10255
|
+
},
|
|
10256
|
+
"tagName": "mui-step",
|
|
10257
|
+
"customElement": true
|
|
10258
|
+
}
|
|
10259
|
+
],
|
|
10260
|
+
"exports": [
|
|
10261
|
+
{
|
|
10262
|
+
"kind": "custom-element-definition",
|
|
10263
|
+
"name": "mui-step",
|
|
10264
|
+
"declaration": {
|
|
10265
|
+
"name": "MuiStep",
|
|
10266
|
+
"module": "src/components/mui-stepper/step/index.ts"
|
|
10267
|
+
}
|
|
10268
|
+
}
|
|
10269
|
+
]
|
|
10270
|
+
},
|
|
9430
10271
|
{
|
|
9431
10272
|
"kind": "javascript-module",
|
|
9432
10273
|
"path": "src/components/mui-stack/vstack/index.ts",
|
|
@@ -9684,32 +10525,6 @@
|
|
|
9684
10525
|
}
|
|
9685
10526
|
]
|
|
9686
10527
|
},
|
|
9687
|
-
{
|
|
9688
|
-
"kind": "javascript-module",
|
|
9689
|
-
"path": "src/components/mui-table/row-group/index.ts",
|
|
9690
|
-
"declarations": [
|
|
9691
|
-
{
|
|
9692
|
-
"kind": "class",
|
|
9693
|
-
"description": "",
|
|
9694
|
-
"name": "MuiRowGroup",
|
|
9695
|
-
"superclass": {
|
|
9696
|
-
"name": "HTMLElement"
|
|
9697
|
-
},
|
|
9698
|
-
"tagName": "mui-row-group",
|
|
9699
|
-
"customElement": true
|
|
9700
|
-
}
|
|
9701
|
-
],
|
|
9702
|
-
"exports": [
|
|
9703
|
-
{
|
|
9704
|
-
"kind": "custom-element-definition",
|
|
9705
|
-
"name": "mui-row-group",
|
|
9706
|
-
"declaration": {
|
|
9707
|
-
"name": "MuiRowGroup",
|
|
9708
|
-
"module": "src/components/mui-table/row-group/index.ts"
|
|
9709
|
-
}
|
|
9710
|
-
}
|
|
9711
|
-
]
|
|
9712
|
-
},
|
|
9713
10528
|
{
|
|
9714
10529
|
"kind": "javascript-module",
|
|
9715
10530
|
"path": "src/components/mui-table/cell/index.ts",
|
|
@@ -9790,6 +10605,78 @@
|
|
|
9790
10605
|
}
|
|
9791
10606
|
]
|
|
9792
10607
|
},
|
|
10608
|
+
{
|
|
10609
|
+
"kind": "javascript-module",
|
|
10610
|
+
"path": "src/components/mui-tabs/controller/index.ts",
|
|
10611
|
+
"declarations": [
|
|
10612
|
+
{
|
|
10613
|
+
"kind": "class",
|
|
10614
|
+
"description": "",
|
|
10615
|
+
"name": "MuiTabController",
|
|
10616
|
+
"members": [
|
|
10617
|
+
{
|
|
10618
|
+
"kind": "method",
|
|
10619
|
+
"name": "initializePanels",
|
|
10620
|
+
"privacy": "private",
|
|
10621
|
+
"return": {
|
|
10622
|
+
"type": {
|
|
10623
|
+
"text": "void"
|
|
10624
|
+
}
|
|
10625
|
+
}
|
|
10626
|
+
},
|
|
10627
|
+
{
|
|
10628
|
+
"kind": "method",
|
|
10629
|
+
"name": "handleTabChange",
|
|
10630
|
+
"return": {
|
|
10631
|
+
"type": {
|
|
10632
|
+
"text": "void"
|
|
10633
|
+
}
|
|
10634
|
+
},
|
|
10635
|
+
"parameters": [
|
|
10636
|
+
{
|
|
10637
|
+
"name": "event",
|
|
10638
|
+
"type": {
|
|
10639
|
+
"text": "Event"
|
|
10640
|
+
}
|
|
10641
|
+
}
|
|
10642
|
+
]
|
|
10643
|
+
},
|
|
10644
|
+
{
|
|
10645
|
+
"kind": "method",
|
|
10646
|
+
"name": "updatePanels",
|
|
10647
|
+
"return": {
|
|
10648
|
+
"type": {
|
|
10649
|
+
"text": "void"
|
|
10650
|
+
}
|
|
10651
|
+
},
|
|
10652
|
+
"parameters": [
|
|
10653
|
+
{
|
|
10654
|
+
"name": "activeId",
|
|
10655
|
+
"type": {
|
|
10656
|
+
"text": "string"
|
|
10657
|
+
}
|
|
10658
|
+
}
|
|
10659
|
+
]
|
|
10660
|
+
}
|
|
10661
|
+
],
|
|
10662
|
+
"superclass": {
|
|
10663
|
+
"name": "HTMLElement"
|
|
10664
|
+
},
|
|
10665
|
+
"tagName": "mui-tab-controller",
|
|
10666
|
+
"customElement": true
|
|
10667
|
+
}
|
|
10668
|
+
],
|
|
10669
|
+
"exports": [
|
|
10670
|
+
{
|
|
10671
|
+
"kind": "custom-element-definition",
|
|
10672
|
+
"name": "mui-tab-controller",
|
|
10673
|
+
"declaration": {
|
|
10674
|
+
"name": "MuiTabController",
|
|
10675
|
+
"module": "src/components/mui-tabs/controller/index.ts"
|
|
10676
|
+
}
|
|
10677
|
+
}
|
|
10678
|
+
]
|
|
10679
|
+
},
|
|
9793
10680
|
{
|
|
9794
10681
|
"kind": "javascript-module",
|
|
9795
10682
|
"path": "src/components/mui-table/table/index.ts",
|
|
@@ -9818,45 +10705,26 @@
|
|
|
9818
10705
|
},
|
|
9819
10706
|
{
|
|
9820
10707
|
"kind": "javascript-module",
|
|
9821
|
-
"path": "src/components/mui-
|
|
10708
|
+
"path": "src/components/mui-table/row-group/index.ts",
|
|
9822
10709
|
"declarations": [
|
|
9823
10710
|
{
|
|
9824
10711
|
"kind": "class",
|
|
9825
10712
|
"description": "",
|
|
9826
|
-
"name": "
|
|
9827
|
-
"members": [
|
|
9828
|
-
{
|
|
9829
|
-
"kind": "field",
|
|
9830
|
-
"name": "item",
|
|
9831
|
-
"type": {
|
|
9832
|
-
"text": "string | null"
|
|
9833
|
-
}
|
|
9834
|
-
},
|
|
9835
|
-
{
|
|
9836
|
-
"kind": "field",
|
|
9837
|
-
"name": "innerHTML",
|
|
9838
|
-
"default": "` <style> :host { display: block; } :host([hidden]) { display: none !important; } .inner { padding: var(--tab-panel-padding, 0); } </style> <div class=\"inner\"> <slot></slot> </div> `"
|
|
9839
|
-
}
|
|
9840
|
-
],
|
|
9841
|
-
"attributes": [
|
|
9842
|
-
{
|
|
9843
|
-
"name": "item"
|
|
9844
|
-
}
|
|
9845
|
-
],
|
|
10713
|
+
"name": "MuiRowGroup",
|
|
9846
10714
|
"superclass": {
|
|
9847
10715
|
"name": "HTMLElement"
|
|
9848
10716
|
},
|
|
9849
|
-
"tagName": "mui-
|
|
10717
|
+
"tagName": "mui-row-group",
|
|
9850
10718
|
"customElement": true
|
|
9851
10719
|
}
|
|
9852
10720
|
],
|
|
9853
10721
|
"exports": [
|
|
9854
10722
|
{
|
|
9855
10723
|
"kind": "custom-element-definition",
|
|
9856
|
-
"name": "mui-
|
|
10724
|
+
"name": "mui-row-group",
|
|
9857
10725
|
"declaration": {
|
|
9858
|
-
"name": "
|
|
9859
|
-
"module": "src/components/mui-
|
|
10726
|
+
"name": "MuiRowGroup",
|
|
10727
|
+
"module": "src/components/mui-table/row-group/index.ts"
|
|
9860
10728
|
}
|
|
9861
10729
|
}
|
|
9862
10730
|
]
|
|
@@ -9968,72 +10836,45 @@
|
|
|
9968
10836
|
},
|
|
9969
10837
|
{
|
|
9970
10838
|
"kind": "javascript-module",
|
|
9971
|
-
"path": "src/components/mui-tabs/
|
|
10839
|
+
"path": "src/components/mui-tabs/panel/index.ts",
|
|
9972
10840
|
"declarations": [
|
|
9973
10841
|
{
|
|
9974
10842
|
"kind": "class",
|
|
9975
10843
|
"description": "",
|
|
9976
|
-
"name": "
|
|
10844
|
+
"name": "MuiTabPanel",
|
|
9977
10845
|
"members": [
|
|
9978
10846
|
{
|
|
9979
|
-
"kind": "
|
|
9980
|
-
"name": "
|
|
9981
|
-
"
|
|
9982
|
-
|
|
9983
|
-
"type": {
|
|
9984
|
-
"text": "void"
|
|
9985
|
-
}
|
|
10847
|
+
"kind": "field",
|
|
10848
|
+
"name": "item",
|
|
10849
|
+
"type": {
|
|
10850
|
+
"text": "string | null"
|
|
9986
10851
|
}
|
|
9987
10852
|
},
|
|
9988
10853
|
{
|
|
9989
|
-
"kind": "
|
|
9990
|
-
"name": "
|
|
9991
|
-
"
|
|
9992
|
-
|
|
9993
|
-
|
|
9994
|
-
|
|
9995
|
-
},
|
|
9996
|
-
"parameters": [
|
|
9997
|
-
{
|
|
9998
|
-
"name": "event",
|
|
9999
|
-
"type": {
|
|
10000
|
-
"text": "Event"
|
|
10001
|
-
}
|
|
10002
|
-
}
|
|
10003
|
-
]
|
|
10004
|
-
},
|
|
10854
|
+
"kind": "field",
|
|
10855
|
+
"name": "innerHTML",
|
|
10856
|
+
"default": "` <style> :host { display: block; } :host([hidden]) { display: none !important; } .inner { padding: var(--tab-panel-padding, 0); } </style> <div class=\"inner\"> <slot></slot> </div> `"
|
|
10857
|
+
}
|
|
10858
|
+
],
|
|
10859
|
+
"attributes": [
|
|
10005
10860
|
{
|
|
10006
|
-
"
|
|
10007
|
-
"name": "updatePanels",
|
|
10008
|
-
"return": {
|
|
10009
|
-
"type": {
|
|
10010
|
-
"text": "void"
|
|
10011
|
-
}
|
|
10012
|
-
},
|
|
10013
|
-
"parameters": [
|
|
10014
|
-
{
|
|
10015
|
-
"name": "activeId",
|
|
10016
|
-
"type": {
|
|
10017
|
-
"text": "string"
|
|
10018
|
-
}
|
|
10019
|
-
}
|
|
10020
|
-
]
|
|
10861
|
+
"name": "item"
|
|
10021
10862
|
}
|
|
10022
10863
|
],
|
|
10023
10864
|
"superclass": {
|
|
10024
10865
|
"name": "HTMLElement"
|
|
10025
10866
|
},
|
|
10026
|
-
"tagName": "mui-tab-
|
|
10867
|
+
"tagName": "mui-tab-panel",
|
|
10027
10868
|
"customElement": true
|
|
10028
10869
|
}
|
|
10029
10870
|
],
|
|
10030
10871
|
"exports": [
|
|
10031
10872
|
{
|
|
10032
10873
|
"kind": "custom-element-definition",
|
|
10033
|
-
"name": "mui-tab-
|
|
10874
|
+
"name": "mui-tab-panel",
|
|
10034
10875
|
"declaration": {
|
|
10035
|
-
"name": "
|
|
10036
|
-
"module": "src/components/mui-tabs/
|
|
10876
|
+
"name": "MuiTabPanel",
|
|
10877
|
+
"module": "src/components/mui-tabs/panel/index.ts"
|
|
10037
10878
|
}
|
|
10038
10879
|
}
|
|
10039
10880
|
]
|