@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":"ContentLoader.js","sources":["../../../src/components/contentLoader/ContentLoader.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\nimport { default as _ContentLoader } from 'react-content-loader';\nimport { isNil } from 'es-toolkit/predicate';\nimport { cond } from 'es-toolkit/compat';\n\nimport useDarkMode from '../../hooks/useDarkMode';\n\nconst RECT = 'rect';\nconst CIRCLE = 'circle';\n\nconst DEFAULT_SPEED = 2;\nconst DEFAULT_HEIGHT = 14;\nconst DEFAULT_WIDTH = '100%';\nconst DEFAULT_RADIUS = 16;\nconst DEFAULT_TYPE = RECT;\n\nexport type ContentLoaderProps = {\n /**\n * Sets the animation speed.\n * @default 2\n */\n speed?: number;\n /**\n * Sets the height of the svg element.\n * @default 14\n */\n height?: string | number;\n /**\n * Sets the width of the svg element.\n * @default 100%\n */\n width?: string | number;\n /**\n * Sets the radius of the svg element. Only relevant for circle elements.\n * @default 16\n */\n radius?: number;\n /**\n * Renders either a rectangle or circle.\n *\n * Possible values are:\n * `ContentLoader.RECT`, `ContentLoader.CIRCLE` or `rect`, `circle`\n */\n type?: typeof RECT | typeof CIRCLE;\n /**\n * Additional class names to ab added to the wrapping svg element.\n */\n className?: string;\n
|
|
1
|
+
{"version":3,"file":"ContentLoader.js","sources":["../../../src/components/contentLoader/ContentLoader.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\nimport { default as _ContentLoader } from 'react-content-loader';\nimport { isNil } from 'es-toolkit/predicate';\nimport { cond } from 'es-toolkit/compat';\n\nimport useDarkMode from '../../hooks/useDarkMode';\n\nconst RECT = 'rect';\nconst CIRCLE = 'circle';\n\nconst DEFAULT_SPEED = 2;\nconst DEFAULT_HEIGHT = 14;\nconst DEFAULT_WIDTH = '100%';\nconst DEFAULT_RADIUS = 16;\nconst DEFAULT_TYPE = RECT;\n\nexport type ContentLoaderProps = {\n /**\n * Sets the animation speed.\n *\n * @default 2\n */\n speed?: number;\n\n /**\n * Sets the height of the svg element.\n *\n * @default 14\n */\n height?: string | number;\n\n /**\n * Sets the width of the svg element.\n *\n * @default 100%\n */\n width?: string | number;\n\n /**\n * Sets the radius of the svg element. Only relevant for circle elements.\n *\n * @default 16\n */\n radius?: number;\n\n /**\n * Renders either a rectangle or circle.\n *\n * Possible values are:\n * `ContentLoader.RECT`, `ContentLoader.CIRCLE` or `rect`, `circle`\n */\n type?: typeof RECT | typeof CIRCLE;\n\n /**\n * Additional class names to ab added to the wrapping svg element.\n */\n className?: string;\n\n /**\n * Rect object prop. Used internally.\n */\n rx?: number;\n\n /**\n * Rect object prop. Used internally.\n */\n ry?: number;\n};\n\ntype ContentLoaderPropsWithChildren = PropsWithChildren<ContentLoaderProps>;\n\nconst hasChildren = ({ children }: ContentLoaderPropsWithChildren) => !isNil(children);\nconst renderChildren = ({ children }: ContentLoaderPropsWithChildren) => children;\n\nconst isRect = ({ type }: ContentLoaderPropsWithChildren) => type === RECT;\nconst isCircle = ({ type }: ContentLoaderPropsWithChildren) => type === CIRCLE;\n\nconst renderRect = ({ rx = 3, ry = 3 }: ContentLoaderPropsWithChildren) => (\n <rect width='100%' height='100%' rx={rx} ry={ry} />\n);\n\nconst renderCircle = ({ radius }: ContentLoaderPropsWithChildren) => <circle cx={radius} cy={radius} r={radius} />;\n\n/**\n * This UIKIT component is simple wrapper to make it easier to use with a predefined look and feel. It still\n * allows for more complex configurations as all additional props are passed down to the third-party\n * ContentLoader component. For individual customization, it allows passing svg components as rect or circle\n * directly as children.\n * @param props\n * @returns\n */\nconst ContentLoader = (props: ContentLoaderPropsWithChildren) => {\n const {\n speed = DEFAULT_SPEED,\n width = DEFAULT_WIDTH,\n height = DEFAULT_HEIGHT,\n radius = DEFAULT_RADIUS,\n type = DEFAULT_TYPE,\n className = '',\n children,\n ...remainingProps\n } = props;\n\n const isDarkMode = useDarkMode();\n\n // Since we define the default values while destructuring the props, we have to build up a new object\n // with that defaults to be used in the conditional rendering, otherwise it would use only the props as\n // passed into the component without the defined defaults.\n const propsWithDefaults = {\n type,\n radius,\n children,\n } as ContentLoaderPropsWithChildren;\n\n const content = cond([\n [hasChildren, renderChildren],\n [isRect, renderRect],\n [isCircle, renderCircle],\n ])(propsWithDefaults);\n\n const wrapperHeight = isCircle(propsWithDefaults) ? radius * 2 : height;\n const wrapperWidth = isCircle(propsWithDefaults) ? wrapperHeight : width;\n\n return (\n <_ContentLoader\n backgroundColor='#f5f6f7'\n foregroundColor={isDarkMode ? '#aaaaaa' : '#eeeeee'}\n speed={speed}\n height={wrapperHeight}\n width={wrapperWidth}\n className={`ContentLoader ${className} ${isDarkMode ? 'use-mix-blend-mode' : ''}`}\n {...remainingProps}\n >\n {content}\n </_ContentLoader>\n );\n};\n\nContentLoader.RECT = RECT as typeof RECT;\nContentLoader.CIRCLE = CIRCLE as typeof CIRCLE;\n\nexport default ContentLoader;\n"],"names":["RECT","CIRCLE","DEFAULT_SPEED","DEFAULT_HEIGHT","DEFAULT_WIDTH","DEFAULT_RADIUS","DEFAULT_TYPE","hasChildren","children","isNil","renderChildren","isRect","type","isCircle","renderRect","rx","ry","jsx","renderCircle","radius","ContentLoader","props","speed","width","height","className","remainingProps","isDarkMode","useDarkMode","propsWithDefaults","content","cond","wrapperHeight","wrapperWidth","_ContentLoader"],"mappings":";;;;;AAOA,MAAMA,IAAO,QACPC,IAAS,UAETC,IAAgB,GAChBC,IAAiB,IACjBC,IAAgB,QAChBC,IAAiB,IACjBC,IAAeN,GAyDfO,IAAc,CAAC,EAAE,UAAAC,QAA+C,CAACC,EAAMD,CAAQ,GAC/EE,IAAiB,CAAC,EAAE,UAAAF,EAAA,MAA+CA,GAEnEG,IAAS,CAAC,EAAE,MAAAC,EAAA,MAA2CA,MAASZ,GAChEa,IAAW,CAAC,EAAE,MAAAD,EAAA,MAA2CA,MAASX,GAElEa,IAAa,CAAC,EAAE,IAAAC,IAAK,GAAG,IAAAC,IAAK,EAAA,MAC/B,gBAAAC,EAAC,UAAK,OAAM,QAAO,QAAO,QAAO,IAAAF,GAAQ,IAAAC,GAAQ,GAG/CE,IAAe,CAAC,EAAE,QAAAC,QAA6C,gBAAAF,EAAC,UAAA,EAAO,IAAIE,GAAQ,IAAIA,GAAQ,GAAGA,EAAA,CAAQ,GAU1GC,IAAgB,CAACC,MAA0C;AAC7D,QAAM;AAAA,IACF,OAAAC,IAAQpB;AAAA,IACR,OAAAqB,IAAQnB;AAAA,IACR,QAAAoB,IAASrB;AAAA,IACT,QAAAgB,IAASd;AAAA,IACT,MAAAO,IAAON;AAAA,IACP,WAAAmB,IAAY;AAAA,IACZ,UAAAjB;AAAA,IACA,GAAGkB;AAAA,EAAA,IACHL,GAEEM,IAAaC,EAAA,GAKbC,IAAoB;AAAA,IACtB,MAAAjB;AAAA,IACA,QAAAO;AAAA,IACA,UAAAX;AAAA,EAAA,GAGEsB,IAAUC,EAAK;AAAA,IACjB,CAACxB,GAAaG,CAAc;AAAA,IAC5B,CAACC,GAAQG,CAAU;AAAA,IACnB,CAACD,GAAUK,CAAY;AAAA,EAAA,CAC1B,EAAEW,CAAiB,GAEdG,IAAgBnB,EAASgB,CAAiB,IAAIV,IAAS,IAAIK,GAC3DS,IAAepB,EAASgB,CAAiB,IAAIG,IAAgBT;AAEnE,SACI,gBAAAN;AAAA,IAACiB;AAAA,IAAA;AAAA,MACG,iBAAgB;AAAA,MAChB,iBAAiBP,IAAa,YAAY;AAAA,MAC1C,OAAAL;AAAA,MACA,QAAQU;AAAA,MACR,OAAOC;AAAA,MACP,WAAW,iBAAiBR,CAAS,IAAIE,IAAa,uBAAuB,EAAE;AAAA,MAC9E,GAAGD;AAAA,MAEH,UAAAI;AAAA,IAAA;AAAA,EAAA;AAGb;AAEAV,EAAc,OAAOpB;AACrBoB,EAAc,SAASnB;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTabHeader.js","sources":["../../../src/components/dataTabs/DataTabHeader.tsx"],"sourcesContent":["import type React from 'react';\nimport { useState } from 'react';\nimport classNames from '
|
|
1
|
+
{"version":3,"file":"DataTabHeader.js","sources":["../../../src/components/dataTabs/DataTabHeader.tsx"],"sourcesContent":["import type React from 'react';\nimport { useState } from 'react';\n\nimport classNames from '../../utils/classNames';\n\nexport type DataTabHeaderProps = {\n isActive?: boolean;\n tabKey: string;\n title: React.ReactNode;\n onSelectTab?: (event: React.MouseEvent<HTMLLIElement>) => void;\n isFirstTab?: boolean;\n isLastTab?: boolean;\n tabFirstChildClassName?: string;\n tabLastChildClassName?: string;\n tabClassName?: string;\n tabHoverClassName?: string;\n tabActiveClassName?: string;\n arrowClassName?: string;\n className?: string;\n};\n\nconst DataTabHeader = (props: DataTabHeaderProps) => {\n const {\n tabKey,\n title,\n isActive,\n isFirstTab,\n isLastTab,\n onSelectTab,\n tabFirstChildClassName,\n tabLastChildClassName,\n tabClassName,\n tabHoverClassName,\n tabActiveClassName,\n arrowClassName,\n className,\n } = props;\n\n const [isHovering, setIsHovering] = useState(false);\n\n const tabClassNames = classNames(\n 'DataTab',\n 'tab',\n isFirstTab && tabFirstChildClassName,\n isLastTab && tabLastChildClassName,\n !isHovering && !isActive && tabClassName,\n isHovering && !isActive && tabHoverClassName,\n isActive && `active ${tabActiveClassName}`,\n !isActive && 'cursor-pointer',\n className && className\n );\n\n return (\n <li\n key={tabKey}\n className={tabClassNames}\n onClick={onSelectTab}\n data-tabkey={tabKey}\n onMouseEnter={() => setIsHovering(true)}\n onMouseLeave={() => setIsHovering(false)}\n >\n {title}\n <div className={`arrow ${arrowClassName} ${isActive ? 'in' : ''}`} />\n </li>\n );\n};\n\nexport default DataTabHeader;\n"],"names":["DataTabHeader","props","tabKey","title","isActive","isFirstTab","isLastTab","onSelectTab","tabFirstChildClassName","tabLastChildClassName","tabClassName","tabHoverClassName","tabActiveClassName","arrowClassName","className","isHovering","setIsHovering","useState","tabClassNames","classNames","jsxs","jsx"],"mappings":";;;AAqBA,MAAMA,IAAgB,CAACC,MAA8B;AACjD,QAAM;AAAA,IACF,QAAAC;AAAA,IACA,OAAAC;AAAA,IACA,UAAAC;AAAA,IACA,YAAAC;AAAA,IACA,WAAAC;AAAA,IACA,aAAAC;AAAA,IACA,wBAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,cAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,WAAAC;AAAA,EAAA,IACAb,GAEE,CAACc,GAAYC,CAAa,IAAIC,EAAS,EAAK,GAE5CC,IAAgBC;AAAA,IAClB;AAAA,IACA;AAAA,IACAd,KAAcG;AAAA,IACdF,KAAaG;AAAA,IACb,CAACM,KAAc,CAACX,KAAYM;AAAA,IAC5BK,KAAc,CAACX,KAAYO;AAAA,IAC3BP,KAAY,UAAUQ,CAAkB;AAAA,IACxC,CAACR,KAAY;AAAA,IACbU,KAAaA;AAAA,EAAA;AAGjB,SACI,gBAAAM;AAAA,IAAC;AAAA,IAAA;AAAA,MAEG,WAAWF;AAAA,MACX,SAASX;AAAA,MACT,eAAaL;AAAA,MACb,cAAc,MAAMc,EAAc,EAAI;AAAA,MACtC,cAAc,MAAMA,EAAc,EAAK;AAAA,MAEtC,UAAA;AAAA,QAAAb;AAAA,QACD,gBAAAkB,EAAC,SAAI,WAAW,SAASR,CAAc,IAAIT,IAAW,OAAO,EAAE,GAAA,CAAI;AAAA,MAAA;AAAA,IAAA;AAAA,IAR9DF;AAAA,EAAA;AAWjB;"}
|
|
@@ -33,6 +33,8 @@ export type DataTabsProps = {
|
|
|
33
33
|
disableTransition?: boolean;
|
|
34
34
|
/**
|
|
35
35
|
* Additional classes to be set on the arrow.
|
|
36
|
+
*
|
|
37
|
+
* @default 'bg-highlight-dark border-color-transparent'
|
|
36
38
|
*/
|
|
37
39
|
arrowClassName?: string;
|
|
38
40
|
/**
|
|
@@ -47,10 +49,14 @@ export type DataTabsProps = {
|
|
|
47
49
|
tabClassName?: string;
|
|
48
50
|
/**
|
|
49
51
|
* Utility hover classes to be set on the tab element.
|
|
52
|
+
*
|
|
53
|
+
* @default 'bg-highlight-decent text-color-darkest'
|
|
50
54
|
*/
|
|
51
55
|
tabHoverClassName?: string;
|
|
52
56
|
/**
|
|
53
57
|
* Utility active classes to be set on the tab element.
|
|
58
|
+
*
|
|
59
|
+
* @default 'bg-highlight-dark text-color-white'
|
|
54
60
|
*/
|
|
55
61
|
tabActiveClassName?: string;
|
|
56
62
|
/**
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs as j, jsx as n } from "react/jsx-runtime";
|
|
2
2
|
import r, { useState as m } from "react";
|
|
3
|
-
import E from "
|
|
4
|
-
import
|
|
3
|
+
import { AnimatePresence as E } from "motion/react";
|
|
4
|
+
import H from "../../utils/classNames.js";
|
|
5
5
|
import I from "./DataTabHeader.js";
|
|
6
6
|
const W = (i) => {
|
|
7
7
|
const [a] = i;
|
|
@@ -32,7 +32,7 @@ const W = (i) => {
|
|
|
32
32
|
a !== w && (a && D(a), x(a));
|
|
33
33
|
const k = (t) => {
|
|
34
34
|
C(t.currentTarget?.getAttribute("data-tabkey"));
|
|
35
|
-
}, S =
|
|
35
|
+
}, S = H(
|
|
36
36
|
"DataTabsContainer",
|
|
37
37
|
d && "DataTab-bordered",
|
|
38
38
|
p,
|
|
@@ -44,7 +44,7 @@ const W = (i) => {
|
|
|
44
44
|
disableTransition: l
|
|
45
45
|
}) : null);
|
|
46
46
|
const t = r.Children.toArray(s).filter((e) => e.props.tabKey === o).map((e) => r.cloneElement(e, { active: !0, disableTransition: l }));
|
|
47
|
-
return /* @__PURE__ */ n(
|
|
47
|
+
return /* @__PURE__ */ n(E, { initial: !1, mode: "wait", children: t });
|
|
48
48
|
};
|
|
49
49
|
return /* @__PURE__ */ j("div", { ...K, className: S, children: [
|
|
50
50
|
/* @__PURE__ */ n("div", { className: `DataTabsWrapper ${y}`, children: /* @__PURE__ */ n("ul", { className: "DataTabs", role: "tabList", children: r.Children.map(s, (t, e) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTabs.js","sources":["../../../src/components/dataTabs/DataTabs.tsx"],"sourcesContent":["import React, { type PropsWithChildren, useState } from 'react';\nimport
|
|
1
|
+
{"version":3,"file":"DataTabs.js","sources":["../../../src/components/dataTabs/DataTabs.tsx"],"sourcesContent":["import React, { type PropsWithChildren, useState } from 'react';\nimport { AnimatePresence } from 'motion/react';\n\nimport classNames from '../../utils/classNames';\nimport type { DataTabProps } from './DataTab';\nimport DataTabHeader from './DataTabHeader';\n\ntype DataTabElement = React.ReactElement<DataTabProps>;\n\nconst getFirstTabKey = (children: React.ReactNode): string => {\n const [firstItem] = children as DataTabElement[];\n return firstItem?.props.tabKey;\n};\n\nexport type DataTabsProps = {\n /**\n * Sets key and id.\n *\n * @default ''\n */\n activeKey?: string;\n\n /**\n * Whether the component should add a border.\n *\n * @default true\n */\n bordered?: boolean;\n\n /**\n * Additional classes to be set on the wrapper element.\n */\n className?: string;\n\n /**\n * Tab content that is used for all tabs.\n *\n * Using a common tab content will ignore any DataTab child. Additionally, there will be no transition when\n * switching tabs as it is a single tab content component.\n */\n commonTabContent?: React.ReactNode;\n\n /**\n * Transitions between tab contents are enabled by default. Set if you want to disable them.\n *\n * The Navigation tabs will still remain animated.\n *\n * @default false\n */\n disableTransition?: boolean;\n\n /**\n * Additional classes to be set on the arrow.\n *\n * @default 'bg-highlight-dark border-color-transparent'\n */\n arrowClassName?: string;\n\n /**\n * Called when a tab is being activated.\n *\n * @param tabKey Of the activated tab.\n */\n onSelectTab?: (tabKey: string) => void;\n\n /**\n * Additional classes to be set on the tab element.\n */\n tabClassName?: string;\n\n /**\n * Utility hover classes to be set on the tab element.\n *\n * @default 'bg-highlight-decent text-color-darkest'\n */\n tabHoverClassName?: string;\n\n /**\n * Utility active classes to be set on the tab element.\n *\n * @default 'bg-highlight-dark text-color-white'\n */\n tabActiveClassName?: string;\n\n /**\n * Utility first-child classes to be set on the tab element.\n */\n tabFirstChildClassName?: string;\n\n /**\n * Utility last-child classes to be set on the tab element.\n */\n tabLastChildClassName?: string;\n\n /**\n * Utility content classes to be set on the tab element.\n */\n tabContentClassName?: string;\n\n /**\n * Additional classes to be set on the tabs wrapper element.\n */\n tabsWrapperClassName?: string;\n\n /**\n * Whether the layout should be vertical.\n *\n * @default false\n */\n vertical?: boolean;\n};\n\nconst DataTabs = (props: PropsWithChildren<DataTabsProps>) => {\n const {\n activeKey = '',\n bordered = true,\n className: wrapperClassName,\n commonTabContent,\n disableTransition = false,\n arrowClassName = 'bg-highlight-dark border-color-transparent',\n onSelectTab = () => {},\n tabActiveClassName = 'bg-highlight-dark text-color-white',\n tabClassName = '',\n tabContentClassName = '',\n tabFirstChildClassName = '',\n tabHoverClassName = 'bg-highlight-decent text-color-darkest',\n tabLastChildClassName = '',\n tabsWrapperClassName = '',\n vertical = false,\n children,\n ...remainingProps\n } = props;\n\n const [internalActiveKey, setInternalActiveKey] = useState(\n activeKey || getFirstTabKey(React.Children.toArray(children))\n );\n\n // Update internal activeKey when props change\n const [previousActiveKey, setPreviousActiveKey] = useState(activeKey);\n if (activeKey !== previousActiveKey) {\n activeKey && setInternalActiveKey(activeKey);\n setPreviousActiveKey(activeKey);\n }\n\n const handleSelectTab = (event: React.MouseEvent<HTMLLIElement>) => {\n onSelectTab(event.currentTarget?.getAttribute('data-tabkey') as string);\n };\n\n const wrapperClassNames = classNames(\n 'DataTabsContainer',\n bordered && 'DataTab-bordered',\n wrapperClassName,\n vertical ? 'DataTabs-vertical' : 'DataTabs-horizontal'\n );\n\n const enrichChildren = () => {\n if (disableTransition) {\n return React.Children.map(children as DataTabElement[], child => {\n if (!child) {\n return null;\n }\n return React.cloneElement(child, {\n active: child.props.tabKey === internalActiveKey,\n disableTransition,\n });\n });\n }\n\n const enhancedChildren = (React.Children.toArray(children) as DataTabElement[])\n .filter(child => child.props.tabKey === internalActiveKey)\n .map(child => React.cloneElement(child, { active: true, disableTransition }));\n\n return (\n <AnimatePresence initial={false} mode='wait'>\n {enhancedChildren}\n </AnimatePresence>\n );\n };\n\n return (\n <div {...remainingProps} className={wrapperClassNames}>\n <div className={`DataTabsWrapper ${tabsWrapperClassName}`}>\n <ul className='DataTabs' role='tabList'>\n {React.Children.map(children as DataTabElement[], (child, index) => {\n if (!child) {\n return null;\n }\n\n const { tabKey, title, className } = child.props;\n\n return (\n <DataTabHeader\n isActive={tabKey === internalActiveKey}\n tabKey={tabKey}\n title={title}\n onSelectTab={handleSelectTab}\n isFirstTab={index === 0}\n isLastTab={!!((children as DataTabElement[])?.length - 1)}\n tabFirstChildClassName={tabFirstChildClassName}\n tabLastChildClassName={tabLastChildClassName}\n tabActiveClassName={tabActiveClassName}\n tabClassName={tabClassName}\n tabHoverClassName={tabHoverClassName}\n arrowClassName={arrowClassName}\n className={className}\n />\n );\n })}\n </ul>\n </div>\n <div className={`tab-content ${tabContentClassName}`} role='tabpanel'>\n {commonTabContent ? commonTabContent : enrichChildren()}\n </div>\n </div>\n );\n};\n\nexport default DataTabs;\n"],"names":["getFirstTabKey","children","firstItem","DataTabs","props","activeKey","bordered","wrapperClassName","commonTabContent","disableTransition","arrowClassName","onSelectTab","tabActiveClassName","tabClassName","tabContentClassName","tabFirstChildClassName","tabHoverClassName","tabLastChildClassName","tabsWrapperClassName","vertical","remainingProps","internalActiveKey","setInternalActiveKey","useState","React","previousActiveKey","setPreviousActiveKey","handleSelectTab","event","wrapperClassNames","classNames","enrichChildren","child","enhancedChildren","AnimatePresence","jsxs","jsx","index","tabKey","title","className","DataTabHeader"],"mappings":"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"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { jsx as C } from "react/jsx-runtime";
|
|
2
2
|
import { forwardRef as L, useState as N } from "react";
|
|
3
|
-
import O from "classnames";
|
|
4
3
|
import o from "react-datetime";
|
|
5
|
-
import { noop as
|
|
6
|
-
|
|
4
|
+
import { noop as O } from "es-toolkit/function";
|
|
5
|
+
import _ from "../../utils/classNames.js";
|
|
6
|
+
const A = o?.default ? o.default : o, k = "en-GB", x = 0, U = L((s, y) => {
|
|
7
7
|
const {
|
|
8
8
|
id: n,
|
|
9
9
|
dropup: c = !1,
|
|
10
10
|
alignRight: i = !1,
|
|
11
11
|
locale: l = k,
|
|
12
12
|
minWidth: p = x,
|
|
13
|
-
onChange: m =
|
|
13
|
+
onChange: m = O,
|
|
14
14
|
mandatory: f = !0,
|
|
15
15
|
dateValidation: r,
|
|
16
16
|
clearableInput: u = !1,
|
|
@@ -21,7 +21,7 @@ const _ = o?.default ? o.default : o, k = "en-GB", x = 0, U = L((s, y) => {
|
|
|
21
21
|
} = s, [g, P] = N(!1), E = (t) => r ? r(t) : typeof t == "object", I = (t) => {
|
|
22
22
|
const e = f ? E(t) : !0;
|
|
23
23
|
P(!e), m(t, e);
|
|
24
|
-
}, b =
|
|
24
|
+
}, b = _(
|
|
25
25
|
"DatePicker",
|
|
26
26
|
"form-group",
|
|
27
27
|
g && "has-error",
|
|
@@ -30,7 +30,7 @@ const _ = o?.default ? o.default : o, k = "en-GB", x = 0, U = L((s, y) => {
|
|
|
30
30
|
a && a
|
|
31
31
|
), j = { id: n, ...h };
|
|
32
32
|
return /* @__PURE__ */ C(
|
|
33
|
-
|
|
33
|
+
A,
|
|
34
34
|
{
|
|
35
35
|
...D,
|
|
36
36
|
locale: l,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePicker.js","sources":["../../../src/components/datepicker/DatePicker.tsx"],"sourcesContent":["import type React from 'react';\nimport { useState, forwardRef } from 'react';\nimport
|
|
1
|
+
{"version":3,"file":"DatePicker.js","sources":["../../../src/components/datepicker/DatePicker.tsx"],"sourcesContent":["import type React from 'react';\nimport { useState, forwardRef } from 'react';\nimport type { Moment } from 'moment';\nimport DatetimeImport, { type DatetimepickerProps } from 'react-datetime';\nimport { noop } from 'es-toolkit/function';\n\nimport classNames from '../../utils/classNames';\n\n// Fix: Handle ESM/CJS interop by unwrapping default if necessary\n// @ts-expect-error\nconst Datetime = DatetimeImport?.default ? DatetimeImport.default : DatetimeImport;\n\nconst DEFAULT_LOCALE = 'en-GB';\nconst DEFAULT_MIN_WIDTH = 0;\n\nexport type DatePickerProps = Omit<DatetimepickerProps, 'onChange' | 'initialValue'> & {\n /**\n * An id used for the internal input element.\n */\n id?: string;\n\n /**\n * The moment locale to be used for the date picker.\n * Make sure to import the respective moment locale files.\n *\n * @default 'en-GB'\n * @example import 'moment/dist/locale/de';\n */\n locale?: string;\n\n /**\n * Once the day has been selected, the date picker will be closed automatically.\n *\n * @default true\n */\n closeOnSelect?: boolean;\n\n /**\n * Default value of the DatePicker (date or moment).\n */\n initialValue?: Date | Moment;\n\n /**\n * Value of the DatePicker (date or moment). Use this only if you want to use\n * this component as a controlled component\n */\n value?: Date | string | Moment;\n\n /*\n * Defines the format for the date. It accepts any moment.js date format.\n * If true the date will be displayed using the defaults for the current locale.\n * If false the date picker is disabled and the component can be used as time picker.\n */\n dateFormat?: boolean | string;\n\n /*\n * Defines the format for the time. It accepts any moment.js time format.\n * If true the time will be displayed using the defaults for the current locale.\n * If false the time picker is disabled and the component can be used as date picker.\n */\n timeFormat?: boolean | string;\n\n /*\n * Defines additional attributes for the input element of the component.\n */\n inputProps?: React.HTMLProps<HTMLInputElement>;\n\n /**\n * Defines whether the dropdown opens upwards or not.\n *\n * @default false\n */\n dropup?: boolean;\n\n /**\n * Opens the picker right aligned.\n *\n * @default false\n */\n\n alignRight?: boolean;\n\n /**\n * Defines whether the clearableInput button is shown.\n *\n * @default false\n */\n clearableInput?: boolean;\n\n /**\n * Optional min-width value (without px). Since the DatePicker has a max-width of 100%\n * you can also set a high minWidth number to use 100% with of the parent element.\n * A value of \"0\" means no extra width is set and it becomes 100% width of the parent.\n *\n * @default 0\n */\n minWidth?: number;\n\n /**\n * Callback function when the value changes. Receives the new date (moment)\n * and a boolean (whether date is valid or not) as arguments.\n *\n * @param value\n * @param isValid\n * @returns\n */\n onChange?: (value: Moment | string, isValid: boolean) => void;\n\n /**\n * Defines whether the input shows an error when the date is invalid or cleared.\n *\n * @default true\n */\n mandatory?: boolean;\n\n /**\n * Overwrites the internal date validation function in case you need to customize it.\n *\n * @param date\n * @returns\n */\n dateValidation?: (date: Moment | string) => boolean;\n\n /**\n * Additional classes to be set on the DatePicker element.\n */\n className?: string;\n};\n\nconst DatePicker = forwardRef((props: DatePickerProps, _ref) => {\n const {\n id,\n dropup = false,\n alignRight = false,\n locale = DEFAULT_LOCALE,\n minWidth = DEFAULT_MIN_WIDTH,\n onChange = noop,\n mandatory = true,\n dateValidation,\n clearableInput = false,\n closeOnSelect = true,\n inputProps,\n className,\n ...remainingProp\n } = props;\n\n const [hasError, setHasError] = useState(false);\n\n const validateDate = (dateToValidate: Moment | string) => {\n // If the entered date complies with the defined dateFormat, the Datetime component\n // returns a moment object, otherwise the return value is a string.\n // Note, using a isValid() function from moment or the Date object itself will result in\n // different outcome in various browsers.\n // For instance `new Date('1')` or `moment('1')` are valid dates in Chrome where it defaults\n // to \"01/01/2001\" whereas in Firefox it is an invalid date.\n // The solution is to compare the entered value to the date format which is done by React Datetime.\n const isDateObject = typeof dateToValidate === 'object';\n\n return dateValidation ? dateValidation(dateToValidate) : isDateObject;\n };\n\n const handleChange = (date: Moment | string) => {\n const isValid = mandatory ? validateDate(date) : true;\n setHasError(!isValid);\n onChange(date, isValid);\n };\n\n const classes = classNames(\n 'DatePicker',\n 'form-group',\n hasError && 'has-error',\n dropup && 'dropup',\n alignRight && 'align-right',\n className && className\n );\n\n // This way we can expose the \"id\" as top level prop and not as part of the inputProps which\n // makes the use of the id much more convenient\n const enhancedInputProps = { id, ...inputProps };\n\n return (\n <Datetime\n // TODO: add support for setting ref to the input. Maybe add a \"inputRef\" prop to react-datetime\n // ref={ref}\n {...remainingProp}\n locale={locale}\n clearableInput={clearableInput}\n closeOnSelect={closeOnSelect}\n onChange={handleChange}\n minWidth={minWidth}\n inputProps={enhancedInputProps}\n className={classes}\n />\n );\n});\n\nexport default DatePicker;\n"],"names":["Datetime","DatetimeImport","DEFAULT_LOCALE","DEFAULT_MIN_WIDTH","DatePicker","forwardRef","props","_ref","id","dropup","alignRight","locale","minWidth","onChange","noop","mandatory","dateValidation","clearableInput","closeOnSelect","inputProps","className","remainingProp","hasError","setHasError","useState","validateDate","dateToValidate","handleChange","date","isValid","classes","classNames","enhancedInputProps","jsx"],"mappings":";;;;;AAUA,MAAMA,IAAWC,GAAgB,UAAUA,EAAe,UAAUA,GAE9DC,IAAiB,SACjBC,IAAoB,GAoHpBC,IAAaC,EAAW,CAACC,GAAwBC,MAAS;AAC5D,QAAM;AAAA,IACF,IAAAC;AAAA,IACA,QAAAC,IAAS;AAAA,IACT,YAAAC,IAAa;AAAA,IACb,QAAAC,IAAST;AAAA,IACT,UAAAU,IAAWT;AAAA,IACX,UAAAU,IAAWC;AAAA,IACX,WAAAC,IAAY;AAAA,IACZ,gBAAAC;AAAA,IACA,gBAAAC,IAAiB;AAAA,IACjB,eAAAC,IAAgB;AAAA,IAChB,YAAAC;AAAA,IACA,WAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,IACHf,GAEE,CAACgB,GAAUC,CAAW,IAAIC,EAAS,EAAK,GAExCC,IAAe,CAACC,MAUXV,IAAiBA,EAAeU,CAAc,IAFhC,OAAOA,KAAmB,UAK7CC,IAAe,CAACC,MAA0B;AAC5C,UAAMC,IAAUd,IAAYU,EAAaG,CAAI,IAAI;AACjD,IAAAL,EAAY,CAACM,CAAO,GACpBhB,EAASe,GAAMC,CAAO;AAAA,EAC1B,GAEMC,IAAUC;AAAA,IACZ;AAAA,IACA;AAAA,IACAT,KAAY;AAAA,IACZb,KAAU;AAAA,IACVC,KAAc;AAAA,IACdU,KAAaA;AAAA,EAAA,GAKXY,IAAqB,EAAE,IAAAxB,GAAI,GAAGW,EAAA;AAEpC,SACI,gBAAAc;AAAA,IAACjC;AAAA,IAAA;AAAA,MAGI,GAAGqB;AAAA,MACJ,QAAAV;AAAA,MACA,gBAAAM;AAAA,MACA,eAAAC;AAAA,MACA,UAAUS;AAAA,MACV,UAAAf;AAAA,MACA,YAAYoB;AAAA,MACZ,WAAWF;AAAA,IAAA;AAAA,EAAA;AAGvB,CAAC;"}
|
|
@@ -3,7 +3,7 @@ import t from "prop-types";
|
|
|
3
3
|
import b from "react-dom";
|
|
4
4
|
import j from "react-onclickoutside";
|
|
5
5
|
import o from "moment";
|
|
6
|
-
import p from "
|
|
6
|
+
import p from "../../utils/classNames.js";
|
|
7
7
|
import { isNil as R, isNull as T, isEqual as _ } from "es-toolkit/predicate";
|
|
8
8
|
import y from "./DatePicker.js";
|
|
9
9
|
import $ from "../../utils/getDropDirection.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateRangePicker.js","sources":["../../../src/components/datepicker/DateRangePicker.jsx"],"sourcesContent":["import { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport ReactDOM from 'react-dom';\nimport onClickOutside from 'react-onclickoutside';\nimport moment from 'moment';\nimport classNames from 'classnames';\nimport { isEqual, isNull, isNil } from 'es-toolkit/predicate';\n\nimport DatePicker from './DatePicker';\nimport getDropDirection from '../../utils/getDropDirection';\n\nconst Placeholder = ({ text }) => <span className='placeholder'>{text}</span>;\n\nconst propTypes = {\n startValue: PropTypes.object,\n endValue: PropTypes.object,\n defaultStartValue: PropTypes.object,\n defaultEndValue: PropTypes.object,\n minValue: PropTypes.object,\n maxValue: PropTypes.object,\n onRangeChange: PropTypes.func,\n locale: PropTypes.string,\n textDefault: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textToday: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textLastWeek: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textLastMonth: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textLastYear: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textCustom: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textApply: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textCancel: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textFrom: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textTo: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n className: PropTypes.string,\n dropdownClass: PropTypes.string,\n dropdownMenuClass: PropTypes.string,\n hasTimePicker: PropTypes.bool,\n customRangeOnly: PropTypes.bool,\n customPresets: PropTypes.arrayOf(\n PropTypes.shape({\n startValue: PropTypes.object.isRequired,\n endValue: PropTypes.object.isRequired,\n text: PropTypes.string.isRequired,\n onSelect: PropTypes.func,\n })\n ),\n dropup: PropTypes.bool,\n pullRight: PropTypes.bool,\n autoDropDirection: PropTypes.bool,\n clearable: PropTypes.bool,\n onClear: PropTypes.func,\n};\n\nconst defaultProps = {\n defaultStartValue: moment().startOf('day'),\n defaultEndValue: moment().endOf('day'),\n minValue: null,\n maxValue: null,\n locale: 'en-GB',\n textDefault: 'Select date range ...',\n textToday: 'Today',\n textLastWeek: 'Last week',\n textLastMonth: 'Last month',\n textCustom: 'Custom',\n textFrom: 'From',\n textTo: 'To',\n textApply: 'Apply',\n textCancel: 'Cancel',\n dropdownClass: '',\n dropdownMenuClass: '',\n hasTimePicker: false,\n customRangeOnly: false,\n customPresets: [\n {\n text: 'Today',\n startValue: moment().startOf('day'),\n endValue: moment().endOf('day'),\n },\n {\n text: 'Last week',\n startValue: moment().subtract(1, 'weeks').startOf('isoWeek'),\n endValue: moment().subtract(1, 'weeks').endOf('isoWeek'),\n },\n {\n text: 'Last Month',\n startValue: moment().subtract(1, 'months').startOf('month'),\n endValue: moment().subtract(1, 'months').endOf('month'),\n },\n ],\n onRangeChange: () => {\n // function when range changes\n },\n autoDropDirection: true,\n dropup: false,\n pullRight: false,\n clearable: false,\n onClear: () => undefined,\n};\n\nconst LOCAL_DATE_FORMAT = 'dd L LT';\nconst LOCAL_DATE_FORMAT_NO_TIME = 'dd L';\n\nconst DROPDOWN_WIDTH = 600;\n\n/**\n * Wrapper component for React-Datetime.\n *\n * @deprecated This will be removed from the UIKIT at some time.\n */\nclass DateRangePicker extends Component {\n constructor(props) {\n super(props);\n\n const customRangeStartValue = props.startValue ? props.startValue : props.defaultStartValue;\n const customRangeEndValue = props.endValue ? props.endValue : props.defaultEndValue;\n\n this.state = {\n internalStartValue: props.startValue,\n internalEndValue: props.endValue,\n isMounted: false,\n isCustomVisible: props.customRangeOnly,\n isDropdownOpen: false,\n customRangeStartValue: moment(customRangeStartValue), // default value for individual datepickers\n customRangeEndValue: moment(customRangeEndValue), // default value for individual datepickers\n isStartValid: true,\n isEndValid: true,\n dropdownToggleText: <Placeholder text={props.textDefault} />,\n dropup: props.dropup,\n pullRight: props.pullRight,\n };\n\n this.toggleDropdownOpen = this.toggleDropdownOpen.bind(this);\n this.handleCustomToggle = this.handleCustomToggle.bind(this);\n this.handleCustomApply = this.handleCustomApply.bind(this);\n this.onStartChange = this.onStartChange.bind(this);\n this.getValidStartDates = this.getValidStartDates.bind(this);\n this.onEndChange = this.onEndChange.bind(this);\n this.getValidEndDates = this.getValidEndDates.bind(this);\n this.handleResetInternalState = this.handleResetInternalState.bind(this);\n }\n\n componentDidMount() {\n const { startValue, endValue, locale } = this.props;\n if (!this.state.isMounted) {\n this.setState({\n isMounted: true,\n });\n }\n\n // initial mount value\n if (startValue && endValue) {\n this.update(startValue, endValue, locale);\n }\n }\n\n /**\n * Responsible for handling start/end values given from outside (controlled component context).\n * @param {object} nextProps - The next props.\n * @returns {undefined}\n */\n // eslint-disable-next-line camelcase\n UNSAFE_componentWillReceiveProps(nextProps) {\n const { startValue, endValue, textDefault, customRangeOnly, locale, defaultStartValue, defaultEndValue } =\n nextProps;\n\n const { internalStartValue, internalEndValue } = this.state;\n\n // handle reset:\n // reset condition 1 is for uncontrolled components,\n // making sure that when a time is selected, and then the locale changed, that the selection remains\n const resetCondition1 =\n isNil(startValue) && isNil(endValue) && isNil(internalStartValue) && isNil(internalEndValue);\n\n // reset condition 2 is for controlled components,\n // when a time is set / defined, and the controlling component wants a hard reset\n const resetCondition2 = isNull(startValue) && isNull(endValue);\n\n // reset to original state\n if (resetCondition1 || resetCondition2) {\n this.setState({\n internalStartValue: undefined,\n internalEndValue: undefined,\n customRangeStartValue: defaultStartValue,\n customRangeEndValue: defaultEndValue,\n dropdownToggleText: <Placeholder text={textDefault} />,\n isCustomVisible: customRangeOnly,\n isDropdownOpen: false,\n isStartValid: true,\n isEndValid: true,\n pullRight: nextProps.pullRight,\n dropup: nextProps.dropup,\n });\n } else if (startValue !== this.props.startValue || endValue !== this.props.endValue) {\n this.update(startValue, endValue, locale);\n } else {\n this.update(internalStartValue, internalEndValue, locale);\n }\n }\n\n /**\n * Converts start/end values to moments, makes them readable,\n * crafts a dropdownToggleText and updates state.\n * @param {object} startValue - the start date (date or moment).\n * @param {object} endValue - the start date (date or moment).\n * @param {object} locale - the locale to use.\n * @param {object} extras - additional state, which needs to update.\n * @param {object} callback - callback to be called, after state has changed.\n * @returns {undefined}\n */\n update(startValue, endValue, locale, extras, callback) {\n const { hasTimePicker } = this.props;\n const format = hasTimePicker ? LOCAL_DATE_FORMAT : LOCAL_DATE_FORMAT_NO_TIME;\n\n // necessary to set start to startOf / end day to endOf, when selecting \"without time\"\n const finalStartValue = hasTimePicker ? moment(startValue) : moment(startValue).startOf('day');\n const finalEndValue = hasTimePicker ? moment(endValue) : moment(endValue).endOf('day');\n\n // composition of dropdownToggleText\n const startValueText = `${finalStartValue.locale(locale).format(format)}`;\n const endValueText = `${finalEndValue.locale(locale).format(format)}`;\n const dropdownToggleText =\n startValueText === endValueText ? startValueText : `${startValueText} → ${endValueText}`;\n\n // set state, and call callback\n this.setState(\n {\n internalStartValue: finalStartValue,\n internalEndValue: finalEndValue,\n customRangeStartValue: finalStartValue,\n customRangeEndValue: finalEndValue,\n dropdownToggleText,\n startValueText,\n endValueText,\n isStartValid: true,\n isEndValid: !finalEndValue.isBefore(finalStartValue),\n ...extras,\n },\n () => {\n callback && callback(finalStartValue, finalEndValue);\n }\n );\n }\n\n handleResetInternalState(event) {\n if (event) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n const { textDefault, customRangeOnly, defaultStartValue, defaultEndValue, pullRight, dropup, onClear } =\n this.props;\n\n this.setState({\n internalStartValue: undefined,\n internalEndValue: undefined,\n customRangeStartValue: defaultStartValue,\n customRangeEndValue: defaultEndValue,\n dropdownToggleText: <Placeholder text={textDefault} />,\n isCustomVisible: customRangeOnly,\n isDropdownOpen: false,\n isStartValid: true,\n isEndValid: true,\n startValueText: null,\n endValueText: null,\n pullRight,\n dropup,\n });\n\n onClear();\n }\n\n /**\n * Gets called by wrapper component \"onClickOutside\".\n * Responsible for closing the dropdown when a click occured outside.\n * @returns {undefined}\n */\n handleClickOutside() {\n if (this.state.isMounted) {\n this.setState({\n isDropdownOpen: false,\n });\n }\n }\n\n /**\n * Toggles dropdown open status and visibility of custom range area.\n * @param {object} event - mouse event on toggle dropdown\n * @returns {undefined}\n */\n toggleDropdownOpen(event) {\n const toggleNode = ReactDOM.findDOMNode(this.refDropdownToggle);\n const menuNode = ReactDOM.findDOMNode(this.refDropdownMenu);\n\n const dropDirection =\n this.isAutoDropActive() && !this.state.isDropdownOpen ? getDropDirection(toggleNode, menuNode) : {};\n\n const left = event.currentTarget.getBoundingClientRect().left;\n\n this.setState(prevState => ({\n isDropdownOpen: !prevState.isDropdownOpen,\n isCustomVisible: this.props.customRangeOnly,\n ...dropDirection,\n pullRight: left + DROPDOWN_WIDTH > document.body.clientWidth,\n }));\n }\n\n isAutoDropActive() {\n return !(!this.props.autoDropDirection || this.props.dropup || this.props.pullRight);\n }\n\n /**\n * Only gets called on manual change of datePicker (user interaction).\n * Has influence the validity of the end date.\n *\n * Important to note that the start date is not limited,\n * whereas the end date is limited by the start date (see 'getValidEndDates').\n *\n * @param {object} startValue - the start date (date or moment).\n * @param {object} isValidDate - if the date is valid or not.\n * @returns {undefined}\n */\n onStartChange(startValue, isValidDate) {\n const newState = { isStartValid: false };\n const { hasTimePicker, minValue, maxValue } = this.props;\n const { customRangeEndValue } = this.state;\n\n if (moment.isMoment(startValue)) {\n // necessary to set start to startOf / end day to endOf, when selecting \"without time\"\n const finalStartValue = hasTimePicker ? startValue : moment(startValue).startOf('day');\n\n // check validity of input (min/max)\n const passesMin = minValue ? finalStartValue.isSameOrAfter(moment(minValue)) : true;\n const passesMax = maxValue ? finalStartValue.isSameOrBefore(moment(maxValue)) : true;\n const isValidInput = isValidDate && passesMin && passesMax;\n newState.isStartValid = isValidInput;\n if (isValidDate) {\n newState.customRangeStartValue = finalStartValue;\n newState.isEndValid = !customRangeEndValue.isBefore(finalStartValue);\n }\n }\n\n this.setState(newState);\n }\n\n /**\n * Only gets called on manual change of datePicker (user interaction)\n * @param {object} endValue - the start date (date or moment).\n * @param {object} isValidDate - if the date is valid or not.\n * @returns {undefined}\n */\n onEndChange(endValue, isValidDate) {\n const newState = { isEndValid: false };\n const { hasTimePicker, minValue, maxValue } = this.props;\n const { customRangeStartValue } = this.state;\n // let isValidInput = false;\n\n if (moment.isMoment(endValue)) {\n // necessary to set end of seconds and milliseconds for every end value\n const correctedEndValue = isValidDate ? endValue.endOf('minute') : endValue;\n\n // necessary to set start to startOf / end day to endOf, when selecting \"without time\"\n const finalEndValue = hasTimePicker ? correctedEndValue : moment(endValue).endOf('day');\n\n // check validity of input (min/max)\n const passesMin = minValue ? finalEndValue.isSameOrAfter(moment(minValue)) : true;\n const passesMax = maxValue ? finalEndValue.isSameOrBefore(moment(maxValue)) : true;\n const isValidInput = isValidDate && passesMin && passesMax && finalEndValue.isAfter(customRangeStartValue);\n newState.isEndValid = isValidInput;\n\n if (isValidDate) {\n newState.customRangeEndValue = finalEndValue;\n }\n }\n\n this.setState(newState);\n }\n\n /**\n * Callback method for DatePicker to limit selection in DatePicker.\n * @param {object} current - Current date in the loop.\n * @returns {undefined}\n */\n getValidStartDates(current) {\n const { minValue, maxValue } = this.props;\n const customRangeEndValue = moment(this.state.customRangeEndValue);\n\n if (current.isSame(customRangeEndValue, 'day')) {\n return true;\n }\n\n const passesMin = minValue ? current.isSameOrAfter(moment(minValue)) : true;\n const passesMax = maxValue ? current.isSameOrBefore(moment(maxValue)) : true;\n\n return passesMin && passesMax;\n }\n\n /**\n * Callback method for DatePicker to limit selection in DatePicker.\n * End date has to be after start date.\n * @param {object} current - Current date in the loop.\n * @returns {undefined}\n */\n getValidEndDates(current) {\n const { minValue, maxValue } = this.props;\n const customRangeStartValue = moment(this.state.customRangeStartValue);\n\n if (current.isSame(customRangeStartValue, 'day')) {\n return true;\n }\n\n const passesMin = minValue ? current.isSameOrAfter(moment(minValue)) : true;\n const passesMax = maxValue ? current.isSameOrBefore(moment(maxValue)) : true;\n const isAfterStart = current.isAfter(customRangeStartValue);\n\n return passesMin && passesMax && isAfterStart;\n }\n\n /**\n * Gets called when \"custom ...\" has been selected.\n * @returns {undefined}\n */\n handleCustomToggle() {\n this.setState(prevState => {\n return {\n isCustomVisible: !prevState.isCustomVisible,\n };\n });\n }\n\n handleCustomPresetSelect(preset) {\n if (typeof preset.onSelect === 'function') {\n preset.onSelect();\n }\n this.handleSelect(preset.startValue, preset.endValue);\n }\n\n /**\n * Gets called when a preset has been selected.\n * @param {object} startValue - the start date (date or moment).\n * @param {object} endValue - the start date (date or moment).\n * @returns {undefined}\n */\n handleSelect(startValue, endValue) {\n const { onRangeChange, locale } = this.props;\n\n const extras = { isDropdownOpen: false };\n this.update(startValue, endValue, locale, extras, onRangeChange);\n }\n\n /**\n * Gets called user clicks the apply button.\n * @returns {undefined}\n */\n handleCustomApply() {\n const { customRangeStartValue, customRangeEndValue, isStartValid, isEndValid } = this.state;\n const { onRangeChange, locale } = this.props;\n\n if (isStartValid && isEndValid) {\n const extras = { isDropdownOpen: false };\n this.update(customRangeStartValue, customRangeEndValue, locale, extras, onRangeChange);\n }\n }\n\n getDropdownToggle(dropdownToggleText) {\n const { children, clearable } = this.props;\n const { startValueText, endValueText } = this.state;\n\n const isClearable = clearable && dropdownToggleText.type !== Placeholder;\n\n const labelClassNames = classNames(isClearable && 'withClearButton');\n\n const isRenderCallback = children && typeof children === 'function';\n\n // Note: due to issues with nested events in Firefox (for toggle and inside the clear)\n // the toggle element must not be a <button> but a div.\n return (\n <div\n type='button'\n className='DateRangePickerToggle form-control dropdown-toggle text-left'\n aria-haspopup='true'\n aria-expanded='true'\n onClick={this.toggleDropdownOpen}\n ref={node => (this.refDropdownToggle = node)}\n >\n {isRenderCallback ? (\n this.props.children(startValueText, endValueText)\n ) : (\n <span className={labelClassNames}>{dropdownToggleText}</span>\n )}\n {isClearable && this.getClearButton()}\n <span className='caret' />\n </div>\n );\n }\n\n getClearButton() {\n return (\n <span className='clearButton' onClick={this.handleResetInternalState}>\n <span className='clearButtonIcon rioglyph rioglyph-remove-sign' />\n </span>\n );\n }\n\n getCustomPanelToggle(isCustomVisible, textCustom) {\n return (\n <li className={classNames('custom-panel-toggle', isCustomVisible && 'hidden')}>\n <a role='button' onClick={this.handleCustomToggle}>\n {textCustom} ...\n </a>\n </li>\n );\n }\n\n getCustomPanelButtons(isCustomVisible, isStartValid, isEndValid, textApply, textCancel) {\n return (\n <li className={classNames('custom-panel-buttons', 'margin-20', !isCustomVisible && 'hidden')}>\n <div className='btn-toolbar'>\n <button\n type='button'\n disabled={!isStartValid || !isEndValid}\n onClick={this.handleCustomApply}\n className='btn btn-primary pull-right'\n >\n {textApply}\n </button>\n <button type='button' onClick={this.toggleDropdownOpen} className='btn btn-default pull-right'>\n {textCancel}\n </button>\n </div>\n </li>\n );\n }\n\n // eslint-disable-next-line complexity\n render() {\n const {\n locale,\n textCustom,\n textApply,\n textCancel,\n textFrom,\n textTo,\n textToday,\n textLastWeek,\n textLastMonth,\n className,\n clearable,\n dropdownClass,\n dropdownMenuClass,\n customPresets,\n hasTimePicker,\n } = this.props;\n\n const {\n customRangeStartValue,\n customRangeEndValue,\n isStartValid,\n isEndValid,\n isCustomVisible,\n isDropdownOpen,\n dropdownToggleText,\n } = this.state;\n\n const pullRight = this.isAutoDropActive() ? this.state.pullRight : this.props.pullRight;\n const dropup = this.isAutoDropActive() ? this.state.dropup : this.props.dropup;\n\n if (customPresets && isEqual(customPresets, defaultProps.customPresets)) {\n // support backward compatibility to override default drop down text values\n customPresets[0].text = textToday;\n customPresets[1].text = textLastWeek;\n customPresets[2].text = textLastMonth;\n }\n\n const classes = classNames('DateRangePicker', className && className);\n\n const dropDownClassNames = classNames(\n 'select',\n 'dropdown',\n dropdownClass,\n isDropdownOpen && 'open',\n dropup && 'dropup'\n );\n\n return (\n <div className={classes}>\n <div className={dropDownClassNames}>\n {this.getDropdownToggle(dropdownToggleText, clearable)}\n <ul\n className={classNames('dropdown-menu', pullRight && 'pull-right', dropdownMenuClass)}\n ref={node => (this.refDropdownMenu = node)}\n >\n {customPresets.map((preset, i) => {\n return (\n <li\n key={`preset-${i}`}\n title={(preset.disabled && preset.disabledText) || null}\n className={classNames(preset.disabled && 'disabled')}\n >\n <a\n role='button'\n className={classNames(isCustomVisible && 'hidden')}\n onClick={\n !preset.disabled\n ? this.handleCustomPresetSelect.bind(this, preset)\n : undefined\n }\n >\n {preset.text}\n </a>\n </li>\n );\n })}\n <li role='separator' className={classNames('divider', isCustomVisible && 'hidden')} />\n {this.getCustomPanelToggle(isCustomVisible, textCustom)}\n <li className={classNames('custom-panel', !isCustomVisible && 'hidden')}>\n <div className='row'>\n <div className='col-sm-6'>\n <label>{textFrom}</label>\n <DatePicker\n locale={locale}\n open\n autoDropDirection={false}\n dateFormat\n timeFormat={hasTimePicker}\n initialValue={customRangeStartValue}\n onChange={this.onStartChange}\n closeOnSelect\n isValidDate={this.getValidStartDates}\n className={classNames('DatePicker', !isStartValid && 'has-error')}\n />\n </div>\n <div className='col-sm-6'>\n <label>{textTo}</label>\n <DatePicker\n locale={locale}\n open\n autoDropDirection={false}\n dateFormat\n timeFormat={hasTimePicker}\n initialValue={customRangeEndValue}\n onChange={this.onEndChange}\n closeOnSelect\n isValidDate={this.getValidEndDates}\n className={classNames('DatePicker', !isEndValid && 'has-error')}\n />\n </div>\n </div>\n </li>\n {this.getCustomPanelButtons(isCustomVisible, isStartValid, isEndValid, textApply, textCancel)}\n </ul>\n </div>\n </div>\n );\n }\n}\n\nDateRangePicker.propTypes = propTypes;\nDateRangePicker.defaultProps = defaultProps;\n\n/**\n * Wrapper component for React-Datetime.\n *\n * @deprecated This will be removed from the UIKIT at some time.\n */\nexport default onClickOutside(DateRangePicker);\nexport { DateRangePicker as DateRangePickerPure };\n"],"names":["Placeholder","text","propTypes","PropTypes","defaultProps","moment","LOCAL_DATE_FORMAT","LOCAL_DATE_FORMAT_NO_TIME","DROPDOWN_WIDTH","DateRangePicker","Component","props","customRangeStartValue","customRangeEndValue","startValue","endValue","locale","nextProps","textDefault","customRangeOnly","defaultStartValue","defaultEndValue","internalStartValue","internalEndValue","resetCondition1","isNil","resetCondition2","isNull","extras","callback","hasTimePicker","format","finalStartValue","finalEndValue","startValueText","endValueText","dropdownToggleText","event","pullRight","dropup","onClear","toggleNode","ReactDOM","menuNode","dropDirection","getDropDirection","left","prevState","isValidDate","newState","minValue","maxValue","passesMin","passesMax","isValidInput","correctedEndValue","current","isAfterStart","preset","onRangeChange","isStartValid","isEndValid","children","clearable","isClearable","labelClassNames","classNames","isRenderCallback","node","isCustomVisible","textCustom","textApply","textCancel","textFrom","textTo","textToday","textLastWeek","textLastMonth","className","dropdownClass","dropdownMenuClass","customPresets","isDropdownOpen","isEqual","classes","dropDownClassNames","i","DatePicker","DeprecatedDateRangePicker","onClickOutside"],"mappings":";;;;;;;;;AAWA,MAAMA,IAAc,CAAC,EAAE,MAAAC,EAAA,MAAW,sBAAA,cAAC,QAAA,EAAK,WAAU,cAAA,GAAeA,CAAK,GAEhEC,IAAY;AAAA,EACd,YAAYC,EAAU;AAAA,EACtB,UAAUA,EAAU;AAAA,EACpB,mBAAmBA,EAAU;AAAA,EAC7B,iBAAiBA,EAAU;AAAA,EAC3B,UAAUA,EAAU;AAAA,EACpB,UAAUA,EAAU;AAAA,EACpB,eAAeA,EAAU;AAAA,EACzB,QAAQA,EAAU;AAAA,EAClB,aAAaA,EAAU,UAAU,CAACA,EAAU,QAAQA,EAAU,IAAI,CAAC;AAAA,EACnE,WAAWA,EAAU,UAAU,CAACA,EAAU,QAAQA,EAAU,IAAI,CAAC;AAAA,EACjE,cAAcA,EAAU,UAAU,CAACA,EAAU,QAAQA,EAAU,IAAI,CAAC;AAAA,EACpE,eAAeA,EAAU,UAAU,CAACA,EAAU,QAAQA,EAAU,IAAI,CAAC;AAAA,EACrE,cAAcA,EAAU,UAAU,CAACA,EAAU,QAAQA,EAAU,IAAI,CAAC;AAAA,EACpE,YAAYA,EAAU,UAAU,CAACA,EAAU,QAAQA,EAAU,IAAI,CAAC;AAAA,EAClE,WAAWA,EAAU,UAAU,CAACA,EAAU,QAAQA,EAAU,IAAI,CAAC;AAAA,EACjE,YAAYA,EAAU,UAAU,CAACA,EAAU,QAAQA,EAAU,IAAI,CAAC;AAAA,EAClE,UAAUA,EAAU,UAAU,CAACA,EAAU,QAAQA,EAAU,IAAI,CAAC;AAAA,EAChE,QAAQA,EAAU,UAAU,CAACA,EAAU,QAAQA,EAAU,IAAI,CAAC;AAAA,EAC9D,WAAWA,EAAU;AAAA,EACrB,eAAeA,EAAU;AAAA,EACzB,mBAAmBA,EAAU;AAAA,EAC7B,eAAeA,EAAU;AAAA,EACzB,iBAAiBA,EAAU;AAAA,EAC3B,eAAeA,EAAU;AAAA,IACrBA,EAAU,MAAM;AAAA,MACZ,YAAYA,EAAU,OAAO;AAAA,MAC7B,UAAUA,EAAU,OAAO;AAAA,MAC3B,MAAMA,EAAU,OAAO;AAAA,MACvB,UAAUA,EAAU;AAAA,IAAA,CACvB;AAAA,EAAA;AAAA,EAEL,QAAQA,EAAU;AAAA,EAClB,WAAWA,EAAU;AAAA,EACrB,mBAAmBA,EAAU;AAAA,EAC7B,WAAWA,EAAU;AAAA,EACrB,SAASA,EAAU;AACvB,GAEMC,IAAe;AAAA,EACjB,mBAAmBC,EAAA,EAAS,QAAQ,KAAK;AAAA,EACzC,iBAAiBA,EAAA,EAAS,MAAM,KAAK;AAAA,EACrC,UAAU;AAAA,EACV,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,WAAW;AAAA,EACX,cAAc;AAAA,EACd,eAAe;AAAA,EACf,YAAY;AAAA,EACZ,UAAU;AAAA,EACV,QAAQ;AAAA,EACR,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,eAAe;AAAA,EACf,mBAAmB;AAAA,EACnB,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,eAAe;AAAA,IACX;AAAA,MACI,MAAM;AAAA,MACN,YAAYA,EAAA,EAAS,QAAQ,KAAK;AAAA,MAClC,UAAUA,IAAS,MAAM,KAAK;AAAA,IAAA;AAAA,IAElC;AAAA,MACI,MAAM;AAAA,MACN,YAAYA,IAAS,SAAS,GAAG,OAAO,EAAE,QAAQ,SAAS;AAAA,MAC3D,UAAUA,IAAS,SAAS,GAAG,OAAO,EAAE,MAAM,SAAS;AAAA,IAAA;AAAA,IAE3D;AAAA,MACI,MAAM;AAAA,MACN,YAAYA,IAAS,SAAS,GAAG,QAAQ,EAAE,QAAQ,OAAO;AAAA,MAC1D,UAAUA,IAAS,SAAS,GAAG,QAAQ,EAAE,MAAM,OAAO;AAAA,IAAA;AAAA,EAC1D;AAAA,EAEJ,eAAe,MAAM;AAAA,EAErB;AAAA,EACA,mBAAmB;AAAA,EACnB,QAAQ;AAAA,EACR,WAAW;AAAA,EACX,WAAW;AAAA,EACX,SAAS,MAAA;AAAA;AACb,GAEMC,IAAoB,WACpBC,IAA4B,QAE5BC,IAAiB;AAOvB,MAAMC,UAAwBC,EAAU;AAAA,EACpC,YAAYC,GAAO;AACf,UAAMA,CAAK;AAEX,UAAMC,IAAwBD,EAAM,aAAaA,EAAM,aAAaA,EAAM,mBACpEE,IAAsBF,EAAM,WAAWA,EAAM,WAAWA,EAAM;AAEpE,SAAK,QAAQ;AAAA,MACT,oBAAoBA,EAAM;AAAA,MAC1B,kBAAkBA,EAAM;AAAA,MACxB,WAAW;AAAA,MACX,iBAAiBA,EAAM;AAAA,MACvB,gBAAgB;AAAA,MAChB,uBAAuBN,EAAOO,CAAqB;AAAA;AAAA,MACnD,qBAAqBP,EAAOQ,CAAmB;AAAA;AAAA,MAC/C,cAAc;AAAA,MACd,YAAY;AAAA,MACZ,oBAAoB,sBAAA,cAACb,GAAA,EAAY,MAAMW,EAAM,aAAa;AAAA,MAC1D,QAAQA,EAAM;AAAA,MACd,WAAWA,EAAM;AAAA,IAAA,GAGrB,KAAK,qBAAqB,KAAK,mBAAmB,KAAK,IAAI,GAC3D,KAAK,qBAAqB,KAAK,mBAAmB,KAAK,IAAI,GAC3D,KAAK,oBAAoB,KAAK,kBAAkB,KAAK,IAAI,GACzD,KAAK,gBAAgB,KAAK,cAAc,KAAK,IAAI,GACjD,KAAK,qBAAqB,KAAK,mBAAmB,KAAK,IAAI,GAC3D,KAAK,cAAc,KAAK,YAAY,KAAK,IAAI,GAC7C,KAAK,mBAAmB,KAAK,iBAAiB,KAAK,IAAI,GACvD,KAAK,2BAA2B,KAAK,yBAAyB,KAAK,IAAI;AAAA,EAC3E;AAAA,EAEA,oBAAoB;AAChB,UAAM,EAAE,YAAAG,GAAY,UAAAC,GAAU,QAAAC,EAAA,IAAW,KAAK;AAC9C,IAAK,KAAK,MAAM,aACZ,KAAK,SAAS;AAAA,MACV,WAAW;AAAA,IAAA,CACd,GAIDF,KAAcC,KACd,KAAK,OAAOD,GAAYC,GAAUC,CAAM;AAAA,EAEhD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,iCAAiCC,GAAW;AACxC,UAAM,EAAE,YAAAH,GAAY,UAAAC,GAAU,aAAAG,GAAa,iBAAAC,GAAiB,QAAAH,GAAQ,mBAAAI,GAAmB,iBAAAC,MACnFJ,GAEE,EAAE,oBAAAK,GAAoB,kBAAAC,EAAA,IAAqB,KAAK,OAKhDC,IACFC,EAAMX,CAAU,KAAKW,EAAMV,CAAQ,KAAKU,EAAMH,CAAkB,KAAKG,EAAMF,CAAgB,GAIzFG,IAAkBC,EAAOb,CAAU,KAAKa,EAAOZ,CAAQ;AAG7D,IAAIS,KAAmBE,IACnB,KAAK,SAAS;AAAA,MACV,oBAAoB;AAAA,MACpB,kBAAkB;AAAA,MAClB,uBAAuBN;AAAA,MACvB,qBAAqBC;AAAA,MACrB,oBAAoB,sBAAA,cAACrB,GAAA,EAAY,MAAMkB,GAAa;AAAA,MACpD,iBAAiBC;AAAA,MACjB,gBAAgB;AAAA,MAChB,cAAc;AAAA,MACd,YAAY;AAAA,MACZ,WAAWF,EAAU;AAAA,MACrB,QAAQA,EAAU;AAAA,IAAA,CACrB,IACMH,MAAe,KAAK,MAAM,cAAcC,MAAa,KAAK,MAAM,WACvE,KAAK,OAAOD,GAAYC,GAAUC,CAAM,IAExC,KAAK,OAAOM,GAAoBC,GAAkBP,CAAM;AAAA,EAEhE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYA,OAAOF,GAAYC,GAAUC,GAAQY,GAAQC,GAAU;AACnD,UAAM,EAAE,eAAAC,MAAkB,KAAK,OACzBC,IAASD,IAAgBxB,IAAoBC,GAG7CyB,IAAkBF,IAAgBzB,EAAOS,CAAU,IAAIT,EAAOS,CAAU,EAAE,QAAQ,KAAK,GACvFmB,IAAgBH,IAAgBzB,EAAOU,CAAQ,IAAIV,EAAOU,CAAQ,EAAE,MAAM,KAAK,GAG/EmB,IAAiB,GAAGF,EAAgB,OAAOhB,CAAM,EAAE,OAAOe,CAAM,CAAC,IACjEI,IAAe,GAAGF,EAAc,OAAOjB,CAAM,EAAE,OAAOe,CAAM,CAAC,IAC7DK,IACFF,MAAmBC,IAAeD,IAAiB,GAAGA,CAAc,MAAMC,CAAY;AAG1F,SAAK;AAAA,MACD;AAAA,QACI,oBAAoBH;AAAA,QACpB,kBAAkBC;AAAA,QAClB,uBAAuBD;AAAA,QACvB,qBAAqBC;AAAA,QACrB,oBAAAG;AAAA,QACA,gBAAAF;AAAA,QACA,cAAAC;AAAA,QACA,cAAc;AAAA,QACd,YAAY,CAACF,EAAc,SAASD,CAAe;AAAA,QACnD,GAAGJ;AAAA,MAAA;AAAA,MAEP,MAAM;AACF,QAAAC,KAAYA,EAASG,GAAiBC,CAAa;AAAA,MACvD;AAAA,IAAA;AAAA,EAER;AAAA,EAEA,yBAAyBI,GAAO;AAC5B,IAAIA,MACAA,EAAM,eAAA,GACNA,EAAM,gBAAA;AAGV,UAAM,EAAE,aAAAnB,GAAa,iBAAAC,GAAiB,mBAAAC,GAAmB,iBAAAC,GAAiB,WAAAiB,GAAW,QAAAC,GAAQ,SAAAC,MACzF,KAAK;AAET,SAAK,SAAS;AAAA,MACV,oBAAoB;AAAA,MACpB,kBAAkB;AAAA,MAClB,uBAAuBpB;AAAA,MACvB,qBAAqBC;AAAA,MACrB,oBAAoB,sBAAA,cAACrB,GAAA,EAAY,MAAMkB,GAAa;AAAA,MACpD,iBAAiBC;AAAA,MACjB,gBAAgB;AAAA,MAChB,cAAc;AAAA,MACd,YAAY;AAAA,MACZ,gBAAgB;AAAA,MAChB,cAAc;AAAA,MACd,WAAAmB;AAAA,MACA,QAAAC;AAAA,IAAA,CACH,GAEDC,EAAA;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,qBAAqB;AACjB,IAAI,KAAK,MAAM,aACX,KAAK,SAAS;AAAA,MACV,gBAAgB;AAAA,IAAA,CACnB;AAAA,EAET;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,mBAAmBH,GAAO;AACtB,UAAMI,IAAaC,EAAS,YAAY,KAAK,iBAAiB,GACxDC,IAAWD,EAAS,YAAY,KAAK,eAAe,GAEpDE,IACF,KAAK,iBAAA,KAAsB,CAAC,KAAK,MAAM,iBAAiBC,EAAiBJ,GAAYE,CAAQ,IAAI,CAAA,GAE/FG,IAAOT,EAAM,cAAc,sBAAA,EAAwB;AAEzD,SAAK,SAAS,CAAAU,OAAc;AAAA,MACxB,gBAAgB,CAACA,EAAU;AAAA,MAC3B,iBAAiB,KAAK,MAAM;AAAA,MAC5B,GAAGH;AAAA,MACH,WAAWE,IAAOtC,IAAiB,SAAS,KAAK;AAAA,IAAA,EACnD;AAAA,EACN;AAAA,EAEA,mBAAmB;AACf,WAAO,EAAE,CAAC,KAAK,MAAM,qBAAqB,KAAK,MAAM,UAAU,KAAK,MAAM;AAAA,EAC9E;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaA,cAAcM,GAAYkC,GAAa;AACnC,UAAMC,IAAW,EAAE,cAAc,GAAA,GAC3B,EAAE,eAAAnB,GAAe,UAAAoB,GAAU,UAAAC,EAAA,IAAa,KAAK,OAC7C,EAAE,qBAAAtC,MAAwB,KAAK;AAErC,QAAIR,EAAO,SAASS,CAAU,GAAG;AAE7B,YAAMkB,IAAkBF,IAAgBhB,IAAaT,EAAOS,CAAU,EAAE,QAAQ,KAAK,GAG/EsC,IAAYF,IAAWlB,EAAgB,cAAc3B,EAAO6C,CAAQ,CAAC,IAAI,IACzEG,IAAYF,IAAWnB,EAAgB,eAAe3B,EAAO8C,CAAQ,CAAC,IAAI,IAC1EG,IAAeN,KAAeI,KAAaC;AACjD,MAAAJ,EAAS,eAAeK,GACpBN,MACAC,EAAS,wBAAwBjB,GACjCiB,EAAS,aAAa,CAACpC,EAAoB,SAASmB,CAAe;AAAA,IAE3E;AAEA,SAAK,SAASiB,CAAQ;AAAA,EAC1B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,YAAYlC,GAAUiC,GAAa;AAC/B,UAAMC,IAAW,EAAE,YAAY,GAAA,GACzB,EAAE,eAAAnB,GAAe,UAAAoB,GAAU,UAAAC,EAAA,IAAa,KAAK,OAC7C,EAAE,uBAAAvC,MAA0B,KAAK;AAGvC,QAAIP,EAAO,SAASU,CAAQ,GAAG;AAE3B,YAAMwC,IAAoBP,IAAcjC,EAAS,MAAM,QAAQ,IAAIA,GAG7DkB,IAAgBH,IAAgByB,IAAoBlD,EAAOU,CAAQ,EAAE,MAAM,KAAK,GAGhFqC,IAAYF,IAAWjB,EAAc,cAAc5B,EAAO6C,CAAQ,CAAC,IAAI,IACvEG,IAAYF,IAAWlB,EAAc,eAAe5B,EAAO8C,CAAQ,CAAC,IAAI,IACxEG,IAAeN,KAAeI,KAAaC,KAAapB,EAAc,QAAQrB,CAAqB;AACzG,MAAAqC,EAAS,aAAaK,GAElBN,MACAC,EAAS,sBAAsBhB;AAAA,IAEvC;AAEA,SAAK,SAASgB,CAAQ;AAAA,EAC1B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,mBAAmBO,GAAS;AACxB,UAAM,EAAE,UAAAN,GAAU,UAAAC,EAAA,IAAa,KAAK,OAC9BtC,IAAsBR,EAAO,KAAK,MAAM,mBAAmB;AAEjE,QAAImD,EAAQ,OAAO3C,GAAqB,KAAK;AACzC,aAAO;AAGX,UAAMuC,IAAYF,IAAWM,EAAQ,cAAcnD,EAAO6C,CAAQ,CAAC,IAAI,IACjEG,IAAYF,IAAWK,EAAQ,eAAenD,EAAO8C,CAAQ,CAAC,IAAI;AAExE,WAAOC,KAAaC;AAAA,EACxB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,iBAAiBG,GAAS;AACtB,UAAM,EAAE,UAAAN,GAAU,UAAAC,EAAA,IAAa,KAAK,OAC9BvC,IAAwBP,EAAO,KAAK,MAAM,qBAAqB;AAErE,QAAImD,EAAQ,OAAO5C,GAAuB,KAAK;AAC3C,aAAO;AAGX,UAAMwC,IAAYF,IAAWM,EAAQ,cAAcnD,EAAO6C,CAAQ,CAAC,IAAI,IACjEG,IAAYF,IAAWK,EAAQ,eAAenD,EAAO8C,CAAQ,CAAC,IAAI,IAClEM,IAAeD,EAAQ,QAAQ5C,CAAqB;AAE1D,WAAOwC,KAAaC,KAAaI;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,qBAAqB;AACjB,SAAK,SAAS,CAAAV,OACH;AAAA,MACH,iBAAiB,CAACA,EAAU;AAAA,IAAA,EAEnC;AAAA,EACL;AAAA,EAEA,yBAAyBW,GAAQ;AAC7B,IAAI,OAAOA,EAAO,YAAa,cAC3BA,EAAO,SAAA,GAEX,KAAK,aAAaA,EAAO,YAAYA,EAAO,QAAQ;AAAA,EACxD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,aAAa5C,GAAYC,GAAU;AAC/B,UAAM,EAAE,eAAA4C,GAAe,QAAA3C,EAAA,IAAW,KAAK,OAEjCY,IAAS,EAAE,gBAAgB,GAAA;AACjC,SAAK,OAAOd,GAAYC,GAAUC,GAAQY,GAAQ+B,CAAa;AAAA,EACnE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,oBAAoB;AAChB,UAAM,EAAE,uBAAA/C,GAAuB,qBAAAC,GAAqB,cAAA+C,GAAc,YAAAC,EAAA,IAAe,KAAK,OAChF,EAAE,eAAAF,GAAe,QAAA3C,EAAA,IAAW,KAAK;AAEvC,QAAI4C,KAAgBC,GAAY;AAC5B,YAAMjC,IAAS,EAAE,gBAAgB,GAAA;AACjC,WAAK,OAAOhB,GAAuBC,GAAqBG,GAAQY,GAAQ+B,CAAa;AAAA,IACzF;AAAA,EACJ;AAAA,EAEA,kBAAkBvB,GAAoB;AAClC,UAAM,EAAE,UAAA0B,GAAU,WAAAC,EAAA,IAAc,KAAK,OAC/B,EAAE,gBAAA7B,GAAgB,cAAAC,EAAA,IAAiB,KAAK,OAExC6B,IAAcD,KAAa3B,EAAmB,SAASpC,GAEvDiE,IAAkBC,EAAWF,KAAe,iBAAiB,GAE7DG,IAAmBL,KAAY,OAAOA,KAAa;AAIzD,WACI,sBAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,MAAK;AAAA,QACL,WAAU;AAAA,QACV,iBAAc;AAAA,QACd,iBAAc;AAAA,QACd,SAAS,KAAK;AAAA,QACd,KAAK,CAAAM,MAAS,KAAK,oBAAoBA;AAAA,MAAA;AAAA,MAEtCD,IACG,KAAK,MAAM,SAASjC,GAAgBC,CAAY,IAEhD,sBAAA,cAAC,QAAA,EAAK,WAAW8B,EAAA,GAAkB7B,CAAmB;AAAA,MAEzD4B,KAAe,KAAK,eAAA;AAAA,MACrB,sBAAA,cAAC,QAAA,EAAK,WAAU,QAAA,CAAQ;AAAA,IAAA;AAAA,EAGpC;AAAA,EAEA,iBAAiB;AACb,WACI,sBAAA,cAAC,QAAA,EAAK,WAAU,eAAc,SAAS,KAAK,yBAAA,GACxC,sBAAA,cAAC,QAAA,EAAK,WAAU,gDAAA,CAAgD,CACpE;AAAA,EAER;AAAA,EAEA,qBAAqBK,GAAiBC,GAAY;AAC9C,+CACK,MAAA,EAAG,WAAWJ,EAAW,uBAAuBG,KAAmB,QAAQ,KACxE,sBAAA,cAAC,KAAA,EAAE,MAAK,UAAS,SAAS,KAAK,mBAAA,GAC1BC,GAAW,MAChB,CACJ;AAAA,EAER;AAAA,EAEA,sBAAsBD,GAAiBT,GAAcC,GAAYU,GAAWC,GAAY;AACpF,WACI,sBAAA,cAAC,MAAA,EAAG,WAAWN,EAAW,wBAAwB,aAAa,CAACG,KAAmB,QAAQ,EAAA,GACvF,sBAAA,cAAC,OAAA,EAAI,WAAU,iBACX,sBAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,MAAK;AAAA,QACL,UAAU,CAACT,KAAgB,CAACC;AAAA,QAC5B,SAAS,KAAK;AAAA,QACd,WAAU;AAAA,MAAA;AAAA,MAETU;AAAA,IAAA,GAEL,sBAAA,cAAC,UAAA,EAAO,MAAK,UAAS,SAAS,KAAK,oBAAoB,WAAU,6BAAA,GAC7DC,CACL,CACJ,CACJ;AAAA,EAER;AAAA;AAAA,EAGA,SAAS;AACL,UAAM;AAAA,MACF,QAAAxD;AAAA,MACA,YAAAsD;AAAA,MACA,WAAAC;AAAA,MACA,YAAAC;AAAA,MACA,UAAAC;AAAA,MACA,QAAAC;AAAA,MACA,WAAAC;AAAA,MACA,cAAAC;AAAA,MACA,eAAAC;AAAA,MACA,WAAAC;AAAA,MACA,WAAAf;AAAA,MACA,eAAAgB;AAAA,MACA,mBAAAC;AAAA,MACA,eAAAC;AAAA,MACA,eAAAnD;AAAA,IAAA,IACA,KAAK,OAEH;AAAA,MACF,uBAAAlB;AAAA,MACA,qBAAAC;AAAA,MACA,cAAA+C;AAAA,MACA,YAAAC;AAAA,MACA,iBAAAQ;AAAA,MACA,gBAAAa;AAAA,MACA,oBAAA9C;AAAA,IAAA,IACA,KAAK,OAEHE,IAAY,KAAK,qBAAqB,KAAK,MAAM,YAAY,KAAK,MAAM,WACxEC,IAAS,KAAK,qBAAqB,KAAK,MAAM,SAAS,KAAK,MAAM;AAExE,IAAI0C,KAAiBE,EAAQF,GAAe7E,EAAa,aAAa,MAElE6E,EAAc,CAAC,EAAE,OAAON,GACxBM,EAAc,CAAC,EAAE,OAAOL,GACxBK,EAAc,CAAC,EAAE,OAAOJ;AAG5B,UAAMO,IAAUlB,EAAW,mBAAmBY,KAAaA,CAAS,GAE9DO,IAAqBnB;AAAA,MACvB;AAAA,MACA;AAAA,MACAa;AAAA,MACAG,KAAkB;AAAA,MAClB3C,KAAU;AAAA,IAAA;AAGd,WACI,sBAAA,cAAC,OAAA,EAAI,WAAW6C,EAAA,GACZ,sBAAA,cAAC,OAAA,EAAI,WAAWC,EAAA,GACX,KAAK,kBAAkBjD,GAAoB2B,CAAS,GACrD,sBAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAWG,EAAW,iBAAiB5B,KAAa,cAAc0C,CAAiB;AAAA,QACnF,KAAK,CAAAZ,MAAS,KAAK,kBAAkBA;AAAA,MAAA;AAAA,MAEpCa,EAAc,IAAI,CAACvB,GAAQ4B,MAEpB,sBAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,KAAK,UAAUA,CAAC;AAAA,UAChB,OAAQ5B,EAAO,YAAYA,EAAO,gBAAiB;AAAA,UACnD,WAAWQ,EAAWR,EAAO,YAAY,UAAU;AAAA,QAAA;AAAA,QAEnD,sBAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACG,MAAK;AAAA,YACL,WAAWQ,EAAWG,KAAmB,QAAQ;AAAA,YACjD,SACKX,EAAO,WAEF,SADA,KAAK,yBAAyB,KAAK,MAAMA,CAAM;AAAA,UAC/C;AAAA,UAGTA,EAAO;AAAA,QAAA;AAAA,MACZ,CAGX;AAAA,MACD,sBAAA,cAAC,QAAG,MAAK,aAAY,WAAWQ,EAAW,WAAWG,KAAmB,QAAQ,EAAA,CAAG;AAAA,MACnF,KAAK,qBAAqBA,GAAiBC,CAAU;AAAA,MACtD,sBAAA,cAAC,QAAG,WAAWJ,EAAW,gBAAgB,CAACG,KAAmB,QAAQ,EAAA,GAClE,sBAAA,cAAC,SAAI,WAAU,MAAA,uCACV,OAAA,EAAI,WAAU,cACX,sBAAA,cAAC,SAAA,MAAOI,CAAS,GACjB,sBAAA;AAAA,QAACc;AAAA,QAAA;AAAA,UACG,QAAAvE;AAAA,UACA,MAAI;AAAA,UACJ,mBAAmB;AAAA,UACnB,YAAU;AAAA,UACV,YAAYc;AAAA,UACZ,cAAclB;AAAA,UACd,UAAU,KAAK;AAAA,UACf,eAAa;AAAA,UACb,aAAa,KAAK;AAAA,UAClB,WAAWsD,EAAW,cAAc,CAACN,KAAgB,WAAW;AAAA,QAAA;AAAA,MAAA,CAExE,GACA,sBAAA,cAAC,OAAA,EAAI,WAAU,WAAA,GACX,sBAAA,cAAC,SAAA,MAAOc,CAAO,GACf,sBAAA;AAAA,QAACa;AAAA,QAAA;AAAA,UACG,QAAAvE;AAAA,UACA,MAAI;AAAA,UACJ,mBAAmB;AAAA,UACnB,YAAU;AAAA,UACV,YAAYc;AAAA,UACZ,cAAcjB;AAAA,UACd,UAAU,KAAK;AAAA,UACf,eAAa;AAAA,UACb,aAAa,KAAK;AAAA,UAClB,WAAWqD,EAAW,cAAc,CAACL,KAAc,WAAW;AAAA,QAAA;AAAA,MAAA,CAEtE,CACJ,CACJ;AAAA,MACC,KAAK,sBAAsBQ,GAAiBT,GAAcC,GAAYU,GAAWC,CAAU;AAAA,IAAA,CAEpG,CACJ;AAAA,EAER;AACJ;AAEA/D,EAAgB,YAAYP;AAC5BO,EAAgB,eAAeL;AAO/B,MAAAoF,KAAeC,EAAehF,CAAe;"}
|
|
1
|
+
{"version":3,"file":"DateRangePicker.js","sources":["../../../src/components/datepicker/DateRangePicker.jsx"],"sourcesContent":["import { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport ReactDOM from 'react-dom';\nimport onClickOutside from 'react-onclickoutside';\nimport moment from 'moment';\nimport classNames from '../../utils/classNames';\nimport { isEqual, isNull, isNil } from 'es-toolkit/predicate';\n\nimport DatePicker from './DatePicker';\nimport getDropDirection from '../../utils/getDropDirection';\n\nconst Placeholder = ({ text }) => <span className='placeholder'>{text}</span>;\n\nconst propTypes = {\n startValue: PropTypes.object,\n endValue: PropTypes.object,\n defaultStartValue: PropTypes.object,\n defaultEndValue: PropTypes.object,\n minValue: PropTypes.object,\n maxValue: PropTypes.object,\n onRangeChange: PropTypes.func,\n locale: PropTypes.string,\n textDefault: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textToday: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textLastWeek: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textLastMonth: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textLastYear: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textCustom: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textApply: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textCancel: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textFrom: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n textTo: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n className: PropTypes.string,\n dropdownClass: PropTypes.string,\n dropdownMenuClass: PropTypes.string,\n hasTimePicker: PropTypes.bool,\n customRangeOnly: PropTypes.bool,\n customPresets: PropTypes.arrayOf(\n PropTypes.shape({\n startValue: PropTypes.object.isRequired,\n endValue: PropTypes.object.isRequired,\n text: PropTypes.string.isRequired,\n onSelect: PropTypes.func,\n })\n ),\n dropup: PropTypes.bool,\n pullRight: PropTypes.bool,\n autoDropDirection: PropTypes.bool,\n clearable: PropTypes.bool,\n onClear: PropTypes.func,\n};\n\nconst defaultProps = {\n defaultStartValue: moment().startOf('day'),\n defaultEndValue: moment().endOf('day'),\n minValue: null,\n maxValue: null,\n locale: 'en-GB',\n textDefault: 'Select date range ...',\n textToday: 'Today',\n textLastWeek: 'Last week',\n textLastMonth: 'Last month',\n textCustom: 'Custom',\n textFrom: 'From',\n textTo: 'To',\n textApply: 'Apply',\n textCancel: 'Cancel',\n dropdownClass: '',\n dropdownMenuClass: '',\n hasTimePicker: false,\n customRangeOnly: false,\n customPresets: [\n {\n text: 'Today',\n startValue: moment().startOf('day'),\n endValue: moment().endOf('day'),\n },\n {\n text: 'Last week',\n startValue: moment().subtract(1, 'weeks').startOf('isoWeek'),\n endValue: moment().subtract(1, 'weeks').endOf('isoWeek'),\n },\n {\n text: 'Last Month',\n startValue: moment().subtract(1, 'months').startOf('month'),\n endValue: moment().subtract(1, 'months').endOf('month'),\n },\n ],\n onRangeChange: () => {\n // function when range changes\n },\n autoDropDirection: true,\n dropup: false,\n pullRight: false,\n clearable: false,\n onClear: () => undefined,\n};\n\nconst LOCAL_DATE_FORMAT = 'dd L LT';\nconst LOCAL_DATE_FORMAT_NO_TIME = 'dd L';\n\nconst DROPDOWN_WIDTH = 600;\n\n/**\n * Wrapper component for React-Datetime.\n *\n * @deprecated This will be removed from the UIKIT at some time.\n */\nclass DateRangePicker extends Component {\n constructor(props) {\n super(props);\n\n const customRangeStartValue = props.startValue ? props.startValue : props.defaultStartValue;\n const customRangeEndValue = props.endValue ? props.endValue : props.defaultEndValue;\n\n this.state = {\n internalStartValue: props.startValue,\n internalEndValue: props.endValue,\n isMounted: false,\n isCustomVisible: props.customRangeOnly,\n isDropdownOpen: false,\n customRangeStartValue: moment(customRangeStartValue), // default value for individual datepickers\n customRangeEndValue: moment(customRangeEndValue), // default value for individual datepickers\n isStartValid: true,\n isEndValid: true,\n dropdownToggleText: <Placeholder text={props.textDefault} />,\n dropup: props.dropup,\n pullRight: props.pullRight,\n };\n\n this.toggleDropdownOpen = this.toggleDropdownOpen.bind(this);\n this.handleCustomToggle = this.handleCustomToggle.bind(this);\n this.handleCustomApply = this.handleCustomApply.bind(this);\n this.onStartChange = this.onStartChange.bind(this);\n this.getValidStartDates = this.getValidStartDates.bind(this);\n this.onEndChange = this.onEndChange.bind(this);\n this.getValidEndDates = this.getValidEndDates.bind(this);\n this.handleResetInternalState = this.handleResetInternalState.bind(this);\n }\n\n componentDidMount() {\n const { startValue, endValue, locale } = this.props;\n if (!this.state.isMounted) {\n this.setState({\n isMounted: true,\n });\n }\n\n // initial mount value\n if (startValue && endValue) {\n this.update(startValue, endValue, locale);\n }\n }\n\n /**\n * Responsible for handling start/end values given from outside (controlled component context).\n * @param {object} nextProps - The next props.\n * @returns {undefined}\n */\n // eslint-disable-next-line camelcase\n UNSAFE_componentWillReceiveProps(nextProps) {\n const { startValue, endValue, textDefault, customRangeOnly, locale, defaultStartValue, defaultEndValue } =\n nextProps;\n\n const { internalStartValue, internalEndValue } = this.state;\n\n // handle reset:\n // reset condition 1 is for uncontrolled components,\n // making sure that when a time is selected, and then the locale changed, that the selection remains\n const resetCondition1 =\n isNil(startValue) && isNil(endValue) && isNil(internalStartValue) && isNil(internalEndValue);\n\n // reset condition 2 is for controlled components,\n // when a time is set / defined, and the controlling component wants a hard reset\n const resetCondition2 = isNull(startValue) && isNull(endValue);\n\n // reset to original state\n if (resetCondition1 || resetCondition2) {\n this.setState({\n internalStartValue: undefined,\n internalEndValue: undefined,\n customRangeStartValue: defaultStartValue,\n customRangeEndValue: defaultEndValue,\n dropdownToggleText: <Placeholder text={textDefault} />,\n isCustomVisible: customRangeOnly,\n isDropdownOpen: false,\n isStartValid: true,\n isEndValid: true,\n pullRight: nextProps.pullRight,\n dropup: nextProps.dropup,\n });\n } else if (startValue !== this.props.startValue || endValue !== this.props.endValue) {\n this.update(startValue, endValue, locale);\n } else {\n this.update(internalStartValue, internalEndValue, locale);\n }\n }\n\n /**\n * Converts start/end values to moments, makes them readable,\n * crafts a dropdownToggleText and updates state.\n * @param {object} startValue - the start date (date or moment).\n * @param {object} endValue - the start date (date or moment).\n * @param {object} locale - the locale to use.\n * @param {object} extras - additional state, which needs to update.\n * @param {object} callback - callback to be called, after state has changed.\n * @returns {undefined}\n */\n update(startValue, endValue, locale, extras, callback) {\n const { hasTimePicker } = this.props;\n const format = hasTimePicker ? LOCAL_DATE_FORMAT : LOCAL_DATE_FORMAT_NO_TIME;\n\n // necessary to set start to startOf / end day to endOf, when selecting \"without time\"\n const finalStartValue = hasTimePicker ? moment(startValue) : moment(startValue).startOf('day');\n const finalEndValue = hasTimePicker ? moment(endValue) : moment(endValue).endOf('day');\n\n // composition of dropdownToggleText\n const startValueText = `${finalStartValue.locale(locale).format(format)}`;\n const endValueText = `${finalEndValue.locale(locale).format(format)}`;\n const dropdownToggleText =\n startValueText === endValueText ? startValueText : `${startValueText} → ${endValueText}`;\n\n // set state, and call callback\n this.setState(\n {\n internalStartValue: finalStartValue,\n internalEndValue: finalEndValue,\n customRangeStartValue: finalStartValue,\n customRangeEndValue: finalEndValue,\n dropdownToggleText,\n startValueText,\n endValueText,\n isStartValid: true,\n isEndValid: !finalEndValue.isBefore(finalStartValue),\n ...extras,\n },\n () => {\n callback && callback(finalStartValue, finalEndValue);\n }\n );\n }\n\n handleResetInternalState(event) {\n if (event) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n const { textDefault, customRangeOnly, defaultStartValue, defaultEndValue, pullRight, dropup, onClear } =\n this.props;\n\n this.setState({\n internalStartValue: undefined,\n internalEndValue: undefined,\n customRangeStartValue: defaultStartValue,\n customRangeEndValue: defaultEndValue,\n dropdownToggleText: <Placeholder text={textDefault} />,\n isCustomVisible: customRangeOnly,\n isDropdownOpen: false,\n isStartValid: true,\n isEndValid: true,\n startValueText: null,\n endValueText: null,\n pullRight,\n dropup,\n });\n\n onClear();\n }\n\n /**\n * Gets called by wrapper component \"onClickOutside\".\n * Responsible for closing the dropdown when a click occured outside.\n * @returns {undefined}\n */\n handleClickOutside() {\n if (this.state.isMounted) {\n this.setState({\n isDropdownOpen: false,\n });\n }\n }\n\n /**\n * Toggles dropdown open status and visibility of custom range area.\n * @param {object} event - mouse event on toggle dropdown\n * @returns {undefined}\n */\n toggleDropdownOpen(event) {\n const toggleNode = ReactDOM.findDOMNode(this.refDropdownToggle);\n const menuNode = ReactDOM.findDOMNode(this.refDropdownMenu);\n\n const dropDirection =\n this.isAutoDropActive() && !this.state.isDropdownOpen ? getDropDirection(toggleNode, menuNode) : {};\n\n const left = event.currentTarget.getBoundingClientRect().left;\n\n this.setState(prevState => ({\n isDropdownOpen: !prevState.isDropdownOpen,\n isCustomVisible: this.props.customRangeOnly,\n ...dropDirection,\n pullRight: left + DROPDOWN_WIDTH > document.body.clientWidth,\n }));\n }\n\n isAutoDropActive() {\n return !(!this.props.autoDropDirection || this.props.dropup || this.props.pullRight);\n }\n\n /**\n * Only gets called on manual change of datePicker (user interaction).\n * Has influence the validity of the end date.\n *\n * Important to note that the start date is not limited,\n * whereas the end date is limited by the start date (see 'getValidEndDates').\n *\n * @param {object} startValue - the start date (date or moment).\n * @param {object} isValidDate - if the date is valid or not.\n * @returns {undefined}\n */\n onStartChange(startValue, isValidDate) {\n const newState = { isStartValid: false };\n const { hasTimePicker, minValue, maxValue } = this.props;\n const { customRangeEndValue } = this.state;\n\n if (moment.isMoment(startValue)) {\n // necessary to set start to startOf / end day to endOf, when selecting \"without time\"\n const finalStartValue = hasTimePicker ? startValue : moment(startValue).startOf('day');\n\n // check validity of input (min/max)\n const passesMin = minValue ? finalStartValue.isSameOrAfter(moment(minValue)) : true;\n const passesMax = maxValue ? finalStartValue.isSameOrBefore(moment(maxValue)) : true;\n const isValidInput = isValidDate && passesMin && passesMax;\n newState.isStartValid = isValidInput;\n if (isValidDate) {\n newState.customRangeStartValue = finalStartValue;\n newState.isEndValid = !customRangeEndValue.isBefore(finalStartValue);\n }\n }\n\n this.setState(newState);\n }\n\n /**\n * Only gets called on manual change of datePicker (user interaction)\n * @param {object} endValue - the start date (date or moment).\n * @param {object} isValidDate - if the date is valid or not.\n * @returns {undefined}\n */\n onEndChange(endValue, isValidDate) {\n const newState = { isEndValid: false };\n const { hasTimePicker, minValue, maxValue } = this.props;\n const { customRangeStartValue } = this.state;\n // let isValidInput = false;\n\n if (moment.isMoment(endValue)) {\n // necessary to set end of seconds and milliseconds for every end value\n const correctedEndValue = isValidDate ? endValue.endOf('minute') : endValue;\n\n // necessary to set start to startOf / end day to endOf, when selecting \"without time\"\n const finalEndValue = hasTimePicker ? correctedEndValue : moment(endValue).endOf('day');\n\n // check validity of input (min/max)\n const passesMin = minValue ? finalEndValue.isSameOrAfter(moment(minValue)) : true;\n const passesMax = maxValue ? finalEndValue.isSameOrBefore(moment(maxValue)) : true;\n const isValidInput = isValidDate && passesMin && passesMax && finalEndValue.isAfter(customRangeStartValue);\n newState.isEndValid = isValidInput;\n\n if (isValidDate) {\n newState.customRangeEndValue = finalEndValue;\n }\n }\n\n this.setState(newState);\n }\n\n /**\n * Callback method for DatePicker to limit selection in DatePicker.\n * @param {object} current - Current date in the loop.\n * @returns {undefined}\n */\n getValidStartDates(current) {\n const { minValue, maxValue } = this.props;\n const customRangeEndValue = moment(this.state.customRangeEndValue);\n\n if (current.isSame(customRangeEndValue, 'day')) {\n return true;\n }\n\n const passesMin = minValue ? current.isSameOrAfter(moment(minValue)) : true;\n const passesMax = maxValue ? current.isSameOrBefore(moment(maxValue)) : true;\n\n return passesMin && passesMax;\n }\n\n /**\n * Callback method for DatePicker to limit selection in DatePicker.\n * End date has to be after start date.\n * @param {object} current - Current date in the loop.\n * @returns {undefined}\n */\n getValidEndDates(current) {\n const { minValue, maxValue } = this.props;\n const customRangeStartValue = moment(this.state.customRangeStartValue);\n\n if (current.isSame(customRangeStartValue, 'day')) {\n return true;\n }\n\n const passesMin = minValue ? current.isSameOrAfter(moment(minValue)) : true;\n const passesMax = maxValue ? current.isSameOrBefore(moment(maxValue)) : true;\n const isAfterStart = current.isAfter(customRangeStartValue);\n\n return passesMin && passesMax && isAfterStart;\n }\n\n /**\n * Gets called when \"custom ...\" has been selected.\n * @returns {undefined}\n */\n handleCustomToggle() {\n this.setState(prevState => {\n return {\n isCustomVisible: !prevState.isCustomVisible,\n };\n });\n }\n\n handleCustomPresetSelect(preset) {\n if (typeof preset.onSelect === 'function') {\n preset.onSelect();\n }\n this.handleSelect(preset.startValue, preset.endValue);\n }\n\n /**\n * Gets called when a preset has been selected.\n * @param {object} startValue - the start date (date or moment).\n * @param {object} endValue - the start date (date or moment).\n * @returns {undefined}\n */\n handleSelect(startValue, endValue) {\n const { onRangeChange, locale } = this.props;\n\n const extras = { isDropdownOpen: false };\n this.update(startValue, endValue, locale, extras, onRangeChange);\n }\n\n /**\n * Gets called user clicks the apply button.\n * @returns {undefined}\n */\n handleCustomApply() {\n const { customRangeStartValue, customRangeEndValue, isStartValid, isEndValid } = this.state;\n const { onRangeChange, locale } = this.props;\n\n if (isStartValid && isEndValid) {\n const extras = { isDropdownOpen: false };\n this.update(customRangeStartValue, customRangeEndValue, locale, extras, onRangeChange);\n }\n }\n\n getDropdownToggle(dropdownToggleText) {\n const { children, clearable } = this.props;\n const { startValueText, endValueText } = this.state;\n\n const isClearable = clearable && dropdownToggleText.type !== Placeholder;\n\n const labelClassNames = classNames(isClearable && 'withClearButton');\n\n const isRenderCallback = children && typeof children === 'function';\n\n // Note: due to issues with nested events in Firefox (for toggle and inside the clear)\n // the toggle element must not be a <button> but a div.\n return (\n <div\n type='button'\n className='DateRangePickerToggle form-control dropdown-toggle text-left'\n aria-haspopup='true'\n aria-expanded='true'\n onClick={this.toggleDropdownOpen}\n ref={node => (this.refDropdownToggle = node)}\n >\n {isRenderCallback ? (\n this.props.children(startValueText, endValueText)\n ) : (\n <span className={labelClassNames}>{dropdownToggleText}</span>\n )}\n {isClearable && this.getClearButton()}\n <span className='caret' />\n </div>\n );\n }\n\n getClearButton() {\n return (\n <span className='clearButton' onClick={this.handleResetInternalState}>\n <span className='clearButtonIcon rioglyph rioglyph-remove-sign' />\n </span>\n );\n }\n\n getCustomPanelToggle(isCustomVisible, textCustom) {\n return (\n <li className={classNames('custom-panel-toggle', isCustomVisible && 'hidden')}>\n <a role='button' onClick={this.handleCustomToggle}>\n {textCustom} ...\n </a>\n </li>\n );\n }\n\n getCustomPanelButtons(isCustomVisible, isStartValid, isEndValid, textApply, textCancel) {\n return (\n <li className={classNames('custom-panel-buttons', 'margin-20', !isCustomVisible && 'hidden')}>\n <div className='btn-toolbar'>\n <button\n type='button'\n disabled={!isStartValid || !isEndValid}\n onClick={this.handleCustomApply}\n className='btn btn-primary pull-right'\n >\n {textApply}\n </button>\n <button type='button' onClick={this.toggleDropdownOpen} className='btn btn-default pull-right'>\n {textCancel}\n </button>\n </div>\n </li>\n );\n }\n\n // eslint-disable-next-line complexity\n render() {\n const {\n locale,\n textCustom,\n textApply,\n textCancel,\n textFrom,\n textTo,\n textToday,\n textLastWeek,\n textLastMonth,\n className,\n clearable,\n dropdownClass,\n dropdownMenuClass,\n customPresets,\n hasTimePicker,\n } = this.props;\n\n const {\n customRangeStartValue,\n customRangeEndValue,\n isStartValid,\n isEndValid,\n isCustomVisible,\n isDropdownOpen,\n dropdownToggleText,\n } = this.state;\n\n const pullRight = this.isAutoDropActive() ? this.state.pullRight : this.props.pullRight;\n const dropup = this.isAutoDropActive() ? this.state.dropup : this.props.dropup;\n\n if (customPresets && isEqual(customPresets, defaultProps.customPresets)) {\n // support backward compatibility to override default drop down text values\n customPresets[0].text = textToday;\n customPresets[1].text = textLastWeek;\n customPresets[2].text = textLastMonth;\n }\n\n const classes = classNames('DateRangePicker', className && className);\n\n const dropDownClassNames = classNames(\n 'select',\n 'dropdown',\n dropdownClass,\n isDropdownOpen && 'open',\n dropup && 'dropup'\n );\n\n return (\n <div className={classes}>\n <div className={dropDownClassNames}>\n {this.getDropdownToggle(dropdownToggleText, clearable)}\n <ul\n className={classNames('dropdown-menu', pullRight && 'pull-right', dropdownMenuClass)}\n ref={node => (this.refDropdownMenu = node)}\n >\n {customPresets.map((preset, i) => {\n return (\n <li\n key={`preset-${i}`}\n title={(preset.disabled && preset.disabledText) || null}\n className={classNames(preset.disabled && 'disabled')}\n >\n <a\n role='button'\n className={classNames(isCustomVisible && 'hidden')}\n onClick={\n !preset.disabled\n ? this.handleCustomPresetSelect.bind(this, preset)\n : undefined\n }\n >\n {preset.text}\n </a>\n </li>\n );\n })}\n <li role='separator' className={classNames('divider', isCustomVisible && 'hidden')} />\n {this.getCustomPanelToggle(isCustomVisible, textCustom)}\n <li className={classNames('custom-panel', !isCustomVisible && 'hidden')}>\n <div className='row'>\n <div className='col-sm-6'>\n <label>{textFrom}</label>\n <DatePicker\n locale={locale}\n open\n autoDropDirection={false}\n dateFormat\n timeFormat={hasTimePicker}\n initialValue={customRangeStartValue}\n onChange={this.onStartChange}\n closeOnSelect\n isValidDate={this.getValidStartDates}\n className={classNames('DatePicker', !isStartValid && 'has-error')}\n />\n </div>\n <div className='col-sm-6'>\n <label>{textTo}</label>\n <DatePicker\n locale={locale}\n open\n autoDropDirection={false}\n dateFormat\n timeFormat={hasTimePicker}\n initialValue={customRangeEndValue}\n onChange={this.onEndChange}\n closeOnSelect\n isValidDate={this.getValidEndDates}\n className={classNames('DatePicker', !isEndValid && 'has-error')}\n />\n </div>\n </div>\n </li>\n {this.getCustomPanelButtons(isCustomVisible, isStartValid, isEndValid, textApply, textCancel)}\n </ul>\n </div>\n </div>\n );\n }\n}\n\nDateRangePicker.propTypes = propTypes;\nDateRangePicker.defaultProps = defaultProps;\n\n/**\n * Wrapper component for React-Datetime.\n *\n * @deprecated This will be removed from the UIKIT at some time.\n */\nexport default onClickOutside(DateRangePicker);\nexport { DateRangePicker as DateRangePickerPure };\n"],"names":["Placeholder","text","propTypes","PropTypes","defaultProps","moment","LOCAL_DATE_FORMAT","LOCAL_DATE_FORMAT_NO_TIME","DROPDOWN_WIDTH","DateRangePicker","Component","props","customRangeStartValue","customRangeEndValue","startValue","endValue","locale","nextProps","textDefault","customRangeOnly","defaultStartValue","defaultEndValue","internalStartValue","internalEndValue","resetCondition1","isNil","resetCondition2","isNull","extras","callback","hasTimePicker","format","finalStartValue","finalEndValue","startValueText","endValueText","dropdownToggleText","event","pullRight","dropup","onClear","toggleNode","ReactDOM","menuNode","dropDirection","getDropDirection","left","prevState","isValidDate","newState","minValue","maxValue","passesMin","passesMax","isValidInput","correctedEndValue","current","isAfterStart","preset","onRangeChange","isStartValid","isEndValid","children","clearable","isClearable","labelClassNames","classNames","isRenderCallback","node","isCustomVisible","textCustom","textApply","textCancel","textFrom","textTo","textToday","textLastWeek","textLastMonth","className","dropdownClass","dropdownMenuClass","customPresets","isDropdownOpen","isEqual","classes","dropDownClassNames","i","DatePicker","DeprecatedDateRangePicker","onClickOutside"],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ import Pe from "../../hooks/useClickOutside.js";
|
|
|
9
9
|
import ke from "../../hooks/usePopperDropdown.js";
|
|
10
10
|
import Ne from "../../hooks/useKey.js";
|
|
11
11
|
import we from "../clearableInput/ClearableInput.js";
|
|
12
|
-
import Re from "
|
|
12
|
+
import Re from "../../utils/classNames.js";
|
|
13
13
|
const Ee = (e) => !e.mode || e.mode === "single", xe = (e) => e.mode === "multiple", Le = (e) => e.mode === "range", Je = (e) => {
|
|
14
14
|
const {
|
|
15
15
|
id: o,
|