baseui 0.0.0-next-913cc0e → 0.0.0-next-ea133a6

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 (35) hide show
  1. package/breadcrumbs/breadcrumbs.js +5 -1
  2. package/breadcrumbs/breadcrumbs.js.flow +2 -2
  3. package/datepicker/utils/date-helpers.js +1 -1
  4. package/datepicker/utils/date-helpers.js.flow +1 -1
  5. package/es/breadcrumbs/breadcrumbs.js +5 -1
  6. package/es/datepicker/utils/date-helpers.js +1 -1
  7. package/es/helper/helper-steps.js +3 -1
  8. package/es/progress-steps/numbered-step.js +2 -2
  9. package/es/select/select-component.js +37 -20
  10. package/es/table-semantic/styled-components.js +14 -0
  11. package/es/table-semantic/table-builder.js +12 -5
  12. package/es/tree-view/tree-label.js +9 -1
  13. package/esm/breadcrumbs/breadcrumbs.js +5 -1
  14. package/esm/datepicker/utils/date-helpers.js +1 -1
  15. package/esm/helper/helper-steps.js +3 -1
  16. package/esm/progress-steps/numbered-step.js +2 -2
  17. package/esm/select/select-component.js +34 -20
  18. package/esm/table-semantic/styled-components.js +31 -18
  19. package/esm/table-semantic/table-builder.js +34 -23
  20. package/esm/tree-view/tree-label.js +10 -2
  21. package/header-navigation/index.d.ts +1 -0
  22. package/helper/helper-steps.js +19 -13
  23. package/helper/helper-steps.js.flow +3 -1
  24. package/package.json +9 -8
  25. package/progress-steps/numbered-step.js.flow +2 -2
  26. package/select/select-component.js +31 -17
  27. package/select/select-component.js.flow +34 -29
  28. package/table-semantic/index.d.ts +5 -8
  29. package/table-semantic/styled-components.js +33 -19
  30. package/table-semantic/styled-components.js.flow +12 -0
  31. package/table-semantic/table-builder.js +38 -22
  32. package/table-semantic/table-builder.js.flow +32 -17
  33. package/table-semantic/types.js.flow +1 -0
  34. package/tree-view/tree-label.js +10 -2
  35. package/tree-view/tree-label.js.flow +4 -4
@@ -95,7 +95,11 @@ function Breadcrumbs(props) {
95
95
  }, baseListItemProps), child, (showTrailingSeparator || index !== childrenArray.length - 1) && /*#__PURE__*/_react.default.createElement(Separator, _extends({}, baseSeparatorProps, {
96
96
  key: "separator-".concat(index)
97
97
  }), /*#__PURE__*/_react.default.createElement(_themeProvider.ThemeContext.Consumer, null, function (theme) {
98
- return theme.direction === 'rtl' ? /*#__PURE__*/_react.default.createElement(Left, baseIconProps) : /*#__PURE__*/_react.default.createElement(Right, baseIconProps);
98
+ return theme.direction === 'rtl' ? /*#__PURE__*/_react.default.createElement(Left, _extends({
99
+ size: 16
100
+ }, baseIconProps)) : /*#__PURE__*/_react.default.createElement(Right, _extends({
101
+ size: 16
102
+ }, baseIconProps));
99
103
  }))));
100
104
  });
101
105
  return /*#__PURE__*/_react.default.createElement(_index.LocaleContext.Consumer, null, function (locale) {
@@ -43,9 +43,9 @@ export function Breadcrumbs(props: BreadcrumbsPropsT) {
43
43
  <ThemeContext.Consumer>
44
44
  {(theme) =>
45
45
  theme.direction === 'rtl' ? (
46
- <Left {...baseIconProps} />
46
+ <Left size={16} {...baseIconProps} />
47
47
  ) : (
48
- <Right {...baseIconProps} />
48
+ <Right size={16} {...baseIconProps} />
49
49
  )
50
50
  }
51
51
  </ThemeContext.Consumer>
@@ -93,7 +93,7 @@ var DateHelpers = function DateHelpers(_adapter) {
93
93
  var UtilsClass = adapter.constructor;
94
94
  var className = adapter.constructor.name; // This ensures that if the adapter class isn't
95
95
  // supported it just falls back the default formats
96
- // NOTE: in e2e tests puppeteer seems to add
96
+ // NOTE: in e2e tests playwright seems to add
97
97
  // a JSHandle wrapping class to all objects
98
98
  // so className always resolves to JSHandle:e
99
99
  // and if falls back to the default
@@ -68,7 +68,7 @@ class DateHelpers<T> {
68
68
  // This ensures that if the adapter class isn't
69
69
  // supported it just falls back the default formats
70
70
 
71
- // NOTE: in e2e tests puppeteer seems to add
71
+ // NOTE: in e2e tests playwright seems to add
72
72
  // a JSHandle wrapping class to all objects
73
73
  // so className always resolves to JSHandle:e
74
74
  // and if falls back to the default
@@ -39,7 +39,11 @@ export function Breadcrumbs(props) {
39
39
  $itemIndex: index
40
40
  }, baseListItemProps), child, (showTrailingSeparator || index !== childrenArray.length - 1) && /*#__PURE__*/React.createElement(Separator, _extends({}, baseSeparatorProps, {
41
41
  key: `separator-${index}`
42
- }), /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, theme => theme.direction === 'rtl' ? /*#__PURE__*/React.createElement(Left, baseIconProps) : /*#__PURE__*/React.createElement(Right, baseIconProps)))));
42
+ }), /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, theme => theme.direction === 'rtl' ? /*#__PURE__*/React.createElement(Left, _extends({
43
+ size: 16
44
+ }, baseIconProps)) : /*#__PURE__*/React.createElement(Right, _extends({
45
+ size: 16
46
+ }, baseIconProps))))));
43
47
  });
44
48
  return /*#__PURE__*/React.createElement(LocaleContext.Consumer, null, locale => /*#__PURE__*/React.createElement(Root, _extends({
45
49
  "aria-label": props['aria-label'] || props.ariaLabel || locale.breadcrumbs.ariaLabel,
@@ -63,7 +63,7 @@ class DateHelpers {
63
63
  const UtilsClass = adapter.constructor;
64
64
  const className = adapter.constructor.name; // This ensures that if the adapter class isn't
65
65
  // supported it just falls back the default formats
66
- // NOTE: in e2e tests puppeteer seems to add
66
+ // NOTE: in e2e tests playwright seems to add
67
67
  // a JSHandle wrapping class to all objects
68
68
  // so className always resolves to JSHandle:e
69
69
  // and if falls back to the default
@@ -5,7 +5,9 @@ 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
7
  import * as React from 'react';
8
- import { ArrowLeft, ArrowRight, Check } from '../icon/index.js';
8
+ import ArrowLeft from '../icon/arrow-left.js';
9
+ import ArrowRight from '../icon/arrow-right.js';
10
+ import Check from '../icon/check.js';
9
11
  import { Button, KIND, SHAPE } from '../button/index.js';
10
12
  import { useStyletron } from '../styles/index.js';
11
13
  export function HelperSteps({
@@ -9,7 +9,7 @@ LICENSE file in the root directory of this source tree.
9
9
  import * as React from 'react';
10
10
  import { getOverrides } from '../helpers/overrides.js';
11
11
  import { StyledNumberStep, StyledNumberIcon, StyledContent, StyledContentTitle, StyledNumberContentTail, StyledContentDescription } from './styled-components.js';
12
- import StyledCheckIcon from '../icon/check.js';
12
+ import Check from '../icon/check.js';
13
13
 
14
14
  function NumberedStep({
15
15
  overrides = {},
@@ -26,7 +26,7 @@ function NumberedStep({
26
26
  const [Content, contentProps] = getOverrides(overrides.Content, StyledContent);
27
27
  const [Title, titleProps] = getOverrides(overrides.Title, StyledContentTitle);
28
28
  const [Description, descriptionProps] = getOverrides(overrides.Description, StyledContentDescription);
29
- const [CheckIcon, checkIconProps] = getOverrides(overrides.Icon, StyledCheckIcon);
29
+ const [CheckIcon, checkIconProps] = getOverrides(overrides.Icon, Check);
30
30
  const sharedProps = {
31
31
  $isCompleted: isCompleted,
32
32
  $isActive: isActive
@@ -11,7 +11,7 @@ LICENSE file in the root directory of this source tree.
11
11
 
12
12
  /* eslint-disable cup/no-undef */
13
13
  import * as React from 'react';
14
- import { getOverrides } from '../helpers/overrides.js';
14
+ import { getOverrides, mergeOverrides } from '../helpers/overrides.js';
15
15
  import DeleteAlt from '../icon/delete-alt.js';
16
16
  import TriangleDownIcon from '../icon/triangle-down.js';
17
17
  import SearchIconComponent from '../icon/search.js';
@@ -19,10 +19,10 @@ import { LocaleContext } from '../locale/index.js';
19
19
  import { Popover, PLACEMENT } from '../popover/index.js';
20
20
  import { UIDConsumer } from 'react-uid';
21
21
  import AutosizeInput from './autosize-input.js';
22
- import { TYPE, STATE_CHANGE_TYPE } from './constants.js';
22
+ import { TYPE, STATE_CHANGE_TYPE, SIZE } from './constants.js';
23
23
  import defaultProps from './default-props.js';
24
24
  import SelectDropdown from './dropdown.js';
25
- import { StyledRoot, StyledControlContainer, StyledPlaceholder, StyledValueContainer, StyledInputContainer, StyledIconsContainer, StyledSelectArrow, StyledClearIcon, StyledSearchIconContainer, StyledLoadingIndicator } from './styled-components.js';
25
+ import { StyledRoot, StyledControlContainer, StyledPlaceholder, StyledValueContainer, StyledInputContainer, StyledIconsContainer, StyledSearchIconContainer, StyledLoadingIndicator } from './styled-components.js';
26
26
  import { expandValue, normalizeOptions } from './utils/index.js';
27
27
 
28
28
  function Noop() {
@@ -812,24 +812,27 @@ class Select extends React.Component {
812
812
  return;
813
813
  }
814
814
 
815
- const sharedProps = this.getSharedProps();
815
+ const {
816
+ $size,
817
+ ...sharedProps
818
+ } = this.getSharedProps();
816
819
  const {
817
820
  overrides = {}
818
821
  } = this.props;
819
822
  const [ClearIcon, clearIconProps] = getOverrides(overrides.ClearIcon, DeleteAlt);
820
823
  const ariaLabel = this.props.multi ? 'Clear all' : 'Clear value';
824
+ const sizes = {
825
+ [SIZE.mini]: 15,
826
+ [SIZE.compact]: 15,
827
+ [SIZE.default]: 18,
828
+ [SIZE.large]: 22
829
+ };
821
830
  return /*#__PURE__*/React.createElement(ClearIcon, _extends({
822
831
  title: ariaLabel,
823
832
  "aria-label": ariaLabel,
824
833
  onClick: this.clearValue,
825
834
  role: "button",
826
- overrides: {
827
- Svg: {
828
- component: StyledClearIcon,
829
- props: overrides.ClearIcon && overrides.ClearIcon.props ? overrides.ClearIcon.props : {},
830
- style: overrides.ClearIcon && overrides.ClearIcon.style ? overrides.ClearIcon.style : {}
831
- }
832
- }
835
+ size: sizes[this.props.size] || sizes[SIZE.default]
833
836
  }, sharedProps, clearIconProps));
834
837
  }
835
838
 
@@ -838,21 +841,35 @@ class Select extends React.Component {
838
841
  return null;
839
842
  }
840
843
 
844
+ const {
845
+ $size,
846
+ ...sharedProps
847
+ } = this.getSharedProps();
841
848
  const {
842
849
  overrides = {}
843
850
  } = this.props;
844
851
  const [SelectArrow, selectArrowProps] = getOverrides(overrides.SelectArrow, TriangleDownIcon);
845
- const sharedProps = this.getSharedProps();
846
- return /*#__PURE__*/React.createElement(SelectArrow, _extends({
847
- size: 16,
848
- title: 'open',
849
- overrides: {
850
- Svg: {
851
- component: StyledSelectArrow,
852
- props: overrides.SelectArrow && overrides.SelectArrow.props ? overrides.SelectArrow.props : {},
853
- style: overrides.SelectArrow && overrides.SelectArrow.style ? overrides.SelectArrow.style : {}
852
+ selectArrowProps.overrides = mergeOverrides({
853
+ Svg: {
854
+ style: ({
855
+ $theme,
856
+ $disabled
857
+ }) => {
858
+ return {
859
+ color: $disabled ? $theme.colors.inputTextDisabled : $theme.colors.contentPrimary
860
+ };
854
861
  }
855
862
  }
863
+ }, selectArrowProps.overrides);
864
+ const sizes = {
865
+ [SIZE.mini]: 16,
866
+ [SIZE.compact]: 16,
867
+ [SIZE.default]: 20,
868
+ [SIZE.large]: 24
869
+ };
870
+ return /*#__PURE__*/React.createElement(SelectArrow, _extends({
871
+ size: sizes[this.props.size] || sizes[SIZE.default],
872
+ title: 'open'
856
873
  }, sharedProps, selectArrowProps));
857
874
  }
858
875
 
@@ -118,6 +118,20 @@ export const StyledTableHeadCellSortable = withStyle(StyledTableHeadCell, ({
118
118
  };
119
119
  });
120
120
  StyledTableHeadCellSortable.displayName = "StyledTableHeadCellSortable";
121
+ export const StyledSortIconContainer = styled('span', ({
122
+ $theme
123
+ }) => {
124
+ return {
125
+ display: 'flex',
126
+ alignItems: 'center',
127
+ position: 'absolute',
128
+ top: '50%',
129
+ right: $theme.sizing.scale500,
130
+ transform: 'translateY(-50%)'
131
+ };
132
+ }); // No longer used, but will maintain for some time to support existing usage
133
+
134
+ StyledSortIconContainer.displayName = "StyledSortIconContainer";
121
135
  export const StyledSortAscIcon = styled(ChevronUp, ({
122
136
  $theme
123
137
  }) => {
@@ -9,8 +9,11 @@ This source code is licensed under the MIT license found in the
9
9
  LICENSE file in the root directory of this source tree.
10
10
  */
11
11
  import * as React from 'react';
12
- import { StyledRoot, StyledTable, StyledTableHead, StyledTableHeadRow, StyledTableHeadCell, StyledTableHeadCellSortable, StyledTableBody, StyledTableBodyRow, StyledTableBodyCell, StyledTableLoadingMessage, StyledTableEmptyMessage, StyledSortAscIcon, StyledSortDescIcon, StyledSortNoneIcon } from './styled-components.js';
12
+ import { StyledRoot, StyledTable, StyledTableHead, StyledTableHeadRow, StyledTableHeadCell, StyledTableHeadCellSortable, StyledTableBody, StyledTableBodyRow, StyledTableBodyCell, StyledTableLoadingMessage, StyledTableEmptyMessage, StyledSortIconContainer } from './styled-components.js';
13
13
  import { getOverrides } from '../helpers/overrides.js';
14
+ import Blank from '../icon/blank.js';
15
+ import ChevronDown from '../icon/chevron-down.js';
16
+ import ChevronUp from '../icon/chevron-up.js';
14
17
  import { isFocusVisible, forkFocus, forkBlur } from '../utils/focusVisible.js';
15
18
  export default class TableBuilder extends React.Component {
16
19
  constructor(...args) {
@@ -64,9 +67,10 @@ export default class TableBuilder extends React.Component {
64
67
  const [TableBodyCell, tableBodyCellProps] = getOverrides(overrides.TableBodyCell, StyledTableBodyCell);
65
68
  const [TableLoadingMessage, tableLoadingMessageProps] = getOverrides(overrides.TableLoadingMessage, StyledTableLoadingMessage);
66
69
  const [TableEmptyMessage, tableEmptyMessageProps] = getOverrides(overrides.TableEmptyMessage, StyledTableEmptyMessage);
67
- const [SortAscIcon, sortAscIconProps] = getOverrides(overrides.SortAscIcon, StyledSortAscIcon);
68
- const [SortDescIcon, sortDescIconProps] = getOverrides(overrides.SortDescIcon, StyledSortDescIcon);
69
- const [SortNoneIcon, sortNoneIconProps] = getOverrides(overrides.SortNoneIcon, StyledSortNoneIcon);
70
+ const [SortIconContainer, sortIconContainerProps] = getOverrides(overrides.SortIconContainer, StyledSortIconContainer);
71
+ const [SortAscIcon, sortAscIconProps] = getOverrides(overrides.SortAscIcon, ChevronUp);
72
+ const [SortDescIcon, sortDescIconProps] = getOverrides(overrides.SortDescIcon, ChevronDown);
73
+ const [SortNoneIcon, sortNoneIconProps] = getOverrides(overrides.SortNoneIcon, Blank);
70
74
  const columns = React.Children.toArray(children).filter(Boolean).map(child => child.props);
71
75
 
72
76
  function renderHeader(col, colIndex, isFocusVisible) {
@@ -91,6 +95,7 @@ export default class TableBuilder extends React.Component {
91
95
  switch (col.id === sortColumn && sortOrder) {
92
96
  case 'ASC':
93
97
  sortIcon = /*#__PURE__*/React.createElement(SortAscIcon, _extends({
98
+ size: "16px",
94
99
  "aria-hidden": true,
95
100
  role: "presentation"
96
101
  }, sortAscIconProps));
@@ -99,6 +104,7 @@ export default class TableBuilder extends React.Component {
99
104
 
100
105
  case 'DESC':
101
106
  sortIcon = /*#__PURE__*/React.createElement(SortDescIcon, _extends({
107
+ size: "16px",
102
108
  "aria-hidden": true,
103
109
  role: "presentation"
104
110
  }, sortDescIconProps));
@@ -107,6 +113,7 @@ export default class TableBuilder extends React.Component {
107
113
 
108
114
  default:
109
115
  sortIcon = /*#__PURE__*/React.createElement(SortNoneIcon, _extends({
116
+ size: "16px",
110
117
  "aria-hidden": true,
111
118
  role: "presentation"
112
119
  }, sortNoneIconProps));
@@ -130,7 +137,7 @@ export default class TableBuilder extends React.Component {
130
137
  onSort && onSort(col.id);
131
138
  }
132
139
  }
133
- }, tableHeadCellSortableProps, colTableHeadCellSortableProps), col.header, sortIcon);
140
+ }, tableHeadCellSortableProps, colTableHeadCellSortableProps), col.header, /*#__PURE__*/React.createElement(SortIconContainer, sortIconContainerProps, sortIcon));
134
141
  }
135
142
 
136
143
  function renderCell(col, colIndex, row, rowIndex, lastRowindex) {
@@ -49,7 +49,15 @@ const TreeLabel = ({
49
49
  return (
50
50
  /*#__PURE__*/
51
51
  // $FlowExpectedError[cannot-spread-inexact]
52
- React.createElement(TreeItemContent, _extends({}, sharedProps, props), hasChildren && /*#__PURE__*/React.createElement(IconContainer, _extends({}, sharedProps, getOverrideProps(IconContainerOverride)), !isExpanded ? /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, theme => theme.direction === 'rtl' ? /*#__PURE__*/React.createElement(Left, _extends({}, sharedProps, LeftProps)) : /*#__PURE__*/React.createElement(Right, _extends({}, sharedProps, RightProps))) : /*#__PURE__*/React.createElement(CollapseIcon, _extends({}, sharedProps, getOverrideProps(CollapseIconOverride)))), !hasChildren && LeafIcon && /*#__PURE__*/React.createElement(LeafIconContainer, _extends({}, sharedProps, getOverrideProps(LeafIconContainerOverride)), /*#__PURE__*/React.createElement(LeafIcon, _extends({}, sharedProps, getOverrideProps(LeafIconOverride)))), typeof label === 'function' ? label(node) : label)
52
+ React.createElement(TreeItemContent, _extends({}, sharedProps, props), hasChildren && /*#__PURE__*/React.createElement(IconContainer, _extends({}, sharedProps, getOverrideProps(IconContainerOverride)), !isExpanded ? /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, theme => theme.direction === 'rtl' ? /*#__PURE__*/React.createElement(Left, _extends({
53
+ size: 16
54
+ }, sharedProps, LeftProps)) : /*#__PURE__*/React.createElement(Right, _extends({
55
+ size: 16
56
+ }, sharedProps, RightProps))) : /*#__PURE__*/React.createElement(CollapseIcon, _extends({
57
+ size: 16
58
+ }, sharedProps, getOverrideProps(CollapseIconOverride)))), !hasChildren && LeafIcon && /*#__PURE__*/React.createElement(LeafIconContainer, _extends({}, sharedProps, getOverrideProps(LeafIconContainerOverride)), /*#__PURE__*/React.createElement(LeafIcon, _extends({
59
+ size: 16
60
+ }, sharedProps, getOverrideProps(LeafIconOverride)))), typeof label === 'function' ? label(node) : label)
53
61
  );
54
62
  };
55
63
 
@@ -76,7 +76,11 @@ export function Breadcrumbs(props) {
76
76
  }, baseListItemProps), child, (showTrailingSeparator || index !== childrenArray.length - 1) && /*#__PURE__*/React.createElement(Separator, _extends({}, baseSeparatorProps, {
77
77
  key: "separator-".concat(index)
78
78
  }), /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, function (theme) {
79
- return theme.direction === 'rtl' ? /*#__PURE__*/React.createElement(Left, baseIconProps) : /*#__PURE__*/React.createElement(Right, baseIconProps);
79
+ return theme.direction === 'rtl' ? /*#__PURE__*/React.createElement(Left, _extends({
80
+ size: 16
81
+ }, baseIconProps)) : /*#__PURE__*/React.createElement(Right, _extends({
82
+ size: 16
83
+ }, baseIconProps));
80
84
  }))));
81
85
  });
82
86
  return /*#__PURE__*/React.createElement(LocaleContext.Consumer, null, function (locale) {
@@ -86,7 +86,7 @@ var DateHelpers = function DateHelpers(_adapter) {
86
86
  var UtilsClass = adapter.constructor;
87
87
  var className = adapter.constructor.name; // This ensures that if the adapter class isn't
88
88
  // supported it just falls back the default formats
89
- // NOTE: in e2e tests puppeteer seems to add
89
+ // NOTE: in e2e tests playwright seems to add
90
90
  // a JSHandle wrapping class to all objects
91
91
  // so className always resolves to JSHandle:e
92
92
  // and if falls back to the default
@@ -17,7 +17,9 @@ This source code is licensed under the MIT license found in the
17
17
  LICENSE file in the root directory of this source tree.
18
18
  */
19
19
  import * as React from 'react';
20
- import { ArrowLeft, ArrowRight, Check } from '../icon/index.js';
20
+ import ArrowLeft from '../icon/arrow-left.js';
21
+ import ArrowRight from '../icon/arrow-right.js';
22
+ import Check from '../icon/check.js';
21
23
  import { Button, KIND, SHAPE } from '../button/index.js';
22
24
  import { useStyletron } from '../styles/index.js';
23
25
  export function HelperSteps(_ref) {
@@ -21,7 +21,7 @@ LICENSE file in the root directory of this source tree.
21
21
  import * as React from 'react';
22
22
  import { getOverrides } from '../helpers/overrides.js';
23
23
  import { StyledNumberStep, StyledNumberIcon, StyledContent, StyledContentTitle, StyledNumberContentTail, StyledContentDescription } from './styled-components.js';
24
- import StyledCheckIcon from '../icon/check.js';
24
+ import Check from '../icon/check.js';
25
25
 
26
26
  function NumberedStep(_ref) {
27
27
  var _ref$overrides = _ref.overrides,
@@ -63,7 +63,7 @@ function NumberedStep(_ref) {
63
63
  Description = _getOverrides12[0],
64
64
  descriptionProps = _getOverrides12[1];
65
65
 
66
- var _getOverrides13 = getOverrides(overrides.Icon, StyledCheckIcon),
66
+ var _getOverrides13 = getOverrides(overrides.Icon, Check),
67
67
  _getOverrides14 = _slicedToArray(_getOverrides13, 2),
68
68
  CheckIcon = _getOverrides14[0],
69
69
  checkIconProps = _getOverrides14[1];
@@ -1,5 +1,9 @@
1
1
  function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
2
2
 
3
+ 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; }
4
+
5
+ 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; }
6
+
3
7
  function _extends() { _extends = Object.assign || 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); }
4
8
 
5
9
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
@@ -53,7 +57,7 @@ LICENSE file in the root directory of this source tree.
53
57
 
54
58
  /* eslint-disable cup/no-undef */
55
59
  import * as React from 'react';
56
- import { getOverrides } from '../helpers/overrides.js';
60
+ import { getOverrides, mergeOverrides } from '../helpers/overrides.js';
57
61
  import DeleteAlt from '../icon/delete-alt.js';
58
62
  import TriangleDownIcon from '../icon/triangle-down.js';
59
63
  import SearchIconComponent from '../icon/search.js';
@@ -61,10 +65,10 @@ import { LocaleContext } from '../locale/index.js';
61
65
  import { Popover, PLACEMENT } from '../popover/index.js';
62
66
  import { UIDConsumer } from 'react-uid';
63
67
  import AutosizeInput from './autosize-input.js';
64
- import { TYPE, STATE_CHANGE_TYPE } from './constants.js';
68
+ import { TYPE, STATE_CHANGE_TYPE, SIZE } from './constants.js';
65
69
  import defaultProps from './default-props.js';
66
70
  import SelectDropdown from './dropdown.js';
67
- import { StyledRoot, StyledControlContainer, StyledPlaceholder, StyledValueContainer, StyledInputContainer, StyledIconsContainer, StyledSelectArrow, StyledClearIcon, StyledSearchIconContainer, StyledLoadingIndicator } from './styled-components.js';
71
+ import { StyledRoot, StyledControlContainer, StyledPlaceholder, StyledValueContainer, StyledInputContainer, StyledIconsContainer, StyledSearchIconContainer, StyledLoadingIndicator } from './styled-components.js';
68
72
  import { expandValue, normalizeOptions } from './utils/index.js';
69
73
 
70
74
  function Noop() {
@@ -933,13 +937,18 @@ var Select = /*#__PURE__*/function (_React$Component) {
933
937
  }, {
934
938
  key: "renderClear",
935
939
  value: function renderClear() {
940
+ var _sizes;
941
+
936
942
  var isValueEntered = Boolean(this.props.value && this.props.value.length || this.state.inputValue);
937
943
 
938
944
  if (!this.props.clearable || this.props.disabled || this.props.isLoading || !isValueEntered) {
939
945
  return;
940
946
  }
941
947
 
942
- var sharedProps = this.getSharedProps();
948
+ var _this$getSharedProps = this.getSharedProps(),
949
+ $size = _this$getSharedProps.$size,
950
+ sharedProps = _objectWithoutProperties(_this$getSharedProps, ["$size"]);
951
+
943
952
  var _this$props$overrides4 = this.props.overrides,
944
953
  overrides = _this$props$overrides4 === void 0 ? {} : _this$props$overrides4;
945
954
 
@@ -949,27 +958,28 @@ var Select = /*#__PURE__*/function (_React$Component) {
949
958
  clearIconProps = _getOverrides6[1];
950
959
 
951
960
  var ariaLabel = this.props.multi ? 'Clear all' : 'Clear value';
961
+ var sizes = (_sizes = {}, _defineProperty(_sizes, SIZE.mini, 15), _defineProperty(_sizes, SIZE.compact, 15), _defineProperty(_sizes, SIZE.default, 18), _defineProperty(_sizes, SIZE.large, 22), _sizes);
952
962
  return /*#__PURE__*/React.createElement(ClearIcon, _extends({
953
963
  title: ariaLabel,
954
964
  "aria-label": ariaLabel,
955
965
  onClick: this.clearValue,
956
966
  role: "button",
957
- overrides: {
958
- Svg: {
959
- component: StyledClearIcon,
960
- props: overrides.ClearIcon && overrides.ClearIcon.props ? overrides.ClearIcon.props : {},
961
- style: overrides.ClearIcon && overrides.ClearIcon.style ? overrides.ClearIcon.style : {}
962
- }
963
- }
967
+ size: sizes[this.props.size] || sizes[SIZE.default]
964
968
  }, sharedProps, clearIconProps));
965
969
  }
966
970
  }, {
967
971
  key: "renderArrow",
968
972
  value: function renderArrow() {
973
+ var _sizes2;
974
+
969
975
  if (this.props.type !== TYPE.select) {
970
976
  return null;
971
977
  }
972
978
 
979
+ var _this$getSharedProps2 = this.getSharedProps(),
980
+ $size = _this$getSharedProps2.$size,
981
+ sharedProps = _objectWithoutProperties(_this$getSharedProps2, ["$size"]);
982
+
973
983
  var _this$props$overrides5 = this.props.overrides,
974
984
  overrides = _this$props$overrides5 === void 0 ? {} : _this$props$overrides5;
975
985
 
@@ -978,17 +988,21 @@ var Select = /*#__PURE__*/function (_React$Component) {
978
988
  SelectArrow = _getOverrides8[0],
979
989
  selectArrowProps = _getOverrides8[1];
980
990
 
981
- var sharedProps = this.getSharedProps();
982
- return /*#__PURE__*/React.createElement(SelectArrow, _extends({
983
- size: 16,
984
- title: 'open',
985
- overrides: {
986
- Svg: {
987
- component: StyledSelectArrow,
988
- props: overrides.SelectArrow && overrides.SelectArrow.props ? overrides.SelectArrow.props : {},
989
- style: overrides.SelectArrow && overrides.SelectArrow.style ? overrides.SelectArrow.style : {}
991
+ selectArrowProps.overrides = mergeOverrides({
992
+ Svg: {
993
+ style: function style(_ref4) {
994
+ var $theme = _ref4.$theme,
995
+ $disabled = _ref4.$disabled;
996
+ return {
997
+ color: $disabled ? $theme.colors.inputTextDisabled : $theme.colors.contentPrimary
998
+ };
990
999
  }
991
1000
  }
1001
+ }, selectArrowProps.overrides);
1002
+ var sizes = (_sizes2 = {}, _defineProperty(_sizes2, SIZE.mini, 16), _defineProperty(_sizes2, SIZE.compact, 16), _defineProperty(_sizes2, SIZE.default, 20), _defineProperty(_sizes2, SIZE.large, 24), _sizes2);
1003
+ return /*#__PURE__*/React.createElement(SelectArrow, _extends({
1004
+ size: sizes[this.props.size] || sizes[SIZE.default],
1005
+ title: 'open'
992
1006
  }, sharedProps, selectArrowProps));
993
1007
  }
994
1008
  }, {
@@ -115,8 +115,21 @@ export var StyledTableHeadCellSortable = withStyle(StyledTableHeadCell, function
115
115
  };
116
116
  });
117
117
  StyledTableHeadCellSortable.displayName = "StyledTableHeadCellSortable";
118
- export var StyledSortAscIcon = styled(ChevronUp, function (_ref7) {
118
+ export var StyledSortIconContainer = styled('span', function (_ref7) {
119
119
  var $theme = _ref7.$theme;
120
+ return {
121
+ display: 'flex',
122
+ alignItems: 'center',
123
+ position: 'absolute',
124
+ top: '50%',
125
+ right: $theme.sizing.scale500,
126
+ transform: 'translateY(-50%)'
127
+ };
128
+ }); // No longer used, but will maintain for some time to support existing usage
129
+
130
+ StyledSortIconContainer.displayName = "StyledSortIconContainer";
131
+ export var StyledSortAscIcon = styled(ChevronUp, function (_ref8) {
132
+ var $theme = _ref8.$theme;
120
133
  return {
121
134
  position: 'absolute',
122
135
  top: '50%',
@@ -125,8 +138,8 @@ export var StyledSortAscIcon = styled(ChevronUp, function (_ref7) {
125
138
  };
126
139
  });
127
140
  StyledSortAscIcon.displayName = "StyledSortAscIcon";
128
- export var StyledSortDescIcon = styled(ChevronDown, function (_ref8) {
129
- var $theme = _ref8.$theme;
141
+ export var StyledSortDescIcon = styled(ChevronDown, function (_ref9) {
142
+ var $theme = _ref9.$theme;
130
143
  return {
131
144
  position: 'absolute',
132
145
  top: '50%',
@@ -135,8 +148,8 @@ export var StyledSortDescIcon = styled(ChevronDown, function (_ref8) {
135
148
  };
136
149
  });
137
150
  StyledSortDescIcon.displayName = "StyledSortDescIcon";
138
- export var StyledSortNoneIcon = styled(Blank, function (_ref9) {
139
- var $theme = _ref9.$theme;
151
+ export var StyledSortNoneIcon = styled(Blank, function (_ref10) {
152
+ var $theme = _ref10.$theme;
140
153
  return {
141
154
  position: 'absolute',
142
155
  top: '50%',
@@ -145,13 +158,13 @@ export var StyledSortNoneIcon = styled(Blank, function (_ref9) {
145
158
  };
146
159
  });
147
160
  StyledSortNoneIcon.displayName = "StyledSortNoneIcon";
148
- export var StyledTableBody = styled('tbody', function (_ref10) {
149
- var $theme = _ref10.$theme;
161
+ export var StyledTableBody = styled('tbody', function (_ref11) {
162
+ var $theme = _ref11.$theme;
150
163
  return {};
151
164
  });
152
165
  StyledTableBody.displayName = "StyledTableBody";
153
- export var StyledTableBodyRow = styled('tr', function (_ref11) {
154
- var $theme = _ref11.$theme;
166
+ export var StyledTableBodyRow = styled('tr', function (_ref12) {
167
+ var $theme = _ref12.$theme;
155
168
  return {
156
169
  ':hover': {
157
170
  backgroundColor: $theme.colors.tableStripedBackground
@@ -159,15 +172,15 @@ export var StyledTableBodyRow = styled('tr', function (_ref11) {
159
172
  };
160
173
  });
161
174
  StyledTableBodyRow.displayName = "StyledTableBodyRow";
162
- export var StyledTableBodyCell = styled('td', function (_ref12) {
175
+ export var StyledTableBodyCell = styled('td', function (_ref13) {
163
176
  var _notLastChild2;
164
177
 
165
- var $theme = _ref12.$theme,
166
- $size = _ref12.$size,
167
- $divider = _ref12.$divider,
168
- $isNumeric = _ref12.$isNumeric,
169
- $isLastRow = _ref12.$isLastRow,
170
- $isSortable = _ref12.$isSortable;
178
+ var $theme = _ref13.$theme,
179
+ $size = _ref13.$size,
180
+ $divider = _ref13.$divider,
181
+ $isNumeric = _ref13.$isNumeric,
182
+ $isLastRow = _ref13.$isLastRow,
183
+ $isSortable = _ref13.$isSortable;
171
184
  var borderDir = $theme.direction === 'rtl' ? 'Left' : 'Right';
172
185
  var borderVertical = $divider === DIVIDER.vertical || $divider === DIVIDER.grid;
173
186
  var borderHorizontal = $divider === undefined || $divider === DIVIDER.horizontal || $divider === DIVIDER.grid;
@@ -187,8 +200,8 @@ export var StyledTableBodyCell = styled('td', function (_ref12) {
187
200
  });
188
201
  });
189
202
  StyledTableBodyCell.displayName = "StyledTableBodyCell";
190
- export var StyledTableLoadingMessage = styled('div', function (_ref13) {
191
- var $theme = _ref13.$theme;
203
+ export var StyledTableLoadingMessage = styled('div', function (_ref14) {
204
+ var $theme = _ref14.$theme;
192
205
  return _objectSpread(_objectSpread({}, $theme.typography.ParagraphSmall), {}, {
193
206
  color: $theme.colors.contentPrimary,
194
207
  padding: $theme.sizing.scale600