@spaced-out/ui-design-system 0.4.13-beta.0 → 0.4.13-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.cspell/custom-words.txt +2 -0
- package/CHANGELOG.md +7 -0
- package/cspell.json +3 -1
- package/gulpfile.js +2 -1
- package/lib/styles/index.js +535 -275
- package/package.json +2 -2
- package/lib/components/AIPromptFlow/AIPromptFlow.stories.tsx +0 -465
- package/lib/components/Accordion/Accordion.stories.tsx +0 -165
- package/lib/components/Accordion/Accordion.tsx +0 -112
- package/lib/components/Accordion/AccordionGroup.stories.tsx +0 -215
- package/lib/components/Accordion/AccordionGroup.tsx +0 -77
- package/lib/components/Accordion/index.ts +0 -2
- package/lib/components/Avatar/Avatar.stories.tsx +0 -152
- package/lib/components/Avatar/Avatar.tsx +0 -272
- package/lib/components/Avatar/index.ts +0 -1
- package/lib/components/AvatarGroup/AvatarGroup.stories.tsx +0 -138
- package/lib/components/AvatarGroup/AvatarGroup.tsx +0 -164
- package/lib/components/AvatarGroup/index.ts +0 -1
- package/lib/components/Badge/Badge.stories.tsx +0 -131
- package/lib/components/Badge/Badge.tsx +0 -149
- package/lib/components/Badge/index.ts +0 -1
- package/lib/components/BadgedIcon/BadgedIcon.stories.tsx +0 -80
- package/lib/components/BadgedIcon/BadgedIcon.tsx +0 -76
- package/lib/components/BadgedIcon/index.ts +0 -1
- package/lib/components/Banner/Banner.stories.tsx +0 -187
- package/lib/components/Banner/Banner.tsx +0 -55
- package/lib/components/Banner/index.ts +0 -1
- package/lib/components/Breadcrumbs/BreadcrumbLink/BreadcrumbLink.stories.tsx +0 -114
- package/lib/components/Breadcrumbs/BreadcrumbLink/BreadcrumbLink.tsx +0 -52
- package/lib/components/Breadcrumbs/BreadcrumbLink/index.ts +0 -1
- package/lib/components/Breadcrumbs/Breadcrumbs.stories.tsx +0 -189
- package/lib/components/Breadcrumbs/Breadcrumbs.tsx +0 -59
- package/lib/components/Breadcrumbs/index.ts +0 -2
- package/lib/components/Button/Button.stories.tsx +0 -220
- package/lib/components/Button/Button.tsx +0 -285
- package/lib/components/Button/index.ts +0 -8
- package/lib/components/ButtonDropdown/ButtonDropdown.stories.tsx +0 -677
- package/lib/components/ButtonDropdown/ButtonDropdown.tsx +0 -221
- package/lib/components/ButtonDropdown/SimpleButtonDropdown.stories.tsx +0 -624
- package/lib/components/ButtonDropdown/SimpleButtonDropdown.tsx +0 -167
- package/lib/components/ButtonDropdown/index.ts +0 -2
- package/lib/components/ButtonTabs/ButtonTab/ButtonTab.stories.tsx +0 -125
- package/lib/components/ButtonTabs/ButtonTab/ButtonTab.tsx +0 -76
- package/lib/components/ButtonTabs/ButtonTab/index.ts +0 -1
- package/lib/components/ButtonTabs/ButtonTabDropdown.tsx +0 -147
- package/lib/components/ButtonTabs/ButtonTabs.stories.tsx +0 -393
- package/lib/components/ButtonTabs/ButtonTabs.tsx +0 -119
- package/lib/components/ButtonTabs/index.ts +0 -2
- package/lib/components/Card/Card.stories.tsx +0 -245
- package/lib/components/Card/Card.tsx +0 -172
- package/lib/components/Card/index.ts +0 -1
- package/lib/components/Charts/ChartTooltip/index.ts +0 -13
- package/lib/components/Charts/ChartWrapper/ChartWrapper.tsx +0 -179
- package/lib/components/Charts/ChartWrapper/index.ts +0 -1
- package/lib/components/Charts/ColumnChart/ColumnChart.stories.tsx +0 -574
- package/lib/components/Charts/ColumnChart/ColumnChart.tsx +0 -125
- package/lib/components/Charts/ColumnChart/index.ts +0 -1
- package/lib/components/Charts/DonutChart/DonutChart.stories.tsx +0 -415
- package/lib/components/Charts/DonutChart/DonutChart.tsx +0 -155
- package/lib/components/Charts/DonutChart/index.ts +0 -1
- package/lib/components/Charts/FunnelChart/FunnelChart.stories.tsx +0 -510
- package/lib/components/Charts/FunnelChart/FunnelChart.tsx +0 -110
- package/lib/components/Charts/FunnelChart/index.ts +0 -1
- package/lib/components/Charts/LineChart/LineChart.stories.tsx +0 -590
- package/lib/components/Charts/LineChart/LineChart.tsx +0 -109
- package/lib/components/Charts/LineChart/index.ts +0 -1
- package/lib/components/Charts/SpiderChart/SpiderChart.stories.tsx +0 -467
- package/lib/components/Charts/SpiderChart/SpiderChart.tsx +0 -104
- package/lib/components/Charts/SpiderChart/index.ts +0 -1
- package/lib/components/Charts/index.ts +0 -11
- package/lib/components/ChatBubble/ChatAnchor.stories.tsx +0 -95
- package/lib/components/ChatBubble/ChatBubble.stories.tsx +0 -277
- package/lib/components/ChatBubble/ChatBubble.tsx +0 -232
- package/lib/components/ChatBubble/index.ts +0 -1
- package/lib/components/Checkbox/Checkbox.stories.tsx +0 -180
- package/lib/components/Checkbox/Checkbox.tsx +0 -168
- package/lib/components/Checkbox/CheckboxGroup.stories.tsx +0 -381
- package/lib/components/Checkbox/CheckboxGroup.tsx +0 -119
- package/lib/components/Checkbox/index.ts +0 -2
- package/lib/components/Chip/Chip.stories.tsx +0 -335
- package/lib/components/Chip/Chip.tsx +0 -204
- package/lib/components/Chip/index.ts +0 -2
- package/lib/components/CircularLoader/CircularLoader.stories.tsx +0 -75
- package/lib/components/CircularLoader/CircularLoader.tsx +0 -51
- package/lib/components/CircularLoader/index.ts +0 -1
- package/lib/components/CollapsibleCard/CollapsibleCard.stories.tsx +0 -311
- package/lib/components/CollapsibleCard/CollapsibleCard.tsx +0 -135
- package/lib/components/CollapsibleCard/index.ts +0 -1
- package/lib/components/Combobox/Combobox.stories.tsx +0 -306
- package/lib/components/Combobox/Combobox.tsx +0 -297
- package/lib/components/Combobox/helper.ts +0 -201
- package/lib/components/Combobox/index.ts +0 -1
- package/lib/components/ConditionalWrapper/ConditionalWrapper.stories.tsx +0 -51
- package/lib/components/ConditionalWrapper/ConditionalWrapper.ts +0 -16
- package/lib/components/ConditionalWrapper/index.ts +0 -1
- package/lib/components/DateRangePicker/Calendar.tsx +0 -110
- package/lib/components/DateRangePicker/DateRangePicker.stories.tsx +0 -397
- package/lib/components/DateRangePicker/DateRangePicker.tsx +0 -210
- package/lib/components/DateRangePicker/DateRangeWrapper.tsx +0 -386
- package/lib/components/DateRangePicker/Day.tsx +0 -74
- package/lib/components/DateRangePicker/index.ts +0 -1
- package/lib/components/Dialog/Dialog.stories.tsx +0 -254
- package/lib/components/Dialog/Dialog.tsx +0 -222
- package/lib/components/Dialog/index.ts +0 -1
- package/lib/components/Disclaimer/Disclaimer.stories.tsx +0 -148
- package/lib/components/Disclaimer/Disclaimer.tsx +0 -35
- package/lib/components/Disclaimer/index.ts +0 -1
- package/lib/components/Dropdown/Dropdown.stories.tsx +0 -785
- package/lib/components/Dropdown/Dropdown.tsx +0 -174
- package/lib/components/Dropdown/SimpleDropdown.stories.tsx +0 -534
- package/lib/components/Dropdown/SimpleDropdown.tsx +0 -167
- package/lib/components/Dropdown/index.ts +0 -2
- package/lib/components/EmptyState/EmptyImages/CalendarEmptyImage.tsx +0 -108
- package/lib/components/EmptyState/EmptyImages/ChartEmptyImage.tsx +0 -194
- package/lib/components/EmptyState/EmptyImages/DataEmptyImage.tsx +0 -116
- package/lib/components/EmptyState/EmptyImages/FileEmptyImage.tsx +0 -133
- package/lib/components/EmptyState/EmptyImages/MessageEmptyImage.tsx +0 -64
- package/lib/components/EmptyState/EmptyImages/UploadEmptyImage.tsx +0 -67
- package/lib/components/EmptyState/EmptyImages/index.ts +0 -6
- package/lib/components/EmptyState/EmptyState.stories.tsx +0 -104
- package/lib/components/EmptyState/EmptyState.tsx +0 -83
- package/lib/components/EmptyState/index.ts +0 -1
- package/lib/components/ErrorMessage/ErrorImages/ForbiddenImage.tsx +0 -85
- package/lib/components/ErrorMessage/ErrorImages/NotFoundImage.tsx +0 -117
- package/lib/components/ErrorMessage/ErrorImages/ServerErrorImage.tsx +0 -237
- package/lib/components/ErrorMessage/ErrorImages/UnauthorizedImage.tsx +0 -73
- package/lib/components/ErrorMessage/ErrorImages/index.ts +0 -4
- package/lib/components/ErrorMessage/ErrorMessage.stories.tsx +0 -112
- package/lib/components/ErrorMessage/ErrorMessage.tsx +0 -87
- package/lib/components/ErrorMessage/index.ts +0 -1
- package/lib/components/FileUpload/FileBlock/FileBlock.stories.tsx +0 -85
- package/lib/components/FileUpload/FileBlock/FileBlock.tsx +0 -136
- package/lib/components/FileUpload/FileBlock/index.ts +0 -1
- package/lib/components/FileUpload/FileUpload.stories.tsx +0 -958
- package/lib/components/FileUpload/FileUpload.tsx +0 -206
- package/lib/components/FileUpload/index.ts +0 -2
- package/lib/components/FilterButtonOverlay/FilterButtonOverlay.stories.tsx +0 -345
- package/lib/components/FilterButtonOverlay/FilterButtonOverlay.tsx +0 -163
- package/lib/components/FilterButtonOverlay/index.ts +0 -1
- package/lib/components/FocusManager/FocusManager.stories.tsx +0 -117
- package/lib/components/FocusManager/FocusManager.tsx +0 -59
- package/lib/components/FocusManager/index.ts +0 -1
- package/lib/components/FocusManagerWithArrowKeyNavigation/FocusManagerWithArrowKeyNavigation.stories.tsx +0 -557
- package/lib/components/FocusManagerWithArrowKeyNavigation/FocusManagerWithArrowKeyNavigation.tsx +0 -156
- package/lib/components/FocusManagerWithArrowKeyNavigation/index.ts +0 -1
- package/lib/components/FormTitleWrapper/FormTitleWrapper.stories.tsx +0 -173
- package/lib/components/FormTitleWrapper/FormTitleWrapper.tsx +0 -63
- package/lib/components/FormTitleWrapper/index.ts +0 -1
- package/lib/components/Grid/Col.stories.tsx +0 -114
- package/lib/components/Grid/Grid.tsx +0 -119
- package/lib/components/Grid/GridPatterns.stories.tsx +0 -420
- package/lib/components/Grid/Row.stories.tsx +0 -135
- package/lib/components/Grid/Tablist.layout.stories.tsx +0 -281
- package/lib/components/Grid/index.ts +0 -1
- package/lib/components/Icon/ClickableIcon.tsx +0 -104
- package/lib/components/Icon/Icon.docs.ts +0 -118
- package/lib/components/Icon/Icon.stories.tsx +0 -79
- package/lib/components/Icon/Icon.tsx +0 -78
- package/lib/components/Icon/SemanticIcon.stories.tsx +0 -74
- package/lib/components/Icon/SemanticIcon.tsx +0 -49
- package/lib/components/Icon/index.ts +0 -3
- package/lib/components/InContextAlert/InContextAlert.stories.tsx +0 -164
- package/lib/components/InContextAlert/InContextAlert.tsx +0 -204
- package/lib/components/InContextAlert/index.ts +0 -1
- package/lib/components/InfinitePagination/InfinitePagination.stories.tsx +0 -323
- package/lib/components/InfinitePagination/InfinitePagination.tsx +0 -121
- package/lib/components/InfinitePagination/index.ts +0 -1
- package/lib/components/InlineDropdown/InlineDropdown.stories.tsx +0 -415
- package/lib/components/InlineDropdown/InlineDropdown.tsx +0 -175
- package/lib/components/InlineDropdown/SimpleInlineDropdown.stories.tsx +0 -513
- package/lib/components/InlineDropdown/SimpleInlineDropdown.tsx +0 -165
- package/lib/components/InlineDropdown/index.ts +0 -2
- package/lib/components/Input/Input.stories.tsx +0 -590
- package/lib/components/Input/Input.tsx +0 -336
- package/lib/components/Input/NativeColorpicker.stories.tsx +0 -337
- package/lib/components/Input/NativeDatepicker.stories.tsx +0 -424
- package/lib/components/Input/index.ts +0 -1
- package/lib/components/KPIBox/KPIBox.stories.tsx +0 -321
- package/lib/components/KPIBox/KPIBox.tsx +0 -94
- package/lib/components/KPIBox/index.ts +0 -1
- package/lib/components/LinearLoader/LinearLoader.stories.tsx +0 -132
- package/lib/components/LinearLoader/LinearLoader.tsx +0 -48
- package/lib/components/LinearLoader/index.ts +0 -1
- package/lib/components/Link/Link.stories.tsx +0 -302
- package/lib/components/Link/Link.tsx +0 -231
- package/lib/components/Link/index.ts +0 -1
- package/lib/components/Menu/Menu.stories.tsx +0 -1046
- package/lib/components/Menu/Menu.tsx +0 -391
- package/lib/components/Menu/MenuOptionButton.tsx +0 -206
- package/lib/components/Menu/index.ts +0 -2
- package/lib/components/Modal/Modal.stories.tsx +0 -430
- package/lib/components/Modal/Modal.tsx +0 -379
- package/lib/components/Modal/index.ts +0 -8
- package/lib/components/Notification/Notification.stories.tsx +0 -132
- package/lib/components/Notification/Notification.tsx +0 -140
- package/lib/components/Notification/index.ts +0 -1
- package/lib/components/OptionButton/OptionButton.stories.tsx +0 -397
- package/lib/components/OptionButton/OptionButton.tsx +0 -149
- package/lib/components/OptionButton/SimpleOptionButton.stories.tsx +0 -525
- package/lib/components/OptionButton/SimpleOptionButton.tsx +0 -160
- package/lib/components/OptionButton/index.ts +0 -2
- package/lib/components/PageTitle/PageTitle.stories.tsx +0 -257
- package/lib/components/PageTitle/PageTitle.tsx +0 -276
- package/lib/components/PageTitle/index.ts +0 -1
- package/lib/components/Pagination/Pagination.stories.tsx +0 -259
- package/lib/components/Pagination/Pagination.tsx +0 -147
- package/lib/components/Pagination/PaginationItem.tsx +0 -118
- package/lib/components/Pagination/index.ts +0 -1
- package/lib/components/Panel/Panel.stories.tsx +0 -452
- package/lib/components/Panel/Panel.tsx +0 -181
- package/lib/components/Panel/index.ts +0 -2
- package/lib/components/ProgressDonut/ProgressDonut.stories.tsx +0 -97
- package/lib/components/ProgressDonut/ProgressDonut.tsx +0 -111
- package/lib/components/ProgressDonut/index.ts +0 -1
- package/lib/components/PromptChip/PromptChip.stories.tsx +0 -202
- package/lib/components/PromptChip/PromptChip.tsx +0 -166
- package/lib/components/PromptChip/index.ts +0 -1
- package/lib/components/PromptInput/PromptInput.stories.tsx +0 -349
- package/lib/components/PromptInput/PromptInput.tsx +0 -190
- package/lib/components/PromptInput/index.ts +0 -1
- package/lib/components/RadioButton/RadioButton.stories.tsx +0 -157
- package/lib/components/RadioButton/RadioButton.tsx +0 -135
- package/lib/components/RadioButton/RadioGroup.stories.tsx +0 -283
- package/lib/components/RadioButton/RadioGroup.tsx +0 -90
- package/lib/components/RadioButton/index.ts +0 -2
- package/lib/components/RadioTile/RadioTile.stories.tsx +0 -276
- package/lib/components/RadioTile/RadioTile.tsx +0 -107
- package/lib/components/RadioTile/index.ts +0 -1
- package/lib/components/RangeSlider/RangeSlider.stories.tsx +0 -342
- package/lib/components/RangeSlider/RangeSlider.tsx +0 -201
- package/lib/components/RangeSlider/index.ts +0 -1
- package/lib/components/Rating/Rating.stories.tsx +0 -257
- package/lib/components/Rating/Rating.tsx +0 -141
- package/lib/components/Rating/index.ts +0 -1
- package/lib/components/ScoreBar/ScoreBar.stories.tsx +0 -182
- package/lib/components/ScoreBar/ScoreBar.tsx +0 -133
- package/lib/components/ScoreBar/index.ts +0 -1
- package/lib/components/SearchInput/SearchInput.stories.tsx +0 -260
- package/lib/components/SearchInput/SearchInput.tsx +0 -81
- package/lib/components/SearchInput/index.ts +0 -2
- package/lib/components/Separator/Separator.stories.tsx +0 -95
- package/lib/components/Separator/Separator.tsx +0 -57
- package/lib/components/Separator/index.ts +0 -1
- package/lib/components/Shimmer/Shimmer.stories.tsx +0 -317
- package/lib/components/Shimmer/Shimmer.tsx +0 -143
- package/lib/components/Shimmer/index.ts +0 -1
- package/lib/components/SideMenuLink/SideMenuLink.stories.tsx +0 -153
- package/lib/components/SideMenuLink/SideMenuLink.tsx +0 -344
- package/lib/components/SideMenuLink/index.ts +0 -1
- package/lib/components/StatusIndicator/StatusIndicator.stories.tsx +0 -130
- package/lib/components/StatusIndicator/StatusIndicator.tsx +0 -62
- package/lib/components/StatusIndicator/index.ts +0 -1
- package/lib/components/Stepper/Step/Step.stories.tsx +0 -117
- package/lib/components/Stepper/Step/Step.tsx +0 -125
- package/lib/components/Stepper/Step/StepContent.tsx +0 -40
- package/lib/components/Stepper/Step/StepLabel.tsx +0 -40
- package/lib/components/Stepper/Step/index.ts +0 -3
- package/lib/components/Stepper/Stepper.stories.tsx +0 -422
- package/lib/components/Stepper/Stepper.tsx +0 -68
- package/lib/components/Stepper/index.ts +0 -2
- package/lib/components/StickyBar/StickyBar.stories.tsx +0 -152
- package/lib/components/StickyBar/StickyBar.tsx +0 -65
- package/lib/components/StickyBar/index.ts +0 -1
- package/lib/components/SubMenu/SubMenu.stories.tsx +0 -413
- package/lib/components/SubMenu/SubMenu.tsx +0 -96
- package/lib/components/SubMenu/SubMenuGroup.tsx +0 -161
- package/lib/components/SubMenu/SubMenuItem.tsx +0 -170
- package/lib/components/SubMenu/SubMenuLink.tsx +0 -87
- package/lib/components/SubMenu/index.ts +0 -4
- package/lib/components/Table/BasicTable.stories.tsx +0 -647
- package/lib/components/Table/BulkActions.stories.tsx +0 -267
- package/lib/components/Table/Cell.tsx +0 -125
- package/lib/components/Table/DefaultRow.tsx +0 -159
- package/lib/components/Table/DefaultTableHeader.tsx +0 -244
- package/lib/components/Table/InlineEdit.stories.tsx +0 -390
- package/lib/components/Table/StaticTable.tsx +0 -230
- package/lib/components/Table/Table.docs.ts +0 -495
- package/lib/components/Table/Table.tsx +0 -135
- package/lib/components/Table/TableActionBar.tsx +0 -55
- package/lib/components/Table/TableBottomBar.tsx +0 -25
- package/lib/components/Table/TableTopBar.tsx +0 -25
- package/lib/components/Table/dummyTableData.ts +0 -2189
- package/lib/components/Table/hooks.ts +0 -102
- package/lib/components/Table/index.ts +0 -8
- package/lib/components/Tabs/Tab/Tab.stories.tsx +0 -151
- package/lib/components/Tabs/Tab/Tab.tsx +0 -152
- package/lib/components/Tabs/Tab/index.ts +0 -1
- package/lib/components/Tabs/TabList/TabDropdown.tsx +0 -125
- package/lib/components/Tabs/TabList/TabList.stories.tsx +0 -172
- package/lib/components/Tabs/TabList/TabList.tsx +0 -178
- package/lib/components/Tabs/TabList/index.ts +0 -1
- package/lib/components/Tabs/index.ts +0 -2
- package/lib/components/Text/HighlightedText.stories.tsx +0 -122
- package/lib/components/Text/Text.stories.tsx +0 -302
- package/lib/components/Text/Text.tsx +0 -882
- package/lib/components/Text/index.ts +0 -30
- package/lib/components/TextTile/TextTile.stories.tsx +0 -89
- package/lib/components/TextTile/TextTile.tsx +0 -51
- package/lib/components/TextTile/index.ts +0 -1
- package/lib/components/Textarea/Textarea.stories.tsx +0 -324
- package/lib/components/Textarea/Textarea.tsx +0 -148
- package/lib/components/Textarea/index.ts +0 -2
- package/lib/components/Timeline/Timeline.stories.tsx +0 -272
- package/lib/components/Timeline/Timeline.tsx +0 -57
- package/lib/components/Timeline/TimelineItem/TimelineItem.stories.tsx +0 -216
- package/lib/components/Timeline/TimelineItem/TimelineItem.tsx +0 -128
- package/lib/components/Timeline/TimelineItem/index.ts +0 -1
- package/lib/components/Timeline/index.ts +0 -2
- package/lib/components/Toast/Toast.stories.tsx +0 -274
- package/lib/components/Toast/Toast.tsx +0 -264
- package/lib/components/Toast/ToastContainer.tsx +0 -123
- package/lib/components/Toast/ToastManager.ts +0 -60
- package/lib/components/Toast/index.ts +0 -10
- package/lib/components/Toggle/Toggle.stories.tsx +0 -175
- package/lib/components/Toggle/Toggle.tsx +0 -121
- package/lib/components/Toggle/index.ts +0 -1
- package/lib/components/TokenListInput/TokenListInput.stories.tsx +0 -678
- package/lib/components/TokenListInput/TokenListInput.tsx +0 -393
- package/lib/components/TokenListInput/TokenValueChips.tsx +0 -69
- package/lib/components/TokenListInput/index.ts +0 -1
- package/lib/components/Tooltip/Tooltip.stories.tsx +0 -316
- package/lib/components/Tooltip/Tooltip.tsx +0 -188
- package/lib/components/Tooltip/index.ts +0 -1
- package/lib/components/Truncate/Truncate.stories.tsx +0 -106
- package/lib/components/Truncate/Truncate.tsx +0 -80
- package/lib/components/Truncate/index.ts +0 -2
- package/lib/components/TruncatedTextWithTooltip/TruncatedTextWithTooltip.stories.tsx +0 -147
- package/lib/components/TruncatedTextWithTooltip/TruncatedTextWithTooltip.tsx +0 -109
- package/lib/components/TruncatedTextWithTooltip/index.ts +0 -1
- package/lib/components/Typeahead/SimpleTypeahead.stories.tsx +0 -567
- package/lib/components/Typeahead/SimpleTypeahead.tsx +0 -159
- package/lib/components/Typeahead/Typeahead.stories.tsx +0 -552
- package/lib/components/Typeahead/Typeahead.tsx +0 -243
- package/lib/components/Typeahead/index.ts +0 -2
- package/lib/components/WeekdayPicker/WeekdayPicker.stories.tsx +0 -263
- package/lib/components/WeekdayPicker/WeekdayPicker.tsx +0 -224
- package/lib/components/WeekdayPicker/index.ts +0 -1
- package/lib/components/index.ts +0 -77
- package/lib/hooks/index.ts +0 -16
- package/lib/hooks/useArbitraryOptionAddition/index.ts +0 -1
- package/lib/hooks/useArbitraryOptionAddition/useArbitraryOptionAddition.stories.tsx +0 -158
- package/lib/hooks/useArbitraryOptionAddition/useArbitraryOptionAddition.ts +0 -127
- package/lib/hooks/useCopyToClipboard/index.ts +0 -1
- package/lib/hooks/useCopyToClipboard/useCopyToClipboard.stories.tsx +0 -112
- package/lib/hooks/useCopyToClipboard/useCopyToClipboard.ts +0 -29
- package/lib/hooks/useDebounce/index.ts +0 -1
- package/lib/hooks/useDebounce/useDebounce.stories.tsx +0 -82
- package/lib/hooks/useDebounce/useDebounce.ts +0 -15
- package/lib/hooks/useFileUpload/index.ts +0 -1
- package/lib/hooks/useFileUpload/useFileUpload.stories.tsx +0 -468
- package/lib/hooks/useFileUpload/useFileUpload.ts +0 -326
- package/lib/hooks/useFilteredOptions/index.ts +0 -1
- package/lib/hooks/useFilteredOptions/useFilteredOptions.stories.tsx +0 -142
- package/lib/hooks/useFilteredOptions/useFilteredOptions.ts +0 -92
- package/lib/hooks/useInfiniteScroll/index.ts +0 -1
- package/lib/hooks/useInfiniteScroll/useInfiniteScroll.ts +0 -85
- package/lib/hooks/useInputState/index.ts +0 -1
- package/lib/hooks/useInputState/useInputState.stories.tsx +0 -62
- package/lib/hooks/useInputState/useInputState.ts +0 -24
- package/lib/hooks/useLockedBody/index.ts +0 -1
- package/lib/hooks/useLockedBody/useLockedBody.stories.tsx +0 -71
- package/lib/hooks/useLockedBody/useLockedBody.ts +0 -53
- package/lib/hooks/useModal/index.ts +0 -1
- package/lib/hooks/useModal/useModal.stories.tsx +0 -134
- package/lib/hooks/useModal/useModal.ts +0 -36
- package/lib/hooks/useMountTransition/index.ts +0 -25
- package/lib/hooks/useMountTransition/useMountTransition.stories.tsx +0 -64
- package/lib/hooks/usePagination/index.ts +0 -1
- package/lib/hooks/usePagination/usePagination.stories.tsx +0 -72
- package/lib/hooks/usePagination/usePagination.ts +0 -151
- package/lib/hooks/useReferenceElementWidth/index.ts +0 -1
- package/lib/hooks/useReferenceElementWidth/useReferenceElementWidth.ts +0 -19
- package/lib/hooks/useResizeObserver/index.ts +0 -1
- package/lib/hooks/useResizeObserver/useResizeObserver.ts +0 -29
- package/lib/hooks/useToastPortal/index.ts +0 -1
- package/lib/hooks/useToastPortal/useToastPortal.ts +0 -34
- package/lib/hooks/useToggle/index.ts +0 -1
- package/lib/hooks/useToggle/useToggle.stories.tsx +0 -70
- package/lib/hooks/useToggle/useToggle.ts +0 -13
- package/lib/hooks/useWindowSize/index.ts +0 -1
- package/lib/hooks/useWindowSize/useWindowSize.stories.tsx +0 -62
- package/lib/hooks/useWindowSize/useWindowSize.ts +0 -39
- package/lib/index.ts +0 -6
- package/lib/styles/index.ts +0 -533
- package/lib/styles/variables/_border.ts +0 -23
- package/lib/styles/variables/_color.ts +0 -207
- package/lib/styles/variables/_elevation.ts +0 -13
- package/lib/styles/variables/_font.ts +0 -59
- package/lib/styles/variables/_motion.ts +0 -11
- package/lib/styles/variables/_opacity.ts +0 -29
- package/lib/styles/variables/_shadow.ts +0 -47
- package/lib/styles/variables/_size.ts +0 -113
- package/lib/styles/variables/_space.ts +0 -23
- package/lib/types/charts.ts +0 -247
- package/lib/types/common.ts +0 -11
- package/lib/types/cssvariables.d.ts +0 -8
- package/lib/types/date-range-picker.ts +0 -20
- package/lib/types/flow-to-typescript-codemod.d.ts +0 -48
- package/lib/types/global.d.ts +0 -84
- package/lib/types/index.ts +0 -6
- package/lib/types/menu.ts +0 -13
- package/lib/types/toast.ts +0 -34
- package/lib/types/typography.ts +0 -17
- package/lib/utils/array/are-arrays-equal.ts +0 -12
- package/lib/utils/array/index.ts +0 -1
- package/lib/utils/charts/charts.ts +0 -110
- package/lib/utils/charts/columnChart.ts +0 -62
- package/lib/utils/charts/donutChart.ts +0 -123
- package/lib/utils/charts/funnelChart.ts +0 -97
- package/lib/utils/charts/helpers.ts +0 -65
- package/lib/utils/charts/index.ts +0 -7
- package/lib/utils/charts/lineChart.ts +0 -51
- package/lib/utils/charts/spiderChart.ts +0 -57
- package/lib/utils/charts/typography.ts +0 -52
- package/lib/utils/classify/classify.stories.tsx +0 -65
- package/lib/utils/classify/index.ts +0 -27
- package/lib/utils/click-away/ClickAway.stories.tsx +0 -248
- package/lib/utils/click-away/click-away.ts +0 -230
- package/lib/utils/click-away/index.ts +0 -1
- package/lib/utils/date-range-picker/date-range-picker.ts +0 -430
- package/lib/utils/date-range-picker/index.ts +0 -2
- package/lib/utils/date-range-picker/timezones.ts +0 -263
- package/lib/utils/dom/dom.stories.tsx +0 -59
- package/lib/utils/dom/dom.ts +0 -247
- package/lib/utils/dom/index.ts +0 -1
- package/lib/utils/helpers/helpers.stories.tsx +0 -124
- package/lib/utils/helpers/helpers.ts +0 -51
- package/lib/utils/helpers/index.ts +0 -1
- package/lib/utils/index.ts +0 -14
- package/lib/utils/makeClassNameComponent/index.ts +0 -1
- package/lib/utils/makeClassNameComponent/makeClassNameComponent.stories.tsx +0 -46
- package/lib/utils/makeClassNameComponent/makeClassNameComponent.tsx +0 -60
- package/lib/utils/menu/index.ts +0 -1
- package/lib/utils/menu/menu.ts +0 -174
- package/lib/utils/merge-refs/index.ts +0 -1
- package/lib/utils/merge-refs/merge-refs.stories.tsx +0 -92
- package/lib/utils/merge-refs/merge-refs.ts +0 -16
- package/lib/utils/rating/index.ts +0 -1
- package/lib/utils/rating/rating.ts +0 -30
- package/lib/utils/score-bar/index.ts +0 -1
- package/lib/utils/score-bar/score-bar.ts +0 -45
- package/lib/utils/string/index.ts +0 -1
- package/lib/utils/string/string.stories.tsx +0 -71
- package/lib/utils/string/string.ts +0 -26
- package/lib/utils/token-list-input/token-list-input.ts +0 -32
- package/lib/utils/tokens/index.ts +0 -1
- package/lib/utils/tokens/tokens.ts +0 -237
|
@@ -1,415 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
|
|
3
|
-
import {Button} from '../../Button';
|
|
4
|
-
import {EmptyState} from '../../EmptyState';
|
|
5
|
-
import {EXPORT_OPTIONS} from '../ChartWrapper';
|
|
6
|
-
|
|
7
|
-
import type {DonutChartProps} from './';
|
|
8
|
-
import {DonutChart} from './DonutChart';
|
|
9
|
-
|
|
10
|
-
import css from './DonutChart.stories.module.css';
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
export default {
|
|
14
|
-
tags: ['autodocs'],
|
|
15
|
-
title: 'Data viz/Donut Chart',
|
|
16
|
-
component: DonutChart,
|
|
17
|
-
argTypes: {
|
|
18
|
-
isLoading: {
|
|
19
|
-
description: 'If **true**, the component would show a circular loader',
|
|
20
|
-
control: {
|
|
21
|
-
type: 'boolean',
|
|
22
|
-
},
|
|
23
|
-
table: {
|
|
24
|
-
type: {
|
|
25
|
-
summary: 'boolean',
|
|
26
|
-
},
|
|
27
|
-
defaultValue: {
|
|
28
|
-
summary: 'false',
|
|
29
|
-
},
|
|
30
|
-
},
|
|
31
|
-
},
|
|
32
|
-
classNames: {
|
|
33
|
-
description: 'Provide an optional className to be applied to the wrapper',
|
|
34
|
-
control: {
|
|
35
|
-
type: 'object',
|
|
36
|
-
},
|
|
37
|
-
table: {
|
|
38
|
-
type: {
|
|
39
|
-
summary: '{wrapper?: string}',
|
|
40
|
-
},
|
|
41
|
-
},
|
|
42
|
-
},
|
|
43
|
-
cardTitle: {
|
|
44
|
-
description:
|
|
45
|
-
'Title of the card container, present on the header of the component',
|
|
46
|
-
control: {
|
|
47
|
-
type: 'text',
|
|
48
|
-
},
|
|
49
|
-
type: {
|
|
50
|
-
summary: 'string',
|
|
51
|
-
},
|
|
52
|
-
},
|
|
53
|
-
centerText: {
|
|
54
|
-
description:
|
|
55
|
-
'Text displayed as main text in the center of the donut. Can be used to display the stat related to the overall chart series-data',
|
|
56
|
-
control: {
|
|
57
|
-
type: 'text',
|
|
58
|
-
},
|
|
59
|
-
},
|
|
60
|
-
centerSubtext: {
|
|
61
|
-
description:
|
|
62
|
-
'Text displayed as sub text in the center of the donut. Can be used to emphasize on the stat being shown as `centerText`',
|
|
63
|
-
control: {
|
|
64
|
-
type: 'text',
|
|
65
|
-
},
|
|
66
|
-
},
|
|
67
|
-
customExportOptions: {
|
|
68
|
-
description:
|
|
69
|
-
'Array of export options that specifies the supported file formats for chart exports. <br /> EXPORT_OPTIONS exported by the component can be useful for providing the customExportOptions. Provide the objects corresponding to the desired file format required, in the form of an array. <br /> Empty array indicates no custom export required. If not provided, default options will be shown - PNG, PDF, SVG, JPEG.',
|
|
70
|
-
control: {
|
|
71
|
-
type: 'object',
|
|
72
|
-
},
|
|
73
|
-
table: {
|
|
74
|
-
type: {
|
|
75
|
-
summary: 'Array<ExportOptionType> | null',
|
|
76
|
-
},
|
|
77
|
-
},
|
|
78
|
-
},
|
|
79
|
-
series: {
|
|
80
|
-
description:
|
|
81
|
-
'Series options for specific data and the data itself. <br /> <b> series.name </b> - The general name(that specifies the category of data being represented) as shown in the legend. <br /> <b> series.data </b> - An array of objects with name and value. The name here is the name of the data-point represented by the slice of pie, and the value denotes the proportion of that data-point in the total value.',
|
|
82
|
-
table: {
|
|
83
|
-
type: {
|
|
84
|
-
summary:
|
|
85
|
-
'Object<{ name: string, data: Array< {name: string, value: number} > }>',
|
|
86
|
-
},
|
|
87
|
-
},
|
|
88
|
-
},
|
|
89
|
-
legend: {
|
|
90
|
-
description:
|
|
91
|
-
'The legend is a box containing a symbol and name for each series item or point item in the chart. Each series (or points in case of pie charts) is represented by a symbol and its name in the legend.',
|
|
92
|
-
control: {
|
|
93
|
-
type: 'object',
|
|
94
|
-
},
|
|
95
|
-
},
|
|
96
|
-
headerActions: {
|
|
97
|
-
description:
|
|
98
|
-
'The user-specified component placed at the top-right of the chart-container, next to the export menu-button. It can be utilized for adding some custom functionality to the chart.',
|
|
99
|
-
table: {
|
|
100
|
-
type: {
|
|
101
|
-
summary: 'React.Component',
|
|
102
|
-
},
|
|
103
|
-
},
|
|
104
|
-
},
|
|
105
|
-
hasEmptyData: {
|
|
106
|
-
description:
|
|
107
|
-
'If **true**, the component would show a message indicating that the data is empty',
|
|
108
|
-
control: {
|
|
109
|
-
type: 'boolean',
|
|
110
|
-
},
|
|
111
|
-
},
|
|
112
|
-
emptyText: {
|
|
113
|
-
description: 'Provide component to be shown in case of empty data',
|
|
114
|
-
table: {
|
|
115
|
-
type: {summary: 'React.Component'},
|
|
116
|
-
},
|
|
117
|
-
},
|
|
118
|
-
},
|
|
119
|
-
parameters: {
|
|
120
|
-
docs: {
|
|
121
|
-
subtitle: 'Generates a DonutChart component.',
|
|
122
|
-
description: {
|
|
123
|
-
component: `
|
|
124
|
-
\`\`\`js
|
|
125
|
-
import { DonutChart, EXPORT_OPTIONS } from "@spaced-out/ui-design-system/lib/components/Charts";
|
|
126
|
-
\`\`\`
|
|
127
|
-
**Donut Chart**
|
|
128
|
-
|
|
129
|
-
The Donut Chart component is a visually appealing way to represent data in a circular format, similar to a pie chart but with a hole in the center. It's effective for showcasing proportions and percentages within a dataset. Here's an overview of its features:
|
|
130
|
-
|
|
131
|
-
- **Customization**: The Donut Chart offers extensive customization options, allowing users to adjust colors, labels, and other visual elements to suit their preferences and branding requirements.
|
|
132
|
-
|
|
133
|
-
- **Center Text**: You can display custom text in the center of the donut chart, such as a summary statistic or key insight related to the data being visualized.
|
|
134
|
-
|
|
135
|
-
- **Export Options**: Users can export the chart in various file formats (e.g., JPEG, PNG, PDF, SVG) for sharing, embedding, or further analysis.
|
|
136
|
-
|
|
137
|
-
- **Drilldown Functionality**: For deeper exploration, the Donut Chart supports drilldown functionality, enabling users to delve into specific categories or subgroups by clicking on chart elements.
|
|
138
|
-
|
|
139
|
-
- **Interactive Legend**: The interactive legend provides a clear representation of the data categories included in the chart, allowing users to toggle visibility as needed for better clarity.
|
|
140
|
-
|
|
141
|
-
- **Responsive Design**: The Donut Chart is designed to be responsive, ensuring optimal viewing and interaction across different devices and screen sizes.
|
|
142
|
-
|
|
143
|
-
- **Accessibility**: The Donut Chart component prioritizes accessibility, ensuring that all users can interact with and understand the displayed data, including those using assistive technologies.
|
|
144
|
-
|
|
145
|
-
By leveraging the Donut Chart component, you can create visually engaging visualizations that effectively communicate data insights to your audience.
|
|
146
|
-
|
|
147
|
-
**Usage: **
|
|
148
|
-
|
|
149
|
-
\`\`\`jsx
|
|
150
|
-
<DonutChart
|
|
151
|
-
classNames={{wrapper: css.donutChartWrap, content: css.donutChartContent}}
|
|
152
|
-
cardTitle="Donut Chart Title"
|
|
153
|
-
centerText="100"
|
|
154
|
-
centerSubtext="Million Users"
|
|
155
|
-
customExportOptions={customExportOptions}
|
|
156
|
-
series={donutChartSeries}
|
|
157
|
-
legend={legendProps}
|
|
158
|
-
headerActions={headerActions}
|
|
159
|
-
/>
|
|
160
|
-
\`\`\`
|
|
161
|
-
\`\`\`css
|
|
162
|
-
// You can style the chart(if required) using the **wrapper className**.
|
|
163
|
-
.donutChartWrap {
|
|
164
|
-
// Your styles here
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
// You can style the center content of the chart(if required) using the **content className**.
|
|
168
|
-
.donutChartContent {
|
|
169
|
-
// Your styles here
|
|
170
|
-
}
|
|
171
|
-
\`\`\`
|
|
172
|
-
|
|
173
|
-
\`\`\`js
|
|
174
|
-
// Custom export options for the DonutChart
|
|
175
|
-
const customExportOptions = [
|
|
176
|
-
EXPORT_OPTIONS.download_as_jpeg,
|
|
177
|
-
EXPORT_OPTIONS.download_as_png,
|
|
178
|
-
EXPORT_OPTIONS.download_as_pdf,
|
|
179
|
-
EXPORT_OPTIONS.download_as_svg,
|
|
180
|
-
];
|
|
181
|
-
|
|
182
|
-
// Data series for the DonutChart
|
|
183
|
-
const donutChartSeries = [
|
|
184
|
-
{
|
|
185
|
-
name: 'Data Value',
|
|
186
|
-
data: [
|
|
187
|
-
{
|
|
188
|
-
name: 'Chrome',
|
|
189
|
-
y: 40,
|
|
190
|
-
},
|
|
191
|
-
{
|
|
192
|
-
name: 'Edge',
|
|
193
|
-
y: 12,
|
|
194
|
-
},
|
|
195
|
-
{
|
|
196
|
-
name: 'Firefox',
|
|
197
|
-
y: 16,
|
|
198
|
-
},
|
|
199
|
-
{
|
|
200
|
-
name: 'Safari',
|
|
201
|
-
y: 10,
|
|
202
|
-
},
|
|
203
|
-
{
|
|
204
|
-
name: 'Others',
|
|
205
|
-
y: 12,
|
|
206
|
-
},
|
|
207
|
-
],
|
|
208
|
-
},
|
|
209
|
-
];
|
|
210
|
-
|
|
211
|
-
// Legend configuration options
|
|
212
|
-
const legendProps = {
|
|
213
|
-
enabled: true,
|
|
214
|
-
};
|
|
215
|
-
|
|
216
|
-
// Custom header actions, specified by user
|
|
217
|
-
const headerActions = <>
|
|
218
|
-
<Button
|
|
219
|
-
children="Download"
|
|
220
|
-
iconLeftName="cloud-arrow-down"
|
|
221
|
-
onClick={() => {}}
|
|
222
|
-
size="small"
|
|
223
|
-
type="secondary"
|
|
224
|
-
/>
|
|
225
|
-
</>
|
|
226
|
-
\`\`\`
|
|
227
|
-
`,
|
|
228
|
-
},
|
|
229
|
-
},
|
|
230
|
-
storySource: {
|
|
231
|
-
componentPath: '/src/components/DonutChart/DonutChart.jsx',
|
|
232
|
-
},
|
|
233
|
-
},
|
|
234
|
-
};
|
|
235
|
-
|
|
236
|
-
const donutChartSeries = [
|
|
237
|
-
{
|
|
238
|
-
name: 'Data Value',
|
|
239
|
-
data: [
|
|
240
|
-
{
|
|
241
|
-
name: 'Chrome',
|
|
242
|
-
y: 40,
|
|
243
|
-
},
|
|
244
|
-
{
|
|
245
|
-
name: 'Edge',
|
|
246
|
-
y: 12,
|
|
247
|
-
},
|
|
248
|
-
{
|
|
249
|
-
name: 'Firefox',
|
|
250
|
-
y: 16,
|
|
251
|
-
},
|
|
252
|
-
{
|
|
253
|
-
name: 'Safari',
|
|
254
|
-
y: 10,
|
|
255
|
-
},
|
|
256
|
-
{
|
|
257
|
-
name: 'Others',
|
|
258
|
-
y: 12,
|
|
259
|
-
},
|
|
260
|
-
],
|
|
261
|
-
},
|
|
262
|
-
];
|
|
263
|
-
|
|
264
|
-
const customExportOptions = [
|
|
265
|
-
EXPORT_OPTIONS.download_as_jpeg,
|
|
266
|
-
EXPORT_OPTIONS.download_as_png,
|
|
267
|
-
EXPORT_OPTIONS.download_as_pdf,
|
|
268
|
-
EXPORT_OPTIONS.download_as_svg,
|
|
269
|
-
];
|
|
270
|
-
|
|
271
|
-
const legendProps = {
|
|
272
|
-
enabled: true,
|
|
273
|
-
} as const;
|
|
274
|
-
|
|
275
|
-
export const _DonutChart = (args: DonutChartProps) => (<div className={css.container}>
|
|
276
|
-
<DonutChart
|
|
277
|
-
{...args}
|
|
278
|
-
headerActions={
|
|
279
|
-
<Button
|
|
280
|
-
children="Download"
|
|
281
|
-
iconLeftName="cloud-arrow-down"
|
|
282
|
-
onClick={() => {}}
|
|
283
|
-
size="small"
|
|
284
|
-
type="secondary"
|
|
285
|
-
/>
|
|
286
|
-
}
|
|
287
|
-
/>
|
|
288
|
-
</div>);
|
|
289
|
-
|
|
290
|
-
_DonutChart.args = {
|
|
291
|
-
classNames: {wrapper: css.donutChartWrap, content: css.donutChartContent},
|
|
292
|
-
cardTitle: 'Donut Chart Title',
|
|
293
|
-
centerText: '100',
|
|
294
|
-
centerSubtext: 'Million Users',
|
|
295
|
-
customExportOptions,
|
|
296
|
-
series: donutChartSeries,
|
|
297
|
-
legend: legendProps,
|
|
298
|
-
};
|
|
299
|
-
|
|
300
|
-
const EmptyData = () => (<EmptyState
|
|
301
|
-
classNames={{
|
|
302
|
-
wrapper: css.emptyDataWrapper,
|
|
303
|
-
description: css.emptyDataDescription,
|
|
304
|
-
}}
|
|
305
|
-
imageVariant="chart"
|
|
306
|
-
title="Your chart is waiting for data!"
|
|
307
|
-
description="Once data is available, you’ll see insights here. Try adjusting filters or selecting a different time range."
|
|
308
|
-
/>);
|
|
309
|
-
|
|
310
|
-
export const _DonutChartWithEmptyData = (args: DonutChartProps) => (<div className={css.container}>
|
|
311
|
-
<DonutChart
|
|
312
|
-
{...args}
|
|
313
|
-
headerActions={
|
|
314
|
-
<Button
|
|
315
|
-
children="Download"
|
|
316
|
-
iconLeftName="cloud-arrow-down"
|
|
317
|
-
onClick={() => {}}
|
|
318
|
-
size="small"
|
|
319
|
-
type="secondary"
|
|
320
|
-
/>
|
|
321
|
-
}
|
|
322
|
-
/>
|
|
323
|
-
</div>);
|
|
324
|
-
|
|
325
|
-
_DonutChartWithEmptyData.args = {
|
|
326
|
-
classNames: {wrapper: css.donutChartWrap, content: css.donutChartContent},
|
|
327
|
-
cardTitle: 'Donut Chart Title',
|
|
328
|
-
centerText: '100',
|
|
329
|
-
centerSubtext: 'Million Users',
|
|
330
|
-
customExportOptions,
|
|
331
|
-
series: donutChartSeries,
|
|
332
|
-
legend: legendProps,
|
|
333
|
-
hasEmptyData: true,
|
|
334
|
-
emptyText: (<EmptyData /> as React.ReactElement<React.ComponentProps<typeof EmptyData>>),
|
|
335
|
-
};
|
|
336
|
-
|
|
337
|
-
export const _DonutChartWithDrilldown = (args: DonutChartProps) => (<div className={css.container}>
|
|
338
|
-
<DonutChart
|
|
339
|
-
{...args}
|
|
340
|
-
headerActions={
|
|
341
|
-
<Button
|
|
342
|
-
children="Download"
|
|
343
|
-
iconLeftName="cloud-arrow-down"
|
|
344
|
-
onClick={() => {}}
|
|
345
|
-
size="small"
|
|
346
|
-
type="secondary"
|
|
347
|
-
/>
|
|
348
|
-
}
|
|
349
|
-
/>
|
|
350
|
-
</div>);
|
|
351
|
-
|
|
352
|
-
const donutChart2Series = [
|
|
353
|
-
{
|
|
354
|
-
type: 'pie',
|
|
355
|
-
name: 'Donut Chart',
|
|
356
|
-
innerSize: '50%',
|
|
357
|
-
data: [
|
|
358
|
-
{
|
|
359
|
-
name: 'Chrome',
|
|
360
|
-
y: 25,
|
|
361
|
-
drilldown: 'chrome',
|
|
362
|
-
},
|
|
363
|
-
{
|
|
364
|
-
name: 'Firefox',
|
|
365
|
-
y: 20,
|
|
366
|
-
drilldown: 'firefox',
|
|
367
|
-
},
|
|
368
|
-
{
|
|
369
|
-
name: 'Safari',
|
|
370
|
-
y: 15,
|
|
371
|
-
drilldown: 'safari',
|
|
372
|
-
},
|
|
373
|
-
],
|
|
374
|
-
},
|
|
375
|
-
];
|
|
376
|
-
|
|
377
|
-
const donutChart2SeriesDrilldown = {
|
|
378
|
-
series: [
|
|
379
|
-
{
|
|
380
|
-
id: 'chrome',
|
|
381
|
-
data: [
|
|
382
|
-
{name: 'Version 80', y: 10},
|
|
383
|
-
{name: 'Version 81', y: 15},
|
|
384
|
-
],
|
|
385
|
-
},
|
|
386
|
-
{
|
|
387
|
-
id: 'firefox',
|
|
388
|
-
data: [
|
|
389
|
-
{name: 'Version 75', y: 8},
|
|
390
|
-
{name: 'Version 76', y: 12},
|
|
391
|
-
],
|
|
392
|
-
},
|
|
393
|
-
{
|
|
394
|
-
id: 'safari',
|
|
395
|
-
data: [
|
|
396
|
-
{name: 'Version 12', y: 5},
|
|
397
|
-
{name: 'Version 13', y: 10},
|
|
398
|
-
],
|
|
399
|
-
},
|
|
400
|
-
],
|
|
401
|
-
} as const;
|
|
402
|
-
|
|
403
|
-
const legendProps2 = {
|
|
404
|
-
enabled: false,
|
|
405
|
-
} as const;
|
|
406
|
-
|
|
407
|
-
_DonutChartWithDrilldown.args = {
|
|
408
|
-
classNames: {wrapper: css.donutChartWrap, content: css.donutChartContent},
|
|
409
|
-
cardTitle: 'Donut Chart With Drilldown Title',
|
|
410
|
-
centerText: '100',
|
|
411
|
-
centerSubtext: 'Million Users',
|
|
412
|
-
series: donutChart2Series,
|
|
413
|
-
drilldown: donutChart2SeriesDrilldown,
|
|
414
|
-
legend: legendProps2,
|
|
415
|
-
};
|
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import Highcharts from 'highcharts';
|
|
3
|
-
import HighchartsReact from 'highcharts-react-official';
|
|
4
|
-
|
|
5
|
-
import type {
|
|
6
|
-
ChartOptions,
|
|
7
|
-
Drilldown,
|
|
8
|
-
LegendOptionsType,
|
|
9
|
-
SeriesOptionsType,
|
|
10
|
-
} from '../../../types/charts';
|
|
11
|
-
import {
|
|
12
|
-
getDataVizColor,
|
|
13
|
-
getDonutChartOptions,
|
|
14
|
-
mergeChartUserOptions,
|
|
15
|
-
} from '../../../utils/charts';
|
|
16
|
-
import classify from '../../../utils/classify';
|
|
17
|
-
import {
|
|
18
|
-
ChartWrapperClassNames,
|
|
19
|
-
ExportOptionType,
|
|
20
|
-
ChartWrapper,
|
|
21
|
-
} from '../ChartWrapper';
|
|
22
|
-
|
|
23
|
-
import typographyCss from '../../../styles/typography.module.css';
|
|
24
|
-
import css from './DonutChart.module.css';
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
export type ClassNames = Readonly<((ChartWrapperClassNames) & {
|
|
28
|
-
highChart?: string;
|
|
29
|
-
subtitleClassNames?: SubtitleClassNames;
|
|
30
|
-
})>;
|
|
31
|
-
|
|
32
|
-
export type SubtitleClassNames = {
|
|
33
|
-
wrapper?: string;
|
|
34
|
-
text?: string;
|
|
35
|
-
subtext?: string;
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
export type DonutChartProps = ((ChartOptions) & {
|
|
39
|
-
isLoading?: boolean;
|
|
40
|
-
classNames?: ClassNames;
|
|
41
|
-
cardTitle?: React.ReactNode;
|
|
42
|
-
customExportOptions?: Array<ExportOptionType> | null;
|
|
43
|
-
headerActions?: React.ReactNode;
|
|
44
|
-
centerText?: string;
|
|
45
|
-
centerSubtext?: string;
|
|
46
|
-
series: Array<SeriesOptionsType>;
|
|
47
|
-
drilldown?: Drilldown;
|
|
48
|
-
legend?: LegendOptionsType;
|
|
49
|
-
hasEmptyData?: boolean;
|
|
50
|
-
emptyText?: React.ReactNode;
|
|
51
|
-
});
|
|
52
|
-
|
|
53
|
-
export const DonutChart = (
|
|
54
|
-
{
|
|
55
|
-
isLoading,
|
|
56
|
-
classNames,
|
|
57
|
-
cardTitle,
|
|
58
|
-
customExportOptions,
|
|
59
|
-
headerActions,
|
|
60
|
-
series,
|
|
61
|
-
drilldown,
|
|
62
|
-
legend,
|
|
63
|
-
centerText,
|
|
64
|
-
centerSubtext,
|
|
65
|
-
hasEmptyData,
|
|
66
|
-
emptyText,
|
|
67
|
-
...userOptions
|
|
68
|
-
}: DonutChartProps,
|
|
69
|
-
) => {
|
|
70
|
-
// @ts-ignore - TS2554 - Expected 1 arguments, but got 0.
|
|
71
|
-
const chartRef = React.useRef();
|
|
72
|
-
|
|
73
|
-
const {highChart, subtitleClassNames, ...wrapperClassNames} =
|
|
74
|
-
classNames || {};
|
|
75
|
-
|
|
76
|
-
const defaultCenterHTML = `<span class=${classify(
|
|
77
|
-
css.subtitleWrap,
|
|
78
|
-
subtitleClassNames?.wrapper,
|
|
79
|
-
)}>
|
|
80
|
-
<span class="${classify(
|
|
81
|
-
typographyCss.jumboMedium,
|
|
82
|
-
css.subtitleText,
|
|
83
|
-
subtitleClassNames?.text,
|
|
84
|
-
)}">
|
|
85
|
-
${centerText ? centerText : ''}
|
|
86
|
-
</span>
|
|
87
|
-
<span class="${classify(
|
|
88
|
-
typographyCss.bodySmall,
|
|
89
|
-
css.subtitleSubtext,
|
|
90
|
-
subtitleClassNames?.subtext,
|
|
91
|
-
)}">
|
|
92
|
-
${centerSubtext ? centerSubtext : ''}
|
|
93
|
-
</span>
|
|
94
|
-
<span>`;
|
|
95
|
-
|
|
96
|
-
const donutChartSeries = series.map((seriesItem) => ({
|
|
97
|
-
...seriesItem,
|
|
98
|
-
data: seriesItem.data.map((dataItem, index) => ({
|
|
99
|
-
...dataItem,
|
|
100
|
-
color: getDataVizColor(index),
|
|
101
|
-
})),
|
|
102
|
-
}));
|
|
103
|
-
|
|
104
|
-
const addColorToDrilldownSeries = (series: undefined | Array<SeriesOptionsType>) =>
|
|
105
|
-
series?.map((seriesItem: SeriesOptionsType) => ({
|
|
106
|
-
...seriesItem,
|
|
107
|
-
data: seriesItem.data.map((dataItem, index) => ({
|
|
108
|
-
...dataItem,
|
|
109
|
-
color: getDataVizColor(index),
|
|
110
|
-
})),
|
|
111
|
-
}));
|
|
112
|
-
|
|
113
|
-
const donutDrilldown = drilldown
|
|
114
|
-
? {
|
|
115
|
-
...drilldown,
|
|
116
|
-
series: addColorToDrilldownSeries(drilldown.series),
|
|
117
|
-
breadcrumbs: {floating: false},
|
|
118
|
-
}
|
|
119
|
-
: {};
|
|
120
|
-
|
|
121
|
-
const defaultLineChartOptions = getDonutChartOptions({
|
|
122
|
-
legend,
|
|
123
|
-
defaultCenterHTML,
|
|
124
|
-
});
|
|
125
|
-
|
|
126
|
-
const chartOptions = mergeChartUserOptions(defaultLineChartOptions, {
|
|
127
|
-
series: donutChartSeries,
|
|
128
|
-
drilldown: donutDrilldown,
|
|
129
|
-
...userOptions,
|
|
130
|
-
});
|
|
131
|
-
|
|
132
|
-
return (
|
|
133
|
-
<ChartWrapper
|
|
134
|
-
isLoading={isLoading}
|
|
135
|
-
title={cardTitle}
|
|
136
|
-
// @ts-ignore - TS2769 - No overload matches this call.
|
|
137
|
-
ref={chartRef}
|
|
138
|
-
customExportOptions={customExportOptions}
|
|
139
|
-
headerActions={headerActions}
|
|
140
|
-
classNames={wrapperClassNames}
|
|
141
|
-
hasEmptyData={hasEmptyData}
|
|
142
|
-
emptyText={emptyText}
|
|
143
|
-
>
|
|
144
|
-
<HighchartsReact
|
|
145
|
-
highcharts={Highcharts}
|
|
146
|
-
containerProps={{
|
|
147
|
-
className: classify(css.donutChartContainer, highChart),
|
|
148
|
-
}}
|
|
149
|
-
// @ts-ignore - TS2322 - Type 'RefObject<unknown>' is not assignable to type 'Ref<HighchartsReactRefObject> | undefined'.
|
|
150
|
-
ref={chartRef}
|
|
151
|
-
options={chartOptions}
|
|
152
|
-
/>
|
|
153
|
-
</ChartWrapper>
|
|
154
|
-
);
|
|
155
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './DonutChart';
|