@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.
Files changed (447) hide show
  1. package/.cspell/custom-words.txt +2 -0
  2. package/CHANGELOG.md +7 -0
  3. package/cspell.json +3 -1
  4. package/gulpfile.js +2 -1
  5. package/lib/styles/index.js +535 -275
  6. package/package.json +2 -2
  7. package/lib/components/AIPromptFlow/AIPromptFlow.stories.tsx +0 -465
  8. package/lib/components/Accordion/Accordion.stories.tsx +0 -165
  9. package/lib/components/Accordion/Accordion.tsx +0 -112
  10. package/lib/components/Accordion/AccordionGroup.stories.tsx +0 -215
  11. package/lib/components/Accordion/AccordionGroup.tsx +0 -77
  12. package/lib/components/Accordion/index.ts +0 -2
  13. package/lib/components/Avatar/Avatar.stories.tsx +0 -152
  14. package/lib/components/Avatar/Avatar.tsx +0 -272
  15. package/lib/components/Avatar/index.ts +0 -1
  16. package/lib/components/AvatarGroup/AvatarGroup.stories.tsx +0 -138
  17. package/lib/components/AvatarGroup/AvatarGroup.tsx +0 -164
  18. package/lib/components/AvatarGroup/index.ts +0 -1
  19. package/lib/components/Badge/Badge.stories.tsx +0 -131
  20. package/lib/components/Badge/Badge.tsx +0 -149
  21. package/lib/components/Badge/index.ts +0 -1
  22. package/lib/components/BadgedIcon/BadgedIcon.stories.tsx +0 -80
  23. package/lib/components/BadgedIcon/BadgedIcon.tsx +0 -76
  24. package/lib/components/BadgedIcon/index.ts +0 -1
  25. package/lib/components/Banner/Banner.stories.tsx +0 -187
  26. package/lib/components/Banner/Banner.tsx +0 -55
  27. package/lib/components/Banner/index.ts +0 -1
  28. package/lib/components/Breadcrumbs/BreadcrumbLink/BreadcrumbLink.stories.tsx +0 -114
  29. package/lib/components/Breadcrumbs/BreadcrumbLink/BreadcrumbLink.tsx +0 -52
  30. package/lib/components/Breadcrumbs/BreadcrumbLink/index.ts +0 -1
  31. package/lib/components/Breadcrumbs/Breadcrumbs.stories.tsx +0 -189
  32. package/lib/components/Breadcrumbs/Breadcrumbs.tsx +0 -59
  33. package/lib/components/Breadcrumbs/index.ts +0 -2
  34. package/lib/components/Button/Button.stories.tsx +0 -220
  35. package/lib/components/Button/Button.tsx +0 -285
  36. package/lib/components/Button/index.ts +0 -8
  37. package/lib/components/ButtonDropdown/ButtonDropdown.stories.tsx +0 -677
  38. package/lib/components/ButtonDropdown/ButtonDropdown.tsx +0 -221
  39. package/lib/components/ButtonDropdown/SimpleButtonDropdown.stories.tsx +0 -624
  40. package/lib/components/ButtonDropdown/SimpleButtonDropdown.tsx +0 -167
  41. package/lib/components/ButtonDropdown/index.ts +0 -2
  42. package/lib/components/ButtonTabs/ButtonTab/ButtonTab.stories.tsx +0 -125
  43. package/lib/components/ButtonTabs/ButtonTab/ButtonTab.tsx +0 -76
  44. package/lib/components/ButtonTabs/ButtonTab/index.ts +0 -1
  45. package/lib/components/ButtonTabs/ButtonTabDropdown.tsx +0 -147
  46. package/lib/components/ButtonTabs/ButtonTabs.stories.tsx +0 -393
  47. package/lib/components/ButtonTabs/ButtonTabs.tsx +0 -119
  48. package/lib/components/ButtonTabs/index.ts +0 -2
  49. package/lib/components/Card/Card.stories.tsx +0 -245
  50. package/lib/components/Card/Card.tsx +0 -172
  51. package/lib/components/Card/index.ts +0 -1
  52. package/lib/components/Charts/ChartTooltip/index.ts +0 -13
  53. package/lib/components/Charts/ChartWrapper/ChartWrapper.tsx +0 -179
  54. package/lib/components/Charts/ChartWrapper/index.ts +0 -1
  55. package/lib/components/Charts/ColumnChart/ColumnChart.stories.tsx +0 -574
  56. package/lib/components/Charts/ColumnChart/ColumnChart.tsx +0 -125
  57. package/lib/components/Charts/ColumnChart/index.ts +0 -1
  58. package/lib/components/Charts/DonutChart/DonutChart.stories.tsx +0 -415
  59. package/lib/components/Charts/DonutChart/DonutChart.tsx +0 -155
  60. package/lib/components/Charts/DonutChart/index.ts +0 -1
  61. package/lib/components/Charts/FunnelChart/FunnelChart.stories.tsx +0 -510
  62. package/lib/components/Charts/FunnelChart/FunnelChart.tsx +0 -110
  63. package/lib/components/Charts/FunnelChart/index.ts +0 -1
  64. package/lib/components/Charts/LineChart/LineChart.stories.tsx +0 -590
  65. package/lib/components/Charts/LineChart/LineChart.tsx +0 -109
  66. package/lib/components/Charts/LineChart/index.ts +0 -1
  67. package/lib/components/Charts/SpiderChart/SpiderChart.stories.tsx +0 -467
  68. package/lib/components/Charts/SpiderChart/SpiderChart.tsx +0 -104
  69. package/lib/components/Charts/SpiderChart/index.ts +0 -1
  70. package/lib/components/Charts/index.ts +0 -11
  71. package/lib/components/ChatBubble/ChatAnchor.stories.tsx +0 -95
  72. package/lib/components/ChatBubble/ChatBubble.stories.tsx +0 -277
  73. package/lib/components/ChatBubble/ChatBubble.tsx +0 -232
  74. package/lib/components/ChatBubble/index.ts +0 -1
  75. package/lib/components/Checkbox/Checkbox.stories.tsx +0 -180
  76. package/lib/components/Checkbox/Checkbox.tsx +0 -168
  77. package/lib/components/Checkbox/CheckboxGroup.stories.tsx +0 -381
  78. package/lib/components/Checkbox/CheckboxGroup.tsx +0 -119
  79. package/lib/components/Checkbox/index.ts +0 -2
  80. package/lib/components/Chip/Chip.stories.tsx +0 -335
  81. package/lib/components/Chip/Chip.tsx +0 -204
  82. package/lib/components/Chip/index.ts +0 -2
  83. package/lib/components/CircularLoader/CircularLoader.stories.tsx +0 -75
  84. package/lib/components/CircularLoader/CircularLoader.tsx +0 -51
  85. package/lib/components/CircularLoader/index.ts +0 -1
  86. package/lib/components/CollapsibleCard/CollapsibleCard.stories.tsx +0 -311
  87. package/lib/components/CollapsibleCard/CollapsibleCard.tsx +0 -135
  88. package/lib/components/CollapsibleCard/index.ts +0 -1
  89. package/lib/components/Combobox/Combobox.stories.tsx +0 -306
  90. package/lib/components/Combobox/Combobox.tsx +0 -297
  91. package/lib/components/Combobox/helper.ts +0 -201
  92. package/lib/components/Combobox/index.ts +0 -1
  93. package/lib/components/ConditionalWrapper/ConditionalWrapper.stories.tsx +0 -51
  94. package/lib/components/ConditionalWrapper/ConditionalWrapper.ts +0 -16
  95. package/lib/components/ConditionalWrapper/index.ts +0 -1
  96. package/lib/components/DateRangePicker/Calendar.tsx +0 -110
  97. package/lib/components/DateRangePicker/DateRangePicker.stories.tsx +0 -397
  98. package/lib/components/DateRangePicker/DateRangePicker.tsx +0 -210
  99. package/lib/components/DateRangePicker/DateRangeWrapper.tsx +0 -386
  100. package/lib/components/DateRangePicker/Day.tsx +0 -74
  101. package/lib/components/DateRangePicker/index.ts +0 -1
  102. package/lib/components/Dialog/Dialog.stories.tsx +0 -254
  103. package/lib/components/Dialog/Dialog.tsx +0 -222
  104. package/lib/components/Dialog/index.ts +0 -1
  105. package/lib/components/Disclaimer/Disclaimer.stories.tsx +0 -148
  106. package/lib/components/Disclaimer/Disclaimer.tsx +0 -35
  107. package/lib/components/Disclaimer/index.ts +0 -1
  108. package/lib/components/Dropdown/Dropdown.stories.tsx +0 -785
  109. package/lib/components/Dropdown/Dropdown.tsx +0 -174
  110. package/lib/components/Dropdown/SimpleDropdown.stories.tsx +0 -534
  111. package/lib/components/Dropdown/SimpleDropdown.tsx +0 -167
  112. package/lib/components/Dropdown/index.ts +0 -2
  113. package/lib/components/EmptyState/EmptyImages/CalendarEmptyImage.tsx +0 -108
  114. package/lib/components/EmptyState/EmptyImages/ChartEmptyImage.tsx +0 -194
  115. package/lib/components/EmptyState/EmptyImages/DataEmptyImage.tsx +0 -116
  116. package/lib/components/EmptyState/EmptyImages/FileEmptyImage.tsx +0 -133
  117. package/lib/components/EmptyState/EmptyImages/MessageEmptyImage.tsx +0 -64
  118. package/lib/components/EmptyState/EmptyImages/UploadEmptyImage.tsx +0 -67
  119. package/lib/components/EmptyState/EmptyImages/index.ts +0 -6
  120. package/lib/components/EmptyState/EmptyState.stories.tsx +0 -104
  121. package/lib/components/EmptyState/EmptyState.tsx +0 -83
  122. package/lib/components/EmptyState/index.ts +0 -1
  123. package/lib/components/ErrorMessage/ErrorImages/ForbiddenImage.tsx +0 -85
  124. package/lib/components/ErrorMessage/ErrorImages/NotFoundImage.tsx +0 -117
  125. package/lib/components/ErrorMessage/ErrorImages/ServerErrorImage.tsx +0 -237
  126. package/lib/components/ErrorMessage/ErrorImages/UnauthorizedImage.tsx +0 -73
  127. package/lib/components/ErrorMessage/ErrorImages/index.ts +0 -4
  128. package/lib/components/ErrorMessage/ErrorMessage.stories.tsx +0 -112
  129. package/lib/components/ErrorMessage/ErrorMessage.tsx +0 -87
  130. package/lib/components/ErrorMessage/index.ts +0 -1
  131. package/lib/components/FileUpload/FileBlock/FileBlock.stories.tsx +0 -85
  132. package/lib/components/FileUpload/FileBlock/FileBlock.tsx +0 -136
  133. package/lib/components/FileUpload/FileBlock/index.ts +0 -1
  134. package/lib/components/FileUpload/FileUpload.stories.tsx +0 -958
  135. package/lib/components/FileUpload/FileUpload.tsx +0 -206
  136. package/lib/components/FileUpload/index.ts +0 -2
  137. package/lib/components/FilterButtonOverlay/FilterButtonOverlay.stories.tsx +0 -345
  138. package/lib/components/FilterButtonOverlay/FilterButtonOverlay.tsx +0 -163
  139. package/lib/components/FilterButtonOverlay/index.ts +0 -1
  140. package/lib/components/FocusManager/FocusManager.stories.tsx +0 -117
  141. package/lib/components/FocusManager/FocusManager.tsx +0 -59
  142. package/lib/components/FocusManager/index.ts +0 -1
  143. package/lib/components/FocusManagerWithArrowKeyNavigation/FocusManagerWithArrowKeyNavigation.stories.tsx +0 -557
  144. package/lib/components/FocusManagerWithArrowKeyNavigation/FocusManagerWithArrowKeyNavigation.tsx +0 -156
  145. package/lib/components/FocusManagerWithArrowKeyNavigation/index.ts +0 -1
  146. package/lib/components/FormTitleWrapper/FormTitleWrapper.stories.tsx +0 -173
  147. package/lib/components/FormTitleWrapper/FormTitleWrapper.tsx +0 -63
  148. package/lib/components/FormTitleWrapper/index.ts +0 -1
  149. package/lib/components/Grid/Col.stories.tsx +0 -114
  150. package/lib/components/Grid/Grid.tsx +0 -119
  151. package/lib/components/Grid/GridPatterns.stories.tsx +0 -420
  152. package/lib/components/Grid/Row.stories.tsx +0 -135
  153. package/lib/components/Grid/Tablist.layout.stories.tsx +0 -281
  154. package/lib/components/Grid/index.ts +0 -1
  155. package/lib/components/Icon/ClickableIcon.tsx +0 -104
  156. package/lib/components/Icon/Icon.docs.ts +0 -118
  157. package/lib/components/Icon/Icon.stories.tsx +0 -79
  158. package/lib/components/Icon/Icon.tsx +0 -78
  159. package/lib/components/Icon/SemanticIcon.stories.tsx +0 -74
  160. package/lib/components/Icon/SemanticIcon.tsx +0 -49
  161. package/lib/components/Icon/index.ts +0 -3
  162. package/lib/components/InContextAlert/InContextAlert.stories.tsx +0 -164
  163. package/lib/components/InContextAlert/InContextAlert.tsx +0 -204
  164. package/lib/components/InContextAlert/index.ts +0 -1
  165. package/lib/components/InfinitePagination/InfinitePagination.stories.tsx +0 -323
  166. package/lib/components/InfinitePagination/InfinitePagination.tsx +0 -121
  167. package/lib/components/InfinitePagination/index.ts +0 -1
  168. package/lib/components/InlineDropdown/InlineDropdown.stories.tsx +0 -415
  169. package/lib/components/InlineDropdown/InlineDropdown.tsx +0 -175
  170. package/lib/components/InlineDropdown/SimpleInlineDropdown.stories.tsx +0 -513
  171. package/lib/components/InlineDropdown/SimpleInlineDropdown.tsx +0 -165
  172. package/lib/components/InlineDropdown/index.ts +0 -2
  173. package/lib/components/Input/Input.stories.tsx +0 -590
  174. package/lib/components/Input/Input.tsx +0 -336
  175. package/lib/components/Input/NativeColorpicker.stories.tsx +0 -337
  176. package/lib/components/Input/NativeDatepicker.stories.tsx +0 -424
  177. package/lib/components/Input/index.ts +0 -1
  178. package/lib/components/KPIBox/KPIBox.stories.tsx +0 -321
  179. package/lib/components/KPIBox/KPIBox.tsx +0 -94
  180. package/lib/components/KPIBox/index.ts +0 -1
  181. package/lib/components/LinearLoader/LinearLoader.stories.tsx +0 -132
  182. package/lib/components/LinearLoader/LinearLoader.tsx +0 -48
  183. package/lib/components/LinearLoader/index.ts +0 -1
  184. package/lib/components/Link/Link.stories.tsx +0 -302
  185. package/lib/components/Link/Link.tsx +0 -231
  186. package/lib/components/Link/index.ts +0 -1
  187. package/lib/components/Menu/Menu.stories.tsx +0 -1046
  188. package/lib/components/Menu/Menu.tsx +0 -391
  189. package/lib/components/Menu/MenuOptionButton.tsx +0 -206
  190. package/lib/components/Menu/index.ts +0 -2
  191. package/lib/components/Modal/Modal.stories.tsx +0 -430
  192. package/lib/components/Modal/Modal.tsx +0 -379
  193. package/lib/components/Modal/index.ts +0 -8
  194. package/lib/components/Notification/Notification.stories.tsx +0 -132
  195. package/lib/components/Notification/Notification.tsx +0 -140
  196. package/lib/components/Notification/index.ts +0 -1
  197. package/lib/components/OptionButton/OptionButton.stories.tsx +0 -397
  198. package/lib/components/OptionButton/OptionButton.tsx +0 -149
  199. package/lib/components/OptionButton/SimpleOptionButton.stories.tsx +0 -525
  200. package/lib/components/OptionButton/SimpleOptionButton.tsx +0 -160
  201. package/lib/components/OptionButton/index.ts +0 -2
  202. package/lib/components/PageTitle/PageTitle.stories.tsx +0 -257
  203. package/lib/components/PageTitle/PageTitle.tsx +0 -276
  204. package/lib/components/PageTitle/index.ts +0 -1
  205. package/lib/components/Pagination/Pagination.stories.tsx +0 -259
  206. package/lib/components/Pagination/Pagination.tsx +0 -147
  207. package/lib/components/Pagination/PaginationItem.tsx +0 -118
  208. package/lib/components/Pagination/index.ts +0 -1
  209. package/lib/components/Panel/Panel.stories.tsx +0 -452
  210. package/lib/components/Panel/Panel.tsx +0 -181
  211. package/lib/components/Panel/index.ts +0 -2
  212. package/lib/components/ProgressDonut/ProgressDonut.stories.tsx +0 -97
  213. package/lib/components/ProgressDonut/ProgressDonut.tsx +0 -111
  214. package/lib/components/ProgressDonut/index.ts +0 -1
  215. package/lib/components/PromptChip/PromptChip.stories.tsx +0 -202
  216. package/lib/components/PromptChip/PromptChip.tsx +0 -166
  217. package/lib/components/PromptChip/index.ts +0 -1
  218. package/lib/components/PromptInput/PromptInput.stories.tsx +0 -349
  219. package/lib/components/PromptInput/PromptInput.tsx +0 -190
  220. package/lib/components/PromptInput/index.ts +0 -1
  221. package/lib/components/RadioButton/RadioButton.stories.tsx +0 -157
  222. package/lib/components/RadioButton/RadioButton.tsx +0 -135
  223. package/lib/components/RadioButton/RadioGroup.stories.tsx +0 -283
  224. package/lib/components/RadioButton/RadioGroup.tsx +0 -90
  225. package/lib/components/RadioButton/index.ts +0 -2
  226. package/lib/components/RadioTile/RadioTile.stories.tsx +0 -276
  227. package/lib/components/RadioTile/RadioTile.tsx +0 -107
  228. package/lib/components/RadioTile/index.ts +0 -1
  229. package/lib/components/RangeSlider/RangeSlider.stories.tsx +0 -342
  230. package/lib/components/RangeSlider/RangeSlider.tsx +0 -201
  231. package/lib/components/RangeSlider/index.ts +0 -1
  232. package/lib/components/Rating/Rating.stories.tsx +0 -257
  233. package/lib/components/Rating/Rating.tsx +0 -141
  234. package/lib/components/Rating/index.ts +0 -1
  235. package/lib/components/ScoreBar/ScoreBar.stories.tsx +0 -182
  236. package/lib/components/ScoreBar/ScoreBar.tsx +0 -133
  237. package/lib/components/ScoreBar/index.ts +0 -1
  238. package/lib/components/SearchInput/SearchInput.stories.tsx +0 -260
  239. package/lib/components/SearchInput/SearchInput.tsx +0 -81
  240. package/lib/components/SearchInput/index.ts +0 -2
  241. package/lib/components/Separator/Separator.stories.tsx +0 -95
  242. package/lib/components/Separator/Separator.tsx +0 -57
  243. package/lib/components/Separator/index.ts +0 -1
  244. package/lib/components/Shimmer/Shimmer.stories.tsx +0 -317
  245. package/lib/components/Shimmer/Shimmer.tsx +0 -143
  246. package/lib/components/Shimmer/index.ts +0 -1
  247. package/lib/components/SideMenuLink/SideMenuLink.stories.tsx +0 -153
  248. package/lib/components/SideMenuLink/SideMenuLink.tsx +0 -344
  249. package/lib/components/SideMenuLink/index.ts +0 -1
  250. package/lib/components/StatusIndicator/StatusIndicator.stories.tsx +0 -130
  251. package/lib/components/StatusIndicator/StatusIndicator.tsx +0 -62
  252. package/lib/components/StatusIndicator/index.ts +0 -1
  253. package/lib/components/Stepper/Step/Step.stories.tsx +0 -117
  254. package/lib/components/Stepper/Step/Step.tsx +0 -125
  255. package/lib/components/Stepper/Step/StepContent.tsx +0 -40
  256. package/lib/components/Stepper/Step/StepLabel.tsx +0 -40
  257. package/lib/components/Stepper/Step/index.ts +0 -3
  258. package/lib/components/Stepper/Stepper.stories.tsx +0 -422
  259. package/lib/components/Stepper/Stepper.tsx +0 -68
  260. package/lib/components/Stepper/index.ts +0 -2
  261. package/lib/components/StickyBar/StickyBar.stories.tsx +0 -152
  262. package/lib/components/StickyBar/StickyBar.tsx +0 -65
  263. package/lib/components/StickyBar/index.ts +0 -1
  264. package/lib/components/SubMenu/SubMenu.stories.tsx +0 -413
  265. package/lib/components/SubMenu/SubMenu.tsx +0 -96
  266. package/lib/components/SubMenu/SubMenuGroup.tsx +0 -161
  267. package/lib/components/SubMenu/SubMenuItem.tsx +0 -170
  268. package/lib/components/SubMenu/SubMenuLink.tsx +0 -87
  269. package/lib/components/SubMenu/index.ts +0 -4
  270. package/lib/components/Table/BasicTable.stories.tsx +0 -647
  271. package/lib/components/Table/BulkActions.stories.tsx +0 -267
  272. package/lib/components/Table/Cell.tsx +0 -125
  273. package/lib/components/Table/DefaultRow.tsx +0 -159
  274. package/lib/components/Table/DefaultTableHeader.tsx +0 -244
  275. package/lib/components/Table/InlineEdit.stories.tsx +0 -390
  276. package/lib/components/Table/StaticTable.tsx +0 -230
  277. package/lib/components/Table/Table.docs.ts +0 -495
  278. package/lib/components/Table/Table.tsx +0 -135
  279. package/lib/components/Table/TableActionBar.tsx +0 -55
  280. package/lib/components/Table/TableBottomBar.tsx +0 -25
  281. package/lib/components/Table/TableTopBar.tsx +0 -25
  282. package/lib/components/Table/dummyTableData.ts +0 -2189
  283. package/lib/components/Table/hooks.ts +0 -102
  284. package/lib/components/Table/index.ts +0 -8
  285. package/lib/components/Tabs/Tab/Tab.stories.tsx +0 -151
  286. package/lib/components/Tabs/Tab/Tab.tsx +0 -152
  287. package/lib/components/Tabs/Tab/index.ts +0 -1
  288. package/lib/components/Tabs/TabList/TabDropdown.tsx +0 -125
  289. package/lib/components/Tabs/TabList/TabList.stories.tsx +0 -172
  290. package/lib/components/Tabs/TabList/TabList.tsx +0 -178
  291. package/lib/components/Tabs/TabList/index.ts +0 -1
  292. package/lib/components/Tabs/index.ts +0 -2
  293. package/lib/components/Text/HighlightedText.stories.tsx +0 -122
  294. package/lib/components/Text/Text.stories.tsx +0 -302
  295. package/lib/components/Text/Text.tsx +0 -882
  296. package/lib/components/Text/index.ts +0 -30
  297. package/lib/components/TextTile/TextTile.stories.tsx +0 -89
  298. package/lib/components/TextTile/TextTile.tsx +0 -51
  299. package/lib/components/TextTile/index.ts +0 -1
  300. package/lib/components/Textarea/Textarea.stories.tsx +0 -324
  301. package/lib/components/Textarea/Textarea.tsx +0 -148
  302. package/lib/components/Textarea/index.ts +0 -2
  303. package/lib/components/Timeline/Timeline.stories.tsx +0 -272
  304. package/lib/components/Timeline/Timeline.tsx +0 -57
  305. package/lib/components/Timeline/TimelineItem/TimelineItem.stories.tsx +0 -216
  306. package/lib/components/Timeline/TimelineItem/TimelineItem.tsx +0 -128
  307. package/lib/components/Timeline/TimelineItem/index.ts +0 -1
  308. package/lib/components/Timeline/index.ts +0 -2
  309. package/lib/components/Toast/Toast.stories.tsx +0 -274
  310. package/lib/components/Toast/Toast.tsx +0 -264
  311. package/lib/components/Toast/ToastContainer.tsx +0 -123
  312. package/lib/components/Toast/ToastManager.ts +0 -60
  313. package/lib/components/Toast/index.ts +0 -10
  314. package/lib/components/Toggle/Toggle.stories.tsx +0 -175
  315. package/lib/components/Toggle/Toggle.tsx +0 -121
  316. package/lib/components/Toggle/index.ts +0 -1
  317. package/lib/components/TokenListInput/TokenListInput.stories.tsx +0 -678
  318. package/lib/components/TokenListInput/TokenListInput.tsx +0 -393
  319. package/lib/components/TokenListInput/TokenValueChips.tsx +0 -69
  320. package/lib/components/TokenListInput/index.ts +0 -1
  321. package/lib/components/Tooltip/Tooltip.stories.tsx +0 -316
  322. package/lib/components/Tooltip/Tooltip.tsx +0 -188
  323. package/lib/components/Tooltip/index.ts +0 -1
  324. package/lib/components/Truncate/Truncate.stories.tsx +0 -106
  325. package/lib/components/Truncate/Truncate.tsx +0 -80
  326. package/lib/components/Truncate/index.ts +0 -2
  327. package/lib/components/TruncatedTextWithTooltip/TruncatedTextWithTooltip.stories.tsx +0 -147
  328. package/lib/components/TruncatedTextWithTooltip/TruncatedTextWithTooltip.tsx +0 -109
  329. package/lib/components/TruncatedTextWithTooltip/index.ts +0 -1
  330. package/lib/components/Typeahead/SimpleTypeahead.stories.tsx +0 -567
  331. package/lib/components/Typeahead/SimpleTypeahead.tsx +0 -159
  332. package/lib/components/Typeahead/Typeahead.stories.tsx +0 -552
  333. package/lib/components/Typeahead/Typeahead.tsx +0 -243
  334. package/lib/components/Typeahead/index.ts +0 -2
  335. package/lib/components/WeekdayPicker/WeekdayPicker.stories.tsx +0 -263
  336. package/lib/components/WeekdayPicker/WeekdayPicker.tsx +0 -224
  337. package/lib/components/WeekdayPicker/index.ts +0 -1
  338. package/lib/components/index.ts +0 -77
  339. package/lib/hooks/index.ts +0 -16
  340. package/lib/hooks/useArbitraryOptionAddition/index.ts +0 -1
  341. package/lib/hooks/useArbitraryOptionAddition/useArbitraryOptionAddition.stories.tsx +0 -158
  342. package/lib/hooks/useArbitraryOptionAddition/useArbitraryOptionAddition.ts +0 -127
  343. package/lib/hooks/useCopyToClipboard/index.ts +0 -1
  344. package/lib/hooks/useCopyToClipboard/useCopyToClipboard.stories.tsx +0 -112
  345. package/lib/hooks/useCopyToClipboard/useCopyToClipboard.ts +0 -29
  346. package/lib/hooks/useDebounce/index.ts +0 -1
  347. package/lib/hooks/useDebounce/useDebounce.stories.tsx +0 -82
  348. package/lib/hooks/useDebounce/useDebounce.ts +0 -15
  349. package/lib/hooks/useFileUpload/index.ts +0 -1
  350. package/lib/hooks/useFileUpload/useFileUpload.stories.tsx +0 -468
  351. package/lib/hooks/useFileUpload/useFileUpload.ts +0 -326
  352. package/lib/hooks/useFilteredOptions/index.ts +0 -1
  353. package/lib/hooks/useFilteredOptions/useFilteredOptions.stories.tsx +0 -142
  354. package/lib/hooks/useFilteredOptions/useFilteredOptions.ts +0 -92
  355. package/lib/hooks/useInfiniteScroll/index.ts +0 -1
  356. package/lib/hooks/useInfiniteScroll/useInfiniteScroll.ts +0 -85
  357. package/lib/hooks/useInputState/index.ts +0 -1
  358. package/lib/hooks/useInputState/useInputState.stories.tsx +0 -62
  359. package/lib/hooks/useInputState/useInputState.ts +0 -24
  360. package/lib/hooks/useLockedBody/index.ts +0 -1
  361. package/lib/hooks/useLockedBody/useLockedBody.stories.tsx +0 -71
  362. package/lib/hooks/useLockedBody/useLockedBody.ts +0 -53
  363. package/lib/hooks/useModal/index.ts +0 -1
  364. package/lib/hooks/useModal/useModal.stories.tsx +0 -134
  365. package/lib/hooks/useModal/useModal.ts +0 -36
  366. package/lib/hooks/useMountTransition/index.ts +0 -25
  367. package/lib/hooks/useMountTransition/useMountTransition.stories.tsx +0 -64
  368. package/lib/hooks/usePagination/index.ts +0 -1
  369. package/lib/hooks/usePagination/usePagination.stories.tsx +0 -72
  370. package/lib/hooks/usePagination/usePagination.ts +0 -151
  371. package/lib/hooks/useReferenceElementWidth/index.ts +0 -1
  372. package/lib/hooks/useReferenceElementWidth/useReferenceElementWidth.ts +0 -19
  373. package/lib/hooks/useResizeObserver/index.ts +0 -1
  374. package/lib/hooks/useResizeObserver/useResizeObserver.ts +0 -29
  375. package/lib/hooks/useToastPortal/index.ts +0 -1
  376. package/lib/hooks/useToastPortal/useToastPortal.ts +0 -34
  377. package/lib/hooks/useToggle/index.ts +0 -1
  378. package/lib/hooks/useToggle/useToggle.stories.tsx +0 -70
  379. package/lib/hooks/useToggle/useToggle.ts +0 -13
  380. package/lib/hooks/useWindowSize/index.ts +0 -1
  381. package/lib/hooks/useWindowSize/useWindowSize.stories.tsx +0 -62
  382. package/lib/hooks/useWindowSize/useWindowSize.ts +0 -39
  383. package/lib/index.ts +0 -6
  384. package/lib/styles/index.ts +0 -533
  385. package/lib/styles/variables/_border.ts +0 -23
  386. package/lib/styles/variables/_color.ts +0 -207
  387. package/lib/styles/variables/_elevation.ts +0 -13
  388. package/lib/styles/variables/_font.ts +0 -59
  389. package/lib/styles/variables/_motion.ts +0 -11
  390. package/lib/styles/variables/_opacity.ts +0 -29
  391. package/lib/styles/variables/_shadow.ts +0 -47
  392. package/lib/styles/variables/_size.ts +0 -113
  393. package/lib/styles/variables/_space.ts +0 -23
  394. package/lib/types/charts.ts +0 -247
  395. package/lib/types/common.ts +0 -11
  396. package/lib/types/cssvariables.d.ts +0 -8
  397. package/lib/types/date-range-picker.ts +0 -20
  398. package/lib/types/flow-to-typescript-codemod.d.ts +0 -48
  399. package/lib/types/global.d.ts +0 -84
  400. package/lib/types/index.ts +0 -6
  401. package/lib/types/menu.ts +0 -13
  402. package/lib/types/toast.ts +0 -34
  403. package/lib/types/typography.ts +0 -17
  404. package/lib/utils/array/are-arrays-equal.ts +0 -12
  405. package/lib/utils/array/index.ts +0 -1
  406. package/lib/utils/charts/charts.ts +0 -110
  407. package/lib/utils/charts/columnChart.ts +0 -62
  408. package/lib/utils/charts/donutChart.ts +0 -123
  409. package/lib/utils/charts/funnelChart.ts +0 -97
  410. package/lib/utils/charts/helpers.ts +0 -65
  411. package/lib/utils/charts/index.ts +0 -7
  412. package/lib/utils/charts/lineChart.ts +0 -51
  413. package/lib/utils/charts/spiderChart.ts +0 -57
  414. package/lib/utils/charts/typography.ts +0 -52
  415. package/lib/utils/classify/classify.stories.tsx +0 -65
  416. package/lib/utils/classify/index.ts +0 -27
  417. package/lib/utils/click-away/ClickAway.stories.tsx +0 -248
  418. package/lib/utils/click-away/click-away.ts +0 -230
  419. package/lib/utils/click-away/index.ts +0 -1
  420. package/lib/utils/date-range-picker/date-range-picker.ts +0 -430
  421. package/lib/utils/date-range-picker/index.ts +0 -2
  422. package/lib/utils/date-range-picker/timezones.ts +0 -263
  423. package/lib/utils/dom/dom.stories.tsx +0 -59
  424. package/lib/utils/dom/dom.ts +0 -247
  425. package/lib/utils/dom/index.ts +0 -1
  426. package/lib/utils/helpers/helpers.stories.tsx +0 -124
  427. package/lib/utils/helpers/helpers.ts +0 -51
  428. package/lib/utils/helpers/index.ts +0 -1
  429. package/lib/utils/index.ts +0 -14
  430. package/lib/utils/makeClassNameComponent/index.ts +0 -1
  431. package/lib/utils/makeClassNameComponent/makeClassNameComponent.stories.tsx +0 -46
  432. package/lib/utils/makeClassNameComponent/makeClassNameComponent.tsx +0 -60
  433. package/lib/utils/menu/index.ts +0 -1
  434. package/lib/utils/menu/menu.ts +0 -174
  435. package/lib/utils/merge-refs/index.ts +0 -1
  436. package/lib/utils/merge-refs/merge-refs.stories.tsx +0 -92
  437. package/lib/utils/merge-refs/merge-refs.ts +0 -16
  438. package/lib/utils/rating/index.ts +0 -1
  439. package/lib/utils/rating/rating.ts +0 -30
  440. package/lib/utils/score-bar/index.ts +0 -1
  441. package/lib/utils/score-bar/score-bar.ts +0 -45
  442. package/lib/utils/string/index.ts +0 -1
  443. package/lib/utils/string/string.stories.tsx +0 -71
  444. package/lib/utils/string/string.ts +0 -26
  445. package/lib/utils/token-list-input/token-list-input.ts +0 -32
  446. package/lib/utils/tokens/index.ts +0 -1
  447. package/lib/utils/tokens/tokens.ts +0 -237
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@spaced-out/ui-design-system",
3
- "version": "0.4.13-beta.0",
4
- "main": "index.js",
3
+ "version": "0.4.13-beta.1",
4
+ "main": "lib/index.js",
5
5
  "types": "lib/index.d.ts",
6
6
  "description": "Sense UI components library",
7
7
  "author": {
@@ -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
- };