@smwb/ui-mcp-react 2.7.0 → 2.9.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/component-meta/base/icon/icon.json +6 -1
- package/component-meta/base/ripple/ripple.json +6 -1
- package/component-meta/connects/rt/table/table.json +1 -1
- package/component-meta/dataDisplay/avatar/avatar.avatarGroup.json +5 -0
- package/component-meta/dataDisplay/avatar/avatar.json +5 -0
- package/component-meta/dataDisplay/card/card.json +10 -5
- package/component-meta/dataDisplay/chart/chart.json +5 -0
- package/component-meta/dataDisplay/chat/chat.chatFooterComposer.json +24 -0
- package/component-meta/dataDisplay/chat/chat.json +24 -3
- package/component-meta/dataDisplay/chat/chatComposer.json +1 -1
- package/component-meta/dataDisplay/chat/chatLayout.json +7 -1
- package/component-meta/dataDisplay/chat/chatOverlayLayout.json +7 -1
- package/component-meta/dataDisplay/chip/chip.json +14 -4
- package/component-meta/dataDisplay/dagView/dagView.json +165 -0
- package/component-meta/dataDisplay/descriptionList/descriptionList.json +1 -1
- package/component-meta/dataDisplay/diffStat/diffStat.json +65 -0
- package/component-meta/dataDisplay/kanban/kanban.json +5 -0
- package/component-meta/dataDisplay/kanban/kanban.kanbanCard.json +5 -0
- package/component-meta/dataDisplay/kanban/kanban.kanbanColumn.json +5 -0
- package/component-meta/dataDisplay/kbd/kbd.json +55 -0
- package/component-meta/dataDisplay/list/list.json +5 -0
- package/component-meta/dataDisplay/list/listItem.json +18 -3
- package/component-meta/dataDisplay/meter/meter.json +5 -0
- package/component-meta/dataDisplay/personChip/personChip.json +5 -0
- package/component-meta/dataDisplay/qrCode/qrCode.json +60 -0
- package/component-meta/dataDisplay/stat/stat.json +5 -0
- package/component-meta/dataDisplay/statusDot/statusDot.json +60 -0
- package/component-meta/dataDisplay/swimlanes/swimlanes.json +90 -0
- package/component-meta/dataDisplay/table/table.json +1 -1
- package/component-meta/dataDisplay/table/tableCell.json +6 -1
- package/component-meta/dataDisplay/table/tableHeadCell.json +11 -1
- package/component-meta/dataDisplay/table/tableRow.json +5 -0
- package/component-meta/dataDisplay/thumbCard/thumbCard.json +16 -6
- package/component-meta/dataDisplay/treeView/treeView.json +21 -1
- package/component-meta/feedBack/emptyState/emptyState.json +5 -0
- package/component-meta/feedBack/message/message.json +5 -0
- package/component-meta/feedBack/skeleton/skeleton.json +7 -2
- package/component-meta/feedBack/tooltip/tooltip.json +4 -4
- package/component-meta/inputs/button/button.json +15 -0
- package/component-meta/inputs/buttonGroups/buttonGroup.json +5 -0
- package/component-meta/inputs/checkbox/checkbox.json +2 -2
- package/component-meta/inputs/composer/composer.json +222 -0
- package/component-meta/inputs/radioButton/radioButton.json +6 -1
- package/component-meta/inputs/rating/rating.json +11 -1
- package/component-meta/inputs/selectField/dropdownMenu.json +45 -0
- package/component-meta/inputs/selectField/selectField.json +6 -6
- package/component-meta/inputs/slider/slider.json +8 -3
- package/component-meta/inputs/textField/textField.json +3 -3
- package/component-meta/inputs/textField/textFieldWrapper.json +16 -1
- package/component-meta/inputs/toggle/toggle.json +1 -1
- package/component-meta/inputs/valueSlider/valueSlider.json +13 -8
- package/component-meta/layout/appLayout/appLayout.json +5 -0
- package/component-meta/layout/divider/divider.json +5 -0
- package/component-meta/layout/floatingWindow/floatingWindow.json +5 -0
- package/component-meta/layout/grid/grid.column.json +1 -1
- package/component-meta/layout/grid/grid.container.json +5 -0
- package/component-meta/layout/grid/grid.row.json +5 -0
- package/component-meta/layout/page/page.json +5 -0
- package/component-meta/layout/pageHeader/pageHeader.json +5 -0
- package/component-meta/layout/sectionHeader/sectionHeader.json +5 -0
- package/component-meta/layout/sheet/sheet.json +25 -0
- package/component-meta/layout/stack/stack.json +5 -0
- package/component-meta/layout/tabGroups/tabGroups.json +101 -0
- package/component-meta/navigation/appBar/appBar.json +20 -0
- package/component-meta/navigation/breadcrumbs/breadcrumbs.json +5 -0
- package/component-meta/navigation/commandPalette/commandPalette.json +161 -0
- package/component-meta/navigation/menu/menu.json +1 -1
- package/component-meta/navigation/menu/menuItem.json +1 -1
- package/component-meta/navigation/pagination/pagination.json +5 -0
- package/component-meta/navigation/sidebar/sidebar.json +5 -0
- package/component-meta/navigation/stepper/stepper.json +5 -0
- package/component-meta/navigation/tabs/tab/tab.json +30 -4
- package/component-meta/navigation/tabs/tabPanel/tabPanel.json +42 -0
- package/component-meta/navigation/tabs/tabs.json +40 -7
- package/package.json +3 -3
|
@@ -64,6 +64,16 @@
|
|
|
64
64
|
"required": false,
|
|
65
65
|
"description": "Link URL when rendered as an anchor."
|
|
66
66
|
},
|
|
67
|
+
"target": {
|
|
68
|
+
"type": "string | null",
|
|
69
|
+
"required": false,
|
|
70
|
+
"description": "Where a link (with `href`) opens. By default `\"_blank\"`: a new tab. `null` leaves the `target`\nattribute out, so the link opens in place, like an internal one; an empty string does the same, and\nany other string is used as is."
|
|
71
|
+
},
|
|
72
|
+
"rel": {
|
|
73
|
+
"type": "string",
|
|
74
|
+
"required": false,
|
|
75
|
+
"description": "The `rel` of a link (with `href`). By default `\"noreferrer\"` for a link that opens another tab or\nwindow, and none for one that opens in place. Your own value replaces the default, so add `noreferrer` yourself\nif you still want it; an empty string drops the attribute."
|
|
76
|
+
},
|
|
67
77
|
"disabled": {
|
|
68
78
|
"type": "boolean",
|
|
69
79
|
"required": false,
|
|
@@ -88,6 +98,11 @@
|
|
|
88
98
|
"type": "boolean",
|
|
89
99
|
"required": false,
|
|
90
100
|
"description": "Whether the ripple touch feedback is disabled."
|
|
101
|
+
},
|
|
102
|
+
"data-testid": {
|
|
103
|
+
"type": "string",
|
|
104
|
+
"required": false,
|
|
105
|
+
"description": "Test id of the root; `button`, or `button-link` for a link, unless given."
|
|
91
106
|
}
|
|
92
107
|
}
|
|
93
108
|
}
|
|
@@ -55,6 +55,11 @@
|
|
|
55
55
|
"type": "\"primary\" | \"secondary\" | \"error\" | \"success\" | \"warning\" | \"info\"",
|
|
56
56
|
"required": false,
|
|
57
57
|
"description": "Semantic color propagated to child buttons."
|
|
58
|
+
},
|
|
59
|
+
"data-testid": {
|
|
60
|
+
"type": "string",
|
|
61
|
+
"required": false,
|
|
62
|
+
"description": "Test id of the root `<div>`; `button-group` unless given."
|
|
58
63
|
}
|
|
59
64
|
}
|
|
60
65
|
}
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"readOnly": {
|
|
38
38
|
"type": "boolean",
|
|
39
39
|
"required": false,
|
|
40
|
-
"description": "
|
|
40
|
+
"description": "Keeps the checkbox as it is: clicks on it or its label and Space change nothing, and `onChange` is not called.\nIt stays focusable, and its input tells assistive technology it is read-only (`aria-readonly`)."
|
|
41
41
|
},
|
|
42
42
|
"required": {
|
|
43
43
|
"type": "boolean",
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
"indeterminate": {
|
|
58
58
|
"type": "boolean",
|
|
59
59
|
"required": false,
|
|
60
|
-
"description": "
|
|
60
|
+
"description": "Shows the checkbox as partly checked, as for a \"select all\" over a partial selection: drawn with a dash and\nannounced as \"mixed\" by screen readers, whatever `checked` is. A click does not clear it: the click toggles\n`checked` as usual and `onChange` reports the new `checked`, while the checkbox stays mixed until this prop turns\nfalse."
|
|
61
61
|
},
|
|
62
62
|
"className": {
|
|
63
63
|
"type": "string",
|
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Composer",
|
|
3
|
+
"description": "A task input: a multi-line field that grows from minRows to maxRows, a toolbar slot under it for chip selectors, a send button that becomes Stop while busy, keyboard send (Ctrl/⌘+Enter by default), optional attach button and drop target, and a character counter.",
|
|
4
|
+
"ssr": {
|
|
5
|
+
"safe": true,
|
|
6
|
+
"rendering": "universal"
|
|
7
|
+
},
|
|
8
|
+
"extends": [
|
|
9
|
+
"Omit<\n React.HTMLAttributes<HTMLDivElement>,\n \"onChange\" | \"defaultValue\" | \"onKeyDown\" | \"onFocus\" | \"onBlur\" | \"children\"\n>"
|
|
10
|
+
],
|
|
11
|
+
"inheritedAttributes": "Also accepts standard HTML attributes for the underlying element (see extends clause in TypeScript).",
|
|
12
|
+
"styles": {
|
|
13
|
+
"base": [
|
|
14
|
+
"@smwb/ui-styles/less/foundation.less",
|
|
15
|
+
"@smwb/ui-styles/less/theme.less"
|
|
16
|
+
],
|
|
17
|
+
"entries": [
|
|
18
|
+
"@smwb/ui-styles/less/components/composer/composer.entry.less"
|
|
19
|
+
],
|
|
20
|
+
"dependencies": [
|
|
21
|
+
"@smwb/ui-styles/less/components/icon/icon.entry.less"
|
|
22
|
+
],
|
|
23
|
+
"importExample": "@import (less) \"node_modules/@smwb/ui-styles/less/foundation.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/theme.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/composer/composer.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/icon/icon.entry.less\";"
|
|
24
|
+
},
|
|
25
|
+
"props": {
|
|
26
|
+
"value": {
|
|
27
|
+
"type": "string",
|
|
28
|
+
"required": false,
|
|
29
|
+
"description": "Controlled text. The composer is controlled while this is not `undefined` (checked on every render); a parent\nthat ignores `onValueChange` keeps the field showing this value."
|
|
30
|
+
},
|
|
31
|
+
"defaultValue": {
|
|
32
|
+
"type": "string",
|
|
33
|
+
"required": false,
|
|
34
|
+
"description": "Initial text while uncontrolled. Defaults to an empty string."
|
|
35
|
+
},
|
|
36
|
+
"onValueChange": {
|
|
37
|
+
"type": "(value: string) => void",
|
|
38
|
+
"required": false,
|
|
39
|
+
"description": "Called on every text change: typing, a newline, and the clear after a send. Called in both modes."
|
|
40
|
+
},
|
|
41
|
+
"onSend": {
|
|
42
|
+
"type": "(text: string) => void",
|
|
43
|
+
"required": false,
|
|
44
|
+
"description": "Called with the trimmed text when the user sends it: the send key (see `sendKey`) or a click on the action\nbutton. Nothing is called while sending is not allowed: no `onSend`, an empty or whitespace-only text, `disabled`,\n`readOnly`, `busy`, or a text over `maxLength`. Async work is shown with `busy`; the return value is ignored."
|
|
45
|
+
},
|
|
46
|
+
"sendKey": {
|
|
47
|
+
"type": "ComposerSendKey",
|
|
48
|
+
"required": false,
|
|
49
|
+
"description": "Which Enter sends. `\"modEnter\"` (default): Ctrl/⌘+Enter sends and Enter inserts a newline. `\"enter\"`: Enter sends,\nShift+Enter inserts a newline, Ctrl/⌘+Enter sends too. An Enter that commits an IME composition never sends."
|
|
50
|
+
},
|
|
51
|
+
"clearOnSend": {
|
|
52
|
+
"type": "boolean",
|
|
53
|
+
"required": false,
|
|
54
|
+
"description": "Clear the text after `onSend`: the composer's own state while uncontrolled, `onValueChange(\"\")` while controlled.\nDefaults to `true`."
|
|
55
|
+
},
|
|
56
|
+
"busy": {
|
|
57
|
+
"type": "boolean",
|
|
58
|
+
"required": false,
|
|
59
|
+
"description": "The agent is working: the action button turns into Stop and calls `onStop`, and the keys and the button do not\nsend. The text stays editable. The composer never changes `busy` itself, the parent owns it."
|
|
60
|
+
},
|
|
61
|
+
"onStop": {
|
|
62
|
+
"type": "() => void",
|
|
63
|
+
"required": false,
|
|
64
|
+
"description": "Called when Stop is pressed (click, Enter or Space on the button) while `busy` and not `disabled`. Without it the\nStop button does nothing, so pass it whenever `busy` can be set."
|
|
65
|
+
},
|
|
66
|
+
"placeholder": {
|
|
67
|
+
"type": "string",
|
|
68
|
+
"required": false,
|
|
69
|
+
"description": "Placeholder of the textarea. It is not a name for the field, set `aria-label` or `aria-labelledby` as well."
|
|
70
|
+
},
|
|
71
|
+
"maxLength": {
|
|
72
|
+
"type": "number",
|
|
73
|
+
"required": false,
|
|
74
|
+
"description": "Hard limit on the text (the native `maxlength` of the textarea, counted in UTF-16 units, so an emoji is 2).\nTurns the counter on."
|
|
75
|
+
},
|
|
76
|
+
"counter": {
|
|
77
|
+
"type": "boolean",
|
|
78
|
+
"required": false,
|
|
79
|
+
"description": "Show the counter (`n / maxLength`, or `n` without `maxLength`). Defaults to `true` when `maxLength` is set."
|
|
80
|
+
},
|
|
81
|
+
"counterAnnouncement": {
|
|
82
|
+
"type": "(remaining: number, maxLength: number) => string",
|
|
83
|
+
"required": false,
|
|
84
|
+
"description": "Text for the polite status region that announces how many characters are left. It is spoken only near the limit\n(within the larger of 10 characters and 10% of `maxLength`) and when the text is over it, with a negative\n`remaining`. Defaults to \"N characters left\" / \"N characters over the limit\"."
|
|
85
|
+
},
|
|
86
|
+
"minRows": {
|
|
87
|
+
"type": "number",
|
|
88
|
+
"required": false,
|
|
89
|
+
"description": "Height of the empty field in rows, and the `rows` of the textarea. Defaults to `1`."
|
|
90
|
+
},
|
|
91
|
+
"maxRows": {
|
|
92
|
+
"type": "number",
|
|
93
|
+
"required": false,
|
|
94
|
+
"description": "Rows the field grows to before it scrolls. Clamped to at least `minRows`. Defaults to `8`."
|
|
95
|
+
},
|
|
96
|
+
"layout": {
|
|
97
|
+
"type": "ComposerLayout",
|
|
98
|
+
"required": false,
|
|
99
|
+
"description": "`\"stacked\"` (default): the field on top, a bar under it with the attach button, the toolbar, the counter and the\naction. `\"inline\"`: the attach button, the field, the counter and the action in one row, the toolbar (if any)\nin a row under it."
|
|
100
|
+
},
|
|
101
|
+
"toolbar": {
|
|
102
|
+
"type": "React.ReactNode",
|
|
103
|
+
"required": false,
|
|
104
|
+
"description": "Slot under the field for chips and selectors (agent, model, mode, …). Drawn in every state. It is a plain `div`,\nnot `role=\"toolbar\"`: the content brings its own keyboard handling and disabled state."
|
|
105
|
+
},
|
|
106
|
+
"attachments": {
|
|
107
|
+
"type": "React.ReactNode",
|
|
108
|
+
"required": false,
|
|
109
|
+
"description": "Slot above the field for the app's file chips. The composer keeps no file state: the app lists what `onAttach`\ngave it here."
|
|
110
|
+
},
|
|
111
|
+
"onAttach": {
|
|
112
|
+
"type": "(files: File[]) => void",
|
|
113
|
+
"required": false,
|
|
114
|
+
"description": "Turns on the attach button, the hidden file input and the drop target (the whole composer). Called with the files\nof a pick or a drop that are left after `accept`, `multiple` and `maxFiles`, never with an empty list. Only a drag\nof files is taken: dragged text or a link still goes into the field."
|
|
115
|
+
},
|
|
116
|
+
"accept": {
|
|
117
|
+
"type": "DropzoneAccept",
|
|
118
|
+
"required": false,
|
|
119
|
+
"description": "Accepted file types, as a record of mime type to extensions or a raw `accept` string (`image/*`, `.pdf`, an exact\nmime type). It sets the picker's filter, and the files of a pick or a drop that do not match are left out."
|
|
120
|
+
},
|
|
121
|
+
"multiple": {
|
|
122
|
+
"type": "boolean",
|
|
123
|
+
"required": false,
|
|
124
|
+
"description": "Allow several files per pick or drop. When `false` the picker takes one and a drop keeps the first. Defaults to `true`."
|
|
125
|
+
},
|
|
126
|
+
"maxFiles": {
|
|
127
|
+
"type": "number",
|
|
128
|
+
"required": false,
|
|
129
|
+
"description": "Files beyond this number are dropped from a pick or a drop (counted after `accept`)."
|
|
130
|
+
},
|
|
131
|
+
"dropTarget": {
|
|
132
|
+
"type": "boolean",
|
|
133
|
+
"required": false,
|
|
134
|
+
"description": "Whether `onAttach` also makes the composer a drop target for files. Set `false` when a parent already takes drops\n(a chat panel): the attach button and the picker stay, and a drop on the composer bubbles to the parent untouched.\nDefaults to `true`."
|
|
135
|
+
},
|
|
136
|
+
"disabled": {
|
|
137
|
+
"type": "boolean",
|
|
138
|
+
"required": false,
|
|
139
|
+
"description": "Disables the textarea, the attach button, the action button and the drop target. Toolbar content is the app's to\ndisable."
|
|
140
|
+
},
|
|
141
|
+
"readOnly": {
|
|
142
|
+
"type": "boolean",
|
|
143
|
+
"required": false,
|
|
144
|
+
"description": "The textarea is `readonly`: sending is unavailable, Stop still works."
|
|
145
|
+
},
|
|
146
|
+
"autoFocus": {
|
|
147
|
+
"type": "boolean",
|
|
148
|
+
"required": false,
|
|
149
|
+
"description": "Focus the textarea on mount."
|
|
150
|
+
},
|
|
151
|
+
"name": {
|
|
152
|
+
"type": "string",
|
|
153
|
+
"required": false,
|
|
154
|
+
"description": "Name of the textarea."
|
|
155
|
+
},
|
|
156
|
+
"id": {
|
|
157
|
+
"type": "string",
|
|
158
|
+
"required": false,
|
|
159
|
+
"description": "Id of the textarea (the root keeps no id). Generated when not given."
|
|
160
|
+
},
|
|
161
|
+
"aria-label": {
|
|
162
|
+
"type": "string",
|
|
163
|
+
"required": false,
|
|
164
|
+
"description": "Accessible name of the textarea. Set this or `aria-labelledby`: a placeholder is not a name."
|
|
165
|
+
},
|
|
166
|
+
"aria-labelledby": {
|
|
167
|
+
"type": "string",
|
|
168
|
+
"required": false,
|
|
169
|
+
"description": "Id(s) of the element(s) that name the textarea."
|
|
170
|
+
},
|
|
171
|
+
"aria-describedby": {
|
|
172
|
+
"type": "string",
|
|
173
|
+
"required": false,
|
|
174
|
+
"description": "Id(s) that describe the textarea. They come first, the counter's id is appended."
|
|
175
|
+
},
|
|
176
|
+
"onKeyDown": {
|
|
177
|
+
"type": "React.KeyboardEventHandler<HTMLTextAreaElement>",
|
|
178
|
+
"required": false,
|
|
179
|
+
"description": "Key handler of the textarea. It runs before the composer's own; if it calls `preventDefault()`, the composer does nothing for that key."
|
|
180
|
+
},
|
|
181
|
+
"onFocus": {
|
|
182
|
+
"type": "React.FocusEventHandler<HTMLTextAreaElement>",
|
|
183
|
+
"required": false,
|
|
184
|
+
"description": "Focus handler of the textarea."
|
|
185
|
+
},
|
|
186
|
+
"onBlur": {
|
|
187
|
+
"type": "React.FocusEventHandler<HTMLTextAreaElement>",
|
|
188
|
+
"required": false,
|
|
189
|
+
"description": "Blur handler of the textarea."
|
|
190
|
+
},
|
|
191
|
+
"inputRef": {
|
|
192
|
+
"type": "React.Ref<HTMLTextAreaElement>",
|
|
193
|
+
"required": false,
|
|
194
|
+
"description": "Ref of the textarea (the root takes the component's own `ref`)."
|
|
195
|
+
},
|
|
196
|
+
"sendLabel": {
|
|
197
|
+
"type": "string",
|
|
198
|
+
"required": false,
|
|
199
|
+
"description": "Accessible name of the action button while it sends. Defaults to \"Send\"."
|
|
200
|
+
},
|
|
201
|
+
"stopLabel": {
|
|
202
|
+
"type": "string",
|
|
203
|
+
"required": false,
|
|
204
|
+
"description": "Accessible name of the action button while `busy`. Defaults to \"Stop\"."
|
|
205
|
+
},
|
|
206
|
+
"attachLabel": {
|
|
207
|
+
"type": "string",
|
|
208
|
+
"required": false,
|
|
209
|
+
"description": "Accessible name of the attach button. Defaults to \"Attach file\"."
|
|
210
|
+
},
|
|
211
|
+
"className": {
|
|
212
|
+
"type": "string",
|
|
213
|
+
"required": false,
|
|
214
|
+
"description": "Class name(s) for the root `<div>`. `style`, `ref`, `data-*` attributes and every other HTML attribute or event\nhandler go to the root too; the root's drag handlers run after yours."
|
|
215
|
+
},
|
|
216
|
+
"data-testid": {
|
|
217
|
+
"type": "string",
|
|
218
|
+
"required": false,
|
|
219
|
+
"description": "Test id of the root `<div>`. Defaults to `composer`; the parts inside have their own (`composer-input`, `composer-action`, …)."
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
}
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"readOnly": {
|
|
39
39
|
"type": "boolean",
|
|
40
40
|
"required": false,
|
|
41
|
-
"description": "
|
|
41
|
+
"description": "Keeps the radio as it is: clicks on it or its label, Space and the arrow keys of its group do not check it, and\n`onChange` is not called. It stays focusable.\n\nThe input does not tell assistive technology it is read-only: ARIA has no read-only state for a single radio,\nonly for its group. Put `role=\"radiogroup\"`, a name and `aria-readonly=\"true\"` on the element around the radios."
|
|
42
42
|
},
|
|
43
43
|
"required": {
|
|
44
44
|
"type": "boolean",
|
|
@@ -84,6 +84,11 @@
|
|
|
84
84
|
"type": "( event: React.ChangeEvent<HTMLInputElement>, value: string | number | readonly string[] | boolean | undefined, data: RadioButtonProps ) => void",
|
|
85
85
|
"required": false,
|
|
86
86
|
"description": "Unified handler: `(event, value, data)` where `value` is the radio's value (or checked state)."
|
|
87
|
+
},
|
|
88
|
+
"data-testid": {
|
|
89
|
+
"type": "string",
|
|
90
|
+
"required": false,
|
|
91
|
+
"description": "Test id of the `<input>`; `radio` unless given."
|
|
87
92
|
}
|
|
88
93
|
}
|
|
89
94
|
}
|
|
@@ -92,7 +92,17 @@
|
|
|
92
92
|
"id": {
|
|
93
93
|
"type": "string",
|
|
94
94
|
"required": false,
|
|
95
|
-
"description": "
|
|
95
|
+
"description": "Id of the control: the slider, or the image of a read-only rating."
|
|
96
|
+
},
|
|
97
|
+
"aria-label": {
|
|
98
|
+
"type": "string",
|
|
99
|
+
"required": false,
|
|
100
|
+
"description": "What is rated: the accessible name of the slider, \"Rating\" by default. A read-only rating is an image named by\nits value (\"3 of 5\"), after this label."
|
|
101
|
+
},
|
|
102
|
+
"aria-describedby": {
|
|
103
|
+
"type": "string",
|
|
104
|
+
"required": false,
|
|
105
|
+
"description": "Ids of more elements that describe the control, after its helper text."
|
|
96
106
|
},
|
|
97
107
|
"onChange": {
|
|
98
108
|
"type": "(value: number) => void",
|
|
@@ -106,6 +106,51 @@
|
|
|
106
106
|
"type": "number",
|
|
107
107
|
"required": false,
|
|
108
108
|
"description": "Row height (px) used when `virtualized`."
|
|
109
|
+
},
|
|
110
|
+
"listboxId": {
|
|
111
|
+
"type": "string",
|
|
112
|
+
"required": false,
|
|
113
|
+
"description": "Id of the listbox; the options' ids follow from it (`dropdownOptionId`)."
|
|
114
|
+
},
|
|
115
|
+
"labelledBy": {
|
|
116
|
+
"type": "string",
|
|
117
|
+
"required": false,
|
|
118
|
+
"description": "Ids of the elements that name the listbox and the search box in the menu."
|
|
119
|
+
},
|
|
120
|
+
"label": {
|
|
121
|
+
"type": "string",
|
|
122
|
+
"required": false,
|
|
123
|
+
"description": "Names the listbox and the search box in the menu when no element does."
|
|
124
|
+
},
|
|
125
|
+
"multiple": {
|
|
126
|
+
"type": "boolean",
|
|
127
|
+
"required": false,
|
|
128
|
+
"description": "Several options can be selected (`aria-multiselectable`)."
|
|
129
|
+
},
|
|
130
|
+
"activeIndex": {
|
|
131
|
+
"type": "number",
|
|
132
|
+
"required": false,
|
|
133
|
+
"description": "Index of the active option, counting `items` and then the create option; -1 for none."
|
|
134
|
+
},
|
|
135
|
+
"showActive": {
|
|
136
|
+
"type": "boolean",
|
|
137
|
+
"required": false,
|
|
138
|
+
"description": "Marks the active option and keeps it in view: the keyboard moved to it."
|
|
139
|
+
},
|
|
140
|
+
"searchInputProps": {
|
|
141
|
+
"type": "React.InputHTMLAttributes<HTMLInputElement>",
|
|
142
|
+
"required": false,
|
|
143
|
+
"description": "Attributes and handlers of the search box in the menu, which the field makes a combobox."
|
|
144
|
+
},
|
|
145
|
+
"searchInputRef": {
|
|
146
|
+
"type": "React.Ref<HTMLInputElement>",
|
|
147
|
+
"required": false,
|
|
148
|
+
"description": "Search Input Ref. Optional. Type: React.Ref<HTMLInputElement>."
|
|
149
|
+
},
|
|
150
|
+
"menuRef": {
|
|
151
|
+
"type": "React.Ref<HTMLDivElement>",
|
|
152
|
+
"required": false,
|
|
153
|
+
"description": "The menu's root element."
|
|
109
154
|
}
|
|
110
155
|
}
|
|
111
156
|
}
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"value": {
|
|
34
34
|
"type": "null | string | number | (string | number | undefined | null)[]",
|
|
35
35
|
"required": false,
|
|
36
|
-
"description": "
|
|
36
|
+
"description": "The selected value, or the values of a `multiple` field. Any value but\n`undefined` makes the field controlled: it shows this value and nothing\nelse, and a pick, a chip delete or a clear only asks for a change through\n`onChange`. `null` means nothing is selected. While `value` is `undefined`,\nthe field keeps its own value, starting from `defaultValue`."
|
|
37
37
|
},
|
|
38
38
|
"defaultValue": {
|
|
39
39
|
"type": "null | string | number | (string | number)[]",
|
|
@@ -88,7 +88,7 @@
|
|
|
88
88
|
"search": {
|
|
89
89
|
"type": "true | false | \"menu\"",
|
|
90
90
|
"required": false,
|
|
91
|
-
"description": "
|
|
91
|
+
"description": "A search box for the options: `true` puts it in the field, where it takes\nthe focus and is the combobox; `\"menu\"` puts it at the top of the menu,\nwhich moves the focus into it when it opens."
|
|
92
92
|
},
|
|
93
93
|
"chips": {
|
|
94
94
|
"type": "boolean",
|
|
@@ -113,7 +113,7 @@
|
|
|
113
113
|
"label": {
|
|
114
114
|
"type": "string",
|
|
115
115
|
"required": false,
|
|
116
|
-
"description": "Visible label text."
|
|
116
|
+
"description": "Visible label, drawn above the field (an `inline` field draws none). It\nnames the combobox, whose value is the selected text: \"Country\", \"Russia\".\nWith `chips` the chips' texts follow it in the name: \"Labels Backend Docs\"."
|
|
117
117
|
},
|
|
118
118
|
"variant": {
|
|
119
119
|
"type": "\"outlined\" | \"filled\"",
|
|
@@ -168,7 +168,7 @@
|
|
|
168
168
|
"optionRenderer": {
|
|
169
169
|
"type": "(args: MenuItemProps) => React.ReactNode",
|
|
170
170
|
"required": false,
|
|
171
|
-
"description": "
|
|
171
|
+
"description": "Draws an option in place of the default one. It gets the option's props\nand returns its `<li>`: pass `id`, `role`, `aria-selected`, `aria-disabled`,\n`className` and `onClick` on to it, so the option can be reached from the\nkeyboard, read out and picked."
|
|
172
172
|
},
|
|
173
173
|
"clearable": {
|
|
174
174
|
"type": "boolean",
|
|
@@ -198,12 +198,12 @@
|
|
|
198
198
|
"aria-label": {
|
|
199
199
|
"type": "string",
|
|
200
200
|
"required": false,
|
|
201
|
-
"description": "Accessible
|
|
201
|
+
"description": "Accessible name of the combobox. Replaces the name the visible `label`\ngives it; a field without a drawn label needs it."
|
|
202
202
|
},
|
|
203
203
|
"id": {
|
|
204
204
|
"type": "string",
|
|
205
205
|
"required": false,
|
|
206
|
-
"description": "
|
|
206
|
+
"description": "Id of the control, the part of the field that holds the selected text. It is\nthe combobox, unless `search` puts a search box in it: then the box is."
|
|
207
207
|
}
|
|
208
208
|
}
|
|
209
209
|
}
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
"valueField": {
|
|
72
72
|
"type": "boolean",
|
|
73
73
|
"required": false,
|
|
74
|
-
"description": "
|
|
74
|
+
"description": "Draws a number field beside the slider for typing the value; a single\n`discrete` slider only. The field is named as the slider is (see `label`\nand `aria-label`)."
|
|
75
75
|
},
|
|
76
76
|
"withTicks": {
|
|
77
77
|
"type": "boolean",
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
"label": {
|
|
82
82
|
"type": "string",
|
|
83
83
|
"required": false,
|
|
84
|
-
"description": "Visible label
|
|
84
|
+
"description": "Visible label, drawn above the slider. It names the slider; each thumb of a\nrange adds its own word: with `label=\"Price\"` they read \"Price minimum\" and\n\"Price maximum\"."
|
|
85
85
|
},
|
|
86
86
|
"helperText": {
|
|
87
87
|
"type": "React.ReactNode",
|
|
@@ -121,7 +121,12 @@
|
|
|
121
121
|
"aria-label": {
|
|
122
122
|
"type": "string",
|
|
123
123
|
"required": false,
|
|
124
|
-
"description": "Accessible
|
|
124
|
+
"description": "Accessible name of the slider. Replaces the name the visible `label` gives\nit; a slider without a label needs it or `aria-labelledby`. Each thumb of a\nrange adds its own word, as with `label`."
|
|
125
|
+
},
|
|
126
|
+
"aria-labelledby": {
|
|
127
|
+
"type": "string",
|
|
128
|
+
"required": false,
|
|
129
|
+
"description": "Ids of the elements whose text names the slider. It goes on the range input,\nnot the root, and replaces the name the visible `label` gives it; as on any\nelement, it also wins over `aria-label`. Each thumb of a range adds its own\nword, as with `label`."
|
|
125
130
|
},
|
|
126
131
|
"getAriaValueText": {
|
|
127
132
|
"type": "(value: number) => string",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"label": {
|
|
25
25
|
"type": "string",
|
|
26
26
|
"required": false,
|
|
27
|
-
"description": "Visible label
|
|
27
|
+
"description": "Visible label; it points to the `<input>`, so it also names the field. Not drawn for an `inline` field."
|
|
28
28
|
},
|
|
29
29
|
"helperText": {
|
|
30
30
|
"type": "React.ReactNode",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"className": {
|
|
60
60
|
"type": "string",
|
|
61
61
|
"required": false,
|
|
62
|
-
"description": "
|
|
62
|
+
"description": "Class name(s) for the root wrapper `<div>`. `style` and `data-*` attributes go to the wrapper too (a `data-testid`\nreplaces its default `text-field`); every other HTML attribute (`aria-*`, `autoFocus`, `maxLength`, event handlers)\ngoes to the `<input>`."
|
|
63
63
|
},
|
|
64
64
|
"placeholder": {
|
|
65
65
|
"type": "string",
|
|
@@ -119,7 +119,7 @@
|
|
|
119
119
|
"id": {
|
|
120
120
|
"type": "string",
|
|
121
121
|
"required": false,
|
|
122
|
-
"description": "
|
|
122
|
+
"description": "Id of the `<input>`; the label points to it. Generated when not given."
|
|
123
123
|
},
|
|
124
124
|
"inline": {
|
|
125
125
|
"type": "boolean",
|
|
@@ -31,6 +31,11 @@
|
|
|
31
31
|
"required": false,
|
|
32
32
|
"description": "Supplementary hint text displayed below the control."
|
|
33
33
|
},
|
|
34
|
+
"helperTextId": {
|
|
35
|
+
"type": "string",
|
|
36
|
+
"required": false,
|
|
37
|
+
"description": "Id of the helper text, for the control's `aria-describedby`. Only shown helper text takes it: not the blank line\ndrawn without helper text, and an inline field shows none."
|
|
38
|
+
},
|
|
34
39
|
"variant": {
|
|
35
40
|
"type": "\"outlined\" | \"filled\"",
|
|
36
41
|
"required": false,
|
|
@@ -74,7 +79,12 @@
|
|
|
74
79
|
"htmlFor": {
|
|
75
80
|
"type": "string",
|
|
76
81
|
"required": false,
|
|
77
|
-
"description": "
|
|
82
|
+
"description": "Id of the control the label names. Without it, the label names nothing."
|
|
83
|
+
},
|
|
84
|
+
"labelId": {
|
|
85
|
+
"type": "string",
|
|
86
|
+
"required": false,
|
|
87
|
+
"description": "Id of the `<label>`. A control that `htmlFor` cannot label (one that is not\na form element, such as SelectField's `role=\"button\"`) points\n`aria-labelledby` at it."
|
|
78
88
|
},
|
|
79
89
|
"shrink": {
|
|
80
90
|
"type": "boolean",
|
|
@@ -100,6 +110,11 @@
|
|
|
100
110
|
"type": "boolean",
|
|
101
111
|
"required": false,
|
|
102
112
|
"description": "Inline. Optional. Type: boolean."
|
|
113
|
+
},
|
|
114
|
+
"data-testid": {
|
|
115
|
+
"type": "string",
|
|
116
|
+
"required": false,
|
|
117
|
+
"description": "Test id of the root `<div>`; `text-field` unless given."
|
|
103
118
|
}
|
|
104
119
|
}
|
|
105
120
|
}
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"readOnly": {
|
|
34
34
|
"type": "boolean",
|
|
35
35
|
"required": false,
|
|
36
|
-
"description": "
|
|
36
|
+
"description": "Keeps the switch as it is: clicks on it or its label and Space change nothing, and `onChange` is not called.\nIt stays focusable, and its input tells assistive technology it is read-only (`aria-readonly`)."
|
|
37
37
|
},
|
|
38
38
|
"required": {
|
|
39
39
|
"type": "boolean",
|
|
@@ -22,6 +22,16 @@
|
|
|
22
22
|
"importExample": "@import (less) \"node_modules/@smwb/ui-styles/less/foundation.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/theme.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/valueSlider/valueSlider.entry.less\";\n@import (less) \"node_modules/@smwb/ui-styles/less/components/slider/slider.entry.less\";"
|
|
23
23
|
},
|
|
24
24
|
"props": {
|
|
25
|
+
"label": {
|
|
26
|
+
"type": "string",
|
|
27
|
+
"required": false,
|
|
28
|
+
"description": "Label text, drawn in the header row beside the readout. It names the slider,\nas `Slider`'s label does; each thumb of a range adds its own word: with\n`label=\"Price\"` they read \"Price minimum\" and \"Price maximum\"."
|
|
29
|
+
},
|
|
30
|
+
"aria-label": {
|
|
31
|
+
"type": "string",
|
|
32
|
+
"required": false,
|
|
33
|
+
"description": "Accessible name of the slider. Replaces the name the header `label` gives\nit; a ValueSlider without a label needs it or `aria-labelledby`. Each thumb\nof a range adds its own word, as with `label`."
|
|
34
|
+
},
|
|
25
35
|
"readout": {
|
|
26
36
|
"type": "boolean | ((value: SliderValue | undefined) => string)",
|
|
27
37
|
"required": false,
|
|
@@ -90,18 +100,13 @@
|
|
|
90
100
|
"valueField": {
|
|
91
101
|
"type": "boolean",
|
|
92
102
|
"required": false,
|
|
93
|
-
"description": "
|
|
103
|
+
"description": "Draws a number field beside the slider for typing the value; a single\n`discrete` slider only. The field is named as the slider is (see `label`\nand `aria-label`)."
|
|
94
104
|
},
|
|
95
105
|
"withTicks": {
|
|
96
106
|
"type": "boolean",
|
|
97
107
|
"required": false,
|
|
98
108
|
"description": "With Ticks. Optional. Type: boolean."
|
|
99
109
|
},
|
|
100
|
-
"label": {
|
|
101
|
-
"type": "string",
|
|
102
|
-
"required": false,
|
|
103
|
-
"description": "Visible label text."
|
|
104
|
-
},
|
|
105
110
|
"helperText": {
|
|
106
111
|
"type": "React.ReactNode",
|
|
107
112
|
"required": false,
|
|
@@ -137,10 +142,10 @@
|
|
|
137
142
|
"required": false,
|
|
138
143
|
"description": "Show ticks/marks. `true` derives marks from `step`; an array gives explicit positions/labels."
|
|
139
144
|
},
|
|
140
|
-
"aria-
|
|
145
|
+
"aria-labelledby": {
|
|
141
146
|
"type": "string",
|
|
142
147
|
"required": false,
|
|
143
|
-
"description": "
|
|
148
|
+
"description": "Ids of the elements whose text names the slider. It goes on the range input,\nnot the root, and replaces the name the visible `label` gives it; as on any\nelement, it also wins over `aria-label`. Each thumb of a range adds its own\nword, as with `label`."
|
|
144
149
|
},
|
|
145
150
|
"getAriaValueText": {
|
|
146
151
|
"type": "(value: number) => string",
|
|
@@ -87,6 +87,11 @@
|
|
|
87
87
|
"type": "string",
|
|
88
88
|
"required": false,
|
|
89
89
|
"description": "Additional CSS class name(s) for the root element."
|
|
90
|
+
},
|
|
91
|
+
"data-testid": {
|
|
92
|
+
"type": "string",
|
|
93
|
+
"required": false,
|
|
94
|
+
"description": "Test id of the root `<div>`; `app-layout` unless given."
|
|
90
95
|
}
|
|
91
96
|
}
|
|
92
97
|
}
|
|
@@ -55,6 +55,11 @@
|
|
|
55
55
|
"type": "boolean",
|
|
56
56
|
"required": false,
|
|
57
57
|
"description": "Stretch to fill a flex container along the cross axis."
|
|
58
|
+
},
|
|
59
|
+
"data-testid": {
|
|
60
|
+
"type": "string",
|
|
61
|
+
"required": false,
|
|
62
|
+
"description": "Test id of the root `<div>`; `divider` unless given."
|
|
58
63
|
}
|
|
59
64
|
}
|
|
60
65
|
}
|
|
@@ -193,6 +193,11 @@
|
|
|
193
193
|
"type": "string",
|
|
194
194
|
"required": false,
|
|
195
195
|
"description": "Accessible label when no visible title is present."
|
|
196
|
+
},
|
|
197
|
+
"data-testid": {
|
|
198
|
+
"type": "string",
|
|
199
|
+
"required": false,
|
|
200
|
+
"description": "Test id of the window's root `<div>`; `floating-window` unless given."
|
|
196
201
|
}
|
|
197
202
|
}
|
|
198
203
|
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"rendering": "universal"
|
|
7
7
|
},
|
|
8
8
|
"extends": [
|
|
9
|
-
"React.HTMLAttributes<HTMLDivElement> & {\n /** Ширина на точке остановы: 1–12 из 12, `\"auto\"` (по контенту) или `true` (заполнить). */\n xs?: BreakpointType;\n sm?: BreakpointType;\n md?: BreakpointType;\n lg?: BreakpointType;\n xl?: BreakpointType;\n /** Сдвиг (пустые ведущие колонки) на точке остановы, 0–11. */\n xsOffset?: OffsetType;\n smOffset?: OffsetType;\n mdOffset?: OffsetType;\n lgOffset?: OffsetType;\n xlOffset?: OffsetType;\n /** Скрыть колонку: булево (всегда) или по точкам остановы `{ xs:true, md:false }`. */\n hidden?: ResponsiveBool;\n}"
|
|
9
|
+
"React.HTMLAttributes<HTMLDivElement> & {\n /** Ширина на точке остановы: 1–12 из 12, `\"auto\"` (по контенту) или `true` (заполнить). */\n xs?: BreakpointType;\n sm?: BreakpointType;\n md?: BreakpointType;\n lg?: BreakpointType;\n xl?: BreakpointType;\n /** Сдвиг (пустые ведущие колонки) на точке остановы, 0–11. */\n xsOffset?: OffsetType;\n smOffset?: OffsetType;\n mdOffset?: OffsetType;\n lgOffset?: OffsetType;\n xlOffset?: OffsetType;\n /** Скрыть колонку: булево (всегда) или по точкам остановы `{ xs:true, md:false }`. */\n hidden?: ResponsiveBool;\n /** Test id of the root `<div>`; `grid-col` unless given. */\n \"data-testid\"?: string;\n}"
|
|
10
10
|
],
|
|
11
11
|
"inheritedAttributes": "Also accepts standard HTML attributes for the underlying element (see extends clause in TypeScript).",
|
|
12
12
|
"styles": {
|