@spaced-out/ui-design-system 0.3.45 → 0.3.46

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 (498) hide show
  1. package/.all-contributorsrc +9 -0
  2. package/CHANGELOG.md +12 -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/Badge/Badge.js +6 -11
  8. package/lib/components/BadgedIcon/BadgedIcon.js +2 -4
  9. package/lib/components/Banner/Banner.js +5 -7
  10. package/lib/components/Breadcrumbs/BreadcrumbLink/BreadcrumbLink.js +4 -6
  11. package/lib/components/Breadcrumbs/Breadcrumbs.js +4 -7
  12. package/lib/components/Button/Button.js +8 -14
  13. package/lib/components/ButtonDropdown/ButtonDropdown.js +7 -11
  14. package/lib/components/ButtonDropdown/SimpleButtonDropdown.js +3 -5
  15. package/lib/components/ButtonTabs/ButtonTab/ButtonTab.js +5 -7
  16. package/lib/components/ButtonTabs/ButtonTabDropdown.js +3 -4
  17. package/lib/components/ButtonTabs/ButtonTabs.js +6 -9
  18. package/lib/components/Card/Card.js +7 -11
  19. package/lib/components/Charts/ChartTooltip/index.js +3 -5
  20. package/lib/components/Charts/ChartWrapper/ChartWrapper.js +5 -13
  21. package/lib/components/Charts/ColumnChart/ColumnChart.js +2 -6
  22. package/lib/components/Charts/DonutChart/DonutChart.js +2 -6
  23. package/lib/components/Charts/FunnelChart/FunnelChart.js +2 -7
  24. package/lib/components/Charts/LineChart/LineChart.js +2 -6
  25. package/lib/components/Charts/SpiderChart/SpiderChart.js +2 -7
  26. package/lib/components/ChatBubble/ChatBubble.js +5 -8
  27. package/lib/components/Checkbox/Checkbox.js +8 -7
  28. package/lib/components/Checkbox/CheckboxGroup.js +5 -8
  29. package/lib/components/Chip/Chip.js +5 -8
  30. package/lib/components/CircularLoader/CircularLoader.js +4 -7
  31. package/lib/components/CollapsibleCard/CollapsibleCard.js +5 -9
  32. package/lib/components/Combobox/Combobox.js +4 -7
  33. package/lib/components/Combobox/helper.js +3 -7
  34. package/lib/components/ConditionalWrapper/ConditionalWrapper.js +1 -3
  35. package/lib/components/DateRangePicker/Calendar.js +2 -5
  36. package/lib/components/DateRangePicker/DateRangePicker.js +4 -8
  37. package/lib/components/DateRangePicker/DateRangeWrapper.js +5 -7
  38. package/lib/components/DateRangePicker/Day.js +2 -6
  39. package/lib/components/Dialog/Dialog.js +4 -6
  40. package/lib/components/Disclaimer/Disclaimer.js +5 -7
  41. package/lib/components/Dropdown/Dropdown.js +5 -7
  42. package/lib/components/Dropdown/SimpleDropdown.js +3 -5
  43. package/lib/components/EmptyState/EmptyImages/CalendarEmptyImage.js +1 -3
  44. package/lib/components/EmptyState/EmptyImages/ChartEmptyImage.js +1 -3
  45. package/lib/components/EmptyState/EmptyImages/DataEmptyImage.js +1 -3
  46. package/lib/components/EmptyState/EmptyImages/FileEmptyImage.js +1 -3
  47. package/lib/components/EmptyState/EmptyImages/MessageEmptyImage.js +1 -3
  48. package/lib/components/EmptyState/EmptyImages/UploadEmptyImage.js +1 -3
  49. package/lib/components/EmptyState/EmptyState.js +5 -7
  50. package/lib/components/ErrorMessage/ErrorImages/ForbiddenImage.js +1 -3
  51. package/lib/components/ErrorMessage/ErrorImages/NotFoundImage.js +1 -3
  52. package/lib/components/ErrorMessage/ErrorImages/ServerErrorImage.js +1 -3
  53. package/lib/components/ErrorMessage/ErrorImages/UnauthorizedImage.js +1 -3
  54. package/lib/components/ErrorMessage/ErrorMessage.js +5 -7
  55. package/lib/components/FileUpload/FileBlock/FileBlock.js +3 -6
  56. package/lib/components/FileUpload/FileUpload.js +12 -6
  57. package/lib/components/FilterButtonOverlay/FilterButtonOverlay.js +5 -7
  58. package/lib/components/FocusManager/FocusManager.js +3 -4
  59. package/lib/components/FocusManagerWithArrowKeyNavigation/FocusManagerWithArrowKeyNavigation.js +4 -6
  60. package/lib/components/FormTitleWrapper/FormTitleWrapper.js +4 -7
  61. package/lib/components/Grid/Grid.js +3 -5
  62. package/lib/components/Icon/ClickableIcon.js +6 -9
  63. package/lib/components/Icon/Icon.docs.js +2 -4
  64. package/lib/components/Icon/Icon.js +6 -11
  65. package/lib/components/Icon/SemanticIcon.js +3 -4
  66. package/lib/components/InContextAlert/InContextAlert.js +4 -7
  67. package/lib/components/InfinitePagination/InfinitePagination.js +4 -8
  68. package/lib/components/InlineDropdown/InlineDropdown.js +5 -7
  69. package/lib/components/InlineDropdown/SimpleInlineDropdown.js +3 -5
  70. package/lib/components/Input/Input.js +6 -10
  71. package/lib/components/KPIBox/KPIBox.js +5 -7
  72. package/lib/components/LinearLoader/LinearLoader.js +4 -7
  73. package/lib/components/Link/Link.js +7 -12
  74. package/lib/components/Menu/Menu.js +7 -7
  75. package/lib/components/Menu/MenuOptionButton.js +3 -4
  76. package/lib/components/Modal/Modal.js +4 -5
  77. package/lib/components/Notification/Notification.js +5 -9
  78. package/lib/components/OptionButton/OptionButton.js +5 -7
  79. package/lib/components/OptionButton/SimpleOptionButton.js +3 -5
  80. package/lib/components/PageTitle/PageTitle.js +6 -9
  81. package/lib/components/Pagination/Pagination.js +5 -7
  82. package/lib/components/Pagination/PaginationItem.js +2 -4
  83. package/lib/components/Panel/Panel.js +4 -6
  84. package/lib/components/ProgressDonut/ProgressDonut.js +4 -7
  85. package/lib/components/PromptChip/PromptChip.js +5 -9
  86. package/lib/components/PromptInput/PromptInput.js +4 -7
  87. package/lib/components/RadioButton/RadioButton.js +12 -7
  88. package/lib/components/RadioButton/RadioGroup.js +11 -8
  89. package/lib/components/RadioTile/RadioTile.js +5 -7
  90. package/lib/components/RangeSlider/RangeSlider.js +5 -8
  91. package/lib/components/Rating/Rating.js +5 -9
  92. package/lib/components/ScoreBar/ScoreBar.js +6 -11
  93. package/lib/components/SearchInput/SearchInput.js +5 -7
  94. package/lib/components/Separator/Separator.js +5 -9
  95. package/lib/components/Shimmer/Shimmer.js +5 -10
  96. package/lib/components/SideMenuLink/SideMenuLink.js +5 -8
  97. package/lib/components/StatusIndicator/StatusIndicator.js +6 -9
  98. package/lib/components/Stepper/Step/Step.js +4 -7
  99. package/lib/components/Stepper/Step/StepContent.js +2 -4
  100. package/lib/components/Stepper/Step/StepLabel.js +2 -4
  101. package/lib/components/Stepper/Stepper.js +4 -7
  102. package/lib/components/StickyBar/StickyBar.js +5 -7
  103. package/lib/components/SubMenu/SubMenu.js +4 -7
  104. package/lib/components/SubMenu/SubMenuGroup.js +3 -5
  105. package/lib/components/SubMenu/SubMenuItem.js +7 -10
  106. package/lib/components/SubMenu/SubMenuLink.js +4 -7
  107. package/lib/components/Table/Cell.js +8 -12
  108. package/lib/components/Table/DefaultRow.js +9 -6
  109. package/lib/components/Table/DefaultTableHeader.js +4 -8
  110. package/lib/components/Table/StaticTable.js +8 -12
  111. package/lib/components/Table/Table.docs.js +2 -3
  112. package/lib/components/Table/Table.js +4 -3
  113. package/lib/components/Table/TableActionBar.js +3 -4
  114. package/lib/components/Table/TableBottomBar.js +3 -4
  115. package/lib/components/Table/TableTopBar.js +3 -4
  116. package/lib/components/Table/dummyTableData.js +2 -4
  117. package/lib/components/Table/hooks.js +2 -4
  118. package/lib/components/Tabs/Tab/Tab.js +6 -10
  119. package/lib/components/Tabs/TabList/TabDropdown.js +3 -4
  120. package/lib/components/Tabs/TabList/TabList.js +5 -9
  121. package/lib/components/Text/Text.js +48 -75
  122. package/lib/components/TextTile/TextTile.js +4 -7
  123. package/lib/components/Textarea/Textarea.js +4 -6
  124. package/lib/components/Timeline/Timeline.js +4 -8
  125. package/lib/components/Timeline/TimelineItem/TimelineItem.js +3 -6
  126. package/lib/components/Toast/Toast.js +8 -12
  127. package/lib/components/Toast/ToastContainer.js +3 -6
  128. package/lib/components/Toast/ToastManager.js +5 -10
  129. package/lib/components/Toggle/Toggle.js +12 -7
  130. package/lib/components/TokenListInput/TokenListInput.js +7 -7
  131. package/lib/components/TokenListInput/TokenValueChips.js +1 -3
  132. package/lib/components/Tooltip/Tooltip.js +7 -8
  133. package/lib/components/Truncate/Truncate.js +6 -10
  134. package/lib/components/TruncatedTextWithTooltip/TruncatedTextWithTooltip.js +3 -4
  135. package/lib/components/Typeahead/SimpleTypeahead.js +3 -5
  136. package/lib/components/Typeahead/Typeahead.js +5 -7
  137. package/lib/components/WeekdayPicker/WeekdayPicker.js +5 -9
  138. package/lib/hooks/useArbitraryOptionAddition/useArbitraryOptionAddition.js +0 -1
  139. package/lib/hooks/useCopyToClipboard/useCopyToClipboard.js +0 -2
  140. package/lib/hooks/useDebounce/useDebounce.js +1 -3
  141. package/lib/hooks/useFileUpload/useFileUpload.js +2 -4
  142. package/lib/hooks/useFilteredOptions/useFilteredOptions.js +1 -4
  143. package/lib/hooks/useInfiniteScroll/useInfiniteScroll.js +1 -3
  144. package/lib/hooks/useInputState/useInputState.js +1 -3
  145. package/lib/hooks/useLockedBody/useLockedBody.js +0 -1
  146. package/lib/hooks/useModal/useModal.js +0 -1
  147. package/lib/hooks/useMountTransition/index.js +1 -3
  148. package/lib/hooks/usePagination/usePagination.js +0 -1
  149. package/lib/hooks/useResizeObserver/useResizeObserver.js +1 -3
  150. package/lib/hooks/useToastPortal/useToastPortal.js +0 -1
  151. package/lib/hooks/useToggle/useToggle.js +0 -1
  152. package/lib/hooks/useWindowSize/useWindowSize.js +0 -1
  153. package/lib/styles/index.js +267 -535
  154. package/lib/styles/variables/_border.js +12 -25
  155. package/lib/styles/variables/_color.js +104 -209
  156. package/lib/styles/variables/_elevation.js +7 -15
  157. package/lib/styles/variables/_font.js +30 -61
  158. package/lib/styles/variables/_motion.js +6 -13
  159. package/lib/styles/variables/_opacity.js +15 -31
  160. package/lib/styles/variables/_shadow.js +24 -49
  161. package/lib/styles/variables/_size.js +57 -115
  162. package/lib/styles/variables/_space.js +12 -25
  163. package/lib/types/charts.js +1 -0
  164. package/lib/types/common.js +2 -4
  165. package/lib/types/menu.js +1 -0
  166. package/lib/types/toast.js +4 -8
  167. package/lib/types/typography.js +2 -4
  168. package/lib/utils/array/are-arrays-equal.js +0 -1
  169. package/lib/utils/charts/charts.js +4 -8
  170. package/lib/utils/charts/columnChart.js +1 -4
  171. package/lib/utils/charts/donutChart.js +2 -4
  172. package/lib/utils/charts/funnelChart.js +0 -4
  173. package/lib/utils/charts/helpers.js +9 -17
  174. package/lib/utils/charts/lineChart.js +0 -2
  175. package/lib/utils/charts/spiderChart.js +2 -3
  176. package/lib/utils/charts/typography.js +7 -14
  177. package/lib/utils/classify/index.js +2 -4
  178. package/lib/utils/click-away/click-away.js +50 -56
  179. package/lib/utils/date-range-picker/date-range-picker.js +6 -14
  180. package/lib/utils/date-range-picker/timezones.js +2 -5
  181. package/lib/utils/dom/dom.js +0 -1
  182. package/lib/utils/helpers/helpers.js +0 -1
  183. package/lib/utils/makeClassNameComponent/makeClassNameComponent.js +3 -4
  184. package/lib/utils/menu/menu.js +1 -3
  185. package/lib/utils/rating/rating.js +2 -5
  186. package/lib/utils/score-bar/score-bar.js +2 -4
  187. package/lib/utils/string/string.js +0 -1
  188. package/lib/utils/token-list-input/token-list-input.js +1 -3
  189. package/lib/utils/tokens/tokens.js +1 -3
  190. package/package.json +7 -7
  191. package/lib/components/Avatar/Avatar.d.ts +0 -263
  192. package/lib/components/Avatar/index.d.ts +0 -1
  193. package/lib/components/AvatarGroup/AvatarGroup.d.ts +0 -161
  194. package/lib/components/AvatarGroup/index.d.ts +0 -1
  195. package/lib/components/Badge/Badge.d.ts +0 -138
  196. package/lib/components/Badge/index.d.ts +0 -1
  197. package/lib/components/BadgedIcon/BadgedIcon.d.ts +0 -70
  198. package/lib/components/BadgedIcon/index.d.ts +0 -1
  199. package/lib/components/Banner/Banner.d.ts +0 -52
  200. package/lib/components/Banner/index.d.ts +0 -1
  201. package/lib/components/Breadcrumbs/BreadcrumbLink/BreadcrumbLink.d.ts +0 -50
  202. package/lib/components/Breadcrumbs/BreadcrumbLink/index.d.ts +0 -1
  203. package/lib/components/Breadcrumbs/Breadcrumbs.d.ts +0 -64
  204. package/lib/components/Breadcrumbs/index.d.ts +0 -2
  205. package/lib/components/Button/Button.d.ts +0 -288
  206. package/lib/components/Button/index.d.ts +0 -14
  207. package/lib/components/ButtonDropdown/ButtonDropdown.d.ts +0 -192
  208. package/lib/components/ButtonDropdown/SimpleButtonDropdown.d.ts +0 -148
  209. package/lib/components/ButtonDropdown/index.d.ts +0 -2
  210. package/lib/components/ButtonTabs/ButtonTab/ButtonTab.d.ts +0 -82
  211. package/lib/components/ButtonTabs/ButtonTab/index.d.ts +0 -1
  212. package/lib/components/ButtonTabs/ButtonTabDropdown.d.ts +0 -118
  213. package/lib/components/ButtonTabs/ButtonTabs.d.ts +0 -113
  214. package/lib/components/ButtonTabs/index.d.ts +0 -2
  215. package/lib/components/Card/Card.d.ts +0 -163
  216. package/lib/components/Card/index.d.ts +0 -1
  217. package/lib/components/Charts/ChartTooltip/index.d.ts +0 -10
  218. package/lib/components/Charts/ChartWrapper/ChartWrapper.d.ts +0 -184
  219. package/lib/components/Charts/ChartWrapper/index.d.ts +0 -1
  220. package/lib/components/Charts/ColumnChart/ColumnChart.d.ts +0 -111
  221. package/lib/components/Charts/ColumnChart/index.d.ts +0 -1
  222. package/lib/components/Charts/DonutChart/DonutChart.d.ts +0 -142
  223. package/lib/components/Charts/DonutChart/index.d.ts +0 -1
  224. package/lib/components/Charts/FunnelChart/FunnelChart.d.ts +0 -99
  225. package/lib/components/Charts/FunnelChart/index.d.ts +0 -1
  226. package/lib/components/Charts/LineChart/LineChart.d.ts +0 -97
  227. package/lib/components/Charts/LineChart/index.d.ts +0 -1
  228. package/lib/components/Charts/SpiderChart/SpiderChart.d.ts +0 -95
  229. package/lib/components/Charts/SpiderChart/index.d.ts +0 -1
  230. package/lib/components/Charts/index.d.ts +0 -7
  231. package/lib/components/ChatBubble/ChatBubble.d.ts +0 -203
  232. package/lib/components/ChatBubble/index.d.ts +0 -1
  233. package/lib/components/Checkbox/Checkbox.d.ts +0 -165
  234. package/lib/components/Checkbox/CheckboxGroup.d.ts +0 -113
  235. package/lib/components/Checkbox/index.d.ts +0 -2
  236. package/lib/components/Chip/Chip.d.ts +0 -202
  237. package/lib/components/Chip/index.d.ts +0 -2
  238. package/lib/components/CircularLoader/CircularLoader.d.ts +0 -56
  239. package/lib/components/CircularLoader/index.d.ts +0 -1
  240. package/lib/components/CollapsibleCard/CollapsibleCard.d.ts +0 -134
  241. package/lib/components/CollapsibleCard/index.d.ts +0 -1
  242. package/lib/components/Combobox/Combobox.d.ts +0 -292
  243. package/lib/components/Combobox/helper.d.ts +0 -205
  244. package/lib/components/Combobox/index.d.ts +0 -1
  245. package/lib/components/ConditionalWrapper/ConditionalWrapper.d.ts +0 -12
  246. package/lib/components/ConditionalWrapper/index.d.ts +0 -1
  247. package/lib/components/DateRangePicker/Calendar.d.ts +0 -97
  248. package/lib/components/DateRangePicker/DateRangePicker.d.ts +0 -196
  249. package/lib/components/DateRangePicker/DateRangeWrapper.d.ts +0 -347
  250. package/lib/components/DateRangePicker/Day.d.ts +0 -70
  251. package/lib/components/DateRangePicker/index.d.ts +0 -1
  252. package/lib/components/Dialog/Dialog.d.ts +0 -208
  253. package/lib/components/Dialog/index.d.ts +0 -1
  254. package/lib/components/Disclaimer/Disclaimer.d.ts +0 -32
  255. package/lib/components/Disclaimer/index.d.ts +0 -1
  256. package/lib/components/Dropdown/Dropdown.d.ts +0 -145
  257. package/lib/components/Dropdown/SimpleDropdown.d.ts +0 -142
  258. package/lib/components/Dropdown/index.d.ts +0 -2
  259. package/lib/components/EmptyState/EmptyImages/CalendarEmptyImage.d.ts +0 -108
  260. package/lib/components/EmptyState/EmptyImages/ChartEmptyImage.d.ts +0 -194
  261. package/lib/components/EmptyState/EmptyImages/DataEmptyImage.d.ts +0 -116
  262. package/lib/components/EmptyState/EmptyImages/FileEmptyImage.d.ts +0 -133
  263. package/lib/components/EmptyState/EmptyImages/MessageEmptyImage.d.ts +0 -64
  264. package/lib/components/EmptyState/EmptyImages/UploadEmptyImage.d.ts +0 -67
  265. package/lib/components/EmptyState/EmptyImages/index.d.ts +0 -6
  266. package/lib/components/EmptyState/EmptyState.d.ts +0 -82
  267. package/lib/components/EmptyState/index.d.ts +0 -1
  268. package/lib/components/ErrorMessage/ErrorImages/ForbiddenImage.d.ts +0 -85
  269. package/lib/components/ErrorMessage/ErrorImages/NotFoundImage.d.ts +0 -117
  270. package/lib/components/ErrorMessage/ErrorImages/ServerErrorImage.d.ts +0 -237
  271. package/lib/components/ErrorMessage/ErrorImages/UnauthorizedImage.d.ts +0 -73
  272. package/lib/components/ErrorMessage/ErrorImages/index.d.ts +0 -4
  273. package/lib/components/ErrorMessage/ErrorMessage.d.ts +0 -86
  274. package/lib/components/ErrorMessage/index.d.ts +0 -1
  275. package/lib/components/FileUpload/FileBlock/FileBlock.d.ts +0 -137
  276. package/lib/components/FileUpload/FileBlock/index.d.ts +0 -1
  277. package/lib/components/FileUpload/FileUpload.d.ts +0 -190
  278. package/lib/components/FileUpload/index.d.ts +0 -2
  279. package/lib/components/FilterButtonOverlay/FilterButtonOverlay.d.ts +0 -130
  280. package/lib/components/FilterButtonOverlay/index.d.ts +0 -1
  281. package/lib/components/FocusManager/FocusManager.d.ts +0 -52
  282. package/lib/components/FocusManager/index.d.ts +0 -1
  283. package/lib/components/FocusManagerWithArrowKeyNavigation/FocusManagerWithArrowKeyNavigation.d.ts +0 -137
  284. package/lib/components/FocusManagerWithArrowKeyNavigation/index.d.ts +0 -1
  285. package/lib/components/FormTitleWrapper/FormTitleWrapper.d.ts +0 -62
  286. package/lib/components/FormTitleWrapper/index.d.ts +0 -1
  287. package/lib/components/Grid/Grid.d.ts +0 -104
  288. package/lib/components/Grid/index.d.ts +0 -1
  289. package/lib/components/Icon/ClickableIcon.d.ts +0 -106
  290. package/lib/components/Icon/Icon.d.ts +0 -71
  291. package/lib/components/Icon/Icon.docs.d.ts +0 -152
  292. package/lib/components/Icon/SemanticIcon.d.ts +0 -42
  293. package/lib/components/Icon/index.d.ts +0 -3
  294. package/lib/components/InContextAlert/InContextAlert.d.ts +0 -210
  295. package/lib/components/InContextAlert/index.d.ts +0 -1
  296. package/lib/components/InfinitePagination/InfinitePagination.d.ts +0 -112
  297. package/lib/components/InfinitePagination/index.d.ts +0 -1
  298. package/lib/components/InlineDropdown/InlineDropdown.d.ts +0 -146
  299. package/lib/components/InlineDropdown/SimpleInlineDropdown.d.ts +0 -145
  300. package/lib/components/InlineDropdown/index.d.ts +0 -2
  301. package/lib/components/Input/Input.d.ts +0 -327
  302. package/lib/components/Input/index.d.ts +0 -1
  303. package/lib/components/KPIBox/KPIBox.d.ts +0 -89
  304. package/lib/components/KPIBox/index.d.ts +0 -1
  305. package/lib/components/LinearLoader/LinearLoader.d.ts +0 -44
  306. package/lib/components/LinearLoader/index.d.ts +0 -1
  307. package/lib/components/Link/Link.d.ts +0 -225
  308. package/lib/components/Link/index.d.ts +0 -1
  309. package/lib/components/Menu/Menu.d.ts +0 -379
  310. package/lib/components/Menu/MenuOptionButton.d.ts +0 -199
  311. package/lib/components/Menu/index.d.ts +0 -2
  312. package/lib/components/Modal/Modal.d.ts +0 -362
  313. package/lib/components/Modal/index.d.ts +0 -14
  314. package/lib/components/Notification/Notification.d.ts +0 -147
  315. package/lib/components/Notification/index.d.ts +0 -1
  316. package/lib/components/OptionButton/OptionButton.d.ts +0 -150
  317. package/lib/components/OptionButton/SimpleOptionButton.d.ts +0 -150
  318. package/lib/components/OptionButton/index.d.ts +0 -2
  319. package/lib/components/PageTitle/PageTitle.d.ts +0 -256
  320. package/lib/components/PageTitle/index.d.ts +0 -1
  321. package/lib/components/Pagination/Pagination.d.ts +0 -144
  322. package/lib/components/Pagination/PaginationItem.d.ts +0 -136
  323. package/lib/components/Pagination/index.d.ts +0 -1
  324. package/lib/components/Panel/Panel.d.ts +0 -168
  325. package/lib/components/Panel/index.d.ts +0 -9
  326. package/lib/components/ProgressDonut/ProgressDonut.d.ts +0 -102
  327. package/lib/components/ProgressDonut/index.d.ts +0 -1
  328. package/lib/components/PromptChip/PromptChip.d.ts +0 -167
  329. package/lib/components/PromptChip/index.d.ts +0 -1
  330. package/lib/components/PromptInput/PromptInput.d.ts +0 -189
  331. package/lib/components/PromptInput/index.d.ts +0 -1
  332. package/lib/components/RadioButton/RadioButton.d.ts +0 -132
  333. package/lib/components/RadioButton/RadioGroup.d.ts +0 -88
  334. package/lib/components/RadioButton/index.d.ts +0 -2
  335. package/lib/components/RadioTile/RadioTile.d.ts +0 -109
  336. package/lib/components/RadioTile/index.d.ts +0 -1
  337. package/lib/components/RangeSlider/RangeSlider.d.ts +0 -207
  338. package/lib/components/RangeSlider/index.d.ts +0 -1
  339. package/lib/components/Rating/Rating.d.ts +0 -131
  340. package/lib/components/Rating/index.d.ts +0 -1
  341. package/lib/components/ScoreBar/ScoreBar.d.ts +0 -122
  342. package/lib/components/ScoreBar/index.d.ts +0 -1
  343. package/lib/components/SearchInput/SearchInput.d.ts +0 -79
  344. package/lib/components/SearchInput/index.d.ts +0 -2
  345. package/lib/components/Separator/Separator.d.ts +0 -51
  346. package/lib/components/Separator/index.d.ts +0 -1
  347. package/lib/components/Shimmer/Shimmer.d.ts +0 -131
  348. package/lib/components/Shimmer/index.d.ts +0 -1
  349. package/lib/components/SideMenuLink/SideMenuLink.d.ts +0 -336
  350. package/lib/components/SideMenuLink/index.d.ts +0 -1
  351. package/lib/components/StatusIndicator/StatusIndicator.d.ts +0 -60
  352. package/lib/components/StatusIndicator/index.d.ts +0 -1
  353. package/lib/components/Stepper/Step/Step.d.ts +0 -119
  354. package/lib/components/Stepper/Step/StepContent.d.ts +0 -35
  355. package/lib/components/Stepper/Step/StepLabel.d.ts +0 -35
  356. package/lib/components/Stepper/Step/index.d.ts +0 -3
  357. package/lib/components/Stepper/Stepper.d.ts +0 -60
  358. package/lib/components/Stepper/index.d.ts +0 -2
  359. package/lib/components/StickyBar/StickyBar.d.ts +0 -55
  360. package/lib/components/StickyBar/index.d.ts +0 -1
  361. package/lib/components/SubMenu/SubMenu.d.ts +0 -89
  362. package/lib/components/SubMenu/SubMenuGroup.d.ts +0 -156
  363. package/lib/components/SubMenu/SubMenuItem.d.ts +0 -161
  364. package/lib/components/SubMenu/SubMenuLink.d.ts +0 -81
  365. package/lib/components/SubMenu/index.d.ts +0 -4
  366. package/lib/components/Table/Cell.d.ts +0 -107
  367. package/lib/components/Table/DefaultRow.d.ts +0 -145
  368. package/lib/components/Table/DefaultTableHeader.d.ts +0 -237
  369. package/lib/components/Table/StaticTable.d.ts +0 -205
  370. package/lib/components/Table/Table.d.ts +0 -114
  371. package/lib/components/Table/Table.docs.d.ts +0 -544
  372. package/lib/components/Table/TableActionBar.d.ts +0 -48
  373. package/lib/components/Table/TableBottomBar.d.ts +0 -20
  374. package/lib/components/Table/TableTopBar.d.ts +0 -20
  375. package/lib/components/Table/dummyTableData.d.ts +0 -2189
  376. package/lib/components/Table/hooks.d.ts +0 -98
  377. package/lib/components/Table/index.d.ts +0 -8
  378. package/lib/components/Tabs/Tab/Tab.d.ts +0 -146
  379. package/lib/components/Tabs/Tab/index.d.ts +0 -1
  380. package/lib/components/Tabs/TabList/TabDropdown.d.ts +0 -100
  381. package/lib/components/Tabs/TabList/TabList.d.ts +0 -157
  382. package/lib/components/Tabs/TabList/index.d.ts +0 -1
  383. package/lib/components/Tabs/index.d.ts +0 -2
  384. package/lib/components/Text/Text.d.ts +0 -1021
  385. package/lib/components/Text/index.d.ts +0 -30
  386. package/lib/components/TextTile/TextTile.d.ts +0 -40
  387. package/lib/components/TextTile/index.d.ts +0 -1
  388. package/lib/components/Textarea/Textarea.d.ts +0 -132
  389. package/lib/components/Textarea/index.d.ts +0 -2
  390. package/lib/components/Timeline/Timeline.d.ts +0 -40
  391. package/lib/components/Timeline/TimelineItem/TimelineItem.d.ts +0 -121
  392. package/lib/components/Timeline/TimelineItem/index.d.ts +0 -1
  393. package/lib/components/Timeline/index.d.ts +0 -2
  394. package/lib/components/Toast/Toast.d.ts +0 -248
  395. package/lib/components/Toast/ToastContainer.d.ts +0 -140
  396. package/lib/components/Toast/ToastManager.d.ts +0 -58
  397. package/lib/components/Toast/index.d.ts +0 -10
  398. package/lib/components/Toggle/Toggle.d.ts +0 -111
  399. package/lib/components/Toggle/index.d.ts +0 -1
  400. package/lib/components/TokenListInput/TokenListInput.d.ts +0 -351
  401. package/lib/components/TokenListInput/TokenValueChips.d.ts +0 -60
  402. package/lib/components/TokenListInput/index.d.ts +0 -1
  403. package/lib/components/Tooltip/Tooltip.d.ts +0 -186
  404. package/lib/components/Tooltip/index.d.ts +0 -1
  405. package/lib/components/Truncate/Truncate.d.ts +0 -87
  406. package/lib/components/Truncate/index.d.ts +0 -2
  407. package/lib/components/TruncatedTextWithTooltip/TruncatedTextWithTooltip.d.ts +0 -95
  408. package/lib/components/TruncatedTextWithTooltip/index.d.ts +0 -1
  409. package/lib/components/Typeahead/SimpleTypeahead.d.ts +0 -141
  410. package/lib/components/Typeahead/Typeahead.d.ts +0 -217
  411. package/lib/components/Typeahead/index.d.ts +0 -2
  412. package/lib/components/WeekdayPicker/WeekdayPicker.d.ts +0 -242
  413. package/lib/components/WeekdayPicker/index.d.ts +0 -1
  414. package/lib/components/index.d.ts +0 -74
  415. package/lib/hooks/index.d.ts +0 -15
  416. package/lib/hooks/useArbitraryOptionAddition/index.d.ts +0 -1
  417. package/lib/hooks/useArbitraryOptionAddition/useArbitraryOptionAddition.d.ts +0 -124
  418. package/lib/hooks/useCopyToClipboard/index.d.ts +0 -1
  419. package/lib/hooks/useCopyToClipboard/useCopyToClipboard.d.ts +0 -27
  420. package/lib/hooks/useDebounce/index.d.ts +0 -1
  421. package/lib/hooks/useDebounce/useDebounce.d.ts +0 -13
  422. package/lib/hooks/useFileUpload/index.d.ts +0 -1
  423. package/lib/hooks/useFileUpload/useFileUpload.d.ts +0 -342
  424. package/lib/hooks/useFilteredOptions/index.d.ts +0 -1
  425. package/lib/hooks/useFilteredOptions/useFilteredOptions.d.ts +0 -87
  426. package/lib/hooks/useInfiniteScroll/index.d.ts +0 -1
  427. package/lib/hooks/useInfiniteScroll/useInfiniteScroll.d.ts +0 -77
  428. package/lib/hooks/useInputState/index.d.ts +0 -1
  429. package/lib/hooks/useInputState/useInputState.d.ts +0 -22
  430. package/lib/hooks/useLockedBody/index.d.ts +0 -1
  431. package/lib/hooks/useLockedBody/useLockedBody.d.ts +0 -46
  432. package/lib/hooks/useModal/index.d.ts +0 -1
  433. package/lib/hooks/useModal/useModal.d.ts +0 -32
  434. package/lib/hooks/useMountTransition/index.d.ts +0 -24
  435. package/lib/hooks/usePagination/index.d.ts +0 -1
  436. package/lib/hooks/usePagination/usePagination.d.ts +0 -140
  437. package/lib/hooks/useResizeObserver/index.d.ts +0 -1
  438. package/lib/hooks/useResizeObserver/useResizeObserver.d.ts +0 -22
  439. package/lib/hooks/useToastPortal/index.d.ts +0 -1
  440. package/lib/hooks/useToastPortal/useToastPortal.d.ts +0 -31
  441. package/lib/hooks/useToggle/index.d.ts +0 -1
  442. package/lib/hooks/useToggle/useToggle.d.ts +0 -11
  443. package/lib/hooks/useWindowSize/index.d.ts +0 -1
  444. package/lib/hooks/useWindowSize/useWindowSize.d.ts +0 -28
  445. package/lib/index.d.ts +0 -5
  446. package/lib/styles/index.d.ts +0 -267
  447. package/lib/styles/variables/_border.d.ts +0 -12
  448. package/lib/styles/variables/_color.d.ts +0 -104
  449. package/lib/styles/variables/_elevation.d.ts +0 -7
  450. package/lib/styles/variables/_font.d.ts +0 -30
  451. package/lib/styles/variables/_motion.d.ts +0 -6
  452. package/lib/styles/variables/_opacity.d.ts +0 -15
  453. package/lib/styles/variables/_shadow.d.ts +0 -24
  454. package/lib/styles/variables/_size.d.ts +0 -57
  455. package/lib/styles/variables/_space.d.ts +0 -12
  456. package/lib/types/charts.d.ts +0 -225
  457. package/lib/types/common.d.ts +0 -10
  458. package/lib/types/date-range-picker.d.ts +0 -17
  459. package/lib/types/index.d.ts +0 -6
  460. package/lib/types/menu.d.ts +0 -13
  461. package/lib/types/toast.d.ts +0 -32
  462. package/lib/types/typography.d.ts +0 -17
  463. package/lib/utils/array/are-arrays-equal.d.ts +0 -11
  464. package/lib/utils/array/index.d.ts +0 -1
  465. package/lib/utils/charts/charts.d.ts +0 -102
  466. package/lib/utils/charts/columnChart.d.ts +0 -51
  467. package/lib/utils/charts/donutChart.d.ts +0 -116
  468. package/lib/utils/charts/funnelChart.d.ts +0 -94
  469. package/lib/utils/charts/helpers.d.ts +0 -44
  470. package/lib/utils/charts/index.d.ts +0 -7
  471. package/lib/utils/charts/lineChart.d.ts +0 -44
  472. package/lib/utils/charts/spiderChart.d.ts +0 -46
  473. package/lib/utils/charts/typography.d.ts +0 -42
  474. package/lib/utils/classify/index.d.ts +0 -27
  475. package/lib/utils/click-away/click-away.d.ts +0 -194
  476. package/lib/utils/click-away/index.d.ts +0 -1
  477. package/lib/utils/date-range-picker/date-range-picker.d.ts +0 -411
  478. package/lib/utils/date-range-picker/index.d.ts +0 -2
  479. package/lib/utils/date-range-picker/timezones.d.ts +0 -262
  480. package/lib/utils/dom/dom.d.ts +0 -245
  481. package/lib/utils/dom/index.d.ts +0 -1
  482. package/lib/utils/helpers/helpers.d.ts +0 -48
  483. package/lib/utils/helpers/index.d.ts +0 -1
  484. package/lib/utils/index.d.ts +0 -14
  485. package/lib/utils/makeClassNameComponent/index.d.ts +0 -1
  486. package/lib/utils/makeClassNameComponent/makeClassNameComponent.d.ts +0 -73
  487. package/lib/utils/menu/index.d.ts +0 -1
  488. package/lib/utils/merge-refs/index.d.ts +0 -1
  489. package/lib/utils/merge-refs/merge-refs.d.ts +0 -15
  490. package/lib/utils/rating/index.d.ts +0 -1
  491. package/lib/utils/rating/rating.d.ts +0 -31
  492. package/lib/utils/score-bar/index.d.ts +0 -1
  493. package/lib/utils/score-bar/score-bar.d.ts +0 -54
  494. package/lib/utils/string/index.d.ts +0 -1
  495. package/lib/utils/string/string.d.ts +0 -30
  496. package/lib/utils/token-list-input/token-list-input.d.ts +0 -32
  497. package/lib/utils/tokens/index.d.ts +0 -1
  498. package/lib/utils/tokens/tokens.d.ts +0 -230
@@ -1,362 +0,0 @@
1
- import {$ReadOnly} from 'utility-types';
2
- import * as React from 'react';
3
- // @ts-expect-error[untyped-import]
4
- import {createPortal} from 'react-dom';
5
- import {
6
- // $FlowFixMe[untyped-import]
7
- FloatingFocusManager, // $FlowFixMe[untyped-import]
8
- useFloating, // $FlowFixMe[untyped-import]
9
- useTransitionStyles,
10
- } from '@floating-ui/react';
11
- import useMountTransition from '../../hooks/useMountTransition';
12
- import {
13
- motionDurationNormal,
14
- motionDurationSlow,
15
- } from '../../styles/variables/_motion';
16
- import {opacity0, opacity100} from '../../styles/variables/_opacity';
17
- import {spaceNegHalfFluid} from '../../styles/variables/_space';
18
- import classify from '../../utils/classify';
19
- import {uuid} from '../../utils/helpers';
20
- import {Button} from '../Button/Button';
21
- import {Truncate} from '../Truncate/Truncate';
22
- import css from './Modal.module.css';
23
- type ClassNames = $ReadOnly<{
24
- container?: string;
25
- content?: string;
26
- backdrop?: string;
27
- }>;
28
- export type UseTransitionStylesProps = {
29
- duration?:
30
- | number
31
- | {
32
- open: number;
33
- close: number;
34
- };
35
- initial?: Readonly<Record<string, unknown>>;
36
- open?: Readonly<Record<string, unknown>>;
37
- close?: Readonly<Record<string, unknown>>;
38
- common?: Readonly<Record<string, unknown>>;
39
- };
40
- type FooterClassNames = $ReadOnly<{
41
- wrapper?: string;
42
- actions?: string;
43
- }>;
44
- export type ModalProps = {
45
- classNames?: ClassNames;
46
- children?: React.ReactNode;
47
- isOpen?: boolean;
48
- onClose?:
49
- | ((arg0: React.SyntheticEvent<HTMLElement>) => unknown)
50
- | null
51
- | undefined;
52
- hideBackdrop?: boolean;
53
- tapOutsideToClose?: boolean;
54
- allowBackgroundInteraction?: boolean;
55
- initialFocus?: number;
56
- customAnimation?: UseTransitionStylesProps;
57
- };
58
- export type ModalSize = 'small' | 'medium' | 'large';
59
- export type BaseModalProps = ModalProps & {
60
- size?: ModalSize;
61
- };
62
- export type ModalHeaderProps = {
63
- children?: React.ReactNode;
64
- hideCloseBtn?: boolean;
65
- onCloseButtonClick?:
66
- | ((arg0: React.SyntheticEvent<HTMLElement>) => unknown)
67
- | null
68
- | undefined;
69
- className?: string;
70
- };
71
- export type ModalFooterProps = {
72
- children?: React.ReactNode;
73
- classNames?: FooterClassNames;
74
- };
75
- export type ModalBodyProps = {
76
- children?: React.ReactNode;
77
- className?: string;
78
- };
79
- const DEFAULT_MODAL_ANIMATION = {
80
- duration: {
81
- open: parseInt(motionDurationSlow),
82
- close: parseInt(motionDurationNormal),
83
- },
84
- initial: {
85
- transform: `translate(${spaceNegHalfFluid}, ${spaceNegHalfFluid}) scale(0.95)`,
86
- opacity: opacity0,
87
- },
88
- open: {
89
- transform: `translate(${spaceNegHalfFluid}, ${spaceNegHalfFluid}) scale(1)`,
90
- opacity: opacity100,
91
- },
92
- close: {
93
- transform: `translate(${spaceNegHalfFluid}, ${spaceNegHalfFluid}) scale(0.95)`,
94
- opacity: opacity0,
95
- },
96
- };
97
- export const ModalHeader = ({
98
- children,
99
- hideCloseBtn,
100
- onCloseButtonClick,
101
- className,
102
- }: ModalHeaderProps): React.ReactNode => (
103
- <>
104
- {React.Children.count(children) > 0 && (
105
- <div className={classify(css.modalHeader, className)}>
106
- <div className={css.headerContent}>
107
- <Truncate>{children}</Truncate>
108
- </div>
109
- {!hideCloseBtn && (
110
- <Button
111
- iconLeftName="xmark"
112
- type="ghost"
113
- onClick={onCloseButtonClick}
114
- ariaLabel="Close Button"
115
- ></Button>
116
- )}
117
- </div>
118
- )}
119
- </>
120
- );
121
- export const ModalBody = ({
122
- children,
123
- className,
124
- }: ModalBodyProps): React.ReactNode => (
125
- <div className={classify(css.modalBody, className)}>{children}</div>
126
- );
127
- export const ModalFooter = ({
128
- children,
129
- classNames,
130
- }: ModalFooterProps): React.ReactNode => (
131
- <>
132
- {React.Children.count(children) > 0 && (
133
- <div className={classify(css.modalFooter, classNames?.wrapper)}>
134
- <div className={classify(css.modalFooterActions, classNames?.actions)}>
135
- {children}
136
- </div>
137
- </div>
138
- )}
139
- </>
140
- );
141
-
142
- const createPortalRoot = (id: string) => {
143
- const modalRoot = document.createElement('div');
144
- modalRoot.setAttribute('id', `modal-root-${id}`);
145
- return modalRoot;
146
- };
147
-
148
- const getModalRoot = (id: string) =>
149
- document.getElementById(`modal-root-${id}`);
150
-
151
- function hasChildNode(nodeList) {
152
- for (let i = 0, len = nodeList.length; i < len; i++) {
153
- if (nodeList[i].firstChild !== null) {
154
- return true;
155
- }
156
- }
157
-
158
- return false;
159
- }
160
-
161
- const fixBody = (bodyEl: HTMLBodyElement) => {
162
- const body = document.getElementsByTagName('body')[0];
163
-
164
- if (body && body.classList) {
165
- body.classList.add('fixed');
166
- }
167
-
168
- if (bodyEl) {
169
- bodyEl.style.overflow = 'hidden';
170
- }
171
- };
172
-
173
- const unfixBody = (bodyEl: HTMLBodyElement) => {
174
- const body = document.getElementsByTagName('body')[0];
175
-
176
- if (body && body.classList) {
177
- body.classList.remove('fixed');
178
- }
179
-
180
- if (bodyEl) {
181
- bodyEl.style.overflow = '';
182
- }
183
- };
184
-
185
- const checkAndAddBodyOverflow = (bodyEl: HTMLBodyElement) => {
186
- const nodes = document.querySelectorAll('[id^="modal-root"]');
187
- let isParentModalPresent = false;
188
-
189
- if (nodes.length) {
190
- isParentModalPresent = hasChildNode(nodes);
191
- }
192
-
193
- if (isParentModalPresent) {
194
- fixBody(bodyEl);
195
- } else {
196
- unfixBody(bodyEl);
197
- }
198
- };
199
-
200
- export const Modal = ({
201
- classNames,
202
- children,
203
- isOpen = false,
204
- onClose,
205
- hideBackdrop = false,
206
- tapOutsideToClose = true,
207
- initialFocus = -1,
208
- customAnimation,
209
- allowBackgroundInteraction = false,
210
- // Size is not set to default for backward compatibility. Don't change if you don't know this.
211
- size,
212
- }: BaseModalProps): React.ReactNode => {
213
- const {refs, context} = useFloating({
214
- open: isOpen,
215
- });
216
- const {isMounted, styles} = useTransitionStyles(
217
- context,
218
- customAnimation || DEFAULT_MODAL_ANIMATION,
219
- );
220
- const modalId = uuid();
221
- const bodyRef = React.useRef(document.querySelector('body'));
222
- const portalRootRef = React.useRef(
223
- getModalRoot(modalId) || createPortalRoot(modalId),
224
- );
225
- const isTransitioning = useMountTransition(
226
- isOpen,
227
- parseInt(motionDurationNormal),
228
- );
229
- // Append portal root on mount
230
- React.useEffect(() => {
231
- bodyRef.current?.appendChild(portalRootRef.current);
232
- const portal = portalRootRef.current;
233
- const bodyEl = bodyRef.current;
234
- return () => {
235
- // Clean up the portal when modal component unmounts
236
- portal.remove();
237
-
238
- // Ensure scroll overflow is removed
239
- if (bodyEl) {
240
- unfixBody(bodyEl);
241
- }
242
- };
243
- }, []);
244
- // Prevent page scrolling when the modal is open
245
- React.useEffect(() => {
246
- const updatePageScroll = () => {
247
- if (isOpen) {
248
- if (bodyRef.current) {
249
- fixBody(bodyRef.current);
250
- }
251
- } else {
252
- if (bodyRef.current) {
253
- unfixBody(bodyRef.current);
254
- }
255
- }
256
- };
257
-
258
- updatePageScroll();
259
- }, [isOpen]);
260
- // Allow Escape key to dismiss the modal
261
- React.useEffect(() => {
262
- const onKeyPress = (e) => {
263
- if (e.key === 'Escape') {
264
- tapOutsideToClose && onClose && onClose(e);
265
- }
266
- };
267
-
268
- if (isOpen) {
269
- window.addEventListener('keyup', onKeyPress);
270
- }
271
-
272
- return () => {
273
- window.removeEventListener('keyup', onKeyPress);
274
- };
275
- }, [isOpen, onClose]);
276
-
277
- if (!isOpen && !isMounted) {
278
- // Check overflow after resetting the DOM for modal. This should always happen after DOM reset
279
- // TODO(Nishant): Better way to do this?
280
- setTimeout(() => {
281
- if (bodyRef && !!bodyRef.current) {
282
- checkAndAddBodyOverflow(bodyRef.current);
283
- }
284
- });
285
- return null;
286
- }
287
-
288
- const onBackdropClick = (e: React.SyntheticEvent<HTMLElement>) => {
289
- if (tapOutsideToClose && onClose) {
290
- onClose(e);
291
- }
292
- };
293
-
294
- return createPortal(
295
- <FloatingFocusManager context={context} initialFocus={initialFocus}>
296
- <div
297
- ref={refs.setFloating}
298
- aria-hidden={isOpen ? 'false' : 'true'}
299
- className={classify(
300
- css.modalContainer,
301
- {
302
- [css.in]: isTransitioning,
303
- [css.open]: isOpen,
304
- },
305
- classNames?.container,
306
- )}
307
- >
308
- {!allowBackgroundInteraction && (
309
- <div
310
- className={classify(
311
- css.backdrop,
312
- {
313
- [css.darkBackdrop]: !hideBackdrop,
314
- },
315
- classNames?.backdrop,
316
- )}
317
- onClick={onBackdropClick}
318
- style={{
319
- opacity: styles?.opacity,
320
- transition: styles?.transition,
321
- }}
322
- />
323
- )}
324
-
325
- {isMounted && (
326
- <div
327
- className={classify(
328
- css.modal,
329
- {
330
- [css.small]: size === 'small',
331
- [css.medium]: size === 'medium',
332
- [css.large]: size === 'large',
333
- },
334
- classNames?.content,
335
- )}
336
- role="dialog"
337
- style={{
338
- // Transition styles
339
- ...styles,
340
- }}
341
- >
342
- {children}
343
- </div>
344
- )}
345
- </div>
346
- </FloatingFocusManager>,
347
- portalRootRef.current,
348
- );
349
- };
350
- // FullScreen modal that just calls the Modal component with a wrapper className set which sets the width and height to sizeFluid
351
- export const FullScreenModal = ({
352
- classNames,
353
- ...props
354
- }: ModalProps): React.ReactNode => (
355
- <Modal
356
- classNames={{
357
- ...classNames,
358
- content: classify(css.fullscreenModalContainer, classNames?.content),
359
- }}
360
- {...props}
361
- />
362
- );
@@ -1,14 +0,0 @@
1
- export type {
2
- BaseModalProps,
3
- ModalBodyProps,
4
- ModalFooterProps,
5
- ModalHeaderProps,
6
- ModalProps,
7
- } from './Modal';
8
- export {
9
- FullScreenModal,
10
- Modal,
11
- ModalBody,
12
- ModalFooter,
13
- ModalHeader,
14
- } from './Modal';
@@ -1,147 +0,0 @@
1
- import {$ReadOnly, $Values} from 'utility-types';
2
- import * as React from 'react';
3
- import {TEXT_COLORS} from '../../types/typography';
4
- import {classify} from '../../utils/classify';
5
- import type {IconType} from '../Icon';
6
- import {Icon} from '../Icon';
7
- import {SubTitleSmall} from '../Text';
8
- import css from './Notification.module.css';
9
- export const NOTIFICATION_SEMANTIC = Object.freeze({
10
- success: 'success',
11
- information: 'information',
12
- danger: 'danger',
13
- });
14
- type ClassNames = $ReadOnly<{
15
- wrapper?: string;
16
- text?: string;
17
- }>;
18
- export type NotificationSemanticType = $Values<typeof NOTIFICATION_SEMANTIC>;
19
- type BaseNotificationProps = {
20
- classNames?: ClassNames;
21
- semantic: NotificationSemanticType;
22
- iconLeftName?: string;
23
- iconLeftType?: IconType;
24
- dismissable?: boolean;
25
- children?: string;
26
- onCloseClick?:
27
- | ((arg0: React.SyntheticEvent<HTMLElement>) => unknown)
28
- | null
29
- | undefined;
30
- };
31
- type NotificationBaseProps = BaseNotificationProps &
32
- (
33
- | {
34
- dismissable: true;
35
- onCloseClick?:
36
- | ((arg0: React.SyntheticEvent<HTMLElement>) => unknown)
37
- | null
38
- | undefined;
39
- selfDismiss?: boolean;
40
- }
41
- | {
42
- dismissable?: false;
43
- }
44
- ) & {
45
- classNames?: ClassNames;
46
- };
47
- export type NotificationProps = NotificationBaseProps & {
48
- semantic: NotificationSemanticType;
49
- };
50
- // Base Notification will not have any state.
51
- const BaseNotification: React$AbstractComponent<
52
- BaseNotificationProps,
53
- HTMLDivElement
54
- > = React.forwardRef<BaseNotificationProps, HTMLDivElement>(
55
- (props: BaseNotificationProps, ref): React.ReactNode => {
56
- const {
57
- classNames,
58
- semantic = NOTIFICATION_SEMANTIC.success,
59
- iconLeftName,
60
- iconLeftType = 'regular',
61
- dismissable,
62
- children,
63
- onCloseClick,
64
- } = props;
65
- return (
66
- <div
67
- className={classify(
68
- css.baseContainer,
69
- {
70
- [css.success]: semantic === NOTIFICATION_SEMANTIC.success,
71
- [css.information]: semantic === NOTIFICATION_SEMANTIC.information,
72
- [css.danger]: semantic === NOTIFICATION_SEMANTIC.danger,
73
- [css.dismissable]: dismissable,
74
- },
75
- classNames?.wrapper,
76
- )}
77
- ref={ref}
78
- >
79
- {iconLeftName ? (
80
- <Icon
81
- name={iconLeftName}
82
- color={TEXT_COLORS.inversePrimary}
83
- size="small"
84
- type={iconLeftType}
85
- />
86
- ) : null}
87
- <SubTitleSmall
88
- className={classify(classNames?.text)}
89
- color={TEXT_COLORS.inversePrimary}
90
- >
91
- {children}
92
- </SubTitleSmall>
93
- {dismissable && (
94
- <Icon
95
- color={TEXT_COLORS.inversePrimary}
96
- name="close"
97
- size="small"
98
- type="regular"
99
- onClick={onCloseClick}
100
- className={css.closeIcon}
101
- />
102
- )}
103
- </div>
104
- );
105
- },
106
- );
107
- export const Notification: React$AbstractComponent<
108
- NotificationProps,
109
- HTMLDivElement
110
- > = React.forwardRef<NotificationProps, HTMLDivElement>(
111
- (props: NotificationProps, ref): React.ReactNode => {
112
- const {
113
- classNames,
114
- semantic = NOTIFICATION_SEMANTIC.success,
115
- iconLeftName,
116
- iconLeftType,
117
- dismissable,
118
- children,
119
- selfDismiss = false,
120
- onCloseClick,
121
- } = props;
122
- const [dismissed, setDismissed] = React.useState(false);
123
-
124
- const closeClickHandler = (e) => {
125
- onCloseClick && onCloseClick(e);
126
- selfDismiss && setDismissed(true);
127
- };
128
-
129
- return (
130
- <>
131
- {!dismissed && (
132
- <BaseNotification
133
- classNames={classNames}
134
- iconLeftName={iconLeftName}
135
- iconLeftType={iconLeftType}
136
- semantic={semantic}
137
- dismissable={dismissable}
138
- onCloseClick={closeClickHandler}
139
- ref={ref}
140
- >
141
- {children}
142
- </BaseNotification>
143
- )}
144
- </>
145
- );
146
- },
147
- );
@@ -1 +0,0 @@
1
- export {Notification, NOTIFICATION_SEMANTIC} from './Notification';
@@ -1,150 +0,0 @@
1
- import {$ReadOnly} from 'utility-types';
2
- import * as React from 'react';
3
- import classify from '../../utils/classify';
4
- import type {ClickAwayRefType} from '../../utils/click-away';
5
- import type {ButtonProps} from '../Button';
6
- import {Button} from '../Button';
7
- import type {AnchorType} from '../ButtonDropdown';
8
- import {ButtonDropdown} from '../ButtonDropdown';
9
- import {ConditionalWrapper} from '../ConditionalWrapper';
10
- import type {MenuOption, MenuProps} from '../Menu';
11
- import type {BaseTooltipProps} from '../Tooltip';
12
- import {Tooltip} from '../Tooltip';
13
- import css from './OptionButton.module.css';
14
- type ClassNames = $ReadOnly<{
15
- wrapper?: string;
16
- baseButtonWrapper?: string;
17
- baseButtonIcon?: string;
18
- optionsButtonWrapper?: string;
19
- optionsButtonIcon?: string;
20
- dropdownContainer?: string;
21
- }>;
22
- export type OptionButtonTooltipProps = {
23
- baseButton?: BaseTooltipProps;
24
- optionsButton?: BaseTooltipProps;
25
- };
26
- export type OptionButtonProps = ButtonProps & {
27
- menu?: MenuProps;
28
- anchorPosition?: AnchorType;
29
- onOptionSelect?: (
30
- option: MenuOption,
31
- arg1: React.SyntheticEvent<HTMLElement> | null | undefined,
32
- ) => unknown;
33
- onButtonClick?:
34
- | ((arg0: React.SyntheticEvent<HTMLElement>) => unknown)
35
- | null
36
- | undefined;
37
- onMenuOpen?: () => unknown;
38
- onMenuClose?: () => unknown;
39
- tooltip?: OptionButtonTooltipProps;
40
- classNames?: ClassNames;
41
- clickAwayRef?: ClickAwayRefType;
42
- };
43
- export const OptionButton: React$AbstractComponent<
44
- OptionButtonProps,
45
- HTMLDivElement
46
- > = React.forwardRef<OptionButtonProps, HTMLDivElement>(
47
- (
48
- {
49
- children,
50
- iconLeftName,
51
- iconLeftType,
52
- type,
53
- isFluid,
54
- disabled,
55
- size,
56
- isLoading,
57
- menu,
58
- anchorPosition,
59
- onOptionSelect,
60
- onButtonClick,
61
- onMenuOpen,
62
- onMenuClose,
63
- ariaLabel,
64
- actionType,
65
- tooltip,
66
- classNames,
67
- clickAwayRef,
68
- }: OptionButtonProps,
69
- ref,
70
- ): React.ReactNode => {
71
- const [iconName, setIconName] = React.useState('chevron-down');
72
- const [isMenuOpen, setIsMenuOpen] = React.useState(false);
73
- return (
74
- <div
75
- className={classify(
76
- css.container,
77
- {
78
- [css.isFluid]: isFluid,
79
- },
80
- classNames?.wrapper,
81
- )}
82
- ref={ref}
83
- >
84
- <ConditionalWrapper
85
- condition={Boolean(tooltip?.baseButton)}
86
- wrapper={(children) => (
87
- <Tooltip
88
- {...tooltip?.baseButton}
89
- hidden={isMenuOpen ? true : tooltip?.optionsButton?.hidden}
90
- >
91
- {children}
92
- </Tooltip>
93
- )}
94
- >
95
- <Button
96
- iconLeftName={iconLeftName}
97
- iconLeftType={iconLeftType}
98
- onClick={onButtonClick}
99
- size={size}
100
- type={type}
101
- disabled={disabled}
102
- isFluid={isFluid}
103
- ariaLabel={ariaLabel}
104
- actionType={actionType}
105
- isLoading={isLoading}
106
- classNames={{
107
- wrapper: classify(css.leftButton, classNames?.baseButtonWrapper),
108
- icon: classNames?.baseButtonIcon,
109
- }}
110
- >
111
- {children}
112
- </Button>
113
- </ConditionalWrapper>
114
- <ButtonDropdown
115
- anchorPosition={anchorPosition}
116
- ariaLabel={ariaLabel}
117
- iconLeftName={iconName}
118
- tooltip={tooltip?.optionsButton}
119
- classNames={{
120
- buttonWrapper: classify(
121
- css.rightButton,
122
- classNames?.optionsButtonWrapper,
123
- ),
124
- dropdownContainer: classify(
125
- css.dropDownContainer,
126
- classNames?.dropdownContainer,
127
- ),
128
- buttonIcon: classNames?.optionsButtonIcon,
129
- }}
130
- type={type}
131
- disabled={disabled}
132
- menu={menu}
133
- onMenuClose={() => {
134
- setIconName('chevron-down');
135
- setIsMenuOpen(false);
136
- onMenuOpen && onMenuOpen();
137
- }}
138
- onMenuOpen={() => {
139
- setIconName('chevron-up');
140
- setIsMenuOpen(true);
141
- onMenuClose && onMenuClose();
142
- }}
143
- onOptionSelect={onOptionSelect}
144
- size={size}
145
- clickAwayRef={clickAwayRef}
146
- />
147
- </div>
148
- );
149
- },
150
- );