@iress-oss/ids-mcp-server 5.15.0 → 6.0.0-alpha.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 (104) hide show
  1. package/generated/docs/components-alert-docs.md +579 -7
  2. package/generated/docs/components-autocomplete-docs.md +694 -15
  3. package/generated/docs/components-autocomplete-recipes-docs.md +1 -1
  4. package/generated/docs/components-badge-docs.md +442 -59
  5. package/generated/docs/components-button-docs.md +1150 -70
  6. package/generated/docs/components-buttongroup-docs.md +441 -3
  7. package/generated/docs/components-card-docs.md +487 -37
  8. package/generated/docs/components-checkbox-docs.md +506 -5
  9. package/generated/docs/components-checkboxgroup-docs.md +586 -191
  10. package/generated/docs/components-checkboxgroup-recipes-docs.md +3 -3
  11. package/generated/docs/components-col-docs.md +451 -36
  12. package/generated/docs/components-container-docs.md +32 -0
  13. package/generated/docs/components-divider-docs.md +427 -27
  14. package/generated/docs/components-expander-docs.md +487 -108
  15. package/generated/docs/components-field-docs.md +1400 -68
  16. package/generated/docs/components-filter-docs.md +268 -55
  17. package/generated/docs/components-hide-docs.md +447 -10
  18. package/generated/docs/components-icon-docs.md +522 -259
  19. package/generated/docs/components-image-docs.md +493 -0
  20. package/generated/docs/components-inline-docs.md +1179 -44
  21. package/generated/docs/components-input-docs.md +544 -12
  22. package/generated/docs/components-input-recipes-docs.md +4 -4
  23. package/generated/docs/components-inputcurrency-docs.md +532 -0
  24. package/generated/docs/components-inputcurrency-recipes-docs.md +4 -5
  25. package/generated/docs/components-introduction-docs.md +450 -0
  26. package/generated/docs/components-label-docs.md +454 -27
  27. package/generated/docs/components-link-docs.md +586 -0
  28. package/generated/docs/components-menu-docs.md +531 -89
  29. package/generated/docs/components-menu-menuitem-docs.md +556 -10
  30. package/generated/docs/components-modal-docs.md +814 -55
  31. package/generated/docs/components-panel-docs.md +418 -198
  32. package/generated/docs/components-placeholder-docs.md +420 -1
  33. package/generated/docs/components-popover-docs.md +1097 -32
  34. package/generated/docs/components-popover-recipes-docs.md +39 -73
  35. package/generated/docs/components-progress-docs.md +464 -0
  36. package/generated/docs/components-provider-docs.md +57 -2
  37. package/generated/docs/components-radio-docs.md +460 -4
  38. package/generated/docs/components-radiogroup-docs.md +586 -116
  39. package/generated/docs/components-readonly-docs.md +450 -4
  40. package/generated/docs/components-richselect-docs.md +4660 -1257
  41. package/generated/docs/components-row-docs.md +2065 -588
  42. package/generated/docs/components-select-docs.md +489 -5
  43. package/generated/docs/components-skeleton-docs.md +399 -16
  44. package/generated/docs/components-skeleton-recipes-docs.md +7 -7
  45. package/generated/docs/components-skiplink-docs.md +548 -27
  46. package/generated/docs/components-slideout-docs.md +648 -150
  47. package/generated/docs/components-slider-docs.md +515 -33
  48. package/generated/docs/components-spinner-docs.md +393 -2
  49. package/generated/docs/components-stack-docs.md +732 -74
  50. package/generated/docs/components-table-ag-grid-docs.md +497 -127
  51. package/generated/docs/components-table-docs.md +1049 -27
  52. package/generated/docs/components-tabset-docs.md +454 -27
  53. package/generated/docs/components-tabset-tab-docs.md +464 -0
  54. package/generated/docs/components-tag-docs.md +452 -19
  55. package/generated/docs/components-text-docs.md +322 -131
  56. package/generated/docs/components-toaster-docs.md +463 -53
  57. package/generated/docs/components-toggle-docs.md +476 -20
  58. package/generated/docs/components-tooltip-docs.md +443 -7
  59. package/generated/docs/components-validationmessage-docs.md +933 -13
  60. package/generated/docs/extensions-editor-docs.md +906 -13
  61. package/generated/docs/extensions-editor-recipes-docs.md +51 -1
  62. package/generated/docs/foundations-accessibility-docs.md +1 -23
  63. package/generated/docs/foundations-grid-docs.md +74 -0
  64. package/generated/docs/foundations-introduction-docs.md +6 -4
  65. package/generated/docs/foundations-responsive-breakpoints-docs.md +193 -0
  66. package/generated/docs/foundations-tokens-colour-docs.md +564 -0
  67. package/generated/docs/foundations-tokens-elevation-docs.md +155 -0
  68. package/generated/docs/foundations-tokens-introduction-docs.md +190 -0
  69. package/generated/docs/foundations-tokens-radius-docs.md +71 -0
  70. package/generated/docs/foundations-tokens-spacing-docs.md +89 -0
  71. package/generated/docs/foundations-tokens-typography-docs.md +322 -0
  72. package/generated/docs/foundations-z-index-stacking-docs.md +31 -0
  73. package/generated/docs/guidelines.md +1537 -295
  74. package/generated/docs/introduction-docs.md +65 -21
  75. package/generated/docs/news-version-6-docs.md +93 -0
  76. package/generated/docs/patterns-form-docs.md +3902 -0
  77. package/generated/docs/patterns-form-recipes-docs.md +1370 -0
  78. package/generated/docs/patterns-introduction-docs.md +24 -0
  79. package/generated/docs/patterns-loading-docs.md +2940 -201
  80. package/generated/docs/resources-introduction-docs.md +38 -0
  81. package/generated/docs/resources-mcp-server-docs.md +27 -0
  82. package/generated/docs/styling-props-colour-docs.md +172 -0
  83. package/generated/docs/styling-props-elevation-docs.md +88 -0
  84. package/generated/docs/styling-props-radius-docs.md +86 -0
  85. package/generated/docs/styling-props-reference-docs.md +160 -0
  86. package/generated/docs/styling-props-screen-readers-docs.md +71 -0
  87. package/generated/docs/styling-props-sizing-docs.md +627 -0
  88. package/generated/docs/styling-props-spacing-docs.md +2282 -0
  89. package/generated/docs/styling-props-typography-docs.md +121 -0
  90. package/generated/docs/themes-available-themes-docs.md +29 -29
  91. package/generated/docs/themes-introduction-docs.md +1 -1
  92. package/package.json +3 -22
  93. package/generated/docs/components-button-recipes-docs.md +0 -76
  94. package/generated/docs/components-card-recipes-docs.md +0 -89
  95. package/generated/docs/components-combobox-docs.md +0 -1016
  96. package/generated/docs/components-form-docs.md +0 -2410
  97. package/generated/docs/components-form-recipes-docs.md +0 -886
  98. package/generated/docs/components-navbar-docs.md +0 -291
  99. package/generated/docs/components-navbar-recipes-docs.md +0 -413
  100. package/generated/docs/components-toaster-toast-docs.md +0 -157
  101. package/generated/docs/foundations-colours-docs.md +0 -257
  102. package/generated/docs/foundations-typography-docs.md +0 -191
  103. package/generated/docs/resources-changelog-docs.md +0 -6
  104. package/generated/docs/themes-tokens-docs.md +0 -1200
@@ -6,6 +6,14 @@ Overview
6
6
 
7
7
  Menu items are headings, buttons and dividers used inside an \`IressMenu\`
8
8
 
9
+ * * *
10
+
11
+ Updated
12
+
13
+ **Recently updated**
14
+
15
+ This component has been recently updated with new props. The props have been marked as beta. Please tell us if there are any issues.
16
+
9
17
  Menu item
10
18
 
11
19
  Hide code
@@ -18,6 +26,506 @@ Hide code
18
26
 
19
27
  Copy
20
28
 
29
+ [](#props)Props
30
+ ---------------
31
+
32
+ | Name | Description | Default | Control |
33
+ | --- | --- | --- | --- |
34
+ | append |
35
+ Section after menu item content.
36
+
37
+ ReactNode
38
+
39
+
40
+
41
+ | \- | Set object |
42
+ | bg |
43
+
44
+ **`bg`** sets the background color of an element using the `background-color` css property using the color tokens in the design system.
45
+
46
+ We recommend using the following token values for best background contrast:
47
+
48
+ * `colour.primary.fill` for primary backgrounds that need to stand out
49
+ * `colour.primary.surface` for primary backgrounds that need to be less prominent
50
+ * `colour.neutral.10` for the base background color, normally white in light mode or shade of grey in dark mode
51
+ * `colour.neutral.20` for a slightly darker background color, used in neutral state components
52
+ * `colour.system.danger.fill` for error backgrounds that need to stand out
53
+ * `colour.system.danger.surface` for error backgrounds that need to be less prominent
54
+ * `colour.system.success.fill` for success backgrounds that need to stand out
55
+ * `colour.system.success.surface` for success backgrounds that need to be less prominent
56
+ * `colour.system.warning.fill` for warning backgrounds that need to stand out
57
+ * `colour.system.warning.surface` for warning backgrounds that need to be less prominent
58
+ * `colour.system.info.fill` for info backgrounds that need to stand out
59
+ * `colour.system.info.surface` for info backgrounds that need to be less prominent
60
+
61
+ ResponsiveProp<ColorToken> | undefined
62
+
63
+ | \- | Set object |
64
+ | borderRadius |
65
+
66
+ The **`border-radius`** CSS property rounds the corners of an element's outer border edge using the radius tokens in the design system.
67
+
68
+ | Chrome | Firefox | Safari | Edge | IE |
69
+ | --- | --- | --- | --- | --- |
70
+ | **4** | **4** | **5** | **12** | **9** |
71
+ | 1 _\-x-_ | | 3 _\-x-_ | | |
72
+
73
+ ResponsiveProp<RadiusToken> | undefined
74
+
75
+ | \- | Set object |
76
+ | canToggle |
77
+
78
+ When true, the item can be toggled even in single-select mode.
79
+
80
+ booleanundefined
81
+
82
+
83
+
84
+ | \- | Set object |
85
+ | children |
86
+
87
+ The children to be rendered inside the menu item, describing the action.
88
+
89
+ ReactNode
90
+
91
+
92
+
93
+ | \- |
94
+
95
+ "Menu item"
96
+
97
+ |
98
+ | className |
99
+
100
+ The class name to be applied to the menu item.
101
+
102
+ stringundefined
103
+
104
+
105
+
106
+ | \- | Set object |
107
+ | color |
108
+
109
+ The **`color`** CSS property sets the foreground color value of an element's text and text decorations using the colour tokens from the design system. It also sets the `currentcolor` value. `currentcolor` may be used as an indirect value on _other_ properties and is the default for other color properties, such as `border-color`.
110
+
111
+ We recommend using the following token values for best color contrast:
112
+
113
+ * `colour.primary.onFill` used on top of `colour.primary.fill` for primary text that needs to stand out
114
+ * `colour.primary.text` used on top of `colour.primary.surface` or `colour.neutral.10` for primary text that needs to be less prominent
115
+ * `colour.neutral.70` used on top of `colour.neutral.10` or `colour.neutral.20` for muted text
116
+ * `colour.neutral.80` used on top of `colour.neutral.10` or `colour.neutral.20` for standard text
117
+ * `colour.system.danger.onFill` used on top of `colour.system.danger.fill` for error text that needs to stand out
118
+ * `colour.system.danger.text` used on top of `colour.system.danger.surface` for error text that needs to be less prominent
119
+ * `colour.system.success.onFill` used on top of `colour.system.success.fill` for success text that needs to stand out
120
+ * `colour.system.success.text` used on top of `colour.system.success.surface` for success text that needs to be less prominent
121
+ * `colour.system.warning.onFill` used on top of `colour.system.warning.fill` for warning text that needs to stand out
122
+ * `colour.system.warning.text` used on top of `colour.system.warning.surface` for warning text that needs to be less prominent
123
+ * `colour.system.info.onFill` used on top of `colour.system.info.fill` for informative text that needs to stand out
124
+ * `colour.system.info.text` used on top of `colour.system.info.surface` for informative text that needs to be less prominent
125
+
126
+ ResponsiveProp<ColorToken> | undefined
127
+
128
+ | \- | Set object |
129
+ | divider |
130
+
131
+ Adds a divider after any content. If you would like to add content before the menu item, use a `<hr />` instead.
132
+
133
+ booleanundefined
134
+
135
+
136
+
137
+ | \- | Set object |
138
+ | element |
139
+
140
+ Change the component that will be rendered as the menu item, used for third-party libraries that require a specific element type. By default, it will render a button or an anchor tag based on the `href` prop.
141
+
142
+ ElementTypeundefined
143
+
144
+
145
+
146
+ | \- | Set object |
147
+ | focusable |
148
+
149
+ The `focusable` prop is used to apply the focus elevation when focused. It can be set to `true` to apply focus styles on focus, or `'within'` to apply focus styles when the element or any of its children are focused.
150
+
151
+ "true""within"undefined
152
+
153
+
154
+
155
+ | \- | Set object |
156
+ | hide |
157
+
158
+ Set **`hide`** to hide an element completely using `display: none`. It can also be set to an object of breakpoints to hide the element at specific breakpoints.
159
+
160
+ Hide on all breakpoints: `hide: true` Hide on specific breakpoints: `hide: { xs: false, sm: true, md: false, lg: true, xl: false, xxl: true }`
161
+
162
+ Notes:
163
+
164
+ * If you need to hide an element but allow it to be visible to screen readers, use the `srOnly` prop instead.
165
+ * Consider if you can conditionally render the element instead of hiding it.
166
+
167
+ ResponsiveProp<boolean> | undefined
168
+
169
+ | \- | Set object |
170
+ | href |
171
+
172
+ Contains a URL or a URL fragment that the hyperlink points to. If this property is set and no `element` was set, an anchor tag will be rendered. Otherwise, a button will be rendered.
173
+
174
+ stringundefined
175
+
176
+
177
+
178
+ | \- | Set object |
179
+ | layerStyle |
180
+
181
+ Elevate a layer by using a **`layerStyle`**. These are connected to the elevation tokens in the design system. They can be combined to create hierarchy and structure.
182
+
183
+ * `elevation.raised`: Raised elevations sit slightly higher than other content. They are reserved for cards that can be moved, such as Jira issue cards and Trello cards. In special circumstances, they can be used for cards as a way to provide additional heirarchy or emphasis.
184
+ * `elevation.floating`: Floating is the highest elevation available. It is reserved for a UI that sits over another UI, such as modals, dialogs, dropdown menus, floating toolbars, and floating single-action buttons.
185
+ * `elevation.overflow`: Overflow is a shadow indicating content has scrolled outside a view. It can be used for vertical or horizontal scroll. An example of overflow shadows is the horizontal scroll in tables on a Confluence page.
186
+
187
+ ResponsiveProp<"elevation.raised" | "elevation.floating" | "elevation.overflow" | "elevation.focus" | "elevation.focusCompact"> | undefined
188
+
189
+ | \- | Set object |
190
+ | loading |
191
+
192
+ When true, button is in loading state. If provided a string, will be used as the loading text for screen readers.
193
+
194
+ stringbooleanundefined
195
+
196
+
197
+
198
+ | \- | Set object |
199
+ | m |
200
+
201
+ The **`m`** property is short for `margin`, and sets the margin area on all four sides of an element.
202
+
203
+ It uses the spacing tokens in the design system. You can also use the negative values to overlap elements or ignore padding based on the design requirements.
204
+
205
+ | Chrome | Firefox | Safari | Edge | IE |
206
+ | --- | --- | --- | --- | --- |
207
+ | **1** | **1** | **1** | **12** | **3** |
208
+
209
+ ResponsiveProp<SpacingToken | "auto"> | undefined
210
+
211
+ | \- | Set object |
212
+ | maxWidth |
213
+
214
+ The **`max-width`** CSS property sets the maximum width of an element. It prevents the used value of the `width` property from becoming larger than the value specified by `max-width`.
215
+
216
+ | Chrome | Firefox | Safari | Edge | IE |
217
+ | --- | --- | --- | --- | --- |
218
+ | **1** | **1** | **1** | **12** | **7** |
219
+
220
+ ResponsiveProp<"auto" | SizeToken | "screen" | "1/2" | "1/3" | "2/3" | "1/4" | "2/4" | "3/4" | "1/5" | "2/5" | "3/5" | "4/5" | "1/6" | "2/6" | "3/6" | "4/6" | "5/6" | "1/12" | "2/12" | ... 8 more ... | "11/12"> | undefined
221
+
222
+ | \- | Set object |
223
+ | mb |
224
+
225
+ The **`mb`** property is short for `margin-bottom` and sets the margin area on the bottom side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.
226
+
227
+ It uses the spacing tokens in the design system.
228
+
229
+ | Chrome | Firefox | Safari | Edge | IE |
230
+ | --- | --- | --- | --- | --- |
231
+ | **1** | **1** | **1** | **12** | **3** |
232
+
233
+ ResponsiveProp<SpacingToken | "auto"> | undefined
234
+
235
+ | \- | Set object |
236
+ | ml |
237
+
238
+ The **`ml`** property is short for `margin-left` and sets the margin area on the left side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.
239
+
240
+ It uses the spacing tokens in the design system.
241
+
242
+ | Chrome | Firefox | Safari | Edge | IE |
243
+ | --- | --- | --- | --- | --- |
244
+ | **1** | **1** | **1** | **12** | **3** |
245
+
246
+ ResponsiveProp<SpacingToken | "auto"> | undefined
247
+
248
+ | \- | Set object |
249
+ | mr |
250
+
251
+ The **`mr`** property is short for `margin-right` and sets the margin area on the right side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.
252
+
253
+ It uses the spacing tokens in the design system.
254
+
255
+ | Chrome | Firefox | Safari | Edge | IE |
256
+ | --- | --- | --- | --- | --- |
257
+ | **1** | **1** | **1** | **12** | **3** |
258
+
259
+ ResponsiveProp<SpacingToken | "auto"> | undefined
260
+
261
+ | \- | Set object |
262
+ | mt |
263
+
264
+ The **`mt`** property is short for `margin-top` and sets the margin area on the top side of an element. A positive value places it farther from its neighbors, while a negative value places it closer.
265
+
266
+ It uses the spacing tokens in the design system.
267
+
268
+ | Chrome | Firefox | Safari | Edge | IE |
269
+ | --- | --- | --- | --- | --- |
270
+ | **1** | **1** | **1** | **12** | **3** |
271
+
272
+ ResponsiveProp<SpacingToken | "auto"> | undefined
273
+
274
+ | \- | Set object |
275
+ | mx |
276
+
277
+ The **`mx`** property is short for `margin-inline`. It is a shorthand property that defines both the logical inline start and end margins of an element, which maps to physical margins depending on the element's writing mode, directionality, and text orientation.
278
+
279
+ It uses the spacing tokens in the design system. You can also use the negative values to overlap elements or ignore padding based on the design requirements.
280
+
281
+ | Chrome | Firefox | Safari | Edge | IE |
282
+ | --- | --- | --- | --- | --- |
283
+ | **1** | **1** | **1** | **12** | **3** |
284
+
285
+ ResponsiveProp<SpacingToken | "auto"> | undefined
286
+
287
+ | \- | Set object |
288
+ | my |
289
+
290
+ The **`my`** property is short for `margin-block`. It defines the logical block start and end margins of an element, which maps to physical margins depending on the element's writing mode, directionality, and text orientation.
291
+
292
+ It uses the spacing tokens in the design system. You can also use the negative values to overlap elements or ignore padding based on the design requirements.
293
+
294
+ | Chrome | Firefox | Safari | Edge | IE |
295
+ | --- | --- | --- | --- | --- |
296
+ | **1** | **1** | **1** | **12** | **3** |
297
+
298
+ ResponsiveProp<SpacingToken | "auto"> | undefined
299
+
300
+ | \- | Set object |
301
+ | noGutter |
302
+
303
+ The **`noGutter`** property is used to remove the bottom margin from the last child of a component. This is useful when you want to avoid extra spacing at the end of a layout.
304
+
305
+ booleanundefined
306
+
307
+
308
+
309
+ | \- | Set object |
310
+ | onBlur |
311
+
312
+ Emitted when the menu item is blurred.
313
+
314
+ FocusEventHandler<Exclude<Parameters<Exclude<ButtonRef<C, THref>, undefined>>\[0\], null>> | undefined
315
+
316
+ | \- | Set object |
317
+ | onClick |
318
+
319
+ Emitted when the menu item is clicked.
320
+
321
+ MouseEventHandler<Exclude<Parameters<Exclude<ButtonRef<C, THref>, undefined>>\[0\], null>> | undefined
322
+
323
+ | \- | Set object |
324
+ | onKeyDown |
325
+
326
+ Emitted when a key is pressed while focused on the menu item.
327
+
328
+ KeyboardEventHandler<Exclude<Parameters<Exclude<ButtonRef<C, THref>, undefined>>\[0\], null>> | undefined
329
+
330
+ | \- | Set object |
331
+ | p |
332
+
333
+ The **`p`** property is short for `padding`, and sets the padding area on all four sides of an element at once.
334
+
335
+ It uses the spacing tokens in the design system. Padding cannot use negative values, if you need to overlap elements or ignore padding, use the margin property instead.
336
+
337
+ | Chrome | Firefox | Safari | Edge | IE |
338
+ | --- | --- | --- | --- | --- |
339
+ | **1** | **1** | **1** | **12** | **3** |
340
+
341
+ ResponsiveProp<"xs" | "sm" | "md" | "lg" | "xl" | "none" | "spacing.000" | "spacing.050" | "spacing.100" | "spacing.150" | "spacing.200" | "spacing.250" | "spacing.300" | "spacing.350" | ... 9 more ... | "slider.tick"> | undefined
342
+
343
+ | \- | Set object |
344
+ | pb |
345
+
346
+ The **`pb`** property is short for `padding-bottom` and sets the padding area on the bottom side of an element.
347
+
348
+ It uses the spacing tokens in the design system. Padding cannot use negative values, if you need to overlap elements or ignore padding, use the margin property instead.
349
+
350
+ | Chrome | Firefox | Safari | Edge | IE |
351
+ | --- | --- | --- | --- | --- |
352
+ | **1** | **1** | **1** | **12** | **3** |
353
+
354
+ ResponsiveProp<"xs" | "sm" | "md" | "lg" | "xl" | "none" | "spacing.000" | "spacing.050" | "spacing.100" | "spacing.150" | "spacing.200" | "spacing.250" | "spacing.300" | "spacing.350" | ... 9 more ... | "slider.tick"> | undefined
355
+
356
+ | \- | Set object |
357
+ | pl |
358
+
359
+ The **`pl`** property is short for `padding-left` and sets the padding area on the left side of an element.
360
+
361
+ It uses the spacing tokens in the design system. Padding cannot use negative values, if you need to overlap elements or ignore padding, use the margin property instead.
362
+
363
+ | Chrome | Firefox | Safari | Edge | IE |
364
+ | --- | --- | --- | --- | --- |
365
+ | **1** | **1** | **1** | **12** | **3** |
366
+
367
+ ResponsiveProp<"xs" | "sm" | "md" | "lg" | "xl" | "none" | "spacing.000" | "spacing.050" | "spacing.100" | "spacing.150" | "spacing.200" | "spacing.250" | "spacing.300" | "spacing.350" | ... 9 more ... | "slider.tick"> | undefined
368
+
369
+ | \- | Set object |
370
+ | pr |
371
+
372
+ The **`pr`** property is short for `padding-right` and sets the padding area on the right side of an element.
373
+
374
+ It uses the spacing tokens in the design system. Padding cannot use negative values, if you need to overlap elements or ignore padding, use the margin property instead.
375
+
376
+ | Chrome | Firefox | Safari | Edge | IE |
377
+ | --- | --- | --- | --- | --- |
378
+ | **1** | **1** | **1** | **12** | **3** |
379
+
380
+ ResponsiveProp<"xs" | "sm" | "md" | "lg" | "xl" | "none" | "spacing.000" | "spacing.050" | "spacing.100" | "spacing.150" | "spacing.200" | "spacing.250" | "spacing.300" | "spacing.350" | ... 9 more ... | "slider.tick"> | undefined
381
+
382
+ | \- | Set object |
383
+ | prepend |
384
+
385
+ Section before menu item content.
386
+
387
+ ReactNode
388
+
389
+
390
+
391
+ | \- | Set object |
392
+ | pt |
393
+
394
+ The **`pt`** property is short for `padding-top` and sets the padding area on the top side of an element.
395
+
396
+ It uses the spacing tokens in the design system. Padding cannot use negative values, if you need to overlap elements or ignore padding, use the margin property instead.
397
+
398
+ | Chrome | Firefox | Safari | Edge | IE |
399
+ | --- | --- | --- | --- | --- |
400
+ | **1** | **1** | **1** | **12** | **3** |
401
+
402
+ ResponsiveProp<"xs" | "sm" | "md" | "lg" | "xl" | "none" | "spacing.000" | "spacing.050" | "spacing.100" | "spacing.150" | "spacing.200" | "spacing.250" | "spacing.300" | "spacing.350" | ... 9 more ... | "slider.tick"> | undefined
403
+
404
+ | \- | Set object |
405
+ | px |
406
+
407
+ The **`px`** property is short for `padding-inline`. It is a shorthand property that defines both the logical inline start and end paddings of an element, which maps to physical paddings depending on the element's writing mode, directionality, and text orientation.
408
+
409
+ It uses the spacing tokens in the design system. Padding cannot use negative values, if you need to overlap elements or ignore padding, use the margin property instead.
410
+
411
+ | Chrome | Firefox | Safari | Edge | IE |
412
+ | --- | --- | --- | --- | --- |
413
+ | **1** | **1** | **1** | **12** | **3** |
414
+
415
+ ResponsiveProp<"xs" | "sm" | "md" | "lg" | "xl" | "none" | "spacing.000" | "spacing.050" | "spacing.100" | "spacing.150" | "spacing.200" | "spacing.250" | "spacing.300" | "spacing.350" | ... 9 more ... | "slider.tick"> | undefined
416
+
417
+ | \- | Set object |
418
+ | py |
419
+
420
+ The **`py`** property is short for `padding-block`. It defines the logical block start and end paddings of an element, which maps to physical paddings depending on the element's writing mode, directionality, and text orientation.
421
+
422
+ It uses the spacing tokens in the design system. Padding cannot use negative values, if you need to overlap elements or ignore padding, use the margin property instead.
423
+
424
+ | Chrome | Firefox | Safari | Edge | IE |
425
+ | --- | --- | --- | --- | --- |
426
+ | **1** | **1** | **1** | **12** | **3** |
427
+
428
+ ResponsiveProp<"xs" | "sm" | "md" | "lg" | "xl" | "none" | "spacing.000" | "spacing.050" | "spacing.100" | "spacing.150" | "spacing.200" | "spacing.250" | "spacing.300" | "spacing.350" | ... 9 more ... | "slider.tick"> | undefined
429
+
430
+ | \- | Set object |
431
+ | ref |
432
+
433
+ any
434
+
435
+
436
+
437
+ | \- | Set object |
438
+ | rowGap |
439
+
440
+ The **`row-gap`** CSS property sets the size of the gap (gutter) between an element's rows.
441
+
442
+ Note: It only has an effect when used as a direct child of a layout component, such as IressRow, IressStack or IressInline.
443
+
444
+ | Chrome | Firefox | Safari | Edge | IE |
445
+ | --- | --- | --- | --- | --- |
446
+ | **47** | **52** | **10.1** | **16** | No |
447
+
448
+ ResponsiveProp<"xs" | "sm" | "md" | "lg" | "xl" | "none" | "spacing.000" | "spacing.050" | "spacing.100" | "spacing.150" | "spacing.200" | "spacing.250" | "spacing.300" | "spacing.350" | ... 9 more ... | "slider.tick"> | undefined
449
+
450
+ | \- | Set object |
451
+ | selected |
452
+
453
+ When true, shows the item in selected state.
454
+
455
+ booleanundefined
456
+
457
+
458
+
459
+ | \- | Set object |
460
+ | srOnly |
461
+
462
+ Set **`srOnly`** to hide an element visually but still make it accessible to screen readers. It can also be set to an object of breakpoints to hide the element at specific breakpoints.
463
+
464
+ Hide on all breakpoints: `srOnly: true` Hide on specific breakpoints: `srOnly: { xs: false, sm: true, md: false, lg: true, xl: false, xxl: true }`
465
+
466
+ ResponsiveProp<boolean> | undefined
467
+
468
+ | \- | Set object |
469
+ | stretch |
470
+
471
+ The **`stretch`** property is used to stretch an element to fill the available space in its parent container. It sets the `height` property to `100%` and `alignSelf` to `stretch`, allowing the element to expand and contract based on the size of its parent.
472
+
473
+ booleanundefined
474
+
475
+
476
+
477
+ | \- | Set object |
478
+ | textAlign |
479
+
480
+ The **`text-align`** CSS property sets the horizontal alignment of the inline-level content inside a block element or table-cell box.
481
+
482
+ | Chrome | Firefox | Safari | Edge | IE |
483
+ | --- | --- | --- | --- | --- |
484
+ | **1** | **1** | **1** | **12** | **3** |
485
+
486
+ ResponsiveProp<"center" | "left" | "right" | "inherit" | "justify"> | undefined
487
+
488
+ | \- | Set object |
489
+ | textStyle |
490
+
491
+ Select the typography to be used using the **`textStyle`** prop. These are connected to the typography tokens in the design system.'
492
+
493
+ * `typography.body.sm` - Use for small components such as badges and disclaimers, as well as compact variations of tables and lists.
494
+ * `typography.body.md` - The most commonly used body text size, used for most text content in the product and the default state of all components in the design system.
495
+ * `typography.body.lg` - Use for tag lines, subtitles, and other large text content in the product.
496
+ * `typography.heading.1` - Use for the main page title to establish a clear hierarchy. There is typically only one H1 per screen, emphasising the primary purpose or context of the page.
497
+ * `typography.heading.2` - Use for primary section headings within a page to organise content and guide the user through key areas. Also suitable for large components—such as modals—where space allows and where it pairs well with body.md or body.lg.
498
+ * `typography.heading.3` - Use for sub-sections under H2s to further structure content and maintain a clear visual hierarchy. Ideal for breaking down complex sections into manageable parts.
499
+ * `typography.heading.4` - Use for supporting headings within content blocks or small components where space is limited—such as table headers, cards, or side panels. Provides structure without overwhelming the layout.
500
+ * `typography.heading.5` - Use for minor labels or titles in compact UI elements, such as cards, sidebars, or inline labels. Best used to emphasise supplementary information without drawing too much attention. Works well with body.sm and is ideal for subtle content like fine print. Use sparingly to preserve typographic hierarchy.
501
+ * `typography.code` - Used to display code snippets in the product, such as in the API documentation.
502
+
503
+ ResponsiveProp<"typography.heading.1" | "typography.heading.2" | "typography.heading.3" | "typography.heading.4" | "typography.heading.5" | "typography.body.sm" | "typography.body.sm.regular" | ... 10 more ... | "typography.code"> | undefined
504
+
505
+ | \- | Set object |
506
+ | value |
507
+
508
+ To be used when menu type is listbox.
509
+
510
+ FormControlValueundefined
511
+
512
+
513
+
514
+ | \- | Set object |
515
+ | width |
516
+
517
+ The **`width`** CSS property sets an element's width. By default, it sets the width of the content area, but if `box-sizing` is set to `border-box`, it sets the width of the border area.
518
+
519
+ This prop only allows widths available throughout the component library. To use a custom width, you need to use the `style` prop, or add a custom class to the element and use CSS.
520
+
521
+ | Chrome | Firefox | Safari | Edge | IE |
522
+ | --- | --- | --- | --- | --- |
523
+ | **1** | **1** | **1** | **12** | **4** |
524
+
525
+ ResponsiveProp<"auto" | SizeToken | "screen" | "1/2" | "1/3" | "2/3" | "1/4" | "2/4" | "3/4" | "1/5" | "2/5" | "3/5" | "4/5" | "1/6" | "2/6" | "3/6" | "4/6" | "5/6" | "1/12" | "2/12" | ... 8 more ... | "11/12"> | undefined
526
+
527
+ | \- | Set object |
528
+
21
529
  [](#examples)Examples
22
530
  ---------------------
23
531
 
@@ -117,12 +625,47 @@ Hide code
117
625
 
118
626
  Copy
119
627
 
628
+ ### [](#element)Element
629
+
630
+ You can use the `element` prop to render a custom component inside the menu item. This is useful for rendering a component from a third-party library, such as `react-router-dom`.
631
+
632
+ [Iress](https://iress.com)[Google](https://google.com)
633
+
634
+ Hide code
635
+
636
+ \[data-radix-scroll-area-viewport\] { scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } \[data-radix-scroll-area-viewport\]::-webkit-scrollbar { display: none; } :where(\[data-radix-scroll-area-viewport\]) { display: flex; flex-direction: column; align-items: stretch; } :where(\[data-radix-scroll-area-content\]) { flex-grow: 1; }
637
+
638
+ import { IressMenu, IressMenuItem } from '@iress-oss/ids-components';
639
+ import { HTMLAttributes } from 'react';
640
+ /\*\*
641
+ \* This could be the \`Link\` component from \`react-router-dom\` or any other routing library. \*/
642
+ const Link \= ({
643
+ to,
644
+ ...restProps
645
+ }: Omit<HTMLAttributes<HTMLAnchorElement\>, 'href'\> & { to: string }) \=> (
646
+ <a {...restProps} href\={to} />
647
+ );
648
+ export const RoutingLinkMenu \= () \=> {
649
+ return (
650
+ <IressMenu role\="menu" fluid\>
651
+ <IressMenuItem element\={Link} to\="https://iress.com" selected\>
652
+ Iress </IressMenuItem\>
653
+ <IressMenuItem element\={Link} to\="https://google.com"\>
654
+ Google </IressMenuItem\>
655
+ </IressMenu\>
656
+ );
657
+ };
658
+
659
+ Copy
660
+
120
661
  ### [](#divider)Divider
121
662
 
122
663
  When `divider` is set to true, the menu item will render with a bottom border.
123
664
 
124
665
  Menu item with divider
125
666
 
667
+ * * *
668
+
126
669
  Hide code
127
670
 
128
671
  \[data-radix-scroll-area-viewport\] { scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } \[data-radix-scroll-area-viewport\]::-webkit-scrollbar { display: none; } :where(\[data-radix-scroll-area-viewport\]) { display: flex; flex-direction: column; align-items: stretch; } :where(\[data-radix-scroll-area-content\]) { flex-grow: 1; }
@@ -147,24 +690,25 @@ Copy
147
690
 
148
691
  ### [](#heading)Heading
149
692
 
150
- You can use the `IressMenuHeading` to render a heading within a menu. By default it renders as a `h2`, but you can change it by setting the `level` prop.
693
+ You can use the `IressMenuHeading` to render headings within a menu. This adds styling so the appropriate padding is applied.
151
694
 
152
- Menu heading
153
- ------------
695
+ Menu text
696
+ ---------
154
697
 
155
698
  Hide code
156
699
 
157
700
  \[data-radix-scroll-area-viewport\] { scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } \[data-radix-scroll-area-viewport\]::-webkit-scrollbar { display: none; } :where(\[data-radix-scroll-area-viewport\]) { display: flex; flex-direction: column; align-items: stretch; } :where(\[data-radix-scroll-area-content\]) { flex-grow: 1; }
158
701
 
159
- <IressMenuHeading\>
160
- Menu heading
161
- </IressMenuHeading\>
702
+ <IressMenu\>
703
+ <IressMenuHeading\>
704
+ Menu text </IressMenuHeading\>
705
+ </IressMenu\>
162
706
 
163
707
  Copy
164
708
 
165
709
  ### [](#text)Text
166
710
 
167
- You can use the `IressMenuText` to render text within a menu. This adds styling so the appropriate padding is applied.
711
+ You can use the `IressMenuText` to render other text within a menu. This adds styling so the appropriate padding is applied.
168
712
 
169
713
  Menu text
170
714
 
@@ -172,9 +716,10 @@ Hide code
172
716
 
173
717
  \[data-radix-scroll-area-viewport\] { scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } \[data-radix-scroll-area-viewport\]::-webkit-scrollbar { display: none; } :where(\[data-radix-scroll-area-viewport\]) { display: flex; flex-direction: column; align-items: stretch; } :where(\[data-radix-scroll-area-content\]) { flex-grow: 1; }
174
718
 
175
- <IressMenuText\>
176
- Menu text
177
- </IressMenuText\>
719
+ <IressMenu\>
720
+ <IressMenuText\>
721
+ Menu text </IressMenuText\>
722
+ </IressMenu\>
178
723
 
179
724
  Copy
180
725
 
@@ -188,6 +733,7 @@ On this page
188
733
  * [canToggle](#cantoggle)
189
734
  * [Prepend and append](#prepend-and-append)
190
735
  * [Multi-select menus](#multi-select-menus)
736
+ * [Element](#element)
191
737
  * [Divider](#divider)
192
738
  * [Heading](#heading)
193
739
  * [Text](#text)