baseui 0.0.0-next-014abd6 → 0.0.0-next-ac6ef6c

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 (44) hide show
  1. package/es/mobile-header/constants.js +10 -0
  2. package/es/mobile-header/index.js +10 -0
  3. package/es/mobile-header/mobile-header.js +111 -0
  4. package/es/mobile-header/styled-components.js +68 -0
  5. package/es/mobile-header/types.js +1 -0
  6. package/es/slider/slider.js +2 -1
  7. package/es/stepper/index.js +9 -0
  8. package/es/stepper/stepper.js +90 -0
  9. package/es/stepper/styled-components.js +20 -0
  10. package/es/stepper/types.js +1 -0
  11. package/esm/mobile-header/constants.js +10 -0
  12. package/esm/mobile-header/index.js +10 -0
  13. package/esm/mobile-header/mobile-header.js +158 -0
  14. package/esm/mobile-header/styled-components.js +79 -0
  15. package/esm/mobile-header/types.js +1 -0
  16. package/esm/slider/slider.js +3 -1
  17. package/esm/stepper/index.js +9 -0
  18. package/esm/stepper/stepper.js +146 -0
  19. package/esm/stepper/styled-components.js +21 -0
  20. package/esm/stepper/types.js +1 -0
  21. package/mobile-header/constants.d.ts +4 -0
  22. package/mobile-header/constants.js +18 -0
  23. package/mobile-header/index.d.ts +4 -0
  24. package/mobile-header/index.js +60 -0
  25. package/mobile-header/index.js.flow +54 -0
  26. package/mobile-header/mobile-header.d.ts +4 -0
  27. package/mobile-header/mobile-header.js +173 -0
  28. package/mobile-header/package.json +4 -0
  29. package/mobile-header/styled-components.d.ts +12 -0
  30. package/mobile-header/styled-components.js +86 -0
  31. package/mobile-header/types.d.ts +26 -0
  32. package/mobile-header/types.js +5 -0
  33. package/package.json +1 -1
  34. package/slider/slider.js +3 -1
  35. package/stepper/index.d.ts +3 -0
  36. package/stepper/index.js +46 -0
  37. package/stepper/index.js.flow +36 -0
  38. package/stepper/package.json +4 -0
  39. package/stepper/stepper.d.ts +4 -0
  40. package/stepper/stepper.js +162 -0
  41. package/stepper/styled-components.d.ts +1 -0
  42. package/stepper/styled-components.js +30 -0
  43. package/stepper/types.d.ts +17 -0
  44. package/stepper/types.js +5 -0
@@ -0,0 +1,10 @@
1
+ /*
2
+ Copyright (c) Uber Technologies, Inc.
3
+
4
+ This source code is licensed under the MIT license found in the
5
+ LICENSE file in the root directory of this source tree.
6
+ */
7
+ export const TYPE = Object.freeze({
8
+ fixed: 'fixed',
9
+ floating: 'floating'
10
+ });
@@ -0,0 +1,10 @@
1
+ /*
2
+ Copyright (c) Uber Technologies, Inc.
3
+
4
+ This source code is licensed under the MIT license found in the
5
+ LICENSE file in the root directory of this source tree.
6
+ */
7
+ export { default as MobileHeader } from './mobile-header';
8
+ export * from './constants';
9
+ export * from './styled-components';
10
+ export * from './types';
@@ -0,0 +1,111 @@
1
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
3
+ /*
4
+ Copyright (c) Uber Technologies, Inc.
5
+
6
+ This source code is licensed under the MIT license found in the
7
+ LICENSE file in the root directory of this source tree.
8
+ */
9
+ import * as React from 'react';
10
+ import { getOverrides } from '../helpers/overrides';
11
+ import { Button, KIND, SHAPE } from '../button';
12
+ import { StyledRoot, StyledNavContainer, StyledTitle, StyledActionButtonsContainer } from './styled-components';
13
+ import { TYPE } from './constants';
14
+ import { useStyletron } from '../styles/index';
15
+
16
+ const renderButtonContent = content => {
17
+ if (typeof content === 'string') {
18
+ return content;
19
+ }
20
+
21
+ const Icon = content;
22
+ return /*#__PURE__*/React.createElement(Icon, {
23
+ size: 32
24
+ });
25
+ };
26
+
27
+ const DefaultHeaderButton = ({
28
+ children,
29
+ type,
30
+ ...restProps
31
+ }) => {
32
+ const [, theme] = useStyletron();
33
+ const isFloating = type === TYPE.floating;
34
+ const hasTextContent = typeof children === 'string';
35
+ const shouldHaveTrailingMargin = isFloating || !hasTextContent;
36
+ const trailingMargin = theme.direction === 'rtl' ? {
37
+ marginLeft: theme.sizing.scale300
38
+ } : {
39
+ marginRight: theme.sizing.scale300
40
+ };
41
+ const style = { ...(!hasTextContent ? {
42
+ height: '48px',
43
+ width: '48px',
44
+ paddingTop: 0,
45
+ paddingBottom: 0,
46
+ paddingLeft: 0,
47
+ paddingRight: 0
48
+ } : {}),
49
+ ...(shouldHaveTrailingMargin ? trailingMargin : {}),
50
+ ...(isFloating ? {
51
+ backgroundColor: theme.colors.backgroundPrimary
52
+ } : {})
53
+ };
54
+ return /*#__PURE__*/React.createElement(Button, _extends({
55
+ kind: KIND.tertiary,
56
+ shape: SHAPE.pill,
57
+ overrides: {
58
+ BaseButton: {
59
+ style
60
+ }
61
+ }
62
+ }, restProps), children);
63
+ };
64
+
65
+ export function MobileHeader({
66
+ overrides = {},
67
+ title,
68
+ navButton,
69
+ actionButtons = [],
70
+ type = TYPE.fixed,
71
+ expanded = false
72
+ }) {
73
+ const [Root, rootProps] = getOverrides(overrides.Root, StyledRoot);
74
+ const [Title, titleProps] = getOverrides(overrides.Title, StyledTitle);
75
+ const [NavContainer, navContainerProps] = getOverrides(overrides.NavContainer, StyledNavContainer);
76
+ const [HeaderButton, iconButtonProps] = getOverrides(overrides.HeaderButton, DefaultHeaderButton);
77
+ const [ActionButtonsContainer, actionButtonsContainerProps] = getOverrides(overrides.ActionButtonsContainer, StyledActionButtonsContainer);
78
+
79
+ if (actionButtons.length > 2 && process.env.NODE_ENV !== "production") {
80
+ console.warn(`MobileHeader can only render two additional buttons. Received ${actionButtons.length}`);
81
+ }
82
+
83
+ return /*#__PURE__*/React.createElement(Root, _extends({}, rootProps, {
84
+ $type: type,
85
+ $expanded: expanded
86
+ }), /*#__PURE__*/React.createElement(NavContainer, _extends({
87
+ $type: type,
88
+ $hasTextContent: !Boolean(navButton.renderIcon)
89
+ }, navContainerProps), /*#__PURE__*/React.createElement(HeaderButton, _extends({
90
+ onClick: navButton.onClick,
91
+ type: type,
92
+ "aria-label": navButton.label
93
+ }, iconButtonProps), renderButtonContent(navButton.renderIcon || navButton.label))), type === TYPE.fixed && /*#__PURE__*/React.createElement(Title, _extends({
94
+ $type: type,
95
+ $expanded: expanded
96
+ }, titleProps), title), actionButtons.length > 0 && /*#__PURE__*/React.createElement(ActionButtonsContainer, actionButtonsContainerProps, actionButtons.map((button, idx) => {
97
+ const {
98
+ renderIcon,
99
+ onClick,
100
+ label
101
+ } = button;
102
+ return /*#__PURE__*/React.createElement(HeaderButton, _extends({
103
+ onClick: onClick,
104
+ "aria-label": label,
105
+ type: type
106
+ }, iconButtonProps, {
107
+ key: idx
108
+ }), renderButtonContent(renderIcon || label));
109
+ })));
110
+ }
111
+ export default MobileHeader;
@@ -0,0 +1,68 @@
1
+ /*
2
+ Copyright (c) Uber Technologies, Inc.
3
+
4
+ This source code is licensed under the MIT license found in the
5
+ LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { styled } from '../styles';
8
+ import { TYPE } from './constants';
9
+ export const StyledRoot = styled('div', ({
10
+ $theme,
11
+ $type
12
+ }) => ({
13
+ width: '100%',
14
+ display: 'grid',
15
+ gridTemplateColumns: 'auto 1fr auto',
16
+ ...($type === TYPE.floating ? {
17
+ backgroundColor: 'transparent',
18
+ pointerEvents: 'none'
19
+ } : {
20
+ backgroundColor: $theme.colors.backgroundPrimary
21
+ })
22
+ }));
23
+ StyledRoot.displayName = "StyledRoot";
24
+ StyledRoot.displayName = 'StyledRoot';
25
+ export const StyledNavContainer = styled('div', ({
26
+ $hasTextContent,
27
+ $type,
28
+ $theme
29
+ }) => {
30
+ const floatingPadding = $theme.direction === 'rtl' ? {
31
+ paddingRight: $theme.sizing.scale300
32
+ } : {
33
+ paddingLeft: $theme.sizing.scale300
34
+ };
35
+ return {
36
+ pointerEvents: 'auto',
37
+ ...($hasTextContent && $type === TYPE.fixed ? {} : floatingPadding)
38
+ };
39
+ });
40
+ StyledNavContainer.displayName = "StyledNavContainer";
41
+ StyledNavContainer.displayName = 'StyledNavContainer';
42
+ export const StyledActionButtonsContainer = styled('div', ({}) => ({
43
+ display: 'flex',
44
+ justifyContent: 'flex-end',
45
+ gridColumn: '3 / 4',
46
+ pointerEvents: 'auto'
47
+ }));
48
+ StyledActionButtonsContainer.displayName = "StyledActionButtonsContainer";
49
+ StyledActionButtonsContainer.displayName = 'StyledActionButtonsContainer';
50
+ export const StyledTitle = styled('div', ({
51
+ $theme,
52
+ $expanded = false
53
+ }) => ({
54
+ alignSelf: 'center',
55
+ justifyContent: 'flex-start',
56
+ ...($expanded ? $theme.typography.DisplayXSmall : $theme.typography.LabelLarge),
57
+ ...($expanded ? {
58
+ gridColumn: '1 / 4',
59
+ gridRow: 2,
60
+ paddingLeft: $theme.sizing.scale600
61
+ } : {}),
62
+ // truncate long titles
63
+ textOverflow: 'ellipsis',
64
+ whiteSpace: 'nowrap',
65
+ overflow: 'hidden'
66
+ }));
67
+ StyledTitle.displayName = "StyledTitle";
68
+ StyledTitle.displayName = 'StyledTitle';
@@ -0,0 +1 @@
1
+ export {};
@@ -131,7 +131,8 @@ function Slider({
131
131
  },
132
132
  $thumbIndex: index,
133
133
  $isDragged: isDragged,
134
- style: { ...props.style
134
+ style: { ...props.style,
135
+ zIndex: 'unset'
135
136
  }
136
137
  }, sharedProps, thumbProps, {
137
138
  $isFocusVisible: isFocusVisible && focusedThumbIndex === index
@@ -0,0 +1,9 @@
1
+ /*
2
+ Copyright (c) Uber Technologies, Inc.
3
+
4
+ This source code is licensed under the MIT license found in the
5
+ LICENSE file in the root directory of this source tree.
6
+ */
7
+ export { default as Stepper } from './stepper';
8
+ export * from './styled-components';
9
+ export * from './types';
@@ -0,0 +1,90 @@
1
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
3
+ /*
4
+ Copyright (c) Uber Technologies, Inc.
5
+
6
+ This source code is licensed under the MIT license found in the
7
+ LICENSE file in the root directory of this source tree.
8
+ */
9
+ import * as React from 'react';
10
+ import { getOverrides } from '../helpers/overrides';
11
+ import { Button, KIND, SHAPE, SIZE } from '../button';
12
+ import { Input as DefaultInput } from '../input';
13
+ import { Plus, CheckIndeterminate } from '../icon';
14
+ import { StyledRoot } from './styled-components';
15
+ import { useStyletron } from '../styles';
16
+
17
+ const DefaultButton = ({
18
+ children,
19
+ ...restProps
20
+ }) => {
21
+ return /*#__PURE__*/React.createElement(Button, _extends({
22
+ shape: SHAPE.circle,
23
+ kind: KIND.secondary,
24
+ size: SIZE.compact
25
+ }, restProps), children);
26
+ };
27
+
28
+ export function Stepper({
29
+ value,
30
+ disabled = false,
31
+ overrides = {},
32
+ setValue,
33
+ minValue = 0,
34
+ maxValue
35
+ }) {
36
+ const [Root, rootProps] = getOverrides(overrides.Root, StyledRoot);
37
+ const [Input, inputProps] = getOverrides(overrides.Input, DefaultInput);
38
+ const [DecrementButton, decrementButtonProps] = getOverrides(overrides.DecrementButton, DefaultButton);
39
+ const [DecrementButtonIcon, decrementButtonIconProps] = getOverrides(overrides.DecrementButtonIcon, CheckIndeterminate);
40
+ const [IncrementButton, incrementButtonProps] = getOverrides(overrides.DecrementButton, DefaultButton);
41
+ const [IncrementButtonIcon, incrementButtonIconProps] = getOverrides(overrides.DecrementButtonIcon, Plus);
42
+
43
+ const handleInputChange = e => {
44
+ const newValue = Number(e.target.value);
45
+
46
+ if (!isNaN(newValue) && (!maxValue || newValue <= maxValue) && newValue >= minValue) {
47
+ setValue(newValue);
48
+ }
49
+ };
50
+
51
+ const [, theme] = useStyletron();
52
+ return /*#__PURE__*/React.createElement(Root, rootProps, /*#__PURE__*/React.createElement(DecrementButton, _extends({
53
+ onClick: () => setValue(value - 1),
54
+ disabled: disabled || value <= minValue,
55
+ "aria-label": "decrement value"
56
+ }, decrementButtonProps), /*#__PURE__*/React.createElement(DecrementButtonIcon, decrementButtonIconProps)), /*#__PURE__*/React.createElement(Input, _extends({
57
+ value: value,
58
+ onChange: handleInputChange,
59
+ disabled: disabled,
60
+ "aria-label": "value",
61
+ overrides: {
62
+ Root: {
63
+ style: {
64
+ maxWidth: '36px',
65
+ height: '36px',
66
+ borderLeftStyle: 'none',
67
+ borderRightStyle: 'none',
68
+ borderTopStyle: 'none',
69
+ borderBottomStyle: 'none'
70
+ }
71
+ },
72
+ Input: {
73
+ style: {
74
+ paddingTop: 0,
75
+ paddingBottom: 0,
76
+ paddingLeft: 0,
77
+ paddingRight: 0,
78
+ textAlign: 'center',
79
+ backgroundColor: theme.colors.backgroundPrimary,
80
+ ...theme.typography.LabelLarge
81
+ }
82
+ }
83
+ }
84
+ }, inputProps)), /*#__PURE__*/React.createElement(IncrementButton, _extends({
85
+ onClick: () => setValue(value + 1),
86
+ disabled: disabled || value >= maxValue,
87
+ "aria-label": "increment value"
88
+ }, incrementButtonProps), /*#__PURE__*/React.createElement(IncrementButtonIcon, incrementButtonIconProps)));
89
+ }
90
+ export default Stepper;
@@ -0,0 +1,20 @@
1
+ /*
2
+ Copyright (c) Uber Technologies, Inc.
3
+
4
+ This source code is licensed under the MIT license found in the
5
+ LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { styled } from '../styles';
8
+ export const StyledRoot = styled('div', ({
9
+ $theme
10
+ }) => ({
11
+ display: 'flex',
12
+ justifyContent: 'space-between',
13
+ alignItems: 'center',
14
+ boxSizing: 'border-box',
15
+ maxWidth: '139px',
16
+ height: '48px',
17
+ padding: $theme.sizing.scale550
18
+ }));
19
+ StyledRoot.displayName = "StyledRoot";
20
+ StyledRoot.displayName = 'StyledRoot';
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,10 @@
1
+ /*
2
+ Copyright (c) Uber Technologies, Inc.
3
+
4
+ This source code is licensed under the MIT license found in the
5
+ LICENSE file in the root directory of this source tree.
6
+ */
7
+ export var TYPE = Object.freeze({
8
+ fixed: 'fixed',
9
+ floating: 'floating'
10
+ });
@@ -0,0 +1,10 @@
1
+ /*
2
+ Copyright (c) Uber Technologies, Inc.
3
+
4
+ This source code is licensed under the MIT license found in the
5
+ LICENSE file in the root directory of this source tree.
6
+ */
7
+ export { default as MobileHeader } from './mobile-header';
8
+ export * from './constants';
9
+ export * from './styled-components';
10
+ export * from './types';
@@ -0,0 +1,158 @@
1
+ var _excluded = ["children", "type"];
2
+
3
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
4
+
5
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
+
7
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
8
+
9
+ 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; }
10
+
11
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
12
+
13
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
14
+
15
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
16
+
17
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
18
+
19
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
20
+
21
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
22
+
23
+ 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; }
24
+
25
+ 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; }
26
+
27
+ /*
28
+ Copyright (c) Uber Technologies, Inc.
29
+
30
+ This source code is licensed under the MIT license found in the
31
+ LICENSE file in the root directory of this source tree.
32
+ */
33
+ import * as React from 'react';
34
+ import { getOverrides } from '../helpers/overrides';
35
+ import { Button, KIND, SHAPE } from '../button';
36
+ import { StyledRoot, StyledNavContainer, StyledTitle, StyledActionButtonsContainer } from './styled-components';
37
+ import { TYPE } from './constants';
38
+ import { useStyletron } from '../styles/index';
39
+
40
+ var renderButtonContent = function renderButtonContent(content) {
41
+ if (typeof content === 'string') {
42
+ return content;
43
+ }
44
+
45
+ var Icon = content;
46
+ return /*#__PURE__*/React.createElement(Icon, {
47
+ size: 32
48
+ });
49
+ };
50
+
51
+ var DefaultHeaderButton = function DefaultHeaderButton(_ref) {
52
+ var children = _ref.children,
53
+ type = _ref.type,
54
+ restProps = _objectWithoutProperties(_ref, _excluded);
55
+
56
+ var _useStyletron = useStyletron(),
57
+ _useStyletron2 = _slicedToArray(_useStyletron, 2),
58
+ theme = _useStyletron2[1];
59
+
60
+ var isFloating = type === TYPE.floating;
61
+ var hasTextContent = typeof children === 'string';
62
+ var shouldHaveTrailingMargin = isFloating || !hasTextContent;
63
+ var trailingMargin = theme.direction === 'rtl' ? {
64
+ marginLeft: theme.sizing.scale300
65
+ } : {
66
+ marginRight: theme.sizing.scale300
67
+ };
68
+
69
+ var style = _objectSpread(_objectSpread(_objectSpread({}, !hasTextContent ? {
70
+ height: '48px',
71
+ width: '48px',
72
+ paddingTop: 0,
73
+ paddingBottom: 0,
74
+ paddingLeft: 0,
75
+ paddingRight: 0
76
+ } : {}), shouldHaveTrailingMargin ? trailingMargin : {}), isFloating ? {
77
+ backgroundColor: theme.colors.backgroundPrimary
78
+ } : {});
79
+
80
+ return /*#__PURE__*/React.createElement(Button, _extends({
81
+ kind: KIND.tertiary,
82
+ shape: SHAPE.pill,
83
+ overrides: {
84
+ BaseButton: {
85
+ style: style
86
+ }
87
+ }
88
+ }, restProps), children);
89
+ };
90
+
91
+ export function MobileHeader(_ref2) {
92
+ var _ref2$overrides = _ref2.overrides,
93
+ overrides = _ref2$overrides === void 0 ? {} : _ref2$overrides,
94
+ title = _ref2.title,
95
+ navButton = _ref2.navButton,
96
+ _ref2$actionButtons = _ref2.actionButtons,
97
+ actionButtons = _ref2$actionButtons === void 0 ? [] : _ref2$actionButtons,
98
+ _ref2$type = _ref2.type,
99
+ type = _ref2$type === void 0 ? TYPE.fixed : _ref2$type,
100
+ _ref2$expanded = _ref2.expanded,
101
+ expanded = _ref2$expanded === void 0 ? false : _ref2$expanded;
102
+
103
+ var _getOverrides = getOverrides(overrides.Root, StyledRoot),
104
+ _getOverrides2 = _slicedToArray(_getOverrides, 2),
105
+ Root = _getOverrides2[0],
106
+ rootProps = _getOverrides2[1];
107
+
108
+ var _getOverrides3 = getOverrides(overrides.Title, StyledTitle),
109
+ _getOverrides4 = _slicedToArray(_getOverrides3, 2),
110
+ Title = _getOverrides4[0],
111
+ titleProps = _getOverrides4[1];
112
+
113
+ var _getOverrides5 = getOverrides(overrides.NavContainer, StyledNavContainer),
114
+ _getOverrides6 = _slicedToArray(_getOverrides5, 2),
115
+ NavContainer = _getOverrides6[0],
116
+ navContainerProps = _getOverrides6[1];
117
+
118
+ var _getOverrides7 = getOverrides(overrides.HeaderButton, DefaultHeaderButton),
119
+ _getOverrides8 = _slicedToArray(_getOverrides7, 2),
120
+ HeaderButton = _getOverrides8[0],
121
+ iconButtonProps = _getOverrides8[1];
122
+
123
+ var _getOverrides9 = getOverrides(overrides.ActionButtonsContainer, StyledActionButtonsContainer),
124
+ _getOverrides10 = _slicedToArray(_getOverrides9, 2),
125
+ ActionButtonsContainer = _getOverrides10[0],
126
+ actionButtonsContainerProps = _getOverrides10[1];
127
+
128
+ if (actionButtons.length > 2 && process.env.NODE_ENV !== "production") {
129
+ console.warn("MobileHeader can only render two additional buttons. Received ".concat(actionButtons.length));
130
+ }
131
+
132
+ return /*#__PURE__*/React.createElement(Root, _extends({}, rootProps, {
133
+ $type: type,
134
+ $expanded: expanded
135
+ }), /*#__PURE__*/React.createElement(NavContainer, _extends({
136
+ $type: type,
137
+ $hasTextContent: !Boolean(navButton.renderIcon)
138
+ }, navContainerProps), /*#__PURE__*/React.createElement(HeaderButton, _extends({
139
+ onClick: navButton.onClick,
140
+ type: type,
141
+ "aria-label": navButton.label
142
+ }, iconButtonProps), renderButtonContent(navButton.renderIcon || navButton.label))), type === TYPE.fixed && /*#__PURE__*/React.createElement(Title, _extends({
143
+ $type: type,
144
+ $expanded: expanded
145
+ }, titleProps), title), actionButtons.length > 0 && /*#__PURE__*/React.createElement(ActionButtonsContainer, actionButtonsContainerProps, actionButtons.map(function (button, idx) {
146
+ var renderIcon = button.renderIcon,
147
+ onClick = button.onClick,
148
+ label = button.label;
149
+ return /*#__PURE__*/React.createElement(HeaderButton, _extends({
150
+ onClick: onClick,
151
+ "aria-label": label,
152
+ type: type
153
+ }, iconButtonProps, {
154
+ key: idx
155
+ }), renderButtonContent(renderIcon || label));
156
+ })));
157
+ }
158
+ export default MobileHeader;
@@ -0,0 +1,79 @@
1
+ function _objectDestructuringEmpty(obj) { if (obj == null) throw new TypeError("Cannot destructure undefined"); }
2
+
3
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4
+
5
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
+
7
+ 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; }
8
+
9
+ /*
10
+ Copyright (c) Uber Technologies, Inc.
11
+
12
+ This source code is licensed under the MIT license found in the
13
+ LICENSE file in the root directory of this source tree.
14
+ */
15
+ import { styled } from '../styles';
16
+ import { TYPE } from './constants';
17
+ export var StyledRoot = styled('div', function (_ref) {
18
+ var $theme = _ref.$theme,
19
+ $type = _ref.$type;
20
+ return _objectSpread({
21
+ width: '100%',
22
+ display: 'grid',
23
+ gridTemplateColumns: 'auto 1fr auto'
24
+ }, $type === TYPE.floating ? {
25
+ backgroundColor: 'transparent',
26
+ pointerEvents: 'none'
27
+ } : {
28
+ backgroundColor: $theme.colors.backgroundPrimary
29
+ });
30
+ });
31
+ StyledRoot.displayName = "StyledRoot";
32
+ StyledRoot.displayName = 'StyledRoot';
33
+ export var StyledNavContainer = styled('div', function (_ref2) {
34
+ var $hasTextContent = _ref2.$hasTextContent,
35
+ $type = _ref2.$type,
36
+ $theme = _ref2.$theme;
37
+ var floatingPadding = $theme.direction === 'rtl' ? {
38
+ paddingRight: $theme.sizing.scale300
39
+ } : {
40
+ paddingLeft: $theme.sizing.scale300
41
+ };
42
+ return _objectSpread({
43
+ pointerEvents: 'auto'
44
+ }, $hasTextContent && $type === TYPE.fixed ? {} : floatingPadding);
45
+ });
46
+ StyledNavContainer.displayName = "StyledNavContainer";
47
+ StyledNavContainer.displayName = 'StyledNavContainer';
48
+ export var StyledActionButtonsContainer = styled('div', function (_ref3) {
49
+ _objectDestructuringEmpty(_ref3);
50
+
51
+ return {
52
+ display: 'flex',
53
+ justifyContent: 'flex-end',
54
+ gridColumn: '3 / 4',
55
+ pointerEvents: 'auto'
56
+ };
57
+ });
58
+ StyledActionButtonsContainer.displayName = "StyledActionButtonsContainer";
59
+ StyledActionButtonsContainer.displayName = 'StyledActionButtonsContainer';
60
+ export var StyledTitle = styled('div', function (_ref4) {
61
+ var $theme = _ref4.$theme,
62
+ _ref4$$expanded = _ref4.$expanded,
63
+ $expanded = _ref4$$expanded === void 0 ? false : _ref4$$expanded;
64
+ return _objectSpread(_objectSpread(_objectSpread({
65
+ alignSelf: 'center',
66
+ justifyContent: 'flex-start'
67
+ }, $expanded ? $theme.typography.DisplayXSmall : $theme.typography.LabelLarge), $expanded ? {
68
+ gridColumn: '1 / 4',
69
+ gridRow: 2,
70
+ paddingLeft: $theme.sizing.scale600
71
+ } : {}), {}, {
72
+ // truncate long titles
73
+ textOverflow: 'ellipsis',
74
+ whiteSpace: 'nowrap',
75
+ overflow: 'hidden'
76
+ });
77
+ });
78
+ StyledTitle.displayName = "StyledTitle";
79
+ StyledTitle.displayName = 'StyledTitle';
@@ -0,0 +1 @@
1
+ export {};
@@ -219,7 +219,9 @@ function Slider(_ref) {
219
219
  },
220
220
  $thumbIndex: index,
221
221
  $isDragged: isDragged,
222
- style: _objectSpread({}, props.style)
222
+ style: _objectSpread(_objectSpread({}, props.style), {}, {
223
+ zIndex: 'unset'
224
+ })
223
225
  }, sharedProps, thumbProps, {
224
226
  $isFocusVisible: isFocusVisible && focusedThumbIndex === index
225
227
  }), displayLabel && /*#__PURE__*/React.createElement(ThumbValue, _extends({
@@ -0,0 +1,9 @@
1
+ /*
2
+ Copyright (c) Uber Technologies, Inc.
3
+
4
+ This source code is licensed under the MIT license found in the
5
+ LICENSE file in the root directory of this source tree.
6
+ */
7
+ export { default as Stepper } from './stepper';
8
+ export * from './styled-components';
9
+ export * from './types';