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
@@ -40,6 +40,7 @@ function Column(options) {
40
40
  mapDataToValue: options.mapDataToValue,
41
41
  maxWidth: options.maxWidth,
42
42
  minWidth: options.minWidth,
43
+ // eslint-disable-next-line react/display-name
43
44
  renderCell: /*#__PURE__*/React.forwardRef(function (props, ref) {
44
45
  var _useStyletron = useStyletron(),
45
46
  _useStyletron2 = _slicedToArray(_useStyletron, 2),
@@ -19,13 +19,6 @@ export var NUMERICAL_FORMATS = Object.freeze({
19
19
  ACCOUNTING: 'ACCOUNTING',
20
20
  PERCENTAGE: 'PERCENTAGE'
21
21
  });
22
- export var NUMERICAL_OPERATIONS = Object.freeze({
23
- EQ: 'EQ',
24
- GT: 'GT',
25
- GTE: 'GTE',
26
- LT: 'LT',
27
- LTE: 'LTE'
28
- });
29
22
  export var DATETIME_OPERATIONS = Object.freeze({
30
23
  RANGE_DATETIME: 'RANGE_DATETIME',
31
24
  RANGE_DATE: 'RANGE_DATE',
@@ -39,4 +32,15 @@ export var DATETIME_OPERATIONS = Object.freeze({
39
32
  export var SORT_DIRECTIONS = Object.freeze({
40
33
  ASC: 'ASC',
41
34
  DESC: 'DESC'
42
- });
35
+ }); // If modifying this, take a look at the histogram and adjust. see HISTOGRAM_SIZE
36
+
37
+ export var FILTER_SHELL_WIDTH = '320px'; // Depends on FILTER_SHELL_WIDTH
38
+
39
+ export var HISTOGRAM_SIZE = {
40
+ width: 308,
41
+ height: 120
42
+ }; // Arguably visually appealing within the given width.
43
+ // Smaller and we don't have enough detail per bar.
44
+ // Larger and the bars are too granular and don't align well with the slider steps
45
+
46
+ export var MAX_BIN_COUNT = 50;
@@ -43,6 +43,12 @@ import { LocaleContext } from '../locale/index.js'; // consider pulling this out
43
43
 
44
44
  var HEADER_ROW_HEIGHT = 48;
45
45
 
46
+ var sum = function sum(ns) {
47
+ return ns.reduce(function (s, n) {
48
+ return s + n;
49
+ }, 0);
50
+ };
51
+
46
52
  function CellPlacement(_ref) {
47
53
  var columnIndex = _ref.columnIndex,
48
54
  rowIndex = _ref.rowIndex,
@@ -61,7 +67,7 @@ function CellPlacement(_ref) {
61
67
 
62
68
  var backgroundColor = theme.colors.backgroundPrimary;
63
69
 
64
- if (rowIndex % 2 && columnIndex === data.columnHighlightIndex || rowIndex === data.rowHighlightIndex) {
70
+ if (Boolean(rowIndex % 2) && columnIndex === data.columnHighlightIndex || rowIndex === data.rowHighlightIndex) {
65
71
  backgroundColor = theme.colors.backgroundTertiary;
66
72
  } else if (rowIndex % 2 || columnIndex === data.columnHighlightIndex) {
67
73
  backgroundColor = theme.colors.backgroundSecondary;
@@ -172,7 +178,7 @@ function Header(props) {
172
178
  var _React$useState3 = React.useState(0),
173
179
  _React$useState4 = _slicedToArray(_React$useState3, 2),
174
180
  endResizePos = _React$useState4[0],
175
- setEndResizePos = _React$useState4[1]; // eslint-disable-next-line flowtype/no-weak-types
181
+ setEndResizePos = _React$useState4[1]; // flowlint-next-line unclear-type:off
176
182
 
177
183
 
178
184
  var headerCellRef = React.useRef(null);
@@ -301,7 +307,7 @@ function Header(props) {
301
307
  }))));
302
308
  }
303
309
 
304
- function Headers(props) {
310
+ function Headers() {
305
311
  var _useStyletron5 = useStyletron(),
306
312
  _useStyletron6 = _slicedToArray(_useStyletron5, 2),
307
313
  css = _useStyletron6[0],
@@ -320,9 +326,7 @@ function Headers(props) {
320
326
  position: 'sticky',
321
327
  top: 0,
322
328
  left: 0,
323
- width: "".concat(ctx.widths.reduce(function (sum, w) {
324
- return sum + w;
325
- }, 0), "px"),
329
+ width: "".concat(sum(ctx.widths), "px"),
326
330
  height: "".concat(HEADER_ROW_HEIGHT, "px"),
327
331
  display: 'flex',
328
332
  // this feels bad.. the absolutely positioned children elements
@@ -545,22 +549,27 @@ export function DataTable(_ref2) {
545
549
  }
546
550
 
547
551
  return rowHeight;
548
- }, [rowHeight]);
549
- var gridRef = React.useRef(null);
552
+ }, [rowHeight]); // We use state for our ref, to allow hooks to update when the ref changes.
553
+ // flowlint-next-line unclear-type:off
550
554
 
551
- var _React$useState7 = React.useState(columns.map(function () {
552
- return 0;
553
- })),
555
+ var _React$useState7 = React.useState(null),
554
556
  _React$useState8 = _slicedToArray(_React$useState7, 2),
555
- measuredWidths = _React$useState8[0],
556
- setMeasuredWidths = _React$useState8[1];
557
+ gridRef = _React$useState8[0],
558
+ setGridRef = _React$useState8[1];
557
559
 
558
560
  var _React$useState9 = React.useState(columns.map(function () {
559
561
  return 0;
560
562
  })),
561
563
  _React$useState10 = _slicedToArray(_React$useState9, 2),
562
- resizeDeltas = _React$useState10[0],
563
- setResizeDeltas = _React$useState10[1];
564
+ measuredWidths = _React$useState10[0],
565
+ setMeasuredWidths = _React$useState10[1];
566
+
567
+ var _React$useState11 = React.useState(columns.map(function () {
568
+ return 0;
569
+ })),
570
+ _React$useState12 = _slicedToArray(_React$useState11, 2),
571
+ resizeDeltas = _React$useState12[0],
572
+ setResizeDeltas = _React$useState12[1];
564
573
 
565
574
  React.useEffect(function () {
566
575
  setMeasuredWidths(function (prev) {
@@ -575,11 +584,11 @@ export function DataTable(_ref2) {
575
584
  });
576
585
  }, [columns]);
577
586
  var resetAfterColumnIndex = React.useCallback(function (columnIndex) {
578
- if (gridRef.current) {
587
+ if (gridRef) {
579
588
  // $FlowFixMe trigger react-window to layout the elements again
580
- gridRef.current.resetAfterColumnIndex(columnIndex, true);
589
+ gridRef.resetAfterColumnIndex(columnIndex, true);
581
590
  }
582
- }, [gridRef.current]);
591
+ }, [gridRef]);
583
592
  var handleWidthsChange = React.useCallback(function (nextWidths) {
584
593
  setMeasuredWidths(nextWidths);
585
594
  resetAfterColumnIndex(0);
@@ -592,20 +601,20 @@ export function DataTable(_ref2) {
592
601
  resetAfterColumnIndex(columnIndex);
593
602
  }, [setResizeDeltas, resetAfterColumnIndex]);
594
603
 
595
- var _React$useState11 = React.useState(0),
596
- _React$useState12 = _slicedToArray(_React$useState11, 2),
597
- scrollLeft = _React$useState12[0],
598
- setScrollLeft = _React$useState12[1];
599
-
600
- var _React$useState13 = React.useState(false),
604
+ var _React$useState13 = React.useState(0),
601
605
  _React$useState14 = _slicedToArray(_React$useState13, 2),
602
- isScrollingX = _React$useState14[0],
603
- setIsScrollingX = _React$useState14[1];
606
+ scrollLeft = _React$useState14[0],
607
+ setScrollLeft = _React$useState14[1];
604
608
 
605
609
  var _React$useState15 = React.useState(false),
606
610
  _React$useState16 = _slicedToArray(_React$useState15, 2),
607
- recentlyScrolledX = _React$useState16[0],
608
- setRecentlyScrolledX = _React$useState16[1];
611
+ isScrollingX = _React$useState16[0],
612
+ setIsScrollingX = _React$useState16[1];
613
+
614
+ var _React$useState17 = React.useState(false),
615
+ _React$useState18 = _slicedToArray(_React$useState17, 2),
616
+ recentlyScrolledX = _React$useState18[0],
617
+ setRecentlyScrolledX = _React$useState18[1];
609
618
 
610
619
  React.useLayoutEffect(function () {
611
620
  if (recentlyScrolledX !== isScrollingX) {
@@ -727,25 +736,18 @@ export function DataTable(_ref2) {
727
736
  return result;
728
737
  }, [sortedIndices, filteredIndices, onIncludedRowsChange, allRows]);
729
738
 
730
- var _React$useState17 = React.useState(0),
731
- _React$useState18 = _slicedToArray(_React$useState17, 2),
732
- browserScrollbarWidth = _React$useState18[0],
733
- setBrowserScrollbarWidth = _React$useState18[1];
739
+ var _React$useState19 = React.useState(0),
740
+ _React$useState20 = _slicedToArray(_React$useState19, 2),
741
+ browserScrollbarWidth = _React$useState20[0],
742
+ setBrowserScrollbarWidth = _React$useState20[1];
734
743
 
735
744
  var normalizedWidths = React.useMemo(function () {
736
- var sum = function sum(ns) {
737
- return ns.reduce(function (s, n) {
738
- return s + n;
739
- }, 0);
740
- };
741
-
742
745
  var resizedWidths = measuredWidths.map(function (w, i) {
743
746
  return Math.floor(w) + Math.floor(resizeDeltas[i]);
744
747
  });
745
748
 
746
- if (gridRef.current) {
747
- // $FlowFixMe
748
- var gridProps = gridRef.current.props;
749
+ if (gridRef) {
750
+ var gridProps = gridRef.props;
749
751
  var isContentTallerThanContainer = false;
750
752
  var visibleRowHeight = 0;
751
753
 
@@ -782,7 +784,7 @@ export function DataTable(_ref2) {
782
784
  }
783
785
 
784
786
  return resizedWidths;
785
- }, [measuredWidths, resizeDeltas, browserScrollbarWidth, rows.length, columns]);
787
+ }, [gridRef, measuredWidths, resizeDeltas, browserScrollbarWidth, rows.length, columns]);
786
788
  var isSelectable = batchActions ? !!batchActions.length : false;
787
789
  var isSelectedAll = React.useMemo(function () {
788
790
  if (!selectedRowIds) {
@@ -826,23 +828,23 @@ export function DataTable(_ref2) {
826
828
  }
827
829
  }, [onSort]);
828
830
 
829
- var _React$useState19 = React.useState(-1),
830
- _React$useState20 = _slicedToArray(_React$useState19, 2),
831
- columnHighlightIndex = _React$useState20[0],
832
- setColumnHighlightIndex = _React$useState20[1];
833
-
834
831
  var _React$useState21 = React.useState(-1),
835
832
  _React$useState22 = _slicedToArray(_React$useState21, 2),
836
- rowHighlightIndex = _React$useState22[0],
837
- setRowHighlightIndex = _React$useState22[1];
833
+ columnHighlightIndex = _React$useState22[0],
834
+ setColumnHighlightIndex = _React$useState22[1];
835
+
836
+ var _React$useState23 = React.useState(-1),
837
+ _React$useState24 = _slicedToArray(_React$useState23, 2),
838
+ rowHighlightIndex = _React$useState24[0],
839
+ setRowHighlightIndex = _React$useState24[1];
838
840
 
839
841
  function handleRowHighlightIndexChange(nextIndex) {
840
842
  setRowHighlightIndex(nextIndex);
841
843
 
842
- if (gridRef.current) {
844
+ if (gridRef) {
843
845
  if (nextIndex >= 0) {
844
846
  // $FlowFixMe - unable to get react-window types
845
- gridRef.current.scrollToItem({
847
+ gridRef.scrollToItem({
846
848
  rowIndex: nextIndex
847
849
  });
848
850
  }
@@ -931,10 +933,11 @@ export function DataTable(_ref2) {
931
933
  tableHeight: height,
932
934
  widths: normalizedWidths
933
935
  }
934
- }, /*#__PURE__*/React.createElement(VariableSizeGrid // eslint-disable-next-line flowtype/no-weak-types
936
+ }, /*#__PURE__*/React.createElement(VariableSizeGrid // flowlint-next-line unclear-type:off
935
937
  , {
936
- ref: gridRef,
938
+ ref: setGridRef,
937
939
  overscanRowCount: 10,
940
+ overscanColumnCount: 5,
938
941
  innerElementType: InnerTableElement,
939
942
  columnCount: columns.length,
940
943
  columnWidth: function columnWidth(columnIndex) {
@@ -21,6 +21,7 @@ import { Button, SIZE as BUTTON_SIZE } from '../button/index.js';
21
21
  import { Checkbox, STYLE_TYPE } from '../checkbox/index.js';
22
22
  import { useStyletron } from '../styles/index.js';
23
23
  import { LocaleContext } from '../locale/index.js';
24
+ import { FILTER_SHELL_WIDTH } from './constants.js';
24
25
 
25
26
  function FilterShell(props) {
26
27
  var _useStyletron = useStyletron(),
@@ -29,6 +30,21 @@ function FilterShell(props) {
29
30
  theme = _useStyletron2[1];
30
31
 
31
32
  var locale = React.useContext(LocaleContext);
33
+ var excludeText;
34
+
35
+ switch (props.excludeKind) {
36
+ case 'value':
37
+ excludeText = locale.datatable.filterExcludeValue;
38
+ break;
39
+
40
+ case 'range':
41
+ excludeText = locale.datatable.filterExcludeRange;
42
+ break;
43
+
44
+ default:
45
+ excludeText = locale.datatable.filterExclude;
46
+ }
47
+
32
48
  return /*#__PURE__*/React.createElement("form", {
33
49
  className: css({
34
50
  backgroundColor: theme.colors.backgroundPrimary,
@@ -36,7 +52,7 @@ function FilterShell(props) {
36
52
  paddingRight: theme.sizing.scale600,
37
53
  paddingBottom: theme.sizing.scale600,
38
54
  paddingLeft: theme.sizing.scale600,
39
- width: '320px'
55
+ width: FILTER_SHELL_WIDTH
40
56
  }),
41
57
  onSubmit: function onSubmit(event) {
42
58
  event.preventDefault();
@@ -44,17 +60,23 @@ function FilterShell(props) {
44
60
  }
45
61
  }, props.children, /*#__PURE__*/React.createElement("div", {
46
62
  className: css({
47
- alignItems: 'center',
48
63
  display: 'flex',
64
+ flexDirection: 'column',
49
65
  justifyContent: 'space-between',
50
- marginTop: theme.sizing.scale600
66
+ alignItems: 'flex-end',
67
+ marginTop: theme.sizing.scale600,
68
+ gap: theme.sizing.scale200
69
+ })
70
+ }, /*#__PURE__*/React.createElement("div", {
71
+ className: css({
72
+ alignSelf: 'flex-start'
51
73
  })
52
74
  }, /*#__PURE__*/React.createElement(Checkbox, {
53
75
  checked: props.exclude,
54
76
  onChange: props.onExcludeChange,
55
77
  checkmarkType: STYLE_TYPE.toggle_round,
56
78
  labelPlacement: "right"
57
- }, locale.datatable.filterExclude), /*#__PURE__*/React.createElement(Button, {
79
+ }, excludeText)), /*#__PURE__*/React.createElement(Button, {
58
80
  size: BUTTON_SIZE.compact,
59
81
  type: "submit"
60
82
  }, locale.datatable.filterApply)));
@@ -6,18 +6,20 @@ LICENSE file in the root directory of this source tree.
6
6
  */
7
7
  var locale = {
8
8
  emptyState: 'No rows match the filter criteria defined. Please remove one or more filters to view more data.',
9
- loadingState: 'Loading Rows.',
9
+ loadingState: 'Loading rows.',
10
10
  searchAriaLabel: 'Search by text',
11
11
  filterAdd: 'Add Filter',
12
12
  filterExclude: 'Exclude',
13
13
  filterApply: 'Apply',
14
+ filterExcludeRange: 'Exclude range',
15
+ filterExcludeValue: 'Exclude value',
14
16
  filterAppliedTo: 'filter applied to',
15
17
  optionsLabel: 'Select column to filter by',
16
18
  optionsSearch: 'Search for a column to filter by...',
17
19
  optionsEmpty: 'No columns available.',
18
20
  categoricalFilterSelectAll: 'Select All',
19
21
  categoricalFilterSelectClear: 'Clear',
20
- categoricalFilterEmpty: 'No Categories Found',
22
+ categoricalFilterEmpty: 'No categories found',
21
23
  datetimeFilterRange: 'Range',
22
24
  datetimeFilterRangeDatetime: 'Date, Time',
23
25
  datetimeFilterRangeDate: 'Date',
@@ -1,11 +1,3 @@
1
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
-
3
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
-
5
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
6
-
7
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
8
-
9
1
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
10
2
 
11
3
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -27,51 +19,64 @@ LICENSE file in the root directory of this source tree.
27
19
  import * as React from 'react';
28
20
  import { useStyletron } from '../styles/index.js';
29
21
  import HeaderCell from './header-cell.js';
22
+ import { useRef } from 'react'; // Measures the column header + sampled data
30
23
 
31
- // https://github.com/Swizec/useDimensions
32
- function useDimensions() {
33
- var _React$useState = React.useState({}),
34
- _React$useState2 = _slicedToArray(_React$useState, 2),
35
- dimensions = _React$useState2[0],
36
- setDimensions = _React$useState2[1];
24
+ function MeasureColumn(_ref) {
25
+ var sampleIndexes = _ref.sampleIndexes,
26
+ column = _ref.column,
27
+ columnIndex = _ref.columnIndex,
28
+ rows = _ref.rows,
29
+ isSelectable = _ref.isSelectable,
30
+ onLayout = _ref.onLayout;
37
31
 
38
- var _React$useState3 = React.useState(null),
39
- _React$useState4 = _slicedToArray(_React$useState3, 2),
40
- node = _React$useState4[0],
41
- setNode = _React$useState4[1];
32
+ var _useStyletron = useStyletron(),
33
+ _useStyletron2 = _slicedToArray(_useStyletron, 1),
34
+ css = _useStyletron2[0];
42
35
 
43
- var ref = React.useCallback(function (node) {
44
- setNode(node);
45
- }, []);
36
+ var ref = useRef();
46
37
  React.useEffect(function () {
47
38
  if (typeof document !== 'undefined') {
48
- if (node) {
49
- window.requestAnimationFrame(function () {
50
- setDimensions(node.getBoundingClientRect());
51
- });
39
+ if (ref.current) {
40
+ onLayout(columnIndex, ref.current.getBoundingClientRect());
52
41
  }
53
42
  }
54
- }, [node]);
55
- return [ref, dimensions];
56
- }
57
-
58
- function ElementMeasurer(props) {
59
- var onDimensionsChange = props.onDimensionsChange;
60
-
61
- var _useDimensions = useDimensions(),
62
- _useDimensions2 = _slicedToArray(_useDimensions, 2),
63
- ref = _useDimensions2[0],
64
- dimensions = _useDimensions2[1];
65
-
66
- React.useEffect(function () {
67
- onDimensionsChange(dimensions);
68
- }, [dimensions, onDimensionsChange]);
69
- return /*#__PURE__*/React.cloneElement(props.item, {
70
- ref: ref
71
- });
43
+ }, []);
44
+ return /*#__PURE__*/React.createElement("div", {
45
+ ref: ref,
46
+ className: css({
47
+ display: 'flex',
48
+ flexDirection: 'column',
49
+ width: 'fit-content'
50
+ })
51
+ }, /*#__PURE__*/React.createElement(HeaderCell, {
52
+ index: columnIndex,
53
+ isHovered: true,
54
+ isMeasured: true,
55
+ isSelectedAll: false,
56
+ isSelectedIndeterminate: false,
57
+ onMouseEnter: function onMouseEnter() {},
58
+ onMouseLeave: function onMouseLeave() {},
59
+ onSelectAll: function onSelectAll() {},
60
+ onSelectNone: function onSelectNone() {},
61
+ onSort: function onSort(i) {},
62
+ sortable: column.sortable,
63
+ sortDirection: null,
64
+ title: column.title,
65
+ isSelectable: isSelectable
66
+ }), sampleIndexes.map(function (rowIndex, i) {
67
+ var Cell = column.renderCell;
68
+ return /*#__PURE__*/React.createElement(Cell, {
69
+ key: "measure-".concat(i),
70
+ value: column.mapDataToValue(rows[rowIndex].data),
71
+ isSelectable: isSelectable,
72
+ isMeasured: true,
73
+ sortable: column.sortable,
74
+ x: 0,
75
+ y: rowIndex
76
+ });
77
+ }));
72
78
  }
73
79
 
74
- // sample size could likely be generated based on row count, to have higher confidence
75
80
  var MAX_SAMPLE_SIZE = 50;
76
81
 
77
82
  function generateSampleIndices(inputMin, inputMax, maxSamples) {
@@ -103,57 +108,46 @@ function generateSampleIndices(inputMin, inputMax, maxSamples) {
103
108
  return indices;
104
109
  }
105
110
 
106
- export default function MeasureColumnWidths(_ref) {
107
- var columns = _ref.columns,
108
- rows = _ref.rows,
109
- widths = _ref.widths,
110
- isSelectable = _ref.isSelectable,
111
- onWidthsChange = _ref.onWidthsChange;
111
+ export default function MeasureColumnWidths(_ref2) {
112
+ var columns = _ref2.columns,
113
+ rows = _ref2.rows,
114
+ widths = _ref2.widths,
115
+ isSelectable = _ref2.isSelectable,
116
+ onWidthsChange = _ref2.onWidthsChange;
112
117
 
113
- var _useStyletron = useStyletron(),
114
- _useStyletron2 = _slicedToArray(_useStyletron, 1),
115
- css = _useStyletron2[0];
118
+ var _useStyletron3 = useStyletron(),
119
+ _useStyletron4 = _slicedToArray(_useStyletron3, 1),
120
+ css = _useStyletron4[0];
116
121
 
117
- var measurementCount = React.useRef(0);
118
- var dimensionsCache = React.useRef(widths);
122
+ var widthMap = React.useMemo(function () {
123
+ return new Map();
124
+ }, []);
119
125
  var sampleSize = rows.length < MAX_SAMPLE_SIZE ? rows.length : MAX_SAMPLE_SIZE;
120
126
  var finishedMeasurementCount = (sampleSize + 1) * columns.length;
121
- var sampleRowIndicesByColumn = React.useMemo(function () {
122
- measurementCount.current = 0;
123
- dimensionsCache.current = widths;
124
- var indices = generateSampleIndices(0, rows.length - 1, sampleSize);
125
- return columns.map(function () {
126
- return indices;
127
- });
127
+ var sampleIndexes = React.useMemo(function () {
128
+ return generateSampleIndices(0, rows.length - 1, sampleSize);
128
129
  }, [columns, rows, widths, sampleSize]);
129
- var handleDimensionsChange = React.useCallback(function (columnIndex, rowIndex, dimensions) {
130
- if (dimensions.width === undefined) return;
130
+ var handleDimensionsChange = React.useCallback(function (columnIndex, dimensions) {
131
+ var nextWidth = Math.min(Math.max(columns[columnIndex].minWidth || 0, widthMap.get(columnIndex) || 0, dimensions.width + 1), columns[columnIndex].maxWidth || Infinity);
131
132
 
132
- if (columns[columnIndex] === undefined || dimensionsCache.current[columnIndex] === undefined) {
133
- return;
133
+ if (nextWidth !== widthMap.get(columnIndex)) {
134
+ widthMap.set(columnIndex, nextWidth);
134
135
  }
135
136
 
136
- measurementCount.current += 1;
137
- var nextWidth = Math.min(Math.max(columns[columnIndex].minWidth || 0, dimensionsCache.current[columnIndex], dimensions.width + 1), columns[columnIndex].maxWidth || Infinity);
138
-
139
- if (nextWidth !== dimensionsCache.current[columnIndex]) {
140
- var nextWidths = _toConsumableArray(dimensionsCache.current);
141
-
142
- nextWidths[columnIndex] = nextWidth;
143
- dimensionsCache.current = nextWidths;
144
- }
145
-
146
- if (measurementCount.current >= finishedMeasurementCount) {
147
- onWidthsChange(dimensionsCache.current);
137
+ if ( // Refresh at 100% of done
138
+ widthMap.size === columns.length || // ...50%
139
+ widthMap.size === Math.floor(columns.length / 2) || // ...25%
140
+ widthMap.size === Math.floor(columns.length / 4)) {
141
+ onWidthsChange(Array.from(widthMap.values()));
148
142
  }
149
143
  }, [columns, finishedMeasurementCount, onWidthsChange]);
150
144
  var hiddenStyle = css({
151
145
  position: 'absolute',
152
146
  overflow: 'hidden',
153
147
  height: 0
154
- });
148
+ }); // Remove the measurement nodes after we are done updating our column width
155
149
 
156
- if (measurementCount.current >= finishedMeasurementCount) {
150
+ if (widthMap.size === columns.length) {
157
151
  return null;
158
152
  }
159
153
 
@@ -164,45 +158,15 @@ export default function MeasureColumnWidths(_ref) {
164
158
  className: hiddenStyle,
165
159
  "aria-hidden": true,
166
160
  role: "none"
167
- }, sampleRowIndicesByColumn.map(function (rowIndices, columnIndex) {
168
- var Cell = columns[columnIndex].renderCell;
169
- return rowIndices.map(function (rowIndex) {
170
- return /*#__PURE__*/React.createElement(ElementMeasurer, {
171
- key: "measure-".concat(columnIndex, "-").concat(rowIndex),
172
- onDimensionsChange: function onDimensionsChange(dimensions) {
173
- return handleDimensionsChange(columnIndex, rowIndex, dimensions);
174
- },
175
- item: /*#__PURE__*/React.createElement(Cell, {
176
- value: columns[columnIndex].mapDataToValue(rows[rowIndex].data),
177
- isMeasured: true,
178
- onSelect: isSelectable && columnIndex === 0 ? function () {} : undefined,
179
- x: columnIndex,
180
- y: rowIndex
181
- })
182
- });
183
- });
184
- }), columns.map(function (column, columnIndex) {
185
- return /*#__PURE__*/React.createElement(ElementMeasurer, {
186
- key: "measure-column-".concat(columnIndex),
187
- onDimensionsChange: function onDimensionsChange(dimensions) {
188
- return handleDimensionsChange(columnIndex, -1, dimensions);
189
- },
190
- item: /*#__PURE__*/React.createElement(HeaderCell, {
191
- index: columnIndex,
192
- isHovered: true,
193
- isMeasured: true,
194
- isSelectable: isSelectable && columnIndex === 0,
195
- isSelectedAll: false,
196
- isSelectedIndeterminate: false,
197
- onMouseEnter: function onMouseEnter() {},
198
- onMouseLeave: function onMouseLeave() {},
199
- onSelectAll: function onSelectAll() {},
200
- onSelectNone: function onSelectNone() {},
201
- onSort: function onSort(i) {},
202
- sortable: column.sortable,
203
- sortDirection: null,
204
- title: column.title
205
- })
161
+ }, columns.map(function (column, i) {
162
+ return /*#__PURE__*/React.createElement(MeasureColumn, {
163
+ key: column.title + i,
164
+ column: column,
165
+ rows: rows,
166
+ isSelectable: isSelectable,
167
+ onLayout: handleDimensionsChange,
168
+ columnIndex: i,
169
+ sampleIndexes: sampleIndexes
206
170
  });
207
171
  }))
208
172
  );
@@ -57,10 +57,10 @@ import { StatefulMenu } from '../menu/index.js';
57
57
  import { Popover } from '../popover/index.js';
58
58
  import { LocaleContext } from '../locale/index.js';
59
59
  import { ThemeContext } from '../styles/theme-provider.js';
60
- import { StyledCalendarHeader, StyledPrevButton, StyledNextButton, StyledMonthHeader, StyledWeekdayHeader, StyledMonthYearSelectButton, StyledMonthYearSelectIconContainer } from './styled-components.js';
61
- import { ORIENTATION, WEEKDAYS, DENSITY } from './constants.js';
60
+ import { StyledCalendarHeader, StyledMonthHeader, StyledMonthYearSelectButton, StyledMonthYearSelectIconContainer, StyledNextButton, StyledPrevButton, StyledWeekdayHeader } from './styled-components.js';
61
+ import { DENSITY, ORIENTATION, WEEKDAYS } from './constants.js';
62
62
  import { getOverrides, mergeOverrides } from '../helpers/overrides.js';
63
- import { isFocusVisible, forkFocus, forkBlur } from '../utils/focusVisible.js';
63
+ import { forkBlur, forkFocus, isFocusVisible } from '../utils/focusVisible.js';
64
64
 
65
65
  var navBtnStyle = function navBtnStyle(_ref) {
66
66
  var $theme = _ref.$theme;
@@ -92,7 +92,7 @@ var CalendarHeader = /*#__PURE__*/function (_React$Component) {
92
92
 
93
93
  _classCallCheck(this, CalendarHeader);
94
94
 
95
- _this = _super.call(this, props);
95
+ _this = _super.call(this, props); //$FlowFixMe
96
96
 
97
97
  _defineProperty(_assertThisInitialized(_this), "dateHelpers", void 0);
98
98
 
@@ -236,7 +236,7 @@ var CalendarHeader = /*#__PURE__*/function (_React$Component) {
236
236
  monthsShown = _this$props2.monthsShown,
237
237
  order = _this$props2.order;
238
238
 
239
- if (monthsShown && _this.isMultiMonthHorizontal()) {
239
+ if (!!monthsShown && _this.isMultiMonthHorizontal()) {
240
240
  if (direction === DIRECTION.NEXT) {
241
241
  var isLastMonth = order === monthsShown - 1;
242
242
  return !isLastMonth;
@@ -448,17 +448,14 @@ var CalendarHeader = /*#__PURE__*/function (_React$Component) {
448
448
  OverriddenStatefulMenu = _getOverrides16[0],
449
449
  menuProps = _getOverrides16[1];
450
450
 
451
- var menuOverrides = mergeOverrides({
451
+ menuProps.overrides = mergeOverrides({
452
452
  List: {
453
453
  style: {
454
454
  height: 'auto',
455
455
  maxHeight: '257px'
456
456
  }
457
457
  }
458
- }, // $FlowFixMe
459
- menuProps && menuProps.overrides); // $FlowFixMe
460
-
461
- menuProps.overrides = menuOverrides;
458
+ }, menuProps && menuProps.overrides);
462
459
 
463
460
  var initialMonthIndex = _this.monthItems.findIndex(function (month) {
464
461
  return month.id === _this.dateHelpers.getMonth(date).toString();
@@ -580,7 +580,8 @@ var Calendar = /*#__PURE__*/function (_React$Component) {
580
580
  var _this$props3 = _this.props,
581
581
  _highlightedDate = _this$props3.highlightedDate,
582
582
  _value = _this$props3.value,
583
- adapter = _this$props3.adapter;
583
+ adapter = _this$props3.adapter; //$FlowFixMe
584
+
584
585
  _this.dateHelpers = new DateHelpers(adapter);
585
586
 
586
587
  var dateInView = _this.getDateInView();