@rio-cloud/rio-uikit 2.0.1 → 2.2.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/CircularProgress.d.ts +2 -0
- package/CircularProgress.js +5 -0
- package/CircularProgress.js.map +1 -0
- package/RadioCardGroup.d.ts +2 -0
- package/RadioCardGroup.js +7 -0
- package/RadioCardGroup.js.map +1 -0
- package/SearchHighlightText.d.ts +2 -0
- package/SearchHighlightText.js +5 -0
- package/SearchHighlightText.js.map +1 -0
- package/TextTruncateMiddle.d.ts +2 -0
- package/TextTruncateMiddle.js +5 -0
- package/TextTruncateMiddle.js.map +1 -0
- package/Tracker.d.ts +2 -0
- package/Tracker.js +5 -0
- package/Tracker.js.map +1 -0
- package/classNames.d.ts +2 -0
- package/classNames.js +5 -0
- package/classNames.js.map +1 -0
- package/components/accentBar/AccentBar.js +1 -1
- package/components/accentBar/AccentBar.js.map +1 -1
- package/components/actionBarItem/ActionBarItem.d.ts +2 -2
- package/components/actionBarItem/ActionBarItem.js +7 -7
- package/components/actionBarItem/ActionBarItem.js.map +1 -1
- package/components/actionBarItem/ActionBarItemIcon.js +1 -1
- package/components/actionBarItem/ActionBarItemIcon.js.map +1 -1
- package/components/actionBarItem/ActionBarItemList.js +1 -1
- package/components/actionBarItem/ActionBarItemList.js.map +1 -1
- package/components/actionBarItem/ActionBarItemListItem.js +1 -1
- package/components/actionBarItem/ActionBarItemListItem.js.map +1 -1
- package/components/actionBarItem/ActionBarItemListSeparator.js +1 -1
- package/components/actionBarItem/ActionBarItemListSeparator.js.map +1 -1
- package/components/actionBarItem/ActionBarItemPopoverContent.js +3 -3
- package/components/actionBarItem/ActionBarItemPopoverContent.js.map +1 -1
- package/components/actionBarItem/ActionBarOverlay.js +1 -1
- package/components/actionBarItem/ActionBarOverlay.js.map +1 -1
- package/components/activity/Activity.js +1 -1
- package/components/activity/Activity.js.map +1 -1
- package/components/animatedTextReveal/AnimatedTextReveal.js +1 -1
- package/components/animatedTextReveal/AnimatedTextReveal.js.map +1 -1
- package/components/applicationHeader/AppMenu.js +2 -2
- package/components/applicationHeader/AppMenu.js.map +1 -1
- package/components/applicationHeader/AppMenuDropdown.js +13 -11
- package/components/applicationHeader/AppMenuDropdown.js.map +1 -1
- package/components/applicationHeader/ApplicationHeader.d.ts +6 -7
- package/components/applicationHeader/ApplicationHeader.js +1 -1
- package/components/applicationHeader/ApplicationHeader.js.map +1 -1
- package/components/applicationHeader/MobileHeaderModal.js +8 -8
- package/components/applicationHeader/MobileHeaderModal.js.map +1 -1
- package/components/applicationHeader/MobileSubmoduleNavigation.js +1 -1
- package/components/applicationHeader/MobileSubmoduleNavigation.js.map +1 -1
- package/components/applicationHeader/NavItems.js +4 -4
- package/components/applicationHeader/NavItems.js.map +1 -1
- package/components/applicationLayout/ApplicationLayout.js +10 -10
- package/components/applicationLayout/ApplicationLayout.js.map +1 -1
- package/components/applicationLayout/ApplicationLayoutBody.js +2 -2
- package/components/applicationLayout/ApplicationLayoutBody.js.map +1 -1
- package/components/applicationLayout/ApplicationLayoutBodyBanner.js +1 -1
- package/components/applicationLayout/ApplicationLayoutBodyBanner.js.map +1 -1
- package/components/applicationLayout/ApplicationLayoutBodyBottomBar.js +1 -1
- package/components/applicationLayout/ApplicationLayoutBodyBottomBar.js.map +1 -1
- package/components/applicationLayout/ApplicationLayoutBodyNavigation.js +1 -1
- package/components/applicationLayout/ApplicationLayoutBodyNavigation.js.map +1 -1
- package/components/applicationLayout/ApplicationLayoutHeader.js +1 -1
- package/components/applicationLayout/ApplicationLayoutHeader.js.map +1 -1
- package/components/applicationLayout/ApplicationLayoutSidebar.js +1 -1
- package/components/applicationLayout/ApplicationLayoutSidebar.js.map +1 -1
- package/components/applicationLayout/SubNavigation.d.ts +7 -0
- package/components/applicationLayout/SubNavigation.js +1 -1
- package/components/applicationLayout/SubNavigation.js.map +1 -1
- package/components/assetTree/AssetTree.d.ts +7 -0
- package/components/assetTree/AssetTree.js +1 -1
- package/components/assetTree/AssetTree.js.map +1 -1
- package/components/assetTree/Tree.d.ts +15 -0
- package/components/assetTree/Tree.js +1 -1
- package/components/assetTree/Tree.js.map +1 -1
- package/components/assetTree/TreeIcon.d.ts +30 -0
- package/components/assetTree/TreeIcon.js +16 -0
- package/components/assetTree/TreeIcon.js.map +1 -0
- package/components/assetTree/TreeLeaf.js +23 -23
- package/components/assetTree/TreeLeaf.js.map +1 -1
- package/components/assetTree/TreeNode.js +25 -25
- package/components/assetTree/TreeNode.js.map +1 -1
- package/components/assetTree/TreeNodeContainer.js +1 -1
- package/components/assetTree/TreeNodeContainer.js.map +1 -1
- package/components/assetTree/TreeOption.js +3 -3
- package/components/assetTree/TreeOption.js.map +1 -1
- package/components/assetTree/TreeOptions.js +4 -4
- package/components/assetTree/TreeOptions.js.map +1 -1
- package/components/assetTree/TreeRoot.js +3 -3
- package/components/assetTree/TreeRoot.js.map +1 -1
- package/components/assetTree/TreeSearch.d.ts +2 -0
- package/components/assetTree/TreeSearch.js +3 -3
- package/components/assetTree/TreeSearch.js.map +1 -1
- package/components/assetTree/TreeSidebar.js +1 -1
- package/components/assetTree/TreeSidebar.js.map +1 -1
- package/components/assetTree/TreeSidebarCategories.js +4 -4
- package/components/assetTree/TreeSidebarCategories.js.map +1 -1
- package/components/assetTree/TreeSummary.js +1 -1
- package/components/assetTree/TreeSummary.js.map +1 -1
- package/components/assetTree/TypeCounter.js +1 -1
- package/components/assetTree/TypeCounter.js.map +1 -1
- package/components/autosuggest/AutoSuggest.js +1 -1
- package/components/autosuggest/AutoSuggest.js.map +1 -1
- package/components/avatar/Avatar.js +1 -1
- package/components/avatar/Avatar.js.map +1 -1
- package/components/banner/Banner.js +1 -1
- package/components/banner/Banner.js.map +1 -1
- package/components/banner/BannerContent.js +1 -1
- package/components/banner/BannerContent.js.map +1 -1
- package/components/barList/BarList.d.ts +26 -0
- package/components/barList/BarList.js +1 -1
- package/components/barList/BarList.js.map +1 -1
- package/components/bottomSheet/BottomSheet.d.ts +17 -3
- package/components/bottomSheet/BottomSheet.js +1 -1
- package/components/bottomSheet/BottomSheet.js.map +1 -1
- package/components/bottomSheet/TimedBottomSheet.d.ts +10 -0
- package/components/bottomSheet/TimedBottomSheet.js.map +1 -1
- package/components/button/Button.d.ts +53 -7
- package/components/button/Button.js +87 -64
- package/components/button/Button.js.map +1 -1
- package/components/button/ButtonToolbar.js +1 -1
- package/components/button/ButtonToolbar.js.map +1 -1
- package/components/button/ToggleButton.d.ts +4 -1
- package/components/button/ToggleButton.js.map +1 -1
- package/components/calendarStripe/CalendarStripe.d.ts +1 -1
- package/components/calendarStripe/CalendarStripe.js +48 -50
- package/components/calendarStripe/CalendarStripe.js.map +1 -1
- package/components/card/Card.js +1 -1
- package/components/card/Card.js.map +1 -1
- package/components/charts/Area.d.ts +2 -2
- package/components/charts/Area.js.map +1 -1
- package/components/charts/Line.d.ts +2 -2
- package/components/charts/Line.js.map +1 -1
- package/components/charts/RadialBarChart.js +106 -103
- package/components/charts/RadialBarChart.js.map +1 -1
- package/components/checkbox/Checkbox.d.ts +0 -3
- package/components/checkbox/Checkbox.js +6 -6
- package/components/checkbox/Checkbox.js.map +1 -1
- package/components/circularProgress/CircularProgress.d.ts +139 -0
- package/components/circularProgress/CircularProgress.js +197 -0
- package/components/circularProgress/CircularProgress.js.map +1 -0
- package/components/clearableInput/ClearableInput.d.ts +21 -20
- package/components/clearableInput/ClearableInput.js +9 -9
- package/components/clearableInput/ClearableInput.js.map +1 -1
- package/components/collapse/Collapse.d.ts +3 -0
- package/components/collapse/Collapse.js +12 -12
- package/components/collapse/Collapse.js.map +1 -1
- package/components/contentLoader/ContentLoader.d.ts +10 -2
- package/components/contentLoader/ContentLoader.js.map +1 -1
- package/components/dataTabs/DataTabHeader.js +1 -1
- package/components/dataTabs/DataTabHeader.js.map +1 -1
- package/components/dataTabs/DataTabs.d.ts +6 -0
- package/components/dataTabs/DataTabs.js +4 -4
- package/components/dataTabs/DataTabs.js.map +1 -1
- package/components/datepicker/DatePicker.js +6 -6
- package/components/datepicker/DatePicker.js.map +1 -1
- package/components/datepicker/DateRangePicker.js +1 -1
- package/components/datepicker/DateRangePicker.js.map +1 -1
- package/components/datepicker/DayPicker.js +1 -1
- package/components/datepicker/DayPicker.js.map +1 -1
- package/components/dialog/ConfirmationDialog.d.ts +22 -0
- package/components/dialog/ConfirmationDialog.js.map +1 -1
- package/components/dialog/Dialog.d.ts +13 -1
- package/components/dialog/Dialog.js +55 -55
- package/components/dialog/Dialog.js.map +1 -1
- package/components/dialog/DialogBody.js +1 -1
- package/components/dialog/DialogBody.js.map +1 -1
- package/components/dialog/DialogFooter.js +1 -1
- package/components/dialog/DialogFooter.js.map +1 -1
- package/components/dialog/DialogHeader.js +1 -1
- package/components/dialog/DialogHeader.js.map +1 -1
- package/components/dialog/MediaDialog.js +1 -1
- package/components/dialog/MediaDialog.js.map +1 -1
- package/components/dialog/ReleaseNotesDialog.d.ts +3 -3
- package/components/dialog/ReleaseNotesDialog.js.map +1 -1
- package/components/dialog/SplitDialog.js +1 -1
- package/components/dialog/SplitDialog.js.map +1 -1
- package/components/divider/Divider.js +1 -1
- package/components/divider/Divider.js.map +1 -1
- package/components/dropdown/ButtonDropdown.d.ts +4 -0
- package/components/dropdown/ButtonDropdown.js +52 -52
- package/components/dropdown/ButtonDropdown.js.map +1 -1
- package/components/dropdown/DropdownSubmenu.d.ts +4 -0
- package/components/dropdown/DropdownSubmenu.js +3 -3
- package/components/dropdown/DropdownSubmenu.js.map +1 -1
- package/components/dropdown/DropdownToggleButton.d.ts +1 -1
- package/components/dropdown/DropdownToggleButton.js +4 -3
- package/components/dropdown/DropdownToggleButton.js.map +1 -1
- package/components/dropdown/SplitCaretButton.js +6 -6
- package/components/dropdown/SplitCaretButton.js.map +1 -1
- package/components/editableContent/EditableContent.d.ts +6 -0
- package/components/editableContent/EditableContent.js +1 -1
- package/components/editableContent/EditableContent.js.map +1 -1
- package/components/ellipsis/TextTruncateMiddle.d.ts +23 -0
- package/components/ellipsis/TextTruncateMiddle.js +21 -0
- package/components/ellipsis/TextTruncateMiddle.js.map +1 -0
- package/components/expander/ExpanderList.d.ts +3 -0
- package/components/expander/ExpanderList.js +5 -5
- package/components/expander/ExpanderList.js.map +1 -1
- package/components/expander/ExpanderPanel.d.ts +14 -4
- package/components/expander/ExpanderPanel.js +1 -1
- package/components/expander/ExpanderPanel.js.map +1 -1
- package/components/fade/Fade.d.ts +1 -1
- package/components/fade/Fade.js.map +1 -1
- package/components/feedback/FeedbackRating.js +1 -1
- package/components/feedback/FeedbackRating.js.map +1 -1
- package/components/feedback/FeedbackReactions.js +1 -1
- package/components/feedback/FeedbackReactions.js.map +1 -1
- package/components/filepicker/FilePicker.d.ts +0 -2
- package/components/filepicker/FilePicker.js.map +1 -1
- package/components/formLabel/FormLabel.js +6 -9
- package/components/formLabel/FormLabel.js.map +1 -1
- package/components/formLabel/LabeledElement.js +1 -1
- package/components/formLabel/LabeledElement.js.map +1 -1
- package/components/groupedItemList/GroupedItemList.d.ts +10 -7
- package/components/groupedItemList/GroupedItemList.js.map +1 -1
- package/components/listMenu/ListMenu.js +2 -5
- package/components/listMenu/ListMenu.js.map +1 -1
- package/components/listMenu/ListMenuGroup.d.ts +2 -1
- package/components/listMenu/ListMenuGroup.js +2 -2
- package/components/listMenu/ListMenuGroup.js.map +1 -1
- package/components/loadMore/LoadMoreButton.js +1 -1
- package/components/loadMore/LoadMoreButton.js.map +1 -1
- package/components/loadMore/LoadMoreProgress.js +1 -1
- package/components/loadMore/LoadMoreProgress.js.map +1 -1
- package/components/map/components/Map.js.map +1 -1
- package/components/map/components/constants.js.map +1 -1
- package/components/map/components/features/ContextMenuItem.d.ts +1 -1
- package/components/map/components/features/ContextMenuItem.js +2 -17
- package/components/map/components/features/ContextMenuItem.js.map +1 -1
- package/components/map/components/features/MapSettings.js +4 -4
- package/components/map/components/features/MapSettings.js.map +1 -1
- package/components/map/components/features/basics/Polyline.d.ts +4 -1
- package/components/map/components/features/basics/Polyline.js +1 -1
- package/components/map/components/features/basics/Polyline.js.map +1 -1
- package/components/map/components/features/layers/MarkerLayer.d.ts +3 -1
- package/components/map/components/features/layers/MarkerLayer.js.map +1 -1
- package/components/map/components/features/layers/clustering/ClusterLayer.js +1 -1
- package/components/map/components/features/layers/clustering/ClusterLayer.js.map +1 -1
- package/components/map/components/features/layers/clustering/SimpleClusterLayer.d.ts +3 -2
- package/components/map/components/features/layers/clustering/SimpleClusterLayer.js.map +1 -1
- package/components/map/components/features/layers/overlayLayers/RoadRestrictionLayer.js +7 -7
- package/components/map/components/features/layers/overlayLayers/RoadRestrictionLayer.js.map +1 -1
- package/components/map/components/features/layers/overlayLayers/TrafficLayer.js +4 -4
- package/components/map/components/features/layers/overlayLayers/TrafficLayer.js.map +1 -1
- package/components/map/components/features/settings/MapSettingsItem.js +1 -1
- package/components/map/components/features/settings/MapSettingsItem.js.map +1 -1
- package/components/map/components/features/settings/MapSettingsPanel.js +6 -20
- package/components/map/components/features/settings/MapSettingsPanel.js.map +1 -1
- package/components/map/components/features/settings/MapSettingsTile.js +87 -61
- package/components/map/components/features/settings/MapSettingsTile.js.map +1 -1
- package/components/map/components/features/settings/ZoomButtons.js +1 -1
- package/components/map/components/features/settings/ZoomButtons.js.map +1 -1
- package/components/map/components/features/settings/builtinSettings/MapTypeSettings.d.ts +38 -1
- package/components/map/components/features/settings/builtinSettings/MapTypeSettings.js +128 -92
- package/components/map/components/features/settings/builtinSettings/MapTypeSettings.js.map +1 -1
- package/components/map/utils/clustering.d.ts +6 -1
- package/components/map/utils/clustering.js +25 -19
- package/components/map/utils/clustering.js.map +1 -1
- package/components/map/utils/eventHandling.js +9 -9
- package/components/map/utils/eventHandling.js.map +1 -1
- package/components/map/utils/mapUtils.d.ts +6 -6
- package/components/map/utils/mapUtils.js +14 -19
- package/components/map/utils/mapUtils.js.map +1 -1
- package/components/map/utils/rendering.d.ts +1 -1
- package/components/map/utils/rendering.js +23 -23
- package/components/map/utils/rendering.js.map +1 -1
- package/components/mapMarker/ClusterMapMarker.js +1 -1
- package/components/mapMarker/ClusterMapMarker.js.map +1 -1
- package/components/mapMarker/SingleMapMarker.js +1 -1
- package/components/mapMarker/SingleMapMarker.js.map +1 -1
- package/components/menuItems/MenuItem.d.ts +23 -0
- package/components/menuItems/MenuItem.js +1 -1
- package/components/menuItems/MenuItem.js.map +1 -1
- package/components/menuItems/MenuItemList.js +1 -1
- package/components/menuItems/MenuItemList.js.map +1 -1
- package/components/navigation/AppNavigationBar.js +4 -4
- package/components/navigation/AppNavigationBar.js.map +1 -1
- package/components/noData/NoData.js +1 -1
- package/components/noData/NoData.js.map +1 -1
- package/components/notification/Notification.js +4 -4
- package/components/notification/Notification.js.map +1 -1
- package/components/numberControl/NumberControl.js +4 -4
- package/components/numberControl/NumberControl.js.map +1 -1
- package/components/numberInput/NumberInput.js +1 -1
- package/components/numberInput/NumberInput.js.map +1 -1
- package/components/onboarding/OnboardingTip.d.ts +18 -12
- package/components/onboarding/OnboardingTip.js +4 -4
- package/components/onboarding/OnboardingTip.js.map +1 -1
- package/components/overlay/OverlayTrigger.d.ts +43 -1
- package/components/overlay/OverlayTrigger.js.map +1 -1
- package/components/page/Page.js +1 -1
- package/components/page/Page.js.map +1 -1
- package/components/pager/Pager.d.ts +3 -0
- package/components/pager/Pager.js +1 -1
- package/components/pager/Pager.js.map +1 -1
- package/components/popover/Popover.d.ts +1 -0
- package/components/popover/Popover.js.map +1 -1
- package/components/preloader/ImagePreloader.d.ts +1 -1
- package/components/preloader/ImagePreloader.js.map +1 -1
- package/components/radiobutton/RadioButton.d.ts +10 -6
- package/components/radiobutton/RadioButton.js +5 -5
- package/components/radiobutton/RadioButton.js.map +1 -1
- package/components/radiobutton/RadioCardGroup.d.ts +86 -0
- package/components/radiobutton/RadioCardGroup.js +110 -0
- package/components/radiobutton/RadioCardGroup.js.map +1 -0
- package/components/releaseNotes/ReleaseNotes.d.ts +0 -3
- package/components/releaseNotes/ReleaseNotes.js.map +1 -1
- package/components/resizer/Resizer.d.ts +17 -3
- package/components/resizer/Resizer.js +1 -1
- package/components/resizer/Resizer.js.map +1 -1
- package/components/responsiveColumnStripe/ResponsiveColumnStripe.js +1 -1
- package/components/responsiveColumnStripe/ResponsiveColumnStripe.js.map +1 -1
- package/components/rioglyph/Rioglyph.d.ts +20 -8
- package/components/rioglyph/Rioglyph.js +1 -1
- package/components/rioglyph/Rioglyph.js.map +1 -1
- package/components/rioglyph/RioglyphIconType.d.ts +1 -1
- package/components/rules/RuleConnector.js +1 -1
- package/components/rules/RuleConnector.js.map +1 -1
- package/components/rules/RuleContainer.js +27 -27
- package/components/rules/RuleContainer.js.map +1 -1
- package/components/rules/RulesWrapper.js +1 -1
- package/components/rules/RulesWrapper.js.map +1 -1
- package/components/saveableInput/SaveableDateInput.d.ts +20 -2
- package/components/saveableInput/SaveableDateInput.js +1 -1
- package/components/saveableInput/SaveableDateInput.js.map +1 -1
- package/components/saveableInput/SaveableInput.d.ts +10 -2
- package/components/saveableInput/SaveableInput.js +49 -49
- package/components/saveableInput/SaveableInput.js.map +1 -1
- package/components/searchHighlight/SearchHighlightText.d.ts +28 -0
- package/components/searchHighlight/SearchHighlightText.js +15 -0
- package/components/searchHighlight/SearchHighlightText.js.map +1 -0
- package/components/selects/BaseSelectDropdown.js +90 -79
- package/components/selects/BaseSelectDropdown.js.map +1 -1
- package/components/selects/ClearButton.js +4 -4
- package/components/selects/ClearButton.js.map +1 -1
- package/components/selects/Multiselect.js +6 -6
- package/components/selects/Multiselect.js.map +1 -1
- package/components/selects/MultiselectToggleFilter.js +4 -4
- package/components/selects/MultiselectToggleFilter.js.map +1 -1
- package/components/selects/MultiselectToggleSelection.js +1 -1
- package/components/selects/MultiselectToggleSelection.js.map +1 -1
- package/components/selects/Select.d.ts +5 -0
- package/components/selects/Select.js +93 -93
- package/components/selects/Select.js.map +1 -1
- package/components/selects/SelectFilter.js +1 -1
- package/components/selects/SelectFilter.js.map +1 -1
- package/components/selects/WithFeedbackAndAddon.js +1 -1
- package/components/selects/WithFeedbackAndAddon.js.map +1 -1
- package/components/sidebars/Sidebar.d.ts +19 -3
- package/components/sidebars/Sidebar.js +54 -54
- package/components/sidebars/Sidebar.js.map +1 -1
- package/components/sidebars/SidebarBackdrop.js +4 -4
- package/components/sidebars/SidebarBackdrop.js.map +1 -1
- package/components/sidebars/SidebarFooter.js +1 -1
- package/components/sidebars/SidebarFooter.js.map +1 -1
- package/components/sidebars/SidebarFullscreenToggle.js +4 -4
- package/components/sidebars/SidebarFullscreenToggle.js.map +1 -1
- package/components/slider/RangeSlider.d.ts +15 -0
- package/components/slider/RangeSlider.js +1 -1
- package/components/slider/RangeSlider.js.map +1 -1
- package/components/slider/Slider.d.ts +9 -0
- package/components/slider/Slider.js +1 -1
- package/components/slider/Slider.js.map +1 -1
- package/components/smoothScrollbars/SmoothScrollbars.d.ts +44 -0
- package/components/smoothScrollbars/SmoothScrollbars.js +1 -1
- package/components/smoothScrollbars/SmoothScrollbars.js.map +1 -1
- package/components/spinner/Spinner.d.ts +3 -3
- package/components/spinner/Spinner.js +5 -4
- package/components/spinner/Spinner.js.map +1 -1
- package/components/states/CustomState.d.ts +69 -1
- package/components/states/CustomState.js +1 -1
- package/components/states/CustomState.js.map +1 -1
- package/components/states/EmptyState.d.ts +1 -1
- package/components/states/EmptyState.js.map +1 -1
- package/components/states/ErrorState.d.ts +1 -1
- package/components/states/ErrorState.js.map +1 -1
- package/components/states/ForbiddenState.d.ts +1 -1
- package/components/states/ForbiddenState.js.map +1 -1
- package/components/states/MaintenanceState.d.ts +1 -1
- package/components/states/MaintenanceState.js.map +1 -1
- package/components/states/NotBookedState.d.ts +1 -1
- package/components/states/NotBookedState.js.map +1 -1
- package/components/states/NotFoundState.d.ts +1 -1
- package/components/states/NotFoundState.js.map +1 -1
- package/components/states/StateButton.js +1 -1
- package/components/states/StateButton.js.map +1 -1
- package/components/states/StateIcon.d.ts +14 -1
- package/components/states/StateIcon.js.map +1 -1
- package/components/statsWidget/StatsWidget.d.ts +2 -0
- package/components/statsWidget/StatsWidget.js +1 -1
- package/components/statsWidget/StatsWidget.js.map +1 -1
- package/components/statsWidget/StatsWidgetBody.d.ts +1 -0
- package/components/statsWidget/StatsWidgetBody.js +1 -1
- package/components/statsWidget/StatsWidgetBody.js.map +1 -1
- package/components/statsWidget/StatsWidgetFooter.js +1 -1
- package/components/statsWidget/StatsWidgetFooter.js.map +1 -1
- package/components/statsWidget/StatsWidgetHeader.js +1 -1
- package/components/statsWidget/StatsWidgetHeader.js.map +1 -1
- package/components/statsWidget/StatsWidgetNumber.d.ts +2 -0
- package/components/statsWidget/StatsWidgetNumber.js +2 -2
- package/components/statsWidget/StatsWidgetNumber.js.map +1 -1
- package/components/statsWidget/StatsWidgetSpacer.js +1 -1
- package/components/statsWidget/StatsWidgetSpacer.js.map +1 -1
- package/components/statsWidget/StatsWidgets.js +1 -1
- package/components/statsWidget/StatsWidgets.js.map +1 -1
- package/components/statusBar/StatusBar.d.ts +98 -3
- package/components/statusBar/StatusBar.js +24 -17
- package/components/statusBar/StatusBar.js.map +1 -1
- package/components/statusBar/StatusBarIcon.d.ts +2 -2
- package/components/statusBar/StatusBarIcon.js +4 -4
- package/components/statusBar/StatusBarIcon.js.map +1 -1
- package/components/statusBar/StatusBarLabel.d.ts +2 -2
- package/components/statusBar/StatusBarLabel.js +5 -7
- package/components/statusBar/StatusBarLabel.js.map +1 -1
- package/components/statusBar/StatusBarProgressBar.d.ts +1 -1
- package/components/statusBar/StatusBarProgressBar.js +1 -1
- package/components/statusBar/StatusBarProgressBar.js.map +1 -1
- package/components/steppedProgressBar/SteppedProgressBar.d.ts +1 -1
- package/components/steppedProgressBar/SteppedProgressBar.js +1 -1
- package/components/steppedProgressBar/SteppedProgressBar.js.map +1 -1
- package/components/switch/Switch.d.ts +28 -1
- package/components/switch/Switch.js +77 -35
- package/components/switch/Switch.js.map +1 -1
- package/components/table/SortArrowDown.d.ts +1 -1
- package/components/table/SortArrowDown.js.map +1 -1
- package/components/table/SortArrowUp.d.ts +1 -1
- package/components/table/SortArrowUp.js.map +1 -1
- package/components/table/TableCardsSorting.js +4 -4
- package/components/table/TableCardsSorting.js.map +1 -1
- package/components/table/TableHead.js +1 -1
- package/components/table/TableHead.js.map +1 -1
- package/components/table/TableSearch.js +1 -1
- package/components/table/TableSearch.js.map +1 -1
- package/components/table/TableSettingsColumnButtons.d.ts +1 -1
- package/components/table/TableSettingsColumnButtons.js +1 -1
- package/components/table/TableSettingsColumnButtons.js.map +1 -1
- package/components/table/TableSettingsColumnDetails.d.ts +1 -1
- package/components/table/TableSettingsColumnDetails.js +1 -1
- package/components/table/TableSettingsColumnDetails.js.map +1 -1
- package/components/table/TableSettingsDialog.d.ts +56 -1
- package/components/table/TableSettingsDialog.js +170 -144
- package/components/table/TableSettingsDialog.js.map +1 -1
- package/components/table/TableSettingsDialogFooter.js +9 -9
- package/components/table/TableSettingsDialogFooter.js.map +1 -1
- package/components/table/TableSettingsListContainer.d.ts +1 -1
- package/components/table/TableSettingsListContainer.js.map +1 -1
- package/components/table/TableSettingsListItem.d.ts +1 -1
- package/components/table/TableSettingsListItem.js +8 -8
- package/components/table/TableSettingsListItem.js.map +1 -1
- package/components/table/TableToolbar.js +1 -1
- package/components/table/TableToolbar.js.map +1 -1
- package/components/table/TableViewToggles.d.ts +21 -1
- package/components/table/TableViewToggles.js +1 -1
- package/components/table/TableViewToggles.js.map +1 -1
- package/components/tag/Tag.d.ts +7 -2
- package/components/tag/Tag.js +1 -1
- package/components/tag/Tag.js.map +1 -1
- package/components/tag/TagList.js +1 -1
- package/components/tag/TagList.js.map +1 -1
- package/components/tagManager/CustomSuggestionItem.js +1 -1
- package/components/tagManager/CustomSuggestionItem.js.map +1 -1
- package/components/tagManager/TagManager.d.ts +29 -2
- package/components/tagManager/TagManager.js +6 -6
- package/components/tagManager/TagManager.js.map +1 -1
- package/components/tagManager/TagManagerItemList.d.ts +1 -1
- package/components/tagManager/TagManagerItemList.js +1 -1
- package/components/tagManager/TagManagerItemList.js.map +1 -1
- package/components/teaser/Teaser.d.ts +57 -55
- package/components/teaser/Teaser.js +1 -1
- package/components/teaser/Teaser.js.map +1 -1
- package/components/teaser/TeaserContainer.d.ts +1 -1
- package/components/teaser/TeaserContainer.js +1 -1
- package/components/teaser/TeaserContainer.js.map +1 -1
- package/components/timepicker/TimePicker.d.ts +20 -0
- package/components/timepicker/TimePicker.js +153 -99
- package/components/timepicker/TimePicker.js.map +1 -1
- package/components/tooltip/SimpleTooltip.d.ts +22 -4
- package/components/tooltip/SimpleTooltip.js.map +1 -1
- package/components/tooltip/Tooltip.d.ts +22 -2
- package/components/tooltip/Tooltip.js +1 -1
- package/components/tooltip/Tooltip.js.map +1 -1
- package/components/tracker/Tracker.d.ts +85 -0
- package/components/tracker/Tracker.js +54 -0
- package/components/tracker/Tracker.js.map +1 -0
- package/components/tracker/TrackerBlock.d.ts +11 -0
- package/components/tracker/TrackerBlock.js +34 -0
- package/components/tracker/TrackerBlock.js.map +1 -0
- package/components/video/ResponsiveVideo.d.ts +8 -3
- package/components/video/ResponsiveVideo.js +1 -1
- package/components/video/ResponsiveVideo.js.map +1 -1
- package/hooks/useCookies.d.ts +79 -0
- package/hooks/useCookies.js +33 -0
- package/hooks/useCookies.js.map +1 -0
- package/hooks/useInterval.js +5 -5
- package/hooks/useInterval.js.map +1 -1
- package/hooks/useIsFocusWithin.js +3 -3
- package/hooks/useIsFocusWithin.js.map +1 -1
- package/hooks/useKey.d.ts +1 -1
- package/hooks/useKey.js.map +1 -1
- package/hooks/useLatest.d.ts +16 -0
- package/hooks/useLatest.js +11 -0
- package/hooks/useLatest.js.map +1 -0
- package/hooks/useOnboarding.d.ts +86 -80
- package/hooks/useOnboarding.js.map +1 -1
- package/hooks/usePostMessage.d.ts +2 -1
- package/hooks/usePostMessage.js.map +1 -1
- package/hooks/useRioCookieConsent.d.ts +49 -0
- package/hooks/useRioCookieConsent.js +44 -0
- package/hooks/useRioCookieConsent.js.map +1 -0
- package/hooks/useSearch.d.ts +1 -1
- package/hooks/useSearch.js +28 -17
- package/hooks/useSearch.js.map +1 -1
- package/hooks/useSearchHighlight.d.ts +60 -0
- package/hooks/useSearchHighlight.js +54 -0
- package/hooks/useSearchHighlight.js.map +1 -0
- package/hooks/useTableExport.js.map +1 -1
- package/hooks/useTimeout.js +11 -11
- package/hooks/useTimeout.js.map +1 -1
- package/hooks/useUncontrollable.d.ts +1 -1
- package/hooks/useUncontrollable.js.map +1 -1
- package/hooks/useUrlState.d.ts +62 -0
- package/hooks/useUrlState.js +137 -0
- package/hooks/useUrlState.js.map +1 -0
- package/mergeClassNameOverrides.d.ts +1 -0
- package/mergeClassNameOverrides.js +5 -0
- package/mergeClassNameOverrides.js.map +1 -0
- package/package.json +18 -21
- package/routeUtils.js +11 -5
- package/routeUtils.js.map +1 -1
- package/themes/Volkswagen/components/applicationHeader/VolkswagenApplicationHeader.js +1 -1
- package/themes/Volkswagen/components/applicationHeader/VolkswagenApplicationHeader.js.map +1 -1
- package/useCookies.d.ts +2 -0
- package/useCookies.js +5 -0
- package/useCookies.js.map +1 -0
- package/useRioCookieConsent.d.ts +2 -0
- package/useRioCookieConsent.js +5 -0
- package/useRioCookieConsent.js.map +1 -0
- package/useSearchHighlight.d.ts +2 -0
- package/useSearchHighlight.js +6 -0
- package/useSearchHighlight.js.map +1 -0
- package/useUrlState.d.ts +2 -0
- package/useUrlState.js +5 -0
- package/useUrlState.js.map +1 -0
- package/utils/classNames.d.ts +3 -0
- package/utils/classNames.js +5 -0
- package/utils/classNames.js.map +1 -0
- package/utils/colorScheme.js +14 -13
- package/utils/colorScheme.js.map +1 -1
- package/utils/cssuseragent.js.map +1 -1
- package/utils/mergeClassNameOverrides.d.ts +1 -0
- package/utils/mergeClassNameOverrides.js +55 -0
- package/utils/mergeClassNameOverrides.js.map +1 -0
- package/utils/routeUtils.d.ts +122 -13
- package/utils/routeUtils.js +89 -31
- package/utils/routeUtils.js.map +1 -1
- package/utils/scrollItemIntoView.js +12 -11
- package/utils/scrollItemIntoView.js.map +1 -1
- package/utils/urlFeatureToggles.js +19 -20
- package/utils/urlFeatureToggles.js.map +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.js.map +1 -1
- package/components/states/BaseStateProps.d.ts +0 -66
- package/components/statusBar/StatusBar.types.d.ts +0 -85
- package/components/table/TableSettingsDialog.types.d.ts +0 -39
- package/components/tagManager/TagManagerTag.d.ts +0 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VolkswagenApplicationHeader.js","sources":["../../../../../src/themes/Volkswagen/components/applicationHeader/VolkswagenApplicationHeader.tsx"],"sourcesContent":["import React, { forwardRef, type ForwardedRef } from 'react';\nimport { isEmpty } from 'es-toolkit/compat';\nimport classNames from '
|
|
1
|
+
{"version":3,"file":"VolkswagenApplicationHeader.js","sources":["../../../../../src/themes/Volkswagen/components/applicationHeader/VolkswagenApplicationHeader.tsx"],"sourcesContent":["import React, { forwardRef, type ForwardedRef } from 'react';\nimport { isEmpty } from 'es-toolkit/compat';\n\nimport classNames from '../../../../utils/classNames';\nimport ApplicationActionBar from '../../../../components/applicationHeader/ApplicationActionBar';\nimport type { ApplicationHeaderProps } from '../../../../ApplicationHeader';\n\nexport type ModuleProps = {\n key: string;\n route: React.ReactNode;\n};\n\nexport type VolkswagenApplicationHeaderProps = ApplicationHeaderProps & {\n homeRoute?: React.ReactNode;\n appMenuItems?: ModuleProps[];\n appNavigator?: React.ReactNode;\n appNavigatorClassName?: string;\n navItems?: ModuleProps[];\n actionBarItems?: React.ReactNode[];\n onMount?: VoidFunction;\n onUnmount?: VoidFunction;\n className?: string;\n};\n\nexport const VolkswagenApplicationHeader = forwardRef(\n (props: VolkswagenApplicationHeaderProps, ref: ForwardedRef<HTMLElement>) => {\n const {\n homeRoute = '',\n appNavigator,\n appNavigatorClassName,\n appMenuItems,\n navItems = [],\n actionBarItems = [],\n onMount = () => {},\n onUnmount = () => {},\n className = '',\n ...remainingProps\n } = props;\n\n const wrapperClassNames = classNames(\n 'ApplicationHeader VolkswagenApplicationHeader',\n 'user-select-none',\n className && className\n );\n\n return (\n <nav {...remainingProps} className={wrapperClassNames} ref={ref}>\n <div className='width-100pct'>\n <div className='brand'>\n <div className='logo'>{homeRoute}</div>\n </div>\n {isEmpty(navItems) && <ul className='SubmoduleNavigation nav' />}\n {!isEmpty(navItems) && (\n <ul className='SubmoduleNavigation nav'>\n {navItems.map(navItem => (\n <li key={navItem.key} className='submodule' data-nav-item-key={navItem.key}>\n {navItem.route}\n </li>\n ))}\n </ul>\n )}\n <ApplicationActionBar items={actionBarItems} />\n </div>\n </nav>\n );\n }\n);\n\nexport default VolkswagenApplicationHeader;\n"],"names":["VolkswagenApplicationHeader","forwardRef","props","ref","homeRoute","appNavigator","appNavigatorClassName","appMenuItems","navItems","actionBarItems","onMount","onUnmount","className","remainingProps","wrapperClassNames","classNames","jsx","jsxs","isEmpty","navItem","ApplicationActionBar"],"mappings":";;;;;AAwBO,MAAMA,IAA8BC;AAAA,EACvC,CAACC,GAAyCC,MAAmC;AACzE,UAAM;AAAA,MACF,WAAAC,IAAY;AAAA,MACZ,cAAAC;AAAA,MACA,uBAAAC;AAAA,MACA,cAAAC;AAAA,MACA,UAAAC,IAAW,CAAA;AAAA,MACX,gBAAAC,IAAiB,CAAA;AAAA,MACjB,SAAAC,IAAU,MAAM;AAAA,MAAC;AAAA,MACjB,WAAAC,IAAY,MAAM;AAAA,MAAC;AAAA,MACnB,WAAAC,IAAY;AAAA,MACZ,GAAGC;AAAA,IAAA,IACHX,GAEEY,IAAoBC;AAAA,MACtB;AAAA,MACA;AAAA,MACAH,KAAaA;AAAA,IAAA;AAGjB,WACI,gBAAAI,EAAC,OAAA,EAAK,GAAGH,GAAgB,WAAWC,GAAmB,KAAAX,GACnD,UAAA,gBAAAc,EAAC,OAAA,EAAI,WAAU,gBACX,UAAA;AAAA,MAAA,gBAAAD,EAAC,OAAA,EAAI,WAAU,SACX,UAAA,gBAAAA,EAAC,SAAI,WAAU,QAAQ,aAAU,EAAA,CACrC;AAAA,MACCE,EAAQV,CAAQ,KAAK,gBAAAQ,EAAC,MAAA,EAAG,WAAU,2BAA0B;AAAA,MAC7D,CAACE,EAAQV,CAAQ,uBACb,MAAA,EAAG,WAAU,2BACT,UAAAA,EAAS,IAAI,CAAAW,wBACT,MAAA,EAAqB,WAAU,aAAY,qBAAmBA,EAAQ,KAClE,YAAQ,MAAA,GADJA,EAAQ,GAEjB,CACH,EAAA,CACL;AAAA,MAEJ,gBAAAH,EAACI,GAAA,EAAqB,OAAOX,EAAA,CAAgB;AAAA,IAAA,EAAA,CACjD,EAAA,CACJ;AAAA,EAER;AACJ;"}
|
package/useCookies.d.ts
ADDED
package/useCookies.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCookies.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRioCookieConsent.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSearchHighlight.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
package/useUrlState.d.ts
ADDED
package/useUrlState.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useUrlState.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"classNames.js","sources":["../../src/utils/classNames.ts"],"sourcesContent":["export type ClassNamePart = string | undefined | null | false | 0 | '';\n\nconst classNames = (...parts: ClassNamePart[]) => parts.filter(Boolean).join(' ');\n\nexport default classNames;\n"],"names":["classNames","parts"],"mappings":"AAEA,MAAMA,IAAa,IAAIC,MAA2BA,EAAM,OAAO,OAAO,EAAE,KAAK,GAAG;"}
|
package/utils/colorScheme.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
const d = "uikit-color-scheme"
|
|
1
|
+
const d = "uikit-color-scheme";
|
|
2
|
+
const r = ".rio.cloud", E = "Thu, 18 Dec 2030 12:00:00 UTC", n = "data-theme", s = "themechange", l = "default", h = "system", i = "light", a = "dark", t = (e) => {
|
|
2
3
|
e ? document.documentElement.setAttribute(n, e) : document.documentElement.removeAttribute(n);
|
|
3
|
-
},
|
|
4
|
-
const e =
|
|
4
|
+
}, T = () => decodeURIComponent(document.cookie).split(";").find((c) => c.includes(d))?.split("=")[1], u = () => {
|
|
5
|
+
const e = T();
|
|
5
6
|
switch (e) {
|
|
6
|
-
case
|
|
7
|
+
case l:
|
|
7
8
|
t();
|
|
8
9
|
break;
|
|
9
|
-
case
|
|
10
|
+
case h:
|
|
10
11
|
window.matchMedia("(prefers-color-scheme: dark)").matches ? t(a) : t(i);
|
|
11
12
|
break;
|
|
12
13
|
case i:
|
|
@@ -16,14 +17,14 @@ const d = "uikit-color-scheme", r = "/", E = ".rio.cloud", l = "Thu, 18 Dec 2030
|
|
|
16
17
|
}
|
|
17
18
|
return e;
|
|
18
19
|
}, A = (e) => {
|
|
19
|
-
const o = window.location.host.startsWith("localhost") || window.location.host.startsWith("127.0.0.1"), c = encodeURIComponent(e), m = o ? "localhost" :
|
|
20
|
-
document.cookie = `${d}=${c};domain=${m};expires=${
|
|
21
|
-
},
|
|
20
|
+
const o = window.location.host.startsWith("localhost") || window.location.host.startsWith("127.0.0.1"), c = encodeURIComponent(e), m = o ? "localhost" : r;
|
|
21
|
+
document.cookie = `${d}=${c};domain=${m};expires=${E};path=/`;
|
|
22
|
+
}, f = () => {
|
|
22
23
|
window.addEventListener(
|
|
23
24
|
"message",
|
|
24
25
|
({ data: e }) => {
|
|
25
26
|
if (e === s) {
|
|
26
|
-
|
|
27
|
+
u();
|
|
27
28
|
for (const o of document.getElementsByTagName("iframe"))
|
|
28
29
|
o.contentWindow?.postMessage(s, "*");
|
|
29
30
|
}
|
|
@@ -35,11 +36,11 @@ export {
|
|
|
35
36
|
s as THEME_CHANGE_EVENT,
|
|
36
37
|
a as THEME_DARK,
|
|
37
38
|
n as THEME_DATA_ATTRIBUTE,
|
|
38
|
-
|
|
39
|
+
l as THEME_DEFAULT,
|
|
39
40
|
i as THEME_LIGHT,
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
h as THEME_SYSTEM,
|
|
42
|
+
u as getColorScheme,
|
|
43
|
+
f as listenForSchemeChange,
|
|
43
44
|
A as setColorScheme
|
|
44
45
|
};
|
|
45
46
|
//# sourceMappingURL=colorScheme.js.map
|
package/utils/colorScheme.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colorScheme.js","sources":["../../src/utils/colorScheme.ts"],"sourcesContent":["const COOKIE_NAME = 'uikit-color-scheme';\nconst PATH = '/';\nconst DOMAIN = '.rio.cloud';\nconst EXPIRATION_DATE = 'Thu, 18 Dec 2030 12:00:00 UTC';\n\nexport const THEME_DATA_ATTRIBUTE = 'data-theme';\nexport const THEME_CHANGE_EVENT = 'themechange';\n\nexport const THEME_DEFAULT = 'default' as const;\nexport const THEME_SYSTEM = 'system' as const;\nexport const THEME_LIGHT = 'light' as const;\nexport const THEME_DARK = 'dark' as const;\n\nexport type ColorScheme = typeof THEME_DEFAULT | typeof THEME_SYSTEM | typeof THEME_LIGHT | typeof THEME_DARK;\n\nconst updateHtmlScheme = (scheme?: ColorScheme | undefined) => {\n if (scheme) {\n document.documentElement.setAttribute(THEME_DATA_ATTRIBUTE, scheme);\n } else {\n document.documentElement.removeAttribute(THEME_DATA_ATTRIBUTE);\n }\n};\n\nconst getSchemeFromCookie = () => {\n const decodedCookie = decodeURIComponent(document.cookie);\n const find = decodedCookie.split(';').find(entry => entry.includes(COOKIE_NAME));\n return find?.split('=')[1] as ColorScheme | undefined;\n};\n\n/**\n * Returns the desired color scheme based on the user's cookie.\n *\n * This might be `undefined`, too, when no cookie value is set!\n */\nexport const getColorScheme = () => {\n const colorScheme = getSchemeFromCookie();\n\n switch (colorScheme) {\n case THEME_DEFAULT:\n updateHtmlScheme();\n break;\n\n case THEME_SYSTEM:\n if (window.matchMedia('(prefers-color-scheme: dark)').matches) {\n updateHtmlScheme(THEME_DARK);\n } else {\n updateHtmlScheme(THEME_LIGHT);\n }\n break;\n\n case THEME_LIGHT:\n case THEME_DARK:\n updateHtmlScheme(colorScheme);\n break;\n }\n\n return colorScheme;\n};\n\n/**\n * Stores the given preferred color scheme in the browser's cookies.\n *\n * This should be done by a RIO service like User Profile SPA using a theme switcher component from the UIKIT where this\n * function is referenced.\n *\n * @param scheme The color scheme to save.\n */\nexport const setColorScheme = (scheme: ColorScheme) => {\n const isDevEnv = window.location.host.startsWith('localhost') || window.location.host.startsWith('127.0.0.1');\n\n const newCookieValues = encodeURIComponent(scheme);\n const domain = isDevEnv ? 'localhost' : DOMAIN;\n document.cookie = `${COOKIE_NAME}=${newCookieValues};domain=${domain};expires=${EXPIRATION_DATE};path=${PATH}`;\n};\n\n/**\n * Initiates listening for theme change events.\n */\nexport const listenForSchemeChange = () => {\n window.addEventListener(\n 'message',\n ({ data }) => {\n if (data === THEME_CHANGE_EVENT) {\n getColorScheme();\n\n // Re-send the event to all iframes that might not be notified yet\n for (const iframe of document.getElementsByTagName('iframe')) {\n iframe.contentWindow?.postMessage(THEME_CHANGE_EVENT, '*');\n }\n }\n },\n false\n );\n};\n"],"names":["COOKIE_NAME","
|
|
1
|
+
{"version":3,"file":"colorScheme.js","sources":["../../src/utils/colorScheme.ts"],"sourcesContent":["const COOKIE_NAME = 'uikit-color-scheme';\nconst PATH = '/';\nconst DOMAIN = '.rio.cloud';\nconst EXPIRATION_DATE = 'Thu, 18 Dec 2030 12:00:00 UTC';\n\nexport const THEME_DATA_ATTRIBUTE = 'data-theme';\nexport const THEME_CHANGE_EVENT = 'themechange';\n\nexport const THEME_DEFAULT = 'default' as const;\nexport const THEME_SYSTEM = 'system' as const;\nexport const THEME_LIGHT = 'light' as const;\nexport const THEME_DARK = 'dark' as const;\n\nexport type ColorScheme = typeof THEME_DEFAULT | typeof THEME_SYSTEM | typeof THEME_LIGHT | typeof THEME_DARK;\n\nconst updateHtmlScheme = (scheme?: ColorScheme | undefined) => {\n if (scheme) {\n document.documentElement.setAttribute(THEME_DATA_ATTRIBUTE, scheme);\n } else {\n document.documentElement.removeAttribute(THEME_DATA_ATTRIBUTE);\n }\n};\n\nconst getSchemeFromCookie = () => {\n const decodedCookie = decodeURIComponent(document.cookie);\n const find = decodedCookie.split(';').find(entry => entry.includes(COOKIE_NAME));\n return find?.split('=')[1] as ColorScheme | undefined;\n};\n\n/**\n * Returns the desired color scheme based on the user's cookie.\n *\n * This might be `undefined`, too, when no cookie value is set!\n */\nexport const getColorScheme = () => {\n const colorScheme = getSchemeFromCookie();\n\n switch (colorScheme) {\n case THEME_DEFAULT:\n updateHtmlScheme();\n break;\n\n case THEME_SYSTEM:\n if (window.matchMedia('(prefers-color-scheme: dark)').matches) {\n updateHtmlScheme(THEME_DARK);\n } else {\n updateHtmlScheme(THEME_LIGHT);\n }\n break;\n\n case THEME_LIGHT:\n case THEME_DARK:\n updateHtmlScheme(colorScheme);\n break;\n }\n\n return colorScheme;\n};\n\n/**\n * Stores the given preferred color scheme in the browser's cookies.\n *\n * This should be done by a RIO service like User Profile SPA using a theme switcher component from the UIKIT where this\n * function is referenced.\n *\n * @param scheme The color scheme to save.\n */\nexport const setColorScheme = (scheme: ColorScheme) => {\n const isDevEnv = window.location.host.startsWith('localhost') || window.location.host.startsWith('127.0.0.1');\n\n const newCookieValues = encodeURIComponent(scheme);\n const domain = isDevEnv ? 'localhost' : DOMAIN;\n document.cookie = `${COOKIE_NAME}=${newCookieValues};domain=${domain};expires=${EXPIRATION_DATE};path=${PATH}`;\n};\n\n/**\n * Initiates listening for theme change events.\n */\nexport const listenForSchemeChange = () => {\n window.addEventListener(\n 'message',\n ({ data }) => {\n if (data === THEME_CHANGE_EVENT) {\n getColorScheme();\n\n // Re-send the event to all iframes that might not be notified yet\n for (const iframe of document.getElementsByTagName('iframe')) {\n iframe.contentWindow?.postMessage(THEME_CHANGE_EVENT, '*');\n }\n }\n },\n false\n );\n};\n"],"names":["COOKIE_NAME","DOMAIN","EXPIRATION_DATE","THEME_DATA_ATTRIBUTE","THEME_CHANGE_EVENT","THEME_DEFAULT","THEME_SYSTEM","THEME_LIGHT","THEME_DARK","updateHtmlScheme","scheme","getSchemeFromCookie","entry","getColorScheme","colorScheme","setColorScheme","isDevEnv","newCookieValues","domain","listenForSchemeChange","data","iframe"],"mappings":"AAAA,MAAMA,IAAc;AAEpB,MAAMC,IAAS,cACTC,IAAkB,iCAEXC,IAAuB,cACvBC,IAAqB,eAErBC,IAAgB,WAChBC,IAAe,UACfC,IAAc,SACdC,IAAa,QAIpBC,IAAmB,CAACC,MAAqC;AAC3D,EAAIA,IACA,SAAS,gBAAgB,aAAaP,GAAsBO,CAAM,IAElE,SAAS,gBAAgB,gBAAgBP,CAAoB;AAErE,GAEMQ,IAAsB,MACF,mBAAmB,SAAS,MAAM,EAC7B,MAAM,GAAG,EAAE,KAAK,CAAAC,MAASA,EAAM,SAASZ,CAAW,CAAC,GAClE,MAAM,GAAG,EAAE,CAAC,GAQhBa,IAAiB,MAAM;AAChC,QAAMC,IAAcH,EAAA;AAEpB,UAAQG,GAAA;AAAA,IACJ,KAAKT;AACD,MAAAI,EAAA;AACA;AAAA,IAEJ,KAAKH;AACD,MAAI,OAAO,WAAW,8BAA8B,EAAE,UAClDG,EAAiBD,CAAU,IAE3BC,EAAiBF,CAAW;AAEhC;AAAA,IAEJ,KAAKA;AAAA,IACL,KAAKC;AACD,MAAAC,EAAiBK,CAAW;AAC5B;AAAA,EAAA;AAGR,SAAOA;AACX,GAUaC,IAAiB,CAACL,MAAwB;AACnD,QAAMM,IAAW,OAAO,SAAS,KAAK,WAAW,WAAW,KAAK,OAAO,SAAS,KAAK,WAAW,WAAW,GAEtGC,IAAkB,mBAAmBP,CAAM,GAC3CQ,IAASF,IAAW,cAAcf;AACxC,WAAS,SAAS,GAAGD,CAAW,IAAIiB,CAAe,WAAWC,CAAM,YAAYhB,CAAe;AACnG,GAKaiB,IAAwB,MAAM;AACvC,SAAO;AAAA,IACH;AAAA,IACA,CAAC,EAAE,MAAAC,EAAA,MAAW;AACV,UAAIA,MAAShB,GAAoB;AAC7B,QAAAS,EAAA;AAGA,mBAAWQ,KAAU,SAAS,qBAAqB,QAAQ;AACvD,UAAAA,EAAO,eAAe,YAAYjB,GAAoB,GAAG;AAAA,MAEjE;AAAA,IACJ;AAAA,IACA;AAAA,EAAA;AAER;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cssuseragent.js","sources":["../../src/utils/cssuseragent.js"],"sourcesContent":["/* eslint-disable */\n\n/**\n * CssUserAgent (cssua.js) v2.1.31\n * http://cssuseragent.org\n *\n * Copyright (c)2006-2015 Stephen M. McKamey.\n * Licensed under The MIT License.\n */\n/*jshint smarttabs:true, regexp:false, browser:true */\n\n/**\n * @param html {Object} root DOM element\n * @param userAgent {string} browser userAgent string\n * @return {Object}\n */\nexport const cssua = (html, userAgent, sa) => {\n 'use strict';\n\n /**\n * @const\n * @type {string}\n */\n var PREFIX = ' ua-';\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_Platform = /\\s*([\\-\\w ]+)[\\s\\/\\:]([\\d_]+\\b(?:[\\-\\._\\/]\\w+)*)/;\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_Version = /([\\w\\-\\.]+[\\s\\/][v]?[\\d_]+\\b(?:[\\-\\._\\/]\\w+)*)/g;\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_BlackBerry = /\\b(?:(blackberry\\w*|bb10)|(rim tablet os))(?:\\/(\\d+\\.\\d+(?:\\.\\w+)*))?/;\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_Silk = /\\bsilk-accelerated=true\\b/;\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_FluidApp = /\\bfluidapp\\b/;\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_desktop = /(\\bwindows\\b|\\bmacintosh\\b|\\blinux\\b|\\bunix\\b)/;\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_mobile =\n /(\\bandroid\\b|\\bipad\\b|\\bipod\\b|\\bwindows phone\\b|\\bwpdesktop\\b|\\bxblwp7\\b|\\bzunewp7\\b|\\bwindows ce\\b|\\bblackberry\\w*|\\bbb10\\b|\\brim tablet os\\b|\\bmeego|\\bwebos\\b|\\bpalm|\\bsymbian|\\bj2me\\b|\\bdocomo\\b|\\bpda\\b|\\bchtml\\b|\\bmidp\\b|\\bcldc\\b|\\w*?mobile\\w*?|\\w*?phone\\w*?)/;\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_game = /(\\bxbox\\b|\\bplaystation\\b|\\bnintendo\\s+\\w+)/;\n\n /**\n * The root CssUserAgent\n * @type {Object}\n */\n var cssua = {\n parse:\n /**\n * @param uaStr {string}\n * @return {Object}\n */\n function (uaStr, sa) {\n /**\n * @type {Object}\n */\n var ua = {};\n if (sa) {\n ua.standalone = sa;\n }\n\n uaStr = ('' + uaStr).toLowerCase();\n if (!uaStr) {\n return ua;\n }\n\n var i,\n count,\n raw = uaStr.split(/[()]/);\n for (var j = 0, rawCount = raw.length; j < rawCount; j++) {\n if (j % 2) {\n // inside parens covers platform identifiers\n var platforms = raw[j].split(';');\n for (i = 0, count = platforms.length; i < count; i++) {\n if (R_Platform.exec(platforms[i])) {\n var key = RegExp.$1.split(' ').join('_'),\n val = RegExp.$2;\n\n // if duplicate entries favor highest version\n if (!ua[key] || Number.parseFloat(ua[key]) < Number.parseFloat(val)) {\n ua[key] = val;\n }\n }\n }\n } else {\n // outside parens covers most version identifiers\n var uas = raw[j].match(R_Version);\n if (uas) {\n for (i = 0, count = uas.length; i < count; i++) {\n var parts = uas[i].split(/[\\/\\s]+/);\n if (parts.length && parts[0] !== 'mozilla') {\n ua[parts[0].split(' ').join('_')] = parts.slice(1).join('-');\n }\n }\n }\n }\n }\n\n if (R_mobile.exec(uaStr)) {\n // mobile device indicators\n ua.mobile = RegExp.$1;\n if (R_BlackBerry.exec(uaStr)) {\n delete ua[ua.mobile];\n ua.blackberry = ua.version || RegExp.$3 || RegExp.$2 || RegExp.$1;\n if (RegExp.$1) {\n // standardize non-tablet blackberry\n ua.mobile = 'blackberry';\n } else if (ua.version === '0.0.1') {\n // fix playbook 1.0 quirk\n ua.blackberry = '7.1.0.0';\n }\n }\n } else if (R_game.exec(uaStr)) {\n // game console indicators\n ua.game = RegExp.$1;\n var game = ua.game.split(' ').join('_');\n\n if (ua.version && !ua[game]) {\n ua[game] = ua.version;\n }\n } else if (R_desktop.exec(uaStr)) {\n // desktop OS indicators\n ua.desktop = RegExp.$1;\n }\n\n // platform naming standardizations\n if (ua.intel_mac_os_x) {\n ua.mac_os_x = ua.intel_mac_os_x.split('_').join('.');\n delete ua.intel_mac_os_x;\n } else if (ua.cpu_iphone_os) {\n ua.ios = ua.cpu_iphone_os.split('_').join('.');\n delete ua.cpu_iphone_os;\n } else if (ua.cpu_os) {\n ua.ios = ua.cpu_os.split('_').join('.');\n delete ua.cpu_os;\n } else if (ua.mobile === 'iphone' && !ua.ios) {\n ua.ios = '1';\n }\n\n // UA naming standardizations\n if (ua.opera && ua.version) {\n ua.opera = ua.version;\n // version/XXX refers to opera\n delete ua.blackberry;\n } else if (R_Silk.exec(uaStr)) {\n ua.silk_accelerated = true;\n } else if (R_FluidApp.exec(uaStr)) {\n ua.fluidapp = ua.version;\n }\n\n if (ua.edge) {\n delete ua.applewebkit;\n delete ua.safari;\n delete ua.chrome;\n delete ua.android;\n }\n\n if (ua.applewebkit) {\n ua.webkit = ua.applewebkit;\n delete ua.applewebkit;\n\n if (ua.opr) {\n ua.opera = ua.opr;\n delete ua.opr;\n delete ua.chrome;\n }\n\n if (ua.safari) {\n if (\n ua.chrome ||\n ua.crios ||\n ua.fxios ||\n ua.opera ||\n ua.silk ||\n ua.fluidapp ||\n ua.phantomjs ||\n (ua.mobile && !ua.ios)\n ) {\n delete ua.safari;\n\n if (ua.vivaldi) {\n delete ua.chrome;\n }\n } else if (ua.version && !ua.rim_tablet_os) {\n ua.safari = ua.version;\n } else {\n ua.safari =\n {\n 419: '2.0.4',\n 417: '2.0.3',\n 416: '2.0.2',\n 412: '2.0',\n 312: '1.3',\n 125: '1.2',\n 85: '1.0',\n }[Number.parseInt(ua.safari, 10)] || ua.safari;\n }\n }\n } else if (ua.msie || ua.trident) {\n if (!ua.opera) {\n // standardize Internet Explorer\n ua.ie = ua.msie || ua.rv;\n }\n delete ua.msie;\n delete ua.android;\n\n if (ua.windows_phone_os) {\n // standardize window phone\n ua.windows_phone = ua.windows_phone_os;\n delete ua.windows_phone_os;\n } else if (ua.mobile === 'wpdesktop' || ua.mobile === 'xblwp7' || ua.mobile === 'zunewp7') {\n ua.mobile = 'windows desktop';\n ua.windows_phone = +ua.ie < 9 ? '7.0' : +ua.ie < 10 ? '7.5' : '8.0';\n delete ua.windows_nt;\n }\n } else if (ua.gecko || ua.firefox) {\n ua.gecko = ua.rv;\n }\n\n if (ua.rv) {\n delete ua.rv;\n }\n if (ua.version) {\n delete ua.version;\n }\n\n return ua;\n },\n\n format:\n /**\n * @param ua {Object}\n * @return {string}\n */\n function (ua) {\n /**\n * @param b {string} browser key\n * @param v {string} browser value\n * @return {string} formatted CSS classes\n */\n function format(b, v) {\n b = b.split('.').join('-');\n\n /**\n * @type {string}\n */\n var css = PREFIX + b;\n if (typeof v === 'string') {\n v = v.split(' ').join('_').split('.').join('-');\n var i = v.indexOf('-');\n while (i > 0) {\n // loop through chopping last '-' to end off\n // concat result onto return string\n css += PREFIX + b + '-' + v.substring(0, i);\n i = v.indexOf('-', i + 1);\n }\n css += PREFIX + b + '-' + v;\n }\n return css;\n }\n\n /**\n * @type {string}\n */\n var uaCss = '';\n for (var b in ua) {\n if (b && ua.hasOwnProperty(b)) {\n uaCss += format(b, ua[b]);\n }\n }\n\n // user-agent classNames\n return uaCss;\n },\n\n encode:\n /**\n * Encodes parsed userAgent object as a compact URI-Encoded key-value collection\n * @param ua {Object}\n * @return {string}\n */\n function (ua) {\n var query = '';\n for (var b in ua) {\n if (b && ua.hasOwnProperty(b)) {\n if (query) {\n query += '&';\n }\n query += encodeURIComponent(b) + '=' + encodeURIComponent(ua[b]);\n }\n }\n return query;\n },\n };\n\n /**\n * @const\n * @type {Object}\n */\n cssua.userAgent = cssua.ua = cssua.parse(userAgent, sa);\n\n /**\n * @const\n * @type {string}\n */\n var ua = cssua.format(cssua.ua) + ' js';\n\n // append CSS classes to HTML node\n if (html.className) {\n html.className = html.className.replace(/\\bno-js\\b/g, '') + ua;\n } else {\n html.className = ua.substr(1);\n }\n\n return cssua;\n};\n"],"names":["cssua","html","userAgent","sa","PREFIX","R_Platform","R_Version","R_BlackBerry","R_Silk","R_FluidApp","R_desktop","R_mobile","R_game","uaStr","ua","i","count","raw","j","rawCount","platforms","key","val","uas","parts","game","format","b","v","css","uaCss","query"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cssuseragent.js","sources":["../../src/utils/cssuseragent.js"],"sourcesContent":["/** biome-ignore-all lint/suspicious/noRedundantUseStrict: 3rd party code */\n/** biome-ignore-all lint/suspicious/noPrototypeBuiltins: 3rd party code */\n/** biome-ignore-all lint/complexity/useArrowFunction: 3rd party code */\n/** biome-ignore-all lint/style/useTemplate: 3rd party code */\n\n/**\n * CssUserAgent (cssua.js) v2.1.31\n * http://cssuseragent.org\n *\n * Copyright (c)2006-2015 Stephen M. McKamey.\n * Licensed under The MIT License.\n */\n/*jshint smarttabs:true, regexp:false, browser:true */\n\n/**\n * @param html {Object} root DOM element\n * @param userAgent {string} browser userAgent string\n * @return {Object}\n */\nexport const cssua = (html, userAgent, sa) => {\n 'use strict';\n\n /**\n * @const\n * @type {string}\n */\n var PREFIX = ' ua-';\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_Platform = /\\s*([\\-\\w ]+)[\\s\\/\\:]([\\d_]+\\b(?:[\\-\\._\\/]\\w+)*)/;\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_Version = /([\\w\\-\\.]+[\\s\\/][v]?[\\d_]+\\b(?:[\\-\\._\\/]\\w+)*)/g;\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_BlackBerry = /\\b(?:(blackberry\\w*|bb10)|(rim tablet os))(?:\\/(\\d+\\.\\d+(?:\\.\\w+)*))?/;\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_Silk = /\\bsilk-accelerated=true\\b/;\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_FluidApp = /\\bfluidapp\\b/;\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_desktop = /(\\bwindows\\b|\\bmacintosh\\b|\\blinux\\b|\\bunix\\b)/;\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_mobile =\n /(\\bandroid\\b|\\bipad\\b|\\bipod\\b|\\bwindows phone\\b|\\bwpdesktop\\b|\\bxblwp7\\b|\\bzunewp7\\b|\\bwindows ce\\b|\\bblackberry\\w*|\\bbb10\\b|\\brim tablet os\\b|\\bmeego|\\bwebos\\b|\\bpalm|\\bsymbian|\\bj2me\\b|\\bdocomo\\b|\\bpda\\b|\\bchtml\\b|\\bmidp\\b|\\bcldc\\b|\\w*?mobile\\w*?|\\w*?phone\\w*?)/;\n\n /**\n * @const\n * @type {RegExp}\n */\n var R_game = /(\\bxbox\\b|\\bplaystation\\b|\\bnintendo\\s+\\w+)/;\n\n /**\n * The root CssUserAgent\n * @type {Object}\n */\n var cssua = {\n parse:\n /**\n * @param uaStr {string}\n * @return {Object}\n */\n function (uaStr, sa) {\n /**\n * @type {Object}\n */\n var ua = {};\n if (sa) {\n ua.standalone = sa;\n }\n\n uaStr = ('' + uaStr).toLowerCase();\n if (!uaStr) {\n return ua;\n }\n\n var i,\n count,\n raw = uaStr.split(/[()]/);\n for (var j = 0, rawCount = raw.length; j < rawCount; j++) {\n if (j % 2) {\n // inside parens covers platform identifiers\n var platforms = raw[j].split(';');\n for (i = 0, count = platforms.length; i < count; i++) {\n if (R_Platform.exec(platforms[i])) {\n var key = RegExp.$1.split(' ').join('_'),\n val = RegExp.$2;\n\n // if duplicate entries favor highest version\n if (!ua[key] || Number.parseFloat(ua[key]) < Number.parseFloat(val)) {\n ua[key] = val;\n }\n }\n }\n } else {\n // outside parens covers most version identifiers\n var uas = raw[j].match(R_Version);\n if (uas) {\n for (i = 0, count = uas.length; i < count; i++) {\n var parts = uas[i].split(/[\\/\\s]+/);\n if (parts.length && parts[0] !== 'mozilla') {\n ua[parts[0].split(' ').join('_')] = parts.slice(1).join('-');\n }\n }\n }\n }\n }\n\n if (R_mobile.exec(uaStr)) {\n // mobile device indicators\n ua.mobile = RegExp.$1;\n if (R_BlackBerry.exec(uaStr)) {\n delete ua[ua.mobile];\n ua.blackberry = ua.version || RegExp.$3 || RegExp.$2 || RegExp.$1;\n if (RegExp.$1) {\n // standardize non-tablet blackberry\n ua.mobile = 'blackberry';\n } else if (ua.version === '0.0.1') {\n // fix playbook 1.0 quirk\n ua.blackberry = '7.1.0.0';\n }\n }\n } else if (R_game.exec(uaStr)) {\n // game console indicators\n ua.game = RegExp.$1;\n var game = ua.game.split(' ').join('_');\n\n if (ua.version && !ua[game]) {\n ua[game] = ua.version;\n }\n } else if (R_desktop.exec(uaStr)) {\n // desktop OS indicators\n ua.desktop = RegExp.$1;\n }\n\n // platform naming standardizations\n if (ua.intel_mac_os_x) {\n ua.mac_os_x = ua.intel_mac_os_x.split('_').join('.');\n delete ua.intel_mac_os_x;\n } else if (ua.cpu_iphone_os) {\n ua.ios = ua.cpu_iphone_os.split('_').join('.');\n delete ua.cpu_iphone_os;\n } else if (ua.cpu_os) {\n ua.ios = ua.cpu_os.split('_').join('.');\n delete ua.cpu_os;\n } else if (ua.mobile === 'iphone' && !ua.ios) {\n ua.ios = '1';\n }\n\n // UA naming standardizations\n if (ua.opera && ua.version) {\n ua.opera = ua.version;\n // version/XXX refers to opera\n delete ua.blackberry;\n } else if (R_Silk.exec(uaStr)) {\n ua.silk_accelerated = true;\n } else if (R_FluidApp.exec(uaStr)) {\n ua.fluidapp = ua.version;\n }\n\n if (ua.edge) {\n delete ua.applewebkit;\n delete ua.safari;\n delete ua.chrome;\n delete ua.android;\n }\n\n if (ua.applewebkit) {\n ua.webkit = ua.applewebkit;\n delete ua.applewebkit;\n\n if (ua.opr) {\n ua.opera = ua.opr;\n delete ua.opr;\n delete ua.chrome;\n }\n\n if (ua.safari) {\n if (\n ua.chrome ||\n ua.crios ||\n ua.fxios ||\n ua.opera ||\n ua.silk ||\n ua.fluidapp ||\n ua.phantomjs ||\n (ua.mobile && !ua.ios)\n ) {\n delete ua.safari;\n\n if (ua.vivaldi) {\n delete ua.chrome;\n }\n } else if (ua.version && !ua.rim_tablet_os) {\n ua.safari = ua.version;\n } else {\n ua.safari =\n {\n 419: '2.0.4',\n 417: '2.0.3',\n 416: '2.0.2',\n 412: '2.0',\n 312: '1.3',\n 125: '1.2',\n 85: '1.0',\n }[Number.parseInt(ua.safari, 10)] || ua.safari;\n }\n }\n } else if (ua.msie || ua.trident) {\n if (!ua.opera) {\n // standardize Internet Explorer\n ua.ie = ua.msie || ua.rv;\n }\n delete ua.msie;\n delete ua.android;\n\n if (ua.windows_phone_os) {\n // standardize window phone\n ua.windows_phone = ua.windows_phone_os;\n delete ua.windows_phone_os;\n } else if (ua.mobile === 'wpdesktop' || ua.mobile === 'xblwp7' || ua.mobile === 'zunewp7') {\n ua.mobile = 'windows desktop';\n ua.windows_phone = +ua.ie < 9 ? '7.0' : +ua.ie < 10 ? '7.5' : '8.0';\n delete ua.windows_nt;\n }\n } else if (ua.gecko || ua.firefox) {\n ua.gecko = ua.rv;\n }\n\n if (ua.rv) {\n delete ua.rv;\n }\n if (ua.version) {\n delete ua.version;\n }\n\n return ua;\n },\n\n format:\n /**\n * @param ua {Object}\n * @return {string}\n */\n function (ua) {\n /**\n * @param b {string} browser key\n * @param v {string} browser value\n * @return {string} formatted CSS classes\n */\n function format(b, v) {\n b = b.split('.').join('-');\n\n /**\n * @type {string}\n */\n var css = PREFIX + b;\n if (typeof v === 'string') {\n v = v.split(' ').join('_').split('.').join('-');\n var i = v.indexOf('-');\n while (i > 0) {\n // loop through chopping last '-' to end off\n // concat result onto return string\n css += PREFIX + b + '-' + v.substring(0, i);\n i = v.indexOf('-', i + 1);\n }\n css += PREFIX + b + '-' + v;\n }\n return css;\n }\n\n /**\n * @type {string}\n */\n var uaCss = '';\n for (var b in ua) {\n if (b && ua.hasOwnProperty(b)) {\n uaCss += format(b, ua[b]);\n }\n }\n\n // user-agent classNames\n return uaCss;\n },\n\n encode:\n /**\n * Encodes parsed userAgent object as a compact URI-Encoded key-value collection\n * @param ua {Object}\n * @return {string}\n */\n function (ua) {\n var query = '';\n for (var b in ua) {\n if (b && ua.hasOwnProperty(b)) {\n if (query) {\n query += '&';\n }\n query += encodeURIComponent(b) + '=' + encodeURIComponent(ua[b]);\n }\n }\n return query;\n },\n };\n\n /**\n * @const\n * @type {Object}\n */\n cssua.userAgent = cssua.ua = cssua.parse(userAgent, sa);\n\n /**\n * @const\n * @type {string}\n */\n var ua = cssua.format(cssua.ua) + ' js';\n\n // append CSS classes to HTML node\n if (html.className) {\n html.className = html.className.replace(/\\bno-js\\b/g, '') + ua;\n } else {\n html.className = ua.substr(1);\n }\n\n return cssua;\n};\n"],"names":["cssua","html","userAgent","sa","PREFIX","R_Platform","R_Version","R_BlackBerry","R_Silk","R_FluidApp","R_desktop","R_mobile","R_game","uaStr","ua","i","count","raw","j","rawCount","platforms","key","val","uas","parts","game","format","b","v","css","uaCss","query"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const mergeClassNameOverrides: (defaultClasses: string, overrides?: string) => string;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
const g = (t) => t.split(" ").map((n) => n.trim()).filter(Boolean), a = (t, n, e) => ({
|
|
2
|
+
kind: t,
|
|
3
|
+
axis: n,
|
|
4
|
+
value: e
|
|
5
|
+
}), h = (t) => {
|
|
6
|
+
const n = t.match(/^(margin|padding)(?:-(x|y|top|right|bottom|left))?-(.+)$/);
|
|
7
|
+
if (!n)
|
|
8
|
+
return null;
|
|
9
|
+
const e = n[1], f = n[2] ?? "all", u = n[3];
|
|
10
|
+
return { kind: e, axis: f, value: u };
|
|
11
|
+
}, $ = ({ kind: t, axis: n, value: e }) => n === "all" ? `${t}-${e}` : `${t}-${n}-${e}`, y = (t, n) => n === "all" || t === "all" || t === n || t === "x" && (n === "left" || n === "right") || t === "y" && (n === "top" || n === "bottom") || n === "x" && (t === "left" || t === "right") || n === "y" && (t === "top" || t === "bottom"), m = (t) => {
|
|
12
|
+
if (t.startsWith("margin-")) {
|
|
13
|
+
const [n, e] = t.split("-");
|
|
14
|
+
return e === "x" || e === "y" || e === "top" || e === "right" || e === "bottom" || e === "left" ? `${n}-${e}` : n;
|
|
15
|
+
}
|
|
16
|
+
if (t.startsWith("padding-")) {
|
|
17
|
+
const [n, e] = t.split("-");
|
|
18
|
+
return e === "x" || e === "y" || e === "top" || e === "right" || e === "bottom" || e === "left" ? `${n}-${e}` : n;
|
|
19
|
+
}
|
|
20
|
+
return t.startsWith("text-size-") ? "text-size" : t.startsWith("text-color-") ? "text-color" : t.startsWith("bg-") ? "bg" : t === "rounded" || t.startsWith("rounded-") ? "rounded" : t === "border" || t.startsWith("border-") ? "border" : t;
|
|
21
|
+
}, k = (t, n) => {
|
|
22
|
+
if (!n || n.trim() === "")
|
|
23
|
+
return t;
|
|
24
|
+
const e = g(n), f = new Set(e.map((r) => m(r))), u = e.map(h).filter(Boolean), c = {
|
|
25
|
+
margin: u.filter((r) => r.kind === "margin").map((r) => r.axis),
|
|
26
|
+
padding: u.filter((r) => r.kind === "padding").map((r) => r.axis)
|
|
27
|
+
}, b = g(t), l = [], p = b.filter((r) => {
|
|
28
|
+
const i = h(r);
|
|
29
|
+
return i ? c[i.kind].some((S) => y(i.axis, S)) ? (l.push(i), !1) : !0 : !f.has(m(r));
|
|
30
|
+
}), x = l.filter((r) => r.axis === "x" || r.axis === "y").flatMap((r) => {
|
|
31
|
+
const i = c[r.kind];
|
|
32
|
+
if (i.includes("all") || i.includes(r.axis))
|
|
33
|
+
return [];
|
|
34
|
+
if (r.axis === "x") {
|
|
35
|
+
const o = i.includes("left"), s = i.includes("right");
|
|
36
|
+
if (o && !s)
|
|
37
|
+
return [a(r.kind, "right", r.value)];
|
|
38
|
+
if (s && !o)
|
|
39
|
+
return [a(r.kind, "left", r.value)];
|
|
40
|
+
}
|
|
41
|
+
if (r.axis === "y") {
|
|
42
|
+
const o = i.includes("top"), s = i.includes("bottom");
|
|
43
|
+
if (o && !s)
|
|
44
|
+
return [a(r.kind, "bottom", r.value)];
|
|
45
|
+
if (s && !o)
|
|
46
|
+
return [a(r.kind, "top", r.value)];
|
|
47
|
+
}
|
|
48
|
+
return [];
|
|
49
|
+
}).map($), d = /* @__PURE__ */ new Set([...p, ...e]), T = x.filter((r) => d.has(r) ? !1 : (d.add(r), !0));
|
|
50
|
+
return [...p, ...T, ...e].join(" ");
|
|
51
|
+
};
|
|
52
|
+
export {
|
|
53
|
+
k as mergeClassNameOverrides
|
|
54
|
+
};
|
|
55
|
+
//# sourceMappingURL=mergeClassNameOverrides.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mergeClassNameOverrides.js","sources":["../../src/utils/mergeClassNameOverrides.ts"],"sourcesContent":["const splitClasses = (value: string): string[] =>\n value\n .split(' ')\n .map(className => className.trim())\n .filter(Boolean);\n\ntype SpacingKind = 'margin' | 'padding';\ntype SpacingAxis = 'all' | 'x' | 'y' | 'top' | 'right' | 'bottom' | 'left';\n\ntype SpacingToken = {\n kind: SpacingKind;\n axis: SpacingAxis;\n value: string;\n};\n\nconst createSpacingToken = (kind: SpacingKind, axis: SpacingAxis, value: string): SpacingToken => ({\n kind,\n axis,\n value,\n});\n\nconst parseSpacingToken = (className: string): SpacingToken | null => {\n const matches = className.match(/^(margin|padding)(?:-(x|y|top|right|bottom|left))?-(.+)$/);\n if (!matches) {\n return null;\n }\n\n const kind = matches[1] as SpacingKind;\n const axis = (matches[2] as Exclude<SpacingAxis, 'all'> | undefined) ?? 'all';\n const value = matches[3];\n\n return { kind, axis, value };\n};\n\nconst spacingTokenToClassName = ({ kind, axis, value }: SpacingToken): string =>\n axis === 'all' ? `${kind}-${value}` : `${kind}-${axis}-${value}`;\n\nconst overrideAffectsSpacingAxis = (defaultAxis: SpacingAxis, overrideAxis: SpacingAxis): boolean => {\n if (overrideAxis === 'all') {\n return true;\n }\n\n if (defaultAxis === 'all') {\n return true;\n }\n\n if (defaultAxis === overrideAxis) {\n return true;\n }\n\n if (defaultAxis === 'x' && (overrideAxis === 'left' || overrideAxis === 'right')) {\n return true;\n }\n\n if (defaultAxis === 'y' && (overrideAxis === 'top' || overrideAxis === 'bottom')) {\n return true;\n }\n\n if (overrideAxis === 'x' && (defaultAxis === 'left' || defaultAxis === 'right')) {\n return true;\n }\n\n if (overrideAxis === 'y' && (defaultAxis === 'top' || defaultAxis === 'bottom')) {\n return true;\n }\n\n return false;\n};\n\nconst getUtilityClassBase = (className: string): string => {\n if (className.startsWith('margin-')) {\n const [prefix, axis] = className.split('-');\n if (\n axis === 'x' ||\n axis === 'y' ||\n axis === 'top' ||\n axis === 'right' ||\n axis === 'bottom' ||\n axis === 'left'\n ) {\n return `${prefix}-${axis}`;\n }\n return prefix;\n }\n\n if (className.startsWith('padding-')) {\n const [prefix, axis] = className.split('-');\n if (\n axis === 'x' ||\n axis === 'y' ||\n axis === 'top' ||\n axis === 'right' ||\n axis === 'bottom' ||\n axis === 'left'\n ) {\n return `${prefix}-${axis}`;\n }\n return prefix;\n }\n\n if (className.startsWith('text-size-')) {\n return 'text-size';\n }\n\n if (className.startsWith('text-color-')) {\n return 'text-color';\n }\n\n if (className.startsWith('bg-')) {\n return 'bg';\n }\n\n if (className === 'rounded' || className.startsWith('rounded-')) {\n return 'rounded';\n }\n\n if (className === 'border' || className.startsWith('border-')) {\n return 'border';\n }\n\n return className;\n};\n\nexport const mergeClassNameOverrides = (defaultClasses: string, overrides?: string): string => {\n if (!overrides || overrides.trim() === '') {\n return defaultClasses;\n }\n\n const overrideTokens = splitClasses(overrides);\n const overrideBases = new Set(overrideTokens.map(token => getUtilityClassBase(token)));\n const overrideSpacingTokens = overrideTokens.map(parseSpacingToken).filter(Boolean) as SpacingToken[];\n const overrideSpacingByKind = {\n margin: overrideSpacingTokens.filter(token => token.kind === 'margin').map(token => token.axis),\n padding: overrideSpacingTokens.filter(token => token.kind === 'padding').map(token => token.axis),\n } as const;\n\n const defaultTokens = splitClasses(defaultClasses);\n const removedDefaultSpacingTokens: SpacingToken[] = [];\n const filteredDefaults = defaultTokens.filter(token => {\n const defaultSpacingToken = parseSpacingToken(token);\n if (defaultSpacingToken) {\n const overrideAxes = overrideSpacingByKind[defaultSpacingToken.kind];\n const isOverridden = overrideAxes.some(axis => overrideAffectsSpacingAxis(defaultSpacingToken.axis, axis));\n if (isOverridden) {\n removedDefaultSpacingTokens.push(defaultSpacingToken);\n return false;\n }\n return true;\n }\n\n return !overrideBases.has(getUtilityClassBase(token));\n });\n\n const fallbackSpacingTokens = removedDefaultSpacingTokens\n .filter(token => token.axis === 'x' || token.axis === 'y')\n .flatMap<SpacingToken>(token => {\n const overrideAxes = overrideSpacingByKind[token.kind];\n if (overrideAxes.includes('all') || overrideAxes.includes(token.axis)) {\n return [];\n }\n\n if (token.axis === 'x') {\n const hasLeft = overrideAxes.includes('left');\n const hasRight = overrideAxes.includes('right');\n\n if (hasLeft && !hasRight) {\n return [createSpacingToken(token.kind, 'right', token.value)];\n }\n\n if (hasRight && !hasLeft) {\n return [createSpacingToken(token.kind, 'left', token.value)];\n }\n }\n\n if (token.axis === 'y') {\n const hasTop = overrideAxes.includes('top');\n const hasBottom = overrideAxes.includes('bottom');\n\n if (hasTop && !hasBottom) {\n return [createSpacingToken(token.kind, 'bottom', token.value)];\n }\n\n if (hasBottom && !hasTop) {\n return [createSpacingToken(token.kind, 'top', token.value)];\n }\n }\n\n return [];\n })\n .map(spacingTokenToClassName);\n\n const seenTokens = new Set([...filteredDefaults, ...overrideTokens]);\n const uniqueFallbackSpacingTokens = fallbackSpacingTokens.filter(token => {\n if (seenTokens.has(token)) {\n return false;\n }\n seenTokens.add(token);\n return true;\n });\n\n return [...filteredDefaults, ...uniqueFallbackSpacingTokens, ...overrideTokens].join(' ');\n};\n"],"names":["splitClasses","value","className","createSpacingToken","kind","axis","parseSpacingToken","matches","spacingTokenToClassName","overrideAffectsSpacingAxis","defaultAxis","overrideAxis","getUtilityClassBase","prefix","mergeClassNameOverrides","defaultClasses","overrides","overrideTokens","overrideBases","token","overrideSpacingTokens","overrideSpacingByKind","defaultTokens","removedDefaultSpacingTokens","filteredDefaults","defaultSpacingToken","fallbackSpacingTokens","overrideAxes","hasLeft","hasRight","hasTop","hasBottom","seenTokens","uniqueFallbackSpacingTokens"],"mappings":"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"}
|
package/utils/routeUtils.d.ts
CHANGED
|
@@ -1,15 +1,124 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
import { isEqual } from 'es-toolkit';
|
|
2
|
+
import { SortDirectionType } from './SortUtils';
|
|
3
|
+
import { TableColumnDetailsMap, TableColumnsSettings } from '../components/table/TableSettingsDialog';
|
|
4
|
+
export { isEqual };
|
|
5
|
+
export type ColumnsSettings = TableColumnsSettings;
|
|
6
|
+
/**
|
|
7
|
+
* Returns a compact sort direction prefix for use in URL params.
|
|
8
|
+
* Serialize: Ascending = "", Descending = "-"
|
|
9
|
+
*
|
|
10
|
+
* Useful for concise sort state like `sort=-name` or `sort=name`.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* getSortDirShort(SortDirection.DESCENDING) // '-'
|
|
14
|
+
*/
|
|
15
|
+
export declare const getSortDirShort: (sortDir: string) => "" | "-";
|
|
16
|
+
/**
|
|
17
|
+
* Returns a serialized string of the sort order and sort direction.
|
|
18
|
+
*
|
|
19
|
+
* @param sortInfo { sortDir: SortDirectionType; sortBy: string }
|
|
20
|
+
* @returns
|
|
21
|
+
*/
|
|
22
|
+
export declare const serializeSorting: (sortInfo: {
|
|
23
|
+
sortDir: SortDirectionType;
|
|
11
24
|
sortBy: string;
|
|
12
|
-
|
|
13
|
-
|
|
25
|
+
}) => string | null;
|
|
26
|
+
/**
|
|
27
|
+
* Parses a compact sort param (e.g. `name` or `-name`) into sort fields.
|
|
28
|
+
* Useful when reading URL params into table state.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* parseSorting('-createdAt') // { sortBy: 'createdAt', sortDir: 'DESCENDING' }
|
|
32
|
+
*/
|
|
33
|
+
export declare const parseSorting: (sortValueShort: string | null | undefined) => {
|
|
34
|
+
sortBy: string;
|
|
35
|
+
sortDir: string;
|
|
36
|
+
} | null;
|
|
37
|
+
/**
|
|
38
|
+
* Serializes column settings into compact strings for a URL param.
|
|
39
|
+
* Useful to keep table configuration URLs short and readable.
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* mapColumnsSettingsToStrings({ columnOrder: ['name'], hiddenColumns: [], columnsDetails: { name: { width: 120 } } })
|
|
43
|
+
* // ['name:120']
|
|
44
|
+
*/
|
|
14
45
|
export declare const mapColumnsSettingsToStrings: ({ columnOrder, hiddenColumns, columnsDetails, }: ColumnsSettings) => string[];
|
|
15
|
-
|
|
46
|
+
/**
|
|
47
|
+
* Parses compact column strings into column settings using defaults.
|
|
48
|
+
* Useful to restore table settings from URL state.
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* parseColumnsSettingsStrings(['-name:200'], { name: { width: 120, defaultWidth: 120 } })
|
|
52
|
+
*/
|
|
53
|
+
export declare const parseColumnsSettingsStrings: (settings: string[], defaultColumnsDetails: TableColumnDetailsMap) => TableColumnsSettings;
|
|
54
|
+
export type UrlTypeMap = {
|
|
55
|
+
string: string;
|
|
56
|
+
number: number;
|
|
57
|
+
boolean: boolean;
|
|
58
|
+
array: string[];
|
|
59
|
+
'array-number': number[];
|
|
60
|
+
object: Record<string, unknown>;
|
|
61
|
+
};
|
|
62
|
+
export type UrlValueType = keyof UrlTypeMap;
|
|
63
|
+
export type UrlConfigItem<TState = unknown, TValue = unknown> = {
|
|
64
|
+
/**
|
|
65
|
+
* The query param key in the URL (e.g., 'q', 'sort')
|
|
66
|
+
*/
|
|
67
|
+
key: string;
|
|
68
|
+
/**
|
|
69
|
+
* Selector to retrieve the current value from Redux.
|
|
70
|
+
*/
|
|
71
|
+
selector: (state: TState) => TValue;
|
|
72
|
+
/**
|
|
73
|
+
* Action creator to dispatch the new value to Redux.
|
|
74
|
+
*/
|
|
75
|
+
action: (value: TValue) => unknown;
|
|
76
|
+
/**
|
|
77
|
+
* The generic type for auto-parsing/serialization
|
|
78
|
+
*/
|
|
79
|
+
type?: UrlValueType;
|
|
80
|
+
/**
|
|
81
|
+
* Default value for the given key. Must be explicitly provided and
|
|
82
|
+
* must not be `undefined`.
|
|
83
|
+
*
|
|
84
|
+
* 1. If URL is missing the key, this value is applied to Redux.
|
|
85
|
+
* 2. If Redux matches this value, the key is removed from URL.
|
|
86
|
+
*/
|
|
87
|
+
defaultValue: Exclude<TValue, undefined>;
|
|
88
|
+
/**
|
|
89
|
+
* Navigation behavior when this specific value changes
|
|
90
|
+
*
|
|
91
|
+
* Behavior in `useUrlState`:
|
|
92
|
+
* - `'push'`: every change creates a new history entry.
|
|
93
|
+
* - `'replace'`: changes replace the current entry, except the first
|
|
94
|
+
* transition from default -> non-default, which is pushed once.
|
|
95
|
+
*
|
|
96
|
+
* @default 'push'
|
|
97
|
+
*/
|
|
98
|
+
history?: 'push' | 'replace';
|
|
99
|
+
/**
|
|
100
|
+
* Optional: Custom function to convert Redux Object -> URL String
|
|
101
|
+
*/
|
|
102
|
+
customSerialize?: (reduxValue: TValue) => string | null;
|
|
103
|
+
/**
|
|
104
|
+
* Optional: Custom function to convert URL String -> Redux Object
|
|
105
|
+
*/
|
|
106
|
+
customDeserialize?: (urlValue: string | null) => TValue | null;
|
|
107
|
+
};
|
|
108
|
+
/**
|
|
109
|
+
* Generates a URL query string that mimics 'qs' library behavior
|
|
110
|
+
* by keeping commas and plus signs unencoded for readability.
|
|
111
|
+
*/
|
|
112
|
+
export declare const toQueryString: (params: URLSearchParams, config: readonly UrlConfigItem[]) => string;
|
|
113
|
+
/**
|
|
114
|
+
* Converts a JS value into a string suitable for URLSearchParams.
|
|
115
|
+
* Returns null if the value is empty/invalid.
|
|
116
|
+
*/
|
|
117
|
+
export declare const serializeValue: <K extends UrlValueType>(value: UrlTypeMap[K] | null | undefined, type: K) => string | null;
|
|
118
|
+
/**
|
|
119
|
+
* Generic deserialize function. Converts a URL string value back into a JS Primitive/Object.
|
|
120
|
+
*
|
|
121
|
+
* <TUrlValueType extends UrlValueType>: Capture the specific string literal passed in (e.g. 'number').
|
|
122
|
+
* Returns: UrlTypeMap[TUrlValueType] | null (e.g. number | null).
|
|
123
|
+
*/
|
|
124
|
+
export declare const deserializeValue: <TUrlValueType extends UrlValueType>(value: string | null, type: TUrlValueType) => UrlTypeMap[TUrlValueType] | null;
|
package/utils/routeUtils.js
CHANGED
|
@@ -1,38 +1,96 @@
|
|
|
1
|
-
import { get as
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
}
|
|
17
|
-
|
|
1
|
+
import { get as l } from "es-toolkit/compat";
|
|
2
|
+
import { isNil as p } from "es-toolkit";
|
|
3
|
+
import { isEqual as A } from "es-toolkit";
|
|
4
|
+
import { SortDirection as g } from "./SortUtils.js";
|
|
5
|
+
const f = (r) => r === g.DESCENDING ? "-" : "", S = (r) => r?.sortBy ? `${f(r.sortDir)}${r.sortBy}` : null, D = (r) => r ? r.startsWith("-") ? {
|
|
6
|
+
sortBy: r.substring(1),
|
|
7
|
+
// remove '-'
|
|
8
|
+
sortDir: "DESCENDING"
|
|
9
|
+
} : r.startsWith("+") ? {
|
|
10
|
+
sortBy: r.substring(1).trim(),
|
|
11
|
+
// remove '+' and potential space
|
|
12
|
+
sortDir: "ASCENDING"
|
|
13
|
+
} : {
|
|
14
|
+
sortBy: r.trim(),
|
|
15
|
+
sortDir: "ASCENDING"
|
|
16
|
+
} : null, $ = ({
|
|
17
|
+
columnOrder: r = [],
|
|
18
|
+
hiddenColumns: t = [],
|
|
19
|
+
columnsDetails: n = {}
|
|
20
|
+
}) => r.map((e) => {
|
|
21
|
+
const o = l(n[e], "width"), i = l(n[e], "defaultWidth"), c = o !== 0 && o !== i ? `:${o}` : "";
|
|
22
|
+
return `${t.includes(e) ? "-" : ""}${e}${c}`;
|
|
23
|
+
}), j = (r, t) => {
|
|
24
|
+
const n = {
|
|
18
25
|
columnOrder: [],
|
|
19
26
|
hiddenColumns: [],
|
|
20
|
-
columnsDetails: { ...
|
|
27
|
+
columnsDetails: { ...t }
|
|
21
28
|
};
|
|
22
|
-
return
|
|
23
|
-
const [
|
|
24
|
-
if (
|
|
25
|
-
const
|
|
26
|
-
Number.isFinite(
|
|
29
|
+
return r.forEach((s) => {
|
|
30
|
+
const [e, o] = s.split(":"), i = e.startsWith("-") ? e.substr(1) : e;
|
|
31
|
+
if (n.columnOrder = [...n.columnOrder, i], o) {
|
|
32
|
+
const c = Number.parseInt(o, 10);
|
|
33
|
+
Number.isFinite(c) && (n.columnsDetails[i] = { ...n.columnsDetails[i], width: c });
|
|
27
34
|
} else
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}),
|
|
31
|
-
}
|
|
35
|
+
n.columnsDetails[i] = { ...t[i] };
|
|
36
|
+
e.startsWith("-") && (n.hiddenColumns = [...n.hiddenColumns, i]);
|
|
37
|
+
}), n;
|
|
38
|
+
}, a = (r) => encodeURIComponent(String(r)), m = (r) => decodeURIComponent(r), E = (r, t) => {
|
|
39
|
+
const n = new Map(t.map((e) => [e.key, e])), s = [];
|
|
40
|
+
return r.forEach((e, o) => {
|
|
41
|
+
const i = n.get(o), c = encodeURIComponent(o), u = encodeURIComponent(e);
|
|
42
|
+
if (i && ["array", "array-number", "object"].includes(i.type ?? "string")) {
|
|
43
|
+
const d = u.replace(/%2C/g, ",").replace(/%3A/g, ":");
|
|
44
|
+
s.push(`${c}=${d}`);
|
|
45
|
+
} else
|
|
46
|
+
s.push(`${c}=${u}`);
|
|
47
|
+
}), s.join("&");
|
|
48
|
+
}, W = (r, t) => {
|
|
49
|
+
if (p(r) || r === "")
|
|
50
|
+
return null;
|
|
51
|
+
switch (t) {
|
|
52
|
+
case "string":
|
|
53
|
+
case "number":
|
|
54
|
+
return String(r);
|
|
55
|
+
case "boolean":
|
|
56
|
+
return r ? "true" : "false";
|
|
57
|
+
case "array":
|
|
58
|
+
case "array-number":
|
|
59
|
+
return !Array.isArray(r) || r.length === 0 ? null : r.map(String).join(",");
|
|
60
|
+
case "object":
|
|
61
|
+
return typeof r != "object" || Object.keys(r).length === 0 ? null : Object.entries(r).map(([n, s]) => `${a(n)}:${a(String(s))}`).join(",");
|
|
62
|
+
default:
|
|
63
|
+
return String(r);
|
|
64
|
+
}
|
|
65
|
+
}, y = {
|
|
66
|
+
string: (r) => r,
|
|
67
|
+
number: (r) => {
|
|
68
|
+
const t = Number(r);
|
|
69
|
+
return Number.isNaN(t) ? null : t;
|
|
70
|
+
},
|
|
71
|
+
boolean: (r) => {
|
|
72
|
+
const t = r.toLowerCase();
|
|
73
|
+
return t === "true" || t === "1" || t === "yes" || t === "on";
|
|
74
|
+
},
|
|
75
|
+
array: (r) => r.split(",").filter(Boolean),
|
|
76
|
+
"array-number": (r) => r.split(",").map(Number).filter((t) => !Number.isNaN(t)),
|
|
77
|
+
object: (r) => {
|
|
78
|
+
const t = {};
|
|
79
|
+
return r.split(",").forEach((n) => {
|
|
80
|
+
const [s, e] = n.split(":");
|
|
81
|
+
s && e && (t[m(s)] = m(e));
|
|
82
|
+
}), t;
|
|
83
|
+
}
|
|
84
|
+
}, w = (r, t) => p(r) ? null : y[t](r);
|
|
32
85
|
export {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
86
|
+
w as deserializeValue,
|
|
87
|
+
f as getSortDirShort,
|
|
88
|
+
A as isEqual,
|
|
89
|
+
$ as mapColumnsSettingsToStrings,
|
|
90
|
+
j as parseColumnsSettingsStrings,
|
|
91
|
+
D as parseSorting,
|
|
92
|
+
S as serializeSorting,
|
|
93
|
+
W as serializeValue,
|
|
94
|
+
E as toQueryString
|
|
37
95
|
};
|
|
38
96
|
//# sourceMappingURL=routeUtils.js.map
|