baseui 10.12.0 → 11.0.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 (291) hide show
  1. package/README.md +3 -3
  2. package/accordion/accordion.js +60 -13
  3. package/accordion/accordion.js.flow +49 -12
  4. package/accordion/index.d.ts +0 -3
  5. package/accordion/panel.js +7 -6
  6. package/accordion/panel.js.flow +20 -20
  7. package/accordion/stateless-accordion.js +2 -4
  8. package/accordion/stateless-accordion.js.flow +0 -2
  9. package/accordion/types.js.flow +0 -5
  10. package/button/constants.js +1 -2
  11. package/button/constants.js.flow +0 -1
  12. package/button/index.d.ts +0 -1
  13. package/button/styled-components.js +2 -29
  14. package/button/styled-components.js.flow +2 -30
  15. package/checkbox/checkbox.js +6 -30
  16. package/checkbox/checkbox.js.flow +7 -38
  17. package/checkbox/constants.js +2 -1
  18. package/checkbox/constants.js.flow +2 -1
  19. package/checkbox/index.d.ts +4 -6
  20. package/checkbox/index.js +0 -6
  21. package/checkbox/index.js.flow +0 -1
  22. package/checkbox/styled-components.js +52 -149
  23. package/checkbox/styled-components.js.flow +59 -165
  24. package/checkbox/types.js.flow +0 -5
  25. package/data-table/column-categorical.js +1 -1
  26. package/data-table/column-categorical.js.flow +1 -1
  27. package/data-table/column-datetime.js +1 -1
  28. package/data-table/column-datetime.js.flow +3 -1
  29. package/data-table/column.js +6 -2
  30. package/data-table/column.js.flow +9 -7
  31. package/data-table/data-table.js +10 -2
  32. package/data-table/data-table.js.flow +4 -1
  33. package/data-table/header-cell.js +3 -0
  34. package/data-table/header-cell.js.flow +1 -1
  35. package/data-table/index.d.ts +7 -8
  36. package/data-table/stateful-data-table.js +2 -1
  37. package/data-table/stateful-data-table.js.flow +1 -0
  38. package/data-table/types.js.flow +8 -0
  39. package/datepicker/calendar.js +15 -7
  40. package/datepicker/calendar.js.flow +23 -9
  41. package/datepicker/constants.js +12 -2
  42. package/datepicker/constants.js.flow +10 -0
  43. package/datepicker/datepicker.js +61 -30
  44. package/datepicker/datepicker.js.flow +77 -37
  45. package/datepicker/day.js +85 -34
  46. package/datepicker/day.js.flow +118 -54
  47. package/datepicker/locale.js.flow +0 -1
  48. package/datepicker/month.js +3 -1
  49. package/datepicker/month.js.flow +2 -0
  50. package/datepicker/stateful-container.js.flow +2 -1
  51. package/datepicker/styled-components.js +23 -1
  52. package/datepicker/styled-components.js.flow +12 -2
  53. package/datepicker/types.js.flow +35 -10
  54. package/datepicker/utils/date-helpers.js +30 -0
  55. package/datepicker/utils/date-helpers.js.flow +12 -0
  56. package/datepicker/week.js +3 -1
  57. package/datepicker/week.js.flow +2 -0
  58. package/es/accordion/accordion.js +52 -12
  59. package/es/accordion/panel.js +7 -5
  60. package/es/accordion/stateless-accordion.js +2 -4
  61. package/es/button/constants.js +1 -2
  62. package/es/button/styled-components.js +2 -29
  63. package/es/checkbox/checkbox.js +7 -32
  64. package/es/checkbox/constants.js +2 -1
  65. package/es/checkbox/index.js +1 -1
  66. package/es/checkbox/styled-components.js +51 -146
  67. package/es/data-table/column-categorical.js +1 -1
  68. package/es/data-table/column-datetime.js +1 -1
  69. package/es/data-table/column.js +6 -2
  70. package/es/data-table/data-table.js +6 -2
  71. package/es/data-table/header-cell.js +3 -0
  72. package/es/data-table/stateful-data-table.js +2 -1
  73. package/es/datepicker/calendar.js +15 -7
  74. package/es/datepicker/constants.js +8 -0
  75. package/es/datepicker/datepicker.js +56 -29
  76. package/es/datepicker/day.js +77 -34
  77. package/es/datepicker/month.js +3 -1
  78. package/es/datepicker/styled-components.js +8 -2
  79. package/es/datepicker/types.js +1 -1
  80. package/es/datepicker/utils/date-helpers.js +16 -0
  81. package/es/datepicker/week.js +3 -1
  82. package/es/file-uploader/file-uploader.js +4 -4
  83. package/es/form-control/styled-components.js +0 -1
  84. package/es/header-navigation/styled-components.js +3 -3
  85. package/es/helpers/overrides.js +1 -2
  86. package/es/input/styled-components.js +4 -4
  87. package/es/layer/layer.js +4 -4
  88. package/es/list/list-item.js +5 -1
  89. package/es/list/menu-adapter.js +4 -0
  90. package/es/locale/index.js +0 -7
  91. package/es/menu/stateful-container.js +0 -1
  92. package/es/menu/styled-components.js +1 -1
  93. package/es/modal/index.js +1 -1
  94. package/es/modal/modal.js +19 -65
  95. package/es/modal/styled-components.js +12 -48
  96. package/es/phone-input/default-props.js +1 -1
  97. package/es/phone-input/index.js +0 -4
  98. package/es/phone-input/phone-input-lite.js +55 -31
  99. package/es/radio/radio.js +1 -7
  100. package/es/radio/radiogroup.js +3 -28
  101. package/es/radio/styled-components.js +4 -5
  102. package/es/rating/styled-components.js +3 -3
  103. package/es/select/index.js +1 -2
  104. package/es/select/select-component.js +20 -20
  105. package/es/select/styled-components.js +21 -17
  106. package/es/snackbar/styled-components.js +2 -2
  107. package/es/spinner/index.js +3 -9
  108. package/es/spinner/styled-components.js +2 -32
  109. package/es/table/filter.js +3 -3
  110. package/es/tag/styled-components.js +1 -1
  111. package/es/themes/dark-theme/color-component-tokens.js +0 -38
  112. package/es/themes/dark-theme/color-tokens.js +0 -2
  113. package/es/themes/dark-theme/create-dark-theme.js +0 -2
  114. package/es/themes/dark-theme/dark-theme.js +0 -2
  115. package/es/themes/light-theme/color-component-tokens.js +0 -38
  116. package/es/themes/light-theme/color-tokens.js +0 -2
  117. package/es/themes/light-theme/create-light-theme.js +0 -2
  118. package/es/themes/light-theme/light-theme.js +0 -2
  119. package/es/timepicker/timepicker.js +1 -8
  120. package/es/typography/index.js +1 -31
  121. package/esm/accordion/accordion.js +60 -13
  122. package/esm/accordion/panel.js +7 -6
  123. package/esm/accordion/stateless-accordion.js +2 -4
  124. package/esm/button/constants.js +1 -2
  125. package/esm/button/styled-components.js +2 -29
  126. package/esm/checkbox/checkbox.js +7 -30
  127. package/esm/checkbox/constants.js +2 -1
  128. package/esm/checkbox/index.js +1 -1
  129. package/esm/checkbox/styled-components.js +52 -147
  130. package/esm/data-table/column-categorical.js +1 -1
  131. package/esm/data-table/column-datetime.js +1 -1
  132. package/esm/data-table/column.js +6 -2
  133. package/esm/data-table/data-table.js +10 -2
  134. package/esm/data-table/header-cell.js +3 -0
  135. package/esm/data-table/stateful-data-table.js +2 -1
  136. package/esm/datepicker/calendar.js +15 -7
  137. package/esm/datepicker/constants.js +8 -0
  138. package/esm/datepicker/datepicker.js +60 -30
  139. package/esm/datepicker/day.js +84 -34
  140. package/esm/datepicker/month.js +3 -1
  141. package/esm/datepicker/styled-components.js +24 -2
  142. package/esm/datepicker/types.js +1 -1
  143. package/esm/datepicker/utils/date-helpers.js +30 -0
  144. package/esm/datepicker/week.js +3 -1
  145. package/esm/file-uploader/file-uploader.js +4 -4
  146. package/esm/form-control/styled-components.js +0 -1
  147. package/esm/header-navigation/styled-components.js +3 -3
  148. package/esm/helpers/overrides.js +1 -2
  149. package/esm/input/styled-components.js +4 -4
  150. package/esm/layer/layer.js +4 -4
  151. package/esm/list/list-item.js +5 -1
  152. package/esm/list/menu-adapter.js +4 -0
  153. package/esm/locale/index.js +0 -7
  154. package/esm/menu/stateful-container.js +0 -1
  155. package/esm/menu/styled-components.js +1 -1
  156. package/esm/modal/index.js +1 -1
  157. package/esm/modal/modal.js +28 -71
  158. package/esm/modal/styled-components.js +6 -38
  159. package/esm/phone-input/default-props.js +1 -1
  160. package/esm/phone-input/index.js +0 -4
  161. package/esm/phone-input/phone-input-lite.js +60 -37
  162. package/esm/radio/radio.js +1 -7
  163. package/esm/radio/radiogroup.js +3 -28
  164. package/esm/radio/styled-components.js +4 -5
  165. package/esm/rating/styled-components.js +3 -3
  166. package/esm/select/index.js +1 -2
  167. package/esm/select/select-component.js +20 -20
  168. package/esm/select/styled-components.js +21 -14
  169. package/esm/snackbar/styled-components.js +2 -2
  170. package/esm/spinner/index.js +3 -9
  171. package/esm/spinner/styled-components.js +2 -40
  172. package/esm/table/filter.js +3 -3
  173. package/esm/tag/styled-components.js +1 -1
  174. package/esm/themes/dark-theme/color-component-tokens.js +0 -38
  175. package/esm/themes/dark-theme/color-tokens.js +0 -2
  176. package/esm/themes/dark-theme/create-dark-theme.js +1 -2
  177. package/esm/themes/dark-theme/dark-theme.js +1 -2
  178. package/esm/themes/light-theme/color-component-tokens.js +0 -38
  179. package/esm/themes/light-theme/color-tokens.js +0 -2
  180. package/esm/themes/light-theme/create-light-theme.js +1 -2
  181. package/esm/themes/light-theme/light-theme.js +1 -2
  182. package/esm/timepicker/timepicker.js +1 -8
  183. package/esm/typography/index.js +1 -35
  184. package/file-uploader/file-uploader.js +3 -3
  185. package/file-uploader/file-uploader.js.flow +4 -4
  186. package/form-control/index.d.ts +9 -0
  187. package/form-control/styled-components.js +0 -1
  188. package/form-control/styled-components.js.flow +0 -1
  189. package/header-navigation/styled-components.js +3 -3
  190. package/header-navigation/styled-components.js.flow +3 -3
  191. package/helpers/overrides.js +1 -2
  192. package/helpers/overrides.js.flow +1 -1
  193. package/input/index.d.ts +5 -9
  194. package/input/styled-components.js +4 -4
  195. package/input/styled-components.js.flow +4 -4
  196. package/layer/layer.js +4 -4
  197. package/layer/layer.js.flow +4 -3
  198. package/list/list-item.js +5 -1
  199. package/list/list-item.js.flow +4 -0
  200. package/list/menu-adapter.js +4 -0
  201. package/list/menu-adapter.js.flow +4 -0
  202. package/list/types.js.flow +4 -0
  203. package/locale/index.js +0 -7
  204. package/locale/index.js.flow +0 -7
  205. package/locale.ts +0 -1
  206. package/menu/index.d.ts +1 -3
  207. package/menu/stateful-container.js +0 -1
  208. package/menu/stateful-container.js.flow +0 -1
  209. package/menu/styled-components.js +1 -1
  210. package/menu/styled-components.js.flow +1 -1
  211. package/modal/index.d.ts +4 -6
  212. package/modal/index.js +0 -6
  213. package/modal/index.js.flow +0 -1
  214. package/modal/modal.js +27 -70
  215. package/modal/modal.js.flow +17 -83
  216. package/modal/styled-components.js +7 -40
  217. package/modal/styled-components.js.flow +12 -44
  218. package/modal/types.js.flow +1 -10
  219. package/package.json +3 -2
  220. package/phone-input/default-props.js +1 -1
  221. package/phone-input/default-props.js.flow +1 -1
  222. package/phone-input/index.d.ts +0 -1
  223. package/phone-input/index.js +0 -36
  224. package/phone-input/index.js.flow +0 -4
  225. package/phone-input/phone-input-lite.js +63 -38
  226. package/phone-input/phone-input-lite.js.flow +66 -44
  227. package/radio/index.d.ts +4 -9
  228. package/radio/radio.js +1 -7
  229. package/radio/radio.js.flow +1 -8
  230. package/radio/radiogroup.js +3 -28
  231. package/radio/radiogroup.js.flow +2 -26
  232. package/radio/styled-components.js +4 -5
  233. package/radio/styled-components.js.flow +3 -4
  234. package/radio/types.js.flow +4 -15
  235. package/rating/styled-components.js +3 -3
  236. package/rating/styled-components.js.flow +3 -3
  237. package/select/index.d.ts +0 -2
  238. package/select/index.js +0 -6
  239. package/select/index.js.flow +0 -2
  240. package/select/select-component.js +23 -24
  241. package/select/select-component.js.flow +25 -14
  242. package/select/styled-components.js +23 -17
  243. package/select/styled-components.js.flow +17 -12
  244. package/snackbar/styled-components.js +1 -1
  245. package/snackbar/styled-components.js.flow +11 -11
  246. package/spinner/index.d.ts +5 -18
  247. package/spinner/index.js +2 -68
  248. package/spinner/index.js.flow +2 -27
  249. package/spinner/styled-components.js +9 -45
  250. package/spinner/styled-components.js.flow +2 -34
  251. package/spinner/types.js.flow +1 -19
  252. package/styles/types.js.flow +0 -2
  253. package/table/filter.js +3 -3
  254. package/table/filter.js.flow +3 -3
  255. package/tag/styled-components.js +1 -1
  256. package/tag/styled-components.js.flow +1 -1
  257. package/theme.ts +0 -81
  258. package/themes/dark-theme/color-component-tokens.js +0 -38
  259. package/themes/dark-theme/color-component-tokens.js.flow +0 -42
  260. package/themes/dark-theme/color-tokens.js +0 -2
  261. package/themes/dark-theme/color-tokens.js.flow +0 -2
  262. package/themes/dark-theme/create-dark-theme.js +1 -3
  263. package/themes/dark-theme/create-dark-theme.js.flow +0 -2
  264. package/themes/dark-theme/dark-theme.js +1 -3
  265. package/themes/dark-theme/dark-theme.js.flow +0 -2
  266. package/themes/light-theme/color-component-tokens.js +0 -38
  267. package/themes/light-theme/color-component-tokens.js.flow +0 -43
  268. package/themes/light-theme/color-tokens.js +0 -2
  269. package/themes/light-theme/color-tokens.js.flow +0 -2
  270. package/themes/light-theme/create-light-theme.js +1 -3
  271. package/themes/light-theme/create-light-theme.js.flow +0 -2
  272. package/themes/light-theme/light-theme.js +1 -3
  273. package/themes/light-theme/light-theme.js.flow +0 -2
  274. package/themes/types.js.flow +0 -68
  275. package/timepicker/timepicker.js +1 -8
  276. package/timepicker/timepicker.js.flow +4 -10
  277. package/typography/index.d.ts +0 -23
  278. package/typography/index.js +2 -57
  279. package/typography/index.js.flow +0 -31
  280. package/es/spinner/spinner.js +0 -68
  281. package/es/themes/dark-theme/color-deprecated-semantic-tokens.js +0 -35
  282. package/es/themes/light-theme/color-deprecated-semantic-tokens.js +0 -35
  283. package/esm/spinner/spinner.js +0 -125
  284. package/esm/themes/dark-theme/color-deprecated-semantic-tokens.js +0 -38
  285. package/esm/themes/light-theme/color-deprecated-semantic-tokens.js +0 -38
  286. package/spinner/spinner.js +0 -136
  287. package/spinner/spinner.js.flow +0 -75
  288. package/themes/dark-theme/color-deprecated-semantic-tokens.js +0 -50
  289. package/themes/dark-theme/color-deprecated-semantic-tokens.js.flow +0 -42
  290. package/themes/light-theme/color-deprecated-semantic-tokens.js +0 -50
  291. package/themes/light-theme/color-deprecated-semantic-tokens.js.flow +0 -42
@@ -120,10 +120,10 @@ function getRootColors($disabled, $isFocused, $error) {
120
120
 
121
121
  if ($isFocused) {
122
122
  return {
123
- borderLeftColor: colors.borderFocus,
124
- borderRightColor: colors.borderFocus,
125
- borderTopColor: colors.borderFocus,
126
- borderBottomColor: colors.borderFocus,
123
+ borderLeftColor: colors.borderSelected,
124
+ borderRightColor: colors.borderSelected,
125
+ borderTopColor: colors.borderSelected,
126
+ borderBottomColor: colors.borderSelected,
127
127
  backgroundColor: colors.inputFillActive
128
128
  };
129
129
  }
@@ -198,10 +198,10 @@ var LayerComponent = /*#__PURE__*/function (_React$Component) {
198
198
  }, children) : children;
199
199
 
200
200
  if (typeof document !== 'undefined') {
201
- var portalContainer = mountNode || container;
202
-
203
- if (portalContainer) {
204
- return /*#__PURE__*/ReactDOM.createPortal(childrenToRender, portalContainer);
201
+ if (mountNode) {
202
+ return /*#__PURE__*/ReactDOM.createPortal(childrenToRender, mountNode);
203
+ } else if (container) {
204
+ return /*#__PURE__*/ReactDOM.createPortal(childrenToRender, container);
205
205
  }
206
206
 
207
207
  return null;
@@ -69,7 +69,11 @@ var ListItem = /*#__PURE__*/React.forwardRef(function (props, ref) {
69
69
  return /*#__PURE__*/React.createElement(Root // flowlint-next-line unclear-type:off
70
70
  , _extends({
71
71
  ref: ref,
72
- $shape: props.shape || SHAPE.DEFAULT
72
+ $shape: props.shape || SHAPE.DEFAULT,
73
+ "aria-label": props['aria-label'],
74
+ "aria-selected": props['aria-selected'],
75
+ id: props.id,
76
+ role: props.role
73
77
  }, rootProps), Artwork && /*#__PURE__*/React.createElement(ArtworkContainer, _extends({
74
78
  $artworkSize: artworkSize,
75
79
  $sublist: Boolean(props.sublist)
@@ -11,9 +11,13 @@ var MenuAdapter = /*#__PURE__*/React.forwardRef(function (props, ref) {
11
11
  return /*#__PURE__*/React.createElement(ListItem, {
12
12
  ref: ref,
13
13
  sublist: props.sublist || props.$size === 'compact',
14
+ "aria-label": props['aria-label'],
15
+ "aria-selected": props['aria-selected'],
14
16
  artwork: props.artwork,
15
17
  artworkSize: props.artworkSize,
16
18
  endEnhancer: props.endEnhancer,
19
+ id: props.id,
20
+ role: props.role,
17
21
  overrides: mergeOverrides({
18
22
  Root: {
19
23
  props: {
@@ -12,13 +12,6 @@ export var LocaleContext = /*#__PURE__*/React.createContext(en_US);
12
12
  var LocaleProvider = function LocaleProvider(props) {
13
13
  var locale = props.locale,
14
14
  children = props.children;
15
-
16
- if (process.env.NODE_ENV !== "production") {
17
- if (locale.datepicker && locale.datepicker.timePickerAriaLabel) {
18
- console.warn('`timePickerAriaLabel` will be removed in v11 - please use timePickerAriaLabel12Hour and timePickerAriaLabel24Hour instead');
19
- }
20
- }
21
-
22
15
  return /*#__PURE__*/React.createElement(LocaleContext.Provider, {
23
16
  value: extend({}, en_US, locale)
24
17
  }, children);
@@ -149,7 +149,6 @@ var MenuStatefulContainerInner = /*#__PURE__*/function (_React$Component) {
149
149
  _this.typeAheadChars = '';
150
150
  }, 500);
151
151
  var nextIndex = prevIndex;
152
- event.preventDefault();
153
152
 
154
153
  var list = _this.getItems();
155
154
 
@@ -94,7 +94,7 @@ export var StyledOptgroupHeader = styled('li', function (props) {
94
94
  var paddingX = props.$theme.sizing.scale300;
95
95
  var paddingY = props.$theme.sizing.scale200;
96
96
  return _objectSpread(_objectSpread({}, props.$theme.typography.font250), {}, {
97
- color: props.$theme.colors.colorPrimary,
97
+ color: props.$theme.colors.contentPrimary,
98
98
  paddingTop: paddingY,
99
99
  paddingBottom: paddingY,
100
100
  paddingRight: paddingX,
@@ -8,4 +8,4 @@ export { default as Modal } from './modal.js';
8
8
  export { default as ModalButton } from './modal-button.js';
9
9
  export { default as FocusOnce } from './focus-once.js';
10
10
  export { SIZE, ROLE, CLOSE_SOURCE } from './constants.js';
11
- export { Root as StyledRoot, Backdrop as StyledBackdrop, Dialog as StyledDialog, DialogContainer as StyledDialogContainer, Close as StyledClose, ModalHeader, ModalBody, ModalFooter } from './styled-components.js';
11
+ export { Root as StyledRoot, Dialog as StyledDialog, DialogContainer as StyledDialogContainer, Close as StyledClose, ModalHeader, ModalBody, ModalFooter } from './styled-components.js';
@@ -52,7 +52,7 @@ import { LocaleContext } from '../locale/index.js';
52
52
  import { getOverrides } from '../helpers/overrides.js';
53
53
  import { Layer } from '../layer/index.js';
54
54
  import { SIZE, ROLE, CLOSE_SOURCE } from './constants.js';
55
- import { Root as StyledRoot, Backdrop as StyledBackdrop, Dialog as StyledDialog, DialogContainer as StyledDialogContainer, Close as StyledClose } from './styled-components.js';
55
+ import { Root as StyledRoot, Dialog as StyledDialog, DialogContainer as StyledDialogContainer, Close as StyledClose } from './styled-components.js';
56
56
  import { CloseIcon } from './close-icon.js';
57
57
  import { isFocusVisible, forkFocus, forkBlur } from '../utils/focusVisible.js';
58
58
 
@@ -76,11 +76,13 @@ var Modal = /*#__PURE__*/function (_React$Component) {
76
76
 
77
77
  _defineProperty(_assertThisInitialized(_this), "animateStartTimer", void 0);
78
78
 
79
+ _defineProperty(_assertThisInitialized(_this), "dialogContainerRef", /*#__PURE__*/React.createRef());
80
+
79
81
  _defineProperty(_assertThisInitialized(_this), "lastFocus", null);
80
82
 
81
83
  _defineProperty(_assertThisInitialized(_this), "lastMountNodeOverflowStyle", null);
82
84
 
83
- _defineProperty(_assertThisInitialized(_this), "_refs", {});
85
+ _defineProperty(_assertThisInitialized(_this), "rootRef", /*#__PURE__*/React.createRef());
84
86
 
85
87
  _defineProperty(_assertThisInitialized(_this), "state", {
86
88
  isVisible: false,
@@ -113,10 +115,7 @@ var Modal = /*#__PURE__*/function (_React$Component) {
113
115
  });
114
116
 
115
117
  _defineProperty(_assertThisInitialized(_this), "onDocumentClick", function (e) {
116
- if (e.target && e.target instanceof HTMLElement && ( // Handles modal closure when unstable_ModalBackdropScroll is set to true
117
- e.target.contains(_this.getRef('DialogContainer').current) || // Handles modal closure when unstable_ModalBackdropScroll is set to false
118
- // $FlowFixMe
119
- e.target.contains(_this.getRef('DeprecatedBackdrop').current))) {
118
+ if (e.target && e.target instanceof HTMLElement && e.target.contains(_this.dialogContainerRef.current)) {
120
119
  _this.onBackdropClick();
121
120
  }
122
121
  });
@@ -147,18 +146,10 @@ var Modal = /*#__PURE__*/function (_React$Component) {
147
146
  value: function componentDidMount() {
148
147
  this.setState({
149
148
  mounted: true
150
- }); // TODO(v11)
149
+ });
151
150
 
152
151
  if (process.env.NODE_ENV !== "production") {
153
- if (!this.props.unstable_ModalBackdropScroll) {
154
- console.warn("Consider setting 'unstable_ModalBackdropScroll' prop to true\n to prepare for the next major version upgrade. 'unstable_ModalBackdropScroll'\n prop will be removed in the next major version but implemented as the default behavior.");
155
- }
156
-
157
- if (this.props.overrides && this.props.overrides.Backdrop) {
158
- console.warn("Backdrop element will be removed in the next major version in favor of\n DialogContainer element that will have the backdrop styles and backdrop click handle.\n Consider setting 'unstable_ModalBackdropScroll' prop to true that will apply backdrop\n styles to DialogContainer enable modal scrolling while cursor in over the backdrop.\n Then pass backdrop overrides to DialogContainer instead. Tha will help you with\n the next major version upgrade.");
159
- } // $FlowFixMe: flow complains that this prop doesn't exist
160
-
161
-
152
+ // $FlowFixMe: flow complains that this prop doesn't exist
162
153
  if (this.props.closable) {
163
154
  console.warn('The property `closable` is not supported on the Modal. Did you mean `closeable`?');
164
155
  }
@@ -226,7 +217,7 @@ var Modal = /*#__PURE__*/function (_React$Component) {
226
217
 
227
218
  // Sometimes scroll starts past zero, possibly due to animation
228
219
  // Reset scroll to 0 (other libraries do this as well)
229
- var rootRef = this.getRef('Root').current;
220
+ var rootRef = this.rootRef.current;
230
221
 
231
222
  if (rootRef) {
232
223
  rootRef.scrollTop = 0;
@@ -266,8 +257,7 @@ var Modal = /*#__PURE__*/function (_React$Component) {
266
257
  isOpen = _this$props.isOpen,
267
258
  size = _this$props.size,
268
259
  role = _this$props.role,
269
- closeable = _this$props.closeable,
270
- unstable_ModalBackdropScroll = _this$props.unstable_ModalBackdropScroll;
260
+ closeable = _this$props.closeable;
271
261
  return {
272
262
  $animate: animate,
273
263
  $isVisible: this.state.isVisible,
@@ -275,7 +265,6 @@ var Modal = /*#__PURE__*/function (_React$Component) {
275
265
  $size: size,
276
266
  $role: role,
277
267
  $closeable: !!closeable,
278
- $unstable_ModalBackdropScroll: unstable_ModalBackdropScroll,
279
268
  $isFocusVisible: this.state.isFocusVisible
280
269
  };
281
270
  }
@@ -298,15 +287,6 @@ var Modal = /*#__PURE__*/function (_React$Component) {
298
287
  var children = this.props.children;
299
288
  return typeof children === 'function' ? children() : children;
300
289
  }
301
- }, {
302
- key: "getRef",
303
- value: function getRef(component) {
304
- if (!this._refs[component]) {
305
- this._refs[component] = /*#__PURE__*/React.createRef();
306
- }
307
-
308
- return this._refs[component];
309
- }
310
290
  }, {
311
291
  key: "renderModal",
312
292
  value: function renderModal() {
@@ -317,15 +297,12 @@ var Modal = /*#__PURE__*/function (_React$Component) {
317
297
  overrides = _this$props2$override === void 0 ? {} : _this$props2$override,
318
298
  closeable = _this$props2.closeable,
319
299
  role = _this$props2.role,
320
- unstable_ModalBackdropScroll = _this$props2.unstable_ModalBackdropScroll,
321
- autofocus = _this$props2.autofocus,
322
300
  autoFocus = _this$props2.autoFocus,
323
301
  focusLock = _this$props2.focusLock,
324
302
  returnFocus = _this$props2.returnFocus;
325
303
  var RootOverride = overrides.Root,
326
304
  DialogOverride = overrides.Dialog,
327
305
  DialogContainerOverride = overrides.DialogContainer,
328
- BackdropOverride = overrides.Backdrop,
329
306
  CloseOverride = overrides.Close;
330
307
 
331
308
  var _getOverrides = getOverrides(RootOverride, StyledRoot),
@@ -333,59 +310,42 @@ var Modal = /*#__PURE__*/function (_React$Component) {
333
310
  Root = _getOverrides2[0],
334
311
  rootProps = _getOverrides2[1];
335
312
 
336
- var _getOverrides3 = getOverrides(BackdropOverride, StyledBackdrop),
313
+ var _getOverrides3 = getOverrides(DialogContainerOverride, StyledDialogContainer),
337
314
  _getOverrides4 = _slicedToArray(_getOverrides3, 2),
338
- Backdrop = _getOverrides4[0],
339
- backdropProps = _getOverrides4[1];
315
+ DialogContainer = _getOverrides4[0],
316
+ dialogContainerProps = _getOverrides4[1];
340
317
 
341
- var _getOverrides5 = getOverrides(DialogContainerOverride, StyledDialogContainer),
318
+ var _getOverrides5 = getOverrides(DialogOverride, StyledDialog),
342
319
  _getOverrides6 = _slicedToArray(_getOverrides5, 2),
343
- DialogContainer = _getOverrides6[0],
344
- dialogContainerProps = _getOverrides6[1];
320
+ Dialog = _getOverrides6[0],
321
+ dialogProps = _getOverrides6[1];
345
322
 
346
- var _getOverrides7 = getOverrides(DialogOverride, StyledDialog),
323
+ var _getOverrides7 = getOverrides(CloseOverride, StyledClose),
347
324
  _getOverrides8 = _slicedToArray(_getOverrides7, 2),
348
- Dialog = _getOverrides8[0],
349
- dialogProps = _getOverrides8[1];
350
-
351
- var _getOverrides9 = getOverrides(CloseOverride, StyledClose),
352
- _getOverrides10 = _slicedToArray(_getOverrides9, 2),
353
- Close = _getOverrides10[0],
354
- closeProps = _getOverrides10[1];
325
+ Close = _getOverrides8[0],
326
+ closeProps = _getOverrides8[1];
355
327
 
356
328
  var sharedProps = this.getSharedProps();
357
329
  var children = this.getChildren();
358
-
359
- if (autofocus === false && process.env.NODE_ENV !== "production") {
360
- console.warn("The prop \"autofocus\" is deprecated in favor of \"autoFocus\" to be consistent across the project.\n The property \"autofocus\" will be removed in a future major version.");
361
- } // Handles backdrop click when `unstable_ModalBackdropScroll` is set to true
362
-
363
-
364
- if (dialogContainerProps.ref) {
365
- this._refs.DialogContainer = dialogContainerProps.ref;
366
- }
367
-
368
- var dialogContainerConditionalProps = unstable_ModalBackdropScroll ? {
369
- ref: this.getRef('DialogContainer')
370
- } : {};
371
330
  return /*#__PURE__*/React.createElement(LocaleContext.Consumer, null, function (locale) {
372
331
  return /*#__PURE__*/React.createElement(FocusLock, {
373
332
  disabled: !focusLock // Allow focus to escape when UI is within an iframe
374
333
  ,
375
334
  crossFrame: false,
376
335
  returnFocus: returnFocus,
377
- autoFocus: autofocus !== null ? autofocus : autoFocus
336
+ autoFocus: autoFocus
378
337
  }, /*#__PURE__*/React.createElement(Root, _extends({
379
- "data-baseweb": "modal",
380
- ref: _this3.getRef('Root')
381
- }, sharedProps, rootProps), /*#__PURE__*/React.createElement(Backdrop, _extends({}, unstable_ModalBackdropScroll ? {} : {
382
- ref: _this3.getRef('DeprecatedBackdrop')
383
- }, sharedProps, backdropProps)), /*#__PURE__*/React.createElement(DialogContainer, _extends({}, dialogContainerConditionalProps, sharedProps, dialogContainerProps), /*#__PURE__*/React.createElement(Dialog, _extends({
338
+ "data-baseweb": "modal" // flowlint-next-line unclear-type:off
339
+ ,
340
+ ref: _this3.rootRef
341
+ }, sharedProps, rootProps), /*#__PURE__*/React.createElement(DialogContainer // flowlint-next-line unclear-type:off
342
+ , _extends({
343
+ ref: _this3.dialogContainerRef
344
+ }, sharedProps, dialogContainerProps), /*#__PURE__*/React.createElement(Dialog, _extends({
384
345
  tabIndex: -1,
385
346
  "aria-modal": true,
386
347
  "aria-label": "dialog",
387
- role: role,
388
- ref: _this3.getRef('Dialog')
348
+ role: role
389
349
  }, sharedProps, dialogProps), children, closeable ? /*#__PURE__*/React.createElement(Close, _extends({
390
350
  "aria-label": locale.modal.close,
391
351
  onClick: _this3.onCloseClick
@@ -421,8 +381,6 @@ var Modal = /*#__PURE__*/function (_React$Component) {
421
381
 
422
382
  _defineProperty(Modal, "defaultProps", {
423
383
  animate: true,
424
- // TODO(v11): remove
425
- autofocus: null,
426
384
  autoFocus: true,
427
385
  focusLock: true,
428
386
  returnFocus: true,
@@ -431,8 +389,7 @@ _defineProperty(Modal, "defaultProps", {
431
389
  isOpen: false,
432
390
  overrides: {},
433
391
  role: ROLE.dialog,
434
- size: SIZE.default,
435
- unstable_ModalBackdropScroll: false
392
+ size: SIZE.default
436
393
  });
437
394
 
438
395
  export default Modal;
@@ -47,61 +47,29 @@ export var Root = styled('div', function (props) {
47
47
  };
48
48
  });
49
49
  Root.displayName = "Root";
50
- export var Backdrop = styled('div', function (props) {
50
+ export var DialogContainer = styled('div', function (props) {
51
51
  var $animate = props.$animate,
52
52
  $isOpen = props.$isOpen,
53
53
  $isVisible = props.$isVisible,
54
- $theme = props.$theme,
55
- $unstable_ModalBackdropScroll = props.$unstable_ModalBackdropScroll;
56
-
57
- if ($unstable_ModalBackdropScroll) {
58
- return {};
59
- }
60
-
61
- return _objectSpread({
62
- position: 'fixed',
63
- right: 0,
64
- bottom: 0,
65
- top: 0,
66
- left: 0,
67
- backgroundColor: 'rgba(0, 0, 0, 0.5)',
68
- // Remove grey highlight
69
- WebkitTapHighlightColor: 'transparent',
70
- // Disable scroll capabilities.
71
- touchAction: 'none',
72
- opacity: $isVisible && $isOpen ? 1 : 0
73
- }, $animate ? {
54
+ $theme = props.$theme;
55
+ var animationRules = {
74
56
  transitionProperty: 'opacity',
75
57
  transitionDuration: $theme.animation.timing400,
76
58
  transitionTimingFunction: $theme.animation.easeOutCurve
77
- } : null);
78
- });
79
- Backdrop.displayName = "Backdrop";
80
- export var DialogContainer = styled('div', function (props) {
81
- var $animate = props.$animate,
82
- $isOpen = props.$isOpen,
83
- $isVisible = props.$isVisible,
84
- $theme = props.$theme,
85
- $unstable_ModalBackdropScroll = props.$unstable_ModalBackdropScroll;
59
+ };
86
60
  return _objectSpread({
87
61
  display: 'flex',
88
62
  alignItems: 'center',
89
63
  justifyContent: 'center',
90
64
  width: '100%',
91
65
  minHeight: '100%',
92
- pointerEvents: 'none',
93
- userSelect: 'none'
94
- }, $unstable_ModalBackdropScroll ? _objectSpread({
66
+ userSelect: 'none',
95
67
  pointerEvents: 'auto',
96
68
  backgroundColor: 'rgba(0, 0, 0, 0.5)',
97
69
  // Remove grey highlight
98
70
  WebkitTapHighlightColor: 'transparent',
99
71
  opacity: $isVisible && $isOpen ? 1 : 0
100
- }, $animate ? {
101
- transitionProperty: 'opacity',
102
- transitionDuration: $theme.animation.timing400,
103
- transitionTimingFunction: $theme.animation.easeOutCurve
104
- } : null) : {});
72
+ }, $animate ? animationRules : null);
105
73
  });
106
74
  DialogContainer.displayName = "DialogContainer";
107
75
  export var Dialog = styled('div', function (props) {
@@ -9,7 +9,7 @@ var defaultProps = {
9
9
  'aria-label': 'Please enter a phone number without the country dial code.',
10
10
  'aria-describedby': null,
11
11
  'aria-labelledby': null,
12
- clearable: false,
12
+ clearable: true,
13
13
  focusLock: false,
14
14
  country: {
15
15
  label: 'United States',
@@ -6,13 +6,9 @@ LICENSE file in the root directory of this source tree.
6
6
  */
7
7
  export { default as PhoneInput } from './phone-input.js';
8
8
  export { default as PhoneInputLite } from './phone-input-lite.js';
9
- export { default as PhoneInputNext } from './phone-input-next.js';
10
9
  export { default as StatefulPhoneInput } from './stateful-phone-input.js';
11
- export { default as StatefulPhoneInputNext } from './stateful-phone-input-next.js';
12
10
  export { default as StatefulPhoneInputContainer } from './stateful-phone-input-container.js';
13
11
  export { default as CountryPicker } from './country-picker.js';
14
- export { default as CountrySelect } from './country-select.js';
15
- export { default as CountrySelectDropdown } from './country-select-dropdown.js';
16
12
  export { default as Flag, StyledFlag } from './flag.js';
17
13
  export * from './constants.js';
18
14
  export * from './styled-components.js';
@@ -12,6 +12,8 @@ function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(
12
12
 
13
13
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
14
 
15
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
16
+
15
17
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
16
18
 
17
19
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
@@ -23,19 +25,17 @@ This source code is licensed under the MIT license found in the
23
25
  LICENSE file in the root directory of this source tree.
24
26
  */
25
27
  import React, { useRef } from 'react';
28
+ import CountryPicker from './country-picker.js';
29
+ import defaultProps from './default-props.js';
30
+ import { StyledPhoneInputRoot, StyledDialCode } from './styled-components.js';
26
31
  import { Input as DefaultInput } from '../input/index.js';
27
- import CountrySelect from './country-select.js';
28
32
  import { getOverrides, mergeOverrides } from '../helpers/overrides.js';
29
- import defaultProps from './default-props.js';
30
-
31
- var country = defaultProps.country,
32
- lightDefaultProps = _objectWithoutProperties(defaultProps, ["country"]);
33
-
34
- PhoneInputLite.defaultProps = lightDefaultProps;
33
+ PhoneInputLite.defaultProps = defaultProps;
35
34
  export default function PhoneInputLite(props) {
36
35
  var ariaLabel = props['aria-label'],
37
36
  ariaLabelledBy = props['aria-labelledby'],
38
37
  ariaDescribedBy = props['aria-describedby'],
38
+ clearable = props.clearable,
39
39
  countries = props.countries,
40
40
  country = props.country,
41
41
  disabled = props.disabled,
@@ -53,45 +53,67 @@ export default function PhoneInputLite(props) {
53
53
  required = props.required,
54
54
  size = props.size,
55
55
  text = props.text,
56
- restProps = _objectWithoutProperties(props, ["aria-label", "aria-labelledby", "aria-describedby", "countries", "country", "disabled", "error", "id", "mapIsoToLabel", "maxDropdownHeight", "maxDropdownWidth", "name", "onTextChange", "onCountryChange", "overrides", "placeholder", "positive", "required", "size", "text"]);
56
+ restProps = _objectWithoutProperties(props, ["aria-label", "aria-labelledby", "aria-describedby", "clearable", "countries", "country", "disabled", "error", "id", "mapIsoToLabel", "maxDropdownHeight", "maxDropdownWidth", "name", "onTextChange", "onCountryChange", "overrides", "placeholder", "positive", "required", "size", "text"]);
57
57
 
58
58
  var inputRef = useRef(null);
59
+ var baseDialCodeOverride = {
60
+ component: StyledDialCode,
61
+ style: function style(_ref) {
62
+ var _ref$$theme = _ref.$theme,
63
+ direction = _ref$$theme.direction,
64
+ sizing = _ref$$theme.sizing;
65
+ var marginDir = direction === 'rtl' ? 'marginRight' : 'marginLeft';
66
+ return _defineProperty({}, marginDir, sizing.scale600);
67
+ },
68
+ props: {
69
+ children: country.dialCode
70
+ }
71
+ };
72
+ var mergedDialCodeOverride = mergeOverrides({
73
+ DialCode: baseDialCodeOverride
74
+ }, {
75
+ DialCode: overrides.DialCode || {}
76
+ });
59
77
  var baseOverrides = {
60
78
  Input: {
61
- style: function style(_ref) {
62
- var sizing = _ref.$theme.sizing;
63
- return {
64
- paddingLeft: sizing.scale100
65
- };
79
+ style: function style(_ref3) {
80
+ var _ref3$$theme = _ref3.$theme,
81
+ direction = _ref3$$theme.direction,
82
+ sizing = _ref3$$theme.sizing;
83
+ var paddingDir = direction === 'rtl' ? 'paddingRight' : 'paddingLeft';
84
+ return _defineProperty({}, paddingDir, sizing.scale100);
66
85
  }
67
86
  },
68
- Before: {
69
- component: CountrySelect,
70
- props: {
71
- countries: countries,
72
- country: country,
73
- disabled: disabled,
74
- error: error,
75
- inputRef: inputRef,
76
- mapIsoToLabel: mapIsoToLabel,
77
- maxDropdownHeight: maxDropdownHeight,
78
- maxDropdownWidth: maxDropdownWidth,
79
- onCountryChange: onCountryChange,
80
- overrides: overrides,
81
- positive: positive,
82
- required: required,
83
- size: size
84
- }
85
- }
87
+ Before: mergedDialCodeOverride.DialCode
86
88
  };
87
89
 
88
- var _getOverrides = getOverrides(overrides.Input, DefaultInput),
90
+ var _getOverrides = getOverrides(overrides.Root, StyledPhoneInputRoot),
89
91
  _getOverrides2 = _slicedToArray(_getOverrides, 2),
90
- Input = _getOverrides2[0],
91
- inputProps = _getOverrides2[1];
92
+ Root = _getOverrides2[0],
93
+ rootProps = _getOverrides2[1];
94
+
95
+ var _getOverrides3 = getOverrides(overrides.Input, DefaultInput),
96
+ _getOverrides4 = _slicedToArray(_getOverrides3, 2),
97
+ Input = _getOverrides4[0],
98
+ inputProps = _getOverrides4[1];
92
99
 
93
100
  inputProps.overrides = mergeOverrides(baseOverrides, inputProps.overrides);
94
- return /*#__PURE__*/React.createElement(Input, _extends({
101
+ return /*#__PURE__*/React.createElement(Root, _extends({}, rootProps, {
102
+ "data-baseweb": "phone-input"
103
+ }), /*#__PURE__*/React.createElement(CountryPicker, {
104
+ country: country,
105
+ countries: countries,
106
+ disabled: disabled,
107
+ error: error,
108
+ mapIsoToLabel: mapIsoToLabel,
109
+ maxDropdownHeight: maxDropdownHeight,
110
+ maxDropdownWidth: maxDropdownWidth,
111
+ onCountryChange: onCountryChange,
112
+ overrides: overrides,
113
+ positive: positive,
114
+ required: required,
115
+ size: size
116
+ }), /*#__PURE__*/React.createElement(Input, _extends({
95
117
  "aria-label": ariaLabel,
96
118
  "aria-labelledby": ariaLabelledBy,
97
119
  "aria-describedby": ariaDescribedBy,
@@ -108,6 +130,7 @@ export default function PhoneInputLite(props) {
108
130
  placeholder: placeholder,
109
131
  size: size,
110
132
  type: "text",
111
- value: text
112
- }, restProps, inputProps));
133
+ value: text,
134
+ clearable: clearable
135
+ }, restProps, inputProps)));
113
136
  }
@@ -122,10 +122,6 @@ var Radio = /*#__PURE__*/function (_React$Component) {
122
122
  if (this.props.autoFocus && (_this$props$inputRef = this.props.inputRef) !== null && _this$props$inputRef !== void 0 && _this$props$inputRef.current) {
123
123
  this.props.inputRef.current.focus();
124
124
  }
125
-
126
- if (process.env.NODE_ENV !== "production" && this.props.isError) {
127
- console.warn('baseui:Radio Property "isError" will be removed in the next major version. Use "error" property instead.');
128
- }
129
125
  }
130
126
  }, {
131
127
  key: "render",
@@ -169,7 +165,6 @@ var Radio = /*#__PURE__*/function (_React$Component) {
169
165
  $disabled: this.props.disabled,
170
166
  $hasDescription: !!this.props.description,
171
167
  $isActive: this.state.isActive,
172
- $isError: this.props.isError,
173
168
  $error: this.props.error,
174
169
  $isFocused: this.props.isFocused,
175
170
  $isFocusVisible: this.props.isFocused && this.props.isFocusVisible,
@@ -194,7 +189,7 @@ var Radio = /*#__PURE__*/function (_React$Component) {
194
189
  onMouseDown: this.onMouseDown,
195
190
  onMouseUp: this.onMouseUp
196
191
  }, sharedProps, rootProps), isLabelTopLeft(this.props.labelPlacement) && label, /*#__PURE__*/React.createElement(RadioMarkOuter, _extends({}, sharedProps, radioMarkOuterProps), /*#__PURE__*/React.createElement(RadioMarkInner, _extends({}, sharedProps, radioMarkInnerProps))), /*#__PURE__*/React.createElement(Input, _extends({
197
- "aria-invalid": this.props.error || this.props.isError || null,
192
+ "aria-invalid": this.props.error || null,
198
193
  checked: this.props.checked,
199
194
  disabled: this.props.disabled,
200
195
  name: this.props.name,
@@ -224,7 +219,6 @@ _defineProperty(Radio, "defaultProps", {
224
219
  autoFocus: false,
225
220
  inputRef: /*#__PURE__*/React.createRef(),
226
221
  align: 'vertical',
227
- isError: false,
228
222
  error: false,
229
223
  onChange: function onChange() {},
230
224
  onMouseEnter: function onMouseEnter() {},