@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,317 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
|
|
3
|
-
import {BodyLarge} from '../Text';
|
|
4
|
-
|
|
5
|
-
import type {ShimmerProps} from './Shimmer';
|
|
6
|
-
import {KPIShimmer, Shimmer, SHIMMER_TYPES, ShimmerWrapper} from './Shimmer';
|
|
7
|
-
|
|
8
|
-
import css from './Shimmer.stories.module.css';
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const shimmerTypeOptions: Array<unknown> = [...Object.values(SHIMMER_TYPES)];
|
|
12
|
-
|
|
13
|
-
export default {
|
|
14
|
-
tags: ['autodocs'],
|
|
15
|
-
title: 'Components/Shimmer',
|
|
16
|
-
component: Shimmer,
|
|
17
|
-
argTypes: {
|
|
18
|
-
classNames: {
|
|
19
|
-
description: 'Provide an optional className to be applied to the wrapper',
|
|
20
|
-
control: {
|
|
21
|
-
type: 'object',
|
|
22
|
-
},
|
|
23
|
-
table: {
|
|
24
|
-
type: {
|
|
25
|
-
summary: '{wrapper?: string}',
|
|
26
|
-
},
|
|
27
|
-
},
|
|
28
|
-
},
|
|
29
|
-
show: {
|
|
30
|
-
description:
|
|
31
|
-
'Determine whether to show the shimmer effect. Shimmer effect is visible by default',
|
|
32
|
-
control: {
|
|
33
|
-
type: 'boolean',
|
|
34
|
-
},
|
|
35
|
-
table: {
|
|
36
|
-
type: {
|
|
37
|
-
summary: 'boolean',
|
|
38
|
-
},
|
|
39
|
-
defaultValue: {summary: 'true'},
|
|
40
|
-
},
|
|
41
|
-
},
|
|
42
|
-
width: {
|
|
43
|
-
description: 'Width of the shimmer effect',
|
|
44
|
-
control: {
|
|
45
|
-
type: 'number',
|
|
46
|
-
},
|
|
47
|
-
table: {
|
|
48
|
-
type: {
|
|
49
|
-
summary: 'number | string',
|
|
50
|
-
},
|
|
51
|
-
defaultValue: {summary: 'size40'},
|
|
52
|
-
},
|
|
53
|
-
},
|
|
54
|
-
height: {
|
|
55
|
-
description: 'Height of the shimmer effect',
|
|
56
|
-
control: {
|
|
57
|
-
type: 'number',
|
|
58
|
-
},
|
|
59
|
-
table: {
|
|
60
|
-
type: {
|
|
61
|
-
summary: 'number | string',
|
|
62
|
-
},
|
|
63
|
-
defaultValue: {summary: 'sizeFluid'},
|
|
64
|
-
},
|
|
65
|
-
},
|
|
66
|
-
type: {
|
|
67
|
-
description: 'Type of the shimmer effect',
|
|
68
|
-
control: {
|
|
69
|
-
type: 'select',
|
|
70
|
-
},
|
|
71
|
-
options: shimmerTypeOptions,
|
|
72
|
-
table: {
|
|
73
|
-
type: {
|
|
74
|
-
summary: 'enum',
|
|
75
|
-
},
|
|
76
|
-
defaultValue: {summary: 'text'},
|
|
77
|
-
},
|
|
78
|
-
},
|
|
79
|
-
children: {
|
|
80
|
-
description: `Children to be rendered inside the shimmer effect. This is rendered when shimmer's \`show\` is set to \`false\``,
|
|
81
|
-
control: {
|
|
82
|
-
type: 'object',
|
|
83
|
-
},
|
|
84
|
-
table: {
|
|
85
|
-
type: {
|
|
86
|
-
summary: 'React.ReactNode',
|
|
87
|
-
},
|
|
88
|
-
},
|
|
89
|
-
},
|
|
90
|
-
borderRadius: {
|
|
91
|
-
description: 'Border radius of the shimmer effect',
|
|
92
|
-
control: {
|
|
93
|
-
type: 'number',
|
|
94
|
-
},
|
|
95
|
-
table: {
|
|
96
|
-
type: {
|
|
97
|
-
summary: 'number | string',
|
|
98
|
-
},
|
|
99
|
-
defaultValue: {summary: 'borderRadiusXSmall'},
|
|
100
|
-
},
|
|
101
|
-
},
|
|
102
|
-
},
|
|
103
|
-
parameters: {
|
|
104
|
-
docs: {
|
|
105
|
-
subtitle: 'Generates a Shimmer component.',
|
|
106
|
-
description: {
|
|
107
|
-
component: `
|
|
108
|
-
\`\`\`js
|
|
109
|
-
import { Shimmer } from "@spaced-out/ui-design-system/lib/components/Shimmer";
|
|
110
|
-
\`\`\`
|
|
111
|
-
The Shimmer component is a versatile and reusable React component designed to create a shimmering placeholder effect,
|
|
112
|
-
typically used to indicate loading content. This component is built with various configuration options, allowing it to adapt
|
|
113
|
-
to different use cases such as text placeholders, rounded shapes, circular shapes, and rectangular shapes. The shimmering effect
|
|
114
|
-
provides a visual cue that content is being loaded or is in the process of being fetched, enhancing the user experience by
|
|
115
|
-
giving a sense of ongoing activity.
|
|
116
|
-
|
|
117
|
-
**Important Note:**
|
|
118
|
-
- While using **text** shimmer, make sure you wrap the text inside a
|
|
119
|
-
\`<ShimmerWrapper></ShimmerWrapper>\` to ensure the shimmer effect is applied correctly and the layout doesn't break.
|
|
120
|
-
|
|
121
|
-
\`\`\`jsx
|
|
122
|
-
<BodyLarge>
|
|
123
|
-
<ShimmerWrapper>
|
|
124
|
-
Hello{' '}
|
|
125
|
-
<Shimmer width={100}>
|
|
126
|
-
{name},{' '}
|
|
127
|
-
</Shimmer>
|
|
128
|
-
How are you?
|
|
129
|
-
</ShimmerWrapper>
|
|
130
|
-
</BodyLarge>
|
|
131
|
-
\`\`\`
|
|
132
|
-
|
|
133
|
-
**Usage: **
|
|
134
|
-
|
|
135
|
-
\`\`\`jsx
|
|
136
|
-
<Shimmer
|
|
137
|
-
type="circular"
|
|
138
|
-
width={100}
|
|
139
|
-
height={100}
|
|
140
|
-
classNames={{wrapper: css.profilePic}}
|
|
141
|
-
></Shimmer>
|
|
142
|
-
|
|
143
|
-
<Shimmer type="text" width={200} height={25}></Shimmer>
|
|
144
|
-
|
|
145
|
-
<Shimmer type="rounded" width={60} height={60}></Shimmer>
|
|
146
|
-
\`\`\`
|
|
147
|
-
`,
|
|
148
|
-
},
|
|
149
|
-
},
|
|
150
|
-
storySource: {
|
|
151
|
-
componentPath: '/src/components/Shimmer/Shimmer.jsx',
|
|
152
|
-
},
|
|
153
|
-
},
|
|
154
|
-
};
|
|
155
|
-
|
|
156
|
-
export const _TextFragmentShimmer = (args: ShimmerProps) => {
|
|
157
|
-
const variable1 = 'Async Await ';
|
|
158
|
-
const variable2 = 'Machine Learning';
|
|
159
|
-
const variable3 = 'Git Repository';
|
|
160
|
-
|
|
161
|
-
return (
|
|
162
|
-
<div className={css.container}>
|
|
163
|
-
<div className={css.action}>
|
|
164
|
-
<BodyLarge>
|
|
165
|
-
<ShimmerWrapper>
|
|
166
|
-
Understanding <Shimmer {...args}>{variable1}</Shimmer> is crucial
|
|
167
|
-
for asynchronous operations. Training{' '}
|
|
168
|
-
<Shimmer {...args}>{variable2}</Shimmer> is like trying to teach
|
|
169
|
-
your cat to bark—it's challenging, but sometimes it surprises you.
|
|
170
|
-
Pushing to the wrong <Shimmer {...args}>{variable3}</Shimmer> is
|
|
171
|
-
like yelling at your own mirror—it reflects poorly on your code
|
|
172
|
-
hygiene!
|
|
173
|
-
</ShimmerWrapper>
|
|
174
|
-
</BodyLarge>
|
|
175
|
-
</div>
|
|
176
|
-
</div>
|
|
177
|
-
);
|
|
178
|
-
};
|
|
179
|
-
|
|
180
|
-
_TextFragmentShimmer.args = {
|
|
181
|
-
width: 89,
|
|
182
|
-
show: true,
|
|
183
|
-
};
|
|
184
|
-
|
|
185
|
-
export const _MultilineTextShimmer = (args: ShimmerProps) => (<div className={css.container}>
|
|
186
|
-
<div className={css.action}>
|
|
187
|
-
<Shimmer {...args}></Shimmer>
|
|
188
|
-
</div>
|
|
189
|
-
<div className={css.action}>
|
|
190
|
-
<Shimmer {...args}></Shimmer>
|
|
191
|
-
</div>
|
|
192
|
-
<div className={css.action}>
|
|
193
|
-
<Shimmer {...args}></Shimmer>
|
|
194
|
-
</div>
|
|
195
|
-
<div className={css.action}>
|
|
196
|
-
<Shimmer {...args}></Shimmer>
|
|
197
|
-
</div>
|
|
198
|
-
<div className={css.action}>
|
|
199
|
-
<Shimmer {...args}></Shimmer>
|
|
200
|
-
</div>
|
|
201
|
-
</div>);
|
|
202
|
-
|
|
203
|
-
_MultilineTextShimmer.args = {
|
|
204
|
-
show: true,
|
|
205
|
-
width: 500,
|
|
206
|
-
height: 20,
|
|
207
|
-
};
|
|
208
|
-
|
|
209
|
-
export const _RoundedShimmer = (args: ShimmerProps) => (<div className={css.container}>
|
|
210
|
-
<div className={css.action}>
|
|
211
|
-
<Shimmer {...args}></Shimmer>
|
|
212
|
-
</div>
|
|
213
|
-
</div>);
|
|
214
|
-
|
|
215
|
-
_RoundedShimmer.args = {
|
|
216
|
-
show: true,
|
|
217
|
-
width: 300,
|
|
218
|
-
height: 200,
|
|
219
|
-
type: 'rounded',
|
|
220
|
-
};
|
|
221
|
-
|
|
222
|
-
export const _CircularShimmer = (args: ShimmerProps) => (<div className={css.container}>
|
|
223
|
-
<div className={css.action}>
|
|
224
|
-
<Shimmer {...args}></Shimmer>
|
|
225
|
-
</div>
|
|
226
|
-
</div>);
|
|
227
|
-
|
|
228
|
-
_CircularShimmer.args = {
|
|
229
|
-
show: true,
|
|
230
|
-
width: 200,
|
|
231
|
-
height: 200,
|
|
232
|
-
type: 'circular',
|
|
233
|
-
};
|
|
234
|
-
|
|
235
|
-
/**
|
|
236
|
-
* The KPIShimmer component is a React component used to display placeholder content with a shimmering effect,
|
|
237
|
-
* typically utilized as a loading indicator for KPIs (Key Performance Indicators).
|
|
238
|
-
* It provides flexibility to configure various parts like text and icons.
|
|
239
|
-
*
|
|
240
|
-
* Props:
|
|
241
|
-
*
|
|
242
|
-
* - `textWidth` (number | string) [optional]:
|
|
243
|
-
* - Specifies the width of the shimmering text placeholders.
|
|
244
|
-
* - The default value is `150`.
|
|
245
|
-
* - Examples: `textWidth={200}`
|
|
246
|
-
*
|
|
247
|
-
* - `hasTopContent` (boolean) [optional]:
|
|
248
|
-
* - Determines if the top text content should be displayed.
|
|
249
|
-
* - The default value is `true`.
|
|
250
|
-
* - Example: `hasTopContent={false}`
|
|
251
|
-
*
|
|
252
|
-
* - `hasMiddleContent` (boolean) [optional]:
|
|
253
|
-
* - Determines if the middle text content should be displayed.
|
|
254
|
-
* - The default value is `true`.
|
|
255
|
-
* - Example: `hasMiddleContent={false}`
|
|
256
|
-
*
|
|
257
|
-
* - `hasBottomContent` (boolean) [optional]:
|
|
258
|
-
* - Determines if the bottom text content should be displayed.
|
|
259
|
-
* - The default value is `true`.
|
|
260
|
-
* - Example: `hasBottomContent={false}`
|
|
261
|
-
*
|
|
262
|
-
* - `hasIcon` (boolean) [optional]:
|
|
263
|
-
* - Determines if an icon should be displayed at the top.
|
|
264
|
-
* - The default value is `true`.
|
|
265
|
-
* - Example: `hasIcon={false}`
|
|
266
|
-
*
|
|
267
|
-
* - `classNames` (object) [optional]:
|
|
268
|
-
* - Adds a className to the parent wrapper
|
|
269
|
-
*
|
|
270
|
-
* Usage:
|
|
271
|
-
*
|
|
272
|
-
* ```jsx
|
|
273
|
-
* import { KPIShimmer } from 'your-component-library';
|
|
274
|
-
*
|
|
275
|
-
* const MyComponent = () => (
|
|
276
|
-
* <KPIShimmer
|
|
277
|
-
* textWidth={200}
|
|
278
|
-
* hasTopContent={true}
|
|
279
|
-
* hasMiddleContent={false}
|
|
280
|
-
* hasBottomContent={true}
|
|
281
|
-
* hasIcon={true}
|
|
282
|
-
* />
|
|
283
|
-
* );
|
|
284
|
-
* ```
|
|
285
|
-
*
|
|
286
|
-
* Example Scenarios:
|
|
287
|
-
*
|
|
288
|
-
* 1. Display only top and bottom content with custom text width:
|
|
289
|
-
* ```jsx
|
|
290
|
-
* <KPIShimmer textWidth={75} hasMiddleContent={false} />
|
|
291
|
-
* ```
|
|
292
|
-
*
|
|
293
|
-
* 2. Display no icon and only middle content:
|
|
294
|
-
* ```jsx
|
|
295
|
-
* <KPIShimmer hasIcon={false} hasTopContent={false} hasBottomContent={false} />
|
|
296
|
-
* ```
|
|
297
|
-
*/
|
|
298
|
-
export const _KPIShimmer = () => (<div className={css.container}>
|
|
299
|
-
<KPIShimmer textWidth={200}></KPIShimmer>
|
|
300
|
-
</div>);
|
|
301
|
-
|
|
302
|
-
export const _CardShimmer = () => (<div className={css.container}>
|
|
303
|
-
<div className={css.box}>
|
|
304
|
-
<div className={css.section}>
|
|
305
|
-
<Shimmer
|
|
306
|
-
type="circular"
|
|
307
|
-
width={100}
|
|
308
|
-
height={100}
|
|
309
|
-
classNames={{wrapper: css.profilePic}}
|
|
310
|
-
></Shimmer>
|
|
311
|
-
<Shimmer type="text" width={200} height={25}></Shimmer>
|
|
312
|
-
<Shimmer type="text" width={200} height={15}></Shimmer>
|
|
313
|
-
<Shimmer type="text" width={200} height={15}></Shimmer>
|
|
314
|
-
<Shimmer type="text" width={200} height={15}></Shimmer>
|
|
315
|
-
</div>
|
|
316
|
-
</div>
|
|
317
|
-
</div>);
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
import {Flow} from 'flow-to-typescript-codemod';
|
|
2
|
-
|
|
3
|
-
import * as React from 'react';
|
|
4
|
-
|
|
5
|
-
import {
|
|
6
|
-
borderRadiusCircle,
|
|
7
|
-
borderRadiusMedium,
|
|
8
|
-
borderRadiusNone,
|
|
9
|
-
borderRadiusXSmall,
|
|
10
|
-
} from '../../styles/variables/_border';
|
|
11
|
-
import {size40, sizeFluid} from '../../styles/variables/_size';
|
|
12
|
-
import classify from '../../utils/classify';
|
|
13
|
-
import {appendPx} from '../../utils/string';
|
|
14
|
-
|
|
15
|
-
import css from './Shimmer.module.css';
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
type ClassNames = Readonly<{
|
|
19
|
-
wrapper?: string;
|
|
20
|
-
}>;
|
|
21
|
-
|
|
22
|
-
export const SHIMMER_TYPES = Object.freeze({
|
|
23
|
-
text: 'text',
|
|
24
|
-
rounded: 'rounded',
|
|
25
|
-
circular: 'circular',
|
|
26
|
-
rectangular: 'rectangular',
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
export const SHIMMER_TYPE_TO_BORDER_RADIUS_MAP = Object.freeze({
|
|
30
|
-
text: borderRadiusXSmall,
|
|
31
|
-
rounded: borderRadiusMedium,
|
|
32
|
-
circular: borderRadiusCircle,
|
|
33
|
-
rectangular: borderRadiusNone,
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
export type ShimmerType = typeof SHIMMER_TYPES[keyof typeof SHIMMER_TYPES];
|
|
37
|
-
|
|
38
|
-
export type ShimmerProps = {
|
|
39
|
-
classNames?: ClassNames;
|
|
40
|
-
show?: boolean;
|
|
41
|
-
type?: ShimmerType;
|
|
42
|
-
width?: number | string;
|
|
43
|
-
height?: number | string;
|
|
44
|
-
borderRadius?: number | string;
|
|
45
|
-
children?: React.ReactNode;
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
export type ShimmerWrapperProps = {
|
|
49
|
-
children?: React.ReactNode;
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* Note(Nishant): ShimmerWrapper is a wrapper component for Shimmer component. This should only be used for Text based Shimmers
|
|
54
|
-
* This solves a very annoying problem with out text components where the display prop is set to flex.
|
|
55
|
-
* Genesis assumes that every element is flexible for simplicity and for text text shimmers to work in use cases
|
|
56
|
-
* where text wraps across multiple lines, we need to wrap the shimmer in a span element.
|
|
57
|
-
* to avoid the misuse where consumers use there own / other block level components, we have this wrapper.
|
|
58
|
-
* This would ensure the layout remains same even when you toggle the shimmer to show your actual content
|
|
59
|
-
* @param {React.ReactNode} children - The children to be rendered
|
|
60
|
-
*/
|
|
61
|
-
export const ShimmerWrapper = (
|
|
62
|
-
{
|
|
63
|
-
children,
|
|
64
|
-
}: ShimmerWrapperProps,
|
|
65
|
-
): React.ReactElement<React.ComponentProps<'span'>> => <span>{children}</span>;
|
|
66
|
-
|
|
67
|
-
export const Shimmer: Flow.AbstractComponent<ShimmerProps, HTMLSpanElement> =
|
|
68
|
-
React.forwardRef<HTMLSpanElement, ShimmerProps>((
|
|
69
|
-
{
|
|
70
|
-
classNames,
|
|
71
|
-
show = true,
|
|
72
|
-
type = SHIMMER_TYPES.text,
|
|
73
|
-
children,
|
|
74
|
-
width = size40,
|
|
75
|
-
height = sizeFluid,
|
|
76
|
-
borderRadius,
|
|
77
|
-
}: ShimmerProps,
|
|
78
|
-
ref,
|
|
79
|
-
) => {
|
|
80
|
-
if (!show) {
|
|
81
|
-
return <>{children}</>;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
const borderRadiusValue =
|
|
85
|
-
// @ts-ignore - TS7053 - Element implicitly has an 'any' type because expression of type 'string' can't be used to index type 'Readonly<{ text: string; rounded: string; circular: string; rectangular: string; }>'.
|
|
86
|
-
borderRadius ?? SHIMMER_TYPE_TO_BORDER_RADIUS_MAP[type];
|
|
87
|
-
|
|
88
|
-
return (
|
|
89
|
-
<span
|
|
90
|
-
ref={ref}
|
|
91
|
-
data-testid="Shimmer"
|
|
92
|
-
className={classify(css.wrapper, css[type], classNames?.wrapper)}
|
|
93
|
-
style={{
|
|
94
|
-
'--width': appendPx(width),
|
|
95
|
-
'--height': appendPx(height),
|
|
96
|
-
'--border-radius': appendPx(borderRadiusValue),
|
|
97
|
-
}}
|
|
98
|
-
></span>
|
|
99
|
-
);
|
|
100
|
-
});
|
|
101
|
-
|
|
102
|
-
type KPIShimmerClassNames = Readonly<{
|
|
103
|
-
wrapper?: string;
|
|
104
|
-
icon?: string;
|
|
105
|
-
text?: string;
|
|
106
|
-
}>;
|
|
107
|
-
|
|
108
|
-
export type KPIShimmerProps = {
|
|
109
|
-
textWidth?: number | string;
|
|
110
|
-
hasTopContent?: boolean;
|
|
111
|
-
hasMiddleContent?: boolean;
|
|
112
|
-
hasBottomContent?: boolean;
|
|
113
|
-
hasIcon?: boolean;
|
|
114
|
-
classNames?: KPIShimmerClassNames;
|
|
115
|
-
};
|
|
116
|
-
|
|
117
|
-
export const KPIShimmer = (
|
|
118
|
-
{
|
|
119
|
-
textWidth = 150,
|
|
120
|
-
hasBottomContent = true,
|
|
121
|
-
hasIcon = true,
|
|
122
|
-
hasTopContent = true,
|
|
123
|
-
hasMiddleContent = true,
|
|
124
|
-
classNames,
|
|
125
|
-
}: KPIShimmerProps,
|
|
126
|
-
) => (<div className={classify(css.kpiBox, classNames?.wrapper)}>
|
|
127
|
-
{hasIcon && (
|
|
128
|
-
<div className={classify(css.section, css.iconSection, classNames?.icon)}>
|
|
129
|
-
<Shimmer type="rounded" width={60} height={60}></Shimmer>
|
|
130
|
-
</div>
|
|
131
|
-
)}
|
|
132
|
-
<div className={classify(css.section, classNames?.text)}>
|
|
133
|
-
{hasTopContent && (
|
|
134
|
-
<Shimmer type="text" width={textWidth} height={15}></Shimmer>
|
|
135
|
-
)}
|
|
136
|
-
{hasMiddleContent && (
|
|
137
|
-
<Shimmer type="text" width={textWidth} height={25}></Shimmer>
|
|
138
|
-
)}
|
|
139
|
-
{hasBottomContent && (
|
|
140
|
-
<Shimmer type="text" width={textWidth} height={15}></Shimmer>
|
|
141
|
-
)}
|
|
142
|
-
</div>
|
|
143
|
-
</div>);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './Shimmer';
|
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
|
|
3
|
-
import classify from '../../utils/classify';
|
|
4
|
-
import {STATUS_SEMANTIC} from '../StatusIndicator';
|
|
5
|
-
|
|
6
|
-
import type {SideMenuLinkProps} from './SideMenuLink';
|
|
7
|
-
import {MENU_NAME_LIST, SideMenuLink} from './SideMenuLink';
|
|
8
|
-
|
|
9
|
-
import css from './SideMenuLink.stories.module.css';
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
const pageNameOptions: Array<string> = [...Object.keys(MENU_NAME_LIST)];
|
|
13
|
-
const statusOptions: Array<unknown> = [...Object.values(STATUS_SEMANTIC)];
|
|
14
|
-
|
|
15
|
-
export default {
|
|
16
|
-
tags: ['autodocs'],
|
|
17
|
-
title: 'Components/Side Menu Link',
|
|
18
|
-
argTypes: {
|
|
19
|
-
pageNameKey: {
|
|
20
|
-
options: pageNameOptions,
|
|
21
|
-
type: {required: true},
|
|
22
|
-
description:
|
|
23
|
-
'pageNameKey for different page title. It will have predefined Icon for each page and Page title for different pageNameKey',
|
|
24
|
-
control: {
|
|
25
|
-
type: 'select',
|
|
26
|
-
},
|
|
27
|
-
table: {
|
|
28
|
-
type: {summary: 'enum'},
|
|
29
|
-
defaultValue: {summary: 'dashboard'},
|
|
30
|
-
},
|
|
31
|
-
},
|
|
32
|
-
// controlled selectedValue prop
|
|
33
|
-
selectedValue: {
|
|
34
|
-
name: 'selectedValue',
|
|
35
|
-
description:
|
|
36
|
-
'selectedValue will be compared with value(pageNameKey) of the Side Menu Link to show as selected or unselected',
|
|
37
|
-
table: {
|
|
38
|
-
type: {summary: 'string'},
|
|
39
|
-
},
|
|
40
|
-
control: {
|
|
41
|
-
disable: true,
|
|
42
|
-
},
|
|
43
|
-
},
|
|
44
|
-
customTitle: {
|
|
45
|
-
name: 'customTitle',
|
|
46
|
-
control: {
|
|
47
|
-
type: 'text',
|
|
48
|
-
},
|
|
49
|
-
description:
|
|
50
|
-
'The would override the text fetched from the default page names config',
|
|
51
|
-
table: {
|
|
52
|
-
type: {summary: 'string'},
|
|
53
|
-
},
|
|
54
|
-
},
|
|
55
|
-
opened: {
|
|
56
|
-
description: 'Opened state of Side Menu Link',
|
|
57
|
-
options: [false, true],
|
|
58
|
-
control: 'boolean',
|
|
59
|
-
table: {
|
|
60
|
-
type: {summary: 'boolean'},
|
|
61
|
-
},
|
|
62
|
-
defaultValue: {summary: false},
|
|
63
|
-
},
|
|
64
|
-
status: {
|
|
65
|
-
options: statusOptions,
|
|
66
|
-
description:
|
|
67
|
-
'Status type of a the indicator to indicate any notifications on the menu',
|
|
68
|
-
control: {
|
|
69
|
-
type: 'select',
|
|
70
|
-
},
|
|
71
|
-
table: {
|
|
72
|
-
type: {summary: 'enum'},
|
|
73
|
-
},
|
|
74
|
-
},
|
|
75
|
-
},
|
|
76
|
-
parameters: {
|
|
77
|
-
docs: {
|
|
78
|
-
subtitle: 'Generates a SideMenuLink component.',
|
|
79
|
-
description: {
|
|
80
|
-
component: `
|
|
81
|
-
\`\`\`js
|
|
82
|
-
import { SideMenuLink } from "@spaced-out/ui-design-system/lib/components/SideMenuLink";
|
|
83
|
-
\`\`\`
|
|
84
|
-
SideMenuLink is anatomy component for Side Nav.
|
|
85
|
-
|
|
86
|
-
It is a controlled component, meaning that, you need to pass the selectedValue, if selectedValue is same as value then Menu Link will be shown as selected.
|
|
87
|
-
You will pass a callback function in onChange prop, if Menu Link is clicked this function will be called and you will receive
|
|
88
|
-
the selectedValue which will the pageNameKey prop of Menu Link.
|
|
89
|
-
|
|
90
|
-
**Note: ** If any new product Icon is needed or missing, it should be added in MENU_NAME_LIST of SideMenuLink component
|
|
91
|
-
`,
|
|
92
|
-
},
|
|
93
|
-
},
|
|
94
|
-
storySource: {
|
|
95
|
-
componentPath: '/src/components/SideMenuLink/SideMenuLink.jsx',
|
|
96
|
-
},
|
|
97
|
-
},
|
|
98
|
-
};
|
|
99
|
-
|
|
100
|
-
export const _SideMenuLink = (args: SideMenuLinkProps) => {
|
|
101
|
-
const [selectedValue, setSelectedValue] = React.useState(args.selectedValue);
|
|
102
|
-
// @ts-ignore - TS7019 - Rest parameter 'params' implicitly has an 'any[]' type.
|
|
103
|
-
const onChangeHandler = (e: React.SyntheticEvent<HTMLElement>, ...params): void => {
|
|
104
|
-
// @ts-ignore - TS2556 - A spread argument must either have a tuple type or be passed to a rest parameter.
|
|
105
|
-
args.onChange && args.onChange(e, ...params);
|
|
106
|
-
// @ts-ignore - TS2556 - A spread argument must either have a tuple type or be passed to a rest parameter.
|
|
107
|
-
setSelectedValue(...params);
|
|
108
|
-
};
|
|
109
|
-
|
|
110
|
-
return (
|
|
111
|
-
<div
|
|
112
|
-
className={classify(css.storyContainer, {
|
|
113
|
-
[css.opened]: args.opened,
|
|
114
|
-
[css.closed]: !args.opened,
|
|
115
|
-
})}
|
|
116
|
-
>
|
|
117
|
-
<SideMenuLink
|
|
118
|
-
// @ts-ignore - TS2783 - 'pageNameKey' is specified more than once, so this usage will be overwritten.
|
|
119
|
-
pageNameKey="dashboard"
|
|
120
|
-
{...args}
|
|
121
|
-
onChange={onChangeHandler}
|
|
122
|
-
selectedValue={selectedValue}
|
|
123
|
-
to={'/?path=/docs/introduction--docs'}
|
|
124
|
-
/>
|
|
125
|
-
<SideMenuLink
|
|
126
|
-
opened={args.opened}
|
|
127
|
-
pageNameKey="engage"
|
|
128
|
-
onChange={onChangeHandler}
|
|
129
|
-
selectedValue={selectedValue}
|
|
130
|
-
/>
|
|
131
|
-
<SideMenuLink
|
|
132
|
-
opened={args.opened}
|
|
133
|
-
pageNameKey="database-cleanup"
|
|
134
|
-
onChange={onChangeHandler}
|
|
135
|
-
selectedValue={selectedValue}
|
|
136
|
-
to={'/?path=/docs/components-table-bulk-actions--docs'}
|
|
137
|
-
/>
|
|
138
|
-
<SideMenuLink
|
|
139
|
-
opened={args.opened}
|
|
140
|
-
pageNameKey="voiceflow"
|
|
141
|
-
onChange={onChangeHandler}
|
|
142
|
-
selectedValue={selectedValue}
|
|
143
|
-
to={'/voiceflow'}
|
|
144
|
-
/>
|
|
145
|
-
</div>
|
|
146
|
-
);
|
|
147
|
-
};
|
|
148
|
-
|
|
149
|
-
_SideMenuLink.args = {
|
|
150
|
-
opened: false,
|
|
151
|
-
pageNameKey: 'dashboard',
|
|
152
|
-
selectedValue: 'dashboard',
|
|
153
|
-
};
|