@rio-cloud/uikit-mcp 1.1.3 → 1.1.4

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 (190) hide show
  1. package/dist/doc-metadata.json +97 -97
  2. package/dist/docs/components/accentBar.md +2 -34
  3. package/dist/docs/components/activity.md +2 -13
  4. package/dist/docs/components/animatedNumber.md +3 -16
  5. package/dist/docs/components/animatedTextReveal.md +7 -54
  6. package/dist/docs/components/animations.md +42 -34
  7. package/dist/docs/components/appHeader.md +2 -73
  8. package/dist/docs/components/appLayout.md +44 -572
  9. package/dist/docs/components/appNavigationBar.md +2 -54
  10. package/dist/docs/components/areaCharts.md +38 -38
  11. package/dist/docs/components/aspectRatioPlaceholder.md +2 -11
  12. package/dist/docs/components/assetTree.md +417 -991
  13. package/dist/docs/components/autosuggests.md +4 -4
  14. package/dist/docs/components/avatar.md +2 -24
  15. package/dist/docs/components/banner.md +2 -2
  16. package/dist/docs/components/barCharts.md +187 -187
  17. package/dist/docs/components/barList.md +10 -44
  18. package/dist/docs/components/basicMap.md +1 -1
  19. package/dist/docs/components/bottomSheet.md +3 -100
  20. package/dist/docs/components/button.md +16 -71
  21. package/dist/docs/components/buttonToolbar.md +2 -9
  22. package/dist/docs/components/calendarStripe.md +46 -72
  23. package/dist/docs/components/card.md +2 -10
  24. package/dist/docs/components/carousel.md +1 -1
  25. package/dist/docs/components/chartColors.md +1 -1
  26. package/dist/docs/components/chartsGettingStarted.md +1 -1
  27. package/dist/docs/components/chat.md +2 -2
  28. package/dist/docs/components/checkbox.md +11 -111
  29. package/dist/docs/components/clearableInput.md +7 -111
  30. package/dist/docs/components/collapse.md +3 -29
  31. package/dist/docs/components/composedCharts.md +31 -31
  32. package/dist/docs/components/contentLoader.md +104 -122
  33. package/dist/docs/components/dataTabs.md +24 -194
  34. package/dist/docs/components/datepickers.md +32 -74
  35. package/dist/docs/components/dialogs.md +15 -262
  36. package/dist/docs/components/divider.md +2 -14
  37. package/dist/docs/components/dropdowns.md +4387 -4511
  38. package/dist/docs/components/editableContent.md +2 -186
  39. package/dist/docs/components/expander.md +23 -70
  40. package/dist/docs/components/fade.md +6 -41
  41. package/dist/docs/components/fadeExpander.md +2 -11
  42. package/dist/docs/components/fadeUp.md +3 -23
  43. package/dist/docs/components/feedback.md +2 -42
  44. package/dist/docs/components/filePickers.md +2 -44
  45. package/dist/docs/components/formLabel.md +2 -18
  46. package/dist/docs/components/groupedItemList.md +2 -53
  47. package/dist/docs/components/iconList.md +4 -4
  48. package/dist/docs/components/imagePreloader.md +2 -6
  49. package/dist/docs/components/labeledElement.md +2 -11
  50. package/dist/docs/components/licensePlate.md +2 -10
  51. package/dist/docs/components/lineCharts.md +58 -58
  52. package/dist/docs/components/listMenu.md +2 -50
  53. package/dist/docs/components/loadMore.md +2 -28
  54. package/dist/docs/components/mainNavigation.md +1 -1
  55. package/dist/docs/components/mapCircle.md +1 -1
  56. package/dist/docs/components/mapCluster.md +1 -1
  57. package/dist/docs/components/mapContext.md +1 -1
  58. package/dist/docs/components/mapDraggableMarker.md +1 -1
  59. package/dist/docs/components/mapGettingStarted.md +1 -1
  60. package/dist/docs/components/mapInfoBubble.md +1 -1
  61. package/dist/docs/components/mapLayerGroup.md +1 -1
  62. package/dist/docs/components/mapMarker.md +339 -345
  63. package/dist/docs/components/mapPolygon.md +16 -20
  64. package/dist/docs/components/mapRoute.md +14 -20
  65. package/dist/docs/components/mapRouteGenerator.md +1 -1
  66. package/dist/docs/components/mapSettings.md +263 -274
  67. package/dist/docs/components/mapUtils.md +3 -5
  68. package/dist/docs/components/multiselects.md +1 -1
  69. package/dist/docs/components/noData.md +2 -22
  70. package/dist/docs/components/notifications.md +1 -1
  71. package/dist/docs/components/numbercontrol.md +2 -48
  72. package/dist/docs/components/onboarding.md +2 -46
  73. package/dist/docs/components/page.md +2 -32
  74. package/dist/docs/components/pager.md +2 -14
  75. package/dist/docs/components/pieCharts.md +124 -124
  76. package/dist/docs/components/popover.md +2 -56
  77. package/dist/docs/components/position.md +2 -10
  78. package/dist/docs/components/radialBarCharts.md +506 -506
  79. package/dist/docs/components/radiobutton.md +81 -191
  80. package/dist/docs/components/releaseNotes.md +1 -12
  81. package/dist/docs/components/resizer.md +2 -14
  82. package/dist/docs/components/responsiveColumnStripe.md +2 -19
  83. package/dist/docs/components/responsiveVideo.md +2 -11
  84. package/dist/docs/components/rioglyph.md +2 -12
  85. package/dist/docs/components/rules.md +69 -133
  86. package/dist/docs/components/saveableInput.md +21 -135
  87. package/dist/docs/components/selects.md +9996 -15
  88. package/dist/docs/components/sidebar.md +2 -39
  89. package/dist/docs/components/sliders.md +2 -37
  90. package/dist/docs/components/smoothScrollbars.md +2 -56
  91. package/dist/docs/components/spinners.md +5 -51
  92. package/dist/docs/components/states.md +21 -245
  93. package/dist/docs/components/statsWidgets.md +2 -113
  94. package/dist/docs/components/statusBar.md +2 -28
  95. package/dist/docs/components/stepButton.md +2 -8
  96. package/dist/docs/components/steppedProgressBars.md +2 -66
  97. package/dist/docs/components/subNavigation.md +1 -8
  98. package/dist/docs/components/supportMarker.md +1 -1
  99. package/dist/docs/components/svgImage.md +2 -12
  100. package/dist/docs/components/switch.md +2 -11
  101. package/dist/docs/components/tables.md +1 -1
  102. package/dist/docs/components/tagManager.md +4 -58
  103. package/dist/docs/components/tags.md +2 -31
  104. package/dist/docs/components/teaser.md +2 -30
  105. package/dist/docs/components/timeline.md +1 -1
  106. package/dist/docs/components/timepicker.md +2 -26
  107. package/dist/docs/components/toggleButton.md +7 -29
  108. package/dist/docs/components/tooltip.md +9 -40
  109. package/dist/docs/components/virtualList.md +73 -99
  110. package/dist/docs/foundations.md +119 -119
  111. package/dist/docs/start/changelog.md +23 -1
  112. package/dist/docs/start/goodtoknow.md +1 -1
  113. package/dist/docs/start/guidelines/color-combinations.md +1 -1
  114. package/dist/docs/start/guidelines/custom-css.md +1 -1
  115. package/dist/docs/start/guidelines/custom-rioglyph.md +1 -1
  116. package/dist/docs/start/guidelines/formatting.md +1 -1
  117. package/dist/docs/start/guidelines/iframe.md +79 -26
  118. package/dist/docs/start/guidelines/obfuscate-data.md +1 -1
  119. package/dist/docs/start/guidelines/print-css.md +1 -1
  120. package/dist/docs/start/guidelines/spinner.md +81 -81
  121. package/dist/docs/start/guidelines/supported-browsers.md +1 -1
  122. package/dist/docs/start/guidelines/writing.md +1 -1
  123. package/dist/docs/start/howto.md +9 -9
  124. package/dist/docs/start/intro.md +1 -1
  125. package/dist/docs/start/responsiveness.md +1 -1
  126. package/dist/docs/templates/common-table.md +11 -11
  127. package/dist/docs/templates/detail-views.md +2 -2
  128. package/dist/docs/templates/expandable-details.md +1 -1
  129. package/dist/docs/templates/feature-cards.md +55 -55
  130. package/dist/docs/templates/form-summary.md +22 -22
  131. package/dist/docs/templates/form-toggle.md +1 -1
  132. package/dist/docs/templates/list-blocks.md +203 -203
  133. package/dist/docs/templates/loading-progress.md +1 -1
  134. package/dist/docs/templates/options-panel.md +1 -1
  135. package/dist/docs/templates/panel-variants.md +1 -1
  136. package/dist/docs/templates/progress-cards.md +1 -1
  137. package/dist/docs/templates/progress-success.md +1 -1
  138. package/dist/docs/templates/settings-form.md +23 -23
  139. package/dist/docs/templates/stats-blocks.md +41 -41
  140. package/dist/docs/templates/table-panel.md +1 -1
  141. package/dist/docs/templates/table-row-animation.md +1 -1
  142. package/dist/docs/templates/usage-cards.md +1 -1
  143. package/dist/docs/utilities/deviceUtils.md +6 -3
  144. package/dist/docs/utilities/featureToggles.md +1 -1
  145. package/dist/docs/utilities/fuelTypeUtils.md +1 -1
  146. package/dist/docs/utilities/routeUtils.md +59 -23
  147. package/dist/docs/utilities/useAfterMount.md +1 -1
  148. package/dist/docs/utilities/useAutoAnimate.md +1 -1
  149. package/dist/docs/utilities/useAverage.md +1 -1
  150. package/dist/docs/utilities/useClickOutside.md +1 -1
  151. package/dist/docs/utilities/useClipboard.md +2 -2
  152. package/dist/docs/utilities/useCount.md +1 -1
  153. package/dist/docs/utilities/useDarkMode.md +1 -1
  154. package/dist/docs/utilities/useDebugInfo.md +4 -4
  155. package/dist/docs/utilities/useEffectOnce.md +1 -1
  156. package/dist/docs/utilities/useElapsedTime.md +1 -1
  157. package/dist/docs/utilities/useElementSize.md +1 -1
  158. package/dist/docs/utilities/useEsc.md +1 -1
  159. package/dist/docs/utilities/useEvent.md +1 -1
  160. package/dist/docs/utilities/useFocusTrap.md +1 -1
  161. package/dist/docs/utilities/useFullscreen.md +1 -1
  162. package/dist/docs/utilities/useHover.md +1 -1
  163. package/dist/docs/utilities/useIncomingPostMessages.md +1 -1
  164. package/dist/docs/utilities/useInterval.md +1 -1
  165. package/dist/docs/utilities/useIsFocusWithin.md +1 -1
  166. package/dist/docs/utilities/useKey.md +7 -5
  167. package/dist/docs/utilities/useLocalStorage.md +1 -1
  168. package/dist/docs/utilities/useLocationSuggestions.md +1 -1
  169. package/dist/docs/utilities/useMax.md +1 -1
  170. package/dist/docs/utilities/useMin.md +1 -1
  171. package/dist/docs/utilities/useMutationObserver.md +1 -1
  172. package/dist/docs/utilities/useOnScreen.md +1 -1
  173. package/dist/docs/utilities/useOnlineStatus.md +1 -1
  174. package/dist/docs/utilities/usePostMessage.md +58 -2
  175. package/dist/docs/utilities/usePostMessageSender.md +1 -1
  176. package/dist/docs/utilities/usePrevious.md +1 -1
  177. package/dist/docs/utilities/useResizeObserver.md +1 -1
  178. package/dist/docs/utilities/useScrollPosition.md +1 -1
  179. package/dist/docs/utilities/useSearch.md +1 -1
  180. package/dist/docs/utilities/useSorting.md +1 -1
  181. package/dist/docs/utilities/useStateWithValidation.md +1 -1
  182. package/dist/docs/utilities/useSum.md +1 -1
  183. package/dist/docs/utilities/useTableExport.md +54 -54
  184. package/dist/docs/utilities/useTableSelection.md +92 -92
  185. package/dist/docs/utilities/useTimeout.md +1 -1
  186. package/dist/docs/utilities/useToggle.md +1 -1
  187. package/dist/docs/utilities/useWindowResize.md +1 -1
  188. package/dist/index.mjs +1 -1
  189. package/dist/version.json +2 -2
  190. package/package.json +1 -1
@@ -3,7 +3,7 @@
3
3
  *Category:* Components
4
4
  *Section:* Content
5
5
  *Source:* https://uikit.developers.rio.cloud/#components/virtualList
6
- *Captured:* 2026-01-07T12:11:47.861Z
6
+ *Captured:* 2026-01-14T09:07:38.387Z
7
7
 
8
8
  The VirtualList component is designed for efficiently rendering large lists of items by only displaying the visible portion of the list, also known as windowing.
9
9
 
@@ -14,70 +14,70 @@ It allows a specified number of items outside the viewport for smoother scrollin
14
14
  ### Example: Example 1
15
15
 
16
16
  Virtual list with 100 itemsItem 1
17
- Sed ac in vel et in ac
17
+ Aliquam in massa, Integer lorem neque.
18
18
 
19
19
  Item 2
20
- Velit. aliquam ante primis orci dui ipsum amet, nunc Duis ac eget ante pretium in,
20
+ Nunc Duis consectetur purus primis sit metus Sed ipsum consectetur adipiscing vel
21
21
 
22
22
  Item 3
23
- Ac
24
- Lorem orci, nec primis lorem
23
+ Efficitur ac Sed felis. tincidunt. elementum bibendum, finibus ac pharetra sit scelerisque
25
24
 
26
25
  Item 4
27
- Efficitur massa, iaculis. ligula nunc
26
+ Elementum consectetur tortor dui volutpat
28
27
 
29
28
  Item 5
30
- Ac nec iaculis. viverra bibendum, eget hendrerit ac vel Mauris nunc
29
+ Hendrerit ipsum ante
30
+ Lorem massa neque. orci pretium est Ut faucibus. ac primis quis,
31
31
 
32
32
  Item 6
33
- Pretium quis, Ut posuere viverra Sed Mauris in, massa velit. fames rutrum orci amet, semper
33
+ Semper. semper malesuada ligula Fusce in,
34
34
 
35
35
  Item 7
36
- Integer dolor faucibus. pretium Mauris viverra Mauris massa Integer aliquam Sed
36
+ Enim iaculis. ac et pretium ante
37
37
 
38
38
  Item 8
39
- Bibendum, Sed iaculis. consectetur ac dolor in, In fringilla orci,
39
+ In,
40
+ Lorem molestie ligula ante primis
40
41
 
41
42
  Item 9
42
- Et massa ante Fusce hendrerit ipsum consectetur in, ipsum ut Sed volutpat
43
+ Vivamus hendrerit fames Integer enim in tincidunt. ante Duis in ac ante ante ut Fusce
43
44
 
44
45
  Item 10
45
- Ut ligula
46
- Lorem lorem tortor primis libero
46
+ Enim tortor finibus in, posuere dolor efficitur
47
47
 
48
48
  #### Summary
49
49
 
50
50
  Virtual list with 100 itemsItem 1
51
- Sed ac in vel et in ac
51
+ Aliquam in massa, Integer lorem neque.
52
52
 
53
53
  Item 2
54
- Velit. aliquam ante primis orci dui ipsum amet, nunc Duis ac eget ante pretium in,
54
+ Nunc Duis consectetur purus primis sit metus Sed ipsum consectetur adipiscing vel
55
55
 
56
56
  Item 3
57
- Ac
58
- Lorem orci, nec primis lorem
57
+ Efficitur ac Sed felis. tincidunt. elementum bibendum, finibus ac pharetra sit scelerisque
59
58
 
60
59
  Item 4
61
- Efficitur massa, iaculis. ligula nunc
60
+ Elementum consectetur tortor dui volutpat
62
61
 
63
62
  Item 5
64
- Ac nec iaculis. viverra bibendum, eget hendrerit ac vel Mauris nunc
63
+ Hendrerit ipsum ante
64
+ Lorem massa neque. orci pretium est Ut faucibus. ac primis quis,
65
65
 
66
66
  Item 6
67
- Pretium quis, Ut posuere viverra Sed Mauris in, massa velit. fames rutrum orci amet, semper
67
+ Semper. semper malesuada ligula Fusce in,
68
68
 
69
69
  Item 7
70
- Integer dolor faucibus. pretium Mauris viverra Mauris massa Integer aliquam Sed
70
+ Enim iaculis. ac et pretium ante
71
71
 
72
72
  Item 8
73
- Bibendum, Sed iaculis. consectetur ac dolor in, In fringilla orci,
73
+ In,
74
+ Lorem molestie ligula ante primis
74
75
 
75
76
  Item 9
76
- Et massa ante Fusce hendrerit ipsum consectetur in, ipsum ut Sed volutpat
77
+ Vivamus hendrerit fames Integer enim in tincidunt. ante Duis in ac ante ante ut Fusce
77
78
 
78
79
  Item 10
79
- Ut ligula
80
- Lorem lorem tortor primis libero
80
+ Enim tortor finibus in, posuere dolor efficitur
81
81
 
82
82
  #### React (tsx)
83
83
 
@@ -130,63 +130,63 @@ export default () => {
130
130
  <div class="VirtualListItemWrapper " data-index="0" style="position: absolute; transform: translateY(0px); width: 100%; will-change: transform;">
131
131
  <div class="margin-bottom-10 padding-y-10 padding-x-15 bg-white rounded shadow-accent text-color-darker">
132
132
  <div class="text-medium" data-test-ignore="text">Item 1</div>
133
- <div class="word-break" data-test-ignore="text">Sed ac in vel et in ac</div>
133
+ <div class="word-break" data-test-ignore="text">Aliquam in massa, Integer lorem neque.</div>
134
134
  </div>
135
135
  </div>
136
136
  <div class="VirtualListItemWrapper " data-index="1" style="position: absolute; transform: translateY(70px); width: 100%; will-change: transform;">
137
137
  <div class="margin-bottom-10 padding-y-10 padding-x-15 bg-white rounded shadow-accent text-color-darker">
138
138
  <div class="text-medium" data-test-ignore="text">Item 2</div>
139
- <div class="word-break" data-test-ignore="text">Velit. aliquam ante primis orci dui ipsum amet, nunc Duis ac eget ante pretium in,</div>
139
+ <div class="word-break" data-test-ignore="text">Nunc Duis consectetur purus primis sit metus Sed ipsum consectetur adipiscing vel</div>
140
140
  </div>
141
141
  </div>
142
142
  <div class="VirtualListItemWrapper " data-index="2" style="position: absolute; transform: translateY(140px); width: 100%; will-change: transform;">
143
143
  <div class="margin-bottom-10 padding-y-10 padding-x-15 bg-white rounded shadow-accent text-color-darker">
144
144
  <div class="text-medium" data-test-ignore="text">Item 3</div>
145
- <div class="word-break" data-test-ignore="text">Ac
146
- Lorem orci, nec primis lorem</div>
145
+ <div class="word-break" data-test-ignore="text">Efficitur ac Sed felis. tincidunt. elementum bibendum, finibus ac pharetra sit scelerisque</div>
147
146
  </div>
148
147
  </div>
149
148
  <div class="VirtualListItemWrapper " data-index="3" style="position: absolute; transform: translateY(210px); width: 100%; will-change: transform;">
150
149
  <div class="margin-bottom-10 padding-y-10 padding-x-15 bg-white rounded shadow-accent text-color-darker">
151
150
  <div class="text-medium" data-test-ignore="text">Item 4</div>
152
- <div class="word-break" data-test-ignore="text">Efficitur massa, iaculis. ligula nunc</div>
151
+ <div class="word-break" data-test-ignore="text">Elementum consectetur tortor dui volutpat</div>
153
152
  </div>
154
153
  </div>
155
154
  <div class="VirtualListItemWrapper " data-index="4" style="position: absolute; transform: translateY(280px); width: 100%; will-change: transform;">
156
155
  <div class="margin-bottom-10 padding-y-10 padding-x-15 bg-white rounded shadow-accent text-color-darker">
157
156
  <div class="text-medium" data-test-ignore="text">Item 5</div>
158
- <div class="word-break" data-test-ignore="text">Ac nec iaculis. viverra bibendum, eget hendrerit ac vel Mauris nunc</div>
157
+ <div class="word-break" data-test-ignore="text">Hendrerit ipsum ante
158
+ Lorem massa neque. orci pretium est Ut faucibus. ac primis quis,</div>
159
159
  </div>
160
160
  </div>
161
161
  <div class="VirtualListItemWrapper " data-index="5" style="position: absolute; transform: translateY(350px); width: 100%; will-change: transform;">
162
162
  <div class="margin-bottom-10 padding-y-10 padding-x-15 bg-white rounded shadow-accent text-color-darker">
163
163
  <div class="text-medium" data-test-ignore="text">Item 6</div>
164
- <div class="word-break" data-test-ignore="text">Pretium quis, Ut posuere viverra Sed Mauris in, massa velit. fames rutrum orci amet, semper</div>
164
+ <div class="word-break" data-test-ignore="text">Semper. semper malesuada ligula Fusce in,</div>
165
165
  </div>
166
166
  </div>
167
167
  <div class="VirtualListItemWrapper " data-index="6" style="position: absolute; transform: translateY(420px); width: 100%; will-change: transform;">
168
168
  <div class="margin-bottom-10 padding-y-10 padding-x-15 bg-white rounded shadow-accent text-color-darker">
169
169
  <div class="text-medium" data-test-ignore="text">Item 7</div>
170
- <div class="word-break" data-test-ignore="text">Integer dolor faucibus. pretium Mauris viverra Mauris massa Integer aliquam Sed</div>
170
+ <div class="word-break" data-test-ignore="text">Enim iaculis. ac et pretium ante</div>
171
171
  </div>
172
172
  </div>
173
173
  <div class="VirtualListItemWrapper " data-index="7" style="position: absolute; transform: translateY(490px); width: 100%; will-change: transform;">
174
174
  <div class="margin-bottom-10 padding-y-10 padding-x-15 bg-white rounded shadow-accent text-color-darker">
175
175
  <div class="text-medium" data-test-ignore="text">Item 8</div>
176
- <div class="word-break" data-test-ignore="text">Bibendum, Sed iaculis. consectetur ac dolor in, In fringilla orci,</div>
176
+ <div class="word-break" data-test-ignore="text">In,
177
+ Lorem molestie ligula ante primis</div>
177
178
  </div>
178
179
  </div>
179
180
  <div class="VirtualListItemWrapper " data-index="8" style="position: absolute; transform: translateY(560px); width: 100%; will-change: transform;">
180
181
  <div class="margin-bottom-10 padding-y-10 padding-x-15 bg-white rounded shadow-accent text-color-darker">
181
182
  <div class="text-medium" data-test-ignore="text">Item 9</div>
182
- <div class="word-break" data-test-ignore="text">Et massa ante Fusce hendrerit ipsum consectetur in, ipsum ut Sed volutpat</div>
183
+ <div class="word-break" data-test-ignore="text">Vivamus hendrerit fames Integer enim in tincidunt. ante Duis in ac ante ante ut Fusce</div>
183
184
  </div>
184
185
  </div>
185
186
  <div class="VirtualListItemWrapper " data-index="9" style="position: absolute; transform: translateY(630px); width: 100%; will-change: transform;">
186
187
  <div class="margin-bottom-10 padding-y-10 padding-x-15 bg-white rounded shadow-accent text-color-darker">
187
188
  <div class="text-medium" data-test-ignore="text">Item 10</div>
188
- <div class="word-break" data-test-ignore="text">Ut ligula
189
- Lorem lorem tortor primis libero</div>
189
+ <div class="word-break" data-test-ignore="text">Enim tortor finibus in, posuere dolor efficitur</div>
190
190
  </div>
191
191
  </div>
192
192
  </div>
@@ -195,84 +195,71 @@ export default () => {
195
195
  </div>
196
196
  ```
197
197
 
198
- #### Props
199
-
200
- | Name | Type | Default | Description |
201
- | --- | --- | --- | --- |
202
- | items | T[] | — | The array of items to be rendered in the list. |
203
- | renderItem | (item: T, index: number) => React.ReactElement | — | A function that renders an item given its data and index. |
204
- | overscanCount | number | 3 | The number of items to render outside the visible area for smoother scrolling. |
205
- | defaultHeight | number | 50 | The default height for items if their height cannot be determined. |
206
- | scrollContainerRef | React.RefObject<HTMLElement> | — | Optional ref to an external scroll container. Use this when VirtualList is inside a scrollable container. |
207
- | containerClassName | string | — | Additional classNames for the container of the list items. |
208
- | listItemWrapperClassName | string | — | Additional classNames for each individual list item wrapper. This wrapper is required for proper positioning each item in the list using an absolute top value. |
209
- | className | string | — | Additional classNames for the outer list container. |
210
-
211
198
  ### Example: Example 2
212
199
 
213
200
  Virtual list with 5000 items
214
201
  Vehicle 1
215
- Vel ipsum ac primis hendrerit sem. ipsum sem. Vivamus metus quis, ac
202
+ Faucibus. fringilla massa vel ut neque. ante in ipsum metus consectetur Mauris Mauris efficitur
216
203
 
217
204
  Vehicle 2
218
- Fringilla Fusce eget pharetra Vivamus
205
+ Tincidunt. ante ipsum aliquam eget hendrerit pharetra et ante Interdum
219
206
 
220
207
  Vehicle 3
221
- In felis. dui metus malesuada fames
208
+ Vivamus vel ipsum consectetur ut sit purus
222
209
 
223
210
  Vehicle 4
224
- Aliquam malesuada amet, ac ac fames orci ligula ante in consectetur in, ipsum primis felis.
211
+ Iaculis. ut fringilla adipiscing posuere ligula ac ligula
225
212
 
226
213
  Vehicle 5
227
- Ante Sed ligula dolor molestie
214
+ Fames dolor purus consectetur neque. Sed semper. sit eget in, orci,
228
215
 
229
216
  Vehicle 6
230
- Volutpat nec fames Duis metus sit bibendum, ligula velit. sagittis Sed vel vel ante
217
+ Eget eget in efficitur fames vitae ante
231
218
 
232
219
  Vehicle 7
233
- Duis et Fusce vitae elit. est sit ac
220
+ Sagittis finibus Duis in, condimentum malesuada
234
221
 
235
222
  Vehicle 8
236
- Ut sagittis elementum adipiscing iaculis. iaculis.
223
+ Semper felis. consectetur libero nec tincidunt. Ut rutrum adipiscing tincidunt. molestie nunc sagittis finibus
237
224
 
238
225
  Vehicle 9
239
- Libero sit Integer ligula nec nunc viverra elementum pretium Duis sagittis hendrerit semper elementum ante
226
+ Tortor ipsum eget orci, ipsum
240
227
 
241
228
  Vehicle 10
242
- Duis viverra massa, scelerisque Vivamus in elit. tortor in, et Vivamus
229
+ Ut tincidunt. vel fames volutpat posuere est In pharetra consectetur consectetur sagittis Mauris
243
230
 
244
231
  #### Summary
245
232
 
246
233
  Virtual list with 5000 items
247
234
  Vehicle 1
248
- Vel ipsum ac primis hendrerit sem. ipsum sem. Vivamus metus quis, ac
235
+ Faucibus. fringilla massa vel ut neque. ante in ipsum metus consectetur Mauris Mauris efficitur
249
236
 
250
237
  Vehicle 2
251
- Fringilla Fusce eget pharetra Vivamus
238
+ Tincidunt. ante ipsum aliquam eget hendrerit pharetra et ante Interdum
252
239
 
253
240
  Vehicle 3
254
- In felis. dui metus malesuada fames
241
+ Vivamus vel ipsum consectetur ut sit purus
255
242
 
256
243
  Vehicle 4
257
- Aliquam malesuada amet, ac ac fames orci ligula ante in consectetur in, ipsum primis felis.
244
+ Iaculis. ut fringilla adipiscing posuere ligula ac ligula
258
245
 
259
246
  Vehicle 5
260
- Ante Sed ligula dolor molestie
247
+ Fames dolor purus consectetur neque. Sed semper. sit eget in, orci,
261
248
 
262
249
  Vehicle 6
263
- Volutpat nec fames Duis metus sit bibendum, ligula velit. sagittis Sed vel vel ante
250
+ Eget eget in efficitur fames vitae ante
264
251
 
265
252
  Vehicle 7
266
- Duis et Fusce vitae elit. est sit ac
253
+ Sagittis finibus Duis in, condimentum malesuada
267
254
 
268
255
  Vehicle 8
269
- Ut sagittis elementum adipiscing iaculis. iaculis.
256
+ Semper felis. consectetur libero nec tincidunt. Ut rutrum adipiscing tincidunt. molestie nunc sagittis finibus
270
257
 
271
258
  Vehicle 9
272
- Libero sit Integer ligula nec nunc viverra elementum pretium Duis sagittis hendrerit semper elementum ante
259
+ Tortor ipsum eget orci, ipsum
273
260
 
274
261
  Vehicle 10
275
- Duis viverra massa, scelerisque Vivamus in elit. tortor in, et Vivamus
262
+ Ut tincidunt. vel fames volutpat posuere est In pharetra consectetur consectetur sagittis Mauris
276
263
 
277
264
  #### React (tsx)
278
265
 
@@ -342,7 +329,7 @@ export default () => {
342
329
  <div class="padding-20">
343
330
  <label>Virtual list with 5000 items</label>
344
331
  <div class="max-width-600 max-height-400 overflow-y-auto">
345
- <div class="VirtualList overflow-y-auto border rounded" style="height: 370000px; position: relative; overflow: visible;">
332
+ <div class="VirtualList overflow-y-auto border rounded" style="height: 380000px; position: relative; overflow: visible;">
346
333
  <div class="position-relative" style="height: auto;">
347
334
  <div class="VirtualListItemContainer list-group">
348
335
  <div class="VirtualListItemWrapper list-group-item padding-y-15" data-index="0" style="position: absolute; transform: translateY(0px); width: 100%; will-change: transform;">
@@ -353,11 +340,11 @@ export default () => {
353
340
  </div>
354
341
  <div>
355
342
  <div class="text-medium" data-test-ignore="text">Vehicle 1</div>
356
- <div class="word-break" data-test-ignore="text">Vel ipsum ac primis hendrerit sem. ipsum sem. Vivamus metus quis, ac</div>
343
+ <div class="word-break" data-test-ignore="text">Faucibus. fringilla massa vel ut neque. ante in ipsum metus consectetur Mauris Mauris efficitur</div>
357
344
  </div>
358
345
  </div>
359
346
  </div>
360
- <div class="VirtualListItemWrapper list-group-item padding-y-15" data-index="1" style="position: absolute; transform: translateY(69px); width: 100%; will-change: transform;">
347
+ <div class="VirtualListItemWrapper list-group-item padding-y-15" data-index="1" style="position: absolute; transform: translateY(89px); width: 100%; will-change: transform;">
361
348
  <div class="display-flex gap-15 align-items-center">
362
349
  <div class="Avatar bg-lightest" style="height: 40px;">
363
350
  <span class="Avatar-icon rioglyph rioglyph-truck ">
@@ -365,11 +352,11 @@ export default () => {
365
352
  </div>
366
353
  <div>
367
354
  <div class="text-medium" data-test-ignore="text">Vehicle 2</div>
368
- <div class="word-break" data-test-ignore="text">Fringilla Fusce eget pharetra Vivamus</div>
355
+ <div class="word-break" data-test-ignore="text">Tincidunt. ante ipsum aliquam eget hendrerit pharetra et ante Interdum</div>
369
356
  </div>
370
357
  </div>
371
358
  </div>
372
- <div class="VirtualListItemWrapper list-group-item padding-y-15" data-index="2" style="position: absolute; transform: translateY(139px); width: 100%; will-change: transform;">
359
+ <div class="VirtualListItemWrapper list-group-item padding-y-15" data-index="2" style="position: absolute; transform: translateY(159px); width: 100%; will-change: transform;">
373
360
  <div class="display-flex gap-15 align-items-center">
374
361
  <div class="Avatar bg-lightest" style="height: 40px;">
375
362
  <span class="Avatar-icon rioglyph rioglyph-truck ">
@@ -377,11 +364,11 @@ export default () => {
377
364
  </div>
378
365
  <div>
379
366
  <div class="text-medium" data-test-ignore="text">Vehicle 3</div>
380
- <div class="word-break" data-test-ignore="text">In felis. dui metus malesuada fames</div>
367
+ <div class="word-break" data-test-ignore="text">Vivamus vel ipsum consectetur ut sit purus</div>
381
368
  </div>
382
369
  </div>
383
370
  </div>
384
- <div class="VirtualListItemWrapper list-group-item padding-y-15" data-index="3" style="position: absolute; transform: translateY(209px); width: 100%; will-change: transform;">
371
+ <div class="VirtualListItemWrapper list-group-item padding-y-15" data-index="3" style="position: absolute; transform: translateY(229px); width: 100%; will-change: transform;">
385
372
  <div class="display-flex gap-15 align-items-center">
386
373
  <div class="Avatar bg-lightest" style="height: 40px;">
387
374
  <span class="Avatar-icon rioglyph rioglyph-truck ">
@@ -389,7 +376,7 @@ export default () => {
389
376
  </div>
390
377
  <div>
391
378
  <div class="text-medium" data-test-ignore="text">Vehicle 4</div>
392
- <div class="word-break" data-test-ignore="text">Aliquam malesuada amet, ac ac fames orci ligula ante in consectetur in, ipsum primis felis.</div>
379
+ <div class="word-break" data-test-ignore="text">Iaculis. ut fringilla adipiscing posuere ligula ac ligula</div>
393
380
  </div>
394
381
  </div>
395
382
  </div>
@@ -401,7 +388,7 @@ export default () => {
401
388
  </div>
402
389
  <div>
403
390
  <div class="text-medium" data-test-ignore="text">Vehicle 5</div>
404
- <div class="word-break" data-test-ignore="text">Ante Sed ligula dolor molestie</div>
391
+ <div class="word-break" data-test-ignore="text">Fames dolor purus consectetur neque. Sed semper. sit eget in, orci,</div>
405
392
  </div>
406
393
  </div>
407
394
  </div>
@@ -413,7 +400,7 @@ export default () => {
413
400
  </div>
414
401
  <div>
415
402
  <div class="text-medium" data-test-ignore="text">Vehicle 6</div>
416
- <div class="word-break" data-test-ignore="text">Volutpat nec fames Duis metus sit bibendum, ligula velit. sagittis Sed vel vel ante</div>
403
+ <div class="word-break" data-test-ignore="text">Eget eget in efficitur fames vitae ante</div>
417
404
  </div>
418
405
  </div>
419
406
  </div>
@@ -425,7 +412,7 @@ export default () => {
425
412
  </div>
426
413
  <div>
427
414
  <div class="text-medium" data-test-ignore="text">Vehicle 7</div>
428
- <div class="word-break" data-test-ignore="text">Duis et Fusce vitae elit. est sit ac</div>
415
+ <div class="word-break" data-test-ignore="text">Sagittis finibus Duis in, condimentum malesuada</div>
429
416
  </div>
430
417
  </div>
431
418
  </div>
@@ -437,11 +424,11 @@ export default () => {
437
424
  </div>
438
425
  <div>
439
426
  <div class="text-medium" data-test-ignore="text">Vehicle 8</div>
440
- <div class="word-break" data-test-ignore="text">Ut sagittis elementum adipiscing iaculis. iaculis.</div>
427
+ <div class="word-break" data-test-ignore="text">Semper felis. consectetur libero nec tincidunt. Ut rutrum adipiscing tincidunt. molestie nunc sagittis finibus</div>
441
428
  </div>
442
429
  </div>
443
430
  </div>
444
- <div class="VirtualListItemWrapper list-group-item padding-y-15" data-index="8" style="position: absolute; transform: translateY(579px); width: 100%; will-change: transform;">
431
+ <div class="VirtualListItemWrapper list-group-item padding-y-15" data-index="8" style="position: absolute; transform: translateY(599px); width: 100%; will-change: transform;">
445
432
  <div class="display-flex gap-15 align-items-center">
446
433
  <div class="Avatar bg-lightest" style="height: 40px;">
447
434
  <span class="Avatar-icon rioglyph rioglyph-truck ">
@@ -449,7 +436,7 @@ export default () => {
449
436
  </div>
450
437
  <div>
451
438
  <div class="text-medium" data-test-ignore="text">Vehicle 9</div>
452
- <div class="word-break" data-test-ignore="text">Libero sit Integer ligula nec nunc viverra elementum pretium Duis sagittis hendrerit semper elementum ante</div>
439
+ <div class="word-break" data-test-ignore="text">Tortor ipsum eget orci, ipsum</div>
453
440
  </div>
454
441
  </div>
455
442
  </div>
@@ -461,7 +448,7 @@ export default () => {
461
448
  </div>
462
449
  <div>
463
450
  <div class="text-medium" data-test-ignore="text">Vehicle 10</div>
464
- <div class="word-break" data-test-ignore="text">Duis viverra massa, scelerisque Vivamus in elit. tortor in, et Vivamus</div>
451
+ <div class="word-break" data-test-ignore="text">Ut tincidunt. vel fames volutpat posuere est In pharetra consectetur consectetur sagittis Mauris</div>
465
452
  </div>
466
453
  </div>
467
454
  </div>
@@ -470,17 +457,4 @@ export default () => {
470
457
  </div>
471
458
  </div>
472
459
  </div>
473
- ```
474
-
475
- #### Props
476
-
477
- | Name | Type | Default | Description |
478
- | --- | --- | --- | --- |
479
- | items | T[] | — | The array of items to be rendered in the list. |
480
- | renderItem | (item: T, index: number) => React.ReactElement | — | A function that renders an item given its data and index. |
481
- | overscanCount | number | 3 | The number of items to render outside the visible area for smoother scrolling. |
482
- | defaultHeight | number | 50 | The default height for items if their height cannot be determined. |
483
- | scrollContainerRef | React.RefObject<HTMLElement> | — | Optional ref to an external scroll container. Use this when VirtualList is inside a scrollable container. |
484
- | containerClassName | string | — | Additional classNames for the container of the list items. |
485
- | listItemWrapperClassName | string | — | Additional classNames for each individual list item wrapper. This wrapper is required for proper positioning each item in the list using an absolute top value. |
486
- | className | string | — | Additional classNames for the outer list container. |
460
+ ```