baseui 12.1.3 → 13.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1058) hide show
  1. package/a11y/a11y.js +6 -2
  2. package/a11y/types.d.ts +1 -1
  3. package/accordion/accordion.js +1 -0
  4. package/accordion/index.d.ts +1 -1
  5. package/accordion/locale.d.ts +1 -1
  6. package/accordion/panel.js +2 -1
  7. package/accordion/stateless-accordion.js +3 -1
  8. package/accordion/types.d.ts +18 -18
  9. package/app-nav-bar/app-nav-bar.js +9 -3
  10. package/app-nav-bar/index.d.ts +4 -4
  11. package/app-nav-bar/mobile-menu.js +4 -2
  12. package/app-nav-bar/styled-components.js +2 -35
  13. package/app-nav-bar/styled-components.js.flow +6 -36
  14. package/app-nav-bar/types.d.ts +6 -6
  15. package/app-nav-bar/user-menu.js +3 -2
  16. package/app-nav-bar/utils.d.ts +1 -1
  17. package/aspect-ratio-box/aspect-ratio-box-body.js +11 -7
  18. package/aspect-ratio-box/aspect-ratio-box.js +1 -0
  19. package/aspect-ratio-box/types.d.ts +1 -1
  20. package/avatar/avatar.js +3 -1
  21. package/avatar/styled-components.js +3 -1
  22. package/avatar/types.d.ts +6 -6
  23. package/badge/index.d.ts +8 -8
  24. package/badge/styled-components.js +8 -5
  25. package/badge/styled-components.js.flow +9 -4
  26. package/badge/types.d.ts +9 -9
  27. package/badge/utils.d.ts +1 -1
  28. package/banner/banner.js +26 -10
  29. package/banner/banner.js.flow +9 -4
  30. package/banner/index.d.ts +3 -3
  31. package/banner/styled-components.js +1 -1
  32. package/banner/types.d.ts +12 -11
  33. package/block/styled-components.js +21 -4
  34. package/block/types.d.ts +21 -21
  35. package/bottom-navigation/bottom-navigation.d.ts +4 -0
  36. package/bottom-navigation/bottom-navigation.js +170 -0
  37. package/bottom-navigation/index.d.ts +4 -0
  38. package/bottom-navigation/index.js +55 -0
  39. package/bottom-navigation/index.js.flow +72 -0
  40. package/bottom-navigation/nav-item.d.ts +3 -0
  41. package/bottom-navigation/nav-item.js +20 -0
  42. package/bottom-navigation/package.json +4 -0
  43. package/bottom-navigation/panel.d.ts +3 -0
  44. package/bottom-navigation/panel.js +53 -0
  45. package/bottom-navigation/selector.d.ts +3 -0
  46. package/bottom-navigation/selector.js +71 -0
  47. package/bottom-navigation/styled-components.d.ts +9 -0
  48. package/bottom-navigation/styled-components.js +105 -0
  49. package/bottom-navigation/types.d.ts +45 -0
  50. package/bottom-navigation/types.js +5 -0
  51. package/breadcrumbs/breadcrumbs.js +6 -2
  52. package/breadcrumbs/locale.d.ts +1 -1
  53. package/breadcrumbs/types.d.ts +2 -2
  54. package/button/button-internals.js +13 -0
  55. package/button/button.d.ts +2 -2
  56. package/button/button.js +3 -8
  57. package/button/index.d.ts +1 -1
  58. package/button/styled-components.js +11 -6
  59. package/button/types.d.ts +4 -4
  60. package/button-dock/button-dock.d.ts +4 -0
  61. package/button-dock/button-dock.js +63 -0
  62. package/button-dock/index.d.ts +3 -0
  63. package/button-dock/index.js +46 -0
  64. package/button-dock/index.js.flow +37 -0
  65. package/button-dock/package.json +4 -0
  66. package/button-dock/styled-components.d.ts +5 -0
  67. package/button-dock/styled-components.js +63 -0
  68. package/button-dock/types.d.ts +14 -0
  69. package/button-dock/types.js +5 -0
  70. package/button-docked/button-docked.d.ts +4 -0
  71. package/button-docked/button-docked.js +63 -0
  72. package/button-docked/index.d.ts +3 -0
  73. package/button-docked/index.js +46 -0
  74. package/button-docked/index.js.flow +37 -0
  75. package/button-docked/package.json +4 -0
  76. package/button-docked/styled-components.d.ts +5 -0
  77. package/button-docked/styled-components.js +62 -0
  78. package/button-docked/types.d.ts +14 -0
  79. package/button-docked/types.js +5 -0
  80. package/button-group/button-group.js +5 -0
  81. package/button-group/locale.d.ts +1 -1
  82. package/button-group/stateful-container.d.ts +1 -1
  83. package/button-group/stateful-container.js +3 -0
  84. package/button-group/types.d.ts +11 -11
  85. package/button-timed/button-timed.d.ts +4 -0
  86. package/button-timed/button-timed.js +125 -0
  87. package/button-timed/index.d.ts +5 -0
  88. package/button-timed/index.js +78 -0
  89. package/button-timed/index.js.flow +57 -0
  90. package/button-timed/package.json +4 -0
  91. package/button-timed/styled-components.d.ts +5 -0
  92. package/button-timed/styled-components.js +59 -0
  93. package/button-timed/types.d.ts +12 -0
  94. package/button-timed/types.js +5 -0
  95. package/button-timed/utils.d.ts +1 -0
  96. package/button-timed/utils.js +30 -0
  97. package/card/card.js +4 -2
  98. package/card/card.js.flow +1 -1
  99. package/card/types.d.ts +4 -4
  100. package/card/types.js.flow +1 -1
  101. package/checkbox/checkbox.d.ts +2 -0
  102. package/checkbox/checkbox.js +36 -16
  103. package/checkbox/checkbox.js.flow +1 -4
  104. package/checkbox/styled-components.js +11 -5
  105. package/checkbox/types.d.ts +15 -17
  106. package/checkbox/types.js.flow +2 -2
  107. package/combobox/combobox.js +20 -20
  108. package/combobox/combobox.js.flow +8 -3
  109. package/combobox/index.d.ts +1 -1
  110. package/combobox/styled-components.js +3 -1
  111. package/combobox/types.d.ts +5 -3
  112. package/combobox/types.js.flow +2 -0
  113. package/data-table/column-anchor.d.ts +5 -5
  114. package/data-table/column-anchor.js +3 -1
  115. package/data-table/column-boolean.d.ts +3 -3
  116. package/data-table/column-boolean.js +4 -2
  117. package/data-table/column-categorical.d.ts +4 -4
  118. package/data-table/column-categorical.js +8 -3
  119. package/data-table/column-custom.d.ts +1 -1
  120. package/data-table/column-datetime.d.ts +4 -4
  121. package/data-table/column-datetime.js +22 -6
  122. package/data-table/column-numerical.d.ts +4 -4
  123. package/data-table/column-numerical.js +12 -6
  124. package/data-table/column-row-index.d.ts +3 -3
  125. package/data-table/column-row-index.js +2 -1
  126. package/data-table/column-string.d.ts +3 -3
  127. package/data-table/column-string.js +3 -1
  128. package/data-table/column.js +2 -0
  129. package/data-table/data-table.js +41 -22
  130. package/data-table/data-table.js.flow +2 -2
  131. package/data-table/filter-menu.d.ts +1 -1
  132. package/data-table/filter-menu.js +18 -6
  133. package/data-table/filter-shell.d.ts +2 -2
  134. package/data-table/header-cell.d.ts +1 -1
  135. package/data-table/header-cell.js +2 -0
  136. package/data-table/index.d.ts +5 -5
  137. package/data-table/locale.d.ts +5 -1
  138. package/data-table/locale.js +3 -1
  139. package/data-table/locale.js.flow +4 -1
  140. package/data-table/measure-column-widths.d.ts +1 -1
  141. package/data-table/measure-column-widths.js +23 -22
  142. package/data-table/measure-column-widths.js.flow +1 -2
  143. package/data-table/stateful-container.js +52 -37
  144. package/data-table/stateful-data-table.js +18 -10
  145. package/data-table/text-search.js +1 -0
  146. package/data-table/types.d.ts +17 -14
  147. package/data-table/types.js.flow +2 -0
  148. package/datepicker/calendar-header.js +63 -20
  149. package/datepicker/calendar-header.js.flow +9 -7
  150. package/datepicker/calendar.d.ts +1 -0
  151. package/datepicker/calendar.js +94 -20
  152. package/datepicker/calendar.js.flow +56 -1
  153. package/datepicker/datepicker.d.ts +2 -1
  154. package/datepicker/datepicker.js +34 -12
  155. package/datepicker/day.js +10 -3
  156. package/datepicker/index.d.ts +1 -1
  157. package/datepicker/index.js.flow +1 -0
  158. package/datepicker/locale.d.ts +1 -1
  159. package/datepicker/locale.js +1 -1
  160. package/datepicker/month.js +14 -1
  161. package/datepicker/stateful-calendar.d.ts +1 -1
  162. package/datepicker/stateful-container.d.ts +2 -2
  163. package/datepicker/stateful-container.js +3 -2
  164. package/datepicker/stateful-datepicker.d.ts +1 -1
  165. package/datepicker/styled-components.d.ts +6 -2
  166. package/datepicker/styled-components.js +84 -49
  167. package/datepicker/types.d.ts +35 -22
  168. package/datepicker/types.js.flow +13 -0
  169. package/datepicker/utils/calendar-header-helpers.d.ts +2 -2
  170. package/datepicker/utils/date-helpers.js +3 -2
  171. package/datepicker/utils/day-state.js +6 -2
  172. package/datepicker/utils/index.d.ts +1 -1
  173. package/datepicker/utils/types.d.ts +7 -7
  174. package/datepicker/week.js +7 -3
  175. package/divider/types.d.ts +1 -1
  176. package/dnd-list/index.d.ts +1 -1
  177. package/dnd-list/list.js +2 -0
  178. package/dnd-list/stateful-list-container.js +4 -2
  179. package/dnd-list/styled-components.js +4 -2
  180. package/dnd-list/types.d.ts +8 -8
  181. package/drawer/drawer.d.ts +3 -3
  182. package/drawer/locale.d.ts +1 -1
  183. package/drawer/styled-components.js +14 -11
  184. package/drawer/types.d.ts +11 -11
  185. package/es/a11y/a11y.js +6 -2
  186. package/es/accordion/accordion.js +1 -0
  187. package/es/accordion/panel.js +2 -1
  188. package/es/accordion/stateless-accordion.js +3 -1
  189. package/es/app-nav-bar/app-nav-bar.js +8 -4
  190. package/es/app-nav-bar/mobile-menu.js +6 -3
  191. package/es/app-nav-bar/styled-components.js +5 -35
  192. package/es/app-nav-bar/user-menu.js +3 -2
  193. package/es/aspect-ratio-box/aspect-ratio-box-body.js +4 -1
  194. package/es/aspect-ratio-box/aspect-ratio-box.js +1 -0
  195. package/es/avatar/avatar.js +3 -1
  196. package/es/avatar/styled-components.js +3 -1
  197. package/es/badge/styled-components.js +8 -6
  198. package/es/banner/banner.js +26 -10
  199. package/es/banner/styled-components.js +1 -1
  200. package/es/block/styled-components.js +21 -4
  201. package/es/bottom-navigation/bottom-navigation.js +109 -0
  202. package/es/bottom-navigation/index.js +10 -0
  203. package/es/bottom-navigation/nav-item.js +12 -0
  204. package/es/bottom-navigation/panel.js +25 -0
  205. package/es/bottom-navigation/selector.js +34 -0
  206. package/es/bottom-navigation/styled-components.js +89 -0
  207. package/es/bottom-navigation/types.js +1 -0
  208. package/es/breadcrumbs/breadcrumbs.js +6 -2
  209. package/es/button/button-internals.js +13 -0
  210. package/es/button/button.js +7 -13
  211. package/es/button/styled-components.js +17 -6
  212. package/es/button-dock/button-dock.js +29 -0
  213. package/es/button-dock/index.js +9 -0
  214. package/es/button-dock/styled-components.js +49 -0
  215. package/es/button-dock/types.js +1 -0
  216. package/es/button-docked/button-docked.js +29 -0
  217. package/es/button-docked/index.js +9 -0
  218. package/es/button-docked/styled-components.js +48 -0
  219. package/es/button-docked/types.js +1 -0
  220. package/es/button-group/button-group.js +5 -0
  221. package/es/button-group/stateful-container.js +3 -0
  222. package/es/button-timed/button-timed.js +83 -0
  223. package/es/button-timed/index.js +11 -0
  224. package/es/button-timed/styled-components.js +49 -0
  225. package/es/button-timed/types.js +1 -0
  226. package/es/button-timed/utils.js +21 -0
  227. package/es/card/card.js +3 -2
  228. package/es/checkbox/checkbox.js +37 -16
  229. package/es/checkbox/styled-components.js +11 -5
  230. package/es/combobox/combobox.js +19 -20
  231. package/es/combobox/styled-components.js +3 -1
  232. package/es/data-table/column-anchor.js +3 -1
  233. package/es/data-table/column-boolean.js +4 -2
  234. package/es/data-table/column-categorical.js +7 -3
  235. package/es/data-table/column-datetime.js +22 -6
  236. package/es/data-table/column-numerical.js +14 -7
  237. package/es/data-table/column-row-index.js +2 -1
  238. package/es/data-table/column-string.js +3 -1
  239. package/es/data-table/column.js +2 -0
  240. package/es/data-table/data-table.js +38 -19
  241. package/es/data-table/filter-menu.js +16 -6
  242. package/es/data-table/header-cell.js +2 -0
  243. package/es/data-table/locale.js +3 -1
  244. package/es/data-table/measure-column-widths.js +23 -22
  245. package/es/data-table/stateful-container.js +42 -22
  246. package/es/data-table/stateful-data-table.js +16 -8
  247. package/es/data-table/text-search.js +1 -0
  248. package/es/datepicker/calendar-header.js +63 -20
  249. package/es/datepicker/calendar.js +68 -12
  250. package/es/datepicker/datepicker.js +32 -12
  251. package/es/datepicker/day.js +10 -3
  252. package/es/datepicker/locale.js +1 -1
  253. package/es/datepicker/month.js +14 -1
  254. package/es/datepicker/stateful-container.js +3 -2
  255. package/es/datepicker/styled-components.js +85 -54
  256. package/es/datepicker/utils/date-helpers.js +3 -2
  257. package/es/datepicker/utils/day-state.js +6 -2
  258. package/es/datepicker/week.js +7 -3
  259. package/es/dnd-list/list.js +2 -0
  260. package/es/dnd-list/stateful-list-container.js +5 -2
  261. package/es/dnd-list/styled-components.js +4 -2
  262. package/es/drawer/styled-components.js +14 -11
  263. package/es/file-uploader/file-uploader.js +92 -82
  264. package/es/file-uploader/styled-components.js +5 -3
  265. package/es/flex-grid/flex-grid-item.js +7 -2
  266. package/es/flex-grid/flex-grid.js +2 -1
  267. package/es/form-control/form-control.js +10 -2
  268. package/es/helper/stateful-helper.js +1 -0
  269. package/es/helper/styled-components.js +9 -5
  270. package/es/helpers/overrides.js +1 -0
  271. package/es/helpers/react-helpers.js +1 -1
  272. package/es/helpers/responsive-helpers.js +25 -1
  273. package/es/icon/alert.js +1 -0
  274. package/es/icon/arrow-down.js +1 -0
  275. package/es/icon/arrow-left.js +1 -0
  276. package/es/icon/arrow-right.js +1 -0
  277. package/es/icon/arrow-up.js +1 -0
  278. package/es/icon/blank.js +1 -0
  279. package/es/icon/calendar.js +44 -0
  280. package/es/icon/check-indeterminate.js +1 -0
  281. package/es/icon/check.js +1 -0
  282. package/es/icon/chevron-down.js +1 -0
  283. package/es/icon/chevron-left.js +1 -0
  284. package/es/icon/chevron-right.js +1 -0
  285. package/es/icon/chevron-up.js +1 -0
  286. package/es/icon/delete-alt.js +1 -0
  287. package/es/icon/delete.js +1 -0
  288. package/es/icon/filter.js +1 -0
  289. package/es/icon/grab.js +1 -0
  290. package/es/icon/hide.js +1 -0
  291. package/es/icon/icon-exports.js +1 -0
  292. package/es/icon/icon.js +1 -0
  293. package/es/icon/menu.js +1 -0
  294. package/es/icon/omit-dollar-prefixed-keys.js +1 -0
  295. package/es/icon/overflow.js +1 -0
  296. package/es/icon/plus.js +1 -0
  297. package/es/icon/search.js +1 -0
  298. package/es/icon/show.js +1 -0
  299. package/es/icon/spinner.js +1 -0
  300. package/es/icon/styled-components.js +4 -0
  301. package/es/icon/triangle-down.js +1 -0
  302. package/es/icon/triangle-left.js +1 -0
  303. package/es/icon/triangle-right.js +1 -0
  304. package/es/icon/triangle-up.js +1 -0
  305. package/es/icon/upload.js +1 -0
  306. package/es/input/base-input.js +34 -11
  307. package/es/input/input.js +13 -4
  308. package/es/input/masked-input.js +2 -1
  309. package/es/input/stateful-container.js +4 -1
  310. package/es/input/styled-components.js +31 -7
  311. package/es/input/utils.js +2 -0
  312. package/es/layer/layer.js +5 -1
  313. package/es/layer/tether.js +4 -1
  314. package/es/layout-grid/grid.js +1 -0
  315. package/es/layout-grid/index.js +2 -1
  316. package/es/layout-grid/styled-components.js +6 -3
  317. package/es/link/index.js +1 -0
  318. package/es/list/list-heading.js +21 -22
  319. package/es/list/list-item.js +5 -1
  320. package/es/list/styled-components.js +16 -3
  321. package/es/locale/es_AR.js +3 -1
  322. package/es/locale/index.js +10 -4
  323. package/es/locale/tr_TR.js +3 -1
  324. package/es/map-marker/calculate-offsets.js +20 -0
  325. package/es/map-marker/constants.js +116 -1
  326. package/es/map-marker/fixed-marker.js +2 -0
  327. package/es/map-marker/floating-marker.js +3 -1
  328. package/es/map-marker/floating-route-marker.js +72 -0
  329. package/es/map-marker/index.js +3 -1
  330. package/es/map-marker/location-puck.js +10 -5
  331. package/es/map-marker/pin-head.js +19 -10
  332. package/es/map-marker/styled-components.js +81 -6
  333. package/es/menu/menu.js +12 -4
  334. package/es/menu/nested-menus.js +9 -1
  335. package/es/menu/option-list.js +7 -4
  336. package/es/menu/option-profile.js +3 -3
  337. package/es/menu/stateful-container.js +8 -3
  338. package/es/menu/styled-components.js +5 -3
  339. package/es/message-card/message-card.js +26 -25
  340. package/es/message-card/styled-components.js +6 -1
  341. package/es/mobile-header/constants.js +9 -0
  342. package/es/mobile-header/index.js +9 -0
  343. package/es/mobile-header/mobile-header.js +110 -0
  344. package/es/mobile-header/styled-components.js +69 -0
  345. package/es/mobile-header/types.js +1 -0
  346. package/es/modal/modal-button.js +1 -0
  347. package/es/modal/modal.js +25 -19
  348. package/es/modal/styled-components.js +9 -2
  349. package/es/page-control/constants.js +17 -0
  350. package/es/page-control/index.js +9 -0
  351. package/es/page-control/page-control.js +114 -0
  352. package/es/page-control/styled-components.js +99 -0
  353. package/es/page-control/types.js +1 -0
  354. package/es/pagination/pagination.js +62 -56
  355. package/es/payment-card/payment-card.js +6 -2
  356. package/es/phone-input/base-country-picker.js +5 -2
  357. package/es/phone-input/country-picker.js +7 -0
  358. package/es/phone-input/country-select.js +1 -0
  359. package/es/phone-input/default-props.js +4 -0
  360. package/es/phone-input/flag.js +2 -1
  361. package/es/phone-input/phone-input-lite.js +2 -0
  362. package/es/phone-input/phone-input-next.js +2 -0
  363. package/es/phone-input/stateful-phone-input-container.js +1 -0
  364. package/es/pin-code/default-props.js +4 -0
  365. package/es/pin-code/pin-code.js +4 -2
  366. package/es/popover/popover.js +23 -6
  367. package/es/popover/stateful-popover.js +1 -0
  368. package/es/popover/utils.js +4 -1
  369. package/es/progress-bar/progressbar-rounded.js +27 -28
  370. package/es/progress-bar/progressbar.js +9 -3
  371. package/es/progress-bar/styled-components.js +4 -0
  372. package/es/progress-steps/progress-steps.js +1 -0
  373. package/es/radio/radio.js +5 -2
  374. package/es/radio/radiogroup.js +1 -0
  375. package/es/radio/styled-components.js +11 -5
  376. package/es/rating/emoticon-rating.js +16 -7
  377. package/es/rating/star-rating.js +16 -7
  378. package/es/rating/styled-components.js +2 -0
  379. package/es/select/default-props.js +10 -0
  380. package/es/select/dropdown.js +3 -1
  381. package/es/select/multi-value.js +1 -0
  382. package/es/select/select-component.js +60 -21
  383. package/es/select/stateful-select-container.js +1 -0
  384. package/es/select/styled-components.js +18 -7
  385. package/es/select/utils/default-filter-options.js +3 -1
  386. package/es/select/utils/index.js +3 -1
  387. package/es/sheet/action-button.js +44 -0
  388. package/es/sheet/index.js +9 -0
  389. package/es/sheet/sheet.js +100 -0
  390. package/es/sheet/styled-components.js +197 -0
  391. package/es/sheet/types.js +1 -0
  392. package/es/side-navigation/index.js +2 -1
  393. package/es/side-navigation/nav-item.js +2 -1
  394. package/es/side-navigation/nav.js +10 -3
  395. package/es/side-navigation/side-navigation-next.js +271 -0
  396. package/es/side-navigation/styled-components.js +4 -2
  397. package/es/skeleton/skeleton.js +2 -0
  398. package/es/skeleton/styled-components.js +1 -0
  399. package/es/slider/slider.js +2 -1
  400. package/es/snackbar/snackbar-context.js +29 -11
  401. package/es/snackbar/snackbar-element.js +4 -1
  402. package/es/snackbar/styled-components.js +1 -1
  403. package/es/spinner/styled-components.js +2 -0
  404. package/es/stepper/index.js +8 -0
  405. package/es/stepper/stepper.js +89 -0
  406. package/es/stepper/styled-components.js +19 -0
  407. package/es/stepper/types.js +1 -0
  408. package/es/styles/__mocks__/styled.js +6 -2
  409. package/es/styles/as-primary-export-hoc.js +2 -0
  410. package/es/styles/styled.js +2 -1
  411. package/es/system-banner/index.js +8 -0
  412. package/es/system-banner/styled-components.js +71 -0
  413. package/es/system-banner/system-banner.js +81 -0
  414. package/es/system-banner/types.js +1 -0
  415. package/es/table/styled-components.js +1 -0
  416. package/es/table/table.js +2 -0
  417. package/es/table-semantic/styled-components.js +8 -8
  418. package/es/table-semantic/table-builder.js +25 -22
  419. package/es/table-semantic/table.js +2 -0
  420. package/es/tabs/stateful-tabs.js +2 -2
  421. package/es/tabs-motion/stateful-tabs.js +1 -0
  422. package/es/tabs-motion/tab.js +1 -0
  423. package/es/tabs-motion/tabs.js +29 -6
  424. package/es/tag/styled-components.js +72 -2
  425. package/es/tag/tag.js +2 -0
  426. package/es/textarea/stateful-textarea.js +5 -1
  427. package/es/textarea/textarea.js +4 -2
  428. package/es/themes/dark-theme/color-component-tokens.js +2 -2
  429. package/es/themes/dark-theme/color-semantic-tokens.js +12 -4
  430. package/es/themes/light-theme/color-semantic-tokens.js +12 -4
  431. package/es/timepicker/timepicker.js +10 -4
  432. package/es/timezonepicker/timezone-picker.js +3 -1
  433. package/es/toast/toast.js +13 -5
  434. package/es/toast/toaster.js +24 -3
  435. package/es/tree-view/tree-label-interactable.js +4 -2
  436. package/es/tree-view/tree-view.js +5 -2
  437. package/es/tree-view/utils.js +43 -15
  438. package/es/utils/deep-merge.js +5 -0
  439. package/es/utils/focusVisible.js +17 -7
  440. package/esm/a11y/a11y.js +6 -2
  441. package/esm/accordion/accordion.js +1 -0
  442. package/esm/accordion/panel.js +2 -1
  443. package/esm/accordion/stateless-accordion.js +3 -1
  444. package/esm/app-nav-bar/app-nav-bar.js +9 -4
  445. package/esm/app-nav-bar/mobile-menu.js +4 -2
  446. package/esm/app-nav-bar/styled-components.js +3 -36
  447. package/esm/app-nav-bar/user-menu.js +3 -2
  448. package/esm/aspect-ratio-box/aspect-ratio-box-body.js +11 -7
  449. package/esm/aspect-ratio-box/aspect-ratio-box.js +1 -0
  450. package/esm/avatar/avatar.js +3 -1
  451. package/esm/avatar/styled-components.js +3 -1
  452. package/esm/badge/styled-components.js +8 -6
  453. package/esm/banner/banner.js +26 -10
  454. package/esm/banner/styled-components.js +1 -1
  455. package/esm/block/styled-components.js +21 -4
  456. package/esm/bottom-navigation/bottom-navigation.js +154 -0
  457. package/esm/bottom-navigation/index.js +10 -0
  458. package/esm/bottom-navigation/nav-item.js +12 -0
  459. package/esm/bottom-navigation/panel.js +42 -0
  460. package/esm/bottom-navigation/selector.js +58 -0
  461. package/esm/bottom-navigation/styled-components.js +96 -0
  462. package/esm/bottom-navigation/types.js +1 -0
  463. package/esm/breadcrumbs/breadcrumbs.js +6 -2
  464. package/esm/button/button-internals.js +13 -0
  465. package/esm/button/button.js +3 -8
  466. package/esm/button/styled-components.js +11 -6
  467. package/esm/button-dock/button-dock.js +53 -0
  468. package/esm/button-dock/index.js +9 -0
  469. package/esm/button-dock/styled-components.js +52 -0
  470. package/esm/button-dock/types.js +1 -0
  471. package/esm/button-docked/button-docked.js +53 -0
  472. package/esm/button-docked/index.js +9 -0
  473. package/esm/button-docked/styled-components.js +51 -0
  474. package/esm/button-docked/types.js +1 -0
  475. package/esm/button-group/button-group.js +5 -0
  476. package/esm/button-group/stateful-container.js +3 -0
  477. package/esm/button-timed/button-timed.js +113 -0
  478. package/esm/button-timed/index.js +11 -0
  479. package/esm/button-timed/styled-components.js +53 -0
  480. package/esm/button-timed/types.js +1 -0
  481. package/esm/button-timed/utils.js +21 -0
  482. package/esm/card/card.js +3 -2
  483. package/esm/checkbox/checkbox.js +36 -16
  484. package/esm/checkbox/styled-components.js +11 -5
  485. package/esm/combobox/combobox.js +20 -20
  486. package/esm/combobox/styled-components.js +3 -1
  487. package/esm/data-table/column-anchor.js +3 -1
  488. package/esm/data-table/column-boolean.js +4 -2
  489. package/esm/data-table/column-categorical.js +7 -3
  490. package/esm/data-table/column-datetime.js +22 -6
  491. package/esm/data-table/column-numerical.js +14 -7
  492. package/esm/data-table/column-row-index.js +2 -1
  493. package/esm/data-table/column-string.js +3 -1
  494. package/esm/data-table/column.js +2 -0
  495. package/esm/data-table/data-table.js +43 -23
  496. package/esm/data-table/filter-menu.js +16 -6
  497. package/esm/data-table/header-cell.js +2 -0
  498. package/esm/data-table/locale.js +3 -1
  499. package/esm/data-table/measure-column-widths.js +23 -22
  500. package/esm/data-table/stateful-container.js +52 -37
  501. package/esm/data-table/stateful-data-table.js +18 -10
  502. package/esm/data-table/text-search.js +1 -0
  503. package/esm/datepicker/calendar-header.js +63 -20
  504. package/esm/datepicker/calendar.js +92 -20
  505. package/esm/datepicker/datepicker.js +34 -12
  506. package/esm/datepicker/day.js +10 -3
  507. package/esm/datepicker/locale.js +1 -1
  508. package/esm/datepicker/month.js +14 -1
  509. package/esm/datepicker/stateful-container.js +3 -2
  510. package/esm/datepicker/styled-components.js +84 -49
  511. package/esm/datepicker/utils/date-helpers.js +3 -2
  512. package/esm/datepicker/utils/day-state.js +6 -2
  513. package/esm/datepicker/week.js +7 -3
  514. package/esm/dnd-list/list.js +2 -0
  515. package/esm/dnd-list/stateful-list-container.js +4 -2
  516. package/esm/dnd-list/styled-components.js +4 -2
  517. package/esm/drawer/styled-components.js +14 -11
  518. package/esm/file-uploader/file-uploader.js +97 -87
  519. package/esm/file-uploader/styled-components.js +5 -3
  520. package/esm/flex-grid/flex-grid-item.js +7 -2
  521. package/esm/flex-grid/flex-grid.js +2 -1
  522. package/esm/form-control/form-control.js +5 -2
  523. package/esm/helper/stateful-helper.js +1 -0
  524. package/esm/helper/styled-components.js +9 -5
  525. package/esm/helpers/overrides.js +1 -0
  526. package/esm/helpers/react-helpers.js +1 -1
  527. package/esm/helpers/responsive-helpers.js +54 -1
  528. package/esm/icon/alert.js +1 -0
  529. package/esm/icon/arrow-down.js +1 -0
  530. package/esm/icon/arrow-left.js +1 -0
  531. package/esm/icon/arrow-right.js +1 -0
  532. package/esm/icon/arrow-up.js +1 -0
  533. package/esm/icon/blank.js +1 -0
  534. package/esm/icon/calendar.js +66 -0
  535. package/esm/icon/check-indeterminate.js +1 -0
  536. package/esm/icon/check.js +1 -0
  537. package/esm/icon/chevron-down.js +1 -0
  538. package/esm/icon/chevron-left.js +1 -0
  539. package/esm/icon/chevron-right.js +1 -0
  540. package/esm/icon/chevron-up.js +1 -0
  541. package/esm/icon/delete-alt.js +1 -0
  542. package/esm/icon/delete.js +1 -0
  543. package/esm/icon/filter.js +1 -0
  544. package/esm/icon/grab.js +1 -0
  545. package/esm/icon/hide.js +1 -0
  546. package/esm/icon/icon-exports.js +1 -0
  547. package/esm/icon/icon.js +1 -0
  548. package/esm/icon/menu.js +1 -0
  549. package/esm/icon/omit-dollar-prefixed-keys.js +1 -0
  550. package/esm/icon/overflow.js +1 -0
  551. package/esm/icon/plus.js +1 -0
  552. package/esm/icon/search.js +1 -0
  553. package/esm/icon/show.js +1 -0
  554. package/esm/icon/spinner.js +1 -0
  555. package/esm/icon/styled-components.js +4 -0
  556. package/esm/icon/triangle-down.js +1 -0
  557. package/esm/icon/triangle-left.js +1 -0
  558. package/esm/icon/triangle-right.js +1 -0
  559. package/esm/icon/triangle-up.js +1 -0
  560. package/esm/icon/upload.js +1 -0
  561. package/esm/input/base-input.js +31 -15
  562. package/esm/input/input.js +10 -4
  563. package/esm/input/masked-input.js +2 -1
  564. package/esm/input/stateful-container.js +4 -1
  565. package/esm/input/styled-components.js +32 -8
  566. package/esm/input/utils.js +2 -0
  567. package/esm/layer/layer.js +6 -2
  568. package/esm/layer/tether.js +4 -1
  569. package/esm/layout-grid/grid.js +1 -0
  570. package/esm/layout-grid/index.js +2 -1
  571. package/esm/layout-grid/styled-components.js +6 -3
  572. package/esm/link/index.js +1 -0
  573. package/esm/list/list-heading.js +21 -22
  574. package/esm/list/list-item.js +5 -1
  575. package/esm/list/styled-components.js +17 -4
  576. package/esm/locale/es_AR.js +3 -1
  577. package/esm/locale/index.js +10 -4
  578. package/esm/locale/tr_TR.js +3 -1
  579. package/esm/map-marker/calculate-offsets.js +32 -0
  580. package/esm/map-marker/constants.js +84 -3
  581. package/esm/map-marker/floating-marker.js +3 -1
  582. package/esm/map-marker/floating-route-marker.js +118 -0
  583. package/esm/map-marker/index.js +3 -1
  584. package/esm/map-marker/location-puck.js +9 -5
  585. package/esm/map-marker/pin-head.js +46 -24
  586. package/esm/map-marker/styled-components.js +84 -15
  587. package/esm/menu/menu.js +12 -4
  588. package/esm/menu/nested-menus.js +9 -1
  589. package/esm/menu/option-list.js +8 -4
  590. package/esm/menu/option-profile.js +3 -3
  591. package/esm/menu/stateful-container.js +8 -3
  592. package/esm/menu/styled-components.js +5 -3
  593. package/esm/message-card/message-card.js +31 -30
  594. package/esm/message-card/styled-components.js +6 -1
  595. package/esm/mobile-header/constants.js +9 -0
  596. package/esm/mobile-header/index.js +9 -0
  597. package/esm/mobile-header/mobile-header.js +157 -0
  598. package/esm/mobile-header/styled-components.js +80 -0
  599. package/esm/mobile-header/types.js +1 -0
  600. package/esm/modal/modal-button.js +1 -0
  601. package/esm/modal/modal.js +25 -19
  602. package/esm/modal/styled-components.js +9 -2
  603. package/esm/page-control/constants.js +17 -0
  604. package/esm/page-control/index.js +9 -0
  605. package/esm/page-control/page-control.js +139 -0
  606. package/esm/page-control/styled-components.js +95 -0
  607. package/esm/page-control/types.js +1 -0
  608. package/esm/pagination/pagination.js +65 -59
  609. package/esm/payment-card/payment-card.js +6 -2
  610. package/esm/phone-input/base-country-picker.js +5 -2
  611. package/esm/phone-input/country-picker.js +4 -0
  612. package/esm/phone-input/country-select.js +1 -0
  613. package/esm/phone-input/default-props.js +4 -0
  614. package/esm/phone-input/flag.js +2 -1
  615. package/esm/phone-input/phone-input-lite.js +2 -0
  616. package/esm/phone-input/phone-input-next.js +2 -0
  617. package/esm/phone-input/stateful-phone-input-container.js +1 -0
  618. package/esm/pin-code/default-props.js +4 -0
  619. package/esm/pin-code/pin-code.js +4 -2
  620. package/esm/popover/popover.js +23 -6
  621. package/esm/popover/stateful-popover.js +1 -0
  622. package/esm/popover/utils.js +3 -1
  623. package/esm/progress-bar/progressbar-rounded.js +27 -28
  624. package/esm/progress-bar/progressbar.js +9 -3
  625. package/esm/progress-bar/styled-components.js +2 -0
  626. package/esm/progress-steps/progress-steps.js +1 -0
  627. package/esm/radio/radio.js +5 -2
  628. package/esm/radio/radiogroup.js +1 -0
  629. package/esm/radio/styled-components.js +11 -5
  630. package/esm/rating/emoticon-rating.js +16 -7
  631. package/esm/rating/star-rating.js +16 -7
  632. package/esm/rating/styled-components.js +2 -0
  633. package/esm/select/default-props.js +10 -0
  634. package/esm/select/dropdown.js +3 -1
  635. package/esm/select/multi-value.js +1 -0
  636. package/esm/select/select-component.js +59 -22
  637. package/esm/select/stateful-select-container.js +1 -0
  638. package/esm/select/styled-components.js +18 -7
  639. package/esm/select/utils/default-filter-options.js +3 -1
  640. package/esm/select/utils/index.js +3 -1
  641. package/esm/sheet/action-button.js +54 -0
  642. package/esm/sheet/index.js +9 -0
  643. package/esm/sheet/sheet.js +166 -0
  644. package/esm/sheet/styled-components.js +201 -0
  645. package/esm/sheet/types.js +1 -0
  646. package/esm/side-navigation/index.js +2 -1
  647. package/esm/side-navigation/nav-item.js +2 -1
  648. package/esm/side-navigation/nav.js +11 -4
  649. package/esm/side-navigation/side-navigation-next.js +359 -0
  650. package/esm/side-navigation/styled-components.js +4 -2
  651. package/esm/skeleton/skeleton.js +2 -0
  652. package/esm/skeleton/styled-components.js +1 -0
  653. package/esm/slider/slider.js +3 -1
  654. package/esm/snackbar/snackbar-context.js +27 -11
  655. package/esm/snackbar/snackbar-element.js +4 -1
  656. package/esm/snackbar/styled-components.js +1 -1
  657. package/esm/spinner/styled-components.js +2 -0
  658. package/esm/stepper/index.js +8 -0
  659. package/esm/stepper/stepper.js +145 -0
  660. package/esm/stepper/styled-components.js +20 -0
  661. package/esm/stepper/types.js +1 -0
  662. package/esm/styles/__mocks__/styled.js +9 -4
  663. package/esm/styles/as-primary-export-hoc.js +2 -0
  664. package/esm/styles/styled.js +2 -1
  665. package/esm/system-banner/index.js +8 -0
  666. package/esm/system-banner/styled-components.js +82 -0
  667. package/esm/system-banner/system-banner.js +93 -0
  668. package/esm/system-banner/types.js +1 -0
  669. package/esm/table/styled-components.js +1 -0
  670. package/esm/table/table.js +2 -0
  671. package/esm/table-semantic/styled-components.js +8 -8
  672. package/esm/table-semantic/table-builder.js +25 -22
  673. package/esm/table-semantic/table.js +2 -0
  674. package/esm/tabs/stateful-tabs.js +2 -2
  675. package/esm/tabs-motion/stateful-tabs.js +1 -0
  676. package/esm/tabs-motion/tab.js +1 -0
  677. package/esm/tabs-motion/tabs.js +26 -18
  678. package/esm/tag/styled-components.js +41 -2
  679. package/esm/tag/tag.js +2 -0
  680. package/esm/textarea/stateful-textarea.js +7 -3
  681. package/esm/textarea/textarea.js +4 -2
  682. package/esm/themes/dark-theme/color-component-tokens.js +2 -2
  683. package/esm/themes/dark-theme/color-semantic-tokens.js +12 -4
  684. package/esm/themes/light-theme/color-semantic-tokens.js +12 -4
  685. package/esm/timepicker/timepicker.js +11 -4
  686. package/esm/timezonepicker/timezone-picker.js +3 -1
  687. package/esm/toast/toast.js +10 -5
  688. package/esm/toast/toaster.js +21 -3
  689. package/esm/tree-view/tree-label-interactable.js +4 -2
  690. package/esm/tree-view/tree-view.js +5 -2
  691. package/esm/tree-view/utils.js +43 -15
  692. package/esm/utils/deep-merge.js +5 -0
  693. package/esm/utils/focusVisible.js +17 -7
  694. package/file-uploader/file-uploader.js +97 -87
  695. package/file-uploader/locale.d.ts +1 -1
  696. package/file-uploader/styled-components.js +5 -3
  697. package/file-uploader/styled-components.js.flow +1 -1
  698. package/file-uploader/types.d.ts +7 -30
  699. package/flex-grid/flex-grid-item.js +7 -2
  700. package/flex-grid/flex-grid.js +2 -1
  701. package/flex-grid/types.d.ts +2 -2
  702. package/form-control/form-control.js +5 -2
  703. package/form-control/types.d.ts +4 -4
  704. package/header-navigation/types.d.ts +4 -3
  705. package/header-navigation/types.js.flow +2 -0
  706. package/heading/types.d.ts +2 -2
  707. package/helper/index.d.ts +1 -1
  708. package/helper/stateful-helper.js +1 -0
  709. package/helper/styled-components.js +9 -5
  710. package/helper/types.d.ts +1 -1
  711. package/helpers/overrides.d.ts +7 -7
  712. package/helpers/overrides.js +1 -0
  713. package/helpers/react-helpers.d.ts +1 -1
  714. package/helpers/react-helpers.js +1 -1
  715. package/helpers/responsive-helpers.d.ts +5 -1
  716. package/helpers/responsive-helpers.js +62 -3
  717. package/helpers/responsive-helpers.js.flow +27 -1
  718. package/helpers/types.d.ts +9 -2
  719. package/helpers/types.js.flow +11 -0
  720. package/icon/alert.js +1 -0
  721. package/icon/arrow-down.js +1 -0
  722. package/icon/arrow-left.js +1 -0
  723. package/icon/arrow-right.js +1 -0
  724. package/icon/arrow-up.js +1 -0
  725. package/icon/blank.js +1 -0
  726. package/icon/calendar.d.ts +9 -0
  727. package/icon/calendar.js +78 -0
  728. package/icon/calendar.js.flow +47 -0
  729. package/icon/check-indeterminate.js +1 -0
  730. package/icon/check.js +1 -0
  731. package/icon/chevron-down.js +1 -0
  732. package/icon/chevron-left.js +1 -0
  733. package/icon/chevron-right.js +1 -0
  734. package/icon/chevron-up.js +1 -0
  735. package/icon/delete-alt.js +1 -0
  736. package/icon/delete.js +1 -0
  737. package/icon/filter.js +1 -0
  738. package/icon/grab.js +1 -0
  739. package/icon/hide.js +1 -0
  740. package/icon/icon-exports.d.ts +1 -0
  741. package/icon/icon-exports.js +8 -0
  742. package/icon/icon-exports.js.flow +1 -0
  743. package/icon/icon.js +1 -0
  744. package/icon/index.d.ts +1 -1
  745. package/icon/menu.js +1 -0
  746. package/icon/omit-dollar-prefixed-keys.js +1 -0
  747. package/icon/overflow.js +1 -0
  748. package/icon/plus.js +1 -0
  749. package/icon/search.js +1 -0
  750. package/icon/show.js +1 -0
  751. package/icon/spinner.js +1 -0
  752. package/icon/styled-components.js +4 -0
  753. package/icon/triangle-down.js +1 -0
  754. package/icon/triangle-left.js +1 -0
  755. package/icon/triangle-right.js +1 -0
  756. package/icon/triangle-up.js +1 -0
  757. package/icon/types.d.ts +5 -5
  758. package/icon/upload.js +1 -0
  759. package/index.d.ts +3 -3
  760. package/input/base-input.js +31 -15
  761. package/input/input.js +10 -4
  762. package/input/stateful-container.js +4 -1
  763. package/input/styled-components.js +32 -8
  764. package/input/types.d.ts +17 -17
  765. package/input/utils.js +2 -0
  766. package/layer/layer.js +6 -2
  767. package/layer/layers-manager.d.ts +8 -8
  768. package/layer/tether.d.ts +1 -1
  769. package/layer/tether.js +4 -1
  770. package/layer/tether.js.flow +1 -1
  771. package/layer/types.d.ts +22 -22
  772. package/layout-grid/grid.js +1 -0
  773. package/layout-grid/index.d.ts +1 -1
  774. package/layout-grid/index.js +2 -1
  775. package/layout-grid/index.js.flow +1 -0
  776. package/layout-grid/styled-components.js +6 -3
  777. package/layout-grid/types.d.ts +14 -14
  778. package/layout-grid/types.js.flow +7 -5
  779. package/link/index.d.ts +1 -1
  780. package/link/index.js +1 -0
  781. package/list/index.d.ts +11 -11
  782. package/list/list-heading.js +21 -22
  783. package/list/list-item.js +5 -1
  784. package/list/list-item.js.flow +5 -0
  785. package/list/styled-components.js +17 -4
  786. package/list/styled-components.js.flow +30 -14
  787. package/list/types.d.ts +15 -13
  788. package/list/types.js.flow +2 -0
  789. package/locale/es_AR.js +3 -1
  790. package/locale/index.d.ts +17 -14
  791. package/locale/index.js +9 -3
  792. package/locale/tr_TR.js +3 -1
  793. package/locale/types.d.ts +1 -1
  794. package/map-marker/calculate-offsets.d.ts +2 -0
  795. package/map-marker/calculate-offsets.js +36 -0
  796. package/map-marker/calculate-offsets.js.flow +47 -0
  797. package/map-marker/constants.d.ts +102 -0
  798. package/map-marker/constants.js +90 -4
  799. package/map-marker/constants.js.flow +67 -0
  800. package/map-marker/fixed-marker.js.flow +3 -127
  801. package/map-marker/floating-marker.d.ts +1 -1
  802. package/map-marker/floating-marker.js +3 -0
  803. package/map-marker/floating-marker.js.flow +1 -91
  804. package/map-marker/floating-route-marker.d.ts +4 -0
  805. package/map-marker/floating-route-marker.js +132 -0
  806. package/map-marker/floating-route-marker.js.flow +18 -0
  807. package/map-marker/index.d.ts +30 -24
  808. package/map-marker/index.js +26 -1
  809. package/map-marker/index.js.flow +4 -0
  810. package/map-marker/location-puck.js +9 -4
  811. package/map-marker/pin-head.d.ts +1 -1
  812. package/map-marker/pin-head.js +45 -23
  813. package/map-marker/pin-head.js.flow +1 -155
  814. package/map-marker/styled-components.d.ts +23 -2
  815. package/map-marker/styled-components.js +90 -16
  816. package/map-marker/styled-components.js.flow +45 -2
  817. package/map-marker/types.d.ts +62 -31
  818. package/map-marker/types.js.flow +37 -2
  819. package/menu/index.d.ts +8 -8
  820. package/menu/locale.d.ts +1 -1
  821. package/menu/maybe-child-menu.d.ts +3 -2
  822. package/menu/menu.js +12 -4
  823. package/menu/nested-menus.d.ts +2 -2
  824. package/menu/nested-menus.js +9 -1
  825. package/menu/option-list.js +8 -4
  826. package/menu/option-profile.js +3 -3
  827. package/menu/stateful-container.js +8 -3
  828. package/menu/styled-components.d.ts +1 -1
  829. package/menu/styled-components.js +5 -3
  830. package/menu/types.d.ts +31 -31
  831. package/message-card/message-card.js +30 -29
  832. package/message-card/styled-components.js +6 -1
  833. package/message-card/types.d.ts +1 -1
  834. package/mobile-header/constants.d.ts +4 -0
  835. package/mobile-header/constants.js +17 -0
  836. package/mobile-header/index.d.ts +4 -0
  837. package/mobile-header/index.js +60 -0
  838. package/mobile-header/index.js.flow +54 -0
  839. package/mobile-header/mobile-header.d.ts +4 -0
  840. package/mobile-header/mobile-header.js +173 -0
  841. package/mobile-header/package.json +4 -0
  842. package/mobile-header/styled-components.d.ts +12 -0
  843. package/mobile-header/styled-components.js +88 -0
  844. package/mobile-header/types.d.ts +26 -0
  845. package/mobile-header/types.js +5 -0
  846. package/modal/focus-once.d.ts +1 -1
  847. package/modal/locale.d.ts +1 -1
  848. package/modal/modal-button.d.ts +3 -3
  849. package/modal/modal-button.js +1 -0
  850. package/modal/modal.d.ts +4 -4
  851. package/modal/modal.js +24 -18
  852. package/modal/modal.js.flow +24 -18
  853. package/modal/styled-components.d.ts +1 -0
  854. package/modal/styled-components.js +11 -3
  855. package/modal/styled-components.js.flow +4 -0
  856. package/modal/types.d.ts +15 -10
  857. package/modal/types.js.flow +5 -0
  858. package/overrides.js.flow +16 -0
  859. package/package.json +11 -10
  860. package/page-control/constants.d.ts +12 -0
  861. package/page-control/constants.js +26 -0
  862. package/page-control/index.d.ts +4 -0
  863. package/page-control/index.js +55 -0
  864. package/page-control/index.js.flow +53 -0
  865. package/page-control/package.json +4 -0
  866. package/page-control/page-control.d.ts +4 -0
  867. package/page-control/page-control.js +151 -0
  868. package/page-control/styled-components.d.ts +11 -0
  869. package/page-control/styled-components.js +101 -0
  870. package/page-control/types.d.ts +19 -0
  871. package/page-control/types.js +5 -0
  872. package/pagination/index.d.ts +2 -2
  873. package/pagination/locale.d.ts +1 -1
  874. package/pagination/pagination.d.ts +1 -1
  875. package/pagination/pagination.js +62 -57
  876. package/pagination/types.d.ts +9 -9
  877. package/payment-card/payment-card.js +6 -2
  878. package/payment-card/types.d.ts +3 -3
  879. package/phone-input/base-country-picker.js +5 -2
  880. package/phone-input/country-picker.js +4 -0
  881. package/phone-input/country-select.js +1 -0
  882. package/phone-input/default-props.js +4 -0
  883. package/phone-input/flag.d.ts +2 -2
  884. package/phone-input/flag.js +2 -1
  885. package/phone-input/phone-input-lite.js +2 -0
  886. package/phone-input/phone-input-next.js +2 -0
  887. package/phone-input/stateful-phone-input-container.js +1 -0
  888. package/phone-input/styled-components.d.ts +2 -2
  889. package/phone-input/types.d.ts +15 -15
  890. package/pin-code/default-props.js +4 -0
  891. package/pin-code/index.d.ts +1 -1
  892. package/pin-code/pin-code.js +4 -2
  893. package/pin-code/types.d.ts +9 -9
  894. package/popover/popover.js +23 -6
  895. package/popover/popover.js.flow +3 -3
  896. package/popover/stateful-container.d.ts +1 -1
  897. package/popover/stateful-popover.js +1 -0
  898. package/popover/types.d.ts +27 -27
  899. package/popover/types.js.flow +5 -4
  900. package/popover/utils.js +3 -1
  901. package/progress-bar/progressbar-rounded.js +27 -28
  902. package/progress-bar/progressbar.js +9 -3
  903. package/progress-bar/styled-components.js +2 -0
  904. package/progress-bar/types.d.ts +6 -6
  905. package/progress-steps/progress-steps.js +1 -0
  906. package/progress-steps/types.d.ts +8 -8
  907. package/progress-steps/types.js.flow +1 -1
  908. package/radio/radio.js +5 -2
  909. package/radio/radiogroup.js +1 -0
  910. package/radio/styled-components.js +11 -5
  911. package/radio/types.d.ts +15 -15
  912. package/rating/emoticon-rating.js +16 -7
  913. package/rating/star-rating.js +16 -7
  914. package/rating/styled-components.js +2 -0
  915. package/rating/types.d.ts +6 -6
  916. package/select/default-props.js +10 -0
  917. package/select/dropdown.d.ts +2 -2
  918. package/select/dropdown.js +3 -1
  919. package/select/index.d.ts +2 -2
  920. package/select/locale.d.ts +1 -1
  921. package/select/multi-value.js +1 -0
  922. package/select/select-component.d.ts +2 -2
  923. package/select/select-component.js +59 -22
  924. package/select/stateful-select-container.js +1 -0
  925. package/select/styled-components.js +18 -6
  926. package/select/types.d.ts +22 -22
  927. package/select/utils/default-filter-options.d.ts +1 -1
  928. package/select/utils/default-filter-options.js +3 -1
  929. package/select/utils/index.js +3 -1
  930. package/sheet/action-button.d.ts +6 -0
  931. package/sheet/action-button.js +63 -0
  932. package/sheet/index.d.ts +3 -0
  933. package/sheet/index.js +46 -0
  934. package/sheet/index.js.flow +76 -0
  935. package/sheet/package.json +4 -0
  936. package/sheet/sheet.d.ts +4 -0
  937. package/sheet/sheet.js +182 -0
  938. package/sheet/styled-components.d.ts +27 -0
  939. package/sheet/styled-components.js +216 -0
  940. package/sheet/types.d.ts +37 -0
  941. package/sheet/types.js +5 -0
  942. package/side-navigation/index.d.ts +1 -0
  943. package/side-navigation/index.js +14 -0
  944. package/side-navigation/nav-item.d.ts +1 -1
  945. package/side-navigation/nav-item.js +2 -1
  946. package/side-navigation/nav.js +11 -4
  947. package/side-navigation/side-navigation-next.d.ts +66 -0
  948. package/side-navigation/side-navigation-next.js +381 -0
  949. package/side-navigation/styled-components.js +4 -2
  950. package/side-navigation/types.d.ts +12 -12
  951. package/skeleton/index.d.ts +1 -1
  952. package/skeleton/skeleton.js +2 -0
  953. package/skeleton/skeleton.js.flow +1 -1
  954. package/skeleton/styled-components.d.ts +1 -0
  955. package/skeleton/styled-components.js +1 -0
  956. package/skeleton/types.d.ts +3 -3
  957. package/skeleton/types.js.flow +1 -1
  958. package/slider/index.d.ts +1 -1
  959. package/slider/slider.js +3 -1
  960. package/slider/types.d.ts +9 -9
  961. package/snackbar/index.d.ts +5 -5
  962. package/snackbar/snackbar-context.d.ts +1 -1
  963. package/snackbar/snackbar-context.js +28 -11
  964. package/snackbar/snackbar-element.js +4 -1
  965. package/snackbar/styled-components.js +1 -1
  966. package/snackbar/types.d.ts +5 -5
  967. package/spinner/styled-components.js +2 -0
  968. package/spinner/types.d.ts +2 -2
  969. package/stepper/index.d.ts +3 -0
  970. package/stepper/index.js +46 -0
  971. package/stepper/index.js.flow +36 -0
  972. package/stepper/package.json +4 -0
  973. package/stepper/stepper.d.ts +4 -0
  974. package/stepper/stepper.js +162 -0
  975. package/stepper/styled-components.d.ts +1 -0
  976. package/stepper/styled-components.js +29 -0
  977. package/stepper/types.d.ts +17 -0
  978. package/stepper/types.js +5 -0
  979. package/styles/__mocks__/styled.js +9 -4
  980. package/styles/as-primary-export-hoc.js +2 -0
  981. package/styles/styled.d.ts +6 -6
  982. package/styles/styled.js +2 -0
  983. package/styles/theme-provider.d.ts +2 -2
  984. package/styles/types.d.ts +4 -3
  985. package/styles/types.js.flow +1 -0
  986. package/system-banner/index.d.ts +2 -0
  987. package/system-banner/index.js +30 -0
  988. package/system-banner/index.js.flow +51 -0
  989. package/system-banner/package.json +4 -0
  990. package/system-banner/styled-components.d.ts +16 -0
  991. package/system-banner/styled-components.js +90 -0
  992. package/system-banner/system-banner.d.ts +3 -0
  993. package/system-banner/system-banner.js +104 -0
  994. package/system-banner/types.d.ts +17 -0
  995. package/system-banner/types.js +5 -0
  996. package/table/styled-components.d.ts +2 -2
  997. package/table/styled-components.js +1 -0
  998. package/table/table.js +2 -0
  999. package/table/types.d.ts +6 -6
  1000. package/table-semantic/styled-components.d.ts +5 -5
  1001. package/table-semantic/styled-components.js +8 -8
  1002. package/table-semantic/styled-components.js.flow +4 -5
  1003. package/table-semantic/table-builder.js +24 -21
  1004. package/table-semantic/table-builder.js.flow +21 -23
  1005. package/table-semantic/table.js +2 -0
  1006. package/table-semantic/types.d.ts +8 -8
  1007. package/tabs/index.d.ts +1 -1
  1008. package/tabs/stateful-tabs.d.ts +2 -2
  1009. package/tabs/stateful-tabs.js +2 -2
  1010. package/tabs/types.d.ts +14 -14
  1011. package/tabs-motion/index.d.ts +3 -3
  1012. package/tabs-motion/stateful-tabs.js +1 -0
  1013. package/tabs-motion/tab.js +1 -0
  1014. package/tabs-motion/tabs.js +26 -18
  1015. package/tabs-motion/tabs.js.flow +3 -2
  1016. package/tabs-motion/types.d.ts +13 -13
  1017. package/tabs-motion/types.js.flow +1 -1
  1018. package/tag/styled-components.js +41 -2
  1019. package/tag/tag.js +2 -0
  1020. package/tag/types.d.ts +6 -6
  1021. package/textarea/stateful-textarea.js +7 -3
  1022. package/textarea/textarea.js +4 -2
  1023. package/textarea/types.d.ts +10 -10
  1024. package/theme.js.flow +44 -0
  1025. package/themes/dark-theme/color-component-tokens.js +2 -2
  1026. package/themes/dark-theme/color-component-tokens.js.flow +2 -2
  1027. package/themes/dark-theme/color-semantic-tokens.js +12 -4
  1028. package/themes/dark-theme/color-semantic-tokens.js.flow +7 -4
  1029. package/themes/index.d.ts +2 -2
  1030. package/themes/light-theme/color-semantic-tokens.js +12 -4
  1031. package/themes/light-theme/color-semantic-tokens.js.flow +7 -4
  1032. package/themes/types.d.ts +32 -29
  1033. package/themes/types.js.flow +7 -4
  1034. package/timepicker/index.js.flow +1 -0
  1035. package/timepicker/timepicker.js +11 -4
  1036. package/timepicker/types.d.ts +4 -4
  1037. package/timezonepicker/index.d.ts +1 -1
  1038. package/timezonepicker/timezone-picker.js +3 -1
  1039. package/timezonepicker/types.d.ts +4 -4
  1040. package/toast/index.d.ts +1 -1
  1041. package/toast/locale.d.ts +1 -1
  1042. package/toast/toast.d.ts +3 -3
  1043. package/toast/toast.js +10 -5
  1044. package/toast/toaster.js +21 -3
  1045. package/toast/types.d.ts +15 -15
  1046. package/tokens/index.d.ts +1 -1
  1047. package/tokens/types.d.ts +1 -1
  1048. package/tooltip/types.d.ts +6 -6
  1049. package/tree-view/index.d.ts +1 -1
  1050. package/tree-view/stateful-container.d.ts +1 -1
  1051. package/tree-view/tree-label-interactable.d.ts +3 -3
  1052. package/tree-view/tree-label-interactable.js +4 -2
  1053. package/tree-view/tree-label-interactable.js.flow +2 -0
  1054. package/tree-view/tree-view.js +5 -2
  1055. package/tree-view/types.d.ts +9 -9
  1056. package/tree-view/utils.js +43 -15
  1057. package/utils/deep-merge.js +5 -0
  1058. package/utils/focusVisible.js +17 -7
@@ -0,0 +1,29 @@
1
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
3
+ /*
4
+ Copyright (c) Uber Technologies, Inc.
5
+
6
+ This source code is licensed under the MIT license found in the
7
+ LICENSE file in the root directory of this source tree.
8
+ */
9
+ import * as React from 'react';
10
+ import { StyledRoot, StyledActionContainer, StyledActionSubContainer } from './styled-components';
11
+ import { getOverrides } from '../helpers/overrides';
12
+
13
+ const ButtonDocked = props => {
14
+ const {
15
+ primaryAction,
16
+ secondaryActions,
17
+ dismissiveAction,
18
+ topAccessory,
19
+ overrides = {}
20
+ } = props;
21
+ const [Root, rootProps] = getOverrides(overrides.Root, StyledRoot);
22
+ const [ActionContainer, actionContainerProps] = getOverrides(overrides.ActionContainer, StyledActionContainer);
23
+ const [ActionSubContainer, actionSubContainerProps] = getOverrides(overrides.ActionSubContainer, StyledActionSubContainer);
24
+ return /*#__PURE__*/React.createElement(Root, rootProps, topAccessory, /*#__PURE__*/React.createElement(ActionContainer, actionContainerProps, /*#__PURE__*/React.createElement(ActionSubContainer, actionSubContainerProps, secondaryActions), /*#__PURE__*/React.createElement(ActionSubContainer, _extends({
25
+ $reverseWhenWide: true
26
+ }, actionSubContainerProps), primaryAction, dismissiveAction)));
27
+ };
28
+
29
+ export default ButtonDocked;
@@ -0,0 +1,9 @@
1
+ /*
2
+ Copyright (c) Uber Technologies, Inc.
3
+
4
+ This source code is licensed under the MIT license found in the
5
+ LICENSE file in the root directory of this source tree.
6
+ */
7
+ export { default as ButtonDocked } from './button-docked';
8
+ export * from './styled-components';
9
+ export * from './types';
@@ -0,0 +1,48 @@
1
+ /*
2
+ Copyright (c) Uber Technologies, Inc.
3
+
4
+ This source code is licensed under the MIT license found in the
5
+ LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { styled } from '../styles/index';
8
+ export const StyledRoot = styled('div', ({
9
+ $theme
10
+ }) => ({
11
+ display: 'flex',
12
+ flexDirection: 'column',
13
+ gap: $theme.sizing.scale300,
14
+ paddingTop: $theme.sizing.scale600,
15
+ paddingRight: $theme.sizing.scale600,
16
+ paddingBottom: $theme.sizing.scale600,
17
+ paddingLeft: $theme.sizing.scale600,
18
+ backgroundColor: $theme.colors.backgroundPrimary,
19
+ container: 'root / inline-size'
20
+ }));
21
+ StyledRoot.displayName = "StyledRoot";
22
+ StyledRoot.displayName = 'StyledRoot';
23
+ export const StyledActionContainer = styled('div', ({
24
+ $theme
25
+ }) => ({
26
+ display: 'flex',
27
+ flexDirection: 'column',
28
+ gap: $theme.sizing.scale300,
29
+ '@container root (min-width: 600px)': {
30
+ flexDirection: 'row',
31
+ justifyContent: 'space-between'
32
+ }
33
+ }));
34
+ StyledActionContainer.displayName = "StyledActionContainer";
35
+ StyledActionContainer.displayName = 'StyledActionContainer';
36
+ export const StyledActionSubContainer = styled('div', ({
37
+ $reverseWhenWide,
38
+ $theme
39
+ }) => ({
40
+ display: 'flex',
41
+ flexDirection: 'column',
42
+ gap: $theme.sizing.scale300,
43
+ '@container root (min-width: 600px)': {
44
+ flexDirection: $reverseWhenWide ? 'row-reverse' : 'row'
45
+ }
46
+ }));
47
+ StyledActionSubContainer.displayName = "StyledActionSubContainer";
48
+ StyledActionSubContainer.displayName = 'StyledActionSubContainer';
@@ -0,0 +1 @@
1
+ export {};
@@ -15,6 +15,7 @@ import { getOverrides } from '../helpers/overrides';
15
15
  import { LocaleContext } from '../locale';
16
16
  import { StyledRoot } from './styled-components';
17
17
 
18
+ // @ts-ignore
18
19
  function isIndexSelected(selected, index) {
19
20
  if (!Array.isArray(selected) && typeof selected !== 'number') {
20
21
  return false;
@@ -68,10 +69,12 @@ export default class ButtonGroup extends React.Component {
68
69
  }
69
70
 
70
71
  return /*#__PURE__*/React.cloneElement(child, {
72
+ // @ts-ignore
71
73
  disabled: disabled || child.props.disabled,
72
74
  isSelected,
73
75
  ref: isRadio ? this.childRefs[index] : undefined,
74
76
  tabIndex: !isRadio || isSelected || isRadio && (!selected || selected === -1) && index === 0 ? 0 : -1,
77
+ // @ts-ignore
75
78
  onKeyDown: e => {
76
79
  if (!isRadio) return;
77
80
  const value = Number(selected) ? Number(selected) : 0;
@@ -91,6 +94,7 @@ export default class ButtonGroup extends React.Component {
91
94
  }
92
95
  },
93
96
  kind,
97
+ // @ts-ignore
94
98
  onClick: event => {
95
99
  if (disabled) {
96
100
  return;
@@ -108,6 +112,7 @@ export default class ButtonGroup extends React.Component {
108
112
  size,
109
113
  overrides: {
110
114
  BaseButton: {
115
+ // @ts-ignore
111
116
  style: ({
112
117
  $theme
113
118
  }) => {
@@ -10,6 +10,7 @@ import * as React from 'react';
10
10
  import { MODE, STATE_CHANGE_TYPE } from './constants';
11
11
 
12
12
  // handles the case where selected = 0
13
+ // @ts-ignore
13
14
  function isSelectedDefined(selected) {
14
15
  return Array.isArray(selected) || typeof selected === 'number';
15
16
  }
@@ -68,6 +69,7 @@ export default class StatefulContainer extends React.Component {
68
69
  selected = []
69
70
  } = initialState;
70
71
  this.state = {
72
+ // @ts-ignore
71
73
  selected: isSelectedDefined(selected) ? [].concat(selected) : []
72
74
  };
73
75
  }
@@ -88,6 +90,7 @@ export default class StatefulContainer extends React.Component {
88
90
  }
89
91
 
90
92
  _defineProperty(StatefulContainer, "defaultProps", {
93
+ // @ts-ignore
91
94
  initialState: {
92
95
  selected: []
93
96
  },
@@ -0,0 +1,83 @@
1
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
3
+ /*
4
+ Copyright (c) Uber Technologies, Inc.
5
+
6
+ This source code is licensed under the MIT license found in the
7
+ LICENSE file in the root directory of this source tree.
8
+ */
9
+ import * as React from 'react';
10
+ import { Button, SIZE, KIND, SHAPE } from '../button';
11
+ import { StyledBaseButtonTimed, StyledTimerContainer } from './styled-components';
12
+ import { formatTime } from './utils';
13
+ import { getOverrides, mergeOverrides } from '../helpers/overrides';
14
+
15
+ const ButtonTimed = props => {
16
+ const {
17
+ initialTime,
18
+ // in seconds
19
+ paused = false,
20
+ onClick: onClickProp,
21
+ disabled,
22
+ children,
23
+ overrides = {},
24
+ ...restProps
25
+ } = props;
26
+ const [timeRemaining, setTimeRemaining] = React.useState(initialTime * 1000);
27
+ React.useEffect(() => {
28
+ const timerId = setTimeout(() => {
29
+ if (timeRemaining > 0 && !paused) {
30
+ setTimeRemaining(seconds => seconds - 100);
31
+ }
32
+ }, 100);
33
+
34
+ if (timeRemaining === 0) {
35
+ onClickProp();
36
+ }
37
+
38
+ return () => clearTimeout(timerId);
39
+ }, [timeRemaining, paused]);
40
+
41
+ const onClick = () => {
42
+ setTimeRemaining(0);
43
+ onClickProp();
44
+ };
45
+
46
+ const {
47
+ TimerContainer: TimerContainerOverride,
48
+ ...buttonOverrides
49
+ } = overrides;
50
+ const [TimerContainer, timerContainerProps] = getOverrides(TimerContainerOverride, StyledTimerContainer);
51
+ const buttonMergedOverrides = mergeOverrides({
52
+ BaseButton: {
53
+ component: StyledBaseButtonTimed,
54
+ props: {
55
+ $initialTime: initialTime,
56
+ $timeElapsed: (initialTime * 1000 - timeRemaining) / 1000
57
+ },
58
+ style: {
59
+ ':after': {
60
+ animationPlayState: paused ? 'paused' : 'running'
61
+ }
62
+ }
63
+ }
64
+ }, {
65
+ Root: buttonOverrides.Root || {},
66
+ // @ts-ignore
67
+ BaseButton: buttonOverrides.BaseButton,
68
+ StartEnhancer: buttonOverrides.StartEnhancer || {},
69
+ EndEnhancer: buttonOverrides.EndEnhancer || {},
70
+ LoadingSpinnerContainer: buttonOverrides.LoadingSpinnerContainer || {},
71
+ LoadingSpinner: buttonOverrides.LoadingSpinner || {}
72
+ });
73
+ return /*#__PURE__*/React.createElement(Button, _extends({}, restProps, {
74
+ overrides: buttonMergedOverrides,
75
+ onClick: onClick,
76
+ size: SIZE.large,
77
+ kind: KIND.primary,
78
+ shape: SHAPE.default,
79
+ disabled: disabled || timeRemaining === 0
80
+ }), children, /*#__PURE__*/React.createElement(TimerContainer, timerContainerProps, `(${formatTime(timeRemaining)})`));
81
+ };
82
+
83
+ export default ButtonTimed;
@@ -0,0 +1,11 @@
1
+ /*
2
+ Copyright (c) Uber Technologies, Inc.
3
+
4
+ This source code is licensed under the MIT license found in the
5
+ LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { StyledStartEnhancer, StyledEndEnhancer, StyledLoadingSpinner, StyledLoadingSpinnerContainer } from '../button';
8
+ import { StyledBaseButtonTimed, StyledTimerContainer } from './styled-components';
9
+ export { StyledBaseButtonTimed, StyledTimerContainer, StyledStartEnhancer, StyledEndEnhancer, StyledLoadingSpinner, StyledLoadingSpinnerContainer };
10
+ export * from './types';
11
+ export { default as ButtonTimed } from './button-timed';
@@ -0,0 +1,49 @@
1
+ /*
2
+ Copyright (c) Uber Technologies, Inc.
3
+
4
+ This source code is licensed under the MIT license found in the
5
+ LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { styled, withStyle } from '../styles/index';
8
+ import { StyledBaseButton } from '../button';
9
+ import { hexToRgb as hexToRgba } from '../styles/util';
10
+ export const StyledBaseButtonTimed = withStyle(StyledBaseButton, ({
11
+ $theme,
12
+ $initialTime,
13
+ $timeElapsed
14
+ }) => {
15
+ const completionPercentage = $timeElapsed / $initialTime * 100;
16
+ const timeLeft = $initialTime - $timeElapsed;
17
+ return {
18
+ position: 'relative',
19
+ ...($initialTime > 0 ? {
20
+ ':after': {
21
+ animationDuration: `${timeLeft}s`,
22
+ animationName: {
23
+ from: {
24
+ transform: `translateX(${completionPercentage}%)`
25
+ },
26
+ to: {
27
+ transform: 'translateX(100%)'
28
+ }
29
+ },
30
+ animationTimingFunction: 'linear',
31
+ display: 'inline-block',
32
+ content: '""',
33
+ width: '100%',
34
+ height: '100%',
35
+ zIndex: '1',
36
+ position: 'absolute',
37
+ backgroundColor: hexToRgba($theme.colors.backgroundPrimary, '0.2')
38
+ }
39
+ } : {})
40
+ };
41
+ });
42
+ StyledBaseButtonTimed.displayName = "StyledBaseButtonTimed";
43
+ StyledBaseButtonTimed.displayName = 'StyledBaseButtonTimed';
44
+ export const StyledTimerContainer = styled('span', {
45
+ // minWidth to ensure button width stays consistent as timeRemaining changes
46
+ minWidth: '53px'
47
+ });
48
+ StyledTimerContainer.displayName = "StyledTimerContainer";
49
+ StyledTimerContainer.displayName = 'StyledTimerContainer';
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,21 @@
1
+ /*
2
+ Copyright (c) Uber Technologies, Inc.
3
+
4
+ This source code is licensed under the MIT license found in the
5
+ LICENSE file in the root directory of this source tree.
6
+ */
7
+ function roundUpToNearestInt(num) {
8
+ const cleanedNum = Math.trunc(num * 10) / 10;
9
+ return Math.ceil(cleanedNum);
10
+ }
11
+
12
+ function padTo2Digits(num) {
13
+ return num.toString().padStart(2, '0');
14
+ }
15
+
16
+ export const formatTime = totalMilliseconds => {
17
+ const totalSeconds = totalMilliseconds / 1000;
18
+ const minutes = Math.floor(totalSeconds / 60);
19
+ const seconds = roundUpToNearestInt(totalSeconds % 60);
20
+ return `${minutes}:${padTo2Digits(seconds)}`;
21
+ };
package/es/card/card.js CHANGED
@@ -12,7 +12,7 @@ import { LevelContext } from '../heading';
12
12
  import { Action as StyledAction, Body as StyledBody, Contents as StyledContents, HeaderImage as StyledHeaderImage, Root as StyledRoot, Thumbnail as StyledThumbnail, Title as StyledTitle } from './styled-components';
13
13
  export function hasThumbnail(props) {
14
14
  return !!props.thumbnail;
15
- }
15
+ } // @ts-ignore
16
16
 
17
17
  const SemanticTitle = ({
18
18
  children,
@@ -56,7 +56,8 @@ function Card(props) {
56
56
  const Title = getOverride(TitleOverride) || SemanticTitle;
57
57
  const headerImageProps = typeof headerImage === 'string' ? {
58
58
  src: headerImage
59
- } : headerImage;
59
+ } : headerImage; // @ts-ignore
60
+
60
61
  const $hasThumbnail = hasThumbnail(props);
61
62
  return /*#__PURE__*/React.createElement(Root, _extends({
62
63
  "data-baseweb": "card"
@@ -14,12 +14,15 @@ import { Checkmark as StyledCheckmark, Input as StyledInput, Label as StyledLabe
14
14
  import { STYLE_TYPE } from './constants';
15
15
  import { isFocusVisible } from '../utils/focusVisible';
16
16
 
17
+ // @ts-ignore
17
18
  const stopPropagation = e => e.stopPropagation();
18
19
 
19
20
  class StatelessCheckbox extends React.Component {
20
21
  constructor(...args) {
21
22
  super(...args);
22
23
 
24
+ _defineProperty(this, "inputRef", this.props.inputRef || /*#__PURE__*/React.createRef());
25
+
23
26
  _defineProperty(this, "state", {
24
27
  isFocused: this.props.autoFocus || false,
25
28
  isFocusVisible: false,
@@ -30,7 +33,8 @@ class StatelessCheckbox extends React.Component {
30
33
  _defineProperty(this, "onMouseEnter", e => {
31
34
  this.setState({
32
35
  isHovered: true
33
- });
36
+ }); // @ts-ignore
37
+
34
38
  this.props.onMouseEnter(e);
35
39
  });
36
40
 
@@ -38,28 +42,32 @@ class StatelessCheckbox extends React.Component {
38
42
  this.setState({
39
43
  isHovered: false,
40
44
  isActive: false
41
- });
45
+ }); // @ts-ignore
46
+
42
47
  this.props.onMouseLeave(e);
43
48
  });
44
49
 
45
50
  _defineProperty(this, "onMouseDown", e => {
46
51
  this.setState({
47
52
  isActive: true
48
- });
53
+ }); // @ts-ignore
54
+
49
55
  this.props.onMouseDown(e);
50
56
  });
51
57
 
52
58
  _defineProperty(this, "onMouseUp", e => {
53
59
  this.setState({
54
60
  isActive: false
55
- });
61
+ }); // @ts-ignore
62
+
56
63
  this.props.onMouseUp(e);
57
64
  });
58
65
 
59
66
  _defineProperty(this, "onFocus", e => {
60
67
  this.setState({
61
68
  isFocused: true
62
- });
69
+ }); // @ts-ignore
70
+
63
71
  this.props.onFocus(e);
64
72
 
65
73
  if (isFocusVisible(e)) {
@@ -72,7 +80,8 @@ class StatelessCheckbox extends React.Component {
72
80
  _defineProperty(this, "onBlur", e => {
73
81
  this.setState({
74
82
  isFocused: false
75
- });
83
+ }); // @ts-ignore
84
+
76
85
  this.props.onBlur(e);
77
86
 
78
87
  if (this.state.isFocusVisible !== false) {
@@ -86,11 +95,26 @@ class StatelessCheckbox extends React.Component {
86
95
  componentDidMount() {
87
96
  const {
88
97
  autoFocus,
89
- inputRef
98
+ isIndeterminate
99
+ } = this.props; // @ts-ignore
100
+
101
+ if (autoFocus && this.inputRef.current) {
102
+ // @ts-ignore
103
+ this.inputRef.current.focus();
104
+ }
105
+
106
+ if (this.inputRef.current) {
107
+ this.inputRef.current.indeterminate = Boolean(isIndeterminate);
108
+ }
109
+ }
110
+
111
+ componentDidUpdate(prevProps) {
112
+ const {
113
+ isIndeterminate
90
114
  } = this.props;
91
115
 
92
- if (autoFocus && inputRef.current) {
93
- inputRef.current.focus();
116
+ if (this.inputRef.current && isIndeterminate !== prevProps.isIndeterminate) {
117
+ this.inputRef.current.indeterminate = Boolean(isIndeterminate);
94
118
  }
95
119
  }
96
120
 
@@ -99,13 +123,12 @@ class StatelessCheckbox extends React.Component {
99
123
  overrides = {},
100
124
  onChange,
101
125
  labelPlacement = this.props.checkmarkType === STYLE_TYPE.toggle ? 'left' : 'right',
102
- inputRef,
103
126
  isIndeterminate,
104
127
  error,
105
128
  disabled,
106
129
  value,
130
+ id,
107
131
  name,
108
- type,
109
132
  checked,
110
133
  children,
111
134
  required,
@@ -163,18 +186,18 @@ class StatelessCheckbox extends React.Component {
163
186
  $labelPlacement: labelPlacement
164
187
  }, sharedProps, mouseEvents, getOverrideProps(RootOverride)), (labelPlacement === 'top' || labelPlacement === 'left') && labelComp, this.props.checkmarkType === STYLE_TYPE.toggle ? /*#__PURE__*/React.createElement(ToggleTrack, _extends({}, sharedProps, getOverrideProps(ToggleTrackOverride)), /*#__PURE__*/React.createElement(Toggle, _extends({}, sharedProps, getOverrideProps(ToggleOverride)))) : /*#__PURE__*/React.createElement(Checkmark, _extends({}, sharedProps, getOverrideProps(CheckmarkOverride))), /*#__PURE__*/React.createElement(Input, _extends({
165
188
  value: value,
189
+ id: id,
166
190
  name: name,
167
191
  checked: checked,
168
192
  required: required,
169
193
  "aria-label": this.props['aria-label'] || this.props.ariaLabel,
170
- "aria-checked": isIndeterminate ? 'mixed' : checked,
171
194
  "aria-describedby": this.props['aria-describedby'],
172
195
  "aria-errormessage": this.props['aria-errormessage'],
173
196
  "aria-invalid": error || null,
174
197
  "aria-required": required || null,
175
198
  disabled: disabled,
176
- type: type,
177
- ref: inputRef // Prevent a second click event from firing when label is clicked.
199
+ type: "checkbox",
200
+ ref: this.inputRef // Prevent a second click event from firing when label is clicked.
178
201
  // See https://github.com/uber/baseweb/issues/3847
179
202
  ,
180
203
  onClick: stopPropagation
@@ -191,9 +214,7 @@ _defineProperty(StatelessCheckbox, "defaultProps", {
191
214
  disabled: false,
192
215
  autoFocus: false,
193
216
  isIndeterminate: false,
194
- inputRef: /*#__PURE__*/React.createRef(),
195
217
  error: false,
196
- type: 'checkbox',
197
218
  checkmarkType: STYLE_TYPE.default,
198
219
  onChange: () => {},
199
220
  onMouseEnter: () => {},
@@ -6,6 +6,7 @@ LICENSE file in the root directory of this source tree.
6
6
  */
7
7
  import { styled } from '../styles';
8
8
 
9
+ // @ts-ignore
9
10
  function getBorderColor(props) {
10
11
  const {
11
12
  $disabled,
@@ -30,7 +31,8 @@ function getBorderColor(props) {
30
31
  } else {
31
32
  return colors.tickBorder;
32
33
  }
33
- }
34
+ } // @ts-ignore
35
+
34
36
 
35
37
  function getLabelPadding(props) {
36
38
  const {
@@ -73,7 +75,8 @@ function getLabelPadding(props) {
73
75
  return {
74
76
  [`padding${paddingDirection}`]: scale300
75
77
  };
76
- }
78
+ } // @ts-ignore
79
+
77
80
 
78
81
  function getBackgroundColor(props) {
79
82
  const {
@@ -128,7 +131,8 @@ function getBackgroundColor(props) {
128
131
  return colors.tickFill;
129
132
  }
130
133
  }
131
- }
134
+ } // @ts-ignore
135
+
132
136
 
133
137
  function getLabelColor(props) {
134
138
  const {
@@ -155,7 +159,8 @@ export const Root = styled('label', props => {
155
159
  };
156
160
  });
157
161
  Root.displayName = "Root";
158
- Root.displayName = 'Root';
162
+ Root.displayName = 'Root'; // @ts-ignore
163
+
159
164
  export const Checkmark = styled('span', props => {
160
165
  const {
161
166
  $checked,
@@ -252,7 +257,8 @@ export const Input = styled('input', {
252
257
  position: 'absolute'
253
258
  });
254
259
  Input.displayName = "Input";
255
- Input.displayName = 'Input';
260
+ Input.displayName = 'Input'; // @ts-ignore
261
+
256
262
  export const Toggle = styled('div', props => {
257
263
  let backgroundColor = props.$theme.colors.toggleFill;
258
264
 
@@ -22,6 +22,7 @@ const ARROW_DOWN = 40; // aria 1.1 spec: https://www.w3.org/TR/wai-aria-practice
22
22
  function Combobox(props) {
23
23
  const {
24
24
  autocomplete = true,
25
+ clearable = false,
25
26
  disabled = false,
26
27
  error = false,
27
28
  onBlur,
@@ -44,7 +45,8 @@ function Combobox(props) {
44
45
  const [tempValue, setTempValue] = React.useState(value);
45
46
  const [isOpen, setIsOpen] = React.useState(false);
46
47
  const rootRef = React.useRef(null);
47
- const inputRef = React.useRef(null);
48
+ const defaultInputRef = React.useRef(null);
49
+ const inputRef = forwardInputRef || defaultInputRef;
48
50
  const listboxRef = React.useRef(null);
49
51
  const selectedOptionRef = React.useRef(null);
50
52
  const seed = useUIDSeed();
@@ -82,6 +84,7 @@ function Combobox(props) {
82
84
  }, [isOpen, selectedOptionRef.current, listboxRef.current]);
83
85
  const listboxWidth = React.useMemo(() => {
84
86
  if (rootRef.current) {
87
+ // @ts-ignore
85
88
  return `${rootRef.current.clientWidth}px`;
86
89
  }
87
90
 
@@ -92,7 +95,8 @@ function Combobox(props) {
92
95
  if (!disabled) {
93
96
  setIsOpen(true);
94
97
  }
95
- }
98
+ } // @ts-ignore
99
+
96
100
 
97
101
  function handleKeyDown(event) {
98
102
  if (event.keyCode === ARROW_DOWN) {
@@ -149,7 +153,8 @@ function Combobox(props) {
149
153
  setSelectionIndex(-1);
150
154
  setTempValue(value);
151
155
  }
152
- }
156
+ } // @ts-ignore
157
+
153
158
 
154
159
  function handleFocus(event) {
155
160
  if (!isOpen && options.length) {
@@ -157,13 +162,15 @@ function Combobox(props) {
157
162
  }
158
163
 
159
164
  if (onFocus) onFocus(event);
160
- }
165
+ } // @ts-ignore
166
+
161
167
 
162
168
  function handleBlur(event) {
163
169
  if (listboxRef.current && event.relatedTarget && // NOTE(chase): Contains method expects a Node type, but relatedTarget is
164
170
  // EventTarget which is a super type of Node. Passing an EventTarget seems
165
171
  // to work fine, assuming the flow type is too strict.
166
172
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
173
+ // @ts-ignore
167
174
  listboxRef.current.contains(event.relatedTarget)) {
168
175
  return;
169
176
  }
@@ -174,35 +181,25 @@ function Combobox(props) {
174
181
  if (onBlur) onBlur(event);
175
182
  }
176
183
 
177
- function handleInputClick() {
184
+ function handleInputClick(event) {
178
185
  if (inputRef.current) {
186
+ // @ts-ignore
179
187
  inputRef.current.focus();
180
188
  }
181
189
 
182
190
  if (!isOpen && options.length) {
183
191
  handleOpen();
184
192
  }
185
- }
193
+ } // @ts-ignore
194
+
186
195
 
187
196
  function handleInputChange(event) {
188
197
  handleOpen();
189
198
  setSelectionIndex(-1);
190
199
  onChange(event.target.value, null);
191
200
  setTempValue(event.target.value);
192
- }
201
+ } // @ts-ignore
193
202
 
194
- function handleInputRef(input) {
195
- inputRef.current = input;
196
-
197
- if (forwardInputRef) {
198
- if (typeof forwardInputRef === 'function') {
199
- forwardInputRef(input);
200
- } else {
201
- // @ts-expect-error todo(flow->ts)
202
- forwardInputRef.current = input;
203
- }
204
- }
205
- }
206
203
 
207
204
  function handleOptionClick(index) {
208
205
  let clickedOption = options[index];
@@ -215,6 +212,7 @@ function Combobox(props) {
215
212
  setTempValue(stringified);
216
213
 
217
214
  if (inputRef.current) {
215
+ // @ts-ignore
218
216
  inputRef.current.focus();
219
217
  }
220
218
  }
@@ -289,9 +287,10 @@ function Combobox(props) {
289
287
  ,
290
288
  role: "combobox"
291
289
  }, inputContainerProps), /*#__PURE__*/React.createElement(OverriddenInput, _extends({
292
- inputRef: handleInputRef,
290
+ inputRef: inputRef,
293
291
  "aria-activedescendant": isOpen && selectionIndex >= 0 ? activeDescendantId : undefined,
294
292
  "aria-autocomplete": "list",
293
+ clearable: clearable,
295
294
  disabled: disabled,
296
295
  error: error,
297
296
  name: name,
@@ -30,7 +30,9 @@ export const StyledListBox = styled('ul', ({
30
30
  StyledListBox.displayName = "StyledListBox";
31
31
  StyledListBox.displayName = 'StyledListBox';
32
32
 
33
- function buildStylesForSize(size, theme) {
33
+ function buildStylesForSize( // @ts-ignore
34
+ size, // @ts-ignore
35
+ theme) {
34
36
  const paddingDir = theme.direction === 'rtl' ? 'paddingRight' : 'paddingLeft';
35
37
 
36
38
  switch (size) {