@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,1271 @@
1
+ # RadioButton
2
+
3
+ *Category:* Components
4
+ *Section:* Interaction
5
+ *Source:* https://uikit.developers.rio.cloud/#components/radiobutton
6
+ *Captured:* 2025-12-12T14:20:22.899Z
7
+
8
+ NoteWhen using the custom option, make sure to wrap the children with the class name radio-text-wrapper. For using the radio tick, use an element with class name radio-text.
9
+
10
+ ## RadioButton
11
+
12
+ ### Example: Example 1
13
+
14
+ Option one is selected by default
15
+ Option two can be something else and selecting it will deselect option one
16
+ Option three is disabled
17
+ 123
18
+ Km
19
+ Miles
20
+
21
+ #### Summary
22
+
23
+ Option one is selected by default
24
+ Option two can be something else and selecting it will deselect option one
25
+ Option three is disabled
26
+ 123
27
+ Km
28
+ Miles
29
+
30
+ #### React (tsx)
31
+
32
+ ```tsx
33
+ import RadioButton from '@rio-cloud/rio-uikit/RadioButton';
34
+
35
+ export default () => (
36
+ <div>
37
+ <div>
38
+ <RadioButton name='radios' id='optionsRadios1' value='option1' defaultChecked>
39
+ Option one is selected by default
40
+ </RadioButton>
41
+ </div>
42
+ <div>
43
+ <RadioButton name='radios' id='optionsRadios2' value='option2'>
44
+ Option two can be something else and selecting it will deselect option one
45
+ </RadioButton>
46
+ </div>
47
+ <div>
48
+ <RadioButton name='radios' id='optionsRadios3' value='option3' disabled>
49
+ Option three is disabled
50
+ </RadioButton>
51
+ </div>
52
+
53
+ <hr />
54
+
55
+ <div>
56
+ <RadioButton name='radiosInline' id='1' inline>
57
+ 1
58
+ </RadioButton>
59
+ <RadioButton name='radiosInline' id='2' inline>
60
+ 2
61
+ </RadioButton>
62
+ <RadioButton name='radiosInline' id='3' inline>
63
+ 3
64
+ </RadioButton>
65
+ </div>
66
+
67
+ <hr />
68
+
69
+ <div>
70
+ <RadioButton name='radiosRight' id='km' right inline>
71
+ Km
72
+ </RadioButton>
73
+ </div>
74
+ <div>
75
+ <RadioButton name='radiosRight' id='miles' right inline>
76
+ Miles
77
+ </RadioButton>
78
+ </div>
79
+ </div>
80
+ );
81
+ ```
82
+
83
+ #### HTML (html)
84
+
85
+ ```html
86
+ <div>
87
+ <div>
88
+ <label id="optionsRadios1" class="radio" tabindex="0">
89
+ <input type="radio" class="" name="radios" value="option1" checked="">
90
+ <span class="radio-text">
91
+ <span>Option one is selected by default</span>
92
+ </span>
93
+ </label>
94
+ </div>
95
+ <div>
96
+ <label id="optionsRadios2" class="radio" tabindex="0">
97
+ <input type="radio" class="" name="radios" value="option2">
98
+ <span class="radio-text">
99
+ <span>Option two can be something else and selecting it will deselect option one</span>
100
+ </span>
101
+ </label>
102
+ </div>
103
+ <div>
104
+ <label id="optionsRadios3" class="radio" tabindex="0">
105
+ <input type="radio" disabled="" class="" name="radios" value="option3">
106
+ <span class="radio-text">
107
+ <span>Option three is disabled</span>
108
+ </span>
109
+ </label>
110
+ </div>
111
+ <hr>
112
+ <div>
113
+ <label id="1" class="radio radio-inline" tabindex="0">
114
+ <input type="radio" class="" name="radiosInline" value="">
115
+ <span class="radio-text">
116
+ <span>1</span>
117
+ </span>
118
+ </label>
119
+ <label id="2" class="radio radio-inline" tabindex="0">
120
+ <input type="radio" class="" name="radiosInline" value="">
121
+ <span class="radio-text">
122
+ <span>2</span>
123
+ </span>
124
+ </label>
125
+ <label id="3" class="radio radio-inline" tabindex="0">
126
+ <input type="radio" class="" name="radiosInline" value="">
127
+ <span class="radio-text">
128
+ <span>3</span>
129
+ </span>
130
+ </label>
131
+ </div>
132
+ <hr>
133
+ <div>
134
+ <label id="km" class="radio radio-inline" tabindex="0">
135
+ <input type="radio" class="icon-right" name="radiosRight" value="">
136
+ <span class="radio-text">
137
+ <span>Km</span>
138
+ </span>
139
+ </label>
140
+ </div>
141
+ <div>
142
+ <label id="miles" class="radio radio-inline" tabindex="0">
143
+ <input type="radio" class="icon-right" name="radiosRight" value="">
144
+ <span class="radio-text">
145
+ <span>Miles</span>
146
+ </span>
147
+ </label>
148
+ </div>
149
+ </div>
150
+ ```
151
+
152
+ #### Props
153
+
154
+ | Name | Type | Default | Description |
155
+ | --- | --- | --- | --- |
156
+ | label | String / Node | — | Defines the label text. |
157
+ | defaultChecked | Boolean | — | Defines whether the radio is initially checked or not (state can be changed on click). |
158
+ | checked | Boolean | — | Defines whether the radio is checked or not (for controlled usage). |
159
+ | disabled | Boolean | false | Defines whether the checkbox is disabled or not. |
160
+ | inline | Boolean | false | Defines whether the radio button is applying an inline style. Use this in combinationwith other radio buttons. |
161
+ | right | Boolean | false | Displays the icon on the right side of the text. |
162
+ | custom | Boolean | false | Allows for rendering a completely different layout with or without a radio tick. |
163
+ | tabIndex | Number | 0 | The tabindex attribute allows developers to make HTML elements focusable, allow or prevent them from being sequentially focusable (usually with the Tab key, hence the name) and determine their relative ordering for sequential focus navigation. See tabIndex |
164
+ | inputRef | Ref | — | Ref which is added to the input element. |
165
+ | onClick | Function | () => {} | Callback function that is invoked when the radio button is clicked. |
166
+ | onChange | Function | () => {} | Callback function that is invoked when the radio button is clicked and the state changes (for controlled usage). |
167
+ | className | String | — | Additional classes to be set on the input element. |
168
+ | children | any | — | Any element to be rendered inside the text element. |
169
+ | icon | String | — | Define any rioglyph icon like "rioglyph-truck". |
170
+ | iconSize | Number | — | The icon Size in px. |
171
+ | name | String | — | Name to be given to the input element. |
172
+ | iconLabelPosition | String | — | The label position. Possible values are: "horizontal" or "vertical". |
173
+
174
+ ## Controlled example
175
+
176
+ ### Example: Example 2
177
+
178
+ Option 1Option 2Option 3
179
+
180
+ #### Summary
181
+
182
+ Option 1Option 2Option 3
183
+
184
+ #### React (tsx)
185
+
186
+ ```tsx
187
+ import { useState } from 'react';
188
+
189
+ import RadioButton from '@rio-cloud/rio-uikit/RadioButton';
190
+
191
+ export default () => {
192
+ const [selectedOption, setSelectedOption] = useState(1);
193
+
194
+ return (
195
+ <div>
196
+ <RadioButton name='radioGroup' onChange={() => setSelectedOption(1)} checked={selectedOption === 1} inline>
197
+ Option 1
198
+ </RadioButton>
199
+
200
+ <RadioButton name='radioGroup' onChange={() => setSelectedOption(2)} checked={selectedOption === 2} inline>
201
+ Option 2
202
+ </RadioButton>
203
+
204
+ <RadioButton name='radioGroup' onChange={() => setSelectedOption(3)} checked={selectedOption === 3} inline>
205
+ Option 3
206
+ </RadioButton>
207
+ </div>
208
+ );
209
+ };
210
+ ```
211
+
212
+ #### HTML (html)
213
+
214
+ ```html
215
+ <div>
216
+ <label class="radio radio-inline" tabindex="0">
217
+ <input type="radio" class="" name="radioGroup" value="" checked="">
218
+ <span class="radio-text">
219
+ <span>Option 1</span>
220
+ </span>
221
+ </label>
222
+ <label class="radio radio-inline" tabindex="0">
223
+ <input type="radio" class="" name="radioGroup" value="">
224
+ <span class="radio-text">
225
+ <span>Option 2</span>
226
+ </span>
227
+ </label>
228
+ <label class="radio radio-inline" tabindex="0">
229
+ <input type="radio" class="" name="radioGroup" value="">
230
+ <span class="radio-text">
231
+ <span>Option 3</span>
232
+ </span>
233
+ </label>
234
+ </div>
235
+ ```
236
+
237
+ #### Props
238
+
239
+ | Name | Type | Default | Description |
240
+ | --- | --- | --- | --- |
241
+ | label | String / Node | — | Defines the label text. |
242
+ | defaultChecked | Boolean | — | Defines whether the radio is initially checked or not (state can be changed on click). |
243
+ | checked | Boolean | — | Defines whether the radio is checked or not (for controlled usage). |
244
+ | disabled | Boolean | false | Defines whether the checkbox is disabled or not. |
245
+ | inline | Boolean | false | Defines whether the radio button is applying an inline style. Use this in combinationwith other radio buttons. |
246
+ | right | Boolean | false | Displays the icon on the right side of the text. |
247
+ | custom | Boolean | false | Allows for rendering a completely different layout with or without a radio tick. |
248
+ | tabIndex | Number | 0 | The tabindex attribute allows developers to make HTML elements focusable, allow or prevent them from being sequentially focusable (usually with the Tab key, hence the name) and determine their relative ordering for sequential focus navigation. See tabIndex |
249
+ | inputRef | Ref | — | Ref which is added to the input element. |
250
+ | onClick | Function | () => {} | Callback function that is invoked when the radio button is clicked. |
251
+ | onChange | Function | () => {} | Callback function that is invoked when the radio button is clicked and the state changes (for controlled usage). |
252
+ | className | String | — | Additional classes to be set on the input element. |
253
+ | children | any | — | Any element to be rendered inside the text element. |
254
+ | icon | String | — | Define any rioglyph icon like "rioglyph-truck". |
255
+ | iconSize | Number | — | The icon Size in px. |
256
+ | name | String | — | Name to be given to the input element. |
257
+ | iconLabelPosition | String | — | The label position. Possible values are: "horizontal" or "vertical". |
258
+
259
+ ## RadioButton with FormData
260
+
261
+ ### Example: Example 3
262
+
263
+ Please contact me viaEmailPhone
264
+ Submit selectionSelected value-
265
+
266
+ #### Summary
267
+
268
+ Please contact me viaEmailPhone
269
+ Submit selectionSelected value-
270
+
271
+ #### React (tsx)
272
+
273
+ ```tsx
274
+ import { useState } from 'react';
275
+
276
+ import RadioButton from '@rio-cloud/rio-uikit/RadioButton';
277
+ import Button from '@rio-cloud/rio-uikit/Button';
278
+
279
+ export default () => {
280
+ const [selectedValue, setSelectedValue] = useState('-');
281
+
282
+ const handleSubmit = (event: React.FormEvent<HTMLFormElement>) => {
283
+ // avoid page reload on submit
284
+ event.preventDefault();
285
+
286
+ const formData = new FormData(event.target as HTMLFormElement);
287
+ const entries = Object.fromEntries(formData.entries());
288
+ console.log(entries);
289
+
290
+ setSelectedValue(entries.contactOptions as string);
291
+ };
292
+
293
+ return (
294
+ <div className='display-flex gap-20'>
295
+ <form className='well border rounded bg-lightest width-300 max-width-300' onSubmit={handleSubmit}>
296
+ <label>Please contact me via</label>
297
+ <div>
298
+ <RadioButton name='contactOptions' value='email' inline>
299
+ Email
300
+ </RadioButton>
301
+ <RadioButton name='contactOptions' value='phone' inline>
302
+ Phone
303
+ </RadioButton>
304
+ </div>
305
+ <Button className='margin-top-20' type='submit'>
306
+ Submit selection
307
+ </Button>
308
+ </form>
309
+ <div>
310
+ <label>Selected value</label>
311
+ <div>{selectedValue ?? 'Nothing selected'}</div>
312
+ </div>
313
+ </div>
314
+ );
315
+ };
316
+ ```
317
+
318
+ #### HTML (html)
319
+
320
+ ```html
321
+ <div class="display-flex gap-20">
322
+ <form class="well border rounded bg-lightest width-300 max-width-300">
323
+ <label>Please contact me via</label>
324
+ <div>
325
+ <label class="radio radio-inline" tabindex="0">
326
+ <input type="radio" class="" name="contactOptions" value="email">
327
+ <span class="radio-text">
328
+ <span>Email</span>
329
+ </span>
330
+ </label>
331
+ <label class="radio radio-inline" tabindex="0">
332
+ <input type="radio" class="" name="contactOptions" value="phone">
333
+ <span class="radio-text">
334
+ <span>Phone</span>
335
+ </span>
336
+ </label>
337
+ </div>
338
+ <button type="submit" class="btn btn-default btn-component margin-top-20" tabindex="0">Submit selection</button>
339
+ </form>
340
+ <div>
341
+ <label>Selected value</label>
342
+ <div>-</div>
343
+ </div>
344
+ </div>
345
+ ```
346
+
347
+ #### Props
348
+
349
+ | Name | Type | Default | Description |
350
+ | --- | --- | --- | --- |
351
+ | label | String / Node | — | Defines the label text. |
352
+ | defaultChecked | Boolean | — | Defines whether the radio is initially checked or not (state can be changed on click). |
353
+ | checked | Boolean | — | Defines whether the radio is checked or not (for controlled usage). |
354
+ | disabled | Boolean | false | Defines whether the checkbox is disabled or not. |
355
+ | inline | Boolean | false | Defines whether the radio button is applying an inline style. Use this in combinationwith other radio buttons. |
356
+ | right | Boolean | false | Displays the icon on the right side of the text. |
357
+ | custom | Boolean | false | Allows for rendering a completely different layout with or without a radio tick. |
358
+ | tabIndex | Number | 0 | The tabindex attribute allows developers to make HTML elements focusable, allow or prevent them from being sequentially focusable (usually with the Tab key, hence the name) and determine their relative ordering for sequential focus navigation. See tabIndex |
359
+ | inputRef | Ref | — | Ref which is added to the input element. |
360
+ | onClick | Function | () => {} | Callback function that is invoked when the radio button is clicked. |
361
+ | onChange | Function | () => {} | Callback function that is invoked when the radio button is clicked and the state changes (for controlled usage). |
362
+ | className | String | — | Additional classes to be set on the input element. |
363
+ | children | any | — | Any element to be rendered inside the text element. |
364
+ | icon | String | — | Define any rioglyph icon like "rioglyph-truck". |
365
+ | iconSize | Number | — | The icon Size in px. |
366
+ | name | String | — | Name to be given to the input element. |
367
+ | iconLabelPosition | String | — | The label position. Possible values are: "horizontal" or "vertical". |
368
+
369
+ ## Custom cards example
370
+
371
+ > Note: When using the custom option, make sure to wrap the children with the class name radio-text-wrapper. For using the radio tick, use an element with class name radio-text.
372
+
373
+ ### Example: This option is a first option
374
+
375
+ Option 1
376
+ This option is a first option
377
+
378
+ Option 2
379
+ This option is a second option
380
+
381
+ Option 3
382
+ This option is a third option
383
+
384
+ #### Summary
385
+
386
+ Option 1
387
+ This option is a first option
388
+
389
+ Option 2
390
+ This option is a second option
391
+
392
+ Option 3
393
+ This option is a third option
394
+
395
+ #### React (tsx)
396
+
397
+ ```tsx
398
+ import { useState } from 'react';
399
+
400
+ import RadioButton from '@rio-cloud/rio-uikit/RadioButton';
401
+
402
+ const getRadioClasses = (isSelected: boolean) =>
403
+ `padding-15 border rounded ${isSelected ? 'border-color-highlight' : ''}`;
404
+
405
+ export default () => {
406
+ const [selectedOption, setSelectedOption] = useState(1);
407
+
408
+ return (
409
+ <div className='display-flex gap-15'>
410
+ <RadioButton
411
+ name='radioBox'
412
+ custom
413
+ className={getRadioClasses(selectedOption === 1)}
414
+ onChange={() => setSelectedOption(1)}
415
+ checked={selectedOption === 1}
416
+ >
417
+ <div className='radio-text-wrapper display-flex'>
418
+ <div className='radio-text' />
419
+ <div className='margin-left-5 margin-right-5'>
420
+ <div className='text-medium'>Option 1</div>
421
+ <div className='text-color-dark'>This option is a first option</div>
422
+ </div>
423
+ </div>
424
+ </RadioButton>
425
+
426
+ <RadioButton
427
+ name='radioBox'
428
+ custom
429
+ className={getRadioClasses(selectedOption === 2)}
430
+ onChange={() => setSelectedOption(2)}
431
+ checked={selectedOption === 2}
432
+ >
433
+ <div className='radio-text-wrapper display-flex'>
434
+ <div className='radio-text' />
435
+ <div className='margin-left-5 margin-right-5'>
436
+ <div className='text-medium'>Option 2</div>
437
+ <div className='text-color-dark'>This option is a second option</div>
438
+ </div>
439
+ </div>
440
+ </RadioButton>
441
+
442
+ <RadioButton
443
+ name='radioBox'
444
+ custom
445
+ className={getRadioClasses(selectedOption === 3)}
446
+ onChange={() => setSelectedOption(3)}
447
+ checked={selectedOption === 3}
448
+ >
449
+ <div className='radio-text-wrapper display-flex'>
450
+ <div className='radio-text' />
451
+ <div className='margin-left-5 margin-right-5'>
452
+ <div className='text-medium'>Option 3</div>
453
+ <div className='text-color-dark'>This option is a third option</div>
454
+ </div>
455
+ </div>
456
+ </RadioButton>
457
+ </div>
458
+ );
459
+ };
460
+ ```
461
+
462
+ #### HTML (html)
463
+
464
+ ```html
465
+ <div class="display-flex gap-15">
466
+ <label class="radio padding-15 border rounded border-color-highlight" tabindex="0">
467
+ <input type="radio" class="padding-15 border rounded border-color-highlight" name="radioBox" value="" checked="">
468
+ <div class="radio-text-wrapper display-flex">
469
+ <div class="radio-text">
470
+ </div>
471
+ <div class="margin-left-5 margin-right-5">
472
+ <div class="text-medium">Option 1</div>
473
+ <div class="text-color-dark">This option is a first option</div>
474
+ </div>
475
+ </div>
476
+ </label>
477
+ <label class="radio padding-15 border rounded " tabindex="0">
478
+ <input type="radio" class="padding-15 border rounded " name="radioBox" value="">
479
+ <div class="radio-text-wrapper display-flex">
480
+ <div class="radio-text">
481
+ </div>
482
+ <div class="margin-left-5 margin-right-5">
483
+ <div class="text-medium">Option 2</div>
484
+ <div class="text-color-dark">This option is a second option</div>
485
+ </div>
486
+ </div>
487
+ </label>
488
+ <label class="radio padding-15 border rounded " tabindex="0">
489
+ <input type="radio" class="padding-15 border rounded " name="radioBox" value="">
490
+ <div class="radio-text-wrapper display-flex">
491
+ <div class="radio-text">
492
+ </div>
493
+ <div class="margin-left-5 margin-right-5">
494
+ <div class="text-medium">Option 3</div>
495
+ <div class="text-color-dark">This option is a third option</div>
496
+ </div>
497
+ </div>
498
+ </label>
499
+ </div>
500
+ ```
501
+
502
+ #### Props
503
+
504
+ | Name | Type | Default | Description |
505
+ | --- | --- | --- | --- |
506
+ | label | String / Node | — | Defines the label text. |
507
+ | defaultChecked | Boolean | — | Defines whether the radio is initially checked or not (state can be changed on click). |
508
+ | checked | Boolean | — | Defines whether the radio is checked or not (for controlled usage). |
509
+ | disabled | Boolean | false | Defines whether the checkbox is disabled or not. |
510
+ | inline | Boolean | false | Defines whether the radio button is applying an inline style. Use this in combinationwith other radio buttons. |
511
+ | right | Boolean | false | Displays the icon on the right side of the text. |
512
+ | custom | Boolean | false | Allows for rendering a completely different layout with or without a radio tick. |
513
+ | tabIndex | Number | 0 | The tabindex attribute allows developers to make HTML elements focusable, allow or prevent them from being sequentially focusable (usually with the Tab key, hence the name) and determine their relative ordering for sequential focus navigation. See tabIndex |
514
+ | inputRef | Ref | — | Ref which is added to the input element. |
515
+ | onClick | Function | () => {} | Callback function that is invoked when the radio button is clicked. |
516
+ | onChange | Function | () => {} | Callback function that is invoked when the radio button is clicked and the state changes (for controlled usage). |
517
+ | className | String | — | Additional classes to be set on the input element. |
518
+ | children | any | — | Any element to be rendered inside the text element. |
519
+ | icon | String | — | Define any rioglyph icon like "rioglyph-truck". |
520
+ | iconSize | Number | — | The icon Size in px. |
521
+ | name | String | — | Name to be given to the input element. |
522
+ | iconLabelPosition | String | — | The label position. Possible values are: "horizontal" or "vertical". |
523
+
524
+ ## Custom stacked example
525
+
526
+ ### Example: This option is a first option
527
+
528
+ Option 1
529
+ This option is a first option
530
+
531
+ Option 2 (disabled)
532
+ This option is a second option
533
+
534
+ Option 3
535
+ This option is a third option
536
+
537
+ #### Summary
538
+
539
+ Option 1
540
+ This option is a first option
541
+
542
+ Option 2 (disabled)
543
+ This option is a second option
544
+
545
+ Option 3
546
+ This option is a third option
547
+
548
+ #### React (tsx)
549
+
550
+ ```tsx
551
+ import { useState } from 'react';
552
+
553
+ import RadioButton from '@rio-cloud/rio-uikit/RadioButton';
554
+
555
+ const getSelectedClass = (isSelected: boolean) =>
556
+ isSelected ? 'border-color-highlight bg-highlight-decent z-index-1' : '';
557
+
558
+ export default () => {
559
+ const [selectedOption, setSelectedOption] = useState(1);
560
+
561
+ return (
562
+ <div className='display-flex flex-column'>
563
+ <RadioButton
564
+ name='stackedRadioBoxes'
565
+ custom
566
+ className={`padding-15 rounded-top-left rounded-top-right border ${getSelectedClass(
567
+ selectedOption === 1
568
+ )}`}
569
+ onChange={() => setSelectedOption(1)}
570
+ checked={selectedOption === 1}
571
+ >
572
+ <div className='radio-text-wrapper display-flex'>
573
+ <span className='radio-text' />
574
+ <div className='margin-left-5 margin-right-5'>
575
+ <div className='text-medium'>Option 1</div>
576
+ <div className='text-color-dark'>This option is a first option</div>
577
+ </div>
578
+ </div>
579
+ </RadioButton>
580
+
581
+ <RadioButton
582
+ name='stackedRadioBoxes'
583
+ custom
584
+ className={`padding-15 margin-top--1 border ${getSelectedClass(selectedOption === 2)}`}
585
+ onChange={() => setSelectedOption(2)}
586
+ checked={selectedOption === 2}
587
+ disabled
588
+ >
589
+ <div className='radio-text-wrapper display-flex'>
590
+ <span className='radio-text' />
591
+ <div className='margin-left-5 margin-right-5'>
592
+ <div className='text-medium'>Option 2 (disabled)</div>
593
+ <div className='text-color-dark'>This option is a second option</div>
594
+ </div>
595
+ </div>
596
+ </RadioButton>
597
+
598
+ <RadioButton
599
+ name='stackedRadioBoxes'
600
+ custom
601
+ className={`padding-15 margin-top--1 rounded-bottom-left rounded-bottom-right border ${getSelectedClass(
602
+ selectedOption === 3
603
+ )}`}
604
+ onChange={() => setSelectedOption(3)}
605
+ checked={selectedOption === 3}
606
+ >
607
+ <div className='radio-text-wrapper display-flex'>
608
+ <span className='radio-text' />
609
+ <div className='margin-left-5 margin-right-5'>
610
+ <div className='text-medium'>Option 3</div>
611
+ <div className='text-color-dark'>This option is a third option</div>
612
+ </div>
613
+ </div>
614
+ </RadioButton>
615
+ </div>
616
+ );
617
+ };
618
+ ```
619
+
620
+ #### HTML (html)
621
+
622
+ ```html
623
+ <div class="display-flex flex-column">
624
+ <label class="radio padding-15 rounded-top-left rounded-top-right border border-color-highlight bg-highlight-decent z-index-1" tabindex="0">
625
+ <input type="radio" class="padding-15 rounded-top-left rounded-top-right border border-color-highlight bg-highlight-decent z-index-1" name="stackedRadioBoxes" value="" checked="">
626
+ <div class="radio-text-wrapper display-flex">
627
+ <span class="radio-text">
628
+ </span>
629
+ <div class="margin-left-5 margin-right-5">
630
+ <div class="text-medium">Option 1</div>
631
+ <div class="text-color-dark">This option is a first option</div>
632
+ </div>
633
+ </div>
634
+ </label>
635
+ <label class="radio padding-15 margin-top--1 border " tabindex="0">
636
+ <input type="radio" disabled="" class="padding-15 margin-top--1 border " name="stackedRadioBoxes" value="">
637
+ <div class="radio-text-wrapper display-flex">
638
+ <span class="radio-text">
639
+ </span>
640
+ <div class="margin-left-5 margin-right-5">
641
+ <div class="text-medium">Option 2 (disabled)</div>
642
+ <div class="text-color-dark">This option is a second option</div>
643
+ </div>
644
+ </div>
645
+ </label>
646
+ <label class="radio padding-15 margin-top--1 rounded-bottom-left rounded-bottom-right border " tabindex="0">
647
+ <input type="radio" class="padding-15 margin-top--1 rounded-bottom-left rounded-bottom-right border " name="stackedRadioBoxes" value="">
648
+ <div class="radio-text-wrapper display-flex">
649
+ <span class="radio-text">
650
+ </span>
651
+ <div class="margin-left-5 margin-right-5">
652
+ <div class="text-medium">Option 3</div>
653
+ <div class="text-color-dark">This option is a third option</div>
654
+ </div>
655
+ </div>
656
+ </label>
657
+ </div>
658
+ ```
659
+
660
+ #### Props
661
+
662
+ | Name | Type | Default | Description |
663
+ | --- | --- | --- | --- |
664
+ | label | String / Node | — | Defines the label text. |
665
+ | defaultChecked | Boolean | — | Defines whether the radio is initially checked or not (state can be changed on click). |
666
+ | checked | Boolean | — | Defines whether the radio is checked or not (for controlled usage). |
667
+ | disabled | Boolean | false | Defines whether the checkbox is disabled or not. |
668
+ | inline | Boolean | false | Defines whether the radio button is applying an inline style. Use this in combinationwith other radio buttons. |
669
+ | right | Boolean | false | Displays the icon on the right side of the text. |
670
+ | custom | Boolean | false | Allows for rendering a completely different layout with or without a radio tick. |
671
+ | tabIndex | Number | 0 | The tabindex attribute allows developers to make HTML elements focusable, allow or prevent them from being sequentially focusable (usually with the Tab key, hence the name) and determine their relative ordering for sequential focus navigation. See tabIndex |
672
+ | inputRef | Ref | — | Ref which is added to the input element. |
673
+ | onClick | Function | () => {} | Callback function that is invoked when the radio button is clicked. |
674
+ | onChange | Function | () => {} | Callback function that is invoked when the radio button is clicked and the state changes (for controlled usage). |
675
+ | className | String | — | Additional classes to be set on the input element. |
676
+ | children | any | — | Any element to be rendered inside the text element. |
677
+ | icon | String | — | Define any rioglyph icon like "rioglyph-truck". |
678
+ | iconSize | Number | — | The icon Size in px. |
679
+ | name | String | — | Name to be given to the input element. |
680
+ | iconLabelPosition | String | — | The label position. Possible values are: "horizontal" or "vertical". |
681
+
682
+ ## Custom list example
683
+
684
+ ### Example: Example 6
685
+
686
+ Vehicle type
687
+ Truck
688
+
689
+ Trailer
690
+
691
+ Bus
692
+
693
+ Van
694
+
695
+ #### Summary
696
+
697
+ Vehicle type
698
+ Truck
699
+
700
+ Trailer
701
+
702
+ Bus
703
+
704
+ Van
705
+
706
+ #### React (tsx)
707
+
708
+ ```tsx
709
+ import { useState } from 'react';
710
+
711
+ import RadioButton from '@rio-cloud/rio-uikit/RadioButton';
712
+
713
+ export default () => {
714
+ const [selectedOption, setSelectedOption] = useState(1);
715
+
716
+ const radioButtonClassName =
717
+ 'padding-15 padding-left-10 padding-right-5 border border-bottom-only hover-bg-highlight-decent';
718
+
719
+ return (
720
+ <div className='display-flex flex-column width-200 margin-bottom-20'>
721
+ <div className='text-medium'>Vehicle type</div>
722
+
723
+ <RadioButton
724
+ name='listRadioBoxes'
725
+ custom
726
+ className={radioButtonClassName}
727
+ onChange={() => setSelectedOption(1)}
728
+ checked={selectedOption === 1}
729
+ >
730
+ <div className='radio-text-wrapper display-flex justify-content-between'>
731
+ <div className='text-size-16 text-color-darker'>Truck</div>
732
+ <div className='radio-text' />
733
+ </div>
734
+ </RadioButton>
735
+
736
+ <RadioButton
737
+ name='listRadioBoxes'
738
+ custom
739
+ className={radioButtonClassName}
740
+ onChange={() => setSelectedOption(2)}
741
+ checked={selectedOption === 2}
742
+ >
743
+ <div className='radio-text-wrapper display-flex justify-content-between'>
744
+ <div className='text-size-16 text-color-darker'>Trailer</div>
745
+ <div className='radio-text' />
746
+ </div>
747
+ </RadioButton>
748
+
749
+ <RadioButton
750
+ name='listRadioBoxes'
751
+ custom
752
+ className={radioButtonClassName}
753
+ onChange={() => setSelectedOption(3)}
754
+ checked={selectedOption === 3}
755
+ >
756
+ <div className='radio-text-wrapper display-flex justify-content-between'>
757
+ <div className='text-size-16 text-color-darker'>Bus</div>
758
+ <div className='radio-text' />
759
+ </div>
760
+ </RadioButton>
761
+
762
+ <RadioButton
763
+ name='listRadioBoxes'
764
+ custom
765
+ className={radioButtonClassName}
766
+ onChange={() => setSelectedOption(4)}
767
+ checked={selectedOption === 4}
768
+ >
769
+ <div className='radio-text-wrapper display-flex justify-content-between'>
770
+ <div className='text-size-16 text-color-darker'>Van</div>
771
+ <div className='radio-text' />
772
+ </div>
773
+ </RadioButton>
774
+ </div>
775
+ );
776
+ };
777
+ ```
778
+
779
+ #### HTML (html)
780
+
781
+ ```html
782
+ <div class="display-flex flex-column width-200 margin-bottom-20">
783
+ <div class="text-medium">Vehicle type</div>
784
+ <label class="radio padding-15 padding-left-10 padding-right-5 border border-bottom-only hover-bg-highlight-decent" tabindex="0">
785
+ <input type="radio" class="padding-15 padding-left-10 padding-right-5 border border-bottom-only hover-bg-highlight-decent" name="listRadioBoxes" value="" checked="">
786
+ <div class="radio-text-wrapper display-flex justify-content-between">
787
+ <div class="text-size-16 text-color-darker">Truck</div>
788
+ <div class="radio-text">
789
+ </div>
790
+ </div>
791
+ </label>
792
+ <label class="radio padding-15 padding-left-10 padding-right-5 border border-bottom-only hover-bg-highlight-decent" tabindex="0">
793
+ <input type="radio" class="padding-15 padding-left-10 padding-right-5 border border-bottom-only hover-bg-highlight-decent" name="listRadioBoxes" value="">
794
+ <div class="radio-text-wrapper display-flex justify-content-between">
795
+ <div class="text-size-16 text-color-darker">Trailer</div>
796
+ <div class="radio-text">
797
+ </div>
798
+ </div>
799
+ </label>
800
+ <label class="radio padding-15 padding-left-10 padding-right-5 border border-bottom-only hover-bg-highlight-decent" tabindex="0">
801
+ <input type="radio" class="padding-15 padding-left-10 padding-right-5 border border-bottom-only hover-bg-highlight-decent" name="listRadioBoxes" value="">
802
+ <div class="radio-text-wrapper display-flex justify-content-between">
803
+ <div class="text-size-16 text-color-darker">Bus</div>
804
+ <div class="radio-text">
805
+ </div>
806
+ </div>
807
+ </label>
808
+ <label class="radio padding-15 padding-left-10 padding-right-5 border border-bottom-only hover-bg-highlight-decent" tabindex="0">
809
+ <input type="radio" class="padding-15 padding-left-10 padding-right-5 border border-bottom-only hover-bg-highlight-decent" name="listRadioBoxes" value="">
810
+ <div class="radio-text-wrapper display-flex justify-content-between">
811
+ <div class="text-size-16 text-color-darker">Van</div>
812
+ <div class="radio-text">
813
+ </div>
814
+ </div>
815
+ </label>
816
+ </div>
817
+ ```
818
+
819
+ #### Props
820
+
821
+ | Name | Type | Default | Description |
822
+ | --- | --- | --- | --- |
823
+ | label | String / Node | — | Defines the label text. |
824
+ | defaultChecked | Boolean | — | Defines whether the radio is initially checked or not (state can be changed on click). |
825
+ | checked | Boolean | — | Defines whether the radio is checked or not (for controlled usage). |
826
+ | disabled | Boolean | false | Defines whether the checkbox is disabled or not. |
827
+ | inline | Boolean | false | Defines whether the radio button is applying an inline style. Use this in combinationwith other radio buttons. |
828
+ | right | Boolean | false | Displays the icon on the right side of the text. |
829
+ | custom | Boolean | false | Allows for rendering a completely different layout with or without a radio tick. |
830
+ | tabIndex | Number | 0 | The tabindex attribute allows developers to make HTML elements focusable, allow or prevent them from being sequentially focusable (usually with the Tab key, hence the name) and determine their relative ordering for sequential focus navigation. See tabIndex |
831
+ | inputRef | Ref | — | Ref which is added to the input element. |
832
+ | onClick | Function | () => {} | Callback function that is invoked when the radio button is clicked. |
833
+ | onChange | Function | () => {} | Callback function that is invoked when the radio button is clicked and the state changes (for controlled usage). |
834
+ | className | String | — | Additional classes to be set on the input element. |
835
+ | children | any | — | Any element to be rendered inside the text element. |
836
+ | icon | String | — | Define any rioglyph icon like "rioglyph-truck". |
837
+ | iconSize | Number | — | The icon Size in px. |
838
+ | name | String | — | Name to be given to the input element. |
839
+ | iconLabelPosition | String | — | The label position. Possible values are: "horizontal" or "vertical". |
840
+
841
+ ## Custom example without the tick
842
+
843
+ ### Example: Example 7
844
+
845
+ 4 GB
846
+ 8 GB
847
+ 16 GB
848
+ 32 GB
849
+ 64 GB
850
+
851
+ #### Summary
852
+
853
+ 4 GB
854
+ 8 GB
855
+ 16 GB
856
+ 32 GB
857
+ 64 GB
858
+
859
+ #### React (tsx)
860
+
861
+ ```tsx
862
+ import { useState } from 'react';
863
+
864
+ import RadioButton from '@rio-cloud/rio-uikit/RadioButton';
865
+
866
+ const getSelectedClass = (isSelected: boolean) =>
867
+ isSelected ? 'border-color-highlight bg-highlight text-color-white' : 'hover-bg-highlight-decent';
868
+
869
+ export default () => {
870
+ const [selectedOption, setSelectedOption] = useState(1);
871
+
872
+ return (
873
+ <div className='display-flex gap-15 margin-bottom-20'>
874
+ <RadioButton
875
+ name='noTickRadioBoxes'
876
+ custom
877
+ className={`width-80 padding-15 border rounded ${getSelectedClass(selectedOption === 1)}`}
878
+ onChange={() => setSelectedOption(1)}
879
+ checked={selectedOption === 1}
880
+ >
881
+ <div className='text-center text-size-16 text-medium'>4 GB</div>
882
+ </RadioButton>
883
+
884
+ <RadioButton
885
+ name='noTickRadioBoxes'
886
+ custom
887
+ className={`width-80 padding-15 border rounded ${getSelectedClass(selectedOption === 2)}`}
888
+ onChange={() => setSelectedOption(2)}
889
+ checked={selectedOption === 2}
890
+ >
891
+ <div className='text-center text-size-16 text-medium'>8 GB</div>
892
+ </RadioButton>
893
+
894
+ <RadioButton
895
+ name='noTickRadioBoxes'
896
+ custom
897
+ className={`width-80 padding-15 border rounded ${getSelectedClass(selectedOption === 3)}`}
898
+ onChange={() => setSelectedOption(3)}
899
+ checked={selectedOption === 3}
900
+ >
901
+ <div className='text-center text-size-16 text-medium'>16 GB</div>
902
+ </RadioButton>
903
+
904
+ <RadioButton
905
+ name='noTickRadioBoxes'
906
+ custom
907
+ className={`width-80 padding-15 border rounded ${getSelectedClass(selectedOption === 4)}`}
908
+ onChange={() => setSelectedOption(4)}
909
+ checked={selectedOption === 4}
910
+ >
911
+ <div className='text-center text-size-16 text-medium'>32 GB</div>
912
+ </RadioButton>
913
+
914
+ <RadioButton
915
+ name='noTickRadioBoxes'
916
+ custom
917
+ disabled
918
+ className='width-80 padding-15 border rounded cursor-not-allowed'
919
+ >
920
+ <div className='text-center text-size-16 text-medium text-color-light'>64 GB</div>
921
+ </RadioButton>
922
+ </div>
923
+ );
924
+ };
925
+ ```
926
+
927
+ #### HTML (html)
928
+
929
+ ```html
930
+ <div class="display-flex gap-15 margin-bottom-20">
931
+ <label class="radio width-80 padding-15 border rounded border-color-highlight bg-highlight text-color-white" tabindex="0">
932
+ <input type="radio" class="width-80 padding-15 border rounded border-color-highlight bg-highlight text-color-white" name="noTickRadioBoxes" value="" checked="">
933
+ <div class="text-center text-size-16 text-medium">4 GB</div>
934
+ </label>
935
+ <label class="radio width-80 padding-15 border rounded hover-bg-highlight-decent" tabindex="0">
936
+ <input type="radio" class="width-80 padding-15 border rounded hover-bg-highlight-decent" name="noTickRadioBoxes" value="">
937
+ <div class="text-center text-size-16 text-medium">8 GB</div>
938
+ </label>
939
+ <label class="radio width-80 padding-15 border rounded hover-bg-highlight-decent" tabindex="0">
940
+ <input type="radio" class="width-80 padding-15 border rounded hover-bg-highlight-decent" name="noTickRadioBoxes" value="">
941
+ <div class="text-center text-size-16 text-medium">16 GB</div>
942
+ </label>
943
+ <label class="radio width-80 padding-15 border rounded hover-bg-highlight-decent" tabindex="0">
944
+ <input type="radio" class="width-80 padding-15 border rounded hover-bg-highlight-decent" name="noTickRadioBoxes" value="">
945
+ <div class="text-center text-size-16 text-medium">32 GB</div>
946
+ </label>
947
+ <label class="radio width-80 padding-15 border rounded cursor-not-allowed" tabindex="0">
948
+ <input type="radio" disabled="" class="width-80 padding-15 border rounded cursor-not-allowed" name="noTickRadioBoxes" value="">
949
+ <div class="text-center text-size-16 text-medium text-color-light">64 GB</div>
950
+ </label>
951
+ </div>
952
+ ```
953
+
954
+ #### Props
955
+
956
+ | Name | Type | Default | Description |
957
+ | --- | --- | --- | --- |
958
+ | label | String / Node | — | Defines the label text. |
959
+ | defaultChecked | Boolean | — | Defines whether the radio is initially checked or not (state can be changed on click). |
960
+ | checked | Boolean | — | Defines whether the radio is checked or not (for controlled usage). |
961
+ | disabled | Boolean | false | Defines whether the checkbox is disabled or not. |
962
+ | inline | Boolean | false | Defines whether the radio button is applying an inline style. Use this in combinationwith other radio buttons. |
963
+ | right | Boolean | false | Displays the icon on the right side of the text. |
964
+ | custom | Boolean | false | Allows for rendering a completely different layout with or without a radio tick. |
965
+ | tabIndex | Number | 0 | The tabindex attribute allows developers to make HTML elements focusable, allow or prevent them from being sequentially focusable (usually with the Tab key, hence the name) and determine their relative ordering for sequential focus navigation. See tabIndex |
966
+ | inputRef | Ref | — | Ref which is added to the input element. |
967
+ | onClick | Function | () => {} | Callback function that is invoked when the radio button is clicked. |
968
+ | onChange | Function | () => {} | Callback function that is invoked when the radio button is clicked and the state changes (for controlled usage). |
969
+ | className | String | — | Additional classes to be set on the input element. |
970
+ | children | any | — | Any element to be rendered inside the text element. |
971
+ | icon | String | — | Define any rioglyph icon like "rioglyph-truck". |
972
+ | iconSize | Number | — | The icon Size in px. |
973
+ | name | String | — | Name to be given to the input element. |
974
+ | iconLabelPosition | String | — | The label position. Possible values are: "horizontal" or "vertical". |
975
+
976
+ ## RadioButton with custom icon
977
+
978
+ ### Example:
979
+
980
+ TruckBusTrailer
981
+ TruckBusVanTrailer
982
+ 6 Month
983
+
984
+ 12 Month
985
+ Save 15%
986
+
987
+ 24 Month
988
+ Save 25%
989
+
990
+ #### Summary
991
+
992
+ TruckBusTrailer
993
+ TruckBusVanTrailer
994
+ 6 Month
995
+
996
+ 12 Month
997
+ Save 15%
998
+
999
+ 24 Month
1000
+ Save 25%
1001
+
1002
+ #### React (tsx)
1003
+
1004
+ ```tsx
1005
+ import RadioButton from '@rio-cloud/rio-uikit/RadioButton';
1006
+
1007
+ export default () => {
1008
+ return (
1009
+ <div>
1010
+ <div>
1011
+ <RadioButton
1012
+ name='radiosIconInline'
1013
+ id='IconInlineTruck'
1014
+ inline
1015
+ icon='rioglyph-truck'
1016
+ iconLabelPosition='horizontal'
1017
+ >
1018
+ <span>Truck</span>
1019
+ </RadioButton>
1020
+
1021
+ <RadioButton
1022
+ name='radiosIconInline'
1023
+ id='IconInlineBus'
1024
+ inline
1025
+ icon='rioglyph-bus'
1026
+ iconLabelPosition='horizontal'
1027
+ >
1028
+ <span>Bus</span>
1029
+ </RadioButton>
1030
+
1031
+ <RadioButton
1032
+ name='radiosIconInline'
1033
+ id='IconInlineTrailer'
1034
+ inline
1035
+ icon='rioglyph-trailer'
1036
+ iconLabelPosition='horizontal'
1037
+ >
1038
+ <span>Trailer</span>
1039
+ </RadioButton>
1040
+ </div>
1041
+
1042
+ <hr />
1043
+
1044
+ <div>
1045
+ <RadioButton name='radiosIcon' id='IconTruck' inline icon='rioglyph-truck' iconSize={75}>
1046
+ <span className='text-size-16 margin-top-10'>Truck</span>
1047
+ </RadioButton>
1048
+
1049
+ <RadioButton name='radiosIcon' id='IconBus' inline icon='rioglyph-bus' iconSize={75}>
1050
+ <span className='text-size-16 margin-top-10'>Bus</span>
1051
+ </RadioButton>
1052
+
1053
+ <RadioButton name='radiosIcon' id='IconBus' inline icon='rioglyph-van' iconSize={75}>
1054
+ <span className='text-size-16 margin-top-10'>Van</span>
1055
+ </RadioButton>
1056
+
1057
+ <RadioButton name='radiosIcon' id='IconTrailer' inline icon='rioglyph-trailer' iconSize={75}>
1058
+ <span className='text-size-16 margin-top-10'>Trailer</span>
1059
+ </RadioButton>
1060
+ </div>
1061
+
1062
+ <hr />
1063
+
1064
+ <div className='padding-25 max-width-400'>
1065
+ <div className='display-flex content-space-between column-gap-25 margin-bottom-25'>
1066
+ <div className='flex-1-1 text-center line-height-125rel width-33pct margin-left-10 margin-right-10'>
1067
+ <div className='text-size-16 text-medium margin-bottom-5 white-space-nowrap'>6 Month</div>
1068
+ <div className='text-size-12 text-color-dark' />
1069
+ </div>
1070
+
1071
+ <div className='flex-1-1 text-center line-height-125rel width-33pct margin-left-10 margin-right-10'>
1072
+ <div className='text-size-16 text-medium margin-bottom-5 white-space-nowrap'>12 Month</div>
1073
+ <div className='text-size-12 text-color-dark'>Save 15%</div>
1074
+ </div>
1075
+
1076
+ <div className='flex-1-1 text-center line-height-125rel width-33pct margin-left-10 margin-right-10'>
1077
+ <div className='text-size-16 text-medium margin-bottom-5 white-space-nowrap'>24 Month</div>
1078
+ <div className='text-size-12 text-color-dark'>Save 25%</div>
1079
+ </div>
1080
+ </div>
1081
+
1082
+ <div
1083
+ className={
1084
+ 'display-flex justify-content-between column-gap-25 bg-white rounded-circle ' +
1085
+ 'padding-3 border-style-solid border-width-1 border-color-light'
1086
+ }
1087
+ >
1088
+ <RadioButton
1089
+ name='radiosContracts'
1090
+ id='Periode1'
1091
+ inline
1092
+ icon='rioglyph-start'
1093
+ iconSize={30}
1094
+ className='padding-0 margin-0 width-33pct'
1095
+ defaultChecked
1096
+ />
1097
+
1098
+ <RadioButton
1099
+ name='radiosContracts'
1100
+ id='Periode2'
1101
+ inline
1102
+ icon='rioglyph-stopover'
1103
+ iconSize={30}
1104
+ className='padding-0 margin-0 width-33pct'
1105
+ />
1106
+
1107
+ <RadioButton
1108
+ name='radiosContracts'
1109
+ id='Periode3'
1110
+ inline
1111
+ icon='rioglyph-stopover'
1112
+ iconSize={30}
1113
+ className='padding-0 margin-0 width-33pct'
1114
+ />
1115
+ </div>
1116
+ </div>
1117
+ </div>
1118
+ );
1119
+ };
1120
+ ```
1121
+
1122
+ #### HTML (html)
1123
+
1124
+ ```html
1125
+ <div>
1126
+ <div>
1127
+ <label id="IconInlineTruck" class="radio radio-inline" tabindex="0">
1128
+ <input type="radio" class="" name="radiosIconInline" value="">
1129
+ <span class="radio-icon label-horizontal">
1130
+ <span class="rioglyph rioglyph-truck" style="width: 16px; height: 16px; font-size: 16px; line-height: 16px;">
1131
+ </span>
1132
+ <span class="radio-label">
1133
+ <span>Truck</span>
1134
+ </span>
1135
+ </span>
1136
+ </label>
1137
+ <label id="IconInlineBus" class="radio radio-inline" tabindex="0">
1138
+ <input type="radio" class="" name="radiosIconInline" value="">
1139
+ <span class="radio-icon label-horizontal">
1140
+ <span class="rioglyph rioglyph-bus" style="width: 16px; height: 16px; font-size: 16px; line-height: 16px;">
1141
+ </span>
1142
+ <span class="radio-label">
1143
+ <span>Bus</span>
1144
+ </span>
1145
+ </span>
1146
+ </label>
1147
+ <label id="IconInlineTrailer" class="radio radio-inline" tabindex="0">
1148
+ <input type="radio" class="" name="radiosIconInline" value="">
1149
+ <span class="radio-icon label-horizontal">
1150
+ <span class="rioglyph rioglyph-trailer" style="width: 16px; height: 16px; font-size: 16px; line-height: 16px;">
1151
+ </span>
1152
+ <span class="radio-label">
1153
+ <span>Trailer</span>
1154
+ </span>
1155
+ </span>
1156
+ </label>
1157
+ </div>
1158
+ <hr>
1159
+ <div>
1160
+ <label id="IconTruck" class="radio radio-inline" tabindex="0">
1161
+ <input type="radio" class="" name="radiosIcon" value="">
1162
+ <span class="radio-icon label-vertical">
1163
+ <span class="rioglyph rioglyph-truck" style="width: 75px; height: 75px; font-size: 75px; line-height: 75px;">
1164
+ </span>
1165
+ <span class="radio-label">
1166
+ <span class="text-size-16 margin-top-10">Truck</span>
1167
+ </span>
1168
+ </span>
1169
+ </label>
1170
+ <label id="IconBus" class="radio radio-inline" tabindex="0">
1171
+ <input type="radio" class="" name="radiosIcon" value="">
1172
+ <span class="radio-icon label-vertical">
1173
+ <span class="rioglyph rioglyph-bus" style="width: 75px; height: 75px; font-size: 75px; line-height: 75px;">
1174
+ </span>
1175
+ <span class="radio-label">
1176
+ <span class="text-size-16 margin-top-10">Bus</span>
1177
+ </span>
1178
+ </span>
1179
+ </label>
1180
+ <label id="IconBus" class="radio radio-inline" tabindex="0">
1181
+ <input type="radio" class="" name="radiosIcon" value="">
1182
+ <span class="radio-icon label-vertical">
1183
+ <span class="rioglyph rioglyph-van" style="width: 75px; height: 75px; font-size: 75px; line-height: 75px;">
1184
+ </span>
1185
+ <span class="radio-label">
1186
+ <span class="text-size-16 margin-top-10">Van</span>
1187
+ </span>
1188
+ </span>
1189
+ </label>
1190
+ <label id="IconTrailer" class="radio radio-inline" tabindex="0">
1191
+ <input type="radio" class="" name="radiosIcon" value="">
1192
+ <span class="radio-icon label-vertical">
1193
+ <span class="rioglyph rioglyph-trailer" style="width: 75px; height: 75px; font-size: 75px; line-height: 75px;">
1194
+ </span>
1195
+ <span class="radio-label">
1196
+ <span class="text-size-16 margin-top-10">Trailer</span>
1197
+ </span>
1198
+ </span>
1199
+ </label>
1200
+ </div>
1201
+ <hr>
1202
+ <div class="padding-25 max-width-400">
1203
+ <div class="display-flex content-space-between column-gap-25 margin-bottom-25">
1204
+ <div class="flex-1-1 text-center line-height-125rel width-33pct margin-left-10 margin-right-10">
1205
+ <div class="text-size-16 text-medium margin-bottom-5 white-space-nowrap">6 Month</div>
1206
+ <div class="text-size-12 text-color-dark">
1207
+ </div>
1208
+ </div>
1209
+ <div class="flex-1-1 text-center line-height-125rel width-33pct margin-left-10 margin-right-10">
1210
+ <div class="text-size-16 text-medium margin-bottom-5 white-space-nowrap">12 Month</div>
1211
+ <div class="text-size-12 text-color-dark">Save 15%</div>
1212
+ </div>
1213
+ <div class="flex-1-1 text-center line-height-125rel width-33pct margin-left-10 margin-right-10">
1214
+ <div class="text-size-16 text-medium margin-bottom-5 white-space-nowrap">24 Month</div>
1215
+ <div class="text-size-12 text-color-dark">Save 25%</div>
1216
+ </div>
1217
+ </div>
1218
+ <div class="display-flex justify-content-between column-gap-25 bg-white rounded-circle padding-3 border-style-solid border-width-1 border-color-light">
1219
+ <label id="Periode1" class="radio radio-inline padding-0 margin-0 width-33pct" tabindex="0">
1220
+ <input type="radio" class="padding-0 margin-0 width-33pct" name="radiosContracts" value="" checked="">
1221
+ <span class="radio-icon label-vertical">
1222
+ <span class="rioglyph rioglyph-start" style="width: 30px; height: 30px; font-size: 30px; line-height: 30px;">
1223
+ </span>
1224
+ <span class="radio-label">
1225
+ </span>
1226
+ </span>
1227
+ </label>
1228
+ <label id="Periode2" class="radio radio-inline padding-0 margin-0 width-33pct" tabindex="0">
1229
+ <input type="radio" class="padding-0 margin-0 width-33pct" name="radiosContracts" value="">
1230
+ <span class="radio-icon label-vertical">
1231
+ <span class="rioglyph rioglyph-stopover" style="width: 30px; height: 30px; font-size: 30px; line-height: 30px;">
1232
+ </span>
1233
+ <span class="radio-label">
1234
+ </span>
1235
+ </span>
1236
+ </label>
1237
+ <label id="Periode3" class="radio radio-inline padding-0 margin-0 width-33pct" tabindex="0">
1238
+ <input type="radio" class="padding-0 margin-0 width-33pct" name="radiosContracts" value="">
1239
+ <span class="radio-icon label-vertical">
1240
+ <span class="rioglyph rioglyph-stopover" style="width: 30px; height: 30px; font-size: 30px; line-height: 30px;">
1241
+ </span>
1242
+ <span class="radio-label">
1243
+ </span>
1244
+ </span>
1245
+ </label>
1246
+ </div>
1247
+ </div>
1248
+ </div>
1249
+ ```
1250
+
1251
+ #### Props
1252
+
1253
+ | Name | Type | Default | Description |
1254
+ | --- | --- | --- | --- |
1255
+ | label | String / Node | — | Defines the label text. |
1256
+ | defaultChecked | Boolean | — | Defines whether the radio is initially checked or not (state can be changed on click). |
1257
+ | checked | Boolean | — | Defines whether the radio is checked or not (for controlled usage). |
1258
+ | disabled | Boolean | false | Defines whether the checkbox is disabled or not. |
1259
+ | inline | Boolean | false | Defines whether the radio button is applying an inline style. Use this in combinationwith other radio buttons. |
1260
+ | right | Boolean | false | Displays the icon on the right side of the text. |
1261
+ | custom | Boolean | false | Allows for rendering a completely different layout with or without a radio tick. |
1262
+ | tabIndex | Number | 0 | The tabindex attribute allows developers to make HTML elements focusable, allow or prevent them from being sequentially focusable (usually with the Tab key, hence the name) and determine their relative ordering for sequential focus navigation. See tabIndex |
1263
+ | inputRef | Ref | — | Ref which is added to the input element. |
1264
+ | onClick | Function | () => {} | Callback function that is invoked when the radio button is clicked. |
1265
+ | onChange | Function | () => {} | Callback function that is invoked when the radio button is clicked and the state changes (for controlled usage). |
1266
+ | className | String | — | Additional classes to be set on the input element. |
1267
+ | children | any | — | Any element to be rendered inside the text element. |
1268
+ | icon | String | — | Define any rioglyph icon like "rioglyph-truck". |
1269
+ | iconSize | Number | — | The icon Size in px. |
1270
+ | name | String | — | Name to be given to the input element. |
1271
+ | iconLabelPosition | String | — | The label position. Possible values are: "horizontal" or "vertical". |