baseui 10.9.2 → 10.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (888) hide show
  1. package/a11y/a11y.js +1 -1
  2. package/a11y/a11y.js.flow +15 -18
  3. package/a11y/index.js.flow +1 -1
  4. package/a11y/types.js.flow +2 -2
  5. package/accordion/accordion.js +3 -2
  6. package/accordion/accordion.js.flow +18 -32
  7. package/accordion/index.js.flow +6 -6
  8. package/accordion/panel.js +1 -1
  9. package/accordion/panel.js.flow +24 -42
  10. package/accordion/stateful-panel-container.js.flow +7 -12
  11. package/accordion/stateful-panel.js.flow +3 -3
  12. package/accordion/stateless-accordion.js.flow +6 -6
  13. package/accordion/styled-components.js.flow +16 -16
  14. package/accordion/types.js.flow +9 -9
  15. package/app-nav-bar/app-nav-bar.js.flow +20 -36
  16. package/app-nav-bar/index.js.flow +3 -3
  17. package/app-nav-bar/mobile-menu.js +9 -13
  18. package/app-nav-bar/mobile-menu.js.flow +29 -62
  19. package/app-nav-bar/styled-components.js.flow +40 -44
  20. package/app-nav-bar/types.js.flow +11 -11
  21. package/app-nav-bar/user-menu.js +8 -9
  22. package/app-nav-bar/user-menu.js.flow +32 -57
  23. package/app-nav-bar/user-profile-tile.js.flow +12 -24
  24. package/app-nav-bar/utils.js.flow +9 -12
  25. package/aspect-ratio-box/aspect-ratio-box-body.js.flow +2 -2
  26. package/aspect-ratio-box/aspect-ratio-box.js +2 -2
  27. package/aspect-ratio-box/aspect-ratio-box.js.flow +11 -13
  28. package/aspect-ratio-box/index.js.flow +2 -2
  29. package/aspect-ratio-box/types.js.flow +1 -1
  30. package/avatar/avatar.js.flow +7 -21
  31. package/avatar/index.js.flow +1 -1
  32. package/avatar/styled-components.js.flow +7 -11
  33. package/avatar/types.js.flow +3 -3
  34. package/block/block.js +1 -1
  35. package/block/block.js.flow +8 -11
  36. package/block/index.js.flow +1 -1
  37. package/block/styled-components.js.flow +37 -36
  38. package/block/types.js.flow +3 -2
  39. package/breadcrumbs/breadcrumbs.js +3 -6
  40. package/breadcrumbs/breadcrumbs.js.flow +17 -35
  41. package/breadcrumbs/index.d.ts +1 -0
  42. package/breadcrumbs/index.js.flow +1 -1
  43. package/breadcrumbs/styled-components.js.flow +5 -5
  44. package/breadcrumbs/types.js.flow +3 -2
  45. package/button/button-internals.js.flow +7 -10
  46. package/button/button.js +2 -1
  47. package/button/button.js.flow +25 -36
  48. package/button/default-props.js.flow +1 -1
  49. package/button/index.d.ts +6 -0
  50. package/button/index.js.flow +2 -2
  51. package/button/styled-components.js +19 -5
  52. package/button/styled-components.js.flow +89 -82
  53. package/button/types.js.flow +13 -4
  54. package/button/utils.js +3 -1
  55. package/button/utils.js.flow +4 -2
  56. package/button-group/button-group.js +1 -1
  57. package/button-group/button-group.js.flow +15 -17
  58. package/button-group/index.d.ts +1 -0
  59. package/button-group/index.js.flow +6 -6
  60. package/button-group/stateful-button-group.js +5 -1
  61. package/button-group/stateful-button-group.js.flow +4 -3
  62. package/button-group/stateful-container.js.flow +14 -26
  63. package/button-group/styled-components.js.flow +5 -5
  64. package/button-group/types.js.flow +9 -12
  65. package/card/card.js.flow +12 -30
  66. package/card/index.js.flow +1 -1
  67. package/card/styled-components.js.flow +8 -8
  68. package/card/types.js.flow +3 -3
  69. package/checkbox/checkbox.js +2 -3
  70. package/checkbox/checkbox.js.flow +24 -39
  71. package/checkbox/index.d.ts +1 -0
  72. package/checkbox/index.js.flow +4 -4
  73. package/checkbox/stateful-checkbox-container.js.flow +14 -17
  74. package/checkbox/stateful-checkbox.js.flow +5 -5
  75. package/checkbox/styled-components.js.flow +27 -50
  76. package/checkbox/types.js.flow +26 -7
  77. package/combobox/combobox.js +4 -4
  78. package/combobox/combobox.js.flow +24 -36
  79. package/combobox/index.js.flow +2 -2
  80. package/combobox/styled-components.js.flow +23 -20
  81. package/combobox/types.js.flow +7 -5
  82. package/data-table/column-anchor.js.flow +8 -8
  83. package/data-table/column-boolean.js.flow +15 -20
  84. package/data-table/column-categorical.js.flow +26 -31
  85. package/data-table/column-custom.js +1 -0
  86. package/data-table/column-custom.js.flow +6 -10
  87. package/data-table/column-datetime.js +6 -6
  88. package/data-table/column-datetime.js.flow +66 -114
  89. package/data-table/column-numerical.js +320 -362
  90. package/data-table/column-numerical.js.flow +296 -306
  91. package/data-table/column-row-index.js.flow +3 -3
  92. package/data-table/column-string.js.flow +8 -8
  93. package/data-table/column.js +1 -0
  94. package/data-table/column.js.flow +7 -8
  95. package/data-table/constants.js +17 -11
  96. package/data-table/constants.js.flow +11 -8
  97. package/data-table/data-table.js +56 -53
  98. package/data-table/data-table.js.flow +89 -132
  99. package/data-table/filter-menu.js.flow +26 -37
  100. package/data-table/filter-shell.js +27 -4
  101. package/data-table/filter-shell.js.flow +38 -14
  102. package/data-table/header-cell.js.flow +112 -122
  103. package/data-table/index.js.flow +15 -24
  104. package/data-table/locale.js +4 -2
  105. package/data-table/locale.js.flow +6 -2
  106. package/data-table/measure-column-widths.js +83 -119
  107. package/data-table/measure-column-widths.js.flow +86 -114
  108. package/data-table/stateful-container.js.flow +13 -22
  109. package/data-table/stateful-data-table.js.flow +21 -27
  110. package/data-table/text-search.js.flow +3 -3
  111. package/data-table/types.js.flow +17 -20
  112. package/datepicker/calendar-header.js +4 -7
  113. package/datepicker/calendar-header.js.flow +105 -174
  114. package/datepicker/calendar.js +2 -1
  115. package/datepicker/calendar.js.flow +99 -139
  116. package/datepicker/datepicker.js +1 -1
  117. package/datepicker/datepicker.js.flow +84 -159
  118. package/datepicker/day.js.flow +52 -86
  119. package/datepicker/index.js.flow +8 -10
  120. package/datepicker/month.js.flow +10 -14
  121. package/datepicker/stateful-calendar.js.flow +2 -2
  122. package/datepicker/stateful-container.js.flow +10 -13
  123. package/datepicker/stateful-datepicker.js.flow +2 -2
  124. package/datepicker/styled-components.js +2 -2
  125. package/datepicker/styled-components.js.flow +111 -150
  126. package/datepicker/types.js.flow +38 -38
  127. package/datepicker/utils/calendar-header-helpers.js.flow +5 -5
  128. package/datepicker/utils/date-fns-adapter.js.flow +1 -1
  129. package/datepicker/utils/date-helpers.js +1 -1
  130. package/datepicker/utils/date-helpers.js.flow +85 -127
  131. package/datepicker/utils/day-state.js.flow +1 -1
  132. package/datepicker/utils/index.js +1 -1
  133. package/datepicker/utils/index.js.flow +4 -5
  134. package/datepicker/utils/types.js.flow +2 -2
  135. package/datepicker/week.js.flow +8 -11
  136. package/dnd-list/index.js.flow +7 -6
  137. package/dnd-list/list.js.flow +18 -45
  138. package/dnd-list/stateful-list-container.js.flow +7 -10
  139. package/dnd-list/stateful-list.js.flow +3 -3
  140. package/dnd-list/styled-components.js.flow +36 -45
  141. package/dnd-list/types.js.flow +6 -6
  142. package/drawer/close-icon.js.flow +1 -1
  143. package/drawer/constants.js.flow +3 -2
  144. package/drawer/drawer.js +1 -1
  145. package/drawer/drawer.js.flow +26 -43
  146. package/drawer/index.js.flow +2 -2
  147. package/drawer/styled-components.js.flow +34 -47
  148. package/drawer/types.js.flow +5 -8
  149. package/es/a11y/a11y.js +1 -1
  150. package/es/accordion/accordion.js +2 -1
  151. package/es/accordion/panel.js +1 -1
  152. package/es/app-nav-bar/mobile-menu.js +9 -13
  153. package/es/app-nav-bar/user-menu.js +8 -9
  154. package/es/aspect-ratio-box/aspect-ratio-box.js +2 -2
  155. package/es/block/block.js +1 -1
  156. package/es/breadcrumbs/breadcrumbs.js +4 -7
  157. package/es/button/button.js +2 -1
  158. package/es/button/styled-components.js +20 -6
  159. package/es/button/utils.js +2 -0
  160. package/es/button-group/button-group.js +1 -1
  161. package/es/button-group/stateful-button-group.js +4 -1
  162. package/es/checkbox/checkbox.js +2 -3
  163. package/es/checkbox/stateful-checkbox-container.js +0 -3
  164. package/es/combobox/combobox.js +6 -8
  165. package/es/data-table/column-custom.js +1 -0
  166. package/es/data-table/column-datetime.js +6 -6
  167. package/es/data-table/column-numerical.js +252 -320
  168. package/es/data-table/column.js +1 -0
  169. package/es/data-table/constants.js +12 -8
  170. package/es/data-table/data-table.js +21 -19
  171. package/es/data-table/filter-shell.js +26 -4
  172. package/es/data-table/locale.js +4 -2
  173. package/es/data-table/measure-column-widths.js +75 -84
  174. package/es/datepicker/calendar-header.js +7 -10
  175. package/es/datepicker/calendar.js +3 -3
  176. package/es/datepicker/datepicker.js +1 -1
  177. package/es/datepicker/styled-components.js +2 -2
  178. package/es/datepicker/utils/date-helpers.js +1 -1
  179. package/es/datepicker/utils/index.js +1 -1
  180. package/es/drawer/drawer.js +1 -1
  181. package/es/flex-grid/flex-grid-item.js +6 -4
  182. package/es/flex-grid/flex-grid.js +7 -3
  183. package/es/form-control/form-control.js +4 -4
  184. package/es/heading/heading.js +1 -1
  185. package/es/helpers/overrides.js +13 -9
  186. package/es/icon/alert.js +18 -14
  187. package/es/icon/arrow-down.js +18 -14
  188. package/es/icon/arrow-left.js +18 -14
  189. package/es/icon/arrow-right.js +18 -14
  190. package/es/icon/arrow-up.js +18 -14
  191. package/es/icon/blank.js +14 -10
  192. package/es/icon/check-indeterminate.js +18 -14
  193. package/es/icon/check.js +18 -14
  194. package/es/icon/chevron-down.js +19 -15
  195. package/es/icon/chevron-left.js +18 -14
  196. package/es/icon/chevron-right.js +18 -14
  197. package/es/icon/chevron-up.js +19 -15
  198. package/es/icon/delete-alt.js +18 -14
  199. package/es/icon/delete.js +18 -14
  200. package/es/icon/filter.js +32 -28
  201. package/es/icon/grab.js +18 -14
  202. package/es/icon/hide.js +16 -12
  203. package/es/icon/menu.js +32 -28
  204. package/es/icon/omit-dollar-prefixed-keys.js +1 -1
  205. package/es/icon/overflow.js +26 -22
  206. package/es/icon/plus.js +18 -14
  207. package/es/icon/search.js +18 -14
  208. package/es/icon/show.js +16 -12
  209. package/es/icon/spinner.js +23 -19
  210. package/es/icon/triangle-down.js +16 -12
  211. package/es/icon/triangle-left.js +16 -12
  212. package/es/icon/triangle-right.js +16 -12
  213. package/es/icon/triangle-up.js +16 -12
  214. package/es/icon/upload.js +18 -14
  215. package/es/input/masked-input.js +1 -0
  216. package/es/input/stateful-container.js +0 -1
  217. package/es/input/styled-components.js +3 -2
  218. package/es/layer/layer.js +4 -3
  219. package/es/list/list-heading.js +3 -3
  220. package/es/list/list-item.js +1 -1
  221. package/es/list/menu-adapter.js +1 -2
  222. package/es/map-marker/fixed-marker.js +11 -5
  223. package/es/menu/maybe-child-menu.js +1 -2
  224. package/es/menu/menu.js +1 -1
  225. package/es/menu/option-profile.js +2 -0
  226. package/es/menu/stateful-container.js +3 -4
  227. package/es/menu/stateful-menu.js +4 -1
  228. package/es/menu/types.js +1 -1
  229. package/es/modal/modal-button.js +5 -1
  230. package/es/modal/modal.js +1 -3
  231. package/es/pagination/index.js +1 -1
  232. package/es/pagination/stateful-container.js +1 -0
  233. package/es/pagination/stateful-pagination.js +1 -0
  234. package/es/payment-card/payment-card.js +4 -1
  235. package/es/payment-card/styled-components.js +0 -1
  236. package/es/phone-input/base-country-picker.js +6 -8
  237. package/es/phone-input/country-picker.js +5 -8
  238. package/es/phone-input/country-select-dropdown.js +4 -2
  239. package/es/phone-input/country-select.js +5 -8
  240. package/es/phone-input/flag.js +2 -1
  241. package/es/phone-input/phone-input-lite.js +1 -2
  242. package/es/phone-input/phone-input-next.js +1 -2
  243. package/es/pin-code/pin-code.js +1 -2
  244. package/es/popover/popover.js +7 -7
  245. package/es/progress-bar/progressbar-rounded.js +25 -22
  246. package/es/progress-bar/progressbar.js +6 -3
  247. package/es/radio/radio.js +1 -1
  248. package/es/radio/radiogroup.js +1 -1
  249. package/es/rating/emoticon-rating.js +1 -1
  250. package/es/rating/star-rating.js +1 -1
  251. package/es/select/autosize-input.js +1 -2
  252. package/es/select/dropdown.js +2 -4
  253. package/es/select/multi-value.js +1 -1
  254. package/es/select/select-component.js +5 -4
  255. package/es/select/styled-components.js +1 -2
  256. package/es/select/value.js +1 -1
  257. package/es/slider/slider.js +2 -2
  258. package/es/snackbar/snackbar-element.js +4 -3
  259. package/es/snackbar/styled-components.js +1 -1
  260. package/es/spinner/spinner.js +22 -18
  261. package/es/spinner/styled-components.js +3 -2
  262. package/es/styles/__mocks__/styled.js +2 -1
  263. package/es/styles/styled.js +9 -7
  264. package/es/table/sortable-head-cell.js +1 -1
  265. package/es/table-semantic/styled-components.js +2 -1
  266. package/es/tabs/tabs.js +2 -2
  267. package/es/tag/styled-components.js +4 -8
  268. package/es/tag/tag.js +1 -1
  269. package/es/textarea/styled-components.js +9 -7
  270. package/es/textarea/textarea.js +2 -1
  271. package/es/timepicker/timepicker.js +2 -4
  272. package/es/timezonepicker/timezone-picker.js +3 -6
  273. package/es/timezonepicker/tzdata.js +6 -1
  274. package/es/timezonepicker/update-tzdata.js +9 -4
  275. package/es/toast/styled-components.js +30 -28
  276. package/es/toast/toaster.js +5 -7
  277. package/es/toast/types.js +0 -2
  278. package/es/tree-view/tree-label-interactable.js +8 -4
  279. package/es/tree-view/tree-label.js +5 -1
  280. package/es/tree-view/tree-node.js +1 -1
  281. package/es/tree-view/tree-view.js +6 -6
  282. package/es/typography/index.js +144 -36
  283. package/es/utils/deep-merge.js +2 -2
  284. package/es/utils/deprecated-component.js +5 -3
  285. package/esm/a11y/a11y.js +1 -1
  286. package/esm/accordion/accordion.js +3 -2
  287. package/esm/accordion/panel.js +1 -1
  288. package/esm/app-nav-bar/mobile-menu.js +9 -13
  289. package/esm/app-nav-bar/user-menu.js +8 -9
  290. package/esm/aspect-ratio-box/aspect-ratio-box.js +2 -2
  291. package/esm/block/block.js +1 -1
  292. package/esm/breadcrumbs/breadcrumbs.js +4 -7
  293. package/esm/button/button.js +2 -1
  294. package/esm/button/styled-components.js +19 -5
  295. package/esm/button/utils.js +3 -1
  296. package/esm/button-group/button-group.js +1 -1
  297. package/esm/button-group/stateful-button-group.js +5 -1
  298. package/esm/checkbox/checkbox.js +2 -3
  299. package/esm/combobox/combobox.js +4 -4
  300. package/esm/data-table/column-custom.js +1 -0
  301. package/esm/data-table/column-datetime.js +6 -6
  302. package/esm/data-table/column-numerical.js +317 -360
  303. package/esm/data-table/column.js +1 -0
  304. package/esm/data-table/constants.js +12 -8
  305. package/esm/data-table/data-table.js +56 -53
  306. package/esm/data-table/filter-shell.js +26 -4
  307. package/esm/data-table/locale.js +4 -2
  308. package/esm/data-table/measure-column-widths.js +83 -119
  309. package/esm/datepicker/calendar-header.js +7 -10
  310. package/esm/datepicker/calendar.js +2 -1
  311. package/esm/datepicker/datepicker.js +1 -1
  312. package/esm/datepicker/styled-components.js +2 -2
  313. package/esm/datepicker/utils/date-helpers.js +1 -1
  314. package/esm/datepicker/utils/index.js +1 -1
  315. package/esm/drawer/drawer.js +1 -1
  316. package/esm/flex-grid/flex-grid-item.js +5 -3
  317. package/esm/flex-grid/flex-grid.js +14 -9
  318. package/esm/form-control/form-control.js +4 -4
  319. package/esm/heading/heading.js +1 -1
  320. package/esm/helpers/overrides.js +13 -9
  321. package/esm/icon/alert.js +18 -14
  322. package/esm/icon/arrow-down.js +18 -14
  323. package/esm/icon/arrow-left.js +18 -14
  324. package/esm/icon/arrow-right.js +18 -14
  325. package/esm/icon/arrow-up.js +18 -14
  326. package/esm/icon/blank.js +14 -10
  327. package/esm/icon/check-indeterminate.js +18 -14
  328. package/esm/icon/check.js +18 -14
  329. package/esm/icon/chevron-down.js +19 -15
  330. package/esm/icon/chevron-left.js +18 -14
  331. package/esm/icon/chevron-right.js +18 -14
  332. package/esm/icon/chevron-up.js +19 -15
  333. package/esm/icon/delete-alt.js +18 -14
  334. package/esm/icon/delete.js +18 -14
  335. package/esm/icon/filter.js +32 -28
  336. package/esm/icon/grab.js +18 -14
  337. package/esm/icon/hide.js +16 -12
  338. package/esm/icon/menu.js +32 -28
  339. package/esm/icon/omit-dollar-prefixed-keys.js +1 -1
  340. package/esm/icon/overflow.js +26 -22
  341. package/esm/icon/plus.js +18 -14
  342. package/esm/icon/search.js +18 -14
  343. package/esm/icon/show.js +16 -12
  344. package/esm/icon/spinner.js +23 -19
  345. package/esm/icon/triangle-down.js +16 -12
  346. package/esm/icon/triangle-left.js +16 -12
  347. package/esm/icon/triangle-right.js +16 -12
  348. package/esm/icon/triangle-up.js +16 -12
  349. package/esm/icon/upload.js +18 -14
  350. package/esm/input/masked-input.js +1 -0
  351. package/esm/input/stateful-container.js +0 -1
  352. package/esm/input/styled-components.js +6 -2
  353. package/esm/layer/layer.js +4 -3
  354. package/esm/list/list-heading.js +3 -3
  355. package/esm/list/list-item.js +1 -1
  356. package/esm/list/menu-adapter.js +1 -2
  357. package/esm/map-marker/fixed-marker.js +11 -5
  358. package/esm/menu/maybe-child-menu.js +1 -2
  359. package/esm/menu/menu.js +1 -1
  360. package/esm/menu/option-profile.js +2 -0
  361. package/esm/menu/stateful-container.js +3 -4
  362. package/esm/menu/stateful-menu.js +9 -5
  363. package/esm/menu/types.js +1 -1
  364. package/esm/modal/modal-button.js +10 -5
  365. package/esm/modal/modal.js +1 -3
  366. package/esm/pagination/index.js +1 -1
  367. package/esm/pagination/stateful-container.js +1 -0
  368. package/esm/pagination/stateful-pagination.js +1 -0
  369. package/esm/payment-card/payment-card.js +25 -21
  370. package/esm/phone-input/base-country-picker.js +6 -8
  371. package/esm/phone-input/country-picker.js +5 -8
  372. package/esm/phone-input/country-select-dropdown.js +4 -2
  373. package/esm/phone-input/country-select.js +5 -8
  374. package/esm/phone-input/flag.js +2 -1
  375. package/esm/phone-input/phone-input-lite.js +1 -2
  376. package/esm/phone-input/phone-input-next.js +1 -2
  377. package/esm/pin-code/pin-code.js +1 -2
  378. package/esm/popover/popover.js +7 -7
  379. package/esm/progress-bar/progressbar-rounded.js +25 -22
  380. package/esm/progress-bar/progressbar.js +9 -5
  381. package/esm/radio/radio.js +3 -1
  382. package/esm/radio/radiogroup.js +1 -1
  383. package/esm/rating/emoticon-rating.js +1 -1
  384. package/esm/rating/star-rating.js +1 -1
  385. package/esm/select/autosize-input.js +1 -2
  386. package/esm/select/dropdown.js +1 -2
  387. package/esm/select/multi-value.js +1 -1
  388. package/esm/select/select-component.js +5 -4
  389. package/esm/select/styled-components.js +1 -2
  390. package/esm/select/value.js +1 -1
  391. package/esm/slider/slider.js +2 -2
  392. package/esm/snackbar/snackbar-element.js +4 -3
  393. package/esm/snackbar/styled-components.js +1 -1
  394. package/esm/spinner/spinner.js +22 -18
  395. package/esm/spinner/styled-components.js +0 -2
  396. package/esm/styles/__mocks__/styled.js +2 -1
  397. package/esm/styles/styled.js +9 -7
  398. package/esm/table/sortable-head-cell.js +1 -1
  399. package/esm/table-semantic/styled-components.js +2 -1
  400. package/esm/tabs/tabs.js +2 -2
  401. package/esm/tag/styled-components.js +4 -8
  402. package/esm/tag/tag.js +1 -1
  403. package/esm/textarea/styled-components.js +8 -7
  404. package/esm/textarea/textarea.js +2 -1
  405. package/esm/timepicker/timepicker.js +2 -4
  406. package/esm/timezonepicker/timezone-picker.js +3 -6
  407. package/esm/timezonepicker/tzdata.js +6 -1
  408. package/esm/timezonepicker/update-tzdata.js +11 -13
  409. package/esm/toast/styled-components.js +30 -19
  410. package/esm/toast/toaster.js +5 -7
  411. package/esm/toast/types.js +0 -2
  412. package/esm/tree-view/tree-label-interactable.js +12 -8
  413. package/esm/tree-view/tree-label.js +7 -3
  414. package/esm/tree-view/tree-node.js +1 -1
  415. package/esm/tree-view/tree-view.js +6 -6
  416. package/esm/typography/index.js +416 -272
  417. package/esm/utils/deep-merge.js +2 -2
  418. package/esm/utils/deprecated-component.js +5 -3
  419. package/file-uploader/file-uploader.js.flow +30 -60
  420. package/file-uploader/index.js.flow +1 -1
  421. package/file-uploader/styled-components.js.flow +9 -11
  422. package/file-uploader/types.js.flow +8 -10
  423. package/flex-grid/flex-grid-item.js +5 -3
  424. package/flex-grid/flex-grid-item.js.flow +31 -40
  425. package/flex-grid/flex-grid.js +14 -9
  426. package/flex-grid/flex-grid.js.flow +32 -31
  427. package/flex-grid/index.js.flow +2 -2
  428. package/flex-grid/types.js.flow +1 -1
  429. package/form-control/form-control.js +4 -4
  430. package/form-control/form-control.js.flow +16 -32
  431. package/form-control/index.js.flow +1 -1
  432. package/form-control/styled-components.js.flow +18 -21
  433. package/form-control/types.js.flow +2 -2
  434. package/header-navigation/header-navigation.js.flow +5 -10
  435. package/header-navigation/index.js.flow +2 -2
  436. package/header-navigation/styled-components.js.flow +38 -41
  437. package/header-navigation/types.js.flow +1 -1
  438. package/heading/heading-level.js.flow +3 -7
  439. package/heading/heading.js +1 -1
  440. package/heading/heading.js.flow +9 -23
  441. package/heading/index.js.flow +2 -2
  442. package/heading/types.js.flow +1 -1
  443. package/helper/constants.js.flow +1 -1
  444. package/helper/helper-steps.js.flow +8 -21
  445. package/helper/helper.js.flow +8 -8
  446. package/helper/index.js.flow +4 -4
  447. package/helper/stateful-helper.js.flow +5 -5
  448. package/helper/styled-components.js.flow +12 -24
  449. package/helpers/base-provider.js.flow +5 -5
  450. package/helpers/i18n-interpolation.js.flow +2 -2
  451. package/helpers/overrides.js +13 -9
  452. package/helpers/overrides.js.flow +40 -51
  453. package/helpers/react-helpers.js.flow +5 -5
  454. package/helpers/responsive-helpers.js.flow +2 -2
  455. package/helpers/strings.js.flow +1 -2
  456. package/helpers/types.js.flow +2 -2
  457. package/icon/alert.js +18 -14
  458. package/icon/alert.js.flow +7 -6
  459. package/icon/arrow-down.js +18 -14
  460. package/icon/arrow-down.js.flow +8 -14
  461. package/icon/arrow-left.js +18 -14
  462. package/icon/arrow-left.js.flow +8 -14
  463. package/icon/arrow-right.js +18 -14
  464. package/icon/arrow-right.js.flow +8 -14
  465. package/icon/arrow-up.js +18 -14
  466. package/icon/arrow-up.js.flow +8 -8
  467. package/icon/blank.js +14 -10
  468. package/icon/blank.js.flow +7 -6
  469. package/icon/build-icons.js.flow +13 -28
  470. package/icon/check-indeterminate.js +18 -14
  471. package/icon/check-indeterminate.js.flow +8 -15
  472. package/icon/check.js +18 -14
  473. package/icon/check.js.flow +7 -6
  474. package/icon/chevron-down.js +19 -15
  475. package/icon/chevron-down.js.flow +8 -8
  476. package/icon/chevron-left.js +18 -14
  477. package/icon/chevron-left.js.flow +8 -8
  478. package/icon/chevron-right.js +18 -14
  479. package/icon/chevron-right.js.flow +8 -10
  480. package/icon/chevron-up.js +19 -15
  481. package/icon/chevron-up.js.flow +8 -8
  482. package/icon/delete-alt.js +18 -14
  483. package/icon/delete-alt.js.flow +8 -14
  484. package/icon/delete.js +18 -14
  485. package/icon/delete.js.flow +7 -6
  486. package/icon/filter.js +32 -28
  487. package/icon/filter.js.flow +7 -6
  488. package/icon/grab.js +18 -14
  489. package/icon/grab.js.flow +7 -6
  490. package/icon/hide.js +16 -12
  491. package/icon/hide.js.flow +7 -6
  492. package/icon/icon-exports.js.flow +28 -28
  493. package/icon/icon.js.flow +4 -4
  494. package/icon/index.js.flow +2 -2
  495. package/icon/menu.js +32 -28
  496. package/icon/menu.js.flow +7 -6
  497. package/icon/omit-dollar-prefixed-keys.js +1 -1
  498. package/icon/omit-dollar-prefixed-keys.js.flow +2 -2
  499. package/icon/overflow.js +26 -22
  500. package/icon/overflow.js.flow +8 -8
  501. package/icon/plus.js +18 -14
  502. package/icon/plus.js.flow +7 -6
  503. package/icon/search.js +18 -14
  504. package/icon/search.js.flow +7 -6
  505. package/icon/show.js +16 -12
  506. package/icon/show.js.flow +7 -6
  507. package/icon/spinner.js +23 -19
  508. package/icon/spinner.js.flow +8 -8
  509. package/icon/styled-components.js.flow +13 -4
  510. package/icon/triangle-down.js +16 -12
  511. package/icon/triangle-down.js.flow +8 -16
  512. package/icon/triangle-left.js +16 -12
  513. package/icon/triangle-left.js.flow +8 -16
  514. package/icon/triangle-right.js +16 -12
  515. package/icon/triangle-right.js.flow +8 -16
  516. package/icon/triangle-up.js +16 -12
  517. package/icon/triangle-up.js.flow +8 -14
  518. package/icon/types.js.flow +1 -1
  519. package/icon/upload.js +18 -14
  520. package/icon/upload.js.flow +7 -6
  521. package/index.js.flow +5 -5
  522. package/input/base-input.js.flow +32 -57
  523. package/input/index.d.ts +1 -1
  524. package/input/index.js.flow +6 -11
  525. package/input/input.js.flow +13 -27
  526. package/input/masked-input.js +1 -0
  527. package/input/masked-input.js.flow +8 -7
  528. package/input/stateful-container.js +0 -1
  529. package/input/stateful-container.js.flow +6 -12
  530. package/input/stateful-input.js.flow +2 -2
  531. package/input/styled-components.js +6 -2
  532. package/input/styled-components.js.flow +78 -59
  533. package/input/types.js.flow +17 -18
  534. package/input/utils.js.flow +5 -5
  535. package/layer/index.js.flow +4 -4
  536. package/layer/layer.js +4 -3
  537. package/layer/layer.js.flow +19 -30
  538. package/layer/layers-manager.js.flow +25 -36
  539. package/layer/tether.js.flow +12 -14
  540. package/layer/types.js.flow +3 -3
  541. package/layer/utils.js.flow +2 -8
  542. package/layout-grid/cell.js.flow +5 -8
  543. package/layout-grid/grid.js.flow +11 -26
  544. package/layout-grid/index.js.flow +2 -2
  545. package/layout-grid/styled-components.js.flow +23 -38
  546. package/layout-grid/types.js.flow +3 -6
  547. package/link/index.js.flow +8 -8
  548. package/link/styled-components.js.flow +5 -7
  549. package/list/index.d.ts +4 -13
  550. package/list/index.js.flow +5 -5
  551. package/list/list-heading.js +3 -3
  552. package/list/list-heading.js.flow +76 -91
  553. package/list/list-item-label.js.flow +8 -12
  554. package/list/list-item.js +1 -1
  555. package/list/list-item.js.flow +64 -69
  556. package/list/menu-adapter.js +1 -2
  557. package/list/menu-adapter.js.flow +29 -36
  558. package/list/styled-components.js.flow +52 -60
  559. package/list/types.js.flow +11 -11
  560. package/list/utils.js.flow +3 -6
  561. package/locale/es_AR.js.flow +1 -2
  562. package/locale/index.js.flow +5 -10
  563. package/locale/types.js.flow +12 -12
  564. package/map-marker/badge-enhancer.js.flow +12 -27
  565. package/map-marker/constants.js.flow +3 -3
  566. package/map-marker/drag-shadow.js.flow +8 -23
  567. package/map-marker/fixed-marker.js +11 -5
  568. package/map-marker/fixed-marker.js.flow +21 -29
  569. package/map-marker/floating-marker.js.flow +9 -18
  570. package/map-marker/index.js.flow +2 -2
  571. package/map-marker/label-enhancer.js.flow +6 -9
  572. package/map-marker/needle.js.flow +6 -12
  573. package/map-marker/pin-head.js.flow +15 -38
  574. package/map-marker/styled-components.js.flow +45 -60
  575. package/map-marker/types.js.flow +9 -11
  576. package/menu/index.d.ts +2 -1
  577. package/menu/index.js.flow +7 -7
  578. package/menu/maybe-child-menu.js +1 -2
  579. package/menu/maybe-child-menu.js.flow +11 -14
  580. package/menu/menu.js +1 -1
  581. package/menu/menu.js.flow +17 -26
  582. package/menu/nested-menus.js.flow +21 -23
  583. package/menu/option-list.js.flow +16 -18
  584. package/menu/option-profile.js +2 -0
  585. package/menu/option-profile.js.flow +16 -30
  586. package/menu/stateful-container.js +3 -4
  587. package/menu/stateful-container.js.flow +42 -62
  588. package/menu/stateful-menu.js +9 -5
  589. package/menu/stateful-menu.js.flow +6 -5
  590. package/menu/styled-components.js.flow +47 -64
  591. package/menu/types.js.flow +30 -36
  592. package/menu/utils.js.flow +1 -1
  593. package/modal/close-icon.js.flow +2 -6
  594. package/modal/focus-once.js.flow +1 -1
  595. package/modal/index.js.flow +4 -4
  596. package/modal/modal-button.js +10 -5
  597. package/modal/modal-button.js.flow +10 -15
  598. package/modal/modal.js +1 -3
  599. package/modal/modal.js.flow +23 -40
  600. package/modal/styled-components.js.flow +18 -32
  601. package/modal/types.js.flow +6 -12
  602. package/notification/index.js.flow +2 -2
  603. package/notification/notification.js.flow +2 -2
  604. package/package.json +20 -15
  605. package/pagination/index.js +8 -8
  606. package/pagination/index.js.flow +8 -11
  607. package/pagination/pagination.js.flow +39 -62
  608. package/pagination/stateful-container.js +1 -0
  609. package/pagination/stateful-container.js.flow +14 -22
  610. package/pagination/stateful-pagination.js +1 -0
  611. package/pagination/stateful-pagination.js.flow +4 -6
  612. package/pagination/styled-components.js.flow +10 -14
  613. package/pagination/types.js.flow +12 -8
  614. package/payment-card/icons/amex.js.flow +2 -5
  615. package/payment-card/icons/dinersclub.js.flow +1 -1
  616. package/payment-card/icons/discover.js.flow +1 -1
  617. package/payment-card/icons/elo.js.flow +1 -1
  618. package/payment-card/icons/generic.js.flow +1 -1
  619. package/payment-card/icons/jcb.js.flow +4 -13
  620. package/payment-card/icons/maestro.js.flow +1 -1
  621. package/payment-card/icons/mastercard.js.flow +1 -1
  622. package/payment-card/icons/unionpay.js.flow +1 -1
  623. package/payment-card/icons/visa.js.flow +1 -1
  624. package/payment-card/index.js.flow +6 -6
  625. package/payment-card/payment-card.js +25 -21
  626. package/payment-card/payment-card.js.flow +16 -21
  627. package/payment-card/stateful-payment-card.js.flow +3 -2
  628. package/payment-card/styled-components.js.flow +5 -6
  629. package/payment-card/types.js.flow +2 -6
  630. package/payment-card/utils.js.flow +6 -18
  631. package/phone-input/base-country-picker.js +7 -8
  632. package/phone-input/base-country-picker.js.flow +27 -44
  633. package/phone-input/constants.js.flow +227 -227
  634. package/phone-input/country-picker.js +5 -8
  635. package/phone-input/country-picker.js.flow +19 -29
  636. package/phone-input/country-select-dropdown.js +3 -2
  637. package/phone-input/country-select-dropdown.js.flow +31 -43
  638. package/phone-input/country-select.js +5 -8
  639. package/phone-input/country-select.js.flow +13 -28
  640. package/phone-input/default-props.js.flow +2 -6
  641. package/phone-input/flag.js +2 -1
  642. package/phone-input/flag.js.flow +7 -6
  643. package/phone-input/flags/index.js.flow +241 -241
  644. package/phone-input/index.js.flow +10 -14
  645. package/phone-input/phone-input-lite.js +1 -2
  646. package/phone-input/phone-input-lite.js.flow +6 -7
  647. package/phone-input/phone-input-next.js +1 -2
  648. package/phone-input/phone-input-next.js.flow +13 -14
  649. package/phone-input/phone-input.js.flow +2 -2
  650. package/phone-input/stateful-phone-input-container.js.flow +4 -4
  651. package/phone-input/stateful-phone-input-next.js.flow +3 -5
  652. package/phone-input/stateful-phone-input.js.flow +1 -1
  653. package/phone-input/styled-components.js.flow +54 -59
  654. package/phone-input/types.js.flow +11 -16
  655. package/phone-input/utils.js.flow +2 -4
  656. package/pin-code/default-props.js.flow +1 -1
  657. package/pin-code/index.js.flow +4 -6
  658. package/pin-code/pin-code.js +1 -2
  659. package/pin-code/pin-code.js.flow +15 -28
  660. package/pin-code/stateful-pin-code-container.js.flow +6 -10
  661. package/pin-code/stateful-pin-code.js.flow +1 -1
  662. package/pin-code/styled-components.js.flow +19 -22
  663. package/pin-code/types.js.flow +6 -6
  664. package/popover/default-props.js.flow +2 -2
  665. package/popover/index.js.flow +3 -3
  666. package/popover/popover.js +7 -3
  667. package/popover/popover.js.flow +59 -75
  668. package/popover/stateful-container.js.flow +5 -8
  669. package/popover/stateful-popover.js.flow +4 -9
  670. package/popover/styled-components.js.flow +13 -26
  671. package/popover/types.js.flow +13 -28
  672. package/popover/utils.js.flow +9 -16
  673. package/progress-bar/index.d.ts +1 -0
  674. package/progress-bar/index.js.flow +3 -3
  675. package/progress-bar/progressbar-rounded.js +25 -22
  676. package/progress-bar/progressbar-rounded.js.flow +10 -7
  677. package/progress-bar/progressbar.js +9 -5
  678. package/progress-bar/progressbar.js.flow +20 -36
  679. package/progress-bar/styled-components.js.flow +98 -117
  680. package/progress-bar/types.js.flow +4 -7
  681. package/progress-steps/index.js.flow +3 -3
  682. package/progress-steps/numbered-step.js.flow +6 -15
  683. package/progress-steps/progress-steps.js.flow +7 -14
  684. package/progress-steps/step.js.flow +7 -20
  685. package/progress-steps/styled-components.js.flow +25 -29
  686. package/progress-steps/types.js.flow +2 -2
  687. package/radio/index.js.flow +5 -5
  688. package/radio/radio.js +3 -1
  689. package/radio/radio.js.flow +16 -19
  690. package/radio/radiogroup.js +1 -1
  691. package/radio/radiogroup.js.flow +19 -28
  692. package/radio/stateful-radiogroup-container.js.flow +7 -10
  693. package/radio/stateful-radiogroup.js.flow +4 -6
  694. package/radio/styled-components.js.flow +26 -32
  695. package/radio/types.js.flow +5 -4
  696. package/rating/emoticon-rating.js +1 -1
  697. package/rating/emoticon-rating.js.flow +26 -40
  698. package/rating/index.js.flow +2 -2
  699. package/rating/star-rating.js +1 -1
  700. package/rating/star-rating.js.flow +23 -34
  701. package/rating/styled-components.js.flow +8 -27
  702. package/rating/types.js.flow +4 -4
  703. package/select/autosize-input.js +1 -2
  704. package/select/autosize-input.js.flow +10 -18
  705. package/select/constants.js.flow +1 -1
  706. package/select/default-props.js.flow +1 -1
  707. package/select/dropdown.js +1 -2
  708. package/select/dropdown.js.flow +20 -35
  709. package/select/index.d.ts +19 -33
  710. package/select/index.js.flow +11 -13
  711. package/select/multi-select.js.flow +2 -4
  712. package/select/multi-value.js +1 -1
  713. package/select/multi-value.js.flow +6 -9
  714. package/select/select-component.js +5 -5
  715. package/select/select-component.js.flow +98 -175
  716. package/select/select.js.flow +1 -6
  717. package/select/single-select.js.flow +1 -1
  718. package/select/stateful-select-container.js.flow +5 -13
  719. package/select/stateful-select.js.flow +1 -1
  720. package/select/styled-components.js.flow +167 -218
  721. package/select/types.js.flow +15 -18
  722. package/select/utils/default-filter-options.js.flow +7 -8
  723. package/select/utils/index.js.flow +5 -12
  724. package/select/value.js +1 -1
  725. package/select/value.js.flow +5 -8
  726. package/side-navigation/index.js.flow +2 -2
  727. package/side-navigation/nav-item.js.flow +8 -13
  728. package/side-navigation/nav.js.flow +15 -35
  729. package/side-navigation/stateful-container.js.flow +10 -19
  730. package/side-navigation/stateful-nav.js.flow +2 -2
  731. package/side-navigation/styled-components.js.flow +16 -20
  732. package/side-navigation/types.js.flow +9 -9
  733. package/skeleton/index.js.flow +1 -1
  734. package/skeleton/skeleton.js.flow +4 -4
  735. package/skeleton/styled-components.js.flow +15 -18
  736. package/skeleton/types.js.flow +1 -1
  737. package/slider/index.js.flow +4 -3
  738. package/slider/slider.js +2 -2
  739. package/slider/slider.js.flow +19 -41
  740. package/slider/stateful-slider-container.js.flow +9 -12
  741. package/slider/stateful-slider.js.flow +2 -2
  742. package/slider/styled-components.js.flow +21 -21
  743. package/slider/types.js.flow +9 -13
  744. package/snackbar/index.js.flow +3 -3
  745. package/snackbar/snackbar-context.js.flow +16 -23
  746. package/snackbar/snackbar-element.js +4 -3
  747. package/snackbar/snackbar-element.js.flow +19 -32
  748. package/snackbar/styled-components.js +1 -1
  749. package/snackbar/styled-components.js.flow +19 -24
  750. package/snackbar/types.js.flow +6 -6
  751. package/spinner/index.js.flow +3 -2
  752. package/spinner/spinner.js +22 -18
  753. package/spinner/spinner.js.flow +10 -20
  754. package/spinner/styled-components.js +0 -2
  755. package/spinner/styled-components.js.flow +12 -11
  756. package/spinner/types.js.flow +3 -3
  757. package/styles/__mocks__/styled.js +1 -0
  758. package/styles/as-primary-export-hoc.js.flow +2 -2
  759. package/styles/index.js.flow +3 -3
  760. package/styles/styled.js +9 -7
  761. package/styles/styled.js.flow +35 -43
  762. package/styles/theme-provider.js.flow +6 -10
  763. package/styles/types.js.flow +2 -2
  764. package/styles/util.js.flow +17 -4
  765. package/table/filter.js.flow +12 -28
  766. package/table/index.d.ts +1 -0
  767. package/table/index.js.flow +4 -7
  768. package/table/sortable-head-cell.js +1 -1
  769. package/table/sortable-head-cell.js.flow +10 -13
  770. package/table/styled-components.js.flow +67 -79
  771. package/table/table.js.flow +2 -2
  772. package/table/types.js.flow +3 -2
  773. package/table-grid/index.js.flow +3 -7
  774. package/table-grid/sortable-head-cell.js.flow +2 -2
  775. package/table-grid/styled-components.js.flow +21 -23
  776. package/table-semantic/index.js.flow +4 -4
  777. package/table-semantic/styled-components.js +2 -1
  778. package/table-semantic/styled-components.js.flow +88 -125
  779. package/table-semantic/table-builder-column.js.flow +2 -4
  780. package/table-semantic/table-builder.js.flow +31 -70
  781. package/table-semantic/table.js.flow +13 -28
  782. package/table-semantic/types.js.flow +2 -2
  783. package/tabs/index.js.flow +4 -4
  784. package/tabs/stateful-tabs.js.flow +8 -24
  785. package/tabs/styled-components.js.flow +11 -11
  786. package/tabs/tab.js.flow +13 -16
  787. package/tabs/tabs.js +2 -2
  788. package/tabs/tabs.js.flow +17 -38
  789. package/tabs/types.js.flow +6 -6
  790. package/tabs-motion/stateful-tabs.js.flow +11 -24
  791. package/tabs-motion/styled-components.js.flow +59 -71
  792. package/tabs-motion/tab.js.flow +1 -1
  793. package/tabs-motion/tabs.js.flow +32 -62
  794. package/tabs-motion/types.js.flow +9 -9
  795. package/tabs-motion/utils.js.flow +6 -10
  796. package/tag/index.js.flow +2 -2
  797. package/tag/styled-components.js +4 -8
  798. package/tag/styled-components.js.flow +140 -146
  799. package/tag/tag.js +1 -1
  800. package/tag/tag.js.flow +13 -17
  801. package/tag/types.js.flow +2 -2
  802. package/tag/utils.js.flow +2 -2
  803. package/textarea/constants.js.flow +1 -1
  804. package/textarea/index.js.flow +5 -5
  805. package/textarea/stateful-container.js.flow +1 -0
  806. package/textarea/stateful-textarea.js.flow +1 -1
  807. package/textarea/styled-components.js +8 -7
  808. package/textarea/styled-components.js.flow +18 -15
  809. package/textarea/textarea.js +2 -1
  810. package/textarea/textarea.js.flow +11 -10
  811. package/textarea/types.js.flow +7 -5
  812. package/themes/dark-theme/borders.js.flow +1 -1
  813. package/themes/dark-theme/color-component-tokens.js.flow +2 -4
  814. package/themes/dark-theme/color-deprecated-semantic-tokens.js.flow +1 -1
  815. package/themes/dark-theme/color-semantic-tokens.js.flow +2 -2
  816. package/themes/dark-theme/color-tokens.js.flow +2 -2
  817. package/themes/dark-theme/create-dark-theme.js.flow +5 -7
  818. package/themes/dark-theme/dark-theme.js.flow +1 -1
  819. package/themes/dark-theme/primitives.js.flow +2 -2
  820. package/themes/index.js.flow +4 -4
  821. package/themes/light-theme/color-component-tokens.js.flow +2 -4
  822. package/themes/light-theme/color-deprecated-semantic-tokens.js.flow +2 -4
  823. package/themes/light-theme/color-semantic-tokens.js.flow +2 -2
  824. package/themes/light-theme/color-tokens.js.flow +2 -2
  825. package/themes/light-theme/create-light-theme.js.flow +5 -7
  826. package/themes/light-theme/light-theme.js.flow +1 -1
  827. package/themes/light-theme/primitives.js.flow +2 -2
  828. package/themes/move-theme/dark-theme-with-move.js.flow +3 -6
  829. package/themes/move-theme/light-theme-with-move.js.flow +3 -6
  830. package/themes/move-theme/typography.js.flow +28 -29
  831. package/themes/shared/animation.js.flow +1 -1
  832. package/themes/shared/borders.js.flow +1 -1
  833. package/themes/shared/breakpoints.js.flow +1 -1
  834. package/themes/shared/grid.js.flow +1 -1
  835. package/themes/shared/lighting.js.flow +1 -1
  836. package/themes/shared/media-query.js.flow +2 -2
  837. package/themes/shared/sizing.js.flow +1 -1
  838. package/themes/shared/typography.js.flow +20 -21
  839. package/themes/types.js.flow +3 -3
  840. package/timepicker/index.js.flow +1 -1
  841. package/timepicker/timepicker.js +2 -4
  842. package/timepicker/timepicker.js.flow +40 -73
  843. package/timepicker/types.js.flow +4 -4
  844. package/timezonepicker/index.js.flow +1 -1
  845. package/timezonepicker/timezone-picker.js +3 -6
  846. package/timezonepicker/timezone-picker.js.flow +27 -40
  847. package/timezonepicker/types.js.flow +5 -5
  848. package/timezonepicker/tzdata.js +6 -1
  849. package/timezonepicker/tzdata.js.flow +6 -1
  850. package/timezonepicker/update-tzdata.js +11 -13
  851. package/timezonepicker/update-tzdata.js.flow +11 -6
  852. package/toast/index.js.flow +3 -3
  853. package/toast/styled-components.js +30 -19
  854. package/toast/styled-components.js.flow +87 -74
  855. package/toast/toast.js.flow +25 -37
  856. package/toast/toaster.js +5 -7
  857. package/toast/toaster.js.flow +42 -65
  858. package/toast/types.js.flow +4 -5
  859. package/tokens/colors.js.flow +1 -1
  860. package/tokens/index.js.flow +1 -1
  861. package/tooltip/default-props.js.flow +2 -2
  862. package/tooltip/index.js.flow +4 -9
  863. package/tooltip/stateful-tooltip-container.js.flow +2 -2
  864. package/tooltip/stateful-tooltip.js.flow +3 -3
  865. package/tooltip/styled-components.js.flow +7 -11
  866. package/tooltip/tooltip.js.flow +5 -10
  867. package/tree-view/index.js.flow +5 -5
  868. package/tree-view/stateful-container.js.flow +12 -18
  869. package/tree-view/stateful-tree-view.js.flow +2 -2
  870. package/tree-view/styled-components.js.flow +25 -35
  871. package/tree-view/tree-label-interactable.js +12 -8
  872. package/tree-view/tree-label-interactable.js.flow +9 -9
  873. package/tree-view/tree-label.js +7 -3
  874. package/tree-view/tree-label.js.flow +12 -27
  875. package/tree-view/tree-node.js +1 -1
  876. package/tree-view/tree-node.js.flow +8 -9
  877. package/tree-view/tree-view.js +6 -6
  878. package/tree-view/tree-view.js.flow +17 -30
  879. package/tree-view/types.js.flow +6 -4
  880. package/tree-view/utils.js.flow +24 -55
  881. package/typography/index.js +416 -272
  882. package/typography/index.js.flow +388 -432
  883. package/utils/create-event.js.flow +1 -1
  884. package/utils/deep-merge.js +2 -2
  885. package/utils/deep-merge.js.flow +4 -7
  886. package/utils/deprecated-component.js +5 -3
  887. package/utils/deprecated-component.js.flow +7 -5
  888. package/utils/focusVisible.js.flow +26 -22
@@ -7,7 +7,7 @@ LICENSE file in the root directory of this source tree.
7
7
  // @flow
8
8
 
9
9
  import * as React from 'react';
10
- import {VariableSizeGrid} from 'react-window';
10
+ import { VariableSizeGrid } from 'react-window';
11
11
  import AutoSizer from 'react-virtualized-auto-sizer';
12
12
 
13
13
  import {
@@ -16,20 +16,14 @@ import {
16
16
  SIZE as BUTTON_SIZES,
17
17
  KIND as BUTTON_KINDS,
18
18
  } from '../button/index.js';
19
- import {useStyletron} from '../styles/index.js';
20
- import {Tooltip, PLACEMENT} from '../tooltip/index.js';
19
+ import { useStyletron } from '../styles/index.js';
20
+ import { Tooltip, PLACEMENT } from '../tooltip/index.js';
21
21
 
22
- import {SORT_DIRECTIONS} from './constants.js';
22
+ import { SORT_DIRECTIONS } from './constants.js';
23
23
  import HeaderCell from './header-cell.js';
24
24
  import MeasureColumnWidths from './measure-column-widths.js';
25
- import type {
26
- ColumnT,
27
- DataTablePropsT,
28
- RowT,
29
- SortDirectionsT,
30
- RowActionT,
31
- } from './types.js';
32
- import {LocaleContext} from '../locale/index.js';
25
+ import type { ColumnT, DataTablePropsT, RowT, SortDirectionsT, RowActionT } from './types.js';
26
+ import { LocaleContext } from '../locale/index.js';
33
27
 
34
28
  // consider pulling this out to a prop if useful.
35
29
  const HEADER_ROW_HEIGHT = 48;
@@ -46,14 +40,14 @@ type HeaderContextT = {|
46
40
  isSelectedAll: boolean,
47
41
  isSelectedIndeterminate: boolean,
48
42
  measuredWidths: number[],
49
- onMouseEnter: number => void,
43
+ onMouseEnter: (number) => void,
50
44
  onMouseLeave: () => void,
51
45
  onResize: (columnIndex: number, delta: number) => void,
52
46
  onSelectMany: () => void,
53
47
  onSelectNone: () => void,
54
- onSort: number => void,
48
+ onSort: (number) => void,
55
49
  resizableColumnWidths: boolean,
56
- rowActions: RowActionT[] | (RowT => RowActionT[]),
50
+ rowActions: RowActionT[] | ((RowT) => RowActionT[]),
57
51
  rowHeight: number,
58
52
  rowHighlightIndex: number,
59
53
  rows: RowT[],
@@ -80,14 +74,16 @@ type CellPlacementPropsT = {
80
74
  isSelectable: boolean,
81
75
  isRowSelected: (string | number) => boolean,
82
76
  onRowMouseEnter: (number, RowT) => void,
83
- onSelectOne: RowT => void,
77
+ onSelectOne: (RowT) => void,
84
78
  rowHighlightIndex: number,
85
79
  rows: RowT[],
86
80
  textQuery: string,
87
81
  },
88
82
  };
89
83
 
90
- function CellPlacement({columnIndex, rowIndex, data, style}) {
84
+ const sum = (ns) => ns.reduce((s, n) => s + n, 0);
85
+
86
+ function CellPlacement({ columnIndex, rowIndex, data, style }) {
91
87
  const [css, theme] = useStyletron();
92
88
 
93
89
  // ignores the table header row
@@ -97,7 +93,7 @@ function CellPlacement({columnIndex, rowIndex, data, style}) {
97
93
 
98
94
  let backgroundColor = theme.colors.backgroundPrimary;
99
95
  if (
100
- (rowIndex % 2 && columnIndex === data.columnHighlightIndex) ||
96
+ (Boolean(rowIndex % 2) && columnIndex === data.columnHighlightIndex) ||
101
97
  rowIndex === data.rowHighlightIndex
102
98
  ) {
103
99
  backgroundColor = theme.colors.backgroundTertiary;
@@ -106,9 +102,7 @@ function CellPlacement({columnIndex, rowIndex, data, style}) {
106
102
  }
107
103
 
108
104
  const Cell = data.columns[columnIndex].renderCell;
109
- const value = data.columns[columnIndex].mapDataToValue(
110
- data.rows[rowIndex - 1].data,
111
- );
105
+ const value = data.columns[columnIndex].mapDataToValue(data.rows[rowIndex - 1].data);
112
106
 
113
107
  return (
114
108
  <div
@@ -123,9 +117,7 @@ function CellPlacement({columnIndex, rowIndex, data, style}) {
123
117
  boxSizing: 'border-box',
124
118
  })}
125
119
  style={style}
126
- onMouseEnter={() =>
127
- data.onRowMouseEnter(rowIndex, data.rows[rowIndex - 1])
128
- }
120
+ onMouseEnter={() => data.onRowMouseEnter(rowIndex, data.rows[rowIndex - 1])}
129
121
  >
130
122
  <Cell
131
123
  value={value}
@@ -159,8 +151,7 @@ function compareCellPlacement(prevProps, nextProps) {
159
151
 
160
152
  if (
161
153
  prevProps.data.isSelectable === nextProps.data.isSelectable &&
162
- prevProps.data.columnHighlightIndex ===
163
- nextProps.data.columnHighlightIndex &&
154
+ prevProps.data.columnHighlightIndex === nextProps.data.columnHighlightIndex &&
164
155
  prevProps.data.rowHighlightIndex === nextProps.data.rowHighlightIndex &&
165
156
  prevProps.data.textQuery === nextProps.data.textQuery &&
166
157
  prevProps.data.isRowSelected === nextProps.data.isRowSelected
@@ -174,8 +165,7 @@ function compareCellPlacement(prevProps, nextProps) {
174
165
  if (
175
166
  prevProps.rowIndex !== prevProps.data.rowHighlightIndex &&
176
167
  prevProps.rowIndex !== nextProps.data.rowHighlightIndex &&
177
- prevProps.data.columnHighlightIndex ===
178
- nextProps.data.columnHighlightIndex &&
168
+ prevProps.data.columnHighlightIndex === nextProps.data.columnHighlightIndex &&
179
169
  prevProps.data.isRowSelected === nextProps.data.isRowSelected
180
170
  ) {
181
171
  return true;
@@ -196,7 +186,7 @@ function compareCellPlacement(prevProps, nextProps) {
196
186
  }
197
187
  const CellPlacementMemo = React.memo<CellPlacementPropsT, mixed>(
198
188
  CellPlacement,
199
- compareCellPlacement,
189
+ compareCellPlacement
200
190
  );
201
191
  CellPlacementMemo.displayName = 'CellPlacement';
202
192
 
@@ -239,7 +229,7 @@ type HeaderProps = {|
239
229
  isSelectable: boolean,
240
230
  isSelectedAll: boolean,
241
231
  isSelectedIndeterminate: boolean,
242
- onMouseEnter: number => void,
232
+ onMouseEnter: (number) => void,
243
233
  onMouseLeave: () => void,
244
234
  onResize: (columnIndex: number, delta: number) => void,
245
235
  onResizeIndexChange: (columnIndex: number) => void,
@@ -258,7 +248,7 @@ function Header(props: HeaderProps) {
258
248
  const [css, theme] = useStyletron();
259
249
  const [startResizePos, setStartResizePos] = React.useState(0);
260
250
  const [endResizePos, setEndResizePos] = React.useState(0);
261
- // eslint-disable-next-line flowtype/no-weak-types
251
+ // flowlint-next-line unclear-type:off
262
252
  const headerCellRef = React.useRef<any>(null);
263
253
 
264
254
  const RULER_OFFSET = 2;
@@ -356,9 +346,7 @@ function Header(props: HeaderProps) {
356
346
  onSelectAll={props.onSelectMany}
357
347
  onSelectNone={props.onSelectNone}
358
348
  onSort={props.onSort}
359
- sortDirection={
360
- props.sortIndex === props.index ? props.sortDirection : null
361
- }
349
+ sortDirection={props.sortIndex === props.index ? props.sortDirection : null}
362
350
  title={props.columnTitle}
363
351
  />
364
352
  {props.resizableColumnWidths && (
@@ -371,16 +359,14 @@ function Header(props: HeaderProps) {
371
359
  >
372
360
  <div
373
361
  role="presentation"
374
- onMouseDown={event => {
362
+ onMouseDown={(event) => {
375
363
  props.onResizeIndexChange(props.index);
376
364
  const x = getPositionX(event.target);
377
365
  setStartResizePos(x);
378
366
  setEndResizePos(x);
379
367
  }}
380
368
  className={css({
381
- backgroundColor: isResizingThisColumn
382
- ? theme.colors.contentPrimary
383
- : null,
369
+ backgroundColor: isResizingThisColumn ? theme.colors.contentPrimary : null,
384
370
  cursor: 'ew-resize',
385
371
  position: 'absolute',
386
372
  height: '100%',
@@ -411,7 +397,7 @@ function Header(props: HeaderProps) {
411
397
  );
412
398
  }
413
399
 
414
- function Headers(props: {||}) {
400
+ function Headers() {
415
401
  const [css, theme] = useStyletron();
416
402
  const locale = React.useContext(LocaleContext);
417
403
  const ctx = React.useContext(HeaderContext);
@@ -423,7 +409,7 @@ function Headers(props: {||}) {
423
409
  position: 'sticky',
424
410
  top: 0,
425
411
  left: 0,
426
- width: `${ctx.widths.reduce((sum, w) => sum + w, 0)}px`,
412
+ width: `${sum(ctx.widths)}px`,
427
413
  height: `${HEADER_ROW_HEIGHT}px`,
428
414
  display: 'flex',
429
415
  // this feels bad.. the absolutely positioned children elements
@@ -439,10 +425,7 @@ function Headers(props: {||}) {
439
425
  <Tooltip
440
426
  key={columnIndex}
441
427
  placement={PLACEMENT.bottomLeft}
442
- isOpen={
443
- ctx.columnHighlightIndex === columnIndex &&
444
- Boolean(activeFilter)
445
- }
428
+ isOpen={ctx.columnHighlightIndex === columnIndex && Boolean(activeFilter)}
446
429
  content={() => {
447
430
  return (
448
431
  <div>
@@ -474,12 +457,11 @@ function Headers(props: {||}) {
474
457
  backgroundColor: theme.colors.backgroundPrimary,
475
458
  borderTop: 'none',
476
459
  borderLeft: 'none',
477
- borderRight:
478
- columnIndex === ctx.columns.length - 1 ? 'none' : null,
460
+ borderRight: columnIndex === ctx.columns.length - 1 ? 'none' : null,
479
461
  boxSizing: 'border-box',
480
462
  display: 'flex',
481
463
  })}
482
- style={{width: ctx.widths[columnIndex]}}
464
+ style={{ width: ctx.widths[columnIndex] }}
483
465
  >
484
466
  <Header
485
467
  columnTitle={column.title}
@@ -523,9 +505,7 @@ function LoadingOrEmptyMessage(props) {
523
505
  marginLeft: theme.sizing.scale500,
524
506
  })}
525
507
  >
526
- {typeof props.children === 'function'
527
- ? props.children()
528
- : String(props.children)}
508
+ {typeof props.children === 'function' ? props.children() : String(props.children)}
529
509
  </p>
530
510
  );
531
511
  }
@@ -533,8 +513,8 @@ function LoadingOrEmptyMessage(props) {
533
513
  // replaces the content of the virtualized window with contents. in this case,
534
514
  // we are prepending a table header row before the table rows (children to the fn).
535
515
  const InnerTableElement = React.forwardRef<
536
- {|children: React.Node, style: {[string]: mixed}|},
537
- HTMLDivElement,
516
+ {| children: React.Node, style: { [string]: mixed } |},
517
+ HTMLDivElement
538
518
  >((props, ref) => {
539
519
  const [, theme] = useStyletron();
540
520
  const ctx = React.useContext(HeaderContext);
@@ -560,13 +540,9 @@ const InnerTableElement = React.forwardRef<
560
540
  <div ref={ref} data-baseweb="data-table" style={props.style}>
561
541
  <Headers />
562
542
 
563
- {viewState === LOADING && (
564
- <LoadingOrEmptyMessage>{ctx.loadingMessage}</LoadingOrEmptyMessage>
565
- )}
543
+ {viewState === LOADING && <LoadingOrEmptyMessage>{ctx.loadingMessage}</LoadingOrEmptyMessage>}
566
544
 
567
- {viewState === EMPTY && (
568
- <LoadingOrEmptyMessage>{ctx.emptyMessage}</LoadingOrEmptyMessage>
569
- )}
545
+ {viewState === EMPTY && <LoadingOrEmptyMessage>{ctx.emptyMessage}</LoadingOrEmptyMessage>}
570
546
 
571
547
  {viewState === RENDERING && props.children}
572
548
 
@@ -587,14 +563,13 @@ const InnerTableElement = React.forwardRef<
587
563
  position: 'absolute',
588
564
  right: theme.direction !== 'rtl' ? 0 - ctx.scrollLeft : 'initial',
589
565
  left: theme.direction === 'rtl' ? 0 : 'initial',
590
- top:
591
- (ctx.rowHighlightIndex - 1) * ctx.rowHeight + HEADER_ROW_HEIGHT,
566
+ top: (ctx.rowHighlightIndex - 1) * ctx.rowHeight + HEADER_ROW_HEIGHT,
592
567
  }}
593
568
  >
594
569
  {(typeof ctx.rowActions === 'function'
595
570
  ? ctx.rowActions(highlightedRow)
596
571
  : ctx.rowActions
597
- ).map(rowAction => {
572
+ ).map((rowAction) => {
598
573
  if (rowAction.renderButton) {
599
574
  const RowActionButton = rowAction.renderButton;
600
575
  return <RowActionButton />;
@@ -605,7 +580,7 @@ const InnerTableElement = React.forwardRef<
605
580
  <Button
606
581
  alt={rowAction.label}
607
582
  key={rowAction.label}
608
- onClick={event =>
583
+ onClick={(event) =>
609
584
  rowAction.onClick({
610
585
  event,
611
586
  row: ctx.rows[ctx.rowHighlightIndex - 1],
@@ -688,53 +663,54 @@ export function DataTable({
688
663
  const locale = React.useContext(LocaleContext);
689
664
 
690
665
  const rowHeightAtIndex = React.useCallback(
691
- index => {
666
+ (index) => {
692
667
  if (index === 0) {
693
668
  return HEADER_ROW_HEIGHT;
694
669
  }
695
670
  return rowHeight;
696
671
  },
697
- [rowHeight],
698
- );
699
- const gridRef = React.useRef<typeof VariableSizeGrid | null>(null);
700
- const [measuredWidths, setMeasuredWidths] = React.useState(
701
- columns.map(() => 0),
672
+ [rowHeight]
702
673
  );
674
+
675
+ // We use state for our ref, to allow hooks to update when the ref changes.
676
+ // flowlint-next-line unclear-type:off
677
+ const [gridRef, setGridRef] = React.useState<?VariableSizeGrid<any>>(null);
678
+ const [measuredWidths, setMeasuredWidths] = React.useState(columns.map(() => 0));
703
679
  const [resizeDeltas, setResizeDeltas] = React.useState(columns.map(() => 0));
704
680
  React.useEffect(() => {
705
- setMeasuredWidths(prev => {
681
+ setMeasuredWidths((prev) => {
706
682
  return columns.map((v, index) => prev[index] || 0);
707
683
  });
708
- setResizeDeltas(prev => {
684
+ setResizeDeltas((prev) => {
709
685
  return columns.map((v, index) => prev[index] || 0);
710
686
  });
711
687
  }, [columns]);
712
688
 
713
689
  const resetAfterColumnIndex = React.useCallback(
714
- columnIndex => {
715
- if (gridRef.current) {
690
+ (columnIndex) => {
691
+ if (gridRef) {
716
692
  // $FlowFixMe trigger react-window to layout the elements again
717
- gridRef.current.resetAfterColumnIndex(columnIndex, true);
693
+ gridRef.resetAfterColumnIndex(columnIndex, true);
718
694
  }
719
695
  },
720
- [gridRef.current],
696
+ [gridRef]
721
697
  );
722
698
  const handleWidthsChange = React.useCallback(
723
- nextWidths => {
699
+ (nextWidths) => {
724
700
  setMeasuredWidths(nextWidths);
725
701
  resetAfterColumnIndex(0);
726
702
  },
727
- [setMeasuredWidths, resetAfterColumnIndex],
703
+ [setMeasuredWidths, resetAfterColumnIndex]
728
704
  );
729
705
  const handleColumnResize = React.useCallback(
730
706
  (columnIndex, delta) => {
731
- setResizeDeltas(prev => {
707
+ setResizeDeltas((prev) => {
732
708
  prev[columnIndex] = Math.max(prev[columnIndex] + delta, 0);
733
709
  return [...prev];
734
710
  });
735
711
  resetAfterColumnIndex(columnIndex);
736
712
  },
737
- [setResizeDeltas, resetAfterColumnIndex],
713
+ [setResizeDeltas, resetAfterColumnIndex]
738
714
  );
739
715
 
740
716
  const [scrollLeft, setScrollLeft] = React.useState(0);
@@ -753,27 +729,22 @@ export function DataTable({
753
729
  }
754
730
  }, [recentlyScrolledX]);
755
731
  const handleScroll = React.useCallback(
756
- params => {
732
+ (params) => {
757
733
  setScrollLeft(params.scrollLeft);
758
734
  if (params.scrollLeft !== scrollLeft) {
759
735
  setRecentlyScrolledX(true);
760
736
  }
761
737
  },
762
- [scrollLeft, setScrollLeft, setRecentlyScrolledX],
738
+ [scrollLeft, setScrollLeft, setRecentlyScrolledX]
763
739
  );
764
740
 
765
741
  const sortedIndices = React.useMemo(() => {
766
742
  let toSort = allRows.map((r, i) => [r, i]);
767
743
  const index = sortIndex;
768
744
 
769
- if (
770
- index !== null &&
771
- index !== undefined &&
772
- index !== -1 &&
773
- columns[index]
774
- ) {
745
+ if (index !== null && index !== undefined && index !== -1 && columns[index]) {
775
746
  const sortFn = columns[index].sortFn;
776
- const getValue = row => columns[index].mapDataToValue(row.data);
747
+ const getValue = (row) => columns[index].mapDataToValue(row.data);
777
748
  if (sortDirection === SORT_DIRECTIONS.ASC) {
778
749
  toSort.sort((a, b) => sortFn(getValue(a[0]), getValue(b[0])));
779
750
  } else if (sortDirection === SORT_DIRECTIONS.DESC) {
@@ -781,20 +752,20 @@ export function DataTable({
781
752
  }
782
753
  }
783
754
 
784
- return toSort.map(el => el[1]);
755
+ return toSort.map((el) => el[1]);
785
756
  }, [sortIndex, sortDirection, columns, allRows]);
786
757
 
787
758
  const filteredIndices = React.useMemo(() => {
788
759
  const set = new Set(allRows.map((_, idx) => idx));
789
- Array.from(filters || new Set(), f => f).forEach(([title, filter]) => {
790
- const columnIndex = columns.findIndex(c => c.title === title);
760
+ Array.from(filters || new Set(), (f) => f).forEach(([title, filter]) => {
761
+ const columnIndex = columns.findIndex((c) => c.title === title);
791
762
  const column = columns[columnIndex];
792
763
  if (!column) {
793
764
  return;
794
765
  }
795
766
 
796
767
  const filterFn = column.buildFilter(filter);
797
- Array.from(set).forEach(idx => {
768
+ Array.from(set).forEach((idx) => {
798
769
  if (!filterFn(column.mapDataToValue(allRows[idx].data))) {
799
770
  set.delete(idx);
800
771
  }
@@ -808,15 +779,12 @@ export function DataTable({
808
779
  stringishColumnIndices.push(i);
809
780
  }
810
781
  }
811
- Array.from(set).forEach(idx => {
812
- const matches = stringishColumnIndices.some(cdx => {
782
+ Array.from(set).forEach((idx) => {
783
+ const matches = stringishColumnIndices.some((cdx) => {
813
784
  const column = columns[cdx];
814
785
  const textQueryFilter = column.textQueryFilter;
815
786
  if (textQueryFilter) {
816
- return textQueryFilter(
817
- textQuery,
818
- column.mapDataToValue(allRows[idx].data),
819
- );
787
+ return textQueryFilter(textQuery, column.mapDataToValue(allRows[idx].data));
820
788
  }
821
789
  return false;
822
790
  });
@@ -832,8 +800,8 @@ export function DataTable({
832
800
 
833
801
  const rows = React.useMemo(() => {
834
802
  const result = sortedIndices
835
- .filter(idx => filteredIndices.has(idx))
836
- .map(idx => allRows[idx]);
803
+ .filter((idx) => filteredIndices.has(idx))
804
+ .map((idx) => allRows[idx]);
837
805
 
838
806
  if (onIncludedRowsChange) {
839
807
  onIncludedRowsChange(result);
@@ -843,13 +811,9 @@ export function DataTable({
843
811
 
844
812
  const [browserScrollbarWidth, setBrowserScrollbarWidth] = React.useState(0);
845
813
  const normalizedWidths = React.useMemo(() => {
846
- const sum = ns => ns.reduce((s, n) => s + n, 0);
847
- const resizedWidths = measuredWidths.map(
848
- (w, i) => Math.floor(w) + Math.floor(resizeDeltas[i]),
849
- );
850
- if (gridRef.current) {
851
- // $FlowFixMe
852
- const gridProps = gridRef.current.props;
814
+ const resizedWidths = measuredWidths.map((w, i) => Math.floor(w) + Math.floor(resizeDeltas[i]));
815
+ if (gridRef) {
816
+ const gridProps = gridRef.props;
853
817
 
854
818
  let isContentTallerThanContainer = false;
855
819
  let visibleRowHeight = 0;
@@ -861,13 +825,11 @@ export function DataTable({
861
825
  }
862
826
  }
863
827
 
864
- const scrollbarWidth = isContentTallerThanContainer
865
- ? browserScrollbarWidth
866
- : 0;
828
+ const scrollbarWidth = isContentTallerThanContainer ? browserScrollbarWidth : 0;
867
829
 
868
830
  const remainder = gridProps.width - sum(resizedWidths) - scrollbarWidth;
869
831
  const padding = Math.floor(
870
- remainder / columns.filter(c => (c ? c.fillWidth : true)).length,
832
+ remainder / columns.filter((c) => (c ? c.fillWidth : true)).length
871
833
  );
872
834
  if (padding > 0) {
873
835
  const result = [];
@@ -885,13 +847,7 @@ export function DataTable({
885
847
  }
886
848
  }
887
849
  return resizedWidths;
888
- }, [
889
- measuredWidths,
890
- resizeDeltas,
891
- browserScrollbarWidth,
892
- rows.length,
893
- columns,
894
- ]);
850
+ }, [gridRef, measuredWidths, resizeDeltas, browserScrollbarWidth, rows.length, columns]);
895
851
 
896
852
  const isSelectable = batchActions ? !!batchActions.length : false;
897
853
  const isSelectedAll = React.useMemo(() => {
@@ -907,13 +863,13 @@ export function DataTable({
907
863
  return !!selectedRowIds.size && selectedRowIds.size < rows.length;
908
864
  }, [selectedRowIds, rows.length]);
909
865
  const isRowSelected = React.useCallback(
910
- id => {
866
+ (id) => {
911
867
  if (selectedRowIds) {
912
868
  return selectedRowIds.has(id);
913
869
  }
914
870
  return false;
915
871
  },
916
- [selectedRowIds],
872
+ [selectedRowIds]
917
873
  );
918
874
  const handleSelectMany = React.useCallback(() => {
919
875
  if (onSelectMany) {
@@ -926,21 +882,21 @@ export function DataTable({
926
882
  }
927
883
  }, [onSelectNone]);
928
884
  const handleSelectOne = React.useCallback(
929
- row => {
885
+ (row) => {
930
886
  if (onSelectOne) {
931
887
  onSelectOne(row);
932
888
  }
933
889
  },
934
- [onSelectOne],
890
+ [onSelectOne]
935
891
  );
936
892
 
937
893
  const handleSort = React.useCallback(
938
- columnIndex => {
894
+ (columnIndex) => {
939
895
  if (onSort) {
940
896
  onSort(columnIndex);
941
897
  }
942
898
  },
943
- [onSort],
899
+ [onSort]
944
900
  );
945
901
 
946
902
  const [columnHighlightIndex, setColumnHighlightIndex] = React.useState(-1);
@@ -948,10 +904,10 @@ export function DataTable({
948
904
 
949
905
  function handleRowHighlightIndexChange(nextIndex) {
950
906
  setRowHighlightIndex(nextIndex);
951
- if (gridRef.current) {
907
+ if (gridRef) {
952
908
  if (nextIndex >= 0) {
953
909
  // $FlowFixMe - unable to get react-window types
954
- gridRef.current.scrollToItem({rowIndex: nextIndex});
910
+ gridRef.scrollToItem({ rowIndex: nextIndex });
955
911
  }
956
912
  if (onRowHighlightChange) {
957
913
  onRowHighlightChange(nextIndex, rows[nextIndex - 1]);
@@ -960,13 +916,13 @@ export function DataTable({
960
916
  }
961
917
 
962
918
  const handleRowMouseEnter = React.useCallback(
963
- nextIndex => {
919
+ (nextIndex) => {
964
920
  setColumnHighlightIndex(-1);
965
921
  if (nextIndex !== rowHighlightIndex) {
966
922
  handleRowHighlightIndexChange(nextIndex);
967
923
  }
968
924
  },
969
- [rowHighlightIndex],
925
+ [rowHighlightIndex]
970
926
  );
971
927
  function handleColumnHeaderMouseEnter(columnIndex) {
972
928
  setColumnHighlightIndex(columnIndex);
@@ -1015,9 +971,9 @@ export function DataTable({
1015
971
  isSelectable={isSelectable}
1016
972
  onWidthsChange={handleWidthsChange}
1017
973
  />
1018
- <MeasureScrollbarWidth onWidthChange={w => setBrowserScrollbarWidth(w)} />
974
+ <MeasureScrollbarWidth onWidthChange={(w) => setBrowserScrollbarWidth(w)} />
1019
975
  <AutoSizer>
1020
- {({height, width}) => (
976
+ {({ height, width }) => (
1021
977
  <HeaderContext.Provider
1022
978
  value={{
1023
979
  columns: columns,
@@ -1050,12 +1006,13 @@ export function DataTable({
1050
1006
  }}
1051
1007
  >
1052
1008
  <VariableSizeGrid
1053
- // eslint-disable-next-line flowtype/no-weak-types
1054
- ref={(gridRef: any)}
1009
+ // flowlint-next-line unclear-type:off
1010
+ ref={(setGridRef: any)}
1055
1011
  overscanRowCount={10}
1012
+ overscanColumnCount={5}
1056
1013
  innerElementType={InnerTableElement}
1057
1014
  columnCount={columns.length}
1058
- columnWidth={columnIndex => normalizedWidths[columnIndex]}
1015
+ columnWidth={(columnIndex) => normalizedWidths[columnIndex]}
1059
1016
  height={height - 2}
1060
1017
  // plus one to account for additional header row
1061
1018
  rowCount={rows.length + 1}