baseui 10.3.0 → 10.7.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 (213) hide show
  1. package/app-nav-bar/user-menu.js +1 -0
  2. package/app-nav-bar/user-menu.js.flow +1 -0
  3. package/button/styled-components.js +1 -1
  4. package/button/styled-components.js.flow +4 -1
  5. package/card/styled-components.js +0 -1
  6. package/card/styled-components.js.flow +0 -1
  7. package/combobox/combobox.js +5 -1
  8. package/combobox/combobox.js.flow +4 -0
  9. package/combobox/index.d.ts +6 -3
  10. package/data-table/column-datetime.js +2 -0
  11. package/data-table/column-datetime.js.flow +2 -0
  12. package/data-table/data-table.js +13 -3
  13. package/data-table/data-table.js.flow +20 -4
  14. package/data-table/types.js.flow +2 -1
  15. package/datepicker/calendar-header.js +255 -109
  16. package/datepicker/calendar-header.js.flow +282 -145
  17. package/datepicker/calendar.js +6 -1
  18. package/datepicker/calendar.js.flow +5 -1
  19. package/datepicker/constants.js +9 -2
  20. package/datepicker/constants.js.flow +7 -0
  21. package/datepicker/datepicker.js +135 -73
  22. package/datepicker/datepicker.js.flow +161 -62
  23. package/datepicker/day.js +2 -0
  24. package/datepicker/day.js.flow +2 -0
  25. package/datepicker/index.d.ts +8 -0
  26. package/datepicker/month.js +4 -0
  27. package/datepicker/month.js.flow +3 -0
  28. package/datepicker/styled-components.js +116 -56
  29. package/datepicker/styled-components.js.flow +101 -36
  30. package/datepicker/types.js.flow +18 -1
  31. package/datepicker/utils/calendar-header-helpers.js +51 -0
  32. package/datepicker/utils/calendar-header-helpers.js.flow +53 -0
  33. package/datepicker/utils/date-helpers.js +1 -1
  34. package/datepicker/utils/date-helpers.js.flow +1 -1
  35. package/datepicker/week.js +1 -0
  36. package/datepicker/week.js.flow +1 -0
  37. package/dnd-list/index.js.flow +2 -1
  38. package/dnd-list/list.js +1 -2
  39. package/dnd-list/list.js.flow +1 -1
  40. package/dnd-list/styled-components.js +1 -1
  41. package/dnd-list/styled-components.js.flow +1 -0
  42. package/drawer/close-icon.js +3 -2
  43. package/drawer/close-icon.js.flow +2 -2
  44. package/drawer/drawer.js +5 -2
  45. package/drawer/drawer.js.flow +2 -2
  46. package/es/app-nav-bar/user-menu.js +1 -0
  47. package/es/button/styled-components.js +1 -1
  48. package/es/card/styled-components.js +0 -1
  49. package/es/combobox/combobox.js +5 -1
  50. package/es/data-table/column-datetime.js +2 -0
  51. package/es/data-table/data-table.js +13 -3
  52. package/es/datepicker/calendar-header.js +204 -93
  53. package/es/datepicker/calendar.js +7 -2
  54. package/es/datepicker/constants.js +6 -1
  55. package/es/datepicker/datepicker.js +70 -42
  56. package/es/datepicker/day.js +2 -0
  57. package/es/datepicker/month.js +3 -0
  58. package/es/datepicker/styled-components.js +98 -37
  59. package/es/datepicker/types.js +1 -1
  60. package/es/datepicker/utils/calendar-header-helpers.js +34 -0
  61. package/es/datepicker/utils/date-helpers.js +1 -1
  62. package/es/datepicker/week.js +1 -0
  63. package/es/dnd-list/index.js +2 -1
  64. package/es/dnd-list/list.js +1 -2
  65. package/es/dnd-list/styled-components.js +1 -0
  66. package/es/drawer/close-icon.js +3 -2
  67. package/es/drawer/drawer.js +5 -2
  68. package/es/helper/helper.js +1 -0
  69. package/es/layer/layer.js +8 -0
  70. package/es/list/list-heading.js +17 -6
  71. package/es/map-marker/constants.js +69 -0
  72. package/es/map-marker/fixed-marker.js +98 -0
  73. package/es/map-marker/floating-marker.js +65 -0
  74. package/es/map-marker/index.js +9 -0
  75. package/es/map-marker/pin-head.js +108 -0
  76. package/es/map-marker/styled-components.js +156 -0
  77. package/es/map-marker/types.js +8 -0
  78. package/es/menu/maybe-child-menu.js +1 -0
  79. package/es/popover/popover.js +6 -5
  80. package/es/popover/stateful-container.js +8 -2
  81. package/es/rating/emoticon-rating.js +3 -1
  82. package/es/rating/star-rating.js +3 -1
  83. package/es/select/select-component.js +20 -5
  84. package/es/select/styled-components.js +34 -4
  85. package/es/snackbar/snackbar-context.js +16 -4
  86. package/es/spinner/styled-components.js +1 -1
  87. package/es/table-semantic/styled-components.js +6 -4
  88. package/es/table-semantic/table-builder.js +3 -0
  89. package/es/themes/dark-theme/color-component-tokens.js +1 -1
  90. package/es/themes/light-theme/color-component-tokens.js +9 -9
  91. package/es/themes/shared/lighting.js +5 -1
  92. package/es/timepicker/timepicker.js +16 -11
  93. package/es/tooltip/styled-components.js +8 -0
  94. package/es/tooltip/tooltip.js +1 -0
  95. package/esm/app-nav-bar/user-menu.js +1 -0
  96. package/esm/button/styled-components.js +1 -1
  97. package/esm/card/styled-components.js +0 -1
  98. package/esm/combobox/combobox.js +5 -1
  99. package/esm/data-table/column-datetime.js +2 -0
  100. package/esm/data-table/data-table.js +13 -3
  101. package/esm/datepicker/calendar-header.js +255 -110
  102. package/esm/datepicker/calendar.js +7 -2
  103. package/esm/datepicker/constants.js +6 -1
  104. package/esm/datepicker/datepicker.js +136 -74
  105. package/esm/datepicker/day.js +2 -0
  106. package/esm/datepicker/month.js +3 -0
  107. package/esm/datepicker/styled-components.js +112 -55
  108. package/esm/datepicker/types.js +1 -1
  109. package/esm/datepicker/utils/calendar-header-helpers.js +45 -0
  110. package/esm/datepicker/utils/date-helpers.js +1 -1
  111. package/esm/datepicker/week.js +1 -0
  112. package/esm/dnd-list/index.js +2 -1
  113. package/esm/dnd-list/list.js +1 -2
  114. package/esm/dnd-list/styled-components.js +1 -1
  115. package/esm/drawer/close-icon.js +3 -2
  116. package/esm/drawer/drawer.js +5 -2
  117. package/esm/helper/helper.js +1 -0
  118. package/esm/layer/layer.js +8 -0
  119. package/esm/list/list-heading.js +17 -6
  120. package/esm/map-marker/constants.js +62 -0
  121. package/esm/map-marker/fixed-marker.js +137 -0
  122. package/esm/map-marker/floating-marker.js +94 -0
  123. package/esm/map-marker/index.js +9 -0
  124. package/esm/map-marker/pin-head.js +144 -0
  125. package/esm/map-marker/styled-components.js +168 -0
  126. package/esm/map-marker/types.js +8 -0
  127. package/esm/menu/maybe-child-menu.js +1 -0
  128. package/esm/popover/popover.js +6 -5
  129. package/esm/popover/stateful-container.js +8 -2
  130. package/esm/rating/emoticon-rating.js +2 -2
  131. package/esm/rating/star-rating.js +2 -2
  132. package/esm/select/select-component.js +19 -5
  133. package/esm/select/styled-components.js +28 -4
  134. package/esm/snackbar/snackbar-context.js +16 -4
  135. package/esm/spinner/styled-components.js +1 -1
  136. package/esm/table-semantic/styled-components.js +6 -4
  137. package/esm/table-semantic/table-builder.js +3 -0
  138. package/esm/themes/dark-theme/color-component-tokens.js +1 -1
  139. package/esm/themes/light-theme/color-component-tokens.js +9 -9
  140. package/esm/themes/shared/lighting.js +5 -1
  141. package/esm/timepicker/timepicker.js +17 -11
  142. package/esm/tooltip/styled-components.js +8 -0
  143. package/esm/tooltip/tooltip.js +1 -0
  144. package/helper/helper.js +1 -0
  145. package/helper/helper.js.flow +1 -0
  146. package/layer/layer.js +8 -0
  147. package/layer/layer.js.flow +9 -0
  148. package/link/index.d.ts +1 -0
  149. package/list/index.d.ts +36 -0
  150. package/list/list-heading.js +24 -7
  151. package/list/list-heading.js.flow +17 -8
  152. package/map-marker/constants.js +82 -0
  153. package/map-marker/constants.js.flow +74 -0
  154. package/map-marker/fixed-marker.js +152 -0
  155. package/map-marker/fixed-marker.js.flow +137 -0
  156. package/map-marker/floating-marker.js +109 -0
  157. package/map-marker/floating-marker.js.flow +102 -0
  158. package/map-marker/index.d.ts +105 -0
  159. package/map-marker/index.js +55 -0
  160. package/map-marker/index.js.flow +23 -0
  161. package/map-marker/package.json +4 -0
  162. package/map-marker/pin-head.js +159 -0
  163. package/map-marker/pin-head.js.flow +155 -0
  164. package/map-marker/styled-components.js +184 -0
  165. package/map-marker/styled-components.js.flow +177 -0
  166. package/map-marker/types.js +11 -0
  167. package/map-marker/types.js.flow +114 -0
  168. package/menu/index.d.ts +7 -0
  169. package/menu/maybe-child-menu.js +1 -0
  170. package/menu/maybe-child-menu.js.flow +1 -0
  171. package/menu/types.js.flow +12 -0
  172. package/modal/index.d.ts +1 -1
  173. package/modal/types.js.flow +4 -1
  174. package/package.json +5 -3
  175. package/popover/index.d.ts +2 -1
  176. package/popover/popover.js +6 -5
  177. package/popover/popover.js.flow +11 -4
  178. package/popover/stateful-container.js +8 -2
  179. package/popover/stateful-container.js.flow +5 -0
  180. package/popover/types.js.flow +6 -1
  181. package/rating/emoticon-rating.js +2 -2
  182. package/rating/emoticon-rating.js.flow +4 -1
  183. package/rating/star-rating.js +2 -2
  184. package/rating/star-rating.js.flow +4 -1
  185. package/select/select-component.js +19 -5
  186. package/select/select-component.js.flow +19 -5
  187. package/select/styled-components.js +28 -4
  188. package/select/styled-components.js.flow +30 -2
  189. package/select/types.js.flow +9 -0
  190. package/snackbar/index.d.ts +21 -16
  191. package/snackbar/snackbar-context.js +15 -4
  192. package/snackbar/snackbar-context.js.flow +15 -3
  193. package/spinner/styled-components.js +1 -1
  194. package/spinner/styled-components.js.flow +1 -1
  195. package/table-semantic/styled-components.js +6 -4
  196. package/table-semantic/styled-components.js.flow +6 -4
  197. package/table-semantic/table-builder.js +3 -0
  198. package/table-semantic/table-builder.js.flow +3 -0
  199. package/themes/dark-theme/color-component-tokens.js +1 -1
  200. package/themes/dark-theme/color-component-tokens.js.flow +1 -1
  201. package/themes/light-theme/color-component-tokens.js +9 -9
  202. package/themes/light-theme/color-component-tokens.js.flow +9 -9
  203. package/themes/shared/lighting.js +5 -1
  204. package/themes/shared/lighting.js.flow +4 -0
  205. package/themes/types.js.flow +4 -0
  206. package/timepicker/index.d.ts +1 -0
  207. package/timepicker/timepicker.js +17 -11
  208. package/timepicker/timepicker.js.flow +31 -12
  209. package/timepicker/types.js.flow +10 -0
  210. package/tooltip/styled-components.js +8 -0
  211. package/tooltip/styled-components.js.flow +8 -0
  212. package/tooltip/tooltip.js +1 -0
  213. package/tooltip/tooltip.js.flow +6 -1
@@ -12,12 +12,38 @@ LICENSE file in the root directory of this source tree.
12
12
  */
13
13
  import { styled } from '../styles/index.js';
14
14
  import getDayStateCode from './utils/day-state.js';
15
- import { ORIENTATION } from './constants.js';
15
+ import { ORIENTATION, DENSITY } from './constants.js';
16
16
  /**
17
17
  * Main component container element
18
18
  */
19
19
 
20
- export var StyledInputWrapper = styled('div', function () {
20
+ export var StyledInputWrapper = styled('div', function (props) {
21
+ var $separateRangeInputs = props.$separateRangeInputs;
22
+ return _objectSpread({
23
+ width: '100%'
24
+ }, $separateRangeInputs ? {
25
+ display: 'flex',
26
+ justifyContent: 'center'
27
+ } : {});
28
+ });
29
+ StyledInputWrapper.displayName = "StyledInputWrapper";
30
+ export var StyledInputLabel = styled('div', function (_ref) {
31
+ var $theme = _ref.$theme;
32
+ return _objectSpread(_objectSpread({}, $theme.typography.LabelMedium), {}, {
33
+ marginBottom: $theme.sizing.scale300
34
+ });
35
+ });
36
+ StyledInputLabel.displayName = "StyledInputLabel";
37
+ export var StyledStartDate = styled('div', function (_ref2) {
38
+ var $theme = _ref2.$theme;
39
+ return {
40
+ width: '100%',
41
+ marginRight: $theme.sizing.scale300
42
+ };
43
+ });
44
+ StyledStartDate.displayName = "StyledStartDate";
45
+ export var StyledEndDate = styled('div', function (_ref3) {
46
+ var $theme = _ref3.$theme;
21
47
  return {
22
48
  width: '100%'
23
49
  };
@@ -26,7 +52,7 @@ export var StyledInputWrapper = styled('div', function () {
26
52
  * Main component container element
27
53
  */
28
54
 
29
- StyledInputWrapper.displayName = "StyledInputWrapper";
55
+ StyledEndDate.displayName = "StyledEndDate";
30
56
  export var StyledRoot = styled('div', function (props) {
31
57
  var _props$$theme = props.$theme,
32
58
  typography = _props$$theme.typography,
@@ -53,17 +79,18 @@ export var StyledMonthContainer = styled('div', function (props) {
53
79
  });
54
80
  StyledMonthContainer.displayName = "StyledMonthContainer";
55
81
  export var StyledCalendarContainer = styled('div', function (props) {
56
- var sizing = props.$theme.sizing;
82
+ var sizing = props.$theme.sizing,
83
+ $density = props.$density;
57
84
  return {
58
- paddingTop: sizing.scale400,
59
- paddingBottom: sizing.scale500,
60
- paddingLeft: sizing.scale600,
61
- paddingRight: sizing.scale600
85
+ paddingTop: sizing.scale300,
86
+ paddingBottom: $density === DENSITY.high ? sizing.scale400 : sizing.scale300,
87
+ paddingLeft: sizing.scale500,
88
+ paddingRight: sizing.scale500
62
89
  };
63
90
  });
64
91
  StyledCalendarContainer.displayName = "StyledCalendarContainer";
65
- export var StyledSelectorContainer = styled('div', function (_ref) {
66
- var $theme = _ref.$theme;
92
+ export var StyledSelectorContainer = styled('div', function (_ref4) {
93
+ var $theme = _ref4.$theme;
67
94
  var textAlign = $theme.direction === 'rtl' ? 'right' : 'left';
68
95
  return {
69
96
  marginBottom: $theme.sizing.scale600,
@@ -75,16 +102,18 @@ export var StyledSelectorContainer = styled('div', function (_ref) {
75
102
  StyledSelectorContainer.displayName = "StyledSelectorContainer";
76
103
  export var StyledCalendarHeader = styled('div', function (props) {
77
104
  var _props$$theme2 = props.$theme,
105
+ typography = _props$$theme2.typography,
78
106
  borders = _props$$theme2.borders,
79
107
  colors = _props$$theme2.colors,
80
- sizing = _props$$theme2.sizing;
81
- return {
108
+ sizing = _props$$theme2.sizing,
109
+ $density = props.$density;
110
+ return _objectSpread(_objectSpread({}, $density === DENSITY.high ? typography.LabelMedium : typography.LabelLarge), {}, {
82
111
  color: colors.calendarHeaderForeground,
83
112
  display: 'flex',
84
113
  justifyContent: 'space-between',
85
114
  alignItems: 'center',
86
- paddingTop: sizing.scale500,
87
- paddingBottom: sizing.scale500,
115
+ paddingTop: sizing.scale600,
116
+ paddingBottom: sizing.scale300,
88
117
  paddingLeft: sizing.scale600,
89
118
  paddingRight: sizing.scale600,
90
119
  backgroundColor: colors.calendarHeaderBackground,
@@ -93,8 +122,8 @@ export var StyledCalendarHeader = styled('div', function (props) {
93
122
  borderBottomRightRadius: 0,
94
123
  borderBottomLeftRadius: 0,
95
124
  // account for the left/right arrow heights
96
- minHeight: "calc(".concat(sizing.scale800, " + ").concat(sizing.scale0, ")")
97
- };
125
+ minHeight: $density === DENSITY.high ? "calc(".concat(sizing.scale800, " + ").concat(sizing.scale0, ")") : sizing.scale950
126
+ });
98
127
  });
99
128
  StyledCalendarHeader.displayName = "StyledCalendarHeader";
100
129
  export var StyledMonthHeader = styled('div', function (props) {
@@ -106,19 +135,24 @@ export var StyledMonthHeader = styled('div', function (props) {
106
135
  });
107
136
  StyledMonthHeader.displayName = "StyledMonthHeader";
108
137
  export var StyledMonthYearSelectButton = styled('button', function (props) {
109
- return _objectSpread(_objectSpread({}, props.$theme.typography.font200), {}, {
138
+ var _props$$theme3 = props.$theme,
139
+ typography = _props$$theme3.typography,
140
+ colors = _props$$theme3.colors,
141
+ $isFocusVisible = props.$isFocusVisible,
142
+ $density = props.$density;
143
+ return _objectSpread(_objectSpread({}, $density === DENSITY.high ? typography.LabelMedium : typography.LabelLarge), {}, {
110
144
  alignItems: 'center',
111
145
  backgroundColor: 'transparent',
112
146
  borderLeftWidth: 0,
113
147
  borderRightWidth: 0,
114
148
  borderTopWidth: 0,
115
149
  borderBottomWidth: 0,
116
- color: props.$theme.colors.calendarHeaderForeground,
150
+ color: colors.calendarHeaderForeground,
117
151
  cursor: 'pointer',
118
152
  display: 'flex',
119
153
  outline: 'none',
120
154
  ':focus': {
121
- boxShadow: props.$isFocusVisible ? "0 0 0 3px ".concat(props.$theme.colors.accent) : 'none'
155
+ boxShadow: $isFocusVisible ? "0 0 0 3px ".concat(colors.accent) : 'none'
122
156
  }
123
157
  });
124
158
  });
@@ -132,12 +166,13 @@ export var StyledMonthYearSelectIconContainer = styled('span', function (props)
132
166
  });
133
167
  StyledMonthYearSelectIconContainer.displayName = "StyledMonthYearSelectIconContainer";
134
168
 
135
- function getArrowBtnStyle(_ref3) {
136
- var $theme = _ref3.$theme,
137
- $disabled = _ref3.$disabled,
138
- $isFocusVisible = _ref3.$isFocusVisible;
169
+ function getArrowBtnStyle(_ref6) {
170
+ var $theme = _ref6.$theme,
171
+ $disabled = _ref6.$disabled,
172
+ $isFocusVisible = _ref6.$isFocusVisible;
139
173
  return {
140
174
  boxSizing: 'border-box',
175
+ display: 'flex',
141
176
  color: $disabled ? $theme.colors.calendarHeaderForegroundDisabled : $theme.colors.calendarHeaderForeground,
142
177
  cursor: $disabled ? 'default' : 'pointer',
143
178
  backgroundColor: 'transparent',
@@ -149,8 +184,6 @@ function getArrowBtnStyle(_ref3) {
149
184
  paddingBottom: '0',
150
185
  paddingLeft: '0',
151
186
  paddingRight: '0',
152
- marginLeft: '6px',
153
- marginRight: '6px',
154
187
  marginBottom: 0,
155
188
  marginTop: 0,
156
189
  outline: 'none',
@@ -175,22 +208,22 @@ export var StyledWeek = styled('div', function (props) {
175
208
  return {
176
209
  whiteSpace: 'nowrap',
177
210
  display: 'flex',
178
- marginBottom: sizing.scale100
211
+ marginBottom: sizing.scale0
179
212
  };
180
213
  });
181
214
  StyledWeek.displayName = "StyledWeek";
182
215
 
183
216
  function generateDayStyles(defaultCode, defaultStyle) {
184
- var _ref4;
217
+ var _ref7;
185
218
 
186
219
  var codeForSM = defaultCode.substr(0, 12) + '1' + defaultCode.substr(12 + 1);
187
220
  var codeForEM = defaultCode.substr(0, 13) + '1' + defaultCode.substr(13 + 1);
188
- return _ref4 = {}, _defineProperty(_ref4, defaultCode, defaultStyle), _defineProperty(_ref4, codeForSM, defaultStyle), _defineProperty(_ref4, codeForEM, defaultStyle), _ref4;
221
+ return _ref7 = {}, _defineProperty(_ref7, defaultCode, defaultStyle), _defineProperty(_ref7, codeForSM, defaultStyle), _defineProperty(_ref7, codeForEM, defaultStyle), _ref7;
189
222
  } // eslint-disable-next-line flowtype/no-weak-types
190
223
 
191
224
 
192
- function getDayStyles(code, _ref5) {
193
- var colors = _ref5.colors;
225
+ function getDayStyles(code, _ref8) {
226
+ var colors = _ref8.colors;
194
227
  var undefinedDayStyle = {
195
228
  ':before': {
196
229
  content: null
@@ -393,24 +426,43 @@ export var StyledDay = styled('div', function (props) {
393
426
  $outsideMonth = props.$outsideMonth,
394
427
  $outsideMonthWithinRange = props.$outsideMonthWithinRange,
395
428
  $hasDateLabel = props.$hasDateLabel,
396
- _props$$theme3 = props.$theme,
397
- colors = _props$$theme3.colors,
398
- sizing = _props$$theme3.sizing;
429
+ $density = props.$density,
430
+ _props$$theme4 = props.$theme,
431
+ colors = _props$$theme4.colors,
432
+ typography = _props$$theme4.typography,
433
+ sizing = _props$$theme4.sizing;
399
434
  var code = getDayStateCode(props);
400
- return _objectSpread(_objectSpread({
435
+ var height;
436
+
437
+ if ($hasDateLabel) {
438
+ if ($density === DENSITY.high) {
439
+ height = '60px';
440
+ } else {
441
+ height = '70px';
442
+ }
443
+ } else {
444
+ if ($density === DENSITY.high) {
445
+ height = '40px';
446
+ } else {
447
+ height = '48px';
448
+ }
449
+ }
450
+
451
+ return _objectSpread(_objectSpread(_objectSpread({}, $density === DENSITY.high ? typography.ParagraphSmall : typography.ParagraphMedium), {}, {
401
452
  boxSizing: 'border-box',
402
453
  position: 'relative',
403
454
  cursor: $disabled || !$peekNextMonth && $outsideMonth ? 'default' : 'pointer',
404
455
  color: colors.calendarForeground,
405
456
  display: 'inline-block',
406
- width: sizing.scale1000,
407
- height: $hasDateLabel ? '60px' : sizing.scale1000,
408
- lineHeight: sizing.scale800,
457
+ width: $density === DENSITY.high ? '42px' : '50px',
458
+ height: height,
459
+ // setting lineHeight equal to the contents height to vertically center the text
460
+ lineHeight: $density === DENSITY.high ? sizing.scale700 : sizing.scale900,
409
461
  textAlign: 'center',
410
462
  paddingTop: sizing.scale300,
411
463
  paddingBottom: sizing.scale300,
412
- paddingLeft: sizing.scale200,
413
- paddingRight: sizing.scale200,
464
+ paddingLeft: sizing.scale300,
465
+ paddingRight: sizing.scale300,
414
466
  marginTop: 0,
415
467
  marginBottom: 0,
416
468
  marginLeft: 0,
@@ -431,10 +483,10 @@ export var StyledDay = styled('div', function (props) {
431
483
  display: 'inline-block',
432
484
  boxShadow: $isFocusVisible ? "0 0 0 3px ".concat(colors.accent) : 'none',
433
485
  backgroundColor: $selected ? colors.calendarDayBackgroundSelectedHighlighted : $pseudoSelected && $isHighlighted ? colors.calendarDayBackgroundPseudoSelectedHighlighted : colors.calendarBackground,
434
- height: '100%',
486
+ height: $hasDateLabel ? '100%' : $density === DENSITY.high ? '42px' : '50px',
435
487
  width: '100%',
436
488
  position: 'absolute',
437
- top: 0,
489
+ top: $hasDateLabel ? 0 : '-1px',
438
490
  left: 0,
439
491
  paddingTop: sizing.scale200,
440
492
  paddingBottom: sizing.scale200,
@@ -450,10 +502,10 @@ export var StyledDay = styled('div', function (props) {
450
502
  borderBottomColor: colors.borderSelected,
451
503
  borderRightColor: colors.borderSelected,
452
504
  borderLeftColor: colors.borderSelected,
453
- borderTopLeftRadius: $hasDateLabel ? sizing.scale700 : '100%',
454
- borderTopRightRadius: $hasDateLabel ? sizing.scale700 : '100%',
455
- borderBottomLeftRadius: $hasDateLabel ? sizing.scale700 : '100%',
456
- borderBottomRightRadius: $hasDateLabel ? sizing.scale700 : '100%'
505
+ borderTopLeftRadius: $hasDateLabel ? sizing.scale800 : '100%',
506
+ borderTopRightRadius: $hasDateLabel ? sizing.scale800 : '100%',
507
+ borderBottomLeftRadius: $hasDateLabel ? sizing.scale800 : '100%',
508
+ borderBottomRightRadius: $hasDateLabel ? sizing.scale800 : '100%'
457
509
  }, getDayStyles(code, props.$theme)[':after'] || {}), $outsideMonthWithinRange ? {
458
510
  content: null
459
511
  } : {})
@@ -495,9 +547,9 @@ export var StyledDay = styled('div', function (props) {
495
547
  });
496
548
  StyledDay.displayName = "StyledDay";
497
549
  export var StyledDayLabel = styled('div', function (props) {
498
- var _props$$theme4 = props.$theme,
499
- typography = _props$$theme4.typography,
500
- colors = _props$$theme4.colors,
550
+ var _props$$theme5 = props.$theme,
551
+ typography = _props$$theme5.typography,
552
+ colors = _props$$theme5.colors,
501
553
  $selected = props.$selected;
502
554
  return _objectSpread(_objectSpread({}, typography.ParagraphXSmall), {}, {
503
555
  color: $selected ? colors.contentInverseTertiary : colors.contentTertiary
@@ -505,16 +557,22 @@ export var StyledDayLabel = styled('div', function (props) {
505
557
  });
506
558
  StyledDayLabel.displayName = "StyledDayLabel";
507
559
  export var StyledWeekdayHeader = styled('div', function (props) {
508
- var sizing = props.$theme.sizing;
509
- return {
560
+ var _props$$theme6 = props.$theme,
561
+ typography = _props$$theme6.typography,
562
+ colors = _props$$theme6.colors,
563
+ sizing = _props$$theme6.sizing,
564
+ $density = props.$density;
565
+ return _objectSpread(_objectSpread({}, typography.LabelMedium), {}, {
566
+ color: colors.contentTertiary,
510
567
  boxSizing: 'border-box',
511
568
  position: 'relative',
512
569
  cursor: 'default',
513
570
  display: 'inline-block',
514
- width: sizing.scale1000,
515
- height: sizing.scale1000,
516
- lineHeight: sizing.scale800,
571
+ width: $density === DENSITY.high ? '42px' : '50px',
572
+ height: $density === DENSITY.high ? '40px' : '48px',
517
573
  textAlign: 'center',
574
+ // setting lineHeight equal to the contents height to vertically center the text
575
+ lineHeight: sizing.scale900,
518
576
  paddingTop: sizing.scale300,
519
577
  paddingBottom: sizing.scale300,
520
578
  paddingLeft: sizing.scale200,
@@ -523,8 +581,7 @@ export var StyledWeekdayHeader = styled('div', function (props) {
523
581
  marginBottom: 0,
524
582
  marginLeft: 0,
525
583
  marginRight: 0,
526
- color: 'inherit',
527
584
  backgroundColor: 'transparent'
528
- };
585
+ });
529
586
  });
530
587
  StyledWeekdayHeader.displayName = "StyledWeekdayHeader";
@@ -7,4 +7,4 @@ LICENSE file in the root directory of this source tree.
7
7
 
8
8
  /* eslint-disable flowtype/generic-spacing */
9
9
  import * as React from 'react';
10
- import { ORIENTATION, STATE_CHANGE_TYPE } from './constants.js';
10
+ import { ORIENTATION, STATE_CHANGE_TYPE, DENSITY } from './constants.js';
@@ -0,0 +1,45 @@
1
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
2
+
3
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
4
+
5
+ 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; }
6
+
7
+ /*
8
+ Copyright (c) Uber Technologies, Inc.
9
+
10
+ This source code is licensed under the MIT license found in the
11
+ LICENSE file in the root directory of this source tree.
12
+ */
13
+ import { DEFAULT_MONTHS } from '../constants.js';
14
+
15
+ var getDefaultMonthItems = function getDefaultMonthItems(formatMonthLabel) {
16
+ return DEFAULT_MONTHS.map(function (month) {
17
+ return {
18
+ id: month.toString(),
19
+ label: formatMonthLabel(month)
20
+ };
21
+ });
22
+ };
23
+
24
+ export var filterMonthItems = function filterMonthItems(monthItems, filterList) {
25
+ return monthItems.map(function (month) {
26
+ if (!filterList.includes(Number(month.id))) {
27
+ return _objectSpread(_objectSpread({}, month), {}, {
28
+ disabled: true
29
+ });
30
+ }
31
+
32
+ return month;
33
+ });
34
+ };
35
+ export var getFilteredMonthItems = function getFilteredMonthItems(_ref) {
36
+ var filterMonthsList = _ref.filterMonthsList,
37
+ formatMonthLabel = _ref.formatMonthLabel;
38
+ var monthItems = getDefaultMonthItems(formatMonthLabel);
39
+
40
+ if (filterMonthsList) {
41
+ monthItems = filterMonthItems(monthItems, filterMonthsList);
42
+ }
43
+
44
+ return monthItems;
45
+ };
@@ -44,7 +44,7 @@ var DateHelpers = function DateHelpers(_adapter) {
44
44
  monthNumber: 'M',
45
45
  dayOfMonthNumber: 'd',
46
46
  weekday: 'EEEE',
47
- weekdaymin: 'EEEEE',
47
+ weekdaymin: 'EEEEEE',
48
48
  slashDate: 'yyyy/MM/dd',
49
49
  fullOrdinalWeek: 'EEEE, MMMM do yyyy',
50
50
  quarter: 'QQQ'
@@ -79,6 +79,7 @@ var Week = /*#__PURE__*/function (_React$Component) {
79
79
  adapter: _this.props.adapter,
80
80
  date: day,
81
81
  dateLabel: _this.props.dateLabel,
82
+ density: _this.props.density,
82
83
  disabled: _this.dateHelpers.isDayDisabled(day, _this.props),
83
84
  excludeDates: _this.props.excludeDates,
84
85
  filterDate: _this.props.filterDate,
@@ -4,7 +4,8 @@ Copyright (c) Uber Technologies, Inc.
4
4
  This source code is licensed under the MIT license found in the
5
5
  LICENSE file in the root directory of this source tree.
6
6
  */
7
- export { arrayMove, arrayRemove } from 'react-movable';
7
+ import { arrayMove, arrayRemove } from 'react-movable';
8
+ export { arrayMove, arrayRemove };
8
9
  export { default as StatefulList } from './stateful-list.js';
9
10
  export { default as StatefulListContainer } from './stateful-list-container.js';
10
11
  export { default as List } from './list.js'; // Constants
@@ -206,8 +206,7 @@ var StatelessList = /*#__PURE__*/function (_React$Component) {
206
206
  display: 'flex'
207
207
  })
208
208
  }), /*#__PURE__*/React.createElement(DragHandle, _extends({}, sharedProps, dragHandleProps), /*#__PURE__*/React.createElement(Grab, {
209
- size: 24,
210
- color: "#CCC"
209
+ size: 24
211
210
  })), /*#__PURE__*/React.createElement(Label, _extends({}, sharedProps, labelProps), value), removable && /*#__PURE__*/React.createElement(CloseHandle, _extends({}, sharedProps, {
212
211
  onClick: function onClick(evt) {
213
212
  evt.preventDefault();
@@ -90,7 +90,7 @@ export var DragHandle = styled('div', function (_ref4) {
90
90
 
91
91
  var $theme = _ref4.$theme;
92
92
  var marginDir = $theme.direction === 'rtl' ? 'marginLeft' : 'marginRight';
93
- return _ref5 = {}, _defineProperty(_ref5, marginDir, $theme.sizing.scale600), _defineProperty(_ref5, "width", $theme.sizing.scale800), _defineProperty(_ref5, "display", 'flex'), _defineProperty(_ref5, "alignItems", 'center'), _ref5;
93
+ return _ref5 = {}, _defineProperty(_ref5, marginDir, $theme.sizing.scale600), _defineProperty(_ref5, "width", $theme.sizing.scale800), _defineProperty(_ref5, "color", '#CCC'), _defineProperty(_ref5, "display", 'flex'), _defineProperty(_ref5, "alignItems", 'center'), _ref5;
94
94
  });
95
95
  DragHandle.displayName = "DragHandle";
96
96
  DragHandle.displayName = 'StyledDragHandle';
@@ -6,9 +6,10 @@ LICENSE file in the root directory of this source tree.
6
6
  */
7
7
  import * as React from 'react';
8
8
  import Delete from '../icon/delete.js';
9
- export function CloseIcon() {
9
+ export function CloseIcon(props) {
10
10
  return /*#__PURE__*/React.createElement(Delete, {
11
11
  size: "inherit",
12
- color: "inherit"
12
+ color: "inherit",
13
+ title: props.title
13
14
  });
14
15
  }
@@ -331,7 +331,8 @@ var Drawer = /*#__PURE__*/function (_React$Component) {
331
331
  return /*#__PURE__*/React.createElement(LocaleContext.Consumer, null, function (locale) {
332
332
  return /*#__PURE__*/React.createElement(FocusLock, {
333
333
  returnFocus: true,
334
- autoFocus: autoFocus
334
+ autoFocus: autoFocus,
335
+ noFocusGuards: true
335
336
  }, /*#__PURE__*/React.createElement(Root, _extends({
336
337
  "data-baseweb": "drawer",
337
338
  ref: _this3.getRef('Root')
@@ -343,7 +344,9 @@ var Drawer = /*#__PURE__*/function (_React$Component) {
343
344
  }, sharedProps, closeProps, {
344
345
  onFocus: forkFocus(closeProps, _this3.handleFocus),
345
346
  onBlur: forkBlur(closeProps, _this3.handleBlur)
346
- }), /*#__PURE__*/React.createElement(CloseIcon, null)) : null)));
347
+ }), /*#__PURE__*/React.createElement(CloseIcon, {
348
+ title: locale.drawer.close
349
+ })) : null)));
347
350
  });
348
351
  }
349
352
  }, {
@@ -44,6 +44,7 @@ export function Helper(props) {
44
44
  React.createElement(Popover, _extends({
45
45
  "data-baseweb": "helper"
46
46
  }, restProps, {
47
+ autoFocus: false,
47
48
  placement: placement,
48
49
  overrides: mergedOverrides
49
50
  }))
@@ -132,6 +132,14 @@ var LayerComponent = /*#__PURE__*/function (_React$Component) {
132
132
  if (host && host !== prevProps.host && prevProps.host === null) {
133
133
  this.addContainer(host);
134
134
  }
135
+
136
+ if (prevProps.isHoverLayer != this.props.isHoverLayer) {
137
+ if (this.props.isHoverLayer) {
138
+ this.context.removeDocClickHandler(this.onDocumentClick);
139
+ } else {
140
+ this.context.addDocClickHandler(this.onDocumentClick);
141
+ }
142
+ }
135
143
  }
136
144
  }, {
137
145
  key: "componentWillUnmount",
@@ -23,7 +23,7 @@ This source code is licensed under the MIT license found in the
23
23
  LICENSE file in the root directory of this source tree.
24
24
  */
25
25
  import React from 'react';
26
- import ReactIs from 'react-is';
26
+ import * as ReactIs from 'react-is';
27
27
  import { getOverrides } from '../helpers/overrides.js';
28
28
  import { StyledHeadingRoot, StyledHeadingContent, StyledHeadingContentRow, StyledHeadingEndEnhancerContainer, StyledHeadingEndEnhancerDescriptionContainer, StyledHeadingMainHeading, StyledHeadingSubHeading } from './styled-components.js';
29
29
 
@@ -50,9 +50,14 @@ function RenderNode(props) {
50
50
  return Component;
51
51
  }
52
52
 
53
+ function isMaxLinesValid(maxLines) {
54
+ return maxLines === 1 || maxLines === 2;
55
+ }
56
+
53
57
  var ListHeading = /*#__PURE__*/React.forwardRef(function (props, ref) {
54
58
  var _props$overrides = props.overrides,
55
- overrides = _props$overrides === void 0 ? {} : _props$overrides;
59
+ overrides = _props$overrides === void 0 ? {} : _props$overrides,
60
+ maxLines = props.maxLines;
56
61
  var EndEnhancer = props.endEnhancer;
57
62
  var EndEnhancerDescription = props.endEnhancerDescription;
58
63
  var SubHeading = props.subHeading;
@@ -89,15 +94,21 @@ var ListHeading = /*#__PURE__*/React.forwardRef(function (props, ref) {
89
94
 
90
95
  var isEndEnhancerString = typeof EndEnhancer === 'string';
91
96
 
92
- if (isEndEnhancerString && EndEnhancerDescription) {
93
- console.warn('endEnhancerDescription will not be rendered if endEnhancer is not a string');
97
+ if (process.env.NODE_ENV !== "production") {
98
+ if (isEndEnhancerString && EndEnhancerDescription) {
99
+ console.warn('endEnhancerDescription will not be rendered if endEnhancer is not a string');
100
+ }
101
+
102
+ if (maxLines && !isMaxLinesValid(maxLines)) {
103
+ console.warn('maxLines must be 1 or 2.');
104
+ }
94
105
  }
95
106
 
96
107
  return /*#__PURE__*/React.createElement(Root // eslint-disable-next-line flowtype/no-weak-types
97
108
  , _extends({
98
109
  ref: ref
99
110
  }, rootProps), /*#__PURE__*/React.createElement(Content, contentProps, /*#__PURE__*/React.createElement(StyledHeadingContentRow, null, /*#__PURE__*/React.createElement(HeadingContainer, _extends({
100
- $maxLines: props.maxLines
111
+ $maxLines: isMaxLinesValid(maxLines) ? maxLines : 1
101
112
  }, headingContainerProps), /*#__PURE__*/React.createElement(RenderNode, {
102
113
  component: props.heading
103
114
  })), EndEnhancer && /*#__PURE__*/React.createElement(EndEnhancerContainer, _extends({
@@ -105,7 +116,7 @@ var ListHeading = /*#__PURE__*/React.forwardRef(function (props, ref) {
105
116
  }, endEnhancerContainerProps), /*#__PURE__*/React.createElement(RenderNode, {
106
117
  component: EndEnhancer
107
118
  }))), (SubHeading || EndEnhancerDescription) && /*#__PURE__*/React.createElement(StyledHeadingContentRow, null, /*#__PURE__*/React.createElement(SubHeadingContainer, _extends({
108
- $maxLines: props.maxLines
119
+ $maxLines: isMaxLinesValid(maxLines) ? maxLines : 1
109
120
  }, subHeadingContainerProps), /*#__PURE__*/React.createElement(RenderNode, {
110
121
  component: SubHeading
111
122
  })), EndEnhancerDescription && isEndEnhancerString && /*#__PURE__*/React.createElement(EndEnhancerDescriptionContainer, endEnhancerDescriptionContainerProps, /*#__PURE__*/React.createElement(RenderNode, {
@@ -0,0 +1,62 @@
1
+ var _Object$freeze, _Object$freeze2;
2
+
3
+ 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; }
4
+
5
+ /*
6
+ Copyright (c) Uber Technologies, Inc.
7
+
8
+ This source code is licensed under the MIT license found in the
9
+ LICENSE file in the root directory of this source tree.
10
+ */
11
+ export var NEEDLE_SIZES = Object.freeze({
12
+ none: 'none',
13
+ short: 'short',
14
+ medium: 'medium',
15
+ tall: 'tall'
16
+ });
17
+ export var NEEDLE_HEIGHTS = Object.freeze((_Object$freeze = {}, _defineProperty(_Object$freeze, NEEDLE_SIZES.none, 0), _defineProperty(_Object$freeze, NEEDLE_SIZES.short, 4), _defineProperty(_Object$freeze, NEEDLE_SIZES.medium, 12), _defineProperty(_Object$freeze, NEEDLE_SIZES.tall, 20), _Object$freeze));
18
+ export var PINHEAD_SIZES_SHAPES = Object.freeze({
19
+ xSmallCircle: 'x-small-circle',
20
+ xSmallSquare: 'x-small-square',
21
+ small: 'small',
22
+ medium: 'medium',
23
+ large: 'large'
24
+ });
25
+ export var xSmallPinheadDimension = {
26
+ height: 16,
27
+ icon: 4
28
+ };
29
+ export var PINHEAD_DIMENSIONS = Object.freeze((_Object$freeze2 = {}, _defineProperty(_Object$freeze2, PINHEAD_SIZES_SHAPES.xSmallSquare, xSmallPinheadDimension), _defineProperty(_Object$freeze2, PINHEAD_SIZES_SHAPES.xSmallCircle, xSmallPinheadDimension), _defineProperty(_Object$freeze2, PINHEAD_SIZES_SHAPES.small, {
30
+ height: 24,
31
+ icon: 16
32
+ }), _defineProperty(_Object$freeze2, PINHEAD_SIZES_SHAPES.medium, {
33
+ height: 36,
34
+ icon: 16
35
+ }), _defineProperty(_Object$freeze2, PINHEAD_SIZES_SHAPES.large, {
36
+ height: 48,
37
+ icon: 24
38
+ }), _Object$freeze2));
39
+ export var PINHEAD_TYPES = Object.freeze({
40
+ floating: 'floating',
41
+ fixed: 'fixed'
42
+ });
43
+ export var FLOATING_MARKER_SIZES = Object.freeze({
44
+ small: 'small',
45
+ medium: 'medium',
46
+ large: 'large'
47
+ });
48
+ export var FLOATING_MARKER_ANCHOR_POSITIONS = Object.freeze({
49
+ none: 'none',
50
+ topLeft: 'top-left',
51
+ topRight: 'top-right',
52
+ bottomRight: 'bottom-right',
53
+ bottomLeft: 'bottom-left'
54
+ });
55
+ export var FLOATING_MARKER_ANCHOR_TYPES = Object.freeze({
56
+ circle: 'circle',
57
+ square: 'square'
58
+ });
59
+ export var dragShadowHeight = 4;
60
+ export var dragShadowMarginTop = 6;
61
+ export var dragShadowWidth = 6;
62
+ export var anchorSize = 16;