@muibook/components 19.6.0 → 20.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. package/AGENTS.md +67 -0
  2. package/DESIGN.md +358 -0
  3. package/README.md +53 -2
  4. package/dist/esm/agent/keywords/index.js +2 -173
  5. package/dist/esm/agent/prompts/index.js +6 -432
  6. package/dist/esm/components/mui-accordion/core/index.js +25 -17
  7. package/dist/esm/components/mui-addon/index.js +14 -14
  8. package/dist/esm/components/mui-avatar/index.js +103 -43
  9. package/dist/esm/components/mui-avatar-chip/index.js +158 -0
  10. package/dist/esm/components/mui-avatar-group/index.js +88 -0
  11. package/dist/esm/components/mui-badge/index.js +37 -20
  12. package/dist/esm/components/mui-body/index.js +20 -11
  13. package/dist/esm/components/mui-button/index.js +265 -78
  14. package/dist/esm/components/mui-calendar/index.js +199 -0
  15. package/dist/esm/components/mui-card/body/index.js +33 -18
  16. package/dist/esm/components/mui-card/footer/index.js +11 -9
  17. package/dist/esm/components/mui-carousel/controller/index.js +1 -1
  18. package/dist/esm/components/mui-checkbox/index.js +23 -18
  19. package/dist/esm/components/mui-chip/index.js +219 -73
  20. package/dist/esm/components/mui-chip-input/index.js +146 -137
  21. package/dist/esm/components/mui-chip-rail/index.js +342 -0
  22. package/dist/esm/components/mui-code/index.js +26 -7
  23. package/dist/esm/components/mui-container/index.js +68 -45
  24. package/dist/esm/components/mui-date-picker/index.js +169 -0
  25. package/dist/esm/components/mui-drawer/index.js +968 -100
  26. package/dist/esm/components/mui-dropdown/index.js +255 -59
  27. package/dist/esm/components/mui-field/index.js +1 -1
  28. package/dist/esm/components/mui-file-upload/index.js +14 -4
  29. package/dist/esm/components/mui-form-group/index.js +1 -2
  30. package/dist/esm/components/mui-form-message/index.js +4 -9
  31. package/dist/esm/components/mui-heading/index.js +3 -2
  32. package/dist/esm/components/mui-hint/index.js +178 -72
  33. package/dist/esm/components/mui-icons/copy/index.js +54 -0
  34. package/dist/esm/components/mui-icons/fullscreen/index.js +5 -0
  35. package/dist/esm/components/mui-icons/icon-helper/index.js +56 -0
  36. package/dist/esm/components/mui-icons/index.js +14 -1
  37. package/dist/esm/components/mui-icons/moon/index.js +3 -1
  38. package/dist/esm/components/mui-icons/{rectangle-bottom-panel → panel}/index.js +6 -6
  39. package/dist/esm/components/mui-icons/pause/index.js +5 -0
  40. package/dist/esm/components/mui-icons/picture-in-picture/index.js +5 -0
  41. package/dist/esm/components/mui-icons/play-fill/index.js +5 -0
  42. package/dist/esm/components/mui-icons/rectangle-right-drawer/index.js +56 -0
  43. package/dist/esm/components/mui-icons/reload/index.js +5 -0
  44. package/dist/esm/components/mui-icons/speaker-mute/index.js +5 -0
  45. package/dist/esm/components/mui-icons/speaker-one-wave/index.js +5 -0
  46. package/dist/esm/components/mui-icons/speaker-two-wave/index.js +5 -0
  47. package/dist/esm/components/mui-icons/spinner/index.js +7 -5
  48. package/dist/esm/components/mui-icons/stop-fill/index.js +5 -0
  49. package/dist/esm/components/mui-icons/sun/index.js +5 -5
  50. package/dist/esm/components/mui-icons/timer/index.js +54 -0
  51. package/dist/esm/components/mui-icons/toggle/index.js +16 -6
  52. package/dist/esm/components/mui-icons/vertical-ellipsis/index.js +5 -0
  53. package/dist/esm/components/mui-illustrations/trash/index.js +6 -5
  54. package/dist/esm/components/mui-input/index.js +96 -67
  55. package/dist/esm/components/mui-link/index.js +352 -96
  56. package/dist/esm/components/mui-media-player/index.js +1577 -83
  57. package/dist/esm/components/mui-message/index.js +7 -6
  58. package/dist/esm/components/mui-model-viewer/index.js +258 -0
  59. package/dist/esm/components/mui-progress-ring/index.js +349 -0
  60. package/dist/esm/components/mui-prompt/index.js +143 -115
  61. package/dist/esm/components/mui-prompt-preview/index.js +11 -23
  62. package/dist/esm/components/mui-radio/index.js +38 -17
  63. package/dist/esm/components/mui-range-input/index.js +9 -4
  64. package/dist/esm/components/mui-responsive/index.js +60 -27
  65. package/dist/esm/components/mui-search-input/index.js +300 -0
  66. package/dist/esm/components/mui-select/index.js +235 -46
  67. package/dist/esm/components/mui-slat/slat/index.js +40 -12
  68. package/dist/esm/components/mui-spinner/index.js +11 -9
  69. package/dist/esm/components/mui-stack/hstack/index.js +10 -5
  70. package/dist/esm/components/mui-status/index.js +239 -0
  71. package/dist/esm/components/mui-stepper/step/index.js +46 -32
  72. package/dist/esm/components/mui-switch/index.js +37 -26
  73. package/dist/esm/components/mui-table/row/index.js +2 -6
  74. package/dist/esm/components/mui-table/table/index.js +157 -14
  75. package/dist/esm/components/mui-tabs/controller/index.js +17 -6
  76. package/dist/esm/components/mui-tabs/item/index.js +17 -5
  77. package/dist/esm/components/mui-tabs/tab-bar/index.js +93 -39
  78. package/dist/esm/components/mui-textarea/index.js +43 -26
  79. package/dist/esm/components/mui-time/index/index.js +336 -0
  80. package/dist/esm/components/mui-time-picker/index.js +126 -0
  81. package/dist/esm/components/mui-video-thumbnail/index.js +205 -0
  82. package/dist/esm/css/mui-brand.css +12 -8
  83. package/dist/esm/css/mui-tokens.css +646 -344
  84. package/dist/esm/css/readme.md +2 -2
  85. package/dist/esm/custom-elements.json +4506 -1707
  86. package/dist/esm/dynamic-attrs.json +271 -54
  87. package/dist/esm/index.js +33 -6
  88. package/dist/esm/knowledge/compositions/index.js +1560 -0
  89. package/dist/esm/knowledge/index.js +28 -0
  90. package/dist/esm/knowledge/keywords/index.js +306 -0
  91. package/dist/esm/knowledge/rules/index.js +199 -0
  92. package/dist/esm/tokens/js/index.js +143 -139
  93. package/dist/types/agent/keywords/index.d.ts +1 -1
  94. package/dist/types/components/mui-avatar-chip/api.d.ts +28 -0
  95. package/dist/types/components/mui-avatar-chip/index.d.ts +18 -0
  96. package/dist/types/components/mui-avatar-group/api.d.ts +28 -0
  97. package/dist/types/components/mui-avatar-group/doc.d.ts +2 -0
  98. package/dist/types/components/mui-avatar-group/index.d.ts +1 -0
  99. package/dist/types/components/mui-button/api.d.ts +6 -2
  100. package/dist/types/components/mui-calendar/api.d.ts +41 -0
  101. package/dist/types/components/mui-calendar/doc.d.ts +2 -0
  102. package/dist/types/components/mui-calendar/index.d.ts +3 -0
  103. package/dist/types/components/mui-checkbox/api.d.ts +4 -0
  104. package/dist/types/components/mui-chip/api.d.ts +4 -0
  105. package/dist/types/components/mui-chip-input/api.d.ts +4 -0
  106. package/dist/types/components/mui-chip-rail/api.d.ts +21 -0
  107. package/dist/types/components/mui-chip-rail/doc.d.ts +2 -0
  108. package/dist/types/components/mui-chip-rail/index.d.ts +4 -0
  109. package/dist/types/components/mui-date-picker/api.d.ts +38 -0
  110. package/dist/types/components/mui-date-picker/doc.d.ts +2 -0
  111. package/dist/types/components/mui-date-picker/index.d.ts +6 -0
  112. package/dist/types/components/mui-drawer/api.d.ts +4 -0
  113. package/dist/types/components/mui-drawer/index.d.ts +2 -0
  114. package/dist/types/components/mui-file-upload/api.d.ts +4 -0
  115. package/dist/types/components/mui-icons/fullscreen.d.ts +1 -0
  116. package/dist/types/components/mui-icons/icon-helper.d.ts +1 -0
  117. package/dist/types/components/mui-icons/index.d.ts +14 -1
  118. package/dist/types/components/mui-icons/panel.d.ts +1 -0
  119. package/dist/types/components/mui-icons/pause.d.ts +1 -0
  120. package/dist/types/components/mui-icons/picture-in-picture.d.ts +1 -0
  121. package/dist/types/components/mui-icons/play-fill.d.ts +1 -0
  122. package/dist/types/components/mui-icons/rectangle-right-drawer.d.ts +1 -0
  123. package/dist/types/components/mui-icons/reload.d.ts +1 -0
  124. package/dist/types/components/mui-icons/speaker-mute.d.ts +1 -0
  125. package/dist/types/components/mui-icons/speaker-one-wave.d.ts +1 -0
  126. package/dist/types/components/mui-icons/speaker-two-wave.d.ts +1 -0
  127. package/dist/types/components/mui-icons/stop-fill.d.ts +1 -0
  128. package/dist/types/components/mui-icons/timer.d.ts +1 -0
  129. package/dist/types/components/mui-icons/vertical-ellipsis.d.ts +1 -0
  130. package/dist/types/components/mui-input/api.d.ts +12 -0
  131. package/dist/types/components/mui-link/api.d.ts +4 -0
  132. package/dist/types/components/mui-media-player/api.d.ts +4 -0
  133. package/dist/types/components/mui-media-player/index.d.ts +13 -4
  134. package/dist/types/components/mui-model-viewer/api.d.ts +28 -0
  135. package/dist/types/components/mui-model-viewer/doc.d.ts +2 -0
  136. package/dist/types/components/mui-model-viewer/index.d.ts +17 -0
  137. package/dist/types/components/mui-progress-ring/api.d.ts +24 -0
  138. package/dist/types/components/mui-progress-ring/doc.d.ts +2 -0
  139. package/dist/types/components/mui-progress-ring/index.d.ts +1 -0
  140. package/dist/types/components/mui-radio/api.d.ts +12 -0
  141. package/dist/types/components/mui-range-input/api.d.ts +4 -0
  142. package/dist/types/components/mui-responsive/api.d.ts +10 -2
  143. package/dist/types/components/mui-search-input/api.d.ts +40 -0
  144. package/dist/types/components/mui-search-input/doc.d.ts +2 -0
  145. package/dist/types/components/mui-search-input/index.d.ts +3 -0
  146. package/dist/types/components/mui-select/api.d.ts +12 -0
  147. package/dist/types/components/mui-status/api.d.ts +24 -0
  148. package/dist/types/components/mui-status/doc.d.ts +2 -0
  149. package/dist/types/components/mui-status/index.d.ts +1 -0
  150. package/dist/types/components/mui-switch/api.d.ts +4 -0
  151. package/dist/types/components/mui-table/api.d.ts +15 -0
  152. package/dist/types/components/mui-textarea/api.d.ts +12 -0
  153. package/dist/types/components/mui-time/api.d.ts +41 -0
  154. package/dist/types/components/mui-time/doc.d.ts +2 -0
  155. package/dist/types/components/mui-time/index.d.ts +1 -0
  156. package/dist/types/components/mui-time-picker/api.d.ts +38 -0
  157. package/dist/types/components/mui-time-picker/doc.d.ts +2 -0
  158. package/dist/types/components/mui-time-picker/index.d.ts +4 -0
  159. package/dist/types/components/mui-video-thumbnail/api.d.ts +28 -0
  160. package/dist/types/components/mui-video-thumbnail/doc.d.ts +2 -0
  161. package/dist/types/components/mui-video-thumbnail/index.d.ts +1 -0
  162. package/dist/types/index.d.ts +27 -2
  163. package/dist/types/knowledge/compositions.d.ts +4644 -0
  164. package/dist/types/knowledge/index.d.ts +4657 -0
  165. package/dist/types/knowledge/keywords.d.ts +4 -0
  166. package/dist/types/knowledge/rules.d.ts +1 -0
  167. package/dist/types/tokens/js/index.d.ts +11 -7
  168. package/package.json +131 -12
  169. package/dist/esm/components/mui-form-hint/index.js +0 -1
  170. package/dist/types/components/mui-form-hint/index.d.ts +0 -1
  171. /package/dist/types/components/{mui-form-hint → mui-avatar-chip}/doc.d.ts +0 -0
  172. /package/dist/types/components/mui-icons/{rectangle-bottom-panel.d.ts → copy.d.ts} +0 -0
@@ -1,175 +1,4 @@
1
- const e = {
2
- // FEEDBACK
3
- alert: ["alert", "success", "info", "warning", "error", "message", "banner", "notification"],
4
- message: [
5
- "page message",
6
- "page notice",
7
- "persistent notice",
8
- "persistent message",
9
- "system notice",
10
- "status notice",
11
- "message banner"
12
- ],
13
- loader: ["loader", "loading", "skeleton", "placeholder", "shimmer", "pulse", "fade", "spinner"],
14
- spinner: ["spinner", "loading", "busy", "indicator", "progress"],
15
- progress: ["progress", "bar", "loading", "completion", "percent", "syncing", "pending"],
16
- // ACTIONS
17
- button: ["button", "click", "action", "submit", "cta", "primary", "secondary", "tertiary", "attention"],
18
- "button-group": ["button group", "buttons", "actions", "group", "right", "align"],
19
- link: ["link", "anchor", "hyperlink", "navigation", "primary", "secondary", "tertiary", "attention"],
20
- dropdown: ["dropdown", "menu", "popover", "context menu", "action menu"],
21
- chip: ["chip", "tag", "filter", "active", "dismiss", "input chip"],
22
- // CONTENT
23
- icon: [
24
- "icon",
25
- "glyph",
26
- "symbol",
27
- "add",
28
- "plus",
29
- "close",
30
- "x",
31
- "check",
32
- "tick",
33
- "warning",
34
- "alert",
35
- "chevron",
36
- "arrow",
37
- "accessibility",
38
- "sun",
39
- "moon",
40
- "info",
41
- "stop",
42
- "globe",
43
- "menu",
44
- "ellipsis",
45
- "grid",
46
- "message",
47
- "sidebar",
48
- "subtract",
49
- "minus"
50
- ],
51
- heading: ["heading", "title", "h1", "h2", "h3", "size", "level"],
52
- body: ["body", "text", "paragraph", "copy", "default", "optional", "success", "warning", "error"],
53
- span: ["span", "inline", "text", "rich text", "inline link"],
54
- code: ["code", "snippet", "monospace", "pre", "syntax"],
55
- quote: ["quote", "blockquote", "citation", "pull quote"],
56
- list: ["list", "items", "ul", "li", "ordered", "unordered"],
57
- avatar: ["avatar", "profile", "user", "initials", "image", "icon", "person"],
58
- image: ["image", "photo", "picture", "figure", "caption", "img"],
59
- skeleton: ["skeleton", "loading", "placeholder", "shimmer", "pulse", "line", "rect", "circle"],
60
- badge: ["badge", "label", "tag", "status", "notification", "overlay", "positive", "warning", "error"],
61
- // ACCORDION
62
- accordion: [
63
- "accordion",
64
- "collapse",
65
- "expand",
66
- "toggle",
67
- "show more",
68
- "disclosure",
69
- "section",
70
- "detail",
71
- "summary",
72
- "accordion block",
73
- "accordion inline",
74
- "accordion group"
75
- ],
76
- // LAYOUT
77
- stack: ["stack", "v-stack", "h-stack", "vertical", "horizontal", "spacing"],
78
- grid: ["grid", "columns", "rows", "layout", "container"],
79
- container: ["container", "wrapper", "layout", "section"],
80
- responsive: ["responsive", "breakpoint", "mobile", "desktop", "showAbove", "showBelow"],
81
- rule: ["rule", "divider", "separator", "line", "hr"],
82
- // SURFACES
83
- card: ["card", "panel", "box", "tile"],
84
- dialog: ["dialog", "modal", "popup", "overlay", "lightbox", "confirm"],
85
- drawer: ["drawer", "sidebar", "panel", "slide", "overlay", "push", "persistent", "left", "right"],
86
- slat: [
87
- "slat",
88
- "row",
89
- "summary",
90
- "item row",
91
- "preview",
92
- "cell",
93
- "list item",
94
- "entry",
95
- "stacked",
96
- "slat header",
97
- "slat action",
98
- "slat content"
99
- ],
100
- table: [
101
- "table",
102
- "data table",
103
- "grid",
104
- "data grid",
105
- "spreadsheet",
106
- "rows",
107
- "columns",
108
- "cells",
109
- "header row",
110
- "data",
111
- "record",
112
- "tabular"
113
- ],
114
- smartCard: [
115
- "card",
116
- "smart card",
117
- "debit",
118
- "credit",
119
- "reward",
120
- "payment",
121
- "bank",
122
- "plain",
123
- "animated",
124
- "inverted",
125
- "frozen",
126
- "logo",
127
- "partner",
128
- "network",
129
- "diamond",
130
- "premier",
131
- "sapphire",
132
- "crystal",
133
- "visa",
134
- "mastercard",
135
- "amex",
136
- "payment network",
137
- "background image",
138
- "bg-image",
139
- "background color",
140
- "bg-color",
141
- "number",
142
- "type",
143
- "variant",
144
- "state"
145
- ],
146
- // FORMS AND INPUTS
147
- input: ["input", "text field", "text input", "field", "entry", "form field"],
148
- textarea: ["textarea", "text area", "multiline", "long text", "message", "description", "rows"],
149
- select: ["select", "dropdown", "picker", "options", "choose", "combobox"],
150
- checkbox: ["checkbox", "check", "tick", "agree", "terms", "boolean", "toggle"],
151
- radio: ["radio", "radio button", "option", "choose one", "single select"],
152
- switch: ["switch", "toggle", "on off", "enable", "disable", "boolean"],
153
- field: ["field", "form field", "label", "input wrapper", "validation", "error", "success", "warning"],
154
- "form-group": ["form group", "form", "group", "vertical", "horizontal", "fieldset"],
155
- "form-section": ["form section", "section", "form heading", "grouped fields"],
156
- "form-message": ["form message", "hint", "helper text", "validation message", "field message"],
157
- rangeInput: ["range", "slider", "min", "max", "step", "range input", "scrubber"],
158
- chipInput: ["chip input", "tag input", "multi select", "token input", "chips"],
159
- fileUpload: ["file upload", "upload", "attach", "file", "drag and drop", "attachment"],
160
- addOn: ["addon", "input after", "input before", "prefix", "suffix", "unit", "currency"],
161
- // NAVIGATION
162
- tab: ["tab", "tab bar", "tab controller", "tab panel", "navigation", "tabs"],
163
- carousel: ["carousel", "slider", "carousel controller", "carousel panel", "carousel item", "carousel tabs"],
164
- stepper: ["stepper", "steps", "wizard", "progress steps", "multi step", "step indicator"],
165
- // PROMPT
166
- prompt: ["prompt", "ai prompt", "chat input", "message input", "fan", "context", "preview", "submit"],
167
- promptMessage: ["prompt message", "chat message", "ai message", "ghost", "compact", "density"],
168
- promptPreview: ["prompt preview", "preview", "badge", "image preview", "animated preview"],
169
- promptToggle: ["prompt toggle", "toggle", "icon mode", "chip mode"],
170
- // PRESENTATION
171
- slideFrame: ["slide", "slides", "presentation", "slide frame", "deck", "ratio", "fullscreen", "section", "notes"]
172
- };
1
+ import { agentKeywords as r } from "../../knowledge/keywords/index.js";
173
2
  export {
174
- e as keywords
3
+ r as keywords
175
4
  };
@@ -1,442 +1,16 @@
1
- const e = [
1
+ import { agentCompositions as t } from "../../knowledge/compositions/index.js";
2
+ import { rules as o } from "../../knowledge/rules/index.js";
3
+ const n = [
2
4
  {
3
5
  role: "system",
4
- content: `
5
- Generate MUIBOOK component trees as JSON.
6
-
7
- Output JSON tree nodes with:
8
- - type: component type
9
- - id: unique descriptive id
10
- - props: component props
11
- - children: child nodes, or []
12
-
13
- CRITICAL RULES:
14
- 1. Always return ONLY valid JSON - no markdown, no code blocks, no explanations
15
- 2. Every node MUST have: type, id, props, and children
16
- 3. IDs must be unique across the entire tree
17
- 4. Use descriptive IDs that reflect the component's purpose
18
- 5. Card content must be inside direct child CardBody.
19
- 6. Container components can have children.
20
- 7. Leaf components use children: [].
21
- 8. Props must match the component API.
22
- 9. Root additions use Container with center=true and size=medium.
23
- 10. Button and Link text stays on the component; do not wrap in Body.
24
- 11. Put visual backgrounds on layout style or SmartCard bg props.
25
- 12. SmartCard props use kebab-case: bg-image, bg-color, logo-height.
26
- 13. Normalize scanned Muibook/Figma names to Redactd component types before output.
27
- 14. Do not use Message as a styled paragraph, inline note, or form helper. Message is only for persistent page-level notices with a heading and slotted body content.
28
-
29
- MUI SCAN NORMALIZATION RULES:
30
- - Normalize muiscan to Redactd types before output
31
- - Final JSON cannot contain mui-*, raw span, TEXT, or text node types
32
- - Core mappings:
33
- - mui-v-stack -> VStack
34
- - mui-h-stack -> HStack
35
- - mui-button -> Button
36
- - mui-link -> Link
37
- - mui-input -> Input
38
- - mui-select -> Select
39
- - span -> Span
40
- - mui-icon-[name] -> _Icon with props.icon = "mui-icon-[name]"
41
- - Preserve hierarchy, spacing, slots, key props, and valid style strings
42
- - Preserve icon slots:
43
- - slot=before -> props.slot = "before"
44
- - slot=after -> props.slot = "after"
45
- - if an icon is the only child of Button, Link, or Chip, keep it as the default child
46
-
47
- TEXT NODE RULES FOR MUISCAN:
48
- - TEXT is input-only; collapse into the nearest valid Redactd text model
49
- - Collapse TEXT -> props.text for:
50
- - mui-body -> Body.props.text
51
- - mui-heading -> Heading.props.text
52
- - mui-button -> Button.props.text
53
- - mui-link -> Link.props.text
54
- - mui-tab-item -> TabItem.props.text
55
- - mui-list-item -> ListItem.props.text
56
- - For span:
57
- - convert to Span
58
- - consume direct TEXT into Span.props.text
59
- - keep inline children such as Link nested inside the same Span
60
- - Exceptions:
61
- - mui-badge: consume TEXT as the badge's direct rendered text; preserve before/after slot children; do not invent Body
62
- - mui-chip: consume TEXT as the chip's direct rendered text; preserve before/after slot children; do not invent Body
63
- - mui-alert: preserve variant/label, convert default content to Span, consume TEXT into Span.props.text, keep inline children such as Link, do not invent Body
64
- - mui-message: map scanned heading directly to Message.props.heading, preserve variant/icon/size, keep remaining children as default message content; if there is no supporting body content, prefer Body or FormMessage instead of Message
65
- - Do not invent wrappers when the target already supports text
66
-
67
- Available Components:
68
-
69
- LAYOUT:
70
- - VStack: space, padding, alignX, alignY, height, width, fill, viewport, style
71
- - HStack: space, padding, alignX, alignY, height, width, fill, viewport, style
72
- - Grid: col, space, padding, alignX, alignY, height, width, fill, viewport, style
73
- - Container: size (small|medium|large), center, style
74
- - Responsive: breakpoint, breakpoint-low, breakpoint-high; slots showBelow/showMiddle/showAbove
75
- - Rule: length, weight (thin|thick|CSS size), direction (horizontal|vertical)
76
-
77
- SURFACES:
78
- - Card: use CardBody for card content
79
- - CardHeader: none
80
- - CardBody: condensed, style
81
- - CardFooter: none
82
- - Dialog: open, width, content-max-height, style
83
- - Drawer: open, variant (overlay|push|persistent), side (left|right), width, z-index, drawer-space, breakpoint, style
84
- - Slat: variant, col, space; slots header-start/header-end/row-start/row-end/accessory/action
85
- - SlatGroup: usage
86
- - SmartCard: state, number, variant, partner, type, logo, logo-height, bg-color, bg-image, inverted
87
-
88
- CONTENT:
89
- - Heading: text, size (1|2|3|4|5|6), level (1|2|3|4|5|6)
90
- - Body: text, size (x-small|small|medium|large), weight (regular|bold), variant (default|optional|success|warning|error), style; use _Icon icon=mui-icon-info slot=before for lightweight inline guidance
91
- - Span: text, style; supports inline children such as Link
92
- - Code: size, scrollable
93
- - Quote: default text
94
- - Image: src, alt; slot caption
95
- - Avatar: label, image, icon, size (x-small|small|medium|large), background, backgroundColor
96
- - List: slot default
97
- - ListItem: text, variant, size (x-small|small|medium|large), weight (regular|bold)
98
- - _Icon: icon, size (xx-small|x-small|small|medium|large), color, slot
99
- - Badge: text, variant (default|positive|warning|error|overlay)
100
- - Skeleton: loading, shape (line|rect|circle), size, animation (shimmer|pulse|none), lines, width, height, radius, gap, duration, line-widths, max-width, style
101
-
102
- ACCORDION:
103
- - AccordionBlock: heading, level (1|2|3|4|5|6), size, detail-space
104
- - AccordionInline: heading, level (1|2|3|4|5|6)
105
- - AccordionGroup: slot default
106
-
107
- FORMS AND INPUTS:
108
- - FormSection: heading, hide-label, style
109
- - FormSectionFooter: slot, style
110
- - FormGroup: heading, variant (vertical|horizontal), hide-label, style
111
- - Field: label, variant (default|success|warning|error), message, hide-label, size (x-small|small|medium|large), optional, style
112
- - FormMessage: text, size (x-small|small|medium|large), weight (regular|bold), variant (default|optional|success|warning|error), style
113
- - Input: label, type (text|email|password|number|tel|url), placeholder, value, id, name, disabled, hide-label, variant (default|error), size (x-small|small|medium|large), optional, max-length; slots before/after
114
- - Textarea: label, placeholder, value, name, id, variant (default|success|warning|error), size (x-small|small|medium|large), rows, optional, hide-label, max-length, disabled, style
115
- - Select: label, placeholder, options, value, id, name, disabled, variant (default|error), size (x-small|small|medium|large)
116
- - Checkbox: text, checked, id, disabled, indeterminate, size (x-small|small|medium|large)
117
- - Radio: text, checked, disabled, id, name, value, aria-label, size (x-small|small|medium|large)
118
- - RadioGroup: name, value, label, size (x-small|small|medium|large), optional, hide-label, disabled
119
- - Switch: label, checked, disabled, size (x-small|small|medium|large)
120
- - RangeInput: min, max, value, step, bubble, bubble-format (time), disabled
121
- - ChipInput: label, placeholder, size (x-small|small|medium|large), placement (before|after), breakpoint, allow-custom, mobile-stack, hide-label, disabled, options, value, id
122
- - FileUpload: acceptedFileTypes, currentFileName
123
- - Addon: text, size (x-small|small|medium|large), slot (before|after), style
124
-
125
- ACTIONS:
126
- - Button: text, variant (primary|secondary|tertiary|overlay|attention), size (small|medium|large), disabled, aria-label; slots default/before/after
127
- - ButtonGroup: slot default, right, style
128
- - Link: text, href, variant (primary|secondary|tertiary|overlay|attention), size (x-small|small|medium|large), target, download, weight (regular|bold), disabled; slots default/before/after
129
- - Dropdown: zindex, position, persistent; slots action/default
130
- - Chip: text, active, dismiss, usage; slots default/before/after
131
-
132
- NAVIGATION:
133
- - TabBar: speed, controlsPosition; slots default/controls
134
- - TabItem: text, icon, active, id
135
- - TabController: slot default
136
- - TabPanel: item
137
- - Stepper: direction (horizontal|vertical), activeStep
138
- - Step: title
139
- - CarouselController: slot default, style
140
- - CarouselPanel: item, style
141
-
142
- FEEDBACK:
143
- - Message: heading, variant (neutral|positive|info|warning|attention), icon, size (small|medium|large); slot default. Use only for persistent page-level or section-level notices. Always provide a concise heading plus default slot body content, usually Body/List/Link. Do not use for inline guidance, styled text blocks, or form helper text.
144
- - Alert: variant (success|info|warning|error), label; slots default/action
145
- - Loader: loading, animation (pulsate|fade-in|translate), direction (up|right|down|left), duration; slot default
146
- - Spinner: size (xx-small|x-small|small|medium|large), color, duration, label, style
147
- - Progress: progress, state
148
-
149
- PROMPT COMPONENTS:
150
- - Prompt: placeholder, value, rows, enter-submit, fan-open, disabled, loading, loading-label, context-mode (icon|chip), preview-dialog-width, preview-dialog-title, preview-overflow-to-preview, preview-threshold-chars, preview-auto-clickable, preview-loading, preview-loading-label, preview-scrollbar, error-message, debug, effects-off, color-top-start, color-top-mid, color-top-end, color-top-accent, color-layout, style
151
- - PromptMessage: size (x-small|small|medium|large), variant (default|ghost), density (default|compact), style
152
- - PromptPreview: value, badge, label, bg-image, image-tint, accent, inverted, show-text, badge-only, animated, loading, loading-label, clickable, animation-mode, style
153
- - PromptToggle: mode (icon|chip), style
154
-
155
- PRESENTATION:
156
- - SlideFrame: title, footer-text, ratio (16:9|4:3|1:1|3:2|9:16), present, active-section, padding, variant (default|plain), radius, notes-open, hide-header, hide-footer, hide-counter, allow-add-section, fullscreen, scroll, style
157
-
158
- SPACING VALUES:
159
- 000, 025, 050, 100, 200, 300, 400, 500, 600, 700, 800
160
- Use 100-300 for tight/form spacing and 400-800 for layout.
161
-
162
- ASSETS:
163
- Use real Muibook asset paths:
164
- - Base path: 'https://muibook.com/images/'
165
- - Logos: 'logo.png', 'guides.svg', 'mui.svg'
166
- - Backgrounds: 'placeholder.png', 'snowy-mint.png', 'buttercup.png', 'sapphire.png', 'crystal.png', 'premier.png', 'diamond.png'
167
- - Partners: 'mastercard.svg', 'visa-black.svg', 'visa-white.svg', 'amex.svg', 'emerald.svg', 'ruby.svg', 'sapphire.svg'
168
-
169
- FORMATTING:
170
- - SmartCard number: last four digits only (e.g. 1234).
171
-
172
- `
6
+ content: o
173
7
  },
174
8
  {
175
9
  role: "assistant",
176
10
  name: "examples",
177
- content: JSON.stringify({
178
- signupFlow: {
179
- type: "Container",
180
- id: "signup_container",
181
- props: {
182
- center: !0,
183
- size: "medium",
184
- style: "padding-block: var(--space-800);"
185
- },
186
- children: [
187
- {
188
- type: "Card",
189
- id: "signup_card",
190
- props: {
191
- style: "width: 100%; max-width: 32rem; margin-inline: auto;"
192
- },
193
- children: [
194
- {
195
- type: "CardBody",
196
- id: "signup_card_body",
197
- props: { style: "padding: var(--space-500);" },
198
- children: [
199
- {
200
- type: "VStack",
201
- id: "signup_stack",
202
- props: { space: "var(--space-400)", alignX: "stretch" },
203
- children: [
204
- {
205
- type: "Heading",
206
- id: "signup_title",
207
- props: {
208
- text: "Create your account",
209
- size: "2",
210
- level: "1"
211
- },
212
- children: []
213
- },
214
- {
215
- type: "Body",
216
- id: "signup_intro",
217
- props: {
218
- text: "Start with your work email and a secure password.",
219
- size: "small",
220
- variant: "optional"
221
- },
222
- children: []
223
- },
224
- {
225
- type: "FormGroup",
226
- id: "signup_fields",
227
- props: { variant: "vertical", "hide-label": !0 },
228
- children: [
229
- {
230
- type: "Field",
231
- id: "signup_name_field",
232
- props: { label: "Name" },
233
- children: [
234
- {
235
- type: "Input",
236
- id: "signup_name",
237
- props: {
238
- label: "Name",
239
- placeholder: "Jane Smith",
240
- name: "name"
241
- },
242
- children: []
243
- }
244
- ]
245
- },
246
- {
247
- type: "Field",
248
- id: "signup_email_field",
249
- props: { label: "Email" },
250
- children: [
251
- {
252
- type: "Input",
253
- id: "signup_email",
254
- props: {
255
- label: "Email",
256
- type: "email",
257
- placeholder: "jane@company.com",
258
- name: "email"
259
- },
260
- children: []
261
- }
262
- ]
263
- },
264
- {
265
- type: "Field",
266
- id: "signup_password_field",
267
- props: { label: "Password" },
268
- children: [
269
- {
270
- type: "Input",
271
- id: "signup_password",
272
- props: {
273
- label: "Password",
274
- type: "password",
275
- placeholder: "Create password",
276
- name: "password"
277
- },
278
- children: []
279
- }
280
- ]
281
- },
282
- {
283
- type: "Checkbox",
284
- id: "signup_terms",
285
- props: {
286
- text: "I agree to the terms",
287
- size: "small"
288
- },
289
- children: []
290
- }
291
- ]
292
- },
293
- {
294
- type: "Button",
295
- id: "signup_submit",
296
- props: {
297
- text: "Create account",
298
- variant: "primary",
299
- size: "large"
300
- },
301
- children: []
302
- }
303
- ]
304
- }
305
- ]
306
- }
307
- ]
308
- }
309
- ]
310
- },
311
- rewardsCard: {
312
- type: "Container",
313
- id: "root",
314
- props: { size: "medium", center: !0 },
315
- children: [
316
- {
317
- type: "Card",
318
- id: "card",
319
- props: {},
320
- children: [
321
- {
322
- type: "CardHeader",
323
- id: "header",
324
- props: {},
325
- children: [
326
- {
327
- type: "Heading",
328
- id: "title",
329
- props: { text: "Rewards", size: "4", level: "4" },
330
- children: []
331
- }
332
- ]
333
- },
334
- {
335
- type: "CardBody",
336
- id: "body",
337
- props: {},
338
- children: [
339
- {
340
- type: "VStack",
341
- id: "content",
342
- props: { space: "var(--space-200)", alignX: "center" },
343
- children: [
344
- {
345
- type: "SmartCard",
346
- id: "smart-card",
347
- props: {
348
- inverted: !0,
349
- "bg-image": "https://muibook.com/images/diamond.png",
350
- partner: "https://muibook.com/images/emerald.svg",
351
- number: "1234",
352
- type: "Rewards",
353
- variant: "plain",
354
- state: "default"
355
- },
356
- children: []
357
- }
358
- ]
359
- }
360
- ]
361
- }
362
- ]
363
- }
364
- ]
365
- },
366
- contactForm: {
367
- type: "VStack",
368
- id: "root",
369
- props: {
370
- space: "var(--space-300)",
371
- style: "width: 100%; max-width: 960px;"
372
- },
373
- children: [
374
- {
375
- type: "Heading",
376
- id: "title",
377
- props: { text: "Contact Us", size: "1", level: "1" },
378
- children: []
379
- },
380
- {
381
- type: "Alert",
382
- id: "info",
383
- props: { variant: "info", label: "Info" },
384
- children: [
385
- {
386
- type: "Span",
387
- id: "copy",
388
- props: { text: "Reply in 24h." },
389
- children: []
390
- }
391
- ]
392
- },
393
- {
394
- type: "VStack",
395
- id: "form",
396
- props: { space: "var(--space-200)" },
397
- children: [
398
- {
399
- type: "Input",
400
- id: "email",
401
- props: { label: "Email", type: "email" },
402
- children: []
403
- },
404
- {
405
- type: "Select",
406
- id: "subject",
407
- props: {
408
- label: "Subject",
409
- options: [
410
- { value: "general", label: "General" },
411
- { value: "support", label: "Support" },
412
- { value: "billing", label: "Billing" }
413
- ]
414
- },
415
- children: []
416
- },
417
- {
418
- type: "Input",
419
- id: "message",
420
- props: {
421
- label: "Message",
422
- type: "text",
423
- placeholder: "How can we help?"
424
- },
425
- children: []
426
- }
427
- ]
428
- },
429
- {
430
- type: "Button",
431
- id: "submit",
432
- props: { text: "Send Message", variant: "primary" },
433
- children: []
434
- }
435
- ]
436
- }
437
- })
11
+ content: JSON.stringify(t)
438
12
  }
439
13
  ];
440
14
  export {
441
- e as prompts
15
+ n as prompts
442
16
  };