@rio-cloud/uikit-mcp 1.0.1 → 1.1.1

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 (388) hide show
  1. package/README.md +75 -39
  2. package/dist/doc-metadata.json +1872 -0
  3. package/dist/docs/components/accentBar.md +582 -0
  4. package/dist/docs/components/activity.md +330 -0
  5. package/dist/docs/components/animatedNumber.md +88 -0
  6. package/dist/docs/components/animatedTextReveal.md +381 -0
  7. package/dist/docs/components/animations.md +459 -0
  8. package/dist/docs/components/appHeader.md +737 -0
  9. package/dist/docs/components/appLayout.md +2033 -0
  10. package/dist/docs/components/appNavigationBar.md +274 -0
  11. package/dist/docs/components/areaCharts.md +828 -0
  12. package/dist/docs/components/aspectRatioPlaceholder.md +106 -0
  13. package/dist/docs/components/assetTree.md +3132 -0
  14. package/dist/docs/components/autosuggests.md +1177 -0
  15. package/dist/docs/components/avatar.md +206 -0
  16. package/dist/docs/components/banner.md +668 -0
  17. package/dist/docs/components/barCharts.md +2765 -0
  18. package/dist/docs/components/barList.md +517 -0
  19. package/dist/docs/components/basicMap.md +167 -0
  20. package/dist/docs/components/bottomSheet.md +721 -0
  21. package/dist/docs/components/button.md +775 -0
  22. package/dist/docs/components/buttonToolbar.md +134 -0
  23. package/dist/docs/components/calendarStripe.md +533 -0
  24. package/dist/docs/components/card.md +86 -0
  25. package/dist/docs/components/carousel.md +128 -0
  26. package/dist/docs/components/chartColors.md +716 -0
  27. package/dist/docs/components/chartsGettingStarted.md +28 -0
  28. package/dist/docs/components/chat.md +935 -0
  29. package/dist/docs/components/checkbox.md +996 -0
  30. package/dist/docs/components/clearableInput.md +806 -0
  31. package/dist/docs/components/collapse.md +189 -0
  32. package/dist/docs/components/composedCharts.md +424 -0
  33. package/dist/docs/components/contentLoader.md +674 -0
  34. package/dist/docs/components/dataTabs.md +1251 -0
  35. package/dist/docs/components/datepickers.md +2543 -0
  36. package/dist/docs/components/dialogs.md +2244 -0
  37. package/dist/docs/components/divider.md +219 -0
  38. package/dist/docs/components/dropdowns.md +17538 -0
  39. package/dist/docs/components/editableContent.md +1127 -0
  40. package/dist/docs/components/expander.md +970 -0
  41. package/dist/docs/components/fade.md +836 -0
  42. package/dist/docs/components/fadeExpander.md +180 -0
  43. package/dist/docs/components/fadeUp.md +396 -0
  44. package/dist/docs/components/feedback.md +758 -0
  45. package/dist/docs/components/filePickers.md +370 -0
  46. package/dist/docs/components/formLabel.md +251 -0
  47. package/dist/docs/components/fullscreenMap.md +10 -0
  48. package/dist/docs/components/groupedItemList.md +1001 -0
  49. package/dist/docs/components/iconList.md +306 -0
  50. package/dist/docs/components/imagePreloader.md +167 -0
  51. package/dist/docs/components/labeledElement.md +115 -0
  52. package/dist/docs/components/licensePlate.md +412 -0
  53. package/dist/docs/components/lineCharts.md +2014 -0
  54. package/dist/docs/components/listMenu.md +392 -0
  55. package/dist/docs/components/loadMore.md +219 -0
  56. package/dist/docs/components/mainNavigation.md +129 -0
  57. package/dist/docs/components/mapCircle.md +93 -0
  58. package/dist/docs/components/mapCluster.md +337 -0
  59. package/dist/docs/components/mapContext.md +284 -0
  60. package/dist/docs/components/mapDraggableMarker.md +150 -0
  61. package/dist/docs/components/mapGettingStarted.md +39 -0
  62. package/dist/docs/components/mapInfoBubble.md +135 -0
  63. package/dist/docs/components/mapLayerGroup.md +94 -0
  64. package/dist/docs/components/mapMarker.md +1814 -0
  65. package/dist/docs/components/mapPolygon.md +959 -0
  66. package/dist/docs/components/mapRoute.md +3816 -0
  67. package/dist/docs/components/mapRouteGenerator.md +6 -0
  68. package/dist/docs/components/mapSettings.md +1040 -0
  69. package/dist/docs/components/mapUtils.md +132 -0
  70. package/dist/docs/components/multiselects.md +1921 -0
  71. package/dist/docs/components/noData.md +210 -0
  72. package/dist/docs/components/notifications.md +314 -0
  73. package/dist/docs/components/numbercontrol.md +706 -0
  74. package/dist/docs/components/onboarding.md +297 -0
  75. package/dist/docs/components/page.md +241 -0
  76. package/dist/docs/components/pager.md +133 -0
  77. package/dist/docs/components/pieCharts.md +1284 -0
  78. package/dist/docs/components/popover.md +222 -0
  79. package/dist/docs/components/position.md +50 -0
  80. package/dist/docs/components/radialBarCharts.md +3663 -0
  81. package/dist/docs/components/radiobutton.md +1271 -0
  82. package/dist/docs/components/releaseNotes.md +135 -0
  83. package/dist/docs/components/resizer.md +162 -0
  84. package/dist/docs/components/responsiveColumnStripe.md +435 -0
  85. package/dist/docs/components/responsiveVideo.md +71 -0
  86. package/dist/docs/components/rioglyph.md +331 -0
  87. package/dist/docs/components/rules.md +965 -0
  88. package/dist/docs/components/saveableInput.md +1721 -0
  89. package/dist/docs/components/selects.md +1993 -0
  90. package/dist/docs/components/sidebar.md +332 -0
  91. package/dist/docs/components/sliders.md +376 -0
  92. package/dist/docs/components/smoothScrollbars.md +1180 -0
  93. package/dist/docs/components/spinners.md +506 -0
  94. package/dist/docs/components/states.md +1176 -0
  95. package/dist/docs/components/statsWidgets.md +636 -0
  96. package/dist/docs/components/statusBar.md +644 -0
  97. package/dist/docs/components/stepButton.md +61 -0
  98. package/dist/docs/components/steppedProgressBars.md +1064 -0
  99. package/dist/docs/components/subNavigation.md +470 -0
  100. package/dist/docs/components/supportMarker.md +115 -0
  101. package/dist/docs/components/svgImage.md +248 -0
  102. package/dist/docs/components/switch.md +554 -0
  103. package/dist/docs/components/tables.md +8 -0
  104. package/dist/docs/components/tagManager.md +476 -0
  105. package/dist/docs/components/tags.md +785 -0
  106. package/dist/docs/components/teaser.md +925 -0
  107. package/dist/docs/components/timeline.md +514 -0
  108. package/dist/docs/components/timepicker.md +262 -0
  109. package/dist/docs/components/toggleButton.md +178 -0
  110. package/dist/docs/components/tooltip.md +454 -0
  111. package/dist/docs/components/virtualList.md +486 -0
  112. package/dist/docs/foundations.md +20901 -0
  113. package/dist/docs/start/changelog.md +714 -0
  114. package/dist/docs/start/goodtoknow.md +14 -0
  115. package/dist/docs/start/guidelines/color-combinations.md +678 -0
  116. package/dist/docs/start/guidelines/custom-css.md +42 -0
  117. package/dist/docs/start/guidelines/custom-rioglyph.md +35 -0
  118. package/dist/docs/start/guidelines/formatting.md +587 -0
  119. package/dist/docs/start/guidelines/iframe.md +323 -0
  120. package/dist/docs/start/guidelines/obfuscate-data.md +30 -0
  121. package/dist/docs/start/guidelines/print-css.md +36 -0
  122. package/dist/docs/start/guidelines/spinner.md +710 -0
  123. package/dist/docs/start/guidelines/supported-browsers.md +10 -0
  124. package/dist/docs/start/guidelines/writing.md +635 -0
  125. package/dist/docs/start/howto.md +187 -0
  126. package/dist/docs/start/intro.md +43 -0
  127. package/dist/docs/start/responsiveness.md +98 -0
  128. package/dist/docs/templates/common-table.md +1111 -0
  129. package/dist/docs/templates/detail-views.md +942 -0
  130. package/dist/docs/templates/expandable-details.md +228 -0
  131. package/dist/docs/templates/feature-cards.md +549 -0
  132. package/dist/docs/templates/form-summary.md +199 -0
  133. package/dist/docs/templates/form-toggle.md +367 -0
  134. package/dist/docs/templates/list-blocks.md +1021 -0
  135. package/dist/docs/templates/loading-progress.md +109 -0
  136. package/dist/docs/templates/options-panel.md +152 -0
  137. package/dist/docs/templates/panel-variants.md +164 -0
  138. package/dist/docs/templates/progress-cards.md +607 -0
  139. package/dist/docs/templates/progress-success.md +142 -0
  140. package/dist/docs/templates/settings-form.md +434 -0
  141. package/dist/docs/templates/stats-blocks.md +1381 -0
  142. package/dist/docs/templates/table-panel.md +184 -0
  143. package/dist/docs/templates/table-row-animation.md +317 -0
  144. package/dist/docs/templates/usage-cards.md +227 -0
  145. package/dist/docs/utilities/deviceUtils.md +123 -0
  146. package/dist/docs/utilities/featureToggles.md +90 -0
  147. package/dist/docs/utilities/fuelTypeUtils.md +186 -0
  148. package/dist/docs/utilities/routeUtils.md +138 -0
  149. package/dist/docs/utilities/useAfterMount.md +66 -0
  150. package/dist/docs/utilities/useAutoAnimate.md +193 -0
  151. package/dist/docs/utilities/useAverage.md +95 -0
  152. package/dist/docs/utilities/useClickOutside.md +61 -0
  153. package/dist/docs/utilities/useClipboard.md +93 -0
  154. package/dist/docs/utilities/useCount.md +178 -0
  155. package/dist/docs/utilities/useDarkMode.md +49 -0
  156. package/dist/docs/utilities/useDebugInfo.md +126 -0
  157. package/dist/docs/utilities/useEffectOnce.md +58 -0
  158. package/dist/docs/utilities/useElapsedTime.md +58 -0
  159. package/dist/docs/utilities/useElementSize.md +71 -0
  160. package/dist/docs/utilities/useEsc.md +58 -0
  161. package/dist/docs/utilities/useEvent.md +64 -0
  162. package/dist/docs/utilities/useFocusTrap.md +85 -0
  163. package/dist/docs/utilities/useFullscreen.md +198 -0
  164. package/dist/docs/utilities/useHover.md +55 -0
  165. package/dist/docs/utilities/useIncomingPostMessages.md +237 -0
  166. package/dist/docs/utilities/useInterval.md +85 -0
  167. package/dist/docs/utilities/useIsFocusWithin.md +114 -0
  168. package/dist/docs/utilities/useKey.md +151 -0
  169. package/dist/docs/utilities/useLocalStorage.md +91 -0
  170. package/dist/docs/utilities/useLocationSuggestions.md +114 -0
  171. package/dist/docs/utilities/useMax.md +62 -0
  172. package/dist/docs/utilities/useMin.md +78 -0
  173. package/dist/docs/utilities/useMutationObserver.md +113 -0
  174. package/dist/docs/utilities/useOnScreen.md +138 -0
  175. package/dist/docs/utilities/useOnlineStatus.md +49 -0
  176. package/dist/docs/utilities/usePostMessage.md +117 -0
  177. package/dist/docs/utilities/usePostMessageSender.md +257 -0
  178. package/dist/docs/utilities/usePrevious.md +101 -0
  179. package/dist/docs/utilities/useResizeObserver.md +151 -0
  180. package/dist/docs/utilities/useScrollPosition.md +252 -0
  181. package/dist/docs/utilities/useSearch.md +228 -0
  182. package/dist/docs/utilities/useSorting.md +389 -0
  183. package/dist/docs/utilities/useStateWithValidation.md +83 -0
  184. package/dist/docs/utilities/useSum.md +155 -0
  185. package/dist/docs/utilities/useTableExport.md +404 -0
  186. package/dist/docs/utilities/useTableSelection.md +1120 -0
  187. package/dist/docs/utilities/useTimeout.md +55 -0
  188. package/dist/docs/utilities/useToggle.md +115 -0
  189. package/dist/docs/utilities/useWindowResize.md +70 -0
  190. package/dist/index.mjs +271 -0
  191. package/dist/search-synonyms.json +134 -0
  192. package/dist/version.json +4 -0
  193. package/package.json +23 -19
  194. package/bin/uikit-mcp.mjs +0 -23
  195. package/data/pages/Components/components/accentbar.json +0 -207
  196. package/data/pages/Components/components/activity.json +0 -87
  197. package/data/pages/Components/components/animatednumber.json +0 -99
  198. package/data/pages/Components/components/animations.json +0 -87
  199. package/data/pages/Components/components/appheader.json +0 -291
  200. package/data/pages/Components/components/applayout.json +0 -1198
  201. package/data/pages/Components/components/appnavigationbar.json +0 -327
  202. package/data/pages/Components/components/areacharts.json +0 -563
  203. package/data/pages/Components/components/aspectratioplaceholder.json +0 -75
  204. package/data/pages/Components/components/assettree.json +0 -3080
  205. package/data/pages/Components/components/autosuggests.json +0 -710
  206. package/data/pages/Components/components/avatar.json +0 -157
  207. package/data/pages/Components/components/banner.json +0 -599
  208. package/data/pages/Components/components/barcharts.json +0 -1507
  209. package/data/pages/Components/components/barlist.json +0 -223
  210. package/data/pages/Components/components/basicmap.json +0 -68
  211. package/data/pages/Components/components/bottomsheet.json +0 -601
  212. package/data/pages/Components/components/button.json +0 -583
  213. package/data/pages/Components/components/buttontoolbar.json +0 -63
  214. package/data/pages/Components/components/calendarstripe.json +0 -235
  215. package/data/pages/Components/components/card.json +0 -69
  216. package/data/pages/Components/components/carousel.json +0 -39
  217. package/data/pages/Components/components/chartcolors.json +0 -34
  218. package/data/pages/Components/components/chartsgettingstarted.json +0 -32
  219. package/data/pages/Components/components/chat.json +0 -39
  220. package/data/pages/Components/components/checkbox.json +0 -847
  221. package/data/pages/Components/components/clearableinput.json +0 -789
  222. package/data/pages/Components/components/collapse.json +0 -175
  223. package/data/pages/Components/components/composedcharts.json +0 -159
  224. package/data/pages/Components/components/contentloader.json +0 -233
  225. package/data/pages/Components/components/datatabs.json +0 -680
  226. package/data/pages/Components/components/datepickers.json +0 -287
  227. package/data/pages/Components/components/dialogs.json +0 -1492
  228. package/data/pages/Components/components/divider.json +0 -93
  229. package/data/pages/Components/components/dropdowns.json +0 -936
  230. package/data/pages/Components/components/editablecontent.json +0 -1117
  231. package/data/pages/Components/components/expander.json +0 -377
  232. package/data/pages/Components/components/fade.json +0 -403
  233. package/data/pages/Components/components/fadeexpander.json +0 -75
  234. package/data/pages/Components/components/fadeup.json +0 -127
  235. package/data/pages/Components/components/feedback.json +0 -269
  236. package/data/pages/Components/components/filepickers.json +0 -269
  237. package/data/pages/Components/components/formlabel.json +0 -115
  238. package/data/pages/Components/components/fullscreenmap.json +0 -22
  239. package/data/pages/Components/components/groupeditemlist.json +0 -323
  240. package/data/pages/Components/components/iconlist.json +0 -45
  241. package/data/pages/Components/components/imagepreloader.json +0 -81
  242. package/data/pages/Components/components/labeledelement.json +0 -75
  243. package/data/pages/Components/components/licenseplate.json +0 -69
  244. package/data/pages/Components/components/linecharts.json +0 -987
  245. package/data/pages/Components/components/listmenu.json +0 -313
  246. package/data/pages/Components/components/loadmore.json +0 -175
  247. package/data/pages/Components/components/mainnavigation.json +0 -39
  248. package/data/pages/Components/components/mapcircle.json +0 -34
  249. package/data/pages/Components/components/mapcluster.json +0 -51
  250. package/data/pages/Components/components/mapcontext.json +0 -105
  251. package/data/pages/Components/components/mapdraggablemarker.json +0 -34
  252. package/data/pages/Components/components/mapgettingstarted.json +0 -27
  253. package/data/pages/Components/components/mapgroup.json +0 -1198
  254. package/data/pages/Components/components/mapinfobubble.json +0 -34
  255. package/data/pages/Components/components/maplayergroup.json +0 -34
  256. package/data/pages/Components/components/mapmarker.json +0 -700
  257. package/data/pages/Components/components/mappolygon.json +0 -45
  258. package/data/pages/Components/components/maproute.json +0 -623
  259. package/data/pages/Components/components/maproutegenerator.json +0 -16
  260. package/data/pages/Components/components/mapsettings.json +0 -51
  261. package/data/pages/Components/components/maputils.json +0 -34
  262. package/data/pages/Components/components/multiselects.json +0 -1451
  263. package/data/pages/Components/components/nodata.json +0 -139
  264. package/data/pages/Components/components/notifications.json +0 -65
  265. package/data/pages/Components/components/numbercontrol.json +0 -301
  266. package/data/pages/Components/components/onboarding.json +0 -302
  267. package/data/pages/Components/components/page.json +0 -197
  268. package/data/pages/Components/components/pager.json +0 -93
  269. package/data/pages/Components/components/piecharts.json +0 -731
  270. package/data/pages/Components/components/popover.json +0 -251
  271. package/data/pages/Components/components/position.json +0 -69
  272. package/data/pages/Components/components/radialbarcharts.json +0 -1304
  273. package/data/pages/Components/components/radiobutton.json +0 -1105
  274. package/data/pages/Components/components/releasenotes.json +0 -44
  275. package/data/pages/Components/components/resizer.json +0 -93
  276. package/data/pages/Components/components/responsivecolumnstripe.json +0 -123
  277. package/data/pages/Components/components/responsivevideo.json +0 -75
  278. package/data/pages/Components/components/rioglyph.json +0 -93
  279. package/data/pages/Components/components/rules.json +0 -410
  280. package/data/pages/Components/components/saveableinput.json +0 -703
  281. package/data/pages/Components/components/selects.json +0 -701
  282. package/data/pages/Components/components/sidebar.json +0 -243
  283. package/data/pages/Components/components/sliders.json +0 -235
  284. package/data/pages/Components/components/smoothscrollbars.json +0 -335
  285. package/data/pages/Components/components/spinners.json +0 -343
  286. package/data/pages/Components/components/states.json +0 -1705
  287. package/data/pages/Components/components/statswidgets.json +0 -314
  288. package/data/pages/Components/components/statusbar.json +0 -177
  289. package/data/pages/Components/components/stepbutton.json +0 -57
  290. package/data/pages/Components/components/steppedprogressbars.json +0 -417
  291. package/data/pages/Components/components/subnavigation.json +0 -107
  292. package/data/pages/Components/components/supportmarker.json +0 -45
  293. package/data/pages/Components/components/svgimage.json +0 -81
  294. package/data/pages/Components/components/switch.json +0 -111
  295. package/data/pages/Components/components/tables.json +0 -144
  296. package/data/pages/Components/components/tagmanager.json +0 -86
  297. package/data/pages/Components/components/tags.json +0 -146
  298. package/data/pages/Components/components/teaser.json +0 -188
  299. package/data/pages/Components/components/timeline.json +0 -45
  300. package/data/pages/Components/components/timepicker.json +0 -163
  301. package/data/pages/Components/components/togglebutton.json +0 -247
  302. package/data/pages/Components/components/tooltip.json +0 -270
  303. package/data/pages/Components/components/virtuallist.json +0 -175
  304. package/data/pages/Foundations/foundations.json +0 -2475
  305. package/data/pages/Getting-started/start/changelog.json +0 -22
  306. package/data/pages/Getting-started/start/goodtoknow.json +0 -32
  307. package/data/pages/Getting-started/start/guidelines/color-combinations.json +0 -58
  308. package/data/pages/Getting-started/start/guidelines/custom-css.json +0 -27
  309. package/data/pages/Getting-started/start/guidelines/custom-rioglyph.json +0 -22
  310. package/data/pages/Getting-started/start/guidelines/formatting.json +0 -97
  311. package/data/pages/Getting-started/start/guidelines/iframe.json +0 -93
  312. package/data/pages/Getting-started/start/guidelines/obfuscate-data.json +0 -22
  313. package/data/pages/Getting-started/start/guidelines/print-css.json +0 -37
  314. package/data/pages/Getting-started/start/guidelines/spinner.json +0 -144
  315. package/data/pages/Getting-started/start/guidelines/supported-browsers.json +0 -22
  316. package/data/pages/Getting-started/start/guidelines/writing.json +0 -242
  317. package/data/pages/Getting-started/start/howto.json +0 -72
  318. package/data/pages/Getting-started/start/intro.json +0 -37
  319. package/data/pages/Getting-started/start/responsiveness.json +0 -52
  320. package/data/pages/Templates/templates/common-table.json +0 -39
  321. package/data/pages/Templates/templates/detail-views.json +0 -71
  322. package/data/pages/Templates/templates/expandable-details.json +0 -39
  323. package/data/pages/Templates/templates/feature-cards.json +0 -103
  324. package/data/pages/Templates/templates/form-summary.json +0 -39
  325. package/data/pages/Templates/templates/form-toggle.json +0 -39
  326. package/data/pages/Templates/templates/list-blocks.json +0 -119
  327. package/data/pages/Templates/templates/loading-progress.json +0 -39
  328. package/data/pages/Templates/templates/options-panel.json +0 -39
  329. package/data/pages/Templates/templates/panel-variants.json +0 -39
  330. package/data/pages/Templates/templates/progress-cards.json +0 -71
  331. package/data/pages/Templates/templates/progress-success.json +0 -39
  332. package/data/pages/Templates/templates/settings-form.json +0 -39
  333. package/data/pages/Templates/templates/stats-blocks.json +0 -135
  334. package/data/pages/Templates/templates/table-panel.json +0 -39
  335. package/data/pages/Templates/templates/table-row-animation.json +0 -39
  336. package/data/pages/Templates/templates/usage-cards.json +0 -39
  337. package/data/pages/Utilities/utilities/deviceutils.json +0 -39
  338. package/data/pages/Utilities/utilities/featuretoggles.json +0 -42
  339. package/data/pages/Utilities/utilities/fueltypeutils.json +0 -118
  340. package/data/pages/Utilities/utilities/routeutils.json +0 -34
  341. package/data/pages/Utilities/utilities/useaftermount.json +0 -63
  342. package/data/pages/Utilities/utilities/useaverage.json +0 -86
  343. package/data/pages/Utilities/utilities/useclickoutside.json +0 -69
  344. package/data/pages/Utilities/utilities/useclipboard.json +0 -57
  345. package/data/pages/Utilities/utilities/usecount.json +0 -92
  346. package/data/pages/Utilities/utilities/usedarkmode.json +0 -50
  347. package/data/pages/Utilities/utilities/usedebuginfo.json +0 -63
  348. package/data/pages/Utilities/utilities/useeffectonce.json +0 -57
  349. package/data/pages/Utilities/utilities/useelapsedtime.json +0 -57
  350. package/data/pages/Utilities/utilities/useelementsize.json +0 -63
  351. package/data/pages/Utilities/utilities/useesc.json +0 -57
  352. package/data/pages/Utilities/utilities/useevent.json +0 -75
  353. package/data/pages/Utilities/utilities/usefocustrap.json +0 -57
  354. package/data/pages/Utilities/utilities/usefullscreen.json +0 -197
  355. package/data/pages/Utilities/utilities/usehover.json +0 -57
  356. package/data/pages/Utilities/utilities/useinterval.json +0 -63
  357. package/data/pages/Utilities/utilities/useisfocuswithin.json +0 -75
  358. package/data/pages/Utilities/utilities/usekey.json +0 -75
  359. package/data/pages/Utilities/utilities/uselocalstorage.json +0 -69
  360. package/data/pages/Utilities/utilities/uselocationsuggestions.json +0 -110
  361. package/data/pages/Utilities/utilities/usemax.json +0 -86
  362. package/data/pages/Utilities/utilities/usemin.json +0 -86
  363. package/data/pages/Utilities/utilities/usemutationobserver.json +0 -69
  364. package/data/pages/Utilities/utilities/useonlinestatus.json +0 -39
  365. package/data/pages/Utilities/utilities/useonscreen.json +0 -63
  366. package/data/pages/Utilities/utilities/usepostmessage.json +0 -80
  367. package/data/pages/Utilities/utilities/useprevious.json +0 -63
  368. package/data/pages/Utilities/utilities/useresizeobserver.json +0 -65
  369. package/data/pages/Utilities/utilities/usescrollposition.json +0 -103
  370. package/data/pages/Utilities/utilities/usesearch.json +0 -197
  371. package/data/pages/Utilities/utilities/usesorting.json +0 -139
  372. package/data/pages/Utilities/utilities/usestatewithvalidation.json +0 -69
  373. package/data/pages/Utilities/utilities/usesum.json +0 -86
  374. package/data/pages/Utilities/utilities/usetableexport.json +0 -87
  375. package/data/pages/Utilities/utilities/usetableselection.json +0 -311
  376. package/data/pages/Utilities/utilities/usetimeout.json +0 -63
  377. package/data/pages/Utilities/utilities/usetoggle.json +0 -75
  378. package/data/pages/Utilities/utilities/usewindowresize.json +0 -63
  379. package/data/version.json +0 -4
  380. package/docs/content-schema.md +0 -147
  381. package/docs/navigation-inventory.json +0 -1310
  382. package/docs/search-synonyms.json +0 -43
  383. package/server/index.mjs +0 -268
  384. package/server/lib/load-docs.mjs +0 -48
  385. package/server/lib/normalise-doc.mjs +0 -220
  386. package/server/lib/render-markdown.mjs +0 -82
  387. package/server/lib/search-index.mjs +0 -49
  388. package/server/lib/types.js +0 -99
@@ -0,0 +1,758 @@
1
+ # FeedbackRating
2
+
3
+ *Category:* Components
4
+ *Section:* Misc
5
+ *Source:* https://uikit.developers.rio.cloud/#components/feedback
6
+ *Captured:* 2025-12-12T14:20:56.783Z
7
+
8
+ ## FeedbackRating
9
+
10
+ ### Example: Extremely dissatisfied
11
+
12
+ How do you feel about this feature
13
+ 12345678910
14
+ Extremely dissatisfiedExtremely satisfied
15
+
16
+ Rate your experience with this feature
17
+
18
+ 12345
19
+
20
+ Give us feedback
21
+
22
+ Rate your experience with our product
23
+ 12345
24
+
25
+ Stars
26
+
27
+ How likely is it that you would recommend us to a friend or colleague?
28
+ 12345678910
29
+ Not likely at allVery likely
30
+
31
+ #### Summary
32
+
33
+ How do you feel about this feature
34
+ 12345678910
35
+ Extremely dissatisfiedExtremely satisfied
36
+
37
+ Rate your experience with this feature
38
+
39
+ 12345
40
+
41
+ Give us feedback
42
+
43
+ Rate your experience with our product
44
+ 12345
45
+
46
+ Stars
47
+
48
+ How likely is it that you would recommend us to a friend or colleague?
49
+ 12345678910
50
+ Not likely at allVery likely
51
+
52
+ #### React (tsx)
53
+
54
+ ```tsx
55
+ import Divider from '@rio-cloud/rio-uikit/Divider';
56
+ import FeedbackRating from '@rio-cloud/rio-uikit/FeedbackRating';
57
+
58
+ export default () => {
59
+ const handleRatingChanged = (value: number | undefined) => {
60
+ console.log(value);
61
+ };
62
+
63
+ return (
64
+ <div>
65
+ <FeedbackRating
66
+ count={10}
67
+ headline='How do you feel about this feature'
68
+ leftLabel='Extremely dissatisfied'
69
+ rightLabel='Extremely satisfied'
70
+ circleButtons
71
+ onRatingChanged={handleRatingChanged}
72
+ />
73
+ <Divider />
74
+ <FeedbackRating
75
+ count={5}
76
+ headline='Rate your experience with this feature'
77
+ leadingIcon={<span className='text-color-gray rioglyph rioglyph-thumbs-down' />}
78
+ trailingIcon={<span className='text-color-gray rioglyph rioglyph-thumbs-up' />}
79
+ onRatingChanged={handleRatingChanged}
80
+ />
81
+ <Divider />
82
+ <FeedbackRating
83
+ count={4}
84
+ headline='Give us feedback'
85
+ buttonClassName='btn-icon-only border-none'
86
+ buttonLabels={[
87
+ <span key='face-frown' className='rioglyph rioglyph-face-frown' />,
88
+ <span key='face-neutral' className='rioglyph rioglyph-face-neutral' />,
89
+ <span key='face-smile' className='rioglyph rioglyph-face-smile' />,
90
+ <span key='face-smile' className='rioglyph rioglyph-heart' />,
91
+ ]}
92
+ onRatingChanged={handleRatingChanged}
93
+ />
94
+ <Divider />
95
+ <FeedbackRating
96
+ count={5}
97
+ headline='Rate your experience with our product'
98
+ trailingIcon={
99
+ <div className='display-flex align-items-center gap-5 margin-left-5 text-size-16'>
100
+ <span className='text-color-success rioglyph rioglyph-star' />
101
+ <span className='text-color-darker'>Stars</span>
102
+ </div>
103
+ }
104
+ onRatingChanged={handleRatingChanged}
105
+ />
106
+ <Divider />
107
+ <FeedbackRating
108
+ count={10}
109
+ headline='How likely is it that you would recommend us to a friend or colleague?'
110
+ leftLabel='Not likely at all'
111
+ rightLabel='Very likely'
112
+ circleButtons
113
+ buttonClassName='btn-outline btn-sm'
114
+ buttonStyles={[
115
+ {
116
+ bsStyle: 'danger',
117
+ },
118
+ {
119
+ bsStyle: 'danger',
120
+ },
121
+ {
122
+ bsStyle: 'danger',
123
+ },
124
+ {
125
+ bsStyle: 'danger',
126
+ },
127
+ {
128
+ bsStyle: 'danger',
129
+ },
130
+ {
131
+ bsStyle: 'danger',
132
+ },
133
+ {
134
+ bsStyle: 'warning',
135
+ },
136
+ {
137
+ bsStyle: 'warning',
138
+ },
139
+ {
140
+ bsStyle: 'success',
141
+ },
142
+ {
143
+ bsStyle: 'success',
144
+ },
145
+ ]}
146
+ onRatingChanged={handleRatingChanged}
147
+ />
148
+ </div>
149
+ );
150
+ };
151
+ ```
152
+
153
+ #### HTML (html)
154
+
155
+ ```html
156
+ <div>
157
+ <div class="FeedbackRating">
158
+ <div class="text-medium text-size-16 margin-bottom-10">How do you feel about this feature</div>
159
+ <div class="display-flex gap-10 align-items-start text-size-14 margin-bottom-25">
160
+ <div>
161
+ <div class="display-flex flex-wrap gap-10">
162
+ <button type="button" class="btn btn-default btn-toggle btn-component rounded-circle aspect-ratio-1 " tabindex="0">1</button>
163
+ <button type="button" class="btn btn-default btn-toggle btn-component rounded-circle aspect-ratio-1 " tabindex="0">2</button>
164
+ <button type="button" class="btn btn-default btn-toggle btn-component rounded-circle aspect-ratio-1 " tabindex="0">3</button>
165
+ <button type="button" class="btn btn-default btn-toggle btn-component rounded-circle aspect-ratio-1 " tabindex="0">4</button>
166
+ <button type="button" class="btn btn-default btn-toggle btn-component rounded-circle aspect-ratio-1 " tabindex="0">5</button>
167
+ <button type="button" class="btn btn-default btn-toggle btn-component rounded-circle aspect-ratio-1 " tabindex="0">6</button>
168
+ <button type="button" class="btn btn-default btn-toggle btn-component rounded-circle aspect-ratio-1 " tabindex="0">7</button>
169
+ <button type="button" class="btn btn-default btn-toggle btn-component rounded-circle aspect-ratio-1 " tabindex="0">8</button>
170
+ <button type="button" class="btn btn-default btn-toggle btn-component rounded-circle aspect-ratio-1 " tabindex="0">9</button>
171
+ <button type="button" class="btn btn-default btn-toggle btn-component rounded-circle aspect-ratio-1 " tabindex="0">10</button>
172
+ </div>
173
+ <div class="display-flex justify-content-between margin-top-5 gap-25">
174
+ <label class="word-wrap text-color-dark">Extremely dissatisfied</label>
175
+ <label class="word-wrap text-color-dark">Extremely satisfied</label>
176
+ </div>
177
+ </div>
178
+ </div>
179
+ </div>
180
+ <div class="Divider position-relative width-100pct" style="padding-top: 15px; padding-bottom: 15px;">
181
+ <div class="divider-line bg-light" style="width: 100%; height: 1px;">
182
+ </div>
183
+ </div>
184
+ <div class="FeedbackRating">
185
+ <div class="text-medium text-size-16 margin-bottom-10">Rate your experience with this feature</div>
186
+ <div class="display-flex gap-10 align-items-center text-size-14 margin-bottom-25">
187
+ <div class="display-flex align-items-center text-size-200pct">
188
+ <span class="text-color-gray rioglyph rioglyph-thumbs-down">
189
+ </span>
190
+ </div>
191
+ <div>
192
+ <div class="display-flex flex-wrap gap-10">
193
+ <button type="button" class="btn btn-default btn-toggle btn-component " tabindex="0">1</button>
194
+ <button type="button" class="btn btn-default btn-toggle btn-component " tabindex="0">2</button>
195
+ <button type="button" class="btn btn-default btn-toggle btn-component " tabindex="0">3</button>
196
+ <button type="button" class="btn btn-default btn-toggle btn-component " tabindex="0">4</button>
197
+ <button type="button" class="btn btn-default btn-toggle btn-component " tabindex="0">5</button>
198
+ </div>
199
+ </div>
200
+ <div class="display-flex align-items-center text-size-200pct">
201
+ <span class="text-color-gray rioglyph rioglyph-thumbs-up">
202
+ </span>
203
+ </div>
204
+ </div>
205
+ </div>
206
+ <div class="Divider position-relative width-100pct" style="padding-top: 15px; padding-bottom: 15px;">
207
+ <div class="divider-line bg-light" style="width: 100%; height: 1px;">
208
+ </div>
209
+ </div>
210
+ <div class="FeedbackRating">
211
+ <div class="text-medium text-size-16 margin-bottom-10">Give us feedback</div>
212
+ <div class="display-flex gap-10 align-items-center text-size-14 margin-bottom-25">
213
+ <div>
214
+ <div class="display-flex flex-wrap gap-10">
215
+ <button type="button" class="btn btn-default btn-toggle btn-component btn-icon-only border-none " tabindex="0">
216
+ <span class="rioglyph rioglyph-face-frown">
217
+ </span>
218
+ </button>
219
+ <button type="button" class="btn btn-default btn-toggle btn-component btn-icon-only border-none " tabindex="0">
220
+ <span class="rioglyph rioglyph-face-neutral">
221
+ </span>
222
+ </button>
223
+ <button type="button" class="btn btn-default btn-toggle btn-component btn-icon-only border-none " tabindex="0">
224
+ <span class="rioglyph rioglyph-face-smile">
225
+ </span>
226
+ </button>
227
+ <button type="button" class="btn btn-default btn-toggle btn-component btn-icon-only border-none " tabindex="0">
228
+ <span class="rioglyph rioglyph-heart">
229
+ </span>
230
+ </button>
231
+ </div>
232
+ </div>
233
+ </div>
234
+ </div>
235
+ <div class="Divider position-relative width-100pct" style="padding-top: 15px; padding-bottom: 15px;">
236
+ <div class="divider-line bg-light" style="width: 100%; height: 1px;">
237
+ </div>
238
+ </div>
239
+ <div class="FeedbackRating">
240
+ <div class="text-medium text-size-16 margin-bottom-10">Rate your experience with our product</div>
241
+ <div class="display-flex gap-10 align-items-center text-size-14 margin-bottom-25">
242
+ <div>
243
+ <div class="display-flex flex-wrap gap-10">
244
+ <button type="button" class="btn btn-default btn-toggle btn-component " tabindex="0">1</button>
245
+ <button type="button" class="btn btn-default btn-toggle btn-component " tabindex="0">2</button>
246
+ <button type="button" class="btn btn-default btn-toggle btn-component " tabindex="0">3</button>
247
+ <button type="button" class="btn btn-default btn-toggle btn-component " tabindex="0">4</button>
248
+ <button type="button" class="btn btn-default btn-toggle btn-component " tabindex="0">5</button>
249
+ </div>
250
+ </div>
251
+ <div class="display-flex align-items-center text-size-200pct">
252
+ <div class="display-flex align-items-center gap-5 margin-left-5 text-size-16">
253
+ <span class="text-color-success rioglyph rioglyph-star">
254
+ </span>
255
+ <span class="text-color-darker">Stars</span>
256
+ </div>
257
+ </div>
258
+ </div>
259
+ </div>
260
+ <div class="Divider position-relative width-100pct" style="padding-top: 15px; padding-bottom: 15px;">
261
+ <div class="divider-line bg-light" style="width: 100%; height: 1px;">
262
+ </div>
263
+ </div>
264
+ <div class="FeedbackRating">
265
+ <div class="text-medium text-size-16 margin-bottom-10">How likely is it that you would recommend us to a friend or colleague?</div>
266
+ <div class="display-flex gap-10 align-items-start text-size-14 margin-bottom-25">
267
+ <div>
268
+ <div class="display-flex flex-wrap gap-10">
269
+ <button type="button" class="btn btn-danger btn-toggle btn-component rounded-circle aspect-ratio-1 btn-outline btn-sm " tabindex="0">1</button>
270
+ <button type="button" class="btn btn-danger btn-toggle btn-component rounded-circle aspect-ratio-1 btn-outline btn-sm " tabindex="0">2</button>
271
+ <button type="button" class="btn btn-danger btn-toggle btn-component rounded-circle aspect-ratio-1 btn-outline btn-sm " tabindex="0">3</button>
272
+ <button type="button" class="btn btn-danger btn-toggle btn-component rounded-circle aspect-ratio-1 btn-outline btn-sm " tabindex="0">4</button>
273
+ <button type="button" class="btn btn-danger btn-toggle btn-component rounded-circle aspect-ratio-1 btn-outline btn-sm " tabindex="0">5</button>
274
+ <button type="button" class="btn btn-danger btn-toggle btn-component rounded-circle aspect-ratio-1 btn-outline btn-sm " tabindex="0">6</button>
275
+ <button type="button" class="btn btn-warning btn-toggle btn-component rounded-circle aspect-ratio-1 btn-outline btn-sm " tabindex="0">7</button>
276
+ <button type="button" class="btn btn-warning btn-toggle btn-component rounded-circle aspect-ratio-1 btn-outline btn-sm " tabindex="0">8</button>
277
+ <button type="button" class="btn btn-success btn-toggle btn-component rounded-circle aspect-ratio-1 btn-outline btn-sm " tabindex="0">9</button>
278
+ <button type="button" class="btn btn-success btn-toggle btn-component rounded-circle aspect-ratio-1 btn-outline btn-sm " tabindex="0">10</button>
279
+ </div>
280
+ <div class="display-flex justify-content-between margin-top-5 gap-25">
281
+ <label class="word-wrap text-color-dark">Not likely at all</label>
282
+ <label class="word-wrap text-color-dark">Very likely</label>
283
+ </div>
284
+ </div>
285
+ </div>
286
+ </div>
287
+ </div>
288
+ ```
289
+
290
+ #### Props
291
+
292
+ | Name | Type | Default | Description |
293
+ | --- | --- | --- | --- |
294
+ | headline | ReactNode | — | Optional headline |
295
+ | circleButtons | Boolean | false | Defines whether the buttons are round. |
296
+ | buttonClassName | String | — | Optional class names applied to the individual buttons. |
297
+ | buttonLabels | ReactNode[] | — | Array of button labels that will be used instead of the index. There needs to be a label for each button defined. |
298
+ | buttonStyles | { bsSize?: BUTTON_SIZE; bsStyle?: BUTTON_STYLE; variant?: BUTTON_VARIANT, className?: string }[] | — | Array of button styles to individually define the button size, style and variant. There needs to be a item for each button defined. See Button component. |
299
+ | leftLabel | ReactNode | — | Left aligned label to name the lowest rating option. |
300
+ | rightLabel | ReactNode | — | Right aligned label to name the highest rating option. |
301
+ | leadingIcon | ReactNode | — | Additional icon placed in front of the rating buttons. |
302
+ | trailingIcon | ReactNode | — | Additional icon placed after the rating buttons. |
303
+ | onRatingChanged | (rating: number \| undefined) => void | — | Callback triggered when the rating changes. |
304
+
305
+ ## FeedbackInlineButtons
306
+
307
+ ### Example: Was this helpful?
308
+
309
+ Subtle request for usefulness
310
+ Was this helpful?
311
+ Not reallyKind ofYes, it was
312
+
313
+ Reset
314
+
315
+ Another variation of inline request for usefulness
316
+
317
+ Helpful
318
+
319
+ Not helpful
320
+
321
+ Reset
322
+
323
+ #### Summary
324
+
325
+ Subtle request for usefulness
326
+ Was this helpful?
327
+ Not reallyKind ofYes, it was
328
+
329
+ Reset
330
+
331
+ Another variation of inline request for usefulness
332
+
333
+ Helpful
334
+
335
+ Not helpful
336
+
337
+ Reset
338
+
339
+ #### React (tsx)
340
+
341
+ ```tsx
342
+ import { useRef, useState } from 'react';
343
+
344
+ import { motion } from '@rio-cloud/rio-uikit/motion';
345
+ import Button from '@rio-cloud/rio-uikit/Button';
346
+ import Fade from '@rio-cloud/rio-uikit/Fade';
347
+ import FeedbackInlineButtons from '@rio-cloud/rio-uikit/FeedbackInlineButtons';
348
+ import Divider from '@rio-cloud/rio-uikit/Divider';
349
+ import useHover from '@rio-cloud/rio-uikit/useHover';
350
+
351
+ export default () => {
352
+ const [hasVoted, setHasVoted] = useState(false);
353
+ const [hasVoted2, setHasVoted2] = useState(false);
354
+
355
+ const handleVote = () => setHasVoted(true);
356
+ const handleVote2 = () => setHasVoted2(true);
357
+
358
+ return (
359
+ <div>
360
+ <h5 className='margin-bottom-20'>Subtle request for usefulness</h5>
361
+ <div className='height-40 display-flex align-items-center'>
362
+ <Fade>
363
+ {hasVoted ? (
364
+ <motion.div
365
+ initial={{ opacity: 0, x: 20 }}
366
+ animate={{ opacity: 1, x: 0 }}
367
+ className='display-flex gap-5 align-items-center'
368
+ >
369
+ <div className='text-color-success text-size-18 line-height-20'>
370
+ <span className='rioglyph rioglyph-ok-sign' />
371
+ </div>
372
+ <div className='text-color-dark'>Thank you for your feedback</div>
373
+ </motion.div>
374
+ ) : (
375
+ <FeedbackInlineButtons
376
+ headline='Was this helpful?'
377
+ buttons={[
378
+ <Button key='no' bsStyle='muted' bsSize='sm' onClick={handleVote}>
379
+ <span className='rioglyph rioglyph-face-frown text-color-danger' />
380
+ <span>Not really</span>
381
+ </Button>,
382
+ <Button key='kinda' bsStyle='muted' bsSize='sm' onClick={handleVote}>
383
+ <span className='rioglyph rioglyph-face-neutral text-color-warning' />
384
+ <span>Kind of</span>
385
+ </Button>,
386
+ <Button key='yes' bsStyle='muted' bsSize='sm' onClick={handleVote}>
387
+ <span className='rioglyph rioglyph-face-smile text-color-success' />
388
+ <span>Yes, it was</span>
389
+ </Button>,
390
+ ]}
391
+ />
392
+ )}
393
+ </Fade>
394
+ </div>
395
+ <Button bsSize='sm' className='margin-top-25' onClick={() => setHasVoted(false)}>
396
+ Reset
397
+ </Button>
398
+ <Divider />
399
+ <h5 className='margin-bottom-20'>Another variation of inline request for usefulness</h5>
400
+ <div className='height-40 display-flex align-items-center'>
401
+ <Fade>
402
+ {hasVoted2 ? (
403
+ <motion.div
404
+ initial={{ opacity: 0, x: 20 }}
405
+ animate={{ opacity: 1, x: 0 }}
406
+ className='display-flex gap-5 align-items-center'
407
+ >
408
+ <div className='text-color-success text-size-18 line-height-20'>
409
+ <span className='rioglyph rioglyph-ok-sign' />
410
+ </div>
411
+ <div className='text-color-dark'>Thank you for your feedback</div>
412
+ </motion.div>
413
+ ) : (
414
+ <FeedbackInlineButtons
415
+ buttons={[
416
+ <CustomInlineButton
417
+ key='1'
418
+ onClick={handleVote2}
419
+ icon='rioglyph-thumbs-up'
420
+ text='Helpful'
421
+ />,
422
+ <CustomInlineButton
423
+ key='2'
424
+ onClick={handleVote2}
425
+ icon='rioglyph-thumbs-down'
426
+ text='Not helpful'
427
+ className='margin-left-10'
428
+ />,
429
+ ]}
430
+ />
431
+ )}
432
+ </Fade>
433
+ </div>
434
+ <Button bsSize='sm' className='margin-top-25' onClick={() => setHasVoted2(false)}>
435
+ Reset
436
+ </Button>
437
+ </div>
438
+ );
439
+ };
440
+
441
+ type CustomInlineButtonProps = {
442
+ onClick: VoidFunction;
443
+ icon: string;
444
+ text: string;
445
+ className?: string;
446
+ };
447
+
448
+ const CustomInlineButton = (props: CustomInlineButtonProps) => {
449
+ const { onClick, icon, text, className = '' } = props;
450
+
451
+ const ref = useRef<HTMLDivElement>(null);
452
+ const isHover = useHover(ref);
453
+ return (
454
+ <div
455
+ ref={ref}
456
+ className={`height-30 display-flex align-items-center rounded text-color-dark hover-text-color-darker cursor-pointer ${className}`}
457
+ onClick={onClick}
458
+ >
459
+ <div className='height-25 aspect-ratio-1 bg-lightest rounded-circle display-flex justify-content-center align-items-center'>
460
+ <span
461
+ className={`rioglyph ${icon} text-size-20 ${isHover ? 'text-color-darker' : 'text-color-dark'}`}
462
+ />
463
+ </div>
464
+ <span className='padding-x-5'>{text}</span>
465
+ </div>
466
+ );
467
+ };
468
+ ```
469
+
470
+ #### HTML (html)
471
+
472
+ ```html
473
+ <div>
474
+ <h5 class="margin-bottom-20">Subtle request for usefulness</h5>
475
+ <div class="height-40 display-flex align-items-center">
476
+ <div style="opacity: 1; transform: none;">
477
+ <div class="display-flex flex-wrap align-items-center column-gap-15 row-gap-5 user-select-none">
478
+ <div class="text-color-dark">Was this helpful?</div>
479
+ <div class="btn-toolbar gap-5">
480
+ <button type="button" class="btn btn-muted btn-sm btn-component" tabindex="0">
481
+ <span class="rioglyph rioglyph-face-frown text-color-danger">
482
+ </span>
483
+ <span>Not really</span>
484
+ </button>
485
+ <button type="button" class="btn btn-muted btn-sm btn-component" tabindex="0">
486
+ <span class="rioglyph rioglyph-face-neutral text-color-warning">
487
+ </span>
488
+ <span>Kind of</span>
489
+ </button>
490
+ <button type="button" class="btn btn-muted btn-sm btn-component" tabindex="0">
491
+ <span class="rioglyph rioglyph-face-smile text-color-success">
492
+ </span>
493
+ <span>Yes, it was</span>
494
+ </button>
495
+ </div>
496
+ </div>
497
+ </div>
498
+ </div>
499
+ <button type="button" class="btn btn-default btn-sm btn-component margin-top-25" tabindex="0">Reset</button>
500
+ <div class="Divider position-relative width-100pct" style="padding-top: 15px; padding-bottom: 15px;">
501
+ <div class="divider-line bg-light" style="width: 100%; height: 1px;">
502
+ </div>
503
+ </div>
504
+ <h5 class="margin-bottom-20">Another variation of inline request for usefulness</h5>
505
+ <div class="height-40 display-flex align-items-center">
506
+ <div style="opacity: 1; transform: none;">
507
+ <div class="display-flex flex-wrap align-items-center column-gap-15 row-gap-5 user-select-none">
508
+ <div class="btn-toolbar gap-5">
509
+ <div class="height-30 display-flex align-items-center rounded text-color-dark hover-text-color-darker cursor-pointer ">
510
+ <div class="height-25 aspect-ratio-1 bg-lightest rounded-circle display-flex justify-content-center align-items-center">
511
+ <span class="rioglyph rioglyph-thumbs-up text-size-20 text-color-dark">
512
+ </span>
513
+ </div>
514
+ <span class="padding-x-5">Helpful</span>
515
+ </div>
516
+ <div class="height-30 display-flex align-items-center rounded text-color-dark hover-text-color-darker cursor-pointer margin-left-10">
517
+ <div class="height-25 aspect-ratio-1 bg-lightest rounded-circle display-flex justify-content-center align-items-center">
518
+ <span class="rioglyph rioglyph-thumbs-down text-size-20 text-color-dark">
519
+ </span>
520
+ </div>
521
+ <span class="padding-x-5">Not helpful</span>
522
+ </div>
523
+ </div>
524
+ </div>
525
+ </div>
526
+ </div>
527
+ <button type="button" class="btn btn-default btn-sm btn-component margin-top-25" tabindex="0">Reset</button>
528
+ </div>
529
+ ```
530
+
531
+ #### Props
532
+
533
+ | Name | Type | Default | Description |
534
+ | --- | --- | --- | --- |
535
+ | headline | ReactNode | — | Optional headline |
536
+ | buttons | ReactNode[] | — | List of buttons to be shown. |
537
+
538
+ ## FeedbackReactions
539
+
540
+ ### Example: Example 3
541
+
542
+ Simple reaction without labels
543
+
544
+ Simple reaction without labels and hover colors
545
+
546
+ Small filled reaction with labels right
547
+ Bad
548
+
549
+ Good
550
+
551
+ Animated reaction with labels
552
+ Nicht interessant für mich
553
+
554
+ Ich möchte mehr erfahren
555
+
556
+ #### Summary
557
+
558
+ Simple reaction without labels
559
+
560
+ Simple reaction without labels and hover colors
561
+
562
+ Small filled reaction with labels right
563
+ Bad
564
+
565
+ Good
566
+
567
+ Animated reaction with labels
568
+ Nicht interessant für mich
569
+
570
+ Ich möchte mehr erfahren
571
+
572
+ #### React (tsx)
573
+
574
+ ```tsx
575
+ import { useState } from 'react';
576
+
577
+ import Divider from '@rio-cloud/rio-uikit/Divider';
578
+ import FeedbackReactions from '@rio-cloud/rio-uikit/FeedbackReactions';
579
+
580
+ export default () => {
581
+ const [hasVoted, setHasVoted] = useState(false);
582
+
583
+ const handleVote = () => {
584
+ setHasVoted(true);
585
+ };
586
+
587
+ return (
588
+ <div>
589
+ <label>Simple reaction without labels</label>
590
+ <div className='max-width-400 padding-15'>
591
+ <FeedbackReactions
592
+ onVoteUp={() => console.log('Voted up')}
593
+ onVoteDown={() => console.log('Voted down')}
594
+ />
595
+ </div>
596
+ <Divider />
597
+ <label>Simple reaction without labels and hover colors</label>
598
+ <div className='max-width-400 padding-15'>
599
+ <FeedbackReactions
600
+ onVoteUp={() => console.log('Voted up')}
601
+ onVoteDown={() => console.log('Voted down')}
602
+ colorHoverUp='success'
603
+ colorHoverDown='warning'
604
+ />
605
+ </div>
606
+ <Divider />
607
+ <label>Small filled reaction with labels right</label>
608
+ <div className='max-width-300 padding-15'>
609
+ <FeedbackReactions
610
+ onVoteUp={() => console.log('Voted up')}
611
+ onVoteDown={() => console.log('Voted down')}
612
+ labelPosition='right'
613
+ colorFillUp='success'
614
+ colorFillDown='warning'
615
+ colorHoverUp='white'
616
+ colorHoverDown='white'
617
+ labelUp={<span className='text-color-darker'>Good</span>}
618
+ labelDown={<span className='text-color-darker'>Bad</span>}
619
+ itemClassName='hover-bg-lightest rounded padding-5'
620
+ size='sm'
621
+ />
622
+ </div>
623
+ <Divider />
624
+ <label>Animated reaction with labels</label>
625
+ <div className='max-width-300 padding-15'>
626
+ <FeedbackReactions
627
+ onVoteUp={() => console.log('Voted up')}
628
+ onVoteDown={() => console.log('Voted down')}
629
+ labelUp='Ich möchte mehr erfahren'
630
+ labelDown='Nicht interessant für mich'
631
+ animated
632
+ />
633
+ </div>
634
+ </div>
635
+ );
636
+ };
637
+ ```
638
+
639
+ #### HTML (html)
640
+
641
+ ```html
642
+ <div>
643
+ <label>Simple reaction without labels</label>
644
+ <div class="max-width-400 padding-15">
645
+ <div class="display-flex gap-15 padding-top-5 user-select-none">
646
+ <div class="display-flex gap-10 flex-column align-items-center text-center cursor-pointer">
647
+ <div class="width-50 aspect-ratio-1 border rounded-circle bg-lightest border-color-lightest display-grid place-items-center text-size-14">
648
+ <span class="rioglyph rioglyph-thumbs-down text-size-200pct" style="transform: none;">
649
+ </span>
650
+ </div>
651
+ <div class="text-wrap-balance line-height-125rel text-medium text-color-darker">
652
+ </div>
653
+ </div>
654
+ <div class="display-flex gap-10 flex-column align-items-center text-center cursor-pointer">
655
+ <div class="width-50 aspect-ratio-1 border rounded-circle bg-lightest border-color-lightest display-grid place-items-center text-size-14">
656
+ <span class="rioglyph rioglyph-thumbs-up text-size-200pct" style="transform: none;">
657
+ </span>
658
+ </div>
659
+ <div class="text-wrap-balance line-height-125rel text-medium text-color-darker">
660
+ </div>
661
+ </div>
662
+ </div>
663
+ </div>
664
+ <div class="Divider position-relative width-100pct" style="padding-top: 15px; padding-bottom: 15px;">
665
+ <div class="divider-line bg-light" style="width: 100%; height: 1px;">
666
+ </div>
667
+ </div>
668
+ <label>Simple reaction without labels and hover colors</label>
669
+ <div class="max-width-400 padding-15">
670
+ <div class="display-flex gap-15 padding-top-5 user-select-none">
671
+ <div class="display-flex gap-10 flex-column align-items-center text-center cursor-pointer">
672
+ <div class="width-50 aspect-ratio-1 border rounded-circle bg-lightest border-color-lightest display-grid place-items-center text-size-14">
673
+ <span class="rioglyph rioglyph-thumbs-down text-size-200pct" style="transform: none;">
674
+ </span>
675
+ </div>
676
+ <div class="text-wrap-balance line-height-125rel text-medium text-color-darker">
677
+ </div>
678
+ </div>
679
+ <div class="display-flex gap-10 flex-column align-items-center text-center cursor-pointer">
680
+ <div class="width-50 aspect-ratio-1 border rounded-circle bg-lightest border-color-lightest display-grid place-items-center text-size-14">
681
+ <span class="rioglyph rioglyph-thumbs-up text-size-200pct" style="transform: none;">
682
+ </span>
683
+ </div>
684
+ <div class="text-wrap-balance line-height-125rel text-medium text-color-darker">
685
+ </div>
686
+ </div>
687
+ </div>
688
+ </div>
689
+ <div class="Divider position-relative width-100pct" style="padding-top: 15px; padding-bottom: 15px;">
690
+ <div class="divider-line bg-light" style="width: 100%; height: 1px;">
691
+ </div>
692
+ </div>
693
+ <label>Small filled reaction with labels right</label>
694
+ <div class="max-width-300 padding-15">
695
+ <div class="display-grid grid-cols-2 gap-15 padding-top-5 user-select-none">
696
+ <div class="display-flex gap-10 align-items-center text-center cursor-pointer hover-bg-lightest rounded padding-5">
697
+ <div class="width-40 aspect-ratio-1 border rounded-circle bg-warning text-color-white border-color-lightest display-grid place-items-center text-size-14">
698
+ <span class="rioglyph rioglyph-thumbs-down text-size-200pct" style="transform: none;">
699
+ </span>
700
+ </div>
701
+ <div class="text-wrap-balance line-height-125rel text-medium text-color-darker">
702
+ <span class="text-color-darker">Bad</span>
703
+ </div>
704
+ </div>
705
+ <div class="display-flex gap-10 align-items-center text-center cursor-pointer hover-bg-lightest rounded padding-5">
706
+ <div class="width-40 aspect-ratio-1 border rounded-circle bg-success text-color-white border-color-lightest display-grid place-items-center text-size-14">
707
+ <span class="rioglyph rioglyph-thumbs-up text-size-200pct" style="transform: none;">
708
+ </span>
709
+ </div>
710
+ <div class="text-wrap-balance line-height-125rel text-medium text-color-darker">
711
+ <span class="text-color-darker">Good</span>
712
+ </div>
713
+ </div>
714
+ </div>
715
+ </div>
716
+ <div class="Divider position-relative width-100pct" style="padding-top: 15px; padding-bottom: 15px;">
717
+ <div class="divider-line bg-light" style="width: 100%; height: 1px;">
718
+ </div>
719
+ </div>
720
+ <label>Animated reaction with labels</label>
721
+ <div class="max-width-300 padding-15">
722
+ <div class="display-grid grid-cols-2 gap-15 padding-top-5 user-select-none">
723
+ <div class="display-flex gap-10 flex-column align-items-center text-center cursor-pointer">
724
+ <div class="width-50 aspect-ratio-1 border rounded-circle bg-lightest border-color-lightest display-grid place-items-center text-size-14">
725
+ <span class="rioglyph rioglyph-thumbs-down text-size-200pct" style="transform: none;">
726
+ </span>
727
+ </div>
728
+ <div class="text-wrap-balance line-height-125rel text-medium text-color-darker">Nicht interessant für mich</div>
729
+ </div>
730
+ <div class="display-flex gap-10 flex-column align-items-center text-center cursor-pointer">
731
+ <div class="width-50 aspect-ratio-1 border rounded-circle bg-lightest border-color-lightest display-grid place-items-center text-size-14">
732
+ <span class="rioglyph rioglyph-thumbs-up text-size-200pct" style="transform: none;">
733
+ </span>
734
+ </div>
735
+ <div class="text-wrap-balance line-height-125rel text-medium text-color-darker">Ich möchte mehr erfahren</div>
736
+ </div>
737
+ </div>
738
+ </div>
739
+ </div>
740
+ ```
741
+
742
+ #### Props
743
+
744
+ | Name | Type | Default | Description |
745
+ | --- | --- | --- | --- |
746
+ | headline | ReactNode | — | Optional headline |
747
+ | size | "sm" \| "md" | — | Size of the reaction buttons. |
748
+ | labelPosition | "bottom" \| "right" | bottom | Position of the reaction button labels. |
749
+ | labelUp | ReactNode | — | Label for the up button. |
750
+ | labelDown | ReactNode | — | Label for the down button. |
751
+ | colorFillUp | string | bg-lightest | Custom fill color for the up button. |
752
+ | colorFillDown | string | bg-lightest | Custom fill color for the down button. |
753
+ | colorHoverUp | string | primary | Custom hover color for the up button. |
754
+ | colorHoverDown | string | primary | Custom hover color for the down button. |
755
+ | onVoteUp | VoidFunction | — | Callback function triggered on up vote. |
756
+ | onVoteDown | VoidFunction | — | Callback function triggered on down vote. |
757
+ | itemClassName | string | — | Additional classes applied to the individual reaction item (button and label). |
758
+ | animated | boolean | false | Defines whether the reaction icon is animated. |