@spaced-out/ui-design-system 0.3.45 → 0.3.47-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (528) hide show
  1. package/.all-contributorsrc +9 -0
  2. package/CHANGELOG.md +19 -0
  3. package/README.md +1 -0
  4. package/gulpfile.js +5 -2
  5. package/lib/components/Avatar/Avatar.js +14 -19
  6. package/lib/components/AvatarGroup/AvatarGroup.js +4 -7
  7. package/lib/components/AvatarGroup/AvatarGroup.js.flow +2 -2
  8. package/lib/components/Badge/Badge.js +6 -11
  9. package/lib/components/BadgedIcon/BadgedIcon.js +2 -4
  10. package/lib/components/Banner/Banner.js +5 -7
  11. package/lib/components/Breadcrumbs/BreadcrumbLink/BreadcrumbLink.js +4 -6
  12. package/lib/components/Breadcrumbs/Breadcrumbs.js +4 -7
  13. package/lib/components/Button/Button.js +8 -14
  14. package/lib/components/ButtonDropdown/ButtonDropdown.js +29 -21
  15. package/lib/components/ButtonDropdown/ButtonDropdown.js.flow +58 -33
  16. package/lib/components/ButtonDropdown/ButtonDropdown.module.css +8 -1
  17. package/lib/components/ButtonDropdown/SimpleButtonDropdown.js +6 -5
  18. package/lib/components/ButtonDropdown/SimpleButtonDropdown.js.flow +6 -1
  19. package/lib/components/ButtonTabs/ButtonTab/ButtonTab.js +5 -7
  20. package/lib/components/ButtonTabs/ButtonTabDropdown.js +16 -10
  21. package/lib/components/ButtonTabs/ButtonTabDropdown.js.flow +40 -24
  22. package/lib/components/ButtonTabs/ButtonTabDropdown.module.css +4 -0
  23. package/lib/components/ButtonTabs/ButtonTabs.js +8 -9
  24. package/lib/components/ButtonTabs/ButtonTabs.js.flow +4 -0
  25. package/lib/components/Card/Card.js +7 -11
  26. package/lib/components/Charts/ChartTooltip/index.js +3 -5
  27. package/lib/components/Charts/ChartWrapper/ChartWrapper.js +5 -13
  28. package/lib/components/Charts/ColumnChart/ColumnChart.js +2 -6
  29. package/lib/components/Charts/DonutChart/DonutChart.js +2 -6
  30. package/lib/components/Charts/FunnelChart/FunnelChart.js +2 -7
  31. package/lib/components/Charts/LineChart/LineChart.js +2 -6
  32. package/lib/components/Charts/SpiderChart/SpiderChart.js +2 -7
  33. package/lib/components/ChatBubble/ChatBubble.js +5 -8
  34. package/lib/components/Checkbox/Checkbox.js +8 -7
  35. package/lib/components/Checkbox/CheckboxGroup.js +5 -8
  36. package/lib/components/Chip/Chip.js +5 -8
  37. package/lib/components/CircularLoader/CircularLoader.js +4 -7
  38. package/lib/components/CollapsibleCard/CollapsibleCard.js +5 -9
  39. package/lib/components/Combobox/Combobox.js +4 -7
  40. package/lib/components/Combobox/helper.js +3 -7
  41. package/lib/components/ConditionalWrapper/ConditionalWrapper.js +1 -3
  42. package/lib/components/DateRangePicker/Calendar.js +2 -5
  43. package/lib/components/DateRangePicker/DateRangePicker.js +4 -8
  44. package/lib/components/DateRangePicker/DateRangeWrapper.js +5 -7
  45. package/lib/components/DateRangePicker/Day.js +2 -6
  46. package/lib/components/Dialog/Dialog.js +4 -6
  47. package/lib/components/Disclaimer/Disclaimer.js +5 -7
  48. package/lib/components/Dropdown/Dropdown.js +28 -15
  49. package/lib/components/Dropdown/Dropdown.js.flow +57 -32
  50. package/lib/components/Dropdown/Dropdown.module.css +5 -0
  51. package/lib/components/Dropdown/SimpleDropdown.js +5 -5
  52. package/lib/components/Dropdown/SimpleDropdown.js.flow +4 -0
  53. package/lib/components/EmptyState/EmptyImages/CalendarEmptyImage.js +1 -3
  54. package/lib/components/EmptyState/EmptyImages/ChartEmptyImage.js +1 -3
  55. package/lib/components/EmptyState/EmptyImages/DataEmptyImage.js +1 -3
  56. package/lib/components/EmptyState/EmptyImages/FileEmptyImage.js +1 -3
  57. package/lib/components/EmptyState/EmptyImages/MessageEmptyImage.js +1 -3
  58. package/lib/components/EmptyState/EmptyImages/UploadEmptyImage.js +1 -3
  59. package/lib/components/EmptyState/EmptyState.js +5 -7
  60. package/lib/components/ErrorMessage/ErrorImages/ForbiddenImage.js +1 -3
  61. package/lib/components/ErrorMessage/ErrorImages/NotFoundImage.js +1 -3
  62. package/lib/components/ErrorMessage/ErrorImages/ServerErrorImage.js +1 -3
  63. package/lib/components/ErrorMessage/ErrorImages/UnauthorizedImage.js +1 -3
  64. package/lib/components/ErrorMessage/ErrorMessage.js +5 -7
  65. package/lib/components/FileUpload/FileBlock/FileBlock.js +3 -6
  66. package/lib/components/FileUpload/FileUpload.js +12 -6
  67. package/lib/components/FilterButtonOverlay/FilterButtonOverlay.js +5 -7
  68. package/lib/components/FocusManager/FocusManager.js +3 -4
  69. package/lib/components/FocusManagerWithArrowKeyNavigation/FocusManagerWithArrowKeyNavigation.js +4 -6
  70. package/lib/components/FormTitleWrapper/FormTitleWrapper.js +4 -7
  71. package/lib/components/Grid/Grid.js +3 -5
  72. package/lib/components/Icon/ClickableIcon.js +6 -9
  73. package/lib/components/Icon/Icon.docs.js +2 -4
  74. package/lib/components/Icon/Icon.js +6 -11
  75. package/lib/components/Icon/SemanticIcon.js +3 -4
  76. package/lib/components/InContextAlert/InContextAlert.js +4 -7
  77. package/lib/components/InfinitePagination/InfinitePagination.js +4 -8
  78. package/lib/components/InlineDropdown/InlineDropdown.js +30 -15
  79. package/lib/components/InlineDropdown/InlineDropdown.js.flow +57 -30
  80. package/lib/components/InlineDropdown/InlineDropdown.module.css +5 -0
  81. package/lib/components/InlineDropdown/SimpleInlineDropdown.js +5 -5
  82. package/lib/components/InlineDropdown/SimpleInlineDropdown.js.flow +4 -0
  83. package/lib/components/Input/Input.js +6 -10
  84. package/lib/components/KPIBox/KPIBox.js +5 -7
  85. package/lib/components/LinearLoader/LinearLoader.js +4 -7
  86. package/lib/components/Link/Link.js +7 -12
  87. package/lib/components/Menu/Menu.js +7 -7
  88. package/lib/components/Menu/MenuOptionButton.js +3 -4
  89. package/lib/components/Modal/Modal.js +4 -5
  90. package/lib/components/Notification/Notification.js +5 -9
  91. package/lib/components/OptionButton/OptionButton.js +5 -7
  92. package/lib/components/OptionButton/SimpleOptionButton.js +3 -5
  93. package/lib/components/PageTitle/PageTitle.js +6 -9
  94. package/lib/components/Pagination/Pagination.js +5 -7
  95. package/lib/components/Pagination/PaginationItem.js +2 -4
  96. package/lib/components/Panel/Panel.js +4 -6
  97. package/lib/components/ProgressDonut/ProgressDonut.js +4 -7
  98. package/lib/components/PromptChip/PromptChip.js +5 -9
  99. package/lib/components/PromptInput/PromptInput.js +4 -7
  100. package/lib/components/RadioButton/RadioButton.js +12 -7
  101. package/lib/components/RadioButton/RadioGroup.js +11 -8
  102. package/lib/components/RadioTile/RadioTile.js +5 -7
  103. package/lib/components/RangeSlider/RangeSlider.js +5 -8
  104. package/lib/components/Rating/Rating.js +5 -9
  105. package/lib/components/ScoreBar/ScoreBar.js +6 -11
  106. package/lib/components/SearchInput/SearchInput.js +5 -7
  107. package/lib/components/Separator/Separator.js +5 -9
  108. package/lib/components/Shimmer/Shimmer.js +5 -10
  109. package/lib/components/SideMenuLink/SideMenuLink.js +5 -8
  110. package/lib/components/StatusIndicator/StatusIndicator.js +6 -9
  111. package/lib/components/Stepper/Step/Step.js +4 -7
  112. package/lib/components/Stepper/Step/StepContent.js +2 -4
  113. package/lib/components/Stepper/Step/StepLabel.js +2 -4
  114. package/lib/components/Stepper/Stepper.js +4 -7
  115. package/lib/components/StickyBar/StickyBar.js +5 -7
  116. package/lib/components/SubMenu/SubMenu.js +4 -7
  117. package/lib/components/SubMenu/SubMenuGroup.js +3 -5
  118. package/lib/components/SubMenu/SubMenuItem.js +7 -10
  119. package/lib/components/SubMenu/SubMenuLink.js +4 -7
  120. package/lib/components/Table/Cell.js +8 -12
  121. package/lib/components/Table/DefaultRow.js +9 -6
  122. package/lib/components/Table/DefaultTableHeader.js +4 -8
  123. package/lib/components/Table/StaticTable.js +9 -13
  124. package/lib/components/Table/StaticTable.js.flow +1 -1
  125. package/lib/components/Table/Table.docs.js +3 -4
  126. package/lib/components/Table/Table.docs.js.flow +1 -1
  127. package/lib/components/Table/Table.js +4 -3
  128. package/lib/components/Table/TableActionBar.js +3 -4
  129. package/lib/components/Table/TableBottomBar.js +3 -4
  130. package/lib/components/Table/TableTopBar.js +3 -4
  131. package/lib/components/Table/dummyTableData.js +2 -4
  132. package/lib/components/Table/hooks.js +2 -4
  133. package/lib/components/Tabs/Tab/Tab.js +6 -10
  134. package/lib/components/Tabs/TabList/TabDropdown.js +17 -11
  135. package/lib/components/Tabs/TabList/TabDropdown.js.flow +38 -22
  136. package/lib/components/Tabs/TabList/TabDropdown.module.css +4 -0
  137. package/lib/components/Tabs/TabList/TabList.js +9 -11
  138. package/lib/components/Tabs/TabList/TabList.js.flow +4 -0
  139. package/lib/components/Text/Text.js +48 -75
  140. package/lib/components/TextTile/TextTile.js +4 -7
  141. package/lib/components/Textarea/Textarea.js +4 -6
  142. package/lib/components/Timeline/Timeline.js +4 -8
  143. package/lib/components/Timeline/TimelineItem/TimelineItem.js +3 -6
  144. package/lib/components/Toast/Toast.js +8 -12
  145. package/lib/components/Toast/ToastContainer.js +3 -6
  146. package/lib/components/Toast/ToastManager.js +5 -10
  147. package/lib/components/Toggle/Toggle.js +12 -7
  148. package/lib/components/TokenListInput/TokenListInput.js +33 -14
  149. package/lib/components/TokenListInput/TokenListInput.js.flow +58 -32
  150. package/lib/components/TokenListInput/TokenListInput.module.css +5 -0
  151. package/lib/components/TokenListInput/TokenValueChips.js +1 -3
  152. package/lib/components/Tooltip/Tooltip.js +9 -9
  153. package/lib/components/Tooltip/Tooltip.js.flow +2 -2
  154. package/lib/components/Truncate/Truncate.js +6 -10
  155. package/lib/components/TruncatedTextWithTooltip/TruncatedTextWithTooltip.js +3 -4
  156. package/lib/components/Typeahead/SimpleTypeahead.js +6 -6
  157. package/lib/components/Typeahead/SimpleTypeahead.js.flow +4 -0
  158. package/lib/components/Typeahead/Typeahead.js +30 -15
  159. package/lib/components/Typeahead/Typeahead.js.flow +58 -30
  160. package/lib/components/Typeahead/Typeahead.module.css +5 -0
  161. package/lib/components/WeekdayPicker/WeekdayPicker.js +5 -9
  162. package/lib/hooks/index.js +11 -0
  163. package/lib/hooks/index.js.flow +1 -0
  164. package/lib/hooks/useArbitraryOptionAddition/useArbitraryOptionAddition.js +0 -1
  165. package/lib/hooks/useCopyToClipboard/useCopyToClipboard.js +0 -2
  166. package/lib/hooks/useDebounce/useDebounce.js +1 -3
  167. package/lib/hooks/useFileUpload/useFileUpload.js +2 -4
  168. package/lib/hooks/useFilteredOptions/useFilteredOptions.js +1 -4
  169. package/lib/hooks/useInfiniteScroll/useInfiniteScroll.js +1 -3
  170. package/lib/hooks/useInputState/useInputState.js +1 -3
  171. package/lib/hooks/useLockedBody/useLockedBody.js +0 -1
  172. package/lib/hooks/useModal/useModal.js +0 -1
  173. package/lib/hooks/useMountTransition/index.js +1 -3
  174. package/lib/hooks/usePagination/usePagination.js +0 -1
  175. package/lib/hooks/useReferenceElementWidth/index.js +16 -0
  176. package/lib/hooks/useReferenceElementWidth/index.js.flow +3 -0
  177. package/lib/hooks/useReferenceElementWidth/useReferenceElementWidth.js +21 -0
  178. package/lib/hooks/useReferenceElementWidth/useReferenceElementWidth.js.flow +23 -0
  179. package/lib/hooks/useResizeObserver/useResizeObserver.js +1 -3
  180. package/lib/hooks/useToastPortal/useToastPortal.js +0 -1
  181. package/lib/hooks/useToggle/useToggle.js +0 -1
  182. package/lib/hooks/useWindowSize/useWindowSize.js +0 -1
  183. package/lib/styles/index.js +267 -535
  184. package/lib/styles/variables/_border.js +12 -25
  185. package/lib/styles/variables/_color.js +104 -209
  186. package/lib/styles/variables/_elevation.js +7 -15
  187. package/lib/styles/variables/_font.js +30 -61
  188. package/lib/styles/variables/_motion.js +6 -13
  189. package/lib/styles/variables/_opacity.js +15 -31
  190. package/lib/styles/variables/_shadow.js +24 -49
  191. package/lib/styles/variables/_size.js +57 -115
  192. package/lib/styles/variables/_space.js +12 -25
  193. package/lib/types/charts.js +1 -0
  194. package/lib/types/common.js +2 -4
  195. package/lib/types/menu.js +1 -0
  196. package/lib/types/toast.js +4 -8
  197. package/lib/types/typography.js +2 -4
  198. package/lib/utils/array/are-arrays-equal.js +0 -1
  199. package/lib/utils/charts/charts.js +4 -8
  200. package/lib/utils/charts/columnChart.js +1 -4
  201. package/lib/utils/charts/donutChart.js +2 -4
  202. package/lib/utils/charts/funnelChart.js +0 -4
  203. package/lib/utils/charts/helpers.js +9 -17
  204. package/lib/utils/charts/lineChart.js +0 -2
  205. package/lib/utils/charts/spiderChart.js +2 -3
  206. package/lib/utils/charts/typography.js +7 -14
  207. package/lib/utils/classify/index.js +2 -4
  208. package/lib/utils/click-away/click-away.js +50 -56
  209. package/lib/utils/date-range-picker/date-range-picker.js +6 -14
  210. package/lib/utils/date-range-picker/timezones.js +2 -5
  211. package/lib/utils/dom/dom.js +0 -1
  212. package/lib/utils/helpers/helpers.js +0 -1
  213. package/lib/utils/makeClassNameComponent/makeClassNameComponent.js +3 -4
  214. package/lib/utils/menu/menu.js +1 -3
  215. package/lib/utils/rating/rating.js +2 -5
  216. package/lib/utils/score-bar/score-bar.js +2 -4
  217. package/lib/utils/string/string.js +0 -1
  218. package/lib/utils/token-list-input/token-list-input.js +1 -3
  219. package/lib/utils/tokens/tokens.js +1 -3
  220. package/package.json +7 -7
  221. package/lib/components/Avatar/Avatar.d.ts +0 -263
  222. package/lib/components/Avatar/index.d.ts +0 -1
  223. package/lib/components/AvatarGroup/AvatarGroup.d.ts +0 -161
  224. package/lib/components/AvatarGroup/index.d.ts +0 -1
  225. package/lib/components/Badge/Badge.d.ts +0 -138
  226. package/lib/components/Badge/index.d.ts +0 -1
  227. package/lib/components/BadgedIcon/BadgedIcon.d.ts +0 -70
  228. package/lib/components/BadgedIcon/index.d.ts +0 -1
  229. package/lib/components/Banner/Banner.d.ts +0 -52
  230. package/lib/components/Banner/index.d.ts +0 -1
  231. package/lib/components/Breadcrumbs/BreadcrumbLink/BreadcrumbLink.d.ts +0 -50
  232. package/lib/components/Breadcrumbs/BreadcrumbLink/index.d.ts +0 -1
  233. package/lib/components/Breadcrumbs/Breadcrumbs.d.ts +0 -64
  234. package/lib/components/Breadcrumbs/index.d.ts +0 -2
  235. package/lib/components/Button/Button.d.ts +0 -288
  236. package/lib/components/Button/index.d.ts +0 -14
  237. package/lib/components/ButtonDropdown/ButtonDropdown.d.ts +0 -192
  238. package/lib/components/ButtonDropdown/SimpleButtonDropdown.d.ts +0 -148
  239. package/lib/components/ButtonDropdown/index.d.ts +0 -2
  240. package/lib/components/ButtonTabs/ButtonTab/ButtonTab.d.ts +0 -82
  241. package/lib/components/ButtonTabs/ButtonTab/index.d.ts +0 -1
  242. package/lib/components/ButtonTabs/ButtonTabDropdown.d.ts +0 -118
  243. package/lib/components/ButtonTabs/ButtonTabs.d.ts +0 -113
  244. package/lib/components/ButtonTabs/index.d.ts +0 -2
  245. package/lib/components/Card/Card.d.ts +0 -163
  246. package/lib/components/Card/index.d.ts +0 -1
  247. package/lib/components/Charts/ChartTooltip/index.d.ts +0 -10
  248. package/lib/components/Charts/ChartWrapper/ChartWrapper.d.ts +0 -184
  249. package/lib/components/Charts/ChartWrapper/index.d.ts +0 -1
  250. package/lib/components/Charts/ColumnChart/ColumnChart.d.ts +0 -111
  251. package/lib/components/Charts/ColumnChart/index.d.ts +0 -1
  252. package/lib/components/Charts/DonutChart/DonutChart.d.ts +0 -142
  253. package/lib/components/Charts/DonutChart/index.d.ts +0 -1
  254. package/lib/components/Charts/FunnelChart/FunnelChart.d.ts +0 -99
  255. package/lib/components/Charts/FunnelChart/index.d.ts +0 -1
  256. package/lib/components/Charts/LineChart/LineChart.d.ts +0 -97
  257. package/lib/components/Charts/LineChart/index.d.ts +0 -1
  258. package/lib/components/Charts/SpiderChart/SpiderChart.d.ts +0 -95
  259. package/lib/components/Charts/SpiderChart/index.d.ts +0 -1
  260. package/lib/components/Charts/index.d.ts +0 -7
  261. package/lib/components/ChatBubble/ChatBubble.d.ts +0 -203
  262. package/lib/components/ChatBubble/index.d.ts +0 -1
  263. package/lib/components/Checkbox/Checkbox.d.ts +0 -165
  264. package/lib/components/Checkbox/CheckboxGroup.d.ts +0 -113
  265. package/lib/components/Checkbox/index.d.ts +0 -2
  266. package/lib/components/Chip/Chip.d.ts +0 -202
  267. package/lib/components/Chip/index.d.ts +0 -2
  268. package/lib/components/CircularLoader/CircularLoader.d.ts +0 -56
  269. package/lib/components/CircularLoader/index.d.ts +0 -1
  270. package/lib/components/CollapsibleCard/CollapsibleCard.d.ts +0 -134
  271. package/lib/components/CollapsibleCard/index.d.ts +0 -1
  272. package/lib/components/Combobox/Combobox.d.ts +0 -292
  273. package/lib/components/Combobox/helper.d.ts +0 -205
  274. package/lib/components/Combobox/index.d.ts +0 -1
  275. package/lib/components/ConditionalWrapper/ConditionalWrapper.d.ts +0 -12
  276. package/lib/components/ConditionalWrapper/index.d.ts +0 -1
  277. package/lib/components/DateRangePicker/Calendar.d.ts +0 -97
  278. package/lib/components/DateRangePicker/DateRangePicker.d.ts +0 -196
  279. package/lib/components/DateRangePicker/DateRangeWrapper.d.ts +0 -347
  280. package/lib/components/DateRangePicker/Day.d.ts +0 -70
  281. package/lib/components/DateRangePicker/index.d.ts +0 -1
  282. package/lib/components/Dialog/Dialog.d.ts +0 -208
  283. package/lib/components/Dialog/index.d.ts +0 -1
  284. package/lib/components/Disclaimer/Disclaimer.d.ts +0 -32
  285. package/lib/components/Disclaimer/index.d.ts +0 -1
  286. package/lib/components/Dropdown/Dropdown.d.ts +0 -145
  287. package/lib/components/Dropdown/SimpleDropdown.d.ts +0 -142
  288. package/lib/components/Dropdown/index.d.ts +0 -2
  289. package/lib/components/EmptyState/EmptyImages/CalendarEmptyImage.d.ts +0 -108
  290. package/lib/components/EmptyState/EmptyImages/ChartEmptyImage.d.ts +0 -194
  291. package/lib/components/EmptyState/EmptyImages/DataEmptyImage.d.ts +0 -116
  292. package/lib/components/EmptyState/EmptyImages/FileEmptyImage.d.ts +0 -133
  293. package/lib/components/EmptyState/EmptyImages/MessageEmptyImage.d.ts +0 -64
  294. package/lib/components/EmptyState/EmptyImages/UploadEmptyImage.d.ts +0 -67
  295. package/lib/components/EmptyState/EmptyImages/index.d.ts +0 -6
  296. package/lib/components/EmptyState/EmptyState.d.ts +0 -82
  297. package/lib/components/EmptyState/index.d.ts +0 -1
  298. package/lib/components/ErrorMessage/ErrorImages/ForbiddenImage.d.ts +0 -85
  299. package/lib/components/ErrorMessage/ErrorImages/NotFoundImage.d.ts +0 -117
  300. package/lib/components/ErrorMessage/ErrorImages/ServerErrorImage.d.ts +0 -237
  301. package/lib/components/ErrorMessage/ErrorImages/UnauthorizedImage.d.ts +0 -73
  302. package/lib/components/ErrorMessage/ErrorImages/index.d.ts +0 -4
  303. package/lib/components/ErrorMessage/ErrorMessage.d.ts +0 -86
  304. package/lib/components/ErrorMessage/index.d.ts +0 -1
  305. package/lib/components/FileUpload/FileBlock/FileBlock.d.ts +0 -137
  306. package/lib/components/FileUpload/FileBlock/index.d.ts +0 -1
  307. package/lib/components/FileUpload/FileUpload.d.ts +0 -190
  308. package/lib/components/FileUpload/index.d.ts +0 -2
  309. package/lib/components/FilterButtonOverlay/FilterButtonOverlay.d.ts +0 -130
  310. package/lib/components/FilterButtonOverlay/index.d.ts +0 -1
  311. package/lib/components/FocusManager/FocusManager.d.ts +0 -52
  312. package/lib/components/FocusManager/index.d.ts +0 -1
  313. package/lib/components/FocusManagerWithArrowKeyNavigation/FocusManagerWithArrowKeyNavigation.d.ts +0 -137
  314. package/lib/components/FocusManagerWithArrowKeyNavigation/index.d.ts +0 -1
  315. package/lib/components/FormTitleWrapper/FormTitleWrapper.d.ts +0 -62
  316. package/lib/components/FormTitleWrapper/index.d.ts +0 -1
  317. package/lib/components/Grid/Grid.d.ts +0 -104
  318. package/lib/components/Grid/index.d.ts +0 -1
  319. package/lib/components/Icon/ClickableIcon.d.ts +0 -106
  320. package/lib/components/Icon/Icon.d.ts +0 -71
  321. package/lib/components/Icon/Icon.docs.d.ts +0 -152
  322. package/lib/components/Icon/SemanticIcon.d.ts +0 -42
  323. package/lib/components/Icon/index.d.ts +0 -3
  324. package/lib/components/InContextAlert/InContextAlert.d.ts +0 -210
  325. package/lib/components/InContextAlert/index.d.ts +0 -1
  326. package/lib/components/InfinitePagination/InfinitePagination.d.ts +0 -112
  327. package/lib/components/InfinitePagination/index.d.ts +0 -1
  328. package/lib/components/InlineDropdown/InlineDropdown.d.ts +0 -146
  329. package/lib/components/InlineDropdown/SimpleInlineDropdown.d.ts +0 -145
  330. package/lib/components/InlineDropdown/index.d.ts +0 -2
  331. package/lib/components/Input/Input.d.ts +0 -327
  332. package/lib/components/Input/index.d.ts +0 -1
  333. package/lib/components/KPIBox/KPIBox.d.ts +0 -89
  334. package/lib/components/KPIBox/index.d.ts +0 -1
  335. package/lib/components/LinearLoader/LinearLoader.d.ts +0 -44
  336. package/lib/components/LinearLoader/index.d.ts +0 -1
  337. package/lib/components/Link/Link.d.ts +0 -225
  338. package/lib/components/Link/index.d.ts +0 -1
  339. package/lib/components/Menu/Menu.d.ts +0 -379
  340. package/lib/components/Menu/MenuOptionButton.d.ts +0 -199
  341. package/lib/components/Menu/index.d.ts +0 -2
  342. package/lib/components/Modal/Modal.d.ts +0 -362
  343. package/lib/components/Modal/index.d.ts +0 -14
  344. package/lib/components/Notification/Notification.d.ts +0 -147
  345. package/lib/components/Notification/index.d.ts +0 -1
  346. package/lib/components/OptionButton/OptionButton.d.ts +0 -150
  347. package/lib/components/OptionButton/SimpleOptionButton.d.ts +0 -150
  348. package/lib/components/OptionButton/index.d.ts +0 -2
  349. package/lib/components/PageTitle/PageTitle.d.ts +0 -256
  350. package/lib/components/PageTitle/index.d.ts +0 -1
  351. package/lib/components/Pagination/Pagination.d.ts +0 -144
  352. package/lib/components/Pagination/PaginationItem.d.ts +0 -136
  353. package/lib/components/Pagination/index.d.ts +0 -1
  354. package/lib/components/Panel/Panel.d.ts +0 -168
  355. package/lib/components/Panel/index.d.ts +0 -9
  356. package/lib/components/ProgressDonut/ProgressDonut.d.ts +0 -102
  357. package/lib/components/ProgressDonut/index.d.ts +0 -1
  358. package/lib/components/PromptChip/PromptChip.d.ts +0 -167
  359. package/lib/components/PromptChip/index.d.ts +0 -1
  360. package/lib/components/PromptInput/PromptInput.d.ts +0 -189
  361. package/lib/components/PromptInput/index.d.ts +0 -1
  362. package/lib/components/RadioButton/RadioButton.d.ts +0 -132
  363. package/lib/components/RadioButton/RadioGroup.d.ts +0 -88
  364. package/lib/components/RadioButton/index.d.ts +0 -2
  365. package/lib/components/RadioTile/RadioTile.d.ts +0 -109
  366. package/lib/components/RadioTile/index.d.ts +0 -1
  367. package/lib/components/RangeSlider/RangeSlider.d.ts +0 -207
  368. package/lib/components/RangeSlider/index.d.ts +0 -1
  369. package/lib/components/Rating/Rating.d.ts +0 -131
  370. package/lib/components/Rating/index.d.ts +0 -1
  371. package/lib/components/ScoreBar/ScoreBar.d.ts +0 -122
  372. package/lib/components/ScoreBar/index.d.ts +0 -1
  373. package/lib/components/SearchInput/SearchInput.d.ts +0 -79
  374. package/lib/components/SearchInput/index.d.ts +0 -2
  375. package/lib/components/Separator/Separator.d.ts +0 -51
  376. package/lib/components/Separator/index.d.ts +0 -1
  377. package/lib/components/Shimmer/Shimmer.d.ts +0 -131
  378. package/lib/components/Shimmer/index.d.ts +0 -1
  379. package/lib/components/SideMenuLink/SideMenuLink.d.ts +0 -336
  380. package/lib/components/SideMenuLink/index.d.ts +0 -1
  381. package/lib/components/StatusIndicator/StatusIndicator.d.ts +0 -60
  382. package/lib/components/StatusIndicator/index.d.ts +0 -1
  383. package/lib/components/Stepper/Step/Step.d.ts +0 -119
  384. package/lib/components/Stepper/Step/StepContent.d.ts +0 -35
  385. package/lib/components/Stepper/Step/StepLabel.d.ts +0 -35
  386. package/lib/components/Stepper/Step/index.d.ts +0 -3
  387. package/lib/components/Stepper/Stepper.d.ts +0 -60
  388. package/lib/components/Stepper/index.d.ts +0 -2
  389. package/lib/components/StickyBar/StickyBar.d.ts +0 -55
  390. package/lib/components/StickyBar/index.d.ts +0 -1
  391. package/lib/components/SubMenu/SubMenu.d.ts +0 -89
  392. package/lib/components/SubMenu/SubMenuGroup.d.ts +0 -156
  393. package/lib/components/SubMenu/SubMenuItem.d.ts +0 -161
  394. package/lib/components/SubMenu/SubMenuLink.d.ts +0 -81
  395. package/lib/components/SubMenu/index.d.ts +0 -4
  396. package/lib/components/Table/Cell.d.ts +0 -107
  397. package/lib/components/Table/DefaultRow.d.ts +0 -145
  398. package/lib/components/Table/DefaultTableHeader.d.ts +0 -237
  399. package/lib/components/Table/StaticTable.d.ts +0 -205
  400. package/lib/components/Table/Table.d.ts +0 -114
  401. package/lib/components/Table/Table.docs.d.ts +0 -544
  402. package/lib/components/Table/TableActionBar.d.ts +0 -48
  403. package/lib/components/Table/TableBottomBar.d.ts +0 -20
  404. package/lib/components/Table/TableTopBar.d.ts +0 -20
  405. package/lib/components/Table/dummyTableData.d.ts +0 -2189
  406. package/lib/components/Table/hooks.d.ts +0 -98
  407. package/lib/components/Table/index.d.ts +0 -8
  408. package/lib/components/Tabs/Tab/Tab.d.ts +0 -146
  409. package/lib/components/Tabs/Tab/index.d.ts +0 -1
  410. package/lib/components/Tabs/TabList/TabDropdown.d.ts +0 -100
  411. package/lib/components/Tabs/TabList/TabList.d.ts +0 -157
  412. package/lib/components/Tabs/TabList/index.d.ts +0 -1
  413. package/lib/components/Tabs/index.d.ts +0 -2
  414. package/lib/components/Text/Text.d.ts +0 -1021
  415. package/lib/components/Text/index.d.ts +0 -30
  416. package/lib/components/TextTile/TextTile.d.ts +0 -40
  417. package/lib/components/TextTile/index.d.ts +0 -1
  418. package/lib/components/Textarea/Textarea.d.ts +0 -132
  419. package/lib/components/Textarea/index.d.ts +0 -2
  420. package/lib/components/Timeline/Timeline.d.ts +0 -40
  421. package/lib/components/Timeline/TimelineItem/TimelineItem.d.ts +0 -121
  422. package/lib/components/Timeline/TimelineItem/index.d.ts +0 -1
  423. package/lib/components/Timeline/index.d.ts +0 -2
  424. package/lib/components/Toast/Toast.d.ts +0 -248
  425. package/lib/components/Toast/ToastContainer.d.ts +0 -140
  426. package/lib/components/Toast/ToastManager.d.ts +0 -58
  427. package/lib/components/Toast/index.d.ts +0 -10
  428. package/lib/components/Toggle/Toggle.d.ts +0 -111
  429. package/lib/components/Toggle/index.d.ts +0 -1
  430. package/lib/components/TokenListInput/TokenListInput.d.ts +0 -351
  431. package/lib/components/TokenListInput/TokenValueChips.d.ts +0 -60
  432. package/lib/components/TokenListInput/index.d.ts +0 -1
  433. package/lib/components/Tooltip/Tooltip.d.ts +0 -186
  434. package/lib/components/Tooltip/index.d.ts +0 -1
  435. package/lib/components/Truncate/Truncate.d.ts +0 -87
  436. package/lib/components/Truncate/index.d.ts +0 -2
  437. package/lib/components/TruncatedTextWithTooltip/TruncatedTextWithTooltip.d.ts +0 -95
  438. package/lib/components/TruncatedTextWithTooltip/index.d.ts +0 -1
  439. package/lib/components/Typeahead/SimpleTypeahead.d.ts +0 -141
  440. package/lib/components/Typeahead/Typeahead.d.ts +0 -217
  441. package/lib/components/Typeahead/index.d.ts +0 -2
  442. package/lib/components/WeekdayPicker/WeekdayPicker.d.ts +0 -242
  443. package/lib/components/WeekdayPicker/index.d.ts +0 -1
  444. package/lib/components/index.d.ts +0 -74
  445. package/lib/hooks/index.d.ts +0 -15
  446. package/lib/hooks/useArbitraryOptionAddition/index.d.ts +0 -1
  447. package/lib/hooks/useArbitraryOptionAddition/useArbitraryOptionAddition.d.ts +0 -124
  448. package/lib/hooks/useCopyToClipboard/index.d.ts +0 -1
  449. package/lib/hooks/useCopyToClipboard/useCopyToClipboard.d.ts +0 -27
  450. package/lib/hooks/useDebounce/index.d.ts +0 -1
  451. package/lib/hooks/useDebounce/useDebounce.d.ts +0 -13
  452. package/lib/hooks/useFileUpload/index.d.ts +0 -1
  453. package/lib/hooks/useFileUpload/useFileUpload.d.ts +0 -342
  454. package/lib/hooks/useFilteredOptions/index.d.ts +0 -1
  455. package/lib/hooks/useFilteredOptions/useFilteredOptions.d.ts +0 -87
  456. package/lib/hooks/useInfiniteScroll/index.d.ts +0 -1
  457. package/lib/hooks/useInfiniteScroll/useInfiniteScroll.d.ts +0 -77
  458. package/lib/hooks/useInputState/index.d.ts +0 -1
  459. package/lib/hooks/useInputState/useInputState.d.ts +0 -22
  460. package/lib/hooks/useLockedBody/index.d.ts +0 -1
  461. package/lib/hooks/useLockedBody/useLockedBody.d.ts +0 -46
  462. package/lib/hooks/useModal/index.d.ts +0 -1
  463. package/lib/hooks/useModal/useModal.d.ts +0 -32
  464. package/lib/hooks/useMountTransition/index.d.ts +0 -24
  465. package/lib/hooks/usePagination/index.d.ts +0 -1
  466. package/lib/hooks/usePagination/usePagination.d.ts +0 -140
  467. package/lib/hooks/useResizeObserver/index.d.ts +0 -1
  468. package/lib/hooks/useResizeObserver/useResizeObserver.d.ts +0 -22
  469. package/lib/hooks/useToastPortal/index.d.ts +0 -1
  470. package/lib/hooks/useToastPortal/useToastPortal.d.ts +0 -31
  471. package/lib/hooks/useToggle/index.d.ts +0 -1
  472. package/lib/hooks/useToggle/useToggle.d.ts +0 -11
  473. package/lib/hooks/useWindowSize/index.d.ts +0 -1
  474. package/lib/hooks/useWindowSize/useWindowSize.d.ts +0 -28
  475. package/lib/index.d.ts +0 -5
  476. package/lib/styles/index.d.ts +0 -267
  477. package/lib/styles/variables/_border.d.ts +0 -12
  478. package/lib/styles/variables/_color.d.ts +0 -104
  479. package/lib/styles/variables/_elevation.d.ts +0 -7
  480. package/lib/styles/variables/_font.d.ts +0 -30
  481. package/lib/styles/variables/_motion.d.ts +0 -6
  482. package/lib/styles/variables/_opacity.d.ts +0 -15
  483. package/lib/styles/variables/_shadow.d.ts +0 -24
  484. package/lib/styles/variables/_size.d.ts +0 -57
  485. package/lib/styles/variables/_space.d.ts +0 -12
  486. package/lib/types/charts.d.ts +0 -225
  487. package/lib/types/common.d.ts +0 -10
  488. package/lib/types/date-range-picker.d.ts +0 -17
  489. package/lib/types/index.d.ts +0 -6
  490. package/lib/types/menu.d.ts +0 -13
  491. package/lib/types/toast.d.ts +0 -32
  492. package/lib/types/typography.d.ts +0 -17
  493. package/lib/utils/array/are-arrays-equal.d.ts +0 -11
  494. package/lib/utils/array/index.d.ts +0 -1
  495. package/lib/utils/charts/charts.d.ts +0 -102
  496. package/lib/utils/charts/columnChart.d.ts +0 -51
  497. package/lib/utils/charts/donutChart.d.ts +0 -116
  498. package/lib/utils/charts/funnelChart.d.ts +0 -94
  499. package/lib/utils/charts/helpers.d.ts +0 -44
  500. package/lib/utils/charts/index.d.ts +0 -7
  501. package/lib/utils/charts/lineChart.d.ts +0 -44
  502. package/lib/utils/charts/spiderChart.d.ts +0 -46
  503. package/lib/utils/charts/typography.d.ts +0 -42
  504. package/lib/utils/classify/index.d.ts +0 -27
  505. package/lib/utils/click-away/click-away.d.ts +0 -194
  506. package/lib/utils/click-away/index.d.ts +0 -1
  507. package/lib/utils/date-range-picker/date-range-picker.d.ts +0 -411
  508. package/lib/utils/date-range-picker/index.d.ts +0 -2
  509. package/lib/utils/date-range-picker/timezones.d.ts +0 -262
  510. package/lib/utils/dom/dom.d.ts +0 -245
  511. package/lib/utils/dom/index.d.ts +0 -1
  512. package/lib/utils/helpers/helpers.d.ts +0 -48
  513. package/lib/utils/helpers/index.d.ts +0 -1
  514. package/lib/utils/index.d.ts +0 -14
  515. package/lib/utils/makeClassNameComponent/index.d.ts +0 -1
  516. package/lib/utils/makeClassNameComponent/makeClassNameComponent.d.ts +0 -73
  517. package/lib/utils/menu/index.d.ts +0 -1
  518. package/lib/utils/merge-refs/index.d.ts +0 -1
  519. package/lib/utils/merge-refs/merge-refs.d.ts +0 -15
  520. package/lib/utils/rating/index.d.ts +0 -1
  521. package/lib/utils/rating/rating.d.ts +0 -31
  522. package/lib/utils/score-bar/index.d.ts +0 -1
  523. package/lib/utils/score-bar/score-bar.d.ts +0 -54
  524. package/lib/utils/string/index.d.ts +0 -1
  525. package/lib/utils/string/string.d.ts +0 -30
  526. package/lib/utils/token-list-input/token-list-input.d.ts +0 -32
  527. package/lib/utils/tokens/index.d.ts +0 -1
  528. package/lib/utils/tokens/tokens.d.ts +0 -230
@@ -1,203 +0,0 @@
1
- import {$ReadOnly, $Values} from 'utility-types';
2
- import * as React from 'react';
3
- import classify from '../../utils/classify';
4
- import type {AvatarProps} from '../Avatar';
5
- import {Avatar} from '../Avatar';
6
- import {Icon, ICON_SIZE, ICON_TYPE} from '../Icon';
7
- import type {BaseTooltipProps} from '../Tooltip';
8
- import {Tooltip} from '../Tooltip';
9
- import css from './ChatBubble.module.css';
10
-
11
- const getNamedComponent = (
12
- childrenArray: Array<React.ReactNode>,
13
- componentDisplayName: string,
14
- ): (React.ReactNode | null | undefined) | React.ReactNode[] => {
15
- const nodes: React.ReactNode[] = [];
16
-
17
- for (const child of childrenArray) {
18
- if (
19
- // $FlowFixMe
20
- child?.type?.displayName === componentDisplayName
21
- ) {
22
- nodes.push(child);
23
- }
24
- }
25
-
26
- return nodes.length > 1 ? nodes : nodes[0] || null;
27
- };
28
-
29
- export type ClassNames = $ReadOnly<{
30
- wrapper?: string;
31
- }>;
32
- export const CHAT_BUBBLE_ORIENTATION = Object.freeze({
33
- left: 'left',
34
- right: 'right ',
35
- });
36
- export type ChatBubbleOrientation = $Values<typeof CHAT_BUBBLE_ORIENTATION>;
37
- export type ChatBubbleProps = {
38
- classNames?: ClassNames;
39
- orientation?: ChatBubbleOrientation;
40
- children: React.ReactNode;
41
- };
42
- export const ChatBubble: React$AbstractComponent<
43
- ChatBubbleProps,
44
- HTMLDivElement
45
- > = React.forwardRef<ChatBubbleProps, HTMLDivElement>(
46
- ({classNames, orientation = 'left', children}: ChatBubbleProps, ref) => {
47
- const isLeftAligned = orientation === 'left';
48
- const childrenArray: React.ReactNode[] = React.Children.toArray(children);
49
- const anchorComponent = getNamedComponent(childrenArray, 'ChatAnchor');
50
- const chatComponent = getNamedComponent(childrenArray, 'ChatContent');
51
- return (
52
- <div
53
- ref={ref}
54
- data-testid="ChatBubble"
55
- className={classify(
56
- css.chatBubbleWrapper,
57
- {
58
- [css.chatBubbleWrapperRight]: !isLeftAligned,
59
- },
60
- classNames?.wrapper,
61
- )}
62
- >
63
- {anchorComponent}
64
- {chatComponent}
65
- </div>
66
- );
67
- },
68
- );
69
- export type ChatAnchorProps = {
70
- isAI?: boolean;
71
- tooltip?: BaseTooltipProps;
72
- classNames?: ClassNames;
73
- avatarProps?: AvatarProps;
74
- };
75
- export const ChatAnchor = ({
76
- isAI = true,
77
- tooltip,
78
- classNames,
79
- avatarProps,
80
- }: ChatAnchorProps): React.ReactNode => (
81
- <div
82
- data-testid="ChatAnchor"
83
- className={classify(css.chatAnchorWrapper, classNames?.wrapper)}
84
- >
85
- <Tooltip {...tooltip} hidden={!tooltip}>
86
- {isAI ? (
87
- <Icon
88
- name="sparkle"
89
- color="information"
90
- type={ICON_TYPE.solid}
91
- size={ICON_SIZE.large}
92
- />
93
- ) : (
94
- <Avatar {...avatarProps} />
95
- )}
96
- </Tooltip>
97
- </div>
98
- );
99
- ChatAnchor.displayName = 'ChatAnchor';
100
- export type ChatContentProps = {
101
- classNames?: ClassNames;
102
- children?: React.ReactNode;
103
- };
104
- export const ChatContent = ({
105
- classNames,
106
- children,
107
- }: ChatContentProps): React.ReactNode => (
108
- <div
109
- data-testid="ChatContent"
110
- className={classify(css.chatContentWrapper, classNames?.wrapper)}
111
- >
112
- {children}
113
- </div>
114
- );
115
- ChatContent.displayName = 'ChatContent';
116
- export type ChatBodyClassNames = $ReadOnly<{
117
- wrapper?: string;
118
- loader: string;
119
- }>;
120
- export type ChatBodyProps = {
121
- withBgColor?: boolean;
122
- isLoading?: boolean;
123
- loadingText?: string;
124
- children?: React.ReactNode;
125
- classNames?: ClassNames;
126
- };
127
- export const ChatBody = ({
128
- withBgColor = true,
129
- isLoading,
130
- children,
131
- loadingText = 'Generating',
132
- classNames,
133
- }: ChatBodyProps): React.ReactNode => (
134
- <div
135
- data-testid="ChatBody"
136
- className={classify(
137
- css.chatBodyWrapper,
138
- {
139
- [css.chatBodyWrapperLoading]: isLoading || !withBgColor,
140
- [css.chatBodyWrapperBgColor]: withBgColor,
141
- },
142
- classNames?.wrapper,
143
- )}
144
- >
145
- {isLoading ? (
146
- <div className={classify(css.loadingContainer, classNames?.wrapper)}>
147
- <span className={css.loadingText}>{loadingText}</span>
148
- <span className={css.loader}>
149
- <span className={css.dot} />
150
- <span className={css.dot} />
151
- <span className={css.dot} />
152
- </span>
153
- </div>
154
- ) : (
155
- children
156
- )}
157
- </div>
158
- );
159
- ChatBody.displayName = 'ChatBody';
160
- export type ChatFooterProps = {
161
- classNames?: ClassNames;
162
- children?: React.ReactNode;
163
- };
164
- export const ChatFooter = ({
165
- children,
166
- classNames,
167
- }: ChatFooterProps): React.ReactNode => {
168
- const childrenArray: React.ReactNode[] = React.Children.toArray(children);
169
- const leftSlot = getNamedComponent(childrenArray, 'ChatFooterLeftSlot');
170
- const rightSlot = getNamedComponent(childrenArray, 'ChatFooterRightSlot');
171
- return (
172
- <div
173
- data-testid="ChatFooter"
174
- className={classify(css.chatFooterWrapper, classNames?.wrapper)}
175
- >
176
- {leftSlot}
177
- {rightSlot}
178
- </div>
179
- );
180
- };
181
- ChatFooter.displayName = 'ChatFooter';
182
- export type ChatFooterRightSlotProps = {
183
- children?: React.ReactNode;
184
- classNames?: ClassNames;
185
- };
186
- export const ChatFooterRightSlot = ({
187
- children,
188
- classNames,
189
- }: ChatFooterRightSlotProps): React.ReactNode => (
190
- <div className={classNames?.wrapper}>{children}</div>
191
- );
192
- ChatFooterRightSlot.displayName = 'ChatFooterRightSlot';
193
- export type ChatFooterLeftSlotProps = {
194
- children?: React.ReactNode;
195
- classNames?: ClassNames;
196
- };
197
- export const ChatFooterLeftSlot = ({
198
- children,
199
- classNames,
200
- }: ChatFooterLeftSlotProps): React.ReactNode => (
201
- <div className={classNames?.wrapper}>{children}</div>
202
- );
203
- ChatFooterLeftSlot.displayName = 'ChatFooterLeftSlot';
@@ -1 +0,0 @@
1
- export * from './ChatBubble';
@@ -1,165 +0,0 @@
1
- import {$ReadOnly} from 'utility-types';
2
- import * as React from 'react';
3
- import type {GroupAlign} from '../../types/common';
4
- import classify from '../../utils/classify';
5
- import {Icon} from '../Icon';
6
- import css from './Checkbox.module.css';
7
- type ClassNames = $ReadOnly<{
8
- wrapper?: string;
9
- checkboxSquare?: string;
10
- label?: string;
11
- }>;
12
-
13
- /*
14
- Note: An indeterminate state has a higher priority.
15
- If true checkbox would be in an indeterminate state. If indeterminate is false, it will owner checked value.
16
- */
17
- export type CheckboxProps = {
18
- name?: string;
19
- value?: string;
20
- children?: React.ReactNode;
21
- checked?: boolean;
22
- indeterminate?: boolean;
23
- focused?: boolean;
24
- disabled?: boolean;
25
- error?: boolean;
26
- onChange?: (
27
- arg0: {
28
- value: string;
29
- checked: boolean;
30
- },
31
- arg1: React.SyntheticEvent<HTMLElement> | null | undefined,
32
- ) => unknown;
33
- align?: GroupAlign;
34
- classNames?: ClassNames;
35
- tabIndex?: number;
36
- ariaLabel?: string;
37
- };
38
- export const Checkbox: React$AbstractComponent<
39
- CheckboxProps,
40
- HTMLInputElement
41
- > = React.forwardRef<CheckboxProps, HTMLInputElement>(
42
- (
43
- {
44
- name = 'checkbox',
45
- value = '',
46
- children,
47
- checked = false,
48
- indeterminate = false,
49
- focused = false,
50
- disabled = false,
51
- error = false,
52
- onChange,
53
- align,
54
- classNames,
55
- tabIndex = 0,
56
- ariaLabel = '',
57
- }: CheckboxProps,
58
- forwardRef,
59
- ): React.ReactNode => {
60
- const checkboxInput = React.createRef<HTMLInputElement>();
61
- React.useImperativeHandle(forwardRef, () => checkboxInput.current);
62
-
63
- const handleOnClick = (event) => {
64
- if (!disabled) {
65
- onChange &&
66
- onChange(
67
- {
68
- value,
69
- checked: !checked,
70
- },
71
- event,
72
- );
73
- }
74
- };
75
-
76
- React.useEffect(() => {
77
- if (checkboxInput.current && focused) {
78
- checkboxInput.current.focus();
79
- }
80
- }, [focused]);
81
- React.useEffect(() => {
82
- if (checkboxInput.current && indeterminate) {
83
- checkboxInput.current.indeterminate = true;
84
- }
85
-
86
- if (checkboxInput.current && !indeterminate) {
87
- checkboxInput.current.indeterminate = false;
88
- }
89
- }, [indeterminate]);
90
- return (
91
- <div
92
- data-testid="checkbox"
93
- className={classify(
94
- css.checkboxContainer,
95
- {
96
- [css.disabled]: disabled,
97
- [css.horizontalCheckbox]: align === 'horizontal-fixed',
98
- [css.fluidCheckbox]: align === 'horizontal-fluid',
99
- },
100
- classNames?.wrapper,
101
- )}
102
- onClick={handleOnClick}
103
- >
104
- <span
105
- className={classify(
106
- css.checkboxSquare,
107
- {
108
- [css.disabled]: disabled,
109
- },
110
- classNames?.checkboxSquare,
111
- )}
112
- >
113
- <input
114
- tabIndex={disabled ? -1 : tabIndex}
115
- type="checkbox"
116
- checked={checked}
117
- readOnly
118
- ref={checkboxInput}
119
- className={classify(css.inputCheckbox)}
120
- disabled={disabled}
121
- name={name}
122
- aria-label={ariaLabel || children}
123
- />
124
- <span
125
- className={classify(css.checkboxSquareInner, {
126
- [css.enabled]: !disabled && !error,
127
- [css.disabled]: disabled,
128
- [css.error]: error && !disabled,
129
- })}
130
- >
131
- {indeterminate && (
132
- <Icon
133
- color={disabled ? 'disabled' : 'inversePrimary'}
134
- name="hyphen"
135
- size="small"
136
- type="regular"
137
- />
138
- )}
139
- {checked && !indeterminate && (
140
- <Icon
141
- color={disabled ? 'disabled' : 'inversePrimary'}
142
- name="check"
143
- size="small"
144
- type="regular"
145
- />
146
- )}
147
- </span>
148
- </span>
149
- {React.Children.count(children) > 0 && (
150
- <div
151
- className={classify(
152
- css.checkboxLabel,
153
- {
154
- [css.labelDisabled]: disabled,
155
- },
156
- classNames?.label,
157
- )}
158
- >
159
- {children}
160
- </div>
161
- )}
162
- </div>
163
- );
164
- },
165
- );
@@ -1,113 +0,0 @@
1
- import {$ReadOnly} from 'utility-types';
2
- import * as React from 'react';
3
- import type {GroupAlign} from '../../types/common';
4
- import classify from '../../utils/classify';
5
- import {BodySmall} from '../Text/Text';
6
- import css from './CheckboxGroup.module.css';
7
- type ClassNames = $ReadOnly<{
8
- wrapper?: string;
9
- checkboxGroup?: string;
10
- errorText?: string;
11
- }>;
12
- export type CheckboxOptions = Array<{
13
- label: React.ReactNode;
14
- value: string;
15
- }>;
16
- export type CheckboxGroupProps = {
17
- align?: GroupAlign;
18
- disabled?: boolean;
19
- name: string;
20
- value?: Array<string>;
21
- onChange?: (value: Array<string>) => unknown;
22
- classNames?: ClassNames;
23
- error?: boolean;
24
- errorText?: string;
25
- children?: React.ReactNode;
26
- };
27
- export const CheckboxGroup: React$AbstractComponent<
28
- CheckboxGroupProps,
29
- HTMLDivElement
30
- > = React.forwardRef<CheckboxGroupProps, HTMLDivElement>(
31
- (
32
- {
33
- align = 'vertical',
34
- disabled = false,
35
- name,
36
- value: checkedList,
37
- onChange,
38
- classNames,
39
- error = false,
40
- errorText = '',
41
- children,
42
- }: CheckboxGroupProps,
43
- forwardRef,
44
- ): React.ReactNode => {
45
- const onChangeHandler = ({value, checked}) => {
46
- const checkedListTemp = checkedList ? [...checkedList] : [];
47
-
48
- if (checked && !checkedListTemp.includes(value)) {
49
- checkedListTemp.push(value);
50
- } else if (!checked && checkedListTemp.includes(value)) {
51
- for (let i = 0; i < checkedListTemp.length; i++) {
52
- if (checkedListTemp[i] === value) {
53
- checkedListTemp.splice(i, 1);
54
- break;
55
- }
56
- }
57
- }
58
-
59
- onChange && onChange(checkedListTemp);
60
- };
61
-
62
- const childrenWithProps = React.Children.map(children, (child) => {
63
- if (React.isValidElement(child)) {
64
- const {
65
- value,
66
- disabled: disabledChild,
67
- error: errorChild,
68
- onChange,
69
- } = child.props;
70
-
71
- const childOnChange = (...params) => {
72
- onChangeHandler(...params);
73
- onChange && onChange(...params);
74
- };
75
-
76
- return React.cloneElement(child, {
77
- name,
78
- checked: !!checkedList?.includes(value),
79
- onChange: childOnChange,
80
- align,
81
- error: errorChild || error,
82
- disabled: disabledChild || disabled,
83
- });
84
- }
85
-
86
- return child;
87
- });
88
- return (
89
- <div
90
- className={classify(css.checkboxGroupContainer, classNames?.wrapper)}
91
- >
92
- <div
93
- className={classify(
94
- {
95
- [css.vertical]: align === 'vertical',
96
- [css.horizontal]: align === 'horizontal-fixed',
97
- [css.horizontalFluid]: align === 'horizontal-fluid',
98
- },
99
- classNames?.checkboxGroup,
100
- )}
101
- ref={forwardRef}
102
- >
103
- {childrenWithProps}
104
- </div>
105
- {error && (
106
- <BodySmall className={classify(classNames?.errorText)} color="danger">
107
- {errorText}
108
- </BodySmall>
109
- )}
110
- </div>
111
- );
112
- },
113
- );
@@ -1,2 +0,0 @@
1
- export * from './Checkbox';
2
- export * from './CheckboxGroup';
@@ -1,202 +0,0 @@
1
- import {$ReadOnly, $Values} from 'utility-types';
2
- import * as React from 'react';
3
- import {classify} from '../../utils/classify';
4
- import type {IconType} from '../Icon';
5
- import {CloseIcon, Icon} from '../Icon';
6
- import {StatusIndicator} from '../StatusIndicator';
7
- import {Truncate} from '../Truncate';
8
- import css from './Chip.module.css';
9
- type ClassNames = $ReadOnly<{
10
- wrapper?: string;
11
- icon?: string;
12
- statusIndicator?: string;
13
- }>;
14
- export const CHIP_SEMANTIC = Object.freeze({
15
- primary: 'primary',
16
- information: 'information',
17
- success: 'success',
18
- warning: 'warning',
19
- danger: 'danger',
20
- secondary: 'secondary',
21
- });
22
- export type ChipSemanticType = $Values<typeof CHIP_SEMANTIC>;
23
- export type BaseChipProps = {
24
- classNames?: ClassNames;
25
- semantic?: ChipSemanticType;
26
- children: React.ReactNode;
27
- disabled?: boolean;
28
- showStatusIndicator?: boolean;
29
- disableHoverState?: boolean;
30
- line?: number;
31
- wordBreak?: string;
32
- onClick?:
33
- | ((arg0: React.SyntheticEvent<HTMLElement>) => unknown)
34
- | null
35
- | undefined;
36
- onMouseEnter?:
37
- | ((arg0: React.SyntheticEvent<HTMLElement>) => unknown)
38
- | null
39
- | undefined;
40
- onMouseLeave?:
41
- | ((arg0: React.SyntheticEvent<HTMLElement>) => unknown)
42
- | null
43
- | undefined;
44
- };
45
- export type LargeChipProps = BaseChipProps & {
46
- iconName?: string;
47
- iconType?: IconType;
48
- dismissable?: boolean;
49
- onDismiss?:
50
- | ((arg0: React.SyntheticEvent<HTMLElement>) => unknown)
51
- | null
52
- | undefined;
53
- size?: 'large';
54
- };
55
- export type MediumChipProps = LargeChipProps & {
56
- size?: 'medium';
57
- };
58
- export type SmallChipProps = BaseChipProps & {
59
- size?: 'small';
60
- };
61
- export type ChipProps = LargeChipProps | MediumChipProps | SmallChipProps;
62
- export const Chip: React$AbstractComponent<ChipProps, HTMLDivElement> =
63
- React.forwardRef<ChipProps, HTMLDivElement>(
64
- (
65
- {
66
- classNames,
67
- semantic = 'primary',
68
- size = 'medium',
69
- children,
70
- iconName = '',
71
- iconType = 'regular',
72
- showStatusIndicator,
73
- dismissable = false,
74
- onDismiss = () => null,
75
- onClick,
76
- disabled,
77
- line = 1,
78
- wordBreak,
79
- disableHoverState = !onClick,
80
- // There is no reason for hover state to be active when there is no click handler attached
81
- ...restProps
82
- }: ChipProps,
83
- ref,
84
- ): React.ReactNode => {
85
- /**
86
- * Note (Nishant): Why we are using a `div` to render a onclick element instead of a `button`?
87
- *
88
- * Rendering the `Chip` component as a button directly would have been ideal, as it would
89
- * have naturally handled interactivity and accessibility for clickable chips(which has an onClick). However,
90
- * the `Chip` component includes a `CloseIcon`, which itself is a button. Nesting a `<button>`
91
- * inside another `<button>` is semantically incorrect and would lead to improper HTML structure.
92
- *
93
- * Instead, we use a `<div>` with `role="button"` to maintain proper semantic behavior and
94
- * avoid nesting buttons. While `role="button"` provides the appropriate semantics, it does
95
- * not automatically handle keyboard interactions. Therefore, we manually handle `Enter`
96
- * and `Space` key events to ensure the component is fully accessible and keyboard-compliant.
97
- *
98
- * Although this method might seem less conventional, it simplifies implementation and ensures
99
- * backward compatibility while adhering to accessibility standards.
100
- */
101
- const handleKeyDown = (event: React.KeyboardEvent<HTMLElement>) => {
102
- const {key} = event;
103
-
104
- if (key === 'Enter' || key === ' ') {
105
- event.preventDefault(); // Prevent default action for Enter and Space keys
106
-
107
- onClick?.(event);
108
- }
109
- };
110
-
111
- return (
112
- <div
113
- data-testid="Chip"
114
- {...restProps}
115
- ref={ref}
116
- className={classify(
117
- css.chipWrapper,
118
- {
119
- [css.primary]: semantic === CHIP_SEMANTIC.primary,
120
- [css.information]: semantic === CHIP_SEMANTIC.information,
121
- [css.success]: semantic === CHIP_SEMANTIC.success,
122
- [css.warning]: semantic === CHIP_SEMANTIC.warning,
123
- [css.danger]: semantic === CHIP_SEMANTIC.danger,
124
- [css.secondary]: semantic === CHIP_SEMANTIC.secondary,
125
- [css.large]: size === 'large',
126
- [css.medium]: size === 'medium',
127
- [css.small]: size === 'small',
128
- [css.dismissable]: dismissable,
129
- [css.withIcon]: !!iconName && size !== 'small',
130
- [css.disabled]: disabled,
131
- [css.noHoverState]:
132
- showStatusIndicator || disableHoverState || disabled,
133
- },
134
- classNames?.wrapper,
135
- )}
136
- onClick={onClick}
137
- onKeyDown={handleKeyDown}
138
- tabIndex={
139
- showStatusIndicator || disableHoverState || disabled ? undefined : 0
140
- }
141
- role={showStatusIndicator || disableHoverState ? undefined : 'button'}
142
- >
143
- {showStatusIndicator && size !== 'small' && (
144
- <StatusIndicator
145
- status={semantic}
146
- classNames={{
147
- wrapper: classify(
148
- css.statusIndicatorBlock,
149
- classNames?.statusIndicator,
150
- ),
151
- }}
152
- disabled={disabled}
153
- />
154
- )}
155
-
156
- {iconName && size !== 'small' && (
157
- <Icon
158
- className={classify(
159
- css.chipIcon,
160
- {
161
- [css.alignTop]: line > 1,
162
- },
163
- classNames?.icon,
164
- )}
165
- name={iconName}
166
- type={iconType}
167
- size="small"
168
- />
169
- )}
170
- <Truncate line={line} wordBreak={wordBreak}>
171
- {children}
172
- </Truncate>
173
-
174
- {dismissable && size !== 'small' && (
175
- <CloseIcon
176
- classNames={{
177
- icon: css.dismissIcon,
178
- button: classify(
179
- {
180
- [css.alignTop]: line > 1,
181
- },
182
- css.dismissIconWrapper,
183
- ),
184
- }}
185
- type={iconType}
186
- size="small"
187
- ariaLabel="Dismiss"
188
- disabled={disabled}
189
- onClick={(event) => {
190
- event.stopPropagation();
191
-
192
- if (!disabled && onDismiss) {
193
- onDismiss(event);
194
- }
195
- }}
196
- />
197
- )}
198
- </div>
199
- );
200
- },
201
- );
202
- Chip.displayName = 'Chip';
@@ -1,2 +0,0 @@
1
- export type {ChipProps, ChipSemanticType} from './Chip';
2
- export {Chip, CHIP_SEMANTIC} from './Chip';