@rio-cloud/uikit-mcp 1.0.0 → 1.1.0
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.
- package/README.md +75 -40
- package/dist/doc-metadata.json +1872 -0
- package/dist/docs/components/accentBar.md +582 -0
- package/dist/docs/components/activity.md +330 -0
- package/dist/docs/components/animatedNumber.md +88 -0
- package/dist/docs/components/animatedTextReveal.md +381 -0
- package/dist/docs/components/animations.md +459 -0
- package/dist/docs/components/appHeader.md +737 -0
- package/dist/docs/components/appLayout.md +2016 -0
- package/dist/docs/components/appNavigationBar.md +274 -0
- package/dist/docs/components/areaCharts.md +828 -0
- package/dist/docs/components/aspectRatioPlaceholder.md +106 -0
- package/dist/docs/components/assetTree.md +3223 -0
- package/dist/docs/components/autosuggests.md +1177 -0
- package/dist/docs/components/avatar.md +206 -0
- package/dist/docs/components/banner.md +668 -0
- package/dist/docs/components/barCharts.md +2785 -0
- package/dist/docs/components/barList.md +517 -0
- package/dist/docs/components/basicMap.md +167 -0
- package/dist/docs/components/bottomSheet.md +721 -0
- package/dist/docs/components/button.md +775 -0
- package/dist/docs/components/buttonToolbar.md +134 -0
- package/dist/docs/components/calendarStripe.md +525 -0
- package/dist/docs/components/card.md +86 -0
- package/dist/docs/components/carousel.md +128 -0
- package/dist/docs/components/chartColors.md +716 -0
- package/dist/docs/components/chartsGettingStarted.md +28 -0
- package/dist/docs/components/chat.md +932 -0
- package/dist/docs/components/checkbox.md +996 -0
- package/dist/docs/components/clearableInput.md +806 -0
- package/dist/docs/components/collapse.md +189 -0
- package/dist/docs/components/composedCharts.md +424 -0
- package/dist/docs/components/contentLoader.md +674 -0
- package/dist/docs/components/dataTabs.md +1251 -0
- package/dist/docs/components/datepickers.md +2543 -0
- package/dist/docs/components/dialogs.md +2244 -0
- package/dist/docs/components/divider.md +219 -0
- package/dist/docs/components/dropdowns.md +17550 -0
- package/dist/docs/components/editableContent.md +1127 -0
- package/dist/docs/components/expander.md +970 -0
- package/dist/docs/components/fade.md +836 -0
- package/dist/docs/components/fadeExpander.md +180 -0
- package/dist/docs/components/fadeUp.md +396 -0
- package/dist/docs/components/feedback.md +758 -0
- package/dist/docs/components/filePickers.md +370 -0
- package/dist/docs/components/formLabel.md +251 -0
- package/dist/docs/components/fullscreenMap.md +10 -0
- package/dist/docs/components/groupedItemList.md +1001 -0
- package/dist/docs/components/iconList.md +306 -0
- package/dist/docs/components/imagePreloader.md +167 -0
- package/dist/docs/components/labeledElement.md +115 -0
- package/dist/docs/components/licensePlate.md +412 -0
- package/dist/docs/components/lineCharts.md +2014 -0
- package/dist/docs/components/listMenu.md +392 -0
- package/dist/docs/components/loadMore.md +219 -0
- package/dist/docs/components/mainNavigation.md +129 -0
- package/dist/docs/components/mapCircle.md +93 -0
- package/dist/docs/components/mapCluster.md +337 -0
- package/dist/docs/components/mapContext.md +284 -0
- package/dist/docs/components/mapDraggableMarker.md +150 -0
- package/dist/docs/components/mapGettingStarted.md +39 -0
- package/dist/docs/components/mapInfoBubble.md +135 -0
- package/dist/docs/components/mapLayerGroup.md +94 -0
- package/dist/docs/components/mapMarker.md +1814 -0
- package/dist/docs/components/mapPolygon.md +959 -0
- package/dist/docs/components/mapRoute.md +3816 -0
- package/dist/docs/components/mapRouteGenerator.md +6 -0
- package/dist/docs/components/mapSettings.md +1040 -0
- package/dist/docs/components/mapUtils.md +132 -0
- package/dist/docs/components/multiselects.md +1921 -0
- package/dist/docs/components/noData.md +210 -0
- package/dist/docs/components/notifications.md +314 -0
- package/dist/docs/components/numbercontrol.md +706 -0
- package/dist/docs/components/onboarding.md +297 -0
- package/dist/docs/components/page.md +241 -0
- package/dist/docs/components/pager.md +133 -0
- package/dist/docs/components/pieCharts.md +1284 -0
- package/dist/docs/components/popover.md +222 -0
- package/dist/docs/components/position.md +50 -0
- package/dist/docs/components/radialBarCharts.md +3663 -0
- package/dist/docs/components/radiobutton.md +1271 -0
- package/dist/docs/components/releaseNotes.md +135 -0
- package/dist/docs/components/resizer.md +162 -0
- package/dist/docs/components/responsiveColumnStripe.md +435 -0
- package/dist/docs/components/responsiveVideo.md +71 -0
- package/dist/docs/components/rioglyph.md +331 -0
- package/dist/docs/components/rules.md +965 -0
- package/dist/docs/components/saveableInput.md +1721 -0
- package/dist/docs/components/selects.md +1993 -0
- package/dist/docs/components/sidebar.md +332 -0
- package/dist/docs/components/sliders.md +376 -0
- package/dist/docs/components/smoothScrollbars.md +1180 -0
- package/dist/docs/components/spinners.md +506 -0
- package/dist/docs/components/states.md +1176 -0
- package/dist/docs/components/statsWidgets.md +636 -0
- package/dist/docs/components/statusBar.md +644 -0
- package/dist/docs/components/stepButton.md +61 -0
- package/dist/docs/components/steppedProgressBars.md +1064 -0
- package/dist/docs/components/subNavigation.md +470 -0
- package/dist/docs/components/supportMarker.md +115 -0
- package/dist/docs/components/svgImage.md +248 -0
- package/dist/docs/components/switch.md +554 -0
- package/dist/docs/components/tables.md +8 -0
- package/dist/docs/components/tagManager.md +476 -0
- package/dist/docs/components/tags.md +785 -0
- package/dist/docs/components/teaser.md +925 -0
- package/dist/docs/components/timeline.md +514 -0
- package/dist/docs/components/timepicker.md +262 -0
- package/dist/docs/components/toggleButton.md +178 -0
- package/dist/docs/components/tooltip.md +454 -0
- package/dist/docs/components/virtualList.md +483 -0
- package/dist/docs/foundations.md +20901 -0
- package/dist/docs/start/changelog.md +439 -0
- package/dist/docs/start/goodtoknow.md +14 -0
- package/dist/docs/start/guidelines/color-combinations.md +678 -0
- package/dist/docs/start/guidelines/custom-css.md +42 -0
- package/dist/docs/start/guidelines/custom-rioglyph.md +35 -0
- package/dist/docs/start/guidelines/formatting.md +587 -0
- package/dist/docs/start/guidelines/iframe.md +323 -0
- package/dist/docs/start/guidelines/obfuscate-data.md +30 -0
- package/dist/docs/start/guidelines/print-css.md +36 -0
- package/dist/docs/start/guidelines/spinner.md +710 -0
- package/dist/docs/start/guidelines/supported-browsers.md +10 -0
- package/dist/docs/start/guidelines/writing.md +635 -0
- package/dist/docs/start/howto.md +187 -0
- package/dist/docs/start/intro.md +43 -0
- package/dist/docs/start/responsiveness.md +98 -0
- package/dist/docs/templates/common-table.md +1111 -0
- package/dist/docs/templates/detail-views.md +942 -0
- package/dist/docs/templates/expandable-details.md +228 -0
- package/dist/docs/templates/feature-cards.md +549 -0
- package/dist/docs/templates/form-summary.md +199 -0
- package/dist/docs/templates/form-toggle.md +367 -0
- package/dist/docs/templates/list-blocks.md +1021 -0
- package/dist/docs/templates/loading-progress.md +109 -0
- package/dist/docs/templates/options-panel.md +152 -0
- package/dist/docs/templates/panel-variants.md +164 -0
- package/dist/docs/templates/progress-cards.md +607 -0
- package/dist/docs/templates/progress-success.md +142 -0
- package/dist/docs/templates/settings-form.md +434 -0
- package/dist/docs/templates/stats-blocks.md +1381 -0
- package/dist/docs/templates/table-panel.md +184 -0
- package/dist/docs/templates/table-row-animation.md +317 -0
- package/dist/docs/templates/usage-cards.md +227 -0
- package/dist/docs/utilities/deviceUtils.md +123 -0
- package/dist/docs/utilities/featureToggles.md +90 -0
- package/dist/docs/utilities/fuelTypeUtils.md +186 -0
- package/dist/docs/utilities/routeUtils.md +138 -0
- package/dist/docs/utilities/useAfterMount.md +66 -0
- package/dist/docs/utilities/useAutoAnimate.md +193 -0
- package/dist/docs/utilities/useAverage.md +95 -0
- package/dist/docs/utilities/useClickOutside.md +61 -0
- package/dist/docs/utilities/useClipboard.md +93 -0
- package/dist/docs/utilities/useCount.md +178 -0
- package/dist/docs/utilities/useDarkMode.md +49 -0
- package/dist/docs/utilities/useDebugInfo.md +126 -0
- package/dist/docs/utilities/useEffectOnce.md +58 -0
- package/dist/docs/utilities/useElapsedTime.md +58 -0
- package/dist/docs/utilities/useElementSize.md +71 -0
- package/dist/docs/utilities/useEsc.md +58 -0
- package/dist/docs/utilities/useEvent.md +64 -0
- package/dist/docs/utilities/useFocusTrap.md +85 -0
- package/dist/docs/utilities/useFullscreen.md +198 -0
- package/dist/docs/utilities/useHover.md +55 -0
- package/dist/docs/utilities/useIncomingPostMessages.md +237 -0
- package/dist/docs/utilities/useInterval.md +85 -0
- package/dist/docs/utilities/useIsFocusWithin.md +114 -0
- package/dist/docs/utilities/useKey.md +151 -0
- package/dist/docs/utilities/useLocalStorage.md +91 -0
- package/dist/docs/utilities/useLocationSuggestions.md +114 -0
- package/dist/docs/utilities/useMax.md +62 -0
- package/dist/docs/utilities/useMin.md +78 -0
- package/dist/docs/utilities/useMutationObserver.md +113 -0
- package/dist/docs/utilities/useOnScreen.md +138 -0
- package/dist/docs/utilities/useOnlineStatus.md +49 -0
- package/dist/docs/utilities/usePostMessage.md +117 -0
- package/dist/docs/utilities/usePostMessageSender.md +257 -0
- package/dist/docs/utilities/usePrevious.md +101 -0
- package/dist/docs/utilities/useResizeObserver.md +151 -0
- package/dist/docs/utilities/useScrollPosition.md +252 -0
- package/dist/docs/utilities/useSearch.md +228 -0
- package/dist/docs/utilities/useSorting.md +389 -0
- package/dist/docs/utilities/useStateWithValidation.md +83 -0
- package/dist/docs/utilities/useSum.md +155 -0
- package/dist/docs/utilities/useTableExport.md +404 -0
- package/dist/docs/utilities/useTableSelection.md +1120 -0
- package/dist/docs/utilities/useTimeout.md +55 -0
- package/dist/docs/utilities/useToggle.md +115 -0
- package/dist/docs/utilities/useWindowResize.md +70 -0
- package/dist/index.mjs +271 -0
- package/dist/search-synonyms.json +134 -0
- package/dist/version.json +4 -0
- package/package.json +23 -19
- package/bin/uikit-mcp.mjs +0 -23
- package/data/pages/Components/components/accentbar.json +0 -207
- package/data/pages/Components/components/activity.json +0 -87
- package/data/pages/Components/components/animatednumber.json +0 -99
- package/data/pages/Components/components/animations.json +0 -87
- package/data/pages/Components/components/appheader.json +0 -291
- package/data/pages/Components/components/applayout.json +0 -1198
- package/data/pages/Components/components/appnavigationbar.json +0 -327
- package/data/pages/Components/components/areacharts.json +0 -563
- package/data/pages/Components/components/aspectratioplaceholder.json +0 -75
- package/data/pages/Components/components/assettree.json +0 -3080
- package/data/pages/Components/components/autosuggests.json +0 -710
- package/data/pages/Components/components/avatar.json +0 -157
- package/data/pages/Components/components/banner.json +0 -599
- package/data/pages/Components/components/barcharts.json +0 -1507
- package/data/pages/Components/components/barlist.json +0 -223
- package/data/pages/Components/components/basicmap.json +0 -68
- package/data/pages/Components/components/bottomsheet.json +0 -601
- package/data/pages/Components/components/button.json +0 -583
- package/data/pages/Components/components/buttontoolbar.json +0 -63
- package/data/pages/Components/components/calendarstripe.json +0 -235
- package/data/pages/Components/components/card.json +0 -69
- package/data/pages/Components/components/carousel.json +0 -39
- package/data/pages/Components/components/chartcolors.json +0 -34
- package/data/pages/Components/components/chartsgettingstarted.json +0 -32
- package/data/pages/Components/components/chat.json +0 -39
- package/data/pages/Components/components/checkbox.json +0 -847
- package/data/pages/Components/components/clearableinput.json +0 -789
- package/data/pages/Components/components/collapse.json +0 -175
- package/data/pages/Components/components/composedcharts.json +0 -159
- package/data/pages/Components/components/contentloader.json +0 -233
- package/data/pages/Components/components/datatabs.json +0 -680
- package/data/pages/Components/components/datepickers.json +0 -287
- package/data/pages/Components/components/dialogs.json +0 -1492
- package/data/pages/Components/components/divider.json +0 -93
- package/data/pages/Components/components/dropdowns.json +0 -936
- package/data/pages/Components/components/editablecontent.json +0 -1117
- package/data/pages/Components/components/expander.json +0 -377
- package/data/pages/Components/components/fade.json +0 -403
- package/data/pages/Components/components/fadeexpander.json +0 -75
- package/data/pages/Components/components/fadeup.json +0 -127
- package/data/pages/Components/components/feedback.json +0 -269
- package/data/pages/Components/components/filepickers.json +0 -269
- package/data/pages/Components/components/formlabel.json +0 -115
- package/data/pages/Components/components/fullscreenmap.json +0 -22
- package/data/pages/Components/components/groupeditemlist.json +0 -323
- package/data/pages/Components/components/iconlist.json +0 -45
- package/data/pages/Components/components/imagepreloader.json +0 -81
- package/data/pages/Components/components/labeledelement.json +0 -75
- package/data/pages/Components/components/licenseplate.json +0 -69
- package/data/pages/Components/components/linecharts.json +0 -987
- package/data/pages/Components/components/listmenu.json +0 -313
- package/data/pages/Components/components/loadmore.json +0 -175
- package/data/pages/Components/components/mainnavigation.json +0 -39
- package/data/pages/Components/components/mapcircle.json +0 -34
- package/data/pages/Components/components/mapcluster.json +0 -51
- package/data/pages/Components/components/mapcontext.json +0 -105
- package/data/pages/Components/components/mapdraggablemarker.json +0 -34
- package/data/pages/Components/components/mapgettingstarted.json +0 -27
- package/data/pages/Components/components/mapgroup.json +0 -1198
- package/data/pages/Components/components/mapinfobubble.json +0 -34
- package/data/pages/Components/components/maplayergroup.json +0 -34
- package/data/pages/Components/components/mapmarker.json +0 -700
- package/data/pages/Components/components/mappolygon.json +0 -45
- package/data/pages/Components/components/maproute.json +0 -623
- package/data/pages/Components/components/maproutegenerator.json +0 -16
- package/data/pages/Components/components/mapsettings.json +0 -51
- package/data/pages/Components/components/maputils.json +0 -34
- package/data/pages/Components/components/multiselects.json +0 -1451
- package/data/pages/Components/components/nodata.json +0 -139
- package/data/pages/Components/components/notifications.json +0 -65
- package/data/pages/Components/components/numbercontrol.json +0 -301
- package/data/pages/Components/components/onboarding.json +0 -302
- package/data/pages/Components/components/page.json +0 -197
- package/data/pages/Components/components/pager.json +0 -93
- package/data/pages/Components/components/piecharts.json +0 -731
- package/data/pages/Components/components/popover.json +0 -251
- package/data/pages/Components/components/position.json +0 -69
- package/data/pages/Components/components/radialbarcharts.json +0 -1304
- package/data/pages/Components/components/radiobutton.json +0 -1105
- package/data/pages/Components/components/releasenotes.json +0 -44
- package/data/pages/Components/components/resizer.json +0 -93
- package/data/pages/Components/components/responsivecolumnstripe.json +0 -123
- package/data/pages/Components/components/responsivevideo.json +0 -75
- package/data/pages/Components/components/rioglyph.json +0 -93
- package/data/pages/Components/components/rules.json +0 -410
- package/data/pages/Components/components/saveableinput.json +0 -703
- package/data/pages/Components/components/selects.json +0 -701
- package/data/pages/Components/components/sidebar.json +0 -243
- package/data/pages/Components/components/sliders.json +0 -235
- package/data/pages/Components/components/smoothscrollbars.json +0 -335
- package/data/pages/Components/components/spinners.json +0 -343
- package/data/pages/Components/components/states.json +0 -1705
- package/data/pages/Components/components/statswidgets.json +0 -314
- package/data/pages/Components/components/statusbar.json +0 -177
- package/data/pages/Components/components/stepbutton.json +0 -57
- package/data/pages/Components/components/steppedprogressbars.json +0 -417
- package/data/pages/Components/components/subnavigation.json +0 -107
- package/data/pages/Components/components/supportmarker.json +0 -45
- package/data/pages/Components/components/svgimage.json +0 -81
- package/data/pages/Components/components/switch.json +0 -111
- package/data/pages/Components/components/tables.json +0 -144
- package/data/pages/Components/components/tagmanager.json +0 -86
- package/data/pages/Components/components/tags.json +0 -146
- package/data/pages/Components/components/teaser.json +0 -188
- package/data/pages/Components/components/timeline.json +0 -45
- package/data/pages/Components/components/timepicker.json +0 -163
- package/data/pages/Components/components/togglebutton.json +0 -247
- package/data/pages/Components/components/tooltip.json +0 -270
- package/data/pages/Components/components/virtuallist.json +0 -175
- package/data/pages/Foundations/foundations.json +0 -2475
- package/data/pages/Getting-started/start/changelog.json +0 -22
- package/data/pages/Getting-started/start/goodtoknow.json +0 -32
- package/data/pages/Getting-started/start/guidelines/color-combinations.json +0 -58
- package/data/pages/Getting-started/start/guidelines/custom-css.json +0 -27
- package/data/pages/Getting-started/start/guidelines/custom-rioglyph.json +0 -22
- package/data/pages/Getting-started/start/guidelines/formatting.json +0 -97
- package/data/pages/Getting-started/start/guidelines/iframe.json +0 -93
- package/data/pages/Getting-started/start/guidelines/obfuscate-data.json +0 -22
- package/data/pages/Getting-started/start/guidelines/print-css.json +0 -37
- package/data/pages/Getting-started/start/guidelines/spinner.json +0 -144
- package/data/pages/Getting-started/start/guidelines/supported-browsers.json +0 -22
- package/data/pages/Getting-started/start/guidelines/writing.json +0 -242
- package/data/pages/Getting-started/start/howto.json +0 -72
- package/data/pages/Getting-started/start/intro.json +0 -37
- package/data/pages/Getting-started/start/responsiveness.json +0 -52
- package/data/pages/Templates/templates/common-table.json +0 -39
- package/data/pages/Templates/templates/detail-views.json +0 -71
- package/data/pages/Templates/templates/expandable-details.json +0 -39
- package/data/pages/Templates/templates/feature-cards.json +0 -103
- package/data/pages/Templates/templates/form-summary.json +0 -39
- package/data/pages/Templates/templates/form-toggle.json +0 -39
- package/data/pages/Templates/templates/list-blocks.json +0 -119
- package/data/pages/Templates/templates/loading-progress.json +0 -39
- package/data/pages/Templates/templates/options-panel.json +0 -39
- package/data/pages/Templates/templates/panel-variants.json +0 -39
- package/data/pages/Templates/templates/progress-cards.json +0 -71
- package/data/pages/Templates/templates/progress-success.json +0 -39
- package/data/pages/Templates/templates/settings-form.json +0 -39
- package/data/pages/Templates/templates/stats-blocks.json +0 -135
- package/data/pages/Templates/templates/table-panel.json +0 -39
- package/data/pages/Templates/templates/table-row-animation.json +0 -39
- package/data/pages/Templates/templates/usage-cards.json +0 -39
- package/data/pages/Utilities/utilities/deviceutils.json +0 -39
- package/data/pages/Utilities/utilities/featuretoggles.json +0 -42
- package/data/pages/Utilities/utilities/fueltypeutils.json +0 -118
- package/data/pages/Utilities/utilities/routeutils.json +0 -34
- package/data/pages/Utilities/utilities/useaftermount.json +0 -63
- package/data/pages/Utilities/utilities/useaverage.json +0 -86
- package/data/pages/Utilities/utilities/useclickoutside.json +0 -69
- package/data/pages/Utilities/utilities/useclipboard.json +0 -57
- package/data/pages/Utilities/utilities/usecount.json +0 -92
- package/data/pages/Utilities/utilities/usedarkmode.json +0 -50
- package/data/pages/Utilities/utilities/usedebuginfo.json +0 -63
- package/data/pages/Utilities/utilities/useeffectonce.json +0 -57
- package/data/pages/Utilities/utilities/useelapsedtime.json +0 -57
- package/data/pages/Utilities/utilities/useelementsize.json +0 -63
- package/data/pages/Utilities/utilities/useesc.json +0 -57
- package/data/pages/Utilities/utilities/useevent.json +0 -75
- package/data/pages/Utilities/utilities/usefocustrap.json +0 -57
- package/data/pages/Utilities/utilities/usefullscreen.json +0 -197
- package/data/pages/Utilities/utilities/usehover.json +0 -57
- package/data/pages/Utilities/utilities/useinterval.json +0 -63
- package/data/pages/Utilities/utilities/useisfocuswithin.json +0 -75
- package/data/pages/Utilities/utilities/usekey.json +0 -75
- package/data/pages/Utilities/utilities/uselocalstorage.json +0 -69
- package/data/pages/Utilities/utilities/uselocationsuggestions.json +0 -110
- package/data/pages/Utilities/utilities/usemax.json +0 -86
- package/data/pages/Utilities/utilities/usemin.json +0 -86
- package/data/pages/Utilities/utilities/usemutationobserver.json +0 -69
- package/data/pages/Utilities/utilities/useonlinestatus.json +0 -39
- package/data/pages/Utilities/utilities/useonscreen.json +0 -63
- package/data/pages/Utilities/utilities/usepostmessage.json +0 -80
- package/data/pages/Utilities/utilities/useprevious.json +0 -63
- package/data/pages/Utilities/utilities/useresizeobserver.json +0 -65
- package/data/pages/Utilities/utilities/usescrollposition.json +0 -103
- package/data/pages/Utilities/utilities/usesearch.json +0 -197
- package/data/pages/Utilities/utilities/usesorting.json +0 -139
- package/data/pages/Utilities/utilities/usestatewithvalidation.json +0 -69
- package/data/pages/Utilities/utilities/usesum.json +0 -86
- package/data/pages/Utilities/utilities/usetableexport.json +0 -87
- package/data/pages/Utilities/utilities/usetableselection.json +0 -311
- package/data/pages/Utilities/utilities/usetimeout.json +0 -63
- package/data/pages/Utilities/utilities/usetoggle.json +0 -75
- package/data/pages/Utilities/utilities/usewindowresize.json +0 -63
- package/data/version.json +0 -4
- package/docs/content-schema.md +0 -147
- package/docs/navigation-inventory.json +0 -1310
- package/docs/search-synonyms.json +0 -43
- package/server/index.mjs +0 -268
- package/server/lib/load-docs.mjs +0 -48
- package/server/lib/normalise-doc.mjs +0 -220
- package/server/lib/render-markdown.mjs +0 -82
- package/server/lib/search-index.mjs +0 -49
- package/server/lib/types.js +0 -99
|
@@ -0,0 +1,636 @@
|
|
|
1
|
+
# StatsWidgets
|
|
2
|
+
|
|
3
|
+
*Category:* Components
|
|
4
|
+
*Section:* Content
|
|
5
|
+
*Source:* https://uikit.developers.rio.cloud/#components/statsWidgets
|
|
6
|
+
*Captured:* 2025-12-12T12:38:46.047Z
|
|
7
|
+
|
|
8
|
+
## StatsWidgets
|
|
9
|
+
|
|
10
|
+
**StatsWidget with another body component and additional footer**
|
|
11
|
+
|
|
12
|
+
**Interactive StatsWidget with filter option**
|
|
13
|
+
|
|
14
|
+
### Example: Example 1
|
|
15
|
+
|
|
16
|
+
Fleet
|
|
17
|
+
23
|
|
18
|
+
|
|
19
|
+
Trucks
|
|
20
|
+
|
|
21
|
+
14
|
|
22
|
+
|
|
23
|
+
Trailer
|
|
24
|
+
|
|
25
|
+
111
|
|
26
|
+
|
|
27
|
+
Driver
|
|
28
|
+
|
|
29
|
+
Notifications
|
|
30
|
+
45
|
|
31
|
+
|
|
32
|
+
Exceptions
|
|
33
|
+
|
|
34
|
+
144
|
|
35
|
+
|
|
36
|
+
Warnings
|
|
37
|
+
|
|
38
|
+
Activity
|
|
39
|
+
15
|
|
40
|
+
30
|
|
41
|
+
|
|
42
|
+
Availability
|
|
43
|
+
|
|
44
|
+
12
|
|
45
|
+
|
|
46
|
+
Driving
|
|
47
|
+
|
|
48
|
+
12
|
|
49
|
+
|
|
50
|
+
Working
|
|
51
|
+
|
|
52
|
+
9
|
|
53
|
+
|
|
54
|
+
Resting
|
|
55
|
+
|
|
56
|
+
Full width widget
|
|
57
|
+
|
|
58
|
+
23
|
|
59
|
+
|
|
60
|
+
Trucks
|
|
61
|
+
|
|
62
|
+
14
|
|
63
|
+
|
|
64
|
+
Trailer
|
|
65
|
+
|
|
66
|
+
111
|
|
67
|
+
|
|
68
|
+
Driver
|
|
69
|
+
|
|
70
|
+
#### Summary
|
|
71
|
+
|
|
72
|
+
Fleet
|
|
73
|
+
23
|
|
74
|
+
|
|
75
|
+
Trucks
|
|
76
|
+
|
|
77
|
+
14
|
|
78
|
+
|
|
79
|
+
Trailer
|
|
80
|
+
|
|
81
|
+
111
|
|
82
|
+
|
|
83
|
+
Driver
|
|
84
|
+
|
|
85
|
+
Notifications
|
|
86
|
+
45
|
|
87
|
+
|
|
88
|
+
Exceptions
|
|
89
|
+
|
|
90
|
+
144
|
|
91
|
+
|
|
92
|
+
Warnings
|
|
93
|
+
|
|
94
|
+
Activity
|
|
95
|
+
15
|
|
96
|
+
30
|
|
97
|
+
|
|
98
|
+
Availability
|
|
99
|
+
|
|
100
|
+
12
|
|
101
|
+
|
|
102
|
+
Driving
|
|
103
|
+
|
|
104
|
+
12
|
|
105
|
+
|
|
106
|
+
Working
|
|
107
|
+
|
|
108
|
+
9
|
|
109
|
+
|
|
110
|
+
Resting
|
|
111
|
+
|
|
112
|
+
Full width widget
|
|
113
|
+
|
|
114
|
+
23
|
|
115
|
+
|
|
116
|
+
Trucks
|
|
117
|
+
|
|
118
|
+
14
|
|
119
|
+
|
|
120
|
+
Trailer
|
|
121
|
+
|
|
122
|
+
111
|
|
123
|
+
|
|
124
|
+
Driver
|
|
125
|
+
|
|
126
|
+
#### React (tsx)
|
|
127
|
+
|
|
128
|
+
```tsx
|
|
129
|
+
import StatsWidgets from '@rio-cloud/rio-uikit/StatsWidgets';
|
|
130
|
+
import StatsWidget from '@rio-cloud/rio-uikit/StatsWidget';
|
|
131
|
+
import StatsWidgetNumber from '@rio-cloud/rio-uikit/StatsWidgetNumber';
|
|
132
|
+
import StatsWidgetSpacer from '@rio-cloud/rio-uikit/StatsWidgetSpacer';
|
|
133
|
+
|
|
134
|
+
export default () => (
|
|
135
|
+
<>
|
|
136
|
+
<StatsWidgets className='margin-bottom-20'>
|
|
137
|
+
<StatsWidget>
|
|
138
|
+
<StatsWidget.Header>Fleet</StatsWidget.Header>
|
|
139
|
+
<StatsWidget.Body>
|
|
140
|
+
<StatsWidgetNumber value='23' label='Trucks' />
|
|
141
|
+
<StatsWidgetSpacer />
|
|
142
|
+
<StatsWidgetNumber value='14' label='Trailer' />
|
|
143
|
+
<StatsWidgetSpacer />
|
|
144
|
+
<StatsWidgetNumber value='111' label='Driver' />
|
|
145
|
+
<StatsWidgetSpacer />
|
|
146
|
+
</StatsWidget.Body>
|
|
147
|
+
</StatsWidget>
|
|
148
|
+
|
|
149
|
+
<StatsWidget>
|
|
150
|
+
<StatsWidget.Header>Notifications</StatsWidget.Header>
|
|
151
|
+
<StatsWidget.Body>
|
|
152
|
+
<StatsWidgetNumber className='text-color-danger' value={45} label='Exceptions' />
|
|
153
|
+
<StatsWidgetSpacer />
|
|
154
|
+
<StatsWidgetNumber className='text-color-warning' value={144} label='Warnings' />
|
|
155
|
+
</StatsWidget.Body>
|
|
156
|
+
</StatsWidget>
|
|
157
|
+
|
|
158
|
+
<StatsWidget hasFilter onFilterReset={() => {}}>
|
|
159
|
+
<StatsWidget.Header>Activity</StatsWidget.Header>
|
|
160
|
+
<StatsWidget.Body>
|
|
161
|
+
<StatsWidgetNumber
|
|
162
|
+
className='text-color-status-available'
|
|
163
|
+
value={15}
|
|
164
|
+
total={30}
|
|
165
|
+
label='Availability'
|
|
166
|
+
clickable
|
|
167
|
+
/>
|
|
168
|
+
<StatsWidgetSpacer />
|
|
169
|
+
<StatsWidgetNumber className='text-color-status-driving' value={12} label='Driving' />
|
|
170
|
+
<StatsWidgetSpacer />
|
|
171
|
+
<StatsWidgetNumber className='text-color-status-working' value={12} label='Working' />
|
|
172
|
+
<StatsWidgetSpacer />
|
|
173
|
+
<StatsWidgetNumber className='text-color-status-resting' value={9} label='Resting' />
|
|
174
|
+
</StatsWidget.Body>
|
|
175
|
+
</StatsWidget>
|
|
176
|
+
</StatsWidgets>
|
|
177
|
+
|
|
178
|
+
<StatsWidgets>
|
|
179
|
+
<StatsWidget>
|
|
180
|
+
<StatsWidget.Header>Full width widget</StatsWidget.Header>
|
|
181
|
+
<StatsWidget.Body fullWidth>
|
|
182
|
+
<StatsWidgetNumber value='23' label='Trucks' />
|
|
183
|
+
<StatsWidgetSpacer />
|
|
184
|
+
<StatsWidgetNumber value='14' label='Trailer' />
|
|
185
|
+
<StatsWidgetSpacer />
|
|
186
|
+
<StatsWidgetNumber value='111' label='Driver' />
|
|
187
|
+
</StatsWidget.Body>
|
|
188
|
+
</StatsWidget>
|
|
189
|
+
</StatsWidgets>
|
|
190
|
+
</>
|
|
191
|
+
);
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
#### HTML (html)
|
|
195
|
+
|
|
196
|
+
```html
|
|
197
|
+
<div class="StatsWidget-wrapper margin-bottom-20">
|
|
198
|
+
<div class="StatsWidget">
|
|
199
|
+
<div class="StatsWidget-header">Fleet</div>
|
|
200
|
+
<div class="StatsWidget-body">
|
|
201
|
+
<div class="StatsWidgetNumber">
|
|
202
|
+
<div class="StatsWidgetNumber-counter">
|
|
203
|
+
<div class="StatsWidgetNumber-value">23</div>
|
|
204
|
+
</div>
|
|
205
|
+
<div class="StatsWidgetNumber-label">Trucks</div>
|
|
206
|
+
</div>
|
|
207
|
+
<div class="StatsWidget-body-column-spacer">
|
|
208
|
+
</div>
|
|
209
|
+
<div class="StatsWidgetNumber">
|
|
210
|
+
<div class="StatsWidgetNumber-counter">
|
|
211
|
+
<div class="StatsWidgetNumber-value">14</div>
|
|
212
|
+
</div>
|
|
213
|
+
<div class="StatsWidgetNumber-label">Trailer</div>
|
|
214
|
+
</div>
|
|
215
|
+
<div class="StatsWidget-body-column-spacer">
|
|
216
|
+
</div>
|
|
217
|
+
<div class="StatsWidgetNumber">
|
|
218
|
+
<div class="StatsWidgetNumber-counter">
|
|
219
|
+
<div class="StatsWidgetNumber-value">111</div>
|
|
220
|
+
</div>
|
|
221
|
+
<div class="StatsWidgetNumber-label">Driver</div>
|
|
222
|
+
</div>
|
|
223
|
+
<div class="StatsWidget-body-column-spacer">
|
|
224
|
+
</div>
|
|
225
|
+
</div>
|
|
226
|
+
</div>
|
|
227
|
+
<div class="StatsWidget">
|
|
228
|
+
<div class="StatsWidget-header">Notifications</div>
|
|
229
|
+
<div class="StatsWidget-body">
|
|
230
|
+
<div class="StatsWidgetNumber text-color-danger">
|
|
231
|
+
<div class="StatsWidgetNumber-counter">
|
|
232
|
+
<div class="StatsWidgetNumber-value">45</div>
|
|
233
|
+
</div>
|
|
234
|
+
<div class="StatsWidgetNumber-label">Exceptions</div>
|
|
235
|
+
</div>
|
|
236
|
+
<div class="StatsWidget-body-column-spacer">
|
|
237
|
+
</div>
|
|
238
|
+
<div class="StatsWidgetNumber text-color-warning">
|
|
239
|
+
<div class="StatsWidgetNumber-counter">
|
|
240
|
+
<div class="StatsWidgetNumber-value">144</div>
|
|
241
|
+
</div>
|
|
242
|
+
<div class="StatsWidgetNumber-label">Warnings</div>
|
|
243
|
+
</div>
|
|
244
|
+
</div>
|
|
245
|
+
</div>
|
|
246
|
+
<div class="StatsWidget">
|
|
247
|
+
<span class="bg-light hover-bg-highlight display-flex justify-content-center align-items-center padding-2 rounded-circle position-absolute top-15 right-15 display-block height-20 width-20 cursor-pointer">
|
|
248
|
+
<span class="rioglyph rioglyph-revert text-color-white text-size-12">
|
|
249
|
+
</span>
|
|
250
|
+
</span>
|
|
251
|
+
<div class="StatsWidget-header">Activity</div>
|
|
252
|
+
<div class="StatsWidget-body">
|
|
253
|
+
<div class="StatsWidgetNumber cursor-pointer text-color-status-available">
|
|
254
|
+
<div class="StatsWidgetNumber-counter">
|
|
255
|
+
<div class="StatsWidgetNumber-value">15</div>
|
|
256
|
+
<div class="StatsWidgetNumber-total">30</div>
|
|
257
|
+
</div>
|
|
258
|
+
<div class="StatsWidgetNumber-label">Availability</div>
|
|
259
|
+
</div>
|
|
260
|
+
<div class="StatsWidget-body-column-spacer">
|
|
261
|
+
</div>
|
|
262
|
+
<div class="StatsWidgetNumber text-color-status-driving">
|
|
263
|
+
<div class="StatsWidgetNumber-counter">
|
|
264
|
+
<div class="StatsWidgetNumber-value">12</div>
|
|
265
|
+
</div>
|
|
266
|
+
<div class="StatsWidgetNumber-label">Driving</div>
|
|
267
|
+
</div>
|
|
268
|
+
<div class="StatsWidget-body-column-spacer">
|
|
269
|
+
</div>
|
|
270
|
+
<div class="StatsWidgetNumber text-color-status-working">
|
|
271
|
+
<div class="StatsWidgetNumber-counter">
|
|
272
|
+
<div class="StatsWidgetNumber-value">12</div>
|
|
273
|
+
</div>
|
|
274
|
+
<div class="StatsWidgetNumber-label">Working</div>
|
|
275
|
+
</div>
|
|
276
|
+
<div class="StatsWidget-body-column-spacer">
|
|
277
|
+
</div>
|
|
278
|
+
<div class="StatsWidgetNumber text-color-status-resting">
|
|
279
|
+
<div class="StatsWidgetNumber-counter">
|
|
280
|
+
<div class="StatsWidgetNumber-value">9</div>
|
|
281
|
+
</div>
|
|
282
|
+
<div class="StatsWidgetNumber-label">Resting</div>
|
|
283
|
+
</div>
|
|
284
|
+
</div>
|
|
285
|
+
</div>
|
|
286
|
+
</div>
|
|
287
|
+
<div class="StatsWidget-wrapper">
|
|
288
|
+
<div class="StatsWidget">
|
|
289
|
+
<div class="StatsWidget-header">Full width widget</div>
|
|
290
|
+
<div class="StatsWidget-body full-width">
|
|
291
|
+
<div class="StatsWidget-body-column-spacer invisible">
|
|
292
|
+
</div>
|
|
293
|
+
<div class="StatsWidgetNumber">
|
|
294
|
+
<div class="StatsWidgetNumber-counter">
|
|
295
|
+
<div class="StatsWidgetNumber-value">23</div>
|
|
296
|
+
</div>
|
|
297
|
+
<div class="StatsWidgetNumber-label">Trucks</div>
|
|
298
|
+
</div>
|
|
299
|
+
<div class="StatsWidget-body-column-spacer">
|
|
300
|
+
</div>
|
|
301
|
+
<div class="StatsWidgetNumber">
|
|
302
|
+
<div class="StatsWidgetNumber-counter">
|
|
303
|
+
<div class="StatsWidgetNumber-value">14</div>
|
|
304
|
+
</div>
|
|
305
|
+
<div class="StatsWidgetNumber-label">Trailer</div>
|
|
306
|
+
</div>
|
|
307
|
+
<div class="StatsWidget-body-column-spacer">
|
|
308
|
+
</div>
|
|
309
|
+
<div class="StatsWidgetNumber">
|
|
310
|
+
<div class="StatsWidgetNumber-counter">
|
|
311
|
+
<div class="StatsWidgetNumber-value">111</div>
|
|
312
|
+
</div>
|
|
313
|
+
<div class="StatsWidgetNumber-label">Driver</div>
|
|
314
|
+
</div>
|
|
315
|
+
<div class="StatsWidget-body-column-spacer invisible">
|
|
316
|
+
</div>
|
|
317
|
+
</div>
|
|
318
|
+
</div>
|
|
319
|
+
</div>
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
#### Props: StatsWidgets, StatsWidget, StatsWidgetSpacer and StatsWidgetNumber
|
|
323
|
+
|
|
324
|
+
### StatsWidgets, StatsWidget, StatsWidgetSpacer and StatsWidgetNumber
|
|
325
|
+
|
|
326
|
+
| Name | Type | Default | Description |
|
|
327
|
+
| --- | --- | --- | --- |
|
|
328
|
+
| className | String | — | Addional class names to be added to the element. |
|
|
329
|
+
|
|
330
|
+
#### Props: StatsWidget
|
|
331
|
+
|
|
332
|
+
### StatsWidget
|
|
333
|
+
|
|
334
|
+
| Name | Type | Default | Description |
|
|
335
|
+
| --- | --- | --- | --- |
|
|
336
|
+
| hasFilter | Boolean | false | Defines whether a filter is active for this stats widget. |
|
|
337
|
+
| onFilterReset | Function | — | Callback to reset the filter. |
|
|
338
|
+
|
|
339
|
+
#### Props: StatsWidgetBody
|
|
340
|
+
|
|
341
|
+
### StatsWidgetBody
|
|
342
|
+
|
|
343
|
+
| Name | Type | Default | Description |
|
|
344
|
+
| --- | --- | --- | --- |
|
|
345
|
+
| fullWidth | Boolean | — | Whether to use flex space-between for StatsWidgetNumbers. |
|
|
346
|
+
|
|
347
|
+
#### Props: StatsWidgetNumber
|
|
348
|
+
|
|
349
|
+
### StatsWidgetNumber
|
|
350
|
+
|
|
351
|
+
| Name | Type | Default | Description |
|
|
352
|
+
| --- | --- | --- | --- |
|
|
353
|
+
| value | String / Number / Node | — | The value to be shown. |
|
|
354
|
+
| total | String / Number / Node | — | The total value to be shown i.e. in combination with an active filter. |
|
|
355
|
+
| label | String / Node | — | The label shown below the number. |
|
|
356
|
+
| clickable | Boolean | false | Defines whether or not the number is clickable i.e. in combination with a filter. |
|
|
357
|
+
| onClick | Function | — | Callback for when the user clicks the number widget. |
|
|
358
|
+
|
|
359
|
+
### Example: Example 2
|
|
360
|
+
|
|
361
|
+
Current activity
|
|
362
|
+
|
|
363
|
+
42 min resting
|
|
364
|
+
|
|
365
|
+
Last update 2 minutes ago
|
|
366
|
+
|
|
367
|
+
#### Summary
|
|
368
|
+
|
|
369
|
+
Current activity
|
|
370
|
+
|
|
371
|
+
42 min resting
|
|
372
|
+
|
|
373
|
+
Last update 2 minutes ago
|
|
374
|
+
|
|
375
|
+
#### React (tsx)
|
|
376
|
+
|
|
377
|
+
```tsx
|
|
378
|
+
import StatsWidgets from '@rio-cloud/rio-uikit/StatsWidgets';
|
|
379
|
+
import StatsWidget from '@rio-cloud/rio-uikit/StatsWidget';
|
|
380
|
+
import StatusBar from '@rio-cloud/rio-uikit/StatusBar';
|
|
381
|
+
|
|
382
|
+
export default () => (
|
|
383
|
+
<StatsWidgets>
|
|
384
|
+
<StatsWidget className='shadow-default'>
|
|
385
|
+
<StatsWidget.Header>Current activity</StatsWidget.Header>
|
|
386
|
+
<StatsWidget.Body className='padding-20'>
|
|
387
|
+
<StatusBar
|
|
388
|
+
icon={{
|
|
389
|
+
name: 'rioglyph-status-resting',
|
|
390
|
+
color: 'text-color-status-resting',
|
|
391
|
+
}}
|
|
392
|
+
label={{
|
|
393
|
+
value: '42 min resting',
|
|
394
|
+
alignment: 'top',
|
|
395
|
+
color: 'text-color-status-resting',
|
|
396
|
+
}}
|
|
397
|
+
progress={[
|
|
398
|
+
{
|
|
399
|
+
percentage: 30,
|
|
400
|
+
color: 'progress-bar-status-resting',
|
|
401
|
+
tooltip: <span>30%</span>,
|
|
402
|
+
},
|
|
403
|
+
{
|
|
404
|
+
percentage: 70,
|
|
405
|
+
color: 'progress-bar-light',
|
|
406
|
+
tooltip: <span>70%</span>,
|
|
407
|
+
},
|
|
408
|
+
]}
|
|
409
|
+
/>
|
|
410
|
+
</StatsWidget.Body>
|
|
411
|
+
<StatsWidget.Footer className='bg-lightest text-color-gray'>Last update 2 minutes ago</StatsWidget.Footer>
|
|
412
|
+
</StatsWidget>
|
|
413
|
+
</StatsWidgets>
|
|
414
|
+
);
|
|
415
|
+
```
|
|
416
|
+
|
|
417
|
+
#### HTML (html)
|
|
418
|
+
|
|
419
|
+
```html
|
|
420
|
+
<div class="StatsWidget-wrapper">
|
|
421
|
+
<div class="StatsWidget shadow-default">
|
|
422
|
+
<div class="StatsWidget-header">Current activity</div>
|
|
423
|
+
<div class="StatsWidget-body padding-20">
|
|
424
|
+
<div class="StatusBar width-100pct display-flex align-items-end">
|
|
425
|
+
<div class="flex-order-1 margin-right-5">
|
|
426
|
+
<span class="rioglyph rioglyph-status-resting text-color-status-resting text-size-h3">
|
|
427
|
+
</span>
|
|
428
|
+
</div>
|
|
429
|
+
<div class="display-flex flex-1-0 flex-order-1 flex-column margin-bottom-10">
|
|
430
|
+
<div class="display-flex justify-content-center">
|
|
431
|
+
<span class="display-flex ellipsis-1 flex-1-0 justify-content-center text-color-status-resting width-0 text-size-16 text-bold">42 min resting</span>
|
|
432
|
+
</div>
|
|
433
|
+
<div class="display-flex flex-1-0">
|
|
434
|
+
<div class="progress margin-0 flex-1-0 height-5">
|
|
435
|
+
<div class="progress-bar progress-bar-status-resting progress-divider" style="width: 30%;">
|
|
436
|
+
</div>
|
|
437
|
+
<div class="progress-bar progress-bar-light progress-divider" style="width: 70%;">
|
|
438
|
+
</div>
|
|
439
|
+
</div>
|
|
440
|
+
</div>
|
|
441
|
+
</div>
|
|
442
|
+
</div>
|
|
443
|
+
</div>
|
|
444
|
+
<div class="StatsWidget-footer bg-lightest text-color-gray">Last update 2 minutes ago</div>
|
|
445
|
+
</div>
|
|
446
|
+
</div>
|
|
447
|
+
```
|
|
448
|
+
|
|
449
|
+
#### Props: StatsWidgets, StatsWidget, StatsWidgetSpacer and StatsWidgetNumber
|
|
450
|
+
|
|
451
|
+
### StatsWidgets, StatsWidget, StatsWidgetSpacer and StatsWidgetNumber
|
|
452
|
+
|
|
453
|
+
| Name | Type | Default | Description |
|
|
454
|
+
| --- | --- | --- | --- |
|
|
455
|
+
| className | String | — | Addional class names to be added to the element. |
|
|
456
|
+
|
|
457
|
+
#### Props: StatsWidget
|
|
458
|
+
|
|
459
|
+
### StatsWidget
|
|
460
|
+
|
|
461
|
+
| Name | Type | Default | Description |
|
|
462
|
+
| --- | --- | --- | --- |
|
|
463
|
+
| hasFilter | Boolean | false | Defines whether a filter is active for this stats widget. |
|
|
464
|
+
| onFilterReset | Function | — | Callback to reset the filter. |
|
|
465
|
+
|
|
466
|
+
#### Props: StatsWidgetBody
|
|
467
|
+
|
|
468
|
+
### StatsWidgetBody
|
|
469
|
+
|
|
470
|
+
| Name | Type | Default | Description |
|
|
471
|
+
| --- | --- | --- | --- |
|
|
472
|
+
| fullWidth | Boolean | — | Whether to use flex space-between for StatsWidgetNumbers. |
|
|
473
|
+
|
|
474
|
+
#### Props: StatsWidgetNumber
|
|
475
|
+
|
|
476
|
+
### StatsWidgetNumber
|
|
477
|
+
|
|
478
|
+
| Name | Type | Default | Description |
|
|
479
|
+
| --- | --- | --- | --- |
|
|
480
|
+
| value | String / Number / Node | — | The value to be shown. |
|
|
481
|
+
| total | String / Number / Node | — | The total value to be shown i.e. in combination with an active filter. |
|
|
482
|
+
| label | String / Node | — | The label shown below the number. |
|
|
483
|
+
| clickable | Boolean | false | Defines whether or not the number is clickable i.e. in combination with a filter. |
|
|
484
|
+
| onClick | Function | — | Callback for when the user clicks the number widget. |
|
|
485
|
+
|
|
486
|
+
### Example: Example 3
|
|
487
|
+
|
|
488
|
+
Notifications
|
|
489
|
+
45
|
|
490
|
+
|
|
491
|
+
Exceptions
|
|
492
|
+
|
|
493
|
+
144
|
|
494
|
+
|
|
495
|
+
Warnings
|
|
496
|
+
|
|
497
|
+
#### Summary
|
|
498
|
+
|
|
499
|
+
Notifications
|
|
500
|
+
45
|
|
501
|
+
|
|
502
|
+
Exceptions
|
|
503
|
+
|
|
504
|
+
144
|
|
505
|
+
|
|
506
|
+
Warnings
|
|
507
|
+
|
|
508
|
+
#### React (tsx)
|
|
509
|
+
|
|
510
|
+
```tsx
|
|
511
|
+
import { useState } from 'react';
|
|
512
|
+
|
|
513
|
+
import StatsWidgets from '@rio-cloud/rio-uikit/StatsWidgets';
|
|
514
|
+
import StatsWidget from '@rio-cloud/rio-uikit/StatsWidget';
|
|
515
|
+
import StatsWidgetNumber from '@rio-cloud/rio-uikit/StatsWidgetNumber';
|
|
516
|
+
import StatsWidgetSpacer from '@rio-cloud/rio-uikit/StatsWidgetSpacer';
|
|
517
|
+
|
|
518
|
+
type Stat = {
|
|
519
|
+
value: number;
|
|
520
|
+
total?: number;
|
|
521
|
+
};
|
|
522
|
+
|
|
523
|
+
type Stats = {
|
|
524
|
+
exceptions: Stat;
|
|
525
|
+
warnings: Stat;
|
|
526
|
+
};
|
|
527
|
+
|
|
528
|
+
const defaultStats: Stats = {
|
|
529
|
+
exceptions: { value: 45 },
|
|
530
|
+
warnings: { value: 144 },
|
|
531
|
+
};
|
|
532
|
+
|
|
533
|
+
const mockFilteredStats: Stats = {
|
|
534
|
+
exceptions: { value: 17, total: 45 },
|
|
535
|
+
warnings: { value: 22, total: 144 },
|
|
536
|
+
};
|
|
537
|
+
|
|
538
|
+
export default () => {
|
|
539
|
+
const [hasFilter, setHasFilter] = useState(false);
|
|
540
|
+
|
|
541
|
+
const handleToggleFilter = () => setHasFilter(!hasFilter);
|
|
542
|
+
const handleResetFilters = () => setHasFilter(false);
|
|
543
|
+
|
|
544
|
+
const stats = hasFilter ? mockFilteredStats : defaultStats;
|
|
545
|
+
|
|
546
|
+
return (
|
|
547
|
+
<StatsWidgets>
|
|
548
|
+
<StatsWidget hasFilter={hasFilter} onFilterReset={handleResetFilters}>
|
|
549
|
+
<StatsWidget.Header>Notifications</StatsWidget.Header>
|
|
550
|
+
<StatsWidget.Body>
|
|
551
|
+
<StatsWidgetNumber
|
|
552
|
+
className='text-color-danger'
|
|
553
|
+
value={stats.exceptions.value}
|
|
554
|
+
total={stats.exceptions.total}
|
|
555
|
+
label='Exceptions'
|
|
556
|
+
onClick={handleToggleFilter}
|
|
557
|
+
clickable
|
|
558
|
+
/>
|
|
559
|
+
<StatsWidgetSpacer />
|
|
560
|
+
<StatsWidgetNumber
|
|
561
|
+
className='text-color-warning'
|
|
562
|
+
value={stats.warnings.value}
|
|
563
|
+
total={stats.warnings.total}
|
|
564
|
+
label='Warnings'
|
|
565
|
+
onClick={handleToggleFilter}
|
|
566
|
+
clickable
|
|
567
|
+
/>
|
|
568
|
+
</StatsWidget.Body>
|
|
569
|
+
</StatsWidget>
|
|
570
|
+
</StatsWidgets>
|
|
571
|
+
);
|
|
572
|
+
};
|
|
573
|
+
```
|
|
574
|
+
|
|
575
|
+
#### HTML (html)
|
|
576
|
+
|
|
577
|
+
```html
|
|
578
|
+
<div class="StatsWidget-wrapper">
|
|
579
|
+
<div class="StatsWidget">
|
|
580
|
+
<div class="StatsWidget-header">Notifications</div>
|
|
581
|
+
<div class="StatsWidget-body">
|
|
582
|
+
<div class="StatsWidgetNumber cursor-pointer text-color-danger">
|
|
583
|
+
<div class="StatsWidgetNumber-counter">
|
|
584
|
+
<div class="StatsWidgetNumber-value">45</div>
|
|
585
|
+
</div>
|
|
586
|
+
<div class="StatsWidgetNumber-label">Exceptions</div>
|
|
587
|
+
</div>
|
|
588
|
+
<div class="StatsWidget-body-column-spacer">
|
|
589
|
+
</div>
|
|
590
|
+
<div class="StatsWidgetNumber cursor-pointer text-color-warning">
|
|
591
|
+
<div class="StatsWidgetNumber-counter">
|
|
592
|
+
<div class="StatsWidgetNumber-value">144</div>
|
|
593
|
+
</div>
|
|
594
|
+
<div class="StatsWidgetNumber-label">Warnings</div>
|
|
595
|
+
</div>
|
|
596
|
+
</div>
|
|
597
|
+
</div>
|
|
598
|
+
</div>
|
|
599
|
+
```
|
|
600
|
+
|
|
601
|
+
#### Props: StatsWidgets, StatsWidget, StatsWidgetSpacer and StatsWidgetNumber
|
|
602
|
+
|
|
603
|
+
### StatsWidgets, StatsWidget, StatsWidgetSpacer and StatsWidgetNumber
|
|
604
|
+
|
|
605
|
+
| Name | Type | Default | Description |
|
|
606
|
+
| --- | --- | --- | --- |
|
|
607
|
+
| className | String | — | Addional class names to be added to the element. |
|
|
608
|
+
|
|
609
|
+
#### Props: StatsWidget
|
|
610
|
+
|
|
611
|
+
### StatsWidget
|
|
612
|
+
|
|
613
|
+
| Name | Type | Default | Description |
|
|
614
|
+
| --- | --- | --- | --- |
|
|
615
|
+
| hasFilter | Boolean | false | Defines whether a filter is active for this stats widget. |
|
|
616
|
+
| onFilterReset | Function | — | Callback to reset the filter. |
|
|
617
|
+
|
|
618
|
+
#### Props: StatsWidgetBody
|
|
619
|
+
|
|
620
|
+
### StatsWidgetBody
|
|
621
|
+
|
|
622
|
+
| Name | Type | Default | Description |
|
|
623
|
+
| --- | --- | --- | --- |
|
|
624
|
+
| fullWidth | Boolean | — | Whether to use flex space-between for StatsWidgetNumbers. |
|
|
625
|
+
|
|
626
|
+
#### Props: StatsWidgetNumber
|
|
627
|
+
|
|
628
|
+
### StatsWidgetNumber
|
|
629
|
+
|
|
630
|
+
| Name | Type | Default | Description |
|
|
631
|
+
| --- | --- | --- | --- |
|
|
632
|
+
| value | String / Number / Node | — | The value to be shown. |
|
|
633
|
+
| total | String / Number / Node | — | The total value to be shown i.e. in combination with an active filter. |
|
|
634
|
+
| label | String / Node | — | The label shown below the number. |
|
|
635
|
+
| clickable | Boolean | false | Defines whether or not the number is clickable i.e. in combination with a filter. |
|
|
636
|
+
| onClick | Function | — | Callback for when the user clicks the number widget. |
|