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.
- package/es/mobile-header/constants.js +10 -0
- package/es/mobile-header/index.js +10 -0
- package/es/mobile-header/mobile-header.js +111 -0
- package/es/mobile-header/styled-components.js +68 -0
- package/es/mobile-header/types.js +1 -0
- package/es/slider/slider.js +2 -1
- package/es/stepper/index.js +9 -0
- package/es/stepper/stepper.js +90 -0
- package/es/stepper/styled-components.js +20 -0
- package/es/stepper/types.js +1 -0
- package/esm/mobile-header/constants.js +10 -0
- package/esm/mobile-header/index.js +10 -0
- package/esm/mobile-header/mobile-header.js +158 -0
- package/esm/mobile-header/styled-components.js +79 -0
- package/esm/mobile-header/types.js +1 -0
- package/esm/slider/slider.js +3 -1
- package/esm/stepper/index.js +9 -0
- package/esm/stepper/stepper.js +146 -0
- package/esm/stepper/styled-components.js +21 -0
- package/esm/stepper/types.js +1 -0
- package/mobile-header/constants.d.ts +4 -0
- package/mobile-header/constants.js +18 -0
- package/mobile-header/index.d.ts +4 -0
- package/mobile-header/index.js +60 -0
- package/mobile-header/index.js.flow +54 -0
- package/mobile-header/mobile-header.d.ts +4 -0
- package/mobile-header/mobile-header.js +173 -0
- package/mobile-header/package.json +4 -0
- package/mobile-header/styled-components.d.ts +12 -0
- package/mobile-header/styled-components.js +86 -0
- package/mobile-header/types.d.ts +26 -0
- package/mobile-header/types.js +5 -0
- package/package.json +1 -1
- package/slider/slider.js +3 -1
- package/stepper/index.d.ts +3 -0
- package/stepper/index.js +46 -0
- package/stepper/index.js.flow +36 -0
- package/stepper/package.json +4 -0
- package/stepper/stepper.d.ts +4 -0
- package/stepper/stepper.js +162 -0
- package/stepper/styled-components.d.ts +1 -0
- package/stepper/styled-components.js +30 -0
- package/stepper/types.d.ts +17 -0
- 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 { 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 {};
|
package/es/slider/slider.js
CHANGED
|
@@ -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 { 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 {};
|
package/esm/slider/slider.js
CHANGED
|
@@ -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';
|