@fundamental-styles/mcp 0.41.7-rc.8 → 0.41.7

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 (215) hide show
  1. package/data/AI_USAGE.md +425 -0
  2. package/data/CHANGELOG.md +53 -3
  3. package/data/component-catalog.json +62 -209
  4. package/data/components/README.md +281 -0
  5. package/data/components/action-bar.md +443 -0
  6. package/data/components/ai-busy-indicator.md +79 -0
  7. package/data/components/ai-loading-bar.md +66 -0
  8. package/data/components/avatar-btp.md +198 -0
  9. package/data/components/avatar-group.md +2660 -0
  10. package/data/components/avatar-product-switch.md +476 -0
  11. package/data/components/avatar.md +993 -0
  12. package/data/components/bar.md +574 -0
  13. package/data/components/border-radius.md +148 -0
  14. package/data/components/border.md +412 -0
  15. package/data/components/breadcrumb.md +546 -0
  16. package/data/components/button-2.md +440 -0
  17. package/data/components/button-action-sheet.md +292 -0
  18. package/data/components/button-ai.md +730 -0
  19. package/data/components/button-btp.md +223 -0
  20. package/data/components/button-button.md +233 -0
  21. package/data/components/button-counter.md +176 -0
  22. package/data/components/button-patterns.md +731 -0
  23. package/data/components/button-split.md +459 -0
  24. package/data/components/button.md +469 -0
  25. package/data/components/calendar.md +5784 -0
  26. package/data/components/card-card-media.md +707 -0
  27. package/data/components/card-card.md +2426 -0
  28. package/data/components/card-layouts.md +1201 -0
  29. package/data/components/card.md +2404 -0
  30. package/data/components/carousel.md +1506 -0
  31. package/data/components/code.md +139 -0
  32. package/data/components/component-reset.md +272 -0
  33. package/data/components/components-icons-businesssuiteinappsymbol-icons.md +85 -0
  34. package/data/components/components-icons-sap-icons.md +147 -0
  35. package/data/components/components-icons-tnt-icons.md +85 -0
  36. package/data/components/container-queries.md +221 -0
  37. package/data/components/container.md +227 -0
  38. package/data/components/dialog-docs-static-busy-indicator.md +165 -0
  39. package/data/components/dialog-docs-static-dialog.md +949 -0
  40. package/data/components/dialog-docs-static-patterns.md +147 -0
  41. package/data/components/dialog-docs-static-settings.md +528 -0
  42. package/data/components/dialog-docs-static.md +982 -0
  43. package/data/components/dialog.md +606 -0
  44. package/data/components/dynamic-page-dynamic-page.md +1914 -0
  45. package/data/components/dynamic-page.md +973 -0
  46. package/data/components/dynamic-side.md +197 -0
  47. package/data/components/elevation.md +110 -0
  48. package/data/components/feed-input.md +346 -0
  49. package/data/components/feed-list.md +580 -0
  50. package/data/components/fieldset-2.md +292 -0
  51. package/data/components/fieldset-forms.md +169 -0
  52. package/data/components/fieldset.md +381 -0
  53. package/data/components/flexible-column-layout.md +205 -0
  54. package/data/components/form-group.md +287 -0
  55. package/data/components/form-header.md +71 -0
  56. package/data/components/form-item-2.md +98 -0
  57. package/data/components/form-item-3.md +134 -0
  58. package/data/components/form-item-4.md +556 -0
  59. package/data/components/form-item-5.md +182 -0
  60. package/data/components/form-item-6.md +539 -0
  61. package/data/components/form-item-7.md +239 -0
  62. package/data/components/form-item-ai.md +158 -0
  63. package/data/components/form-item-file-uploader.md +445 -0
  64. package/data/components/form-item-forms.md +234 -0
  65. package/data/components/form-item-patterns.md +426 -0
  66. package/data/components/form-item.md +464 -0
  67. package/data/components/form-label-ai.md +126 -0
  68. package/data/components/form-label-layouts.md +306 -0
  69. package/data/components/form-label-patterns.md +1175 -0
  70. package/data/components/form-label-status-indicator.md +1083 -0
  71. package/data/components/form-label-step-input.md +620 -0
  72. package/data/components/form-label.md +2876 -0
  73. package/data/components/generic-tag.md +747 -0
  74. package/data/components/grid-list-grid-list.md +1185 -0
  75. package/data/components/grid-list.md +1449 -0
  76. package/data/components/heading.md +66 -0
  77. package/data/components/horizontal-navigation.md +568 -0
  78. package/data/components/icon-tab-bar-dev.md +190 -0
  79. package/data/components/icon-tab-bar.md +2620 -0
  80. package/data/components/icon.md +171 -0
  81. package/data/components/iconBusinessSuite.md +92 -0
  82. package/data/components/iconTnt.md +92 -0
  83. package/data/components/illustrated-message.md +439 -0
  84. package/data/components/info-label.md +348 -0
  85. package/data/components/input-group.md +2068 -0
  86. package/data/components/label.md +66 -0
  87. package/data/components/layout-grid.md +447 -0
  88. package/data/components/layout-panel.md +261 -0
  89. package/data/components/layouts-layout-grid.md +608 -0
  90. package/data/components/layouts-paddings.md +133 -0
  91. package/data/components/layouts-section.md +287 -0
  92. package/data/components/list-2.md +148 -0
  93. package/data/components/list-3.md +735 -0
  94. package/data/components/list-list.md +790 -0
  95. package/data/components/list-object-list.md +1225 -0
  96. package/data/components/list.md +1286 -0
  97. package/data/components/media-queries.md +168 -0
  98. package/data/components/menu.md +946 -0
  99. package/data/components/message-box-docs-static-ai.md +149 -0
  100. package/data/components/message-box-docs-static.md +527 -0
  101. package/data/components/message-page-upload-collection.md +678 -0
  102. package/data/components/message-page.md +256 -0
  103. package/data/components/message-strip.md +977 -0
  104. package/data/components/message-toast.md +119 -0
  105. package/data/components/micro-process-flow.md +991 -0
  106. package/data/components/navigation-menu.md +366 -0
  107. package/data/components/navigation-navigation.md +1245 -0
  108. package/data/components/navigation.md +2604 -0
  109. package/data/components/numeric-content.md +317 -0
  110. package/data/components/object-attribute.md +96 -0
  111. package/data/components/object-identifier.md +227 -0
  112. package/data/components/object-marker.md +202 -0
  113. package/data/components/object-number.md +327 -0
  114. package/data/components/object-status.md +1538 -0
  115. package/data/components/off-screen.md +87 -0
  116. package/data/components/overflow.md +97 -0
  117. package/data/components/padding.md +122 -0
  118. package/data/components/paddings.md +130 -0
  119. package/data/components/page.md +300 -0
  120. package/data/components/pagination.md +672 -0
  121. package/data/components/panel-layouts.md +345 -0
  122. package/data/components/panel.md +514 -0
  123. package/data/components/patterns-label.md +74 -0
  124. package/data/components/popover-2.md +906 -0
  125. package/data/components/popover-ai.md +466 -0
  126. package/data/components/popover-btp.md +886 -0
  127. package/data/components/popover-deprecated.md +308 -0
  128. package/data/components/popover-message-popover.md +683 -0
  129. package/data/components/popover-notification.md +1511 -0
  130. package/data/components/popover-patterns.md +1100 -0
  131. package/data/components/popover-popover.md +1862 -0
  132. package/data/components/popover-quick-view.md +385 -0
  133. package/data/components/popover-timepicker.md +1836 -0
  134. package/data/components/popover-user-menu.md +1303 -0
  135. package/data/components/popover.md +1938 -0
  136. package/data/components/progress-indicator.md +351 -0
  137. package/data/components/prompt-input-ai.md +226 -0
  138. package/data/components/prompt-input.md +226 -0
  139. package/data/components/rating-indicator.md +1469 -0
  140. package/data/components/resizable-card-layout.md +951 -0
  141. package/data/components/scrollbar.md +86 -0
  142. package/data/components/search-field.md +287 -0
  143. package/data/components/section.md +250 -0
  144. package/data/components/segmented-button.md +324 -0
  145. package/data/components/shellbar.md +2183 -0
  146. package/data/components/side-nav.md +1562 -0
  147. package/data/components/skeleton.md +243 -0
  148. package/data/components/slider.md +395 -0
  149. package/data/components/splitter.md +353 -0
  150. package/data/components/table.md +2749 -0
  151. package/data/components/tabs.md +658 -0
  152. package/data/components/text-text.md +380 -0
  153. package/data/components/text.md +253 -0
  154. package/data/components/tile.md +1132 -0
  155. package/data/components/time.md +818 -0
  156. package/data/components/title.md +153 -0
  157. package/data/components/titles.md +83 -0
  158. package/data/components/token.md +311 -0
  159. package/data/components/tokenizer.md +398 -0
  160. package/data/components/tool-header.md +1352 -0
  161. package/data/components/tool-layout.md +199 -0
  162. package/data/components/toolbar-ai.md +174 -0
  163. package/data/components/toolbar-btp.md +526 -0
  164. package/data/components/toolbar-title-bar.md +473 -0
  165. package/data/components/toolbar.md +432 -0
  166. package/data/components/tree.md +1031 -0
  167. package/data/components/typography.md +435 -0
  168. package/data/components/variant-management.md +360 -0
  169. package/data/components/vertical-nav.md +589 -0
  170. package/data/components/wizard.md +1429 -0
  171. package/data/examples/Components/dialog/device-specifications.example.html +39 -30
  172. package/data/examples/Components/shellbar/optional-items.example.html +210 -157
  173. package/data/examples/Components/shellbar/overflow-toolbar.example.html +202 -177
  174. package/data/examples/Components/shellbar/responsive-paddings.example.html +217 -146
  175. package/data/examples/Components/shellbar/responsiveness.example.html +825 -613
  176. package/data/examples/Components/user-menu/default.example.html +241 -83
  177. package/data/schemas/badge.schema.json +1 -1
  178. package/data/schemas/button-split.schema.json +1 -1
  179. package/data/schemas/component-frontmatter.schema.json +123 -0
  180. package/data/schemas/component-markdown.schema.json +81 -0
  181. package/data/schemas/counter.schema.json +1 -1
  182. package/data/schemas/dynamic-page.schema.json +1 -1
  183. package/data/schemas/dynamic-side-content.schema.json +1 -1
  184. package/data/schemas/facet.schema.json +1 -1
  185. package/data/schemas/fieldset.schema.json +1 -1
  186. package/data/schemas/flexible-column-layout.schema.json +1 -1
  187. package/data/schemas/form-group.schema.json +3 -2
  188. package/data/schemas/form-header.schema.json +1 -1
  189. package/data/schemas/form-label.schema.json +1 -0
  190. package/data/schemas/form-message.schema.json +1 -1
  191. package/data/schemas/grid-list.schema.json +1 -1
  192. package/data/schemas/input-group.schema.json +1 -1
  193. package/data/schemas/layout-panel.schema.json +1 -1
  194. package/data/schemas/page.schema.json +1 -1
  195. package/data/schemas/quick-view.schema.json +2 -1
  196. package/data/schemas/section.schema.json +1 -1
  197. package/data/schemas/side-nav.schema.json +1 -1
  198. package/data/schemas/splitter.schema.json +1 -1
  199. package/data/schemas/tabs.schema.json +1 -1
  200. package/data/schemas/tile.schema.json +1 -1
  201. package/data/schemas/tool-layout.schema.json +1 -1
  202. package/data/schemas/user-menu.schema.json +10 -0
  203. package/data/schemas/wizard.schema.json +1 -1
  204. package/package.json +1 -1
  205. package/src/data/load-catalog.d.ts +2 -0
  206. package/src/data/load-catalog.js +5 -1
  207. package/src/data/load-catalog.js.map +1 -1
  208. package/src/data/load-markdown-docs.d.ts +44 -0
  209. package/src/data/load-markdown-docs.js +179 -0
  210. package/src/data/load-markdown-docs.js.map +1 -0
  211. package/src/data/markdown-cache.d.ts +60 -0
  212. package/src/data/markdown-cache.js +218 -0
  213. package/src/data/markdown-cache.js.map +1 -0
  214. package/src/server.js +72 -1
  215. package/src/server.js.map +1 -1
@@ -0,0 +1,381 @@
1
+ ---
2
+ component: fd-fieldset
3
+ title: Components/Forms/Radio
4
+ category: Components
5
+ selector: fd-fieldset
6
+ cssFile: fieldset.css
7
+ sourcePath: packages/styles/stories/Components/Forms/radio/radio.stories.js
8
+ tags: []
9
+ dependencies: []
10
+ relatedComponents: []
11
+ stability: stable
12
+ generatedAt: 2026-06-09T18:29:01.451Z
13
+ ---
14
+
15
+ # Components/Forms/Radio
16
+
17
+ Radio buttons provide users with a set of mutually exclusive options. They allow a user to select only one option from two or more choices. Each option is represented by a radio button. Consequently, radio buttons only work in groups.
18
+
19
+ <b>Use the radio button if:</b>
20
+
21
+ - You need to help users choose quickly between at least two clearly different choices.
22
+
23
+ <b>Do not use the radio button if:</b>
24
+
25
+ - You need to offer the user the option of multiple selection. In this case, use checkboxes instead because radio buttons are for single-selection contexts only.
26
+ - You need to present more than 8 options. Use a dropdown box or list view.
27
+ In special cases, there are only two mutually exclusive options. Combine them into a single checkbox or switch. For example, use a checkbox for “I agree” (for example, to terms and conditions) instead of two radio buttons for “I agree” and “I don't agree”.
28
+ - The options are numbers with fixed steps. Use a slider control.
29
+
30
+ ## Installation
31
+
32
+ ```bash
33
+ npm install fundamental-styles
34
+ ```
35
+
36
+ ```html
37
+ <!-- Include theme -->
38
+ <link href="node_modules/fundamental-styles/dist/theming/sap_horizon.css" rel="stylesheet">
39
+
40
+ <!-- Include component CSS -->
41
+ <link href="node_modules/fundamental-styles/dist/fieldset.css" rel="stylesheet">
42
+
43
+ ```
44
+
45
+ ## Basic Usage
46
+
47
+ ```html
48
+ <fieldset class="fd-fieldset" id="radio1">
49
+ <legend class="fd-fieldset__legend">Radio Buttons</legend>
50
+ <div class="fd-form__group">
51
+ <div class="fd-form-item">
52
+ <input type="radio" class="fd-radio" id="pDidh761" name="radio1" checked>
53
+ <label class="fd-radio__label" for="pDidh761">
54
+ <span class="fd-radio__text">Option 1</span>
55
+ </label>
56
+ </div>
57
+ <div class="fd-form-item">
58
+ <input type="radio" class="fd-radio" id="pDidh7612" name="radio1">
59
+ <label class="fd-radio__label" for="pDidh7612">
60
+ <span class="fd-radio__text">Option 2</span>
61
+ </label>
62
+ </div>
63
+ <div class="fd-form-item">
64
+ <input type="radio" class="fd-radio" id="pDidh764" name="radio1" disabled aria-disabled="true">
65
+ <label class="fd-radio__label" for="pDidh764">
66
+ <span class="fd-radio__text">Option 3 (disabled)</span>
67
+ </label>
68
+ </div>
69
+ </div>
70
+ </fieldset>
71
+ ```
72
+
73
+ ## States
74
+
75
+ | Class | Description |
76
+ |-------|-------------|
77
+ | `is-error` | Error state |
78
+ | `is-hover` | Hover state |
79
+ | `is-information` | Information state |
80
+ | `is-readonly` | Readonly state |
81
+ | `is-success` | Success state |
82
+ | `is-warning` | Warning state |
83
+
84
+ ## BEM Elements
85
+
86
+ This component uses the following BEM elements:
87
+
88
+ - `fd-fieldset__legend`
89
+
90
+ ## Examples
91
+
92
+ ### Primary
93
+
94
+ ```html
95
+ <fieldset class="fd-fieldset" id="radio1">
96
+ <legend class="fd-fieldset__legend">Radio Buttons</legend>
97
+ <div class="fd-form__group">
98
+ <div class="fd-form-item">
99
+ <input type="radio" class="fd-radio" id="pDidh761" name="radio1" checked>
100
+ <label class="fd-radio__label" for="pDidh761">
101
+ <span class="fd-radio__text">Option 1</span>
102
+ </label>
103
+ </div>
104
+ <div class="fd-form-item">
105
+ <input type="radio" class="fd-radio" id="pDidh7612" name="radio1">
106
+ <label class="fd-radio__label" for="pDidh7612">
107
+ <span class="fd-radio__text">Option 2</span>
108
+ </label>
109
+ </div>
110
+ <div class="fd-form-item">
111
+ <input type="radio" class="fd-radio" id="pDidh764" name="radio1" disabled aria-disabled="true">
112
+ <label class="fd-radio__label" for="pDidh764">
113
+ <span class="fd-radio__text">Option 3 (disabled)</span>
114
+ </label>
115
+ </div>
116
+ </div>
117
+ </fieldset>
118
+ ```
119
+
120
+ ### Inline
121
+
122
+ Try to align radio buttons vertically instead of horizontally, especially for long labels. Horizontal alignment is harder to read and localize. Consider horizontal alignment in cases of one-word labels, such as in the background color settings example above.
123
+
124
+ In forms, always align radio buttons vertically instead of horizontally as the length of the labels may vary for different languages.
125
+
126
+ Do not put two radio button groups right next to each other as it is difficult to determine which buttons belong to which group. Use group labels and padding to separate them.
127
+
128
+ ```html
129
+ <fieldset class="fd-fieldset" id="radio4">
130
+ <legend class="fd-fieldset__legend">Inline Radio buttons</legend>
131
+ <div class="fd-form-group fd-form-group--inline">
132
+ <div class="fd-form-item">
133
+ <input type="radio" class="fd-radio" id="pDidh767" name="radio4" checked>
134
+ <label class="fd-radio__label" for="pDidh767">
135
+ <span class="fd-radio__text">Option 1</span>
136
+ </label>
137
+ </div>
138
+ <div class="fd-form-item">
139
+ <input type="radio" class="fd-radio" id="pDidh7618" name="radio4" >
140
+ <label class="fd-radio__label" for="pDidh7618">
141
+ <span class="fd-radio__text">Option 2</span>
142
+ </label>
143
+ </div>
144
+ <div class="fd-form-item">
145
+ <input type="radio" class="fd-radio" id="pDidh7619" name="radio4">
146
+ <label class="fd-radio__label" for="pDidh7619">
147
+ <span class="fd-radio__text">Option 3</span>
148
+ </label>
149
+ </div>
150
+ </div>
151
+ </fieldset>
152
+ ```
153
+
154
+ ### InteractionStates
155
+
156
+ A radio button can have different states that affect its appearance value states, such as “error” or “warning”, which are indicated using semantic colors
157
+
158
+ ```html
159
+ <fieldset class="fd-fieldset" id="radio5a">
160
+ <legend class="fd-fieldset__legend">Default Interaction States</legend>
161
+ <div class="fd-form-group">
162
+ <div class="fd-form-item">
163
+ <input type="radio" class="fd-radio" id="iSpDidh761" name="radio5a">
164
+ <label class="fd-radio__label" for="iSpDidh761">
165
+ <span class="fd-radio__text">Default Radio Button</span>
166
+ </label>
167
+ </div>
168
+ <div class="fd-form-item">
169
+ <input type="radio" class="fd-radio" id="iSpDidh761cc" name="radio5a" checked>
170
+ <label class="fd-radio__label" for="iSpDidh761cc">
171
+ <span class="fd-radio__text">Default Checked Radio Button</span>
172
+ </label>
173
+ </div>
174
+ <div class="fd-form-item">
175
+ <input type="radio" class="fd-radio" id="iSpDidh761hov" name="radio5a">
176
+ <label class="fd-radio__label is-hover" for="iSpDidh761hov">
177
+ <span class="fd-radio__text">Default Hover Radio Button</span>
178
+ </label>
179
+ </div>
180
+ </div>
181
+ </fieldset>
182
+ <fieldset class="fd-fieldset" id="radio5b">
183
+ <legend class="fd-fieldset__legend">Success Interaction States</legend>
184
+ <div class="fd-form-group">
185
+ <div class="fd-form-item">
186
+ <input type="radio" class="fd-radio is-success" id="iSpDidh7612" name="radio5b">
187
+ <label class="fd-radio__label" for="iSpDidh7612">
188
+ <span class="fd-radio__text">Success Radio Button</span>
189
+ </label>
190
+ </div>
191
+ <div class="fd-form-item">
192
+ <input type="radio" class="fd-radio is-success" id="iSpDidh7612cc" name="radio5b" checked>
193
+ <label class="fd-radio__label" for="iSpDidh7612cc">
194
+ <span class="fd-radio__text">Success Checked Radio Button</span>
195
+ </label>
196
+ </div>
197
+ <div class="fd-form-item">
198
+ <input type="radio" class="fd-radio is-success" id="iSpDidh7612hov" name="radio5b">
199
+ <label class="fd-radio__label is-hover" for="iSpDidh7612hov">
200
+ <span class="fd-radio__text">Success Hover Radio Button</span>
201
+ </label>
202
+ </div>
203
+ </div>
204
+ </fieldset>
205
+ <fieldset class="fd-fieldset" id="radio5c">
206
+ <legend class="fd-fieldset__legend">Error Interaction States</legend>
207
+ <div class="fd-form-group">
208
+ <div class="fd-form-item">
209
+ <input type="radio" class="fd-radio is-error" id="iSpDidh7613" name="radio5c">
210
+ <label class="fd-radio__label" for="iSpDidh7613">
211
+ <span class="fd-radio__text">Error Radio Button</span>
212
+ </label>
213
+ </div>
214
+ <div class="fd-form-item">
215
+ <input type="radio" class="fd-radio is-error" id="iSpDidh7613cc" name="radio5c" checked>
216
+ <label class="fd-radio__label" for="iSpDidh7613cc">
217
+ <span class="fd-radio__text">Error Checked Radio Button</span>
218
+ </label>
219
+ </div>
220
+ <div class="fd-form-item">
221
+ <input type="radio" class="fd-radio is-error" id="iSpDidh7613hov" name="radio5c">
222
+ <label class="fd-radio__label is-hover" for="iSpDidh7613hov">
223
+ <span class="fd-radio__text">Error Hover Radio Button</span>
224
+ </label>
225
+ </div>
226
+ </div>
227
+ </fieldset>
228
+ <fieldset class="fd-fieldset" id="radio5d">
229
+ <legend class="fd-fieldset__legend">Warning Interaction States</legend>
230
+ <div class="fd-form-group">
231
+ <div class="fd-form-item">
232
+ <input type="radio" class="fd-radio is-warning" id="iSpDidh7614" name="radio5d">
233
+ <label class="fd-radio__label" for="iSpDidh7614">
234
+ <span class="fd-radio__text">Warning Radio Button</span>
235
+ </label>
236
+ </div>
237
+ <div class="fd-form-item">
238
+ <input type="radio" class="fd-radio is-warning" id="iSpDidh7614cc" name="radio5d" checked>
239
+ <label class="fd-radio__label" for="iSpDidh7614cc">
240
+ <span class="fd-radio__text">Warning Checked Radio Button</span>
241
+ </label>
242
+ </div>
243
+ <div class="fd-form-item">
244
+ <input type="radio" class="fd-radio is-warning" id="iSpDidh7614hov" name="radio5d">
245
+ <label class="fd-radio__label is-hover" for="iSpDidh7614hov">
246
+ <span class="fd-radio__text">Warning Hover Radio Button</span>
247
+ </label>
248
+ </div>
249
+ </div>
250
+ </fieldset>
251
+ <fieldset class="fd-fieldset" id="radio5e">
252
+ <legend class="fd-fieldset__legend">Information Interaction States</legend>
253
+ <div class="fd-form-group">
254
+ <div class="fd-form-item">
255
+ <input type="radio" class="fd-radio is-information" id="iSpDidh7615" name="radio5e">
256
+ <label class="fd-radio__label" for="iSpDidh7615">
257
+ <span class="fd-radio__text">Information Radio Button</span>
258
+ </label>
259
+ </div>
260
+ <div class="fd-form-item">
261
+ <input type="radio" class="fd-radio is-information" id="iSpDidh7615cc" name="radio5e" checked>
262
+ <label class="fd-radio__label" for="iSpDidh7615cc">
263
+ <span class="fd-radio__text">Information Checked Radio Button</span>
264
+ </label>
265
+ </div>
266
+ <div class="fd-form-item">
267
+ <input type="radio" class="fd-radio is-information" id="iSpDidh7615hov" name="radio5e">
268
+ <label class="fd-radio__label is-hover" for="iSpDidh7615hov">
269
+ <span class="fd-radio__text">Information Hover Radio Button</span>
270
+ </label>
271
+ </div>
272
+ </div>
273
+ </fieldset>
274
+ <fieldset class="fd-fieldset" id="radio5f">
275
+ <legend class="fd-fieldset__legend">Read-Only Interaction States</legend>
276
+ <div class="fd-form-group">
277
+ <div class="fd-form-item">
278
+ <input type="radio" class="fd-radio is-readonly" id="iSpDidh76erfg15" name="radio5f" aria-readonly="true" aria-description="This radio button is read-only and cannot be changed." onclick="return false;">
279
+ <label class="fd-radio__label" for="iSpDidh76erfg15">
280
+ <span class="fd-radio__text">ReadOnly Radio Button</span>
281
+ </label>
282
+ </div>
283
+ <div class="fd-form-item">
284
+ <input type="radio" class="fd-radio is-readonly" id="iSpDidh76erfg15cc" name="radio5f" aria-readonly="true" aria-description="This radio button is read-only and cannot be changed." onclick="return false;" checked>
285
+ <label class="fd-radio__label" for="iSpDidh76erfg15cc">
286
+ <span class="fd-radio__text">ReadOnly Checked Radio Button</span>
287
+ </label>
288
+ </div>
289
+ <div class="fd-form-item">
290
+ <input type="radio" class="fd-radio is-readonly" id="iSpDidh76erfg15hov" name="radio5f" aria-readonly="true" aria-description="This radio button is read-only and cannot be changed." onclick="return false;">
291
+ <label class="fd-radio__label is-hover" for="iSpDidh76erfg15hov">
292
+ <span class="fd-radio__text">ReadOnly Hover Radio Button</span>
293
+ </label>
294
+ </div>
295
+ </div>
296
+ </fieldset>
297
+ <fieldset class="fd-fieldset" id="radio5g">
298
+ <legend class="fd-fieldset__legend">Disabled States</legend>
299
+ <div class="fd-form-group">
300
+ <div class="fd-form-item">
301
+ <input type="radio" class="fd-radio" id="iSpDidh7611" name="radio5g" disabled aria-disabled="true">
302
+ <label class="fd-radio__label" for="iSpDidh7611">
303
+ <span class="fd-radio__text">Disabled Radio Button</span>
304
+ </label>
305
+ </div>
306
+ <div class="fd-form-item">
307
+ <input type="radio" class="fd-radio is-success" id="iSpDidh76121" name="radio5g" disabled aria-disabled="true">
308
+ <label class="fd-radio__label" for="iSpDidh76121">
309
+ <span class="fd-radio__text">Success Radio Button (disabled)</span>
310
+ </label>
311
+ </div>
312
+ <div class="fd-form-item">
313
+ <input type="radio" class="fd-radio is-error" id="iSpDidh76131" name="radio5g" disabled aria-disabled="true">
314
+ <label class="fd-radio__label" for="iSpDidh76131">
315
+ <span class="fd-radio__text">Error Radio Button (disabled)</span>
316
+ </label>
317
+ </div>
318
+ <div class="fd-form-item">
319
+ <input type="radio" class="fd-radio is-warning" id="iSpDidh76141" name="radio5g" disabled aria-disabled="true">
320
+ <label class="fd-radio__label" for="iSpDidh76141">
321
+ <span class="fd-radio__text">Warning Radio Button (disabled)</span>
322
+ </label>
323
+ </div>
324
+ <div class="fd-form-item">
325
+ <input type="radio" class="fd-radio is-information" id="iSpDidh76151" name="radio5g" disabled aria-disabled="true">
326
+ <label class="fd-radio__label" for="iSpDidh76151">
327
+ <span class="fd-radio__text">Information Radio Button (disabled)</span>
328
+ </label>
329
+ </div>
330
+ </div>
331
+ </fieldset>
332
+ ```
333
+
334
+ ### TextTruncation
335
+
336
+ By default, long radio label truncates with ellipsis. For this behaviour no modifier class is needed. For radio label that wraps on a new line to show the entire content, use \
337
+
338
+ ```html
339
+ <fieldset class="fd-fieldset" id="radio1Truncation">
340
+ <legend class="fd-fieldset__legend">Radio Buttons</legend>
341
+ <div class="fd-form__group">
342
+ <div class="fd-form-item">
343
+ <input type="radio" class="fd-radio" id="pDidh761tt" name="radio1Truncation" checked>
344
+ <label class="fd-radio__label" for="pDidh761tt">
345
+ <span class="fd-radio__text">
346
+ Field label ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
347
+ </span>
348
+ </label>
349
+ </div>
350
+ <div class="fd-form-item">
351
+ <input type="radio" class="fd-radio" id="pDidh7612tt" name="radio2Truncation" checked>
352
+ <label class="fd-radio__label fd-radio__label--wrap" for="pDidh7612tt">
353
+ <span class="fd-radio__text">
354
+ Field label ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
355
+ </span>
356
+ </label>
357
+ </div>
358
+ <div class="fd-form-item">
359
+ <input type="radio" class="fd-radio" id="pDidh7612ttop" name="radio3Truncation" checked>
360
+ <label class="fd-radio__label fd-radio__label--wrap-top-aligned" for="pDidh7612ttop">
361
+ <span class="fd-radio__text">
362
+ Field label ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
363
+ </span>
364
+ </label>
365
+ </div>
366
+ </div>
367
+ </fieldset>
368
+ ```
369
+
370
+ ## Accessibility
371
+
372
+ - Use semantic HTML elements where appropriate
373
+ - Include proper ARIA attributes for interactive elements
374
+ - Ensure keyboard navigation support
375
+ - Provide adequate color contrast
376
+
377
+ ## Source
378
+
379
+ This documentation was automatically generated from: `packages/styles/stories/Components/Forms/radio/radio.stories.js`
380
+
381
+ For the latest updates and interactive examples, see [Storybook](https://sap.github.io/fundamental-styles/).
@@ -0,0 +1,205 @@
1
+ ---
2
+ component: fd-flexible-column-layout
3
+ title: Layouts/Flexible Column
4
+ category: Layouts
5
+ selector: fd-flexible-column-layout
6
+ cssFile: flexible-column-layout.css
7
+ sourcePath: packages/styles/stories/Layouts/flexible-column-layout/flexible-column-layout.stories.js
8
+ tags: []
9
+ dependencies: ["button","flexible-column-layout","icon"]
10
+ relatedComponents: ["button","flexible-column-layout","icon"]
11
+ stability: stable
12
+ generatedAt: 2026-06-09T18:29:01.790Z
13
+ ---
14
+
15
+ # Layouts/Flexible Column
16
+
17
+ The flexible column layout is a layout control that displays multiple floorplans on a single page.
18
+ This allows faster and more fluid navigation between multiple floorplans than the usual page-by-page navigation.
19
+ The flexible column layout offers different layouts with up to three columns.
20
+ Users can expand the column they want to focus on, switch between different layouts, and view the rightmost column in full screen mode.
21
+
22
+ ### Background Designs
23
+ - \
24
+
25
+ ## Dependencies
26
+
27
+ This component depends on the following CSS files:
28
+
29
+ - `button.css`
30
+ - `flexible-column-layout.css`
31
+ - `icon.css`
32
+
33
+ ## Installation
34
+
35
+ ```bash
36
+ npm install fundamental-styles
37
+ ```
38
+
39
+ ```html
40
+ <!-- Include theme -->
41
+ <link href="node_modules/fundamental-styles/dist/theming/sap_horizon.css" rel="stylesheet">
42
+
43
+ <!-- Include component CSS -->
44
+ <link href="node_modules/fundamental-styles/dist/flexible-column-layout.css" rel="stylesheet">
45
+
46
+ <!-- Include dependencies -->
47
+ <link href="node_modules/fundamental-styles/dist/button.css" rel="stylesheet">
48
+ <link href="node_modules/fundamental-styles/dist/flexible-column-layout.css" rel="stylesheet">
49
+ <link href="node_modules/fundamental-styles/dist/icon.css" rel="stylesheet">
50
+ ```
51
+
52
+ ## Basic Usage
53
+
54
+ ```html
55
+ <div class="fd-flexible-column-layout">
56
+
57
+ <div class="fd-flexible-column-layout__separator">
58
+ <button class="fd-button fd-button--transparent fd-flexible-column-layout__button"
59
+ aria-label="Expand">
60
+ <i class="sap-icon--slim-arrow-right" role="presentation"></i>
61
+ </button>
62
+ </div>
63
+
64
+ <div class="fd-flexible-column-layout__separator">
65
+ <button class="fd-button fd-button--transparent fd-flexible-column-layout__button"
66
+ aria-label="Expand">
67
+ <i class="sap-icon--slim-arrow-left" role="presentation"></i>
68
+ </button>
69
+ </div>
70
+
71
+ </div>
72
+ ```
73
+
74
+ ## Modifiers
75
+
76
+ | Class | Description |
77
+ |-------|-------------|
78
+ | `fd-flexible-column-layout--translucent` | Flexible Column Layout with translucent separators
79
+ - Max width of the device: \ |
80
+ | `fd-flexible-column-layout--transparent` | Flexible Column with transparent separators
81
+ - Width of the device: Max: \ |
82
+
83
+ ## BEM Elements
84
+
85
+ This component uses the following BEM elements:
86
+
87
+ - `fd-flexible-column-layout__button`
88
+ - `fd-flexible-column-layout__column`
89
+ - `fd-flexible-column-layout__column--hidden`
90
+ - `fd-flexible-column-layout__separator`
91
+
92
+ ## Related Components
93
+
94
+ This component works with or depends on:
95
+
96
+ - `button`
97
+ - `flexible-column-layout`
98
+ - `icon`
99
+
100
+ ## Design Tokens
101
+
102
+ Key CSS variables used by this component:
103
+
104
+ - `--fdFlexibleColumnLayoutToggleImage`
105
+ - `--fdFlexibleColumnLayout_Background_Solid`
106
+ - `--fdFlexibleColumnLayout_Background_Translucent`
107
+ - `--fdFlexibleColumnLayout_Background_Transparent`
108
+ - `--fdFlexibleColumnLayout_Border`
109
+ - `--fdFlexibleColumnLayout_Toggle_Image_Color`
110
+ - `--hidden`
111
+ - `--translucent`
112
+ - `--transparent`
113
+
114
+ ## Examples
115
+
116
+ ### ThreeColumnsLayout
117
+
118
+ - Minimum width of the device: \
119
+
120
+ ```html
121
+ <div class="fd-flexible-column-layout">
122
+
123
+ <div class="fd-flexible-column-layout__separator">
124
+ <button class="fd-button fd-button--transparent fd-flexible-column-layout__button"
125
+ aria-label="Expand">
126
+ <i class="sap-icon--slim-arrow-right" role="presentation"></i>
127
+ </button>
128
+ </div>
129
+
130
+ <div class="fd-flexible-column-layout__separator">
131
+ <button class="fd-button fd-button--transparent fd-flexible-column-layout__button"
132
+ aria-label="Expand">
133
+ <i class="sap-icon--slim-arrow-left" role="presentation"></i>
134
+ </button>
135
+ </div>
136
+
137
+ </div>
138
+ ```
139
+
140
+ ### TwoColumnsLayout
141
+
142
+ Flexible Column with transparent separators
143
+ - Width of the device: Max: \
144
+
145
+ ```html
146
+ <div class="fd-flexible-column-layout fd-flexible-column-layout--transparent">
147
+ <div class="fd-flexible-column-layout__column">
148
+
149
+ <div class="fd-flexible-column-layout__separator">
150
+ <button class="fd-button fd-button--transparent fd-flexible-column-layout__button"
151
+ aria-label="Expand">
152
+ <i class="sap-icon--slim-arrow-right" role="presentation"></i>
153
+ </button>
154
+ </div>
155
+
156
+ <div class="fd-flexible-column-layout__separator">
157
+ <button class="fd-button fd-button--transparent fd-flexible-column-layout__button"
158
+ aria-label="Expand">
159
+ <i class="sap-icon--slim-arrow-left" role="presentation"></i>
160
+ </button>
161
+ </div>
162
+
163
+ </div>
164
+ </div>
165
+ ```
166
+
167
+ ### OneColumnsLayout
168
+
169
+ Flexible Column Layout with translucent separators
170
+ - Max width of the device: \
171
+
172
+ ```html
173
+ <div class="fd-flexible-column-layout fd-flexible-column-layout--translucent">
174
+ <div class="fd-flexible-column-layout__column fd-flexible-column-layout__column--hidden">
175
+
176
+ <div class="fd-flexible-column-layout__separator">
177
+ <button class="fd-button fd-button--transparent fd-flexible-column-layout__button"
178
+ aria-label="Expand">
179
+ <i class="sap-icon--slim-arrow-right" role="presentation"></i>
180
+ </button>
181
+ </div>
182
+
183
+ <div class="fd-flexible-column-layout__separator">
184
+ <button class="fd-button fd-button--transparent fd-flexible-column-layout__button"
185
+ aria-label="Expand">
186
+ <i class="sap-icon--slim-arrow-left" role="presentation"></i>
187
+ </button>
188
+ </div>
189
+
190
+ </div>
191
+ </div>
192
+ ```
193
+
194
+ ## Accessibility
195
+
196
+ - Use semantic HTML elements where appropriate
197
+ - Include proper ARIA attributes for interactive elements
198
+ - Ensure keyboard navigation support
199
+ - Provide adequate color contrast
200
+
201
+ ## Source
202
+
203
+ This documentation was automatically generated from: `packages/styles/stories/Layouts/flexible-column-layout/flexible-column-layout.stories.js`
204
+
205
+ For the latest updates and interactive examples, see [Storybook](https://sap.github.io/fundamental-styles/).