@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,197 @@
1
+ ---
2
+ component: fd-dynamic-side
3
+ title: Layouts/Dynamic Side Content
4
+ category: Layouts
5
+ selector: fd-dynamic-side
6
+ cssFile: dynamic-side.css
7
+ sourcePath: packages/styles/stories/Layouts/dynamic-side-content/dynamic-side-content.stories.js
8
+ tags: []
9
+ dependencies: ["dynamic-side-content"]
10
+ relatedComponents: ["dynamic-side-content"]
11
+ stability: stable
12
+ generatedAt: 2026-06-09T18:29:01.779Z
13
+ ---
14
+
15
+ # Layouts/Dynamic Side Content
16
+
17
+ Dynamic side content is a layout control that displays supplemental content in a separate area to support the users' understanding of the main content displayed.
18
+
19
+ **The dynamic side content consists of two elements:**
20
+
21
+ * \
22
+
23
+ ## Dependencies
24
+
25
+ This component depends on the following CSS files:
26
+
27
+ - `dynamic-side-content.css`
28
+
29
+ ## Installation
30
+
31
+ ```bash
32
+ npm install fundamental-styles
33
+ ```
34
+
35
+ ```html
36
+ <!-- Include theme -->
37
+ <link href="node_modules/fundamental-styles/dist/theming/sap_horizon.css" rel="stylesheet">
38
+
39
+ <!-- Include component CSS -->
40
+ <link href="node_modules/fundamental-styles/dist/dynamic-side.css" rel="stylesheet">
41
+
42
+ <!-- Include dependencies -->
43
+ <link href="node_modules/fundamental-styles/dist/dynamic-side-content.css" rel="stylesheet">
44
+ ```
45
+
46
+ ## Basic Usage
47
+
48
+ ```html
49
+ <div class="fd-dynamic-side">
50
+ <div class="fd-dynamic-side__side">
51
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-6">Side</div>
52
+ </div>
53
+ <div class="fd-dynamic-side__main">
54
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-9">Main</div>
55
+ </div>
56
+ </div>
57
+ ```
58
+
59
+ ## Modifiers
60
+
61
+ | Class | Description |
62
+ |-------|-------------|
63
+ | `fd-dynamic-side--below` | To display side content below the main content area, keep `fd-dynamic-side__side` as the last child element and add the `fd-dynamic-side--below` modifier class. |
64
+ | `fd-dynamic-side--equal-split` | The equal split mode provides users with a 50:50 view of the main content and side content, which enables users to show more data i.e |
65
+ | `fd-dynamic-side--md` | Style variant |
66
+ | `fd-dynamic-side--sm` | To display the dynamic side content for specific screen sizes, use the respective modifier classes:
67
+
68
+ | Size &nbsp;&nbsp; | Modifier class &nbsp;&nbsp; |
69
+ | :--- |:--- |
70
+ | Small &nbsp;&nbsp; | \ |
71
+ | `fd-dynamic-side--xl` | Style variant |
72
+
73
+ ## BEM Elements
74
+
75
+ This component uses the following BEM elements:
76
+
77
+ - `fd-dynamic-side__main`
78
+ - `fd-dynamic-side__side`
79
+
80
+ ## Related Components
81
+
82
+ This component works with or depends on:
83
+
84
+ - `dynamic-side-content`
85
+
86
+ ## Examples
87
+
88
+ ### Left
89
+
90
+ To display side content from the left, put `fd-dynamic-side__side` as the first child element of `fd-dynamic-side`.
91
+
92
+ ```html
93
+ <div class="fd-dynamic-side">
94
+ <div class="fd-dynamic-side__side">
95
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-6">Side</div>
96
+ </div>
97
+ <div class="fd-dynamic-side__main">
98
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-9">Main</div>
99
+ </div>
100
+ </div>
101
+ ```
102
+
103
+ ### Right
104
+
105
+ To display side content from the right, put `fd-dynamic-side__side` as the second child element of `fd-dynamic-side`.
106
+
107
+ ```html
108
+ <div class="fd-dynamic-side">
109
+ <div class="fd-dynamic-side__main">
110
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-9">Main</div>
111
+ </div>
112
+ <div class="fd-dynamic-side__side">
113
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-6">Side</div>
114
+ </div>
115
+ </div>
116
+ ```
117
+
118
+ ### Below
119
+
120
+ To display side content below the main content area, keep `fd-dynamic-side__side` as the last child element and add the `fd-dynamic-side--below` modifier class.
121
+
122
+ ```html
123
+ <div class="fd-dynamic-side fd-dynamic-side--below">
124
+ <div class="fd-dynamic-side__main">
125
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-9">Main</div>
126
+ </div>
127
+ <div class="fd-dynamic-side__side">
128
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-6">Side</div>
129
+ </div>
130
+ </div>
131
+ ```
132
+
133
+ ### Equal split
134
+
135
+ The equal split mode provides users with a 50:50 view of the main content and side content, which enables users to show more data i.e. for comparison purposes. To enable equal split mode, add the `fd-dynamic-side--equal-split` modifier class to the container.
136
+
137
+ ```html
138
+ <div class="fd-dynamic-side fd-dynamic-side--equal-split">
139
+ <div class="fd-dynamic-side__main">
140
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-9">Main</div>
141
+ </div>
142
+ <div class="fd-dynamic-side__side">
143
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-6">Side</div>
144
+ </div>
145
+ </div>
146
+ ```
147
+
148
+ ### Responsiveness
149
+
150
+ To display the dynamic side content for specific screen sizes, use the respective modifier classes:
151
+
152
+ | Size &nbsp;&nbsp; | Modifier class &nbsp;&nbsp; |
153
+ | :--- |:--- |
154
+ | Small &nbsp;&nbsp; | \
155
+
156
+ ```html
157
+ <h4>On extra large screens, the main content area occupies 75% of the width.</h4>
158
+ <div class="fd-dynamic-side fd-dynamic-side--xl">
159
+ <div class="fd-dynamic-side__side">
160
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-6">Side</div>
161
+ </div>
162
+ <div class="fd-dynamic-side__main">
163
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-9">Main</div>
164
+ </div>
165
+ </div>
166
+ <h4>On medium-sized screens, the main content area occupies 66.66% of the width.</h4>
167
+ <div class="fd-dynamic-side fd-dynamic-side--md">
168
+ <div class="fd-dynamic-side__side">
169
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-6">Side</div>
170
+ </div>
171
+ <div class="fd-dynamic-side__main">
172
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-9">Main</div>
173
+ </div>
174
+ </div>
175
+ <h4>On small screens, the main content area occupies 100% of the width and the side content is hidden.</h4>
176
+ <div class="fd-dynamic-side fd-dynamic-side--sm">
177
+ <div class="fd-dynamic-side__side">
178
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-6">Side</div>
179
+ </div>
180
+ <div class="fd-dynamic-side__main">
181
+ <div class="docs-layout-grid-bg docs-layout-grid-bg--color-9">Main</div>
182
+ </div>
183
+ </div>
184
+ ```
185
+
186
+ ## Accessibility
187
+
188
+ - Use semantic HTML elements where appropriate
189
+ - Include proper ARIA attributes for interactive elements
190
+ - Ensure keyboard navigation support
191
+ - Provide adequate color contrast
192
+
193
+ ## Source
194
+
195
+ This documentation was automatically generated from: `packages/styles/stories/Layouts/dynamic-side-content/dynamic-side-content.stories.js`
196
+
197
+ For the latest updates and interactive examples, see [Storybook](https://sap.github.io/fundamental-styles/).
@@ -0,0 +1,110 @@
1
+ ---
2
+ component: elevation
3
+ title: Elevation
4
+ category: elevation
5
+ selector:
6
+ cssFile:
7
+ sourcePath: packages/common-css/stories/elevation/elevation.stories.js
8
+ tags: []
9
+ dependencies: []
10
+ relatedComponents: []
11
+ stability: stable
12
+ generatedAt: 2026-06-09T18:29:01.667Z
13
+ ---
14
+
15
+ # Elevation
16
+
17
+ The z-index property specifies the stack order of an element. In order for z-index to work the elements need to be positioned: relative (default), absolute, fixed, sticky.
18
+ <br><br>
19
+ <b>CSS Class: </b>
20
+ <code>.sap-elevation-<i style="color: red;">index</i></code><br><br>
21
+ <b>SCSS Mixin: </b>
22
+ <code>@include sap-elevation(<i style="color: red;">index</i>, <i style="color: red;">position</i>);</code><br><br>
23
+ where:
24
+ <ul>
25
+ <li><code style="color: red;">index</code>: is an integer from 0 to 20</li>
26
+ <li><code style="color: red;">position</code>: (optional) is one of the following : relative, absolute, fixed, sticky. If the property is omitted, the default value (relative) is applied.</li>
27
+ </ul>
28
+
29
+ ## Basic Usage
30
+
31
+ ```html
32
+ <style>
33
+ .sap-docs-container {
34
+ display: flex;
35
+ flex-wrap: wrap;
36
+ gap: 1rem;
37
+ }
38
+
39
+ .sap-docs-container div {
40
+ background: #69ADF8;
41
+ width: 4rem;
42
+ min-height: 4rem;
43
+ display: flex;
44
+ justify-content: center;
45
+ align-items: center;
46
+ border-radius: 0.5rem;
47
+ color: #fff;
48
+ }
49
+ </style>
50
+ <div class="sap-docs-container">
51
+ <div class="sap-elevation-0">0</div>
52
+ <div class="sap-elevation-1">1</div>
53
+ <div class="sap-elevation-2">2</div>
54
+ <div class="sap-elevation-3">3</div>
55
+ <div class="sap-elevation-4">4</div>
56
+ <div class="sap-elevation-5">5</div>
57
+ <div class="sap-elevation-auto">Auto</div>
58
+ <div class="sap-elevation-initial">Initial</div>
59
+ <div class="sap-elevation-inherit">Inherit</div>
60
+ </div>
61
+ ```
62
+
63
+ ## Examples
64
+
65
+ ### Elevation
66
+
67
+ ```html
68
+ <style>
69
+ .sap-docs-container {
70
+ display: flex;
71
+ flex-wrap: wrap;
72
+ gap: 1rem;
73
+ }
74
+
75
+ .sap-docs-container div {
76
+ background: #69ADF8;
77
+ width: 4rem;
78
+ min-height: 4rem;
79
+ display: flex;
80
+ justify-content: center;
81
+ align-items: center;
82
+ border-radius: 0.5rem;
83
+ color: #fff;
84
+ }
85
+ </style>
86
+ <div class="sap-docs-container">
87
+ <div class="sap-elevation-0">0</div>
88
+ <div class="sap-elevation-1">1</div>
89
+ <div class="sap-elevation-2">2</div>
90
+ <div class="sap-elevation-3">3</div>
91
+ <div class="sap-elevation-4">4</div>
92
+ <div class="sap-elevation-5">5</div>
93
+ <div class="sap-elevation-auto">Auto</div>
94
+ <div class="sap-elevation-initial">Initial</div>
95
+ <div class="sap-elevation-inherit">Inherit</div>
96
+ </div>
97
+ ```
98
+
99
+ ## Accessibility
100
+
101
+ - Use semantic HTML elements where appropriate
102
+ - Include proper ARIA attributes for interactive elements
103
+ - Ensure keyboard navigation support
104
+ - Provide adequate color contrast
105
+
106
+ ## Source
107
+
108
+ This documentation was automatically generated from: `packages/common-css/stories/elevation/elevation.stories.js`
109
+
110
+ For the latest updates and interactive examples, see [Storybook](https://sap.github.io/fundamental-styles/).
@@ -0,0 +1,346 @@
1
+ ---
2
+ component: fd-feed-input
3
+ title: Components/Feed Input
4
+ category: Components
5
+ selector: fd-feed-input
6
+ cssFile: feed-input.css
7
+ sourcePath: packages/styles/stories/Components/feed-input/feed-input.stories.js
8
+ tags: []
9
+ dependencies: ["avatar","button","feed-input","icon","textarea"]
10
+ relatedComponents: ["avatar","button","feed-input","icon","textarea"]
11
+ stability: stable
12
+ generatedAt: 2026-06-09T18:29:01.497Z
13
+ ---
14
+
15
+ # Components/Feed Input
16
+
17
+ The feed input is specifically designed for users to type their own notes or comments and post them to a corresponding feed.
18
+
19
+ ##Usage
20
+ **Use the feed input if:**
21
+
22
+ - A user needs to input small amounts of text without formatting.
23
+ - You expect multiple instances, such as notes or feed entries.
24
+
25
+ **Do not use the feed input if:**
26
+
27
+ - The user needs to format the text (rich text editor).
28
+ - You need only a single text box instance. In this case, use the **Textarea** component (for multiple lines) or the text control (for a single line).
29
+
30
+ ## Usage Guidelines
31
+
32
+ **Use the feed input if:**
33
+
34
+ - A user needs to input small amounts of text without formatting.
35
+ - You expect multiple instances, such as notes or feed entries.
36
+
37
+ ## When Not To Use
38
+
39
+ - The user needs to format the text (rich text editor).
40
+ - You need only a single text box instance. In this case, use the **Textarea** component (for multiple lines) or the text control (for a single line).
41
+
42
+ ## Dependencies
43
+
44
+ This component depends on the following CSS files:
45
+
46
+ - `avatar.css`
47
+ - `button.css`
48
+ - `feed-input.css`
49
+ - `icon.css`
50
+ - `textarea.css`
51
+
52
+ ## Installation
53
+
54
+ ```bash
55
+ npm install fundamental-styles
56
+ ```
57
+
58
+ ```html
59
+ <!-- Include theme -->
60
+ <link href="node_modules/fundamental-styles/dist/theming/sap_horizon.css" rel="stylesheet">
61
+
62
+ <!-- Include component CSS -->
63
+ <link href="node_modules/fundamental-styles/dist/feed-input.css" rel="stylesheet">
64
+
65
+ <!-- Include dependencies -->
66
+ <link href="node_modules/fundamental-styles/dist/avatar.css" rel="stylesheet">
67
+ <link href="node_modules/fundamental-styles/dist/button.css" rel="stylesheet">
68
+ <link href="node_modules/fundamental-styles/dist/feed-input.css" rel="stylesheet">
69
+ <link href="node_modules/fundamental-styles/dist/icon.css" rel="stylesheet">
70
+ <link href="node_modules/fundamental-styles/dist/textarea.css" rel="stylesheet">
71
+ ```
72
+
73
+ ## Basic Usage
74
+
75
+ ```html
76
+ <div class="fd-feed-input"
77
+ role="group"
78
+ aria-label="Feed input empty example">
79
+ <div class="fd-feed-input__container">
80
+
81
+ <textarea class="fd-textarea fd-feed-input__textarea"
82
+ placeholder="Post something here"
83
+ required
84
+ rows="1"></textarea>
85
+ <button class="fd-button fd-feed-input__submit-button"
86
+ disabled
87
+ role="button"
88
+ aria-disabled="true"
89
+ aria-label="Submit"
90
+ title="Submit">
91
+ <i role="presentation" aria-hidden="true" class="sap-icon--paper-plane"></i>
92
+ </button>
93
+ ```
94
+
95
+ ## States
96
+
97
+ | Class | Description |
98
+ |-------|-------------|
99
+ | `is-disabled` | Disabled state |
100
+
101
+ ## BEM Elements
102
+
103
+ This component uses the following BEM elements:
104
+
105
+ - `fd-feed-input__container`
106
+ - `fd-feed-input__submit-button`
107
+ - `fd-feed-input__textarea`
108
+ - `fd-feed-input__thumb`
109
+
110
+ ## Related Components
111
+
112
+ This component works with or depends on:
113
+
114
+ - `avatar`
115
+ - `button`
116
+ - `feed-input`
117
+ - `icon`
118
+ - `textarea`
119
+
120
+ ## Design Tokens
121
+
122
+ Key CSS variables used by this component:
123
+
124
+ - `--fdButton_Badge_Margin_Inline_Start`
125
+ - `--fdButton_Badge_Size_Attention`
126
+ - `--fdButton_Clickable_Height`
127
+ - `--fdButton_Compact_Height`
128
+ - `--fdButton_Min_Width`
129
+ - `--fdButton_Padding_X`
130
+ - `--fdFeed_Input_Placeholder_Font_Style`
131
+ - `--sapElement_Height`
132
+ - `--sapGroup_ContentBackground`
133
+ - `--sapTextColor`
134
+
135
+ ## Examples
136
+
137
+ ### Default
138
+
139
+ The default feed input displays an empty text field with an inactive submit button.
140
+
141
+ ```html
142
+ <div class="fd-feed-input"
143
+ role="group"
144
+ aria-label="Feed input empty example">
145
+ <div class="fd-feed-input__container">
146
+
147
+ <textarea class="fd-textarea fd-feed-input__textarea"
148
+ placeholder="Post something here"
149
+ required
150
+ rows="1"></textarea>
151
+ <button class="fd-button fd-feed-input__submit-button"
152
+ disabled
153
+ role="button"
154
+ aria-disabled="true"
155
+ aria-label="Submit"
156
+ title="Submit">
157
+ <i role="presentation" aria-hidden="true" class="sap-icon--paper-plane"></i>
158
+ </button>
159
+ ```
160
+
161
+ ### With text
162
+
163
+ The input with text displays some text, activating the submit button.
164
+
165
+ ```html
166
+ <div class="fd-feed-input"
167
+ role="group"
168
+ aria-label="Feed input with one row text">
169
+ <div class="fd-feed-input__container">
170
+
171
+ <textarea class="fd-textarea fd-feed-input__textarea"
172
+ placeholder="Post something here"
173
+ required
174
+ rows="1">When there is text, the submit button becomes active.
175
+ </textarea>
176
+ <button
177
+ class="fd-button fd-feed-input__submit-button"
178
+ aria-label="Submit"
179
+ aria-disabled="false"
180
+ title="Submit"
181
+ role="button"
182
+ >
183
+ <i role="presentation" aria-hidden="true" class="sap-icon--feeder-arrow"></i>
184
+ </button>
185
+ ```
186
+
187
+ ### Disabled
188
+
189
+ The disabled feed input displays a text field and submit button that users cannot interact with.
190
+
191
+ ```html
192
+ <div class="fd-feed-input is-disabled"
193
+ role="group"
194
+ aria-label="Feed input disabled example">
195
+ <div class="fd-feed-input__container">
196
+
197
+ <textarea class="fd-textarea fd-feed-input__textarea"
198
+ placeholder="Post something here"
199
+ required
200
+ rows="1"
201
+ aria-disabled="true"
202
+ disabled>Disabled</textarea>
203
+ <button class="fd-button fd-feed-input__submit-button"
204
+ disabled
205
+ role="button"
206
+ aria-label="Submit"
207
+ aria-disabled="true"
208
+ title="Submit">
209
+ <i role="presentation" aria-hidden="true" class="sap-icon--feeder-arrow"></i>
210
+ </button>
211
+ ```
212
+
213
+ ### No thumbnail
214
+
215
+ Although the default feed input has a thumbnail, it is possible to remove it. Without a thumbnail, the input area size increases automatically.
216
+
217
+ ```html
218
+ <div class="fd-feed-input"
219
+ role="group"
220
+ aria-label="Feed input empty example">
221
+ <div class="fd-feed-input__container">
222
+ <textarea class="fd-textarea fd-feed-input__textarea"
223
+ placeholder="Post something here"
224
+ required
225
+ rows="1">Without user image
226
+ </textarea>
227
+ <button class="fd-button fd-feed-input__submit-button"
228
+ role="button"
229
+ aria-label="Submit"
230
+ title="Submit">
231
+ <i role="presentation" aria-hidden="true" class="sap-icon--feeder-arrow"></i>
232
+ </button>
233
+ </div>
234
+ ```
235
+
236
+ ### Generic thumbnail
237
+
238
+ A generic thumbnail will be displayed if no image has been chosen by the user.
239
+
240
+ ```html
241
+ <div class="fd-feed-input"
242
+ role="group"
243
+ aria-label="Feed input empty example">
244
+ <div class="fd-feed-input__container">
245
+ <div class="fd-avatar fd-avatar--s fd-avatar--placeholder fd-feed-input__thumb"
246
+ role="img"
247
+ aria-label="John Doe">
248
+ <i class="fd-avatar__icon sap-icon--person-placeholder" role="presentation" aria-hidden="true"></i>
249
+ </div>
250
+ <textarea class="fd-textarea fd-feed-input__textarea"
251
+ placeholder="Post something here"
252
+ required
253
+ rows="1">With generic user image
254
+ </textarea>
255
+ <button
256
+ class="fd-button fd-feed-input__submit-button"
257
+ role="button"
258
+ aria-label="Submit"
259
+ title="Submit">
260
+ <i role="presentation" aria-hidden="true" class="sap-icon--feeder-arrow"></i>
261
+ </button>
262
+ ```
263
+
264
+ ### Multiline
265
+
266
+ The multiline feed input displays a text field with multiple lines of text, which expands until a maximum height is reached.
267
+
268
+ ```html
269
+ <div class="fd-feed-input"
270
+ role="group"
271
+ aria-label="Feed input height growth">
272
+ <div class="fd-feed-input__container">
273
+
274
+ <textarea class="fd-textarea fd-feed-input__textarea"
275
+ placeholder="Post something here"
276
+ required
277
+ rows="4">With every line
278
+ "textarea" grows upward
279
+ until it reaches
280
+ the max height
281
+ </textarea>
282
+ <button class="fd-button fd-feed-input__submit-button"
283
+ role="button"
284
+ aria-disabled="false"
285
+ aria-label="Submit"
286
+ title="Submit">
287
+ <i role="presentation" aria-hidden="true" class="sap-icon--feeder-arrow"></i>
288
+ </button>
289
+ ```
290
+
291
+ ### Max height
292
+
293
+ The max height feed input displays a text field with the maximum amount of text lines it can contain. Once the text field has reached the maximum height, a scrollbar appears to access the overflowing text.
294
+
295
+ ```html
296
+ <div class="fd-feed-input"
297
+ role="group"
298
+ aria-label="Feed input over max height">
299
+ <div class="fd-feed-input__container">
300
+
301
+ <textarea
302
+ class="fd-textarea fd-feed-input__textarea"
303
+ placeholder="Post something here"
304
+ required
305
+ rows="18">X
306
+ X
307
+ X
308
+ X
309
+ X
310
+ X
311
+ X
312
+ X
313
+ X
314
+ X
315
+ X
316
+ X
317
+ X
318
+ X
319
+ X
320
+ X
321
+ X
322
+ X
323
+ X
324
+ X
325
+ </textarea>
326
+ <button class="fd-button fd-feed-input__submit-button"
327
+ role="button"
328
+ aria-disabled="false"
329
+ aria-label="Submit"
330
+ title="Submit">
331
+ <i role="presentation" aria-hidden="true" class="sap-icon--feeder-arrow"></i>
332
+ </button>
333
+ ```
334
+
335
+ ## Accessibility
336
+
337
+ - Use semantic HTML elements where appropriate
338
+ - Include proper ARIA attributes for interactive elements
339
+ - Ensure keyboard navigation support
340
+ - Provide adequate color contrast
341
+
342
+ ## Source
343
+
344
+ This documentation was automatically generated from: `packages/styles/stories/Components/feed-input/feed-input.stories.js`
345
+
346
+ For the latest updates and interactive examples, see [Storybook](https://sap.github.io/fundamental-styles/).