@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
package/package.json
CHANGED
|
@@ -1,465 +0,0 @@
|
|
|
1
|
-
/* eslint-disable react/no-array-index-key */
|
|
2
|
-
import * as React from 'react';
|
|
3
|
-
|
|
4
|
-
import {ChatAnchor, ChatBody, ChatBubble, ChatContent} from '../ChatBubble';
|
|
5
|
-
import {ChatFooterWithIcons} from '../ChatBubble/ChatBubble.stories';
|
|
6
|
-
import {Disclaimer} from '../Disclaimer';
|
|
7
|
-
import {Panel, PanelBody, PanelFooter, PanelHeader} from '../Panel';
|
|
8
|
-
import {PromptChip} from '../PromptChip';
|
|
9
|
-
import {PromptInput} from '../PromptInput';
|
|
10
|
-
import {BodyMedium, FormLabelMedium} from '../Text';
|
|
11
|
-
import {SubTitleSmall} from '../Text/Text';
|
|
12
|
-
import {TextTile} from '../TextTile';
|
|
13
|
-
|
|
14
|
-
import css from './AIPromptFlow.stories.module.css';
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
export default {
|
|
18
|
-
tags: ['!autodocs'],
|
|
19
|
-
title: 'AI Prompt Components/AI Prompt Flow',
|
|
20
|
-
parameters: {
|
|
21
|
-
docs: {
|
|
22
|
-
subtitle: 'AI Prompt Flow example',
|
|
23
|
-
description: {
|
|
24
|
-
component: `
|
|
25
|
-
This example showcases how to use the ai copilot flows in ui. feel free to copy code and respective css to mimic the exact UI
|
|
26
|
-
`,
|
|
27
|
-
},
|
|
28
|
-
},
|
|
29
|
-
storySource: {
|
|
30
|
-
componentPath: '/src/components/Disclaimer/Disclaimer.jsx',
|
|
31
|
-
},
|
|
32
|
-
},
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
const staticResponse = `In today's data-driven world, analytics play a crucial role in decision-making and strategy development. Companies rely on key performance indicators (KPIs) to measure progress and identify areas for improvement. Metrics like conversion rates, churn rates, and user engagement provide valuable insights into business performance. Accurate data collection and analysis empower teams to make informed choices, optimize processes, and allocate resources effectively.
|
|
36
|
-
|
|
37
|
-
For instance, monitoring website traffic helps identify the most visited pages and the sources driving users to the site. A high bounce rate might indicate a need to improve user experience, while a steady increase in session duration reflects growing engagement. Similarly, tracking customer acquisition cost (CAC) against lifetime value (LTV) ensures sustainable growth and profitability.
|
|
38
|
-
|
|
39
|
-
Sales teams use analytics to measure pipeline velocity, close rates, and average deal size. These metrics enable managers to forecast revenue, adjust strategies, and improve overall efficiency. In marketing, tools like funnel analysis highlight where potential leads drop off, helping refine campaigns and improve return on investment (ROI).
|
|
40
|
-
|
|
41
|
-
Employee performance metrics are equally important. Organizations track productivity, satisfaction scores, and retention rates to foster a positive work environment. For instance, a drop in employee engagement often signals underlying issues, such as workload imbalance or lack of recognition.
|
|
42
|
-
|
|
43
|
-
In customer success, analytics focus on net promoter scores (NPS), response times, and resolution rates. High NPS scores indicate satisfied customers likely to promote the brand, while tracking ticket resolution times ensures efficient support processes. By analyzing these trends, businesses can address pain points and improve client relationships.
|
|
44
|
-
|
|
45
|
-
Financial analytics are another critical area. Companies monitor profit margins, operational costs, and revenue growth to ensure financial stability. Metrics such as EBITDA and cash flow provide a clear picture of a company’s health, enabling leadership to plan for future investments or expansions.
|
|
46
|
-
|
|
47
|
-
Data visualization tools make these analytics easier to understand. Dashboards present complex information in simple charts and graphs, allowing teams to identify patterns and anomalies at a glance. Heatmaps, for example, can show user activity on a website, revealing areas that need more attention.
|
|
48
|
-
|
|
49
|
-
A/B testing further enhances decision-making by allowing teams to experiment with different strategies and compare results. Whether testing headlines, product features, or email campaigns, data-driven results provide clarity and eliminate guesswork.
|
|
50
|
-
|
|
51
|
-
Real-time analytics help organizations stay agile and responsive. By monitoring live data, companies can react to sudden changes, such as traffic spikes or unexpected downtime. Alerts and notifications ensure that teams are aware of critical issues and can act promptly.
|
|
52
|
-
|
|
53
|
-
The value of analytics lies not only in the data itself but also in how it’s interpreted and applied. Insights derived from metrics allow businesses to streamline operations, enhance customer satisfaction, and drive growth. With the right tools and a data-driven mindset, organizations can turn raw data into actionable strategies and measurable outcomes.
|
|
54
|
-
|
|
55
|
-
In essence, analytics provide the foundation for smarter decisions, improved performance, and long-term success. Whether it’s understanding user behavior, optimizing workflows, or predicting market trends, leveraging analytics is key to staying competitive in an ever-changing landscape.`;
|
|
56
|
-
|
|
57
|
-
const PROMPTS = [
|
|
58
|
-
'What is the offer acceptance rate?',
|
|
59
|
-
'Which source produces the best hires?',
|
|
60
|
-
'What is the average time to hire?',
|
|
61
|
-
'How many candidates are in the pipeline?',
|
|
62
|
-
'What is the average cost per hire?',
|
|
63
|
-
'Which department has the highest turnover rate?',
|
|
64
|
-
'What percentage of hires are from referrals?',
|
|
65
|
-
'How long does it take to fill a position?',
|
|
66
|
-
'What is the attrition rate for the past year?',
|
|
67
|
-
'Which jobs have the highest application drop-off rate?',
|
|
68
|
-
'What is the conversion rate from interview to hire?',
|
|
69
|
-
'How many candidates are rejected at each stage?',
|
|
70
|
-
'What is the average interview-to-offer ratio?',
|
|
71
|
-
'Which recruiters have the best performance metrics?',
|
|
72
|
-
'What percentage of candidates reject offers?',
|
|
73
|
-
'How satisfied are candidates with the hiring process?',
|
|
74
|
-
'What is the diversity ratio in the current workforce?',
|
|
75
|
-
'How many hires come from internal promotions?',
|
|
76
|
-
'What are the reasons for candidate drop-off?',
|
|
77
|
-
'How effective is the onboarding process?',
|
|
78
|
-
'What is the current employee engagement score?',
|
|
79
|
-
'How many candidates applied last quarter?',
|
|
80
|
-
'What percentage of job offers are pending?',
|
|
81
|
-
'How many interviews are conducted per position?',
|
|
82
|
-
'What is the overall hiring success rate?',
|
|
83
|
-
'What percentage of applicants are qualified?',
|
|
84
|
-
'How many candidates are awaiting feedback?',
|
|
85
|
-
'What is the average time to first interview?',
|
|
86
|
-
'Which job roles take the longest to fill?',
|
|
87
|
-
'What is the ratio of applicants to hires?',
|
|
88
|
-
'Which job boards drive the most applications?',
|
|
89
|
-
'What is the average time spent interviewing candidates?',
|
|
90
|
-
'How many passive candidates were contacted last month?',
|
|
91
|
-
'What percentage of hires are new graduates?',
|
|
92
|
-
'Which hiring stages have the highest drop-off?',
|
|
93
|
-
'How many candidates withdrew their applications?',
|
|
94
|
-
'What percentage of employees passed probation?',
|
|
95
|
-
'Which regions have the most successful hires?',
|
|
96
|
-
'What is the average number of interview rounds?',
|
|
97
|
-
'How many requisitions are still open?',
|
|
98
|
-
'Which departments have the lowest attrition?',
|
|
99
|
-
'What percentage of candidates complete assessments?',
|
|
100
|
-
'What is the satisfaction rate of new hires?',
|
|
101
|
-
'How many hires are expected this quarter?',
|
|
102
|
-
'What is the median salary for new hires?',
|
|
103
|
-
'How many requisitions were filled last month?',
|
|
104
|
-
'Which hiring sources are the most cost-effective?',
|
|
105
|
-
'How diverse are the recent hires?',
|
|
106
|
-
'How many employees left during onboarding?',
|
|
107
|
-
'What is the percentage of part-time hires?',
|
|
108
|
-
'How many job offers were rescinded?',
|
|
109
|
-
'What is the average candidate feedback score?',
|
|
110
|
-
'Which teams have the fastest hiring process?',
|
|
111
|
-
'What percentage of hires are internal candidates?',
|
|
112
|
-
'How many candidates are in the talent pool?',
|
|
113
|
-
'What is the average age of new hires?',
|
|
114
|
-
'How effective are employee referral programs?',
|
|
115
|
-
'What percentage of hires are remote employees?',
|
|
116
|
-
'How many candidates are considered overqualified?',
|
|
117
|
-
'Which recruiters have the fastest response time?',
|
|
118
|
-
'What is the average duration between offer and joining?',
|
|
119
|
-
'How satisfied are hiring managers with candidates?',
|
|
120
|
-
'Which skills are most common among recent hires?',
|
|
121
|
-
'How many candidates failed the technical assessment?',
|
|
122
|
-
'What is the drop-off rate during technical rounds?',
|
|
123
|
-
'What percentage of hires are contract workers?',
|
|
124
|
-
'How many job offers were declined last quarter?',
|
|
125
|
-
'What percentage of hires meet performance benchmarks?',
|
|
126
|
-
'How many positions remain unfilled after 90 days?',
|
|
127
|
-
'What is the hiring trend over the last six months?',
|
|
128
|
-
'What percentage of hires come from social media?',
|
|
129
|
-
'How effective is the candidate feedback loop?',
|
|
130
|
-
'What is the employee referral success rate?',
|
|
131
|
-
'How many active job seekers applied this month?',
|
|
132
|
-
'What percentage of candidates ask for offer extensions?',
|
|
133
|
-
'What is the typical rejection reason from candidates?',
|
|
134
|
-
'Which hiring stage causes the most delays?',
|
|
135
|
-
'What percentage of new hires recommend the process?',
|
|
136
|
-
'How many rehires were made this year?',
|
|
137
|
-
'What is the cost of a bad hire?',
|
|
138
|
-
'How many positions were closed due to budget cuts?',
|
|
139
|
-
'What percentage of hires exceed expectations?',
|
|
140
|
-
'How long do candidates stay on average?',
|
|
141
|
-
'What is the feedback score for interviewers?',
|
|
142
|
-
'Which stages have the most rescheduled interviews?',
|
|
143
|
-
'How many candidates received counteroffers?',
|
|
144
|
-
'What is the candidate response time for offers?',
|
|
145
|
-
'What percentage of candidates report a good experience?',
|
|
146
|
-
'How does the hiring rate compare year over year?',
|
|
147
|
-
'Which regions have the slowest time to hire?',
|
|
148
|
-
'How effective are pre-screening assessments?',
|
|
149
|
-
'How often do candidates ghost interviews?',
|
|
150
|
-
'What is the most requested role this year?',
|
|
151
|
-
'What percentage of new hires are retained after a year?',
|
|
152
|
-
'How many rejected candidates reapply later?',
|
|
153
|
-
'How many candidates fail during background checks?',
|
|
154
|
-
'What percentage of hires are diversity candidates?',
|
|
155
|
-
'How successful are hiring campaigns in different regions?',
|
|
156
|
-
'What is the satisfaction rate among rejected candidates?',
|
|
157
|
-
'How many roles are open for more than 6 months?',
|
|
158
|
-
'What percentage of hires move into leadership roles?',
|
|
159
|
-
];
|
|
160
|
-
|
|
161
|
-
const getRandomPrompts = (prompts: Array<string>) => {
|
|
162
|
-
const count = Math.floor(Math.random() * 3) + 1;
|
|
163
|
-
const shuffled = prompts.sort(() => 0.5 - Math.random());
|
|
164
|
-
return shuffled.slice(0, count);
|
|
165
|
-
};
|
|
166
|
-
|
|
167
|
-
const getRandomSentences = (text: string, wordLimit = 50) => {
|
|
168
|
-
const sentences = text.match(/[^.!?]+[.!?]/g) || [];
|
|
169
|
-
|
|
170
|
-
const result: Array<string> = [];
|
|
171
|
-
let totalWords = 0;
|
|
172
|
-
|
|
173
|
-
const shuffledSentences = sentences.sort(() => Math.random() - 0.5);
|
|
174
|
-
|
|
175
|
-
for (const sentence of shuffledSentences) {
|
|
176
|
-
const wordCount = sentence.trim().split(/\s+/).length;
|
|
177
|
-
|
|
178
|
-
if (totalWords + wordCount <= wordLimit || result.length === 0) {
|
|
179
|
-
result.push(sentence.trim());
|
|
180
|
-
totalWords += wordCount;
|
|
181
|
-
} else {
|
|
182
|
-
break;
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
return result.join(' ');
|
|
187
|
-
};
|
|
188
|
-
|
|
189
|
-
export const _AIPromptFlow = () => {
|
|
190
|
-
const [value, setValue] = React.useState('');
|
|
191
|
-
const [isLoading, setIsLoading] = React.useState(false);
|
|
192
|
-
const [responses, setResponses] = React.useState([]);
|
|
193
|
-
const [selectedPrompts, setSelectedPrompts] = React.useState(
|
|
194
|
-
getRandomPrompts(PROMPTS),
|
|
195
|
-
);
|
|
196
|
-
const promptRef = React.useRef(null);
|
|
197
|
-
const loadingRef = React.useRef(null);
|
|
198
|
-
|
|
199
|
-
const generateResponse = (text?: string) => {
|
|
200
|
-
const preparedResponses = [...responses];
|
|
201
|
-
setIsLoading(true);
|
|
202
|
-
setTimeout(() => {
|
|
203
|
-
// @ts-ignore - TS2339 - Property 'scrollIntoView' does not exist on type 'never'.
|
|
204
|
-
loadingRef.current?.scrollIntoView({
|
|
205
|
-
behavior: 'smooth',
|
|
206
|
-
});
|
|
207
|
-
});
|
|
208
|
-
|
|
209
|
-
setValue('');
|
|
210
|
-
|
|
211
|
-
const question = text ? text : value;
|
|
212
|
-
|
|
213
|
-
// @ts-ignore - TS2322 - Type 'string' is not assignable to type 'never'.
|
|
214
|
-
preparedResponses.push({
|
|
215
|
-
question,
|
|
216
|
-
answer: '',
|
|
217
|
-
});
|
|
218
|
-
|
|
219
|
-
setResponses(preparedResponses);
|
|
220
|
-
|
|
221
|
-
setTimeout(() => {
|
|
222
|
-
// @ts-ignore - TS2322 - Type 'string' is not assignable to type 'never'.
|
|
223
|
-
preparedResponses.push({
|
|
224
|
-
|
|
225
|
-
question: '',
|
|
226
|
-
|
|
227
|
-
answer: getRandomSentences(staticResponse),
|
|
228
|
-
});
|
|
229
|
-
setResponses(preparedResponses);
|
|
230
|
-
setIsLoading(false);
|
|
231
|
-
setSelectedPrompts(getRandomPrompts(PROMPTS));
|
|
232
|
-
// @ts-ignore - TS2339 - Property 'scrollIntoView' does not exist on type 'never'.
|
|
233
|
-
promptRef.current?.scrollIntoView({
|
|
234
|
-
behavior: 'smooth',
|
|
235
|
-
});
|
|
236
|
-
}, 2000);
|
|
237
|
-
};
|
|
238
|
-
|
|
239
|
-
return (
|
|
240
|
-
<Panel isOpen={true} anchor="right" size="large">
|
|
241
|
-
<PanelHeader>Copilot</PanelHeader>
|
|
242
|
-
<Disclaimer classNames={{wrapper: css.disclaimer}}>
|
|
243
|
-
Always check content generated by AI
|
|
244
|
-
</Disclaimer>
|
|
245
|
-
<PanelBody className={css.panelBody}>
|
|
246
|
-
{responses.length === 0 && !isLoading && (
|
|
247
|
-
<TextTile
|
|
248
|
-
header="Copilot"
|
|
249
|
-
description="Ask anything to accomplish tasks in Sense."
|
|
250
|
-
classNames={{wrapper: css.copilotTextWrapper}}
|
|
251
|
-
/>
|
|
252
|
-
)}
|
|
253
|
-
|
|
254
|
-
{responses.map((response, idx) => (
|
|
255
|
-
<div key={idx} className={css.conversationAI}>
|
|
256
|
-
{ /* @ts-ignore - TS2339 - Property 'question' does not exist on type 'never'. */}
|
|
257
|
-
{!!response.question && (
|
|
258
|
-
<ChatBubble orientation="left">
|
|
259
|
-
<ChatAnchor
|
|
260
|
-
avatarProps={{
|
|
261
|
-
text: 'Adam Craig Gilchrist',
|
|
262
|
-
}}
|
|
263
|
-
isAI={false}
|
|
264
|
-
/>
|
|
265
|
-
<ChatContent>
|
|
266
|
-
<ChatBody withBgColor={false}>
|
|
267
|
-
{ /* @ts-ignore - TS2339 - Property 'question' does not exist on type 'never'. */}
|
|
268
|
-
<BodyMedium>{response.question}</BodyMedium>
|
|
269
|
-
</ChatBody>
|
|
270
|
-
</ChatContent>
|
|
271
|
-
</ChatBubble>
|
|
272
|
-
)}
|
|
273
|
-
|
|
274
|
-
{ /* @ts-ignore - TS2339 - Property 'answer' does not exist on type 'never'. */}
|
|
275
|
-
{!!response.answer && (
|
|
276
|
-
<>
|
|
277
|
-
{idx === 1 && (
|
|
278
|
-
<>
|
|
279
|
-
<ChatBubble orientation="left">
|
|
280
|
-
<ChatAnchor />
|
|
281
|
-
<ChatContent>
|
|
282
|
-
<ChatBody>
|
|
283
|
-
<SubTitleSmall>
|
|
284
|
-
This is our interpretation of you question
|
|
285
|
-
</SubTitleSmall>
|
|
286
|
-
|
|
287
|
-
<BodyMedium>
|
|
288
|
-
{getRandomSentences(staticResponse)}
|
|
289
|
-
</BodyMedium>
|
|
290
|
-
</ChatBody>
|
|
291
|
-
</ChatContent>
|
|
292
|
-
</ChatBubble>
|
|
293
|
-
<ChatBubble
|
|
294
|
-
orientation="left"
|
|
295
|
-
classNames={{wrapper: css.leftMarginSpace}}
|
|
296
|
-
>
|
|
297
|
-
<ChatContent>
|
|
298
|
-
<ChatBody>
|
|
299
|
-
{ /* @ts-ignore - TS2339 - Property 'answer' does not exist on type 'never'. */}
|
|
300
|
-
<BodyMedium>{response.answer}</BodyMedium>
|
|
301
|
-
</ChatBody>
|
|
302
|
-
<ChatFooterWithIcons />
|
|
303
|
-
</ChatContent>
|
|
304
|
-
</ChatBubble>
|
|
305
|
-
</>
|
|
306
|
-
)}
|
|
307
|
-
{idx === 3 && (
|
|
308
|
-
<ChatBubble orientation="left">
|
|
309
|
-
<ChatAnchor />
|
|
310
|
-
<ChatContent>
|
|
311
|
-
<ChatBody classNames={{wrapper: css.longChatContent}}>
|
|
312
|
-
<BodyMedium>
|
|
313
|
-
In a world where technology and imagination
|
|
314
|
-
intertwine, the possibilities for innovation are
|
|
315
|
-
boundless. Every passing day introduces new
|
|
316
|
-
advancements that reshape the way humanity interacts
|
|
317
|
-
with the world, creating a seamless blend of
|
|
318
|
-
convenience, creativity, and connectivity. As
|
|
319
|
-
artificial intelligence continues to grow in
|
|
320
|
-
influence, its impact on everyday life becomes more
|
|
321
|
-
profound, touching areas that range from healthcare to
|
|
322
|
-
entertainment, from education to environmental
|
|
323
|
-
conservation. Take, for instance, the story of a small
|
|
324
|
-
town nestled in the valley of rolling hills. For
|
|
325
|
-
decades, this town had thrived on traditional farming
|
|
326
|
-
practices, cultivating crops and raising livestock in
|
|
327
|
-
harmony with nature. However, the advent of technology
|
|
328
|
-
introduced challenges that demanded adaptation.
|
|
329
|
-
Climate change brought unpredictable weather patterns,
|
|
330
|
-
and global markets introduced competitive pressures
|
|
331
|
-
that many small farms struggled to meet. Faced with
|
|
332
|
-
these challenges, the community turned to innovation.
|
|
333
|
-
The town’s leaders, in collaboration with researchers
|
|
334
|
-
and technologists, implemented a system of smart
|
|
335
|
-
farming powered by AI. Sensors embedded in the soil
|
|
336
|
-
measured moisture levels, nutrient content, and
|
|
337
|
-
temperature, providing real-time feedback to farmers.
|
|
338
|
-
Drones equipped with cameras flew over fields,
|
|
339
|
-
capturing images that AI analyzed to detect signs of
|
|
340
|
-
pests or disease. Autonomous tractors, guided by
|
|
341
|
-
satellite data, plowed and planted with precision,
|
|
342
|
-
minimizing waste and maximizing yield. Over time,
|
|
343
|
-
these tools not only revived the town’s agricultural
|
|
344
|
-
economy but also established it as a model for
|
|
345
|
-
sustainable farming practices worldwide. Beyond
|
|
346
|
-
agriculture, artificial intelligence also
|
|
347
|
-
revolutionized healthcare. A few years ago, a young
|
|
348
|
-
woman named Clara faced an uncertain future. Diagnosed
|
|
349
|
-
with a rare and aggressive form of cancer, she was
|
|
350
|
-
told her chances of survival were slim. However,
|
|
351
|
-
Clara’s doctors employed a cutting-edge AI system to
|
|
352
|
-
analyze her genetic profile and recommend a
|
|
353
|
-
personalized treatment plan. This system, trained on
|
|
354
|
-
data from millions of patients worldwide, identified
|
|
355
|
-
patterns that human doctors might have missed,
|
|
356
|
-
suggesting a combination of therapies tailored
|
|
357
|
-
specifically to Clara’s condition.
|
|
358
|
-
</BodyMedium>
|
|
359
|
-
</ChatBody>
|
|
360
|
-
<ChatFooterWithIcons />
|
|
361
|
-
</ChatContent>
|
|
362
|
-
</ChatBubble>
|
|
363
|
-
)}
|
|
364
|
-
{idx !== 1 && idx !== 3 && (
|
|
365
|
-
<ChatBubble orientation="left">
|
|
366
|
-
<ChatAnchor />
|
|
367
|
-
<ChatContent>
|
|
368
|
-
<ChatBody>
|
|
369
|
-
{ /* @ts-ignore - TS2339 - Property 'answer' does not exist on type 'never'. */}
|
|
370
|
-
<BodyMedium>{response.answer}</BodyMedium>
|
|
371
|
-
</ChatBody>
|
|
372
|
-
</ChatContent>
|
|
373
|
-
</ChatBubble>
|
|
374
|
-
)}
|
|
375
|
-
|
|
376
|
-
<div className={css.leftMarginSpace}>
|
|
377
|
-
{idx === responses.length - 1 && (
|
|
378
|
-
// @ts-ignore - TS2786 - 'PromptSuggestions' cannot be used as a JSX component.
|
|
379
|
-
<PromptSuggestions
|
|
380
|
-
isLoading={isLoading}
|
|
381
|
-
selectedPrompts={selectedPrompts}
|
|
382
|
-
generateResponse={generateResponse}
|
|
383
|
-
promptRef={promptRef}
|
|
384
|
-
/>
|
|
385
|
-
)}
|
|
386
|
-
</div>
|
|
387
|
-
</>
|
|
388
|
-
)}
|
|
389
|
-
</div>
|
|
390
|
-
))}
|
|
391
|
-
{isLoading && (
|
|
392
|
-
<ChatBubble
|
|
393
|
-
classNames={{
|
|
394
|
-
wrapper: css.loader,
|
|
395
|
-
}}
|
|
396
|
-
orientation="left"
|
|
397
|
-
ref={loadingRef}
|
|
398
|
-
>
|
|
399
|
-
<ChatAnchor />
|
|
400
|
-
<ChatContent>
|
|
401
|
-
<ChatBody isLoading loadingText="Generating" />
|
|
402
|
-
</ChatContent>
|
|
403
|
-
</ChatBubble>
|
|
404
|
-
)}
|
|
405
|
-
|
|
406
|
-
{responses.length === 0 && (
|
|
407
|
-
<div className={css.promptContainer}>
|
|
408
|
-
{ /* @ts-ignore - TS2786 - 'PromptSuggestions' cannot be used as a JSX component. */}
|
|
409
|
-
<PromptSuggestions
|
|
410
|
-
isLoading={isLoading}
|
|
411
|
-
selectedPrompts={selectedPrompts}
|
|
412
|
-
generateResponse={generateResponse}
|
|
413
|
-
label="Here are some ideas to get started with Analytics for your product"
|
|
414
|
-
/>
|
|
415
|
-
</div>
|
|
416
|
-
)}
|
|
417
|
-
</PanelBody>
|
|
418
|
-
<PanelFooter classNames={{actions: css.actions}}>
|
|
419
|
-
<PromptInput
|
|
420
|
-
withPadding={false}
|
|
421
|
-
value={value}
|
|
422
|
-
onInputChange={(e) => setValue(e.target.value)}
|
|
423
|
-
onButtonClick={() => generateResponse()}
|
|
424
|
-
buttonDisabled={value.length === 0}
|
|
425
|
-
></PromptInput>
|
|
426
|
-
</PanelFooter>
|
|
427
|
-
</Panel>
|
|
428
|
-
);
|
|
429
|
-
};
|
|
430
|
-
|
|
431
|
-
const PromptSuggestions = ({
|
|
432
|
-
isLoading,
|
|
433
|
-
generateResponse,
|
|
434
|
-
selectedPrompts,
|
|
435
|
-
label,
|
|
436
|
-
promptRef,
|
|
437
|
-
}: {
|
|
438
|
-
isLoading: boolean;
|
|
439
|
-
generateResponse: (prompt: string) => void;
|
|
440
|
-
selectedPrompts: string[];
|
|
441
|
-
label?: string;
|
|
442
|
-
promptRef?: {
|
|
443
|
-
current?: HTMLDivElement | null;
|
|
444
|
-
};
|
|
445
|
-
}) =>
|
|
446
|
-
!isLoading && (
|
|
447
|
-
<>
|
|
448
|
-
{label && <FormLabelMedium>{label}</FormLabelMedium>}
|
|
449
|
-
|
|
450
|
-
<div className={css.promptWrapper}>
|
|
451
|
-
{selectedPrompts.map((prompt) => (
|
|
452
|
-
<React.Fragment key={prompt}>
|
|
453
|
-
<PromptChip
|
|
454
|
-
classNames={{wrapper: css.prompt}}
|
|
455
|
-
onClick={() => generateResponse(prompt)}
|
|
456
|
-
// @ts-ignore - TS2769 - No overload matches this call.
|
|
457
|
-
ref={promptRef}
|
|
458
|
-
>
|
|
459
|
-
{prompt}
|
|
460
|
-
</PromptChip>
|
|
461
|
-
</React.Fragment>
|
|
462
|
-
))}
|
|
463
|
-
</div>
|
|
464
|
-
</>
|
|
465
|
-
);
|
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
|
|
3
|
-
import type {AccordionPropsType} from './Accordion';
|
|
4
|
-
import {Accordion} from './Accordion';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export default {
|
|
8
|
-
tags: ['autodocs'],
|
|
9
|
-
title: 'Components/Accordion',
|
|
10
|
-
component: Accordion,
|
|
11
|
-
argTypes: {
|
|
12
|
-
classNames: {
|
|
13
|
-
description:
|
|
14
|
-
'Optional class name overrides for styling parts of the accordion. Keys include: wrapper, headerWrapper, header, content.',
|
|
15
|
-
control: {
|
|
16
|
-
type: 'object',
|
|
17
|
-
},
|
|
18
|
-
table: {
|
|
19
|
-
type: {
|
|
20
|
-
summary:
|
|
21
|
-
'{wrapper?: string, headerWrapper?: string, header?: string, content?: string}',
|
|
22
|
-
},
|
|
23
|
-
},
|
|
24
|
-
},
|
|
25
|
-
header: {
|
|
26
|
-
description:
|
|
27
|
-
'A React node that renders the visible header of the accordion. This typically includes a title or label for the section. It can be a string, JSX, or any React element.',
|
|
28
|
-
control: {type: 'text'},
|
|
29
|
-
table: {
|
|
30
|
-
type: {summary: 'React.ReactNode'},
|
|
31
|
-
},
|
|
32
|
-
},
|
|
33
|
-
id: {
|
|
34
|
-
description:
|
|
35
|
-
'A unique string identifier for the accordion instance. Required when used inside an AccordionGroup to control open/close or disabled states via openedIds and disabledIds arrays.',
|
|
36
|
-
control: {
|
|
37
|
-
type: 'text',
|
|
38
|
-
},
|
|
39
|
-
table: {
|
|
40
|
-
type: {summary: 'string'},
|
|
41
|
-
},
|
|
42
|
-
},
|
|
43
|
-
children: {
|
|
44
|
-
description:
|
|
45
|
-
'The content to be shown inside the accordion when it is expanded. Can be a string, JSX, or any valid React node. This content remains hidden when the accordion is collapsed.',
|
|
46
|
-
control: {type: 'text'},
|
|
47
|
-
table: {
|
|
48
|
-
type: {summary: 'React.ReactNode'},
|
|
49
|
-
},
|
|
50
|
-
},
|
|
51
|
-
isOpen: {
|
|
52
|
-
description: 'Controls whether the accordion is open or closed.',
|
|
53
|
-
control: {type: 'boolean'},
|
|
54
|
-
table: {
|
|
55
|
-
type: {summary: 'boolean'},
|
|
56
|
-
},
|
|
57
|
-
},
|
|
58
|
-
disabled: {
|
|
59
|
-
description:
|
|
60
|
-
'Disables interaction with the accordion. When true, its state can not be changed from closed to opened or vice versa',
|
|
61
|
-
control: {type: 'boolean'},
|
|
62
|
-
table: {
|
|
63
|
-
type: {summary: 'boolean'},
|
|
64
|
-
defaultValue: {summary: 'false'},
|
|
65
|
-
},
|
|
66
|
-
},
|
|
67
|
-
showToggle: {
|
|
68
|
-
description: 'Displays a toggle switch to enable/disable the accordion',
|
|
69
|
-
control: {type: 'boolean'},
|
|
70
|
-
table: {
|
|
71
|
-
type: {summary: 'boolean'},
|
|
72
|
-
defaultValue: {summary: 'false'},
|
|
73
|
-
},
|
|
74
|
-
},
|
|
75
|
-
onChange: {
|
|
76
|
-
description: 'Callback triggered when the accordion is opened or closed.',
|
|
77
|
-
control: false,
|
|
78
|
-
table: {
|
|
79
|
-
type: {
|
|
80
|
-
summary: '(id?: string, isOpen: boolean) => mixed',
|
|
81
|
-
},
|
|
82
|
-
},
|
|
83
|
-
},
|
|
84
|
-
onToggle: {
|
|
85
|
-
description:
|
|
86
|
-
'Callback triggered when the enable/disable toggle is clicked.',
|
|
87
|
-
control: false,
|
|
88
|
-
table: {
|
|
89
|
-
type: {
|
|
90
|
-
summary: '(id?: string, checked?: boolean) => mixed',
|
|
91
|
-
},
|
|
92
|
-
},
|
|
93
|
-
},
|
|
94
|
-
},
|
|
95
|
-
parameters: {
|
|
96
|
-
docs: {
|
|
97
|
-
subtitle: 'Generates an Accordion component.',
|
|
98
|
-
description: {
|
|
99
|
-
component: `
|
|
100
|
-
\`\`\`js
|
|
101
|
-
import { Accordion } from "@spaced-out/ui-design-system/lib/components/Accordion";
|
|
102
|
-
\`\`\`
|
|
103
|
-
The Accordion component is a collapsible UI element used to toggle the visibility of content sections. It can be used independently or within and AccordionGroup.
|
|
104
|
-
`,
|
|
105
|
-
},
|
|
106
|
-
},
|
|
107
|
-
storySource: {
|
|
108
|
-
componentPath: '/src/components/Accordion/Accordion.jsx',
|
|
109
|
-
},
|
|
110
|
-
},
|
|
111
|
-
};
|
|
112
|
-
|
|
113
|
-
export const _Default = (args: AccordionPropsType) => (<Accordion {...args}>
|
|
114
|
-
<div>
|
|
115
|
-
Accordions allow you to organize content into collapsible sections. This
|
|
116
|
-
improves page readability and reduces visual clutter. Click the header to
|
|
117
|
-
expand or collapse this section.
|
|
118
|
-
</div>
|
|
119
|
-
</Accordion>);
|
|
120
|
-
|
|
121
|
-
_Default.args = {
|
|
122
|
-
classNames: {wrapper: ''},
|
|
123
|
-
id: 'ac1',
|
|
124
|
-
header: 'What is an Accordion',
|
|
125
|
-
};
|
|
126
|
-
|
|
127
|
-
export const _WithToggle = (args: AccordionPropsType) => {
|
|
128
|
-
const [isOpened, setIsOpened] = React.useState(args.isOpen ?? false);
|
|
129
|
-
const [isDisabled, setDisabled] = React.useState(args.disabled ?? true);
|
|
130
|
-
const handleToggle = (_id: undefined | string, checked: undefined | boolean) => {
|
|
131
|
-
// @ts-ignore - TS2345 - Argument of type 'boolean | undefined' is not assignable to parameter of type 'SetStateAction<boolean>'.
|
|
132
|
-
setIsOpened(checked);
|
|
133
|
-
setDisabled(!checked);
|
|
134
|
-
};
|
|
135
|
-
|
|
136
|
-
React.useEffect(() => {
|
|
137
|
-
setIsOpened(args.isOpen ?? false);
|
|
138
|
-
}, [args.isOpen]);
|
|
139
|
-
|
|
140
|
-
React.useEffect(() => {
|
|
141
|
-
setDisabled(args.disabled ?? false);
|
|
142
|
-
}, [args.disabled]);
|
|
143
|
-
|
|
144
|
-
return (
|
|
145
|
-
<Accordion
|
|
146
|
-
{...args}
|
|
147
|
-
isOpen={isOpened}
|
|
148
|
-
disabled={isDisabled}
|
|
149
|
-
header={'What is an Accordion?'}
|
|
150
|
-
onToggle={handleToggle}
|
|
151
|
-
>
|
|
152
|
-
<div>
|
|
153
|
-
Accordions allow you to organize content into collapsible sections. This
|
|
154
|
-
improves page readability and reduces visual clutter. Click the header
|
|
155
|
-
to expand or collapse this section.
|
|
156
|
-
</div>
|
|
157
|
-
</Accordion>
|
|
158
|
-
);
|
|
159
|
-
};
|
|
160
|
-
|
|
161
|
-
_WithToggle.args = {
|
|
162
|
-
classNames: {wrapper: ''},
|
|
163
|
-
id: 'ac1',
|
|
164
|
-
showToggle: true,
|
|
165
|
-
};
|