@atlaskit/react-select 1.5.1 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/dist/cjs/components/group.js +2 -7
- package/dist/cjs/components/index.js +0 -3
- package/dist/cjs/components/indicators.js +54 -133
- package/dist/cjs/components/input.js +5 -8
- package/dist/cjs/components/menu.js +23 -21
- package/dist/cjs/components/multi-value.js +47 -10
- package/dist/cjs/components/single-value.js +1 -2
- package/dist/cjs/index.js +0 -7
- package/dist/cjs/select.js +88 -131
- package/dist/cjs/styles.js +0 -1
- package/dist/cjs/utils.js +1 -2
- package/dist/es2019/components/group.js +2 -7
- package/dist/es2019/components/index.js +1 -4
- package/dist/es2019/components/indicators.js +39 -113
- package/dist/es2019/components/input.js +5 -9
- package/dist/es2019/components/menu.js +23 -29
- package/dist/es2019/components/multi-value.js +48 -12
- package/dist/es2019/components/single-value.js +1 -4
- package/dist/es2019/index.js +0 -1
- package/dist/es2019/select.js +7 -52
- package/dist/es2019/styles.js +1 -2
- package/dist/es2019/utils.js +0 -2
- package/dist/esm/components/group.js +2 -7
- package/dist/esm/components/index.js +1 -4
- package/dist/esm/components/indicators.js +54 -133
- package/dist/esm/components/input.js +5 -8
- package/dist/esm/components/menu.js +23 -21
- package/dist/esm/components/multi-value.js +48 -11
- package/dist/esm/components/single-value.js +1 -2
- package/dist/esm/index.js +0 -1
- package/dist/esm/select.js +88 -131
- package/dist/esm/styles.js +1 -2
- package/dist/esm/utils.js +1 -2
- package/dist/types/components/group.d.ts +1 -2
- package/dist/types/components/index.d.ts +16 -22
- package/dist/types/components/indicators.d.ts +1 -16
- package/dist/types/components/input.d.ts +1 -1
- package/dist/types/components/menu.d.ts +3 -3
- package/dist/types/components/multi-value.d.ts +3 -2
- package/dist/types/components/single-value.d.ts +1 -1
- package/dist/types/index.d.ts +1 -3
- package/dist/types/select.d.ts +15 -28
- package/dist/types/styles.d.ts +1 -3
- package/dist/types/theme.d.ts +0 -1
- package/dist/types/types.d.ts +0 -1
- package/dist/types-ts4.5/components/group.d.ts +1 -2
- package/dist/types-ts4.5/components/index.d.ts +16 -22
- package/dist/types-ts4.5/components/indicators.d.ts +1 -16
- package/dist/types-ts4.5/components/input.d.ts +1 -1
- package/dist/types-ts4.5/components/menu.d.ts +3 -3
- package/dist/types-ts4.5/components/multi-value.d.ts +3 -2
- package/dist/types-ts4.5/components/single-value.d.ts +1 -1
- package/dist/types-ts4.5/index.d.ts +1 -3
- package/dist/types-ts4.5/select.d.ts +15 -28
- package/dist/types-ts4.5/styles.d.ts +1 -3
- package/dist/types-ts4.5/theme.d.ts +0 -1
- package/dist/types-ts4.5/types.d.ts +0 -1
- package/package.json +11 -2
- package/types/package.json +17 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# @atlaskit/react-select
|
|
2
2
|
|
|
3
|
+
## 1.6.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#177875](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/177875)
|
|
8
|
+
[`d0c3d27216b7c`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/d0c3d27216b7c) -
|
|
9
|
+
Remove theme prop and merge customized components for performance
|
|
10
|
+
|
|
11
|
+
## 1.5.2
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- [#167291](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/167291)
|
|
16
|
+
[`4645a4d115b15`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/4645a4d115b15) -
|
|
17
|
+
Fix the calculation of scroll space below to place menu bottom as much as possible
|
|
18
|
+
|
|
3
19
|
## 1.5.1
|
|
4
20
|
|
|
5
21
|
### Patch Changes
|
|
@@ -31,15 +31,11 @@ var Group = function Group(props) {
|
|
|
31
31
|
headingProps = props.headingProps,
|
|
32
32
|
innerProps = props.innerProps,
|
|
33
33
|
label = props.label,
|
|
34
|
-
theme = props.theme,
|
|
35
34
|
selectProps = props.selectProps;
|
|
36
35
|
return (0, _react.jsx)("div", (0, _extends2.default)({}, (0, _utils.getStyleProps)(props, 'group', {
|
|
37
36
|
group: true
|
|
38
37
|
}), innerProps), (0, _react.jsx)(Heading, (0, _extends2.default)({}, headingProps, {
|
|
39
|
-
selectProps: selectProps
|
|
40
|
-
// eslint-disable-next-line @repo/internal/react/no-unsafe-overrides
|
|
41
|
-
,
|
|
42
|
-
theme: theme,
|
|
38
|
+
selectProps: selectProps,
|
|
43
39
|
getStyles: getStyles,
|
|
44
40
|
getClassNames: getClassNames,
|
|
45
41
|
cx: cx
|
|
@@ -51,13 +47,12 @@ var groupHeadingCSS = exports.groupHeadingCSS = function groupHeadingCSS(_ref2)
|
|
|
51
47
|
label: 'group',
|
|
52
48
|
cursor: 'default',
|
|
53
49
|
display: 'block',
|
|
54
|
-
fontSize: '75%',
|
|
55
50
|
marginBottom: '0.25em',
|
|
56
51
|
paddingLeft: "var(--ds-space-150, 12px)",
|
|
57
52
|
paddingRight: "var(--ds-space-150, 12px)",
|
|
58
53
|
font: "var(--ds-font-body-small, normal 400 11px/16px ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Ubuntu, system-ui, \"Helvetica Neue\", sans-serif)",
|
|
59
54
|
color: "var(--ds-text-subtle, #44546F)",
|
|
60
|
-
fontWeight: "var(--ds-font-weight-bold, 700)"
|
|
55
|
+
fontWeight: "var(--ds-font-weight-bold, 700)",
|
|
61
56
|
textTransform: 'none'
|
|
62
57
|
};
|
|
63
58
|
};
|
|
@@ -25,12 +25,9 @@ var components = exports.components = {
|
|
|
25
25
|
ClearIndicator: _indicators.ClearIndicator,
|
|
26
26
|
Control: _control.default,
|
|
27
27
|
DropdownIndicator: _indicators.DropdownIndicator,
|
|
28
|
-
DownChevron: _indicators.DownChevron,
|
|
29
|
-
CrossIcon: _indicators.CrossIcon,
|
|
30
28
|
Group: _group.default,
|
|
31
29
|
GroupHeading: _group.GroupHeading,
|
|
32
30
|
IndicatorsContainer: _containers.IndicatorsContainer,
|
|
33
|
-
IndicatorSeparator: _indicators.IndicatorSeparator,
|
|
34
31
|
Input: _input.default,
|
|
35
32
|
LoadingIndicator: _indicators.LoadingIndicator,
|
|
36
33
|
Menu: _menu.default,
|
|
@@ -4,14 +4,17 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.loadingIndicatorCSS = exports.
|
|
7
|
+
exports.loadingIndicatorCSS = exports.dropdownIndicatorCSS = exports.clearIndicatorCSS = exports.LoadingIndicator = exports.DropdownIndicator = exports.ClearIndicator = void 0;
|
|
8
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
9
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
11
|
var _react = require("@emotion/react");
|
|
12
|
+
var _chevronDown = _interopRequireDefault(require("@atlaskit/icon/utility/migration/chevron-down"));
|
|
13
|
+
var _crossCircleSelectClear = _interopRequireDefault(require("@atlaskit/icon/utility/migration/cross-circle--select-clear"));
|
|
14
|
+
var _primitives = require("@atlaskit/primitives");
|
|
15
|
+
var _spinner = _interopRequireDefault(require("@atlaskit/spinner"));
|
|
12
16
|
var _utils = require("../utils");
|
|
13
|
-
var _excluded = ["size"]
|
|
14
|
-
_excluded2 = ["innerProps", "isRtl", "size"];
|
|
17
|
+
var _excluded = ["innerProps", "isRtl", "size"];
|
|
15
18
|
/**
|
|
16
19
|
* @jsxRuntime classic
|
|
17
20
|
* @jsx jsx
|
|
@@ -22,56 +25,25 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
22
25
|
// Dropdown & Clear Icons
|
|
23
26
|
// ==============================
|
|
24
27
|
|
|
25
|
-
var
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
var iconContainerStyles = (0, _primitives.xcss)({
|
|
29
|
+
all: 'unset',
|
|
30
|
+
outline: 'revert',
|
|
31
|
+
display: 'flex',
|
|
32
|
+
alignItems: 'center',
|
|
33
|
+
justifyContent: 'center',
|
|
34
|
+
padding: 'space.025'
|
|
35
|
+
});
|
|
36
|
+
var dropdownWrapperStyles = (0, _primitives.xcss)({
|
|
37
|
+
padding: 'space.075'
|
|
31
38
|
});
|
|
32
|
-
var Svg = function Svg(_ref) {
|
|
33
|
-
var size = _ref.size,
|
|
34
|
-
props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
35
|
-
return (0, _react.jsx)("svg", (0, _extends2.default)({
|
|
36
|
-
height: size,
|
|
37
|
-
width: size,
|
|
38
|
-
viewBox: "0 0 20 20",
|
|
39
|
-
"aria-hidden": "true",
|
|
40
|
-
focusable: "false",
|
|
41
|
-
css: styles
|
|
42
|
-
// eslint-disable-next-line @repo/internal/react/no-unsafe-spread-props
|
|
43
|
-
}, props));
|
|
44
|
-
};
|
|
45
|
-
// eslint-disable-next-line @repo/internal/react/require-jsdoc
|
|
46
|
-
var CrossIcon = exports.CrossIcon = function CrossIcon(props) {
|
|
47
|
-
return (
|
|
48
|
-
// eslint-disable-next-line @repo/internal/react/no-unsafe-spread-props
|
|
49
|
-
(0, _react.jsx)(Svg, (0, _extends2.default)({
|
|
50
|
-
size: 20
|
|
51
|
-
}, props), (0, _react.jsx)("path", {
|
|
52
|
-
d: "M14.348 14.849c-0.469 0.469-1.229 0.469-1.697 0l-2.651-3.030-2.651 3.029c-0.469 0.469-1.229 0.469-1.697 0-0.469-0.469-0.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-0.469-0.469-0.469-1.228 0-1.697s1.228-0.469 1.697 0l2.652 3.031 2.651-3.031c0.469-0.469 1.228-0.469 1.697 0s0.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c0.469 0.469 0.469 1.229 0 1.698z"
|
|
53
|
-
}))
|
|
54
|
-
);
|
|
55
|
-
};
|
|
56
|
-
// eslint-disable-next-line @repo/internal/react/require-jsdoc
|
|
57
|
-
var DownChevron = exports.DownChevron = function DownChevron(props) {
|
|
58
|
-
return (
|
|
59
|
-
// eslint-disable-next-line @repo/internal/react/no-unsafe-spread-props
|
|
60
|
-
(0, _react.jsx)(Svg, (0, _extends2.default)({
|
|
61
|
-
size: 20
|
|
62
|
-
}, props), (0, _react.jsx)("path", {
|
|
63
|
-
d: "M4.516 7.548c0.436-0.446 1.043-0.481 1.576 0l3.908 3.747 3.908-3.747c0.533-0.481 1.141-0.446 1.574 0 0.436 0.445 0.408 1.197 0 1.615-0.406 0.418-4.695 4.502-4.695 4.502-0.217 0.223-0.502 0.335-0.787 0.335s-0.57-0.112-0.789-0.335c0 0-4.287-4.084-4.695-4.502s-0.436-1.17 0-1.615z"
|
|
64
|
-
}))
|
|
65
|
-
);
|
|
66
|
-
};
|
|
67
39
|
|
|
68
40
|
// ==============================
|
|
69
41
|
// Dropdown & Clear Buttons
|
|
70
42
|
// ==============================
|
|
71
43
|
|
|
72
|
-
var dropdownIndicatorCSS = exports.dropdownIndicatorCSS = function dropdownIndicatorCSS(
|
|
73
|
-
var isCompact =
|
|
74
|
-
isDisabled =
|
|
44
|
+
var dropdownIndicatorCSS = exports.dropdownIndicatorCSS = function dropdownIndicatorCSS(_ref) {
|
|
45
|
+
var isCompact = _ref.isCompact,
|
|
46
|
+
isDisabled = _ref.isDisabled;
|
|
75
47
|
return {
|
|
76
48
|
label: 'indicatorContainer',
|
|
77
49
|
display: 'flex',
|
|
@@ -86,15 +58,22 @@ var dropdownIndicatorCSS = exports.dropdownIndicatorCSS = function dropdownIndic
|
|
|
86
58
|
|
|
87
59
|
// eslint-disable-next-line @repo/internal/react/require-jsdoc
|
|
88
60
|
var DropdownIndicator = exports.DropdownIndicator = function DropdownIndicator(props) {
|
|
89
|
-
var
|
|
90
|
-
|
|
61
|
+
var innerProps = props.innerProps,
|
|
62
|
+
children = props.children;
|
|
91
63
|
return (0, _react.jsx)("div", (0, _extends2.default)({}, (0, _utils.getStyleProps)(props, 'dropdownIndicator', {
|
|
92
64
|
indicator: true,
|
|
93
65
|
'dropdown-indicator': true
|
|
94
|
-
}), innerProps), children
|
|
66
|
+
}), innerProps), children ? children : (0, _react.jsx)(_primitives.Inline, {
|
|
67
|
+
as: "span",
|
|
68
|
+
xcss: dropdownWrapperStyles
|
|
69
|
+
}, (0, _react.jsx)(_chevronDown.default, {
|
|
70
|
+
color: "currentColor",
|
|
71
|
+
label: "open",
|
|
72
|
+
LEGACY_margin: "var(--ds-space-negative-075, -0.375rem)"
|
|
73
|
+
})));
|
|
95
74
|
};
|
|
96
|
-
var clearIndicatorCSS = exports.clearIndicatorCSS = function clearIndicatorCSS(
|
|
97
|
-
var isCompact =
|
|
75
|
+
var clearIndicatorCSS = exports.clearIndicatorCSS = function clearIndicatorCSS(_ref2) {
|
|
76
|
+
var isCompact = _ref2.isCompact;
|
|
98
77
|
return {
|
|
99
78
|
label: 'indicatorContainer',
|
|
100
79
|
display: 'flex',
|
|
@@ -109,35 +88,21 @@ var clearIndicatorCSS = exports.clearIndicatorCSS = function clearIndicatorCSS(_
|
|
|
109
88
|
|
|
110
89
|
// eslint-disable-next-line @repo/internal/react/require-jsdoc
|
|
111
90
|
var ClearIndicator = exports.ClearIndicator = function ClearIndicator(props) {
|
|
112
|
-
var
|
|
113
|
-
|
|
91
|
+
var innerProps = props.innerProps,
|
|
92
|
+
_props$clearControlLa = props.clearControlLabel,
|
|
93
|
+
clearControlLabel = _props$clearControlLa === void 0 ? 'clear' : _props$clearControlLa;
|
|
114
94
|
return (0, _react.jsx)("div", (0, _extends2.default)({}, (0, _utils.getStyleProps)(props, 'clearIndicator', {
|
|
115
95
|
indicator: true,
|
|
116
96
|
'clear-indicator': true
|
|
117
|
-
}), innerProps),
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
return {
|
|
127
|
-
label: 'indicatorSeparator',
|
|
128
|
-
alignSelf: 'stretch',
|
|
129
|
-
width: 1,
|
|
130
|
-
backgroundColor: isDisabled ? "var(--ds-border-disabled, #091E420F)" : "var(--ds-border, #091E4224)",
|
|
131
|
-
marginBottom: "var(--ds-space-100, 8px)",
|
|
132
|
-
marginTop: "var(--ds-space-100, 8px)"
|
|
133
|
-
};
|
|
134
|
-
};
|
|
135
|
-
|
|
136
|
-
// eslint-disable-next-line @repo/internal/react/require-jsdoc
|
|
137
|
-
var IndicatorSeparator = exports.IndicatorSeparator = function IndicatorSeparator(props) {
|
|
138
|
-
var innerProps = props.innerProps;
|
|
139
|
-
return (0, _react.jsx)("span", (0, _extends2.default)({}, innerProps, (0, _utils.getStyleProps)(props, 'indicatorSeparator', {
|
|
140
|
-
'indicator-separator': true
|
|
97
|
+
}), innerProps), (0, _react.jsx)(_primitives.Pressable, {
|
|
98
|
+
xcss: iconContainerStyles,
|
|
99
|
+
tabIndex: -1,
|
|
100
|
+
"aria-label": clearControlLabel
|
|
101
|
+
}, (0, _react.jsx)(_crossCircleSelectClear.default, {
|
|
102
|
+
label: "",
|
|
103
|
+
color: "currentColor",
|
|
104
|
+
LEGACY_size: "small",
|
|
105
|
+
LEGACY_margin: "var(--ds-space-negative-025, -0.125rem)"
|
|
141
106
|
})));
|
|
142
107
|
};
|
|
143
108
|
|
|
@@ -145,57 +110,20 @@ var IndicatorSeparator = exports.IndicatorSeparator = function IndicatorSeparato
|
|
|
145
110
|
// Loading
|
|
146
111
|
// ==============================
|
|
147
112
|
|
|
148
|
-
var
|
|
149
|
-
|
|
150
|
-
opacity: 0
|
|
151
|
-
},
|
|
152
|
-
'40%': {
|
|
153
|
-
opacity: 1
|
|
154
|
-
}
|
|
155
|
-
});
|
|
156
|
-
var loadingIndicatorCSS = exports.loadingIndicatorCSS = function loadingIndicatorCSS(_ref5) {
|
|
157
|
-
var isFocused = _ref5.isFocused,
|
|
158
|
-
size = _ref5.size,
|
|
159
|
-
isCompact = _ref5.isCompact,
|
|
160
|
-
colors = _ref5.theme.colors;
|
|
113
|
+
var loadingIndicatorCSS = exports.loadingIndicatorCSS = function loadingIndicatorCSS(_ref3) {
|
|
114
|
+
var isCompact = _ref3.isCompact;
|
|
161
115
|
return {
|
|
162
116
|
label: 'loadingIndicator',
|
|
163
|
-
display: 'flex',
|
|
164
|
-
transition: 'color 150ms',
|
|
165
|
-
alignSelf: 'center',
|
|
166
|
-
fontSize: size,
|
|
167
|
-
lineHeight: 1,
|
|
168
|
-
marginRight: size,
|
|
169
|
-
textAlign: 'center',
|
|
170
|
-
verticalAlign: 'middle',
|
|
171
|
-
color: isFocused ? colors.neutral60 : colors.neutral20,
|
|
172
117
|
padding: "".concat(isCompact ? 0 : "var(--ds-space-075, 6px)", " ", "var(--ds-space-100, 8px)")
|
|
173
118
|
};
|
|
174
119
|
};
|
|
175
|
-
var LoadingDot = function LoadingDot(_ref6) {
|
|
176
|
-
var delay = _ref6.delay,
|
|
177
|
-
offset = _ref6.offset;
|
|
178
|
-
return (0, _react.jsx)("span", {
|
|
179
|
-
// eslint-disable-next-line @atlaskit/design-system/consistent-css-prop-usage
|
|
180
|
-
css: {
|
|
181
|
-
animation: "".concat(loadingDotAnimations, " 1s ease-in-out ").concat(delay, "ms infinite;"),
|
|
182
|
-
backgroundColor: 'currentColor',
|
|
183
|
-
borderRadius: '1em',
|
|
184
|
-
display: 'inline-block',
|
|
185
|
-
marginLeft: offset ? '1em' : undefined,
|
|
186
|
-
height: '1em',
|
|
187
|
-
verticalAlign: 'top',
|
|
188
|
-
width: '1em'
|
|
189
|
-
}
|
|
190
|
-
});
|
|
191
|
-
};
|
|
192
120
|
// eslint-disable-next-line @repo/internal/react/require-jsdoc
|
|
193
|
-
var LoadingIndicator = exports.LoadingIndicator = function LoadingIndicator(
|
|
194
|
-
var innerProps =
|
|
195
|
-
isRtl =
|
|
196
|
-
|
|
197
|
-
size =
|
|
198
|
-
restProps = (0, _objectWithoutProperties2.default)(
|
|
121
|
+
var LoadingIndicator = exports.LoadingIndicator = function LoadingIndicator(_ref4) {
|
|
122
|
+
var innerProps = _ref4.innerProps,
|
|
123
|
+
isRtl = _ref4.isRtl,
|
|
124
|
+
_ref4$size = _ref4.size,
|
|
125
|
+
size = _ref4$size === void 0 ? 4 : _ref4$size,
|
|
126
|
+
restProps = (0, _objectWithoutProperties2.default)(_ref4, _excluded);
|
|
199
127
|
return (0, _react.jsx)("div", (0, _extends2.default)({}, (0, _utils.getStyleProps)(_objectSpread(_objectSpread({}, restProps), {}, {
|
|
200
128
|
innerProps: innerProps,
|
|
201
129
|
isRtl: isRtl,
|
|
@@ -203,14 +131,7 @@ var LoadingIndicator = exports.LoadingIndicator = function LoadingIndicator(_ref
|
|
|
203
131
|
}), 'loadingIndicator', {
|
|
204
132
|
indicator: true,
|
|
205
133
|
'loading-indicator': true
|
|
206
|
-
}), innerProps), (0, _react.jsx)(
|
|
207
|
-
|
|
208
|
-
offset: isRtl
|
|
209
|
-
}), (0, _react.jsx)(LoadingDot, {
|
|
210
|
-
delay: 160,
|
|
211
|
-
offset: true
|
|
212
|
-
}), (0, _react.jsx)(LoadingDot, {
|
|
213
|
-
delay: 320,
|
|
214
|
-
offset: !isRtl
|
|
134
|
+
}), innerProps), (0, _react.jsx)(_spinner.default, {
|
|
135
|
+
size: "small"
|
|
215
136
|
}));
|
|
216
137
|
};
|
|
@@ -18,20 +18,17 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
18
18
|
*/
|
|
19
19
|
var inputCSS = exports.inputCSS = function inputCSS(_ref) {
|
|
20
20
|
var isDisabled = _ref.isDisabled,
|
|
21
|
-
value = _ref.value
|
|
22
|
-
_ref$theme = _ref.theme,
|
|
23
|
-
spacing = _ref$theme.spacing,
|
|
24
|
-
colors = _ref$theme.colors;
|
|
21
|
+
value = _ref.value;
|
|
25
22
|
return _objectSpread(_objectSpread({
|
|
26
23
|
visibility: isDisabled ? 'hidden' : 'visible',
|
|
27
24
|
// force css to recompute when value change due to @emotion bug.
|
|
28
25
|
// We can remove it whenever the bug is fixed.
|
|
29
26
|
transform: value ? 'translateZ(0)' : ''
|
|
30
27
|
}, containerStyle), {}, {
|
|
31
|
-
margin:
|
|
32
|
-
paddingBottom:
|
|
33
|
-
paddingTop:
|
|
34
|
-
color: "var(--ds-text,
|
|
28
|
+
margin: "var(--ds-space-025, 2px)",
|
|
29
|
+
paddingBottom: "var(--ds-space-025, 2px)",
|
|
30
|
+
paddingTop: "var(--ds-space-025, 2px)",
|
|
31
|
+
color: "var(--ds-text, #172B4D)"
|
|
35
32
|
});
|
|
36
33
|
};
|
|
37
34
|
var spacingStyle = {
|
|
@@ -8,6 +8,7 @@ exports.default = exports.NoOptionsMessage = exports.MenuPortal = exports.MenuPl
|
|
|
8
8
|
exports.getMenuPlacement = getMenuPlacement;
|
|
9
9
|
exports.noOptionsMessageCSS = exports.menuPortalCSS = exports.menuListCSS = exports.menuCSS = exports.loadingMessageCSS = void 0;
|
|
10
10
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
11
|
+
var _objectDestructuringEmpty2 = _interopRequireDefault(require("@babel/runtime/helpers/objectDestructuringEmpty"));
|
|
11
12
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
12
13
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
14
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
@@ -16,6 +17,8 @@ var _react2 = require("@emotion/react");
|
|
|
16
17
|
var _dom = require("@floating-ui/dom");
|
|
17
18
|
var _reactDom = require("react-dom");
|
|
18
19
|
var _useIsomorphicLayoutEffect = _interopRequireDefault(require("use-isomorphic-layout-effect"));
|
|
20
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
21
|
+
var _primitives = require("@atlaskit/primitives");
|
|
19
22
|
var _utils = require("../utils");
|
|
20
23
|
var _excluded = ["children", "innerProps"],
|
|
21
24
|
_excluded2 = ["children", "innerProps"];
|
|
@@ -53,7 +56,8 @@ function getMenuPlacement(_ref) {
|
|
|
53
56
|
// we can't trust `scrollParent.scrollHeight` --> it may increase when
|
|
54
57
|
// the menu is rendered
|
|
55
58
|
var _scrollParent$getBoun = scrollParent.getBoundingClientRect(),
|
|
56
|
-
scrollHeight = _scrollParent$getBoun.height
|
|
59
|
+
scrollHeight = _scrollParent$getBoun.height,
|
|
60
|
+
scrollParentTop = _scrollParent$getBoun.top;
|
|
57
61
|
var _menuEl$getBoundingCl = menuEl.getBoundingClientRect(),
|
|
58
62
|
menuBottom = _menuEl$getBoundingCl.bottom,
|
|
59
63
|
menuHeight = _menuEl$getBoundingCl.height,
|
|
@@ -62,12 +66,14 @@ function getMenuPlacement(_ref) {
|
|
|
62
66
|
containerTop = _menuEl$offsetParent$.top;
|
|
63
67
|
var viewHeight = isFixedPosition ? window.innerHeight : (0, _utils.normalizedHeight)(scrollParent);
|
|
64
68
|
var scrollTop = (0, _utils.getScrollTop)(scrollParent);
|
|
69
|
+
// use menuTop - scrollParentTop for the actual top space of menu in the scroll container
|
|
70
|
+
var menuTopFromParent = (0, _platformFeatureFlags.fg)('design-system-select-fix-placement') ? menuTop - scrollParentTop : menuTop;
|
|
65
71
|
var marginBottom = parseInt(getComputedStyle(menuEl).marginBottom, 10);
|
|
66
72
|
var marginTop = parseInt(getComputedStyle(menuEl).marginTop, 10);
|
|
67
73
|
var viewSpaceAbove = containerTop - marginTop;
|
|
68
|
-
var viewSpaceBelow = viewHeight -
|
|
74
|
+
var viewSpaceBelow = viewHeight - menuTopFromParent;
|
|
69
75
|
var scrollSpaceAbove = viewSpaceAbove + scrollTop;
|
|
70
|
-
var scrollSpaceBelow = scrollHeight - scrollTop -
|
|
76
|
+
var scrollSpaceBelow = scrollHeight - scrollTop - menuTopFromParent;
|
|
71
77
|
var scrollDown = menuBottom - viewHeight + scrollTop + marginBottom;
|
|
72
78
|
var scrollUp = scrollTop + menuTop - marginTop;
|
|
73
79
|
var scrollDuration = 160;
|
|
@@ -200,15 +206,10 @@ var coercePlacement = function coercePlacement(p) {
|
|
|
200
206
|
return p === 'auto' ? 'bottom' : p;
|
|
201
207
|
};
|
|
202
208
|
var menuCSS = exports.menuCSS = function menuCSS(_ref2) {
|
|
203
|
-
var
|
|
204
|
-
|
|
205
|
-
_ref2$theme = _ref2.theme,
|
|
206
|
-
borderRadius = _ref2$theme.borderRadius,
|
|
207
|
-
spacing = _ref2$theme.spacing,
|
|
208
|
-
colors = _ref2$theme.colors;
|
|
209
|
-
return _ref3 = {
|
|
209
|
+
var placement = _ref2.placement;
|
|
210
|
+
return (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({
|
|
210
211
|
label: 'menu'
|
|
211
|
-
},
|
|
212
|
+
}, alignToControl(placement), '100%'), "position", 'absolute'), "width", '100%'), "zIndex", 1), "borderRadius", "var(--ds-border-radius, 4px)"), "marginBottom", "var(--ds-space-100, 8px)"), "marginTop", "var(--ds-space-100, 8px)"), "backgroundColor", "var(--ds-surface-overlay, white)"), "boxShadow", "var(--ds-shadow-overlay, 0 0 0 1px hsl(0deg 0% 0% / 10%), 0 4px 11px hsl(0deg 0% 0% / 10%))");
|
|
212
213
|
};
|
|
213
214
|
var PortalPlacementContext = /*#__PURE__*/(0, _react.createContext)(null);
|
|
214
215
|
|
|
@@ -220,8 +221,7 @@ var MenuPlacer = exports.MenuPlacer = function MenuPlacer(props) {
|
|
|
220
221
|
maxMenuHeight = props.maxMenuHeight,
|
|
221
222
|
menuPlacement = props.menuPlacement,
|
|
222
223
|
menuPosition = props.menuPosition,
|
|
223
|
-
menuShouldScrollIntoView = props.menuShouldScrollIntoView
|
|
224
|
-
theme = props.theme;
|
|
224
|
+
menuShouldScrollIntoView = props.menuShouldScrollIntoView;
|
|
225
225
|
var _ref4 = (0, _react.useContext)(PortalPlacementContext) || {},
|
|
226
226
|
setPortalPlacement = _ref4.setPortalPlacement;
|
|
227
227
|
var ref = (0, _react.useRef)(null);
|
|
@@ -233,7 +233,8 @@ var MenuPlacer = exports.MenuPlacer = function MenuPlacer(props) {
|
|
|
233
233
|
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
234
234
|
placement = _useState4[0],
|
|
235
235
|
setPlacement = _useState4[1];
|
|
236
|
-
|
|
236
|
+
// The minimum height of the control
|
|
237
|
+
var controlHeight = 38;
|
|
237
238
|
(0, _useIsomorphicLayoutEffect.default)(function () {
|
|
238
239
|
var menuEl = ref.current;
|
|
239
240
|
if (!menuEl) {
|
|
@@ -313,13 +314,10 @@ var MenuList = exports.MenuList = function MenuList(props) {
|
|
|
313
314
|
// ==============================
|
|
314
315
|
|
|
315
316
|
var noticeCSS = function noticeCSS(_ref6) {
|
|
316
|
-
|
|
317
|
-
baseUnit = _ref6$theme.spacing.baseUnit,
|
|
318
|
-
colors = _ref6$theme.colors;
|
|
317
|
+
(0, _objectDestructuringEmpty2.default)(_ref6);
|
|
319
318
|
return {
|
|
320
319
|
textAlign: 'center',
|
|
321
|
-
|
|
322
|
-
padding: "".concat(baseUnit * 2, "px ").concat(baseUnit * 3, "px")
|
|
320
|
+
padding: "var(--ds-space-100, 8px)".concat(" ", "var(--ds-space-150, 12px)")
|
|
323
321
|
};
|
|
324
322
|
};
|
|
325
323
|
var noOptionsMessageCSS = exports.noOptionsMessageCSS = noticeCSS;
|
|
@@ -339,7 +337,9 @@ var NoOptionsMessage = exports.NoOptionsMessage = function NoOptionsMessage(_ref
|
|
|
339
337
|
}), {
|
|
340
338
|
// eslint-disable-next-line jsx-a11y/role-has-required-aria-props
|
|
341
339
|
role: "option"
|
|
342
|
-
}, innerProps),
|
|
340
|
+
}, innerProps), (0, _react2.jsx)(_primitives.Text, {
|
|
341
|
+
color: "color.text.subtle"
|
|
342
|
+
}, children));
|
|
343
343
|
};
|
|
344
344
|
|
|
345
345
|
// eslint-disable-next-line @repo/internal/react/require-jsdoc
|
|
@@ -357,7 +357,9 @@ var LoadingMessage = exports.LoadingMessage = function LoadingMessage(_ref8) {
|
|
|
357
357
|
}), innerProps, {
|
|
358
358
|
// eslint-disable-next-line jsx-a11y/role-has-required-aria-props
|
|
359
359
|
role: "option"
|
|
360
|
-
}),
|
|
360
|
+
}), (0, _react2.jsx)(_primitives.Text, {
|
|
361
|
+
color: "color.text.subtle"
|
|
362
|
+
}, children));
|
|
361
363
|
};
|
|
362
364
|
|
|
363
365
|
// ==============================
|
|
@@ -10,9 +10,11 @@ exports.multiValueRemoveCSS = exports.multiValueLabelCSS = exports.multiValueCSS
|
|
|
10
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
11
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
12
12
|
var _react = require("@emotion/react");
|
|
13
|
+
var _selectClear = _interopRequireDefault(require("@atlaskit/icon/glyph/select-clear"));
|
|
14
|
+
var _cross = _interopRequireDefault(require("@atlaskit/icon/utility/cross"));
|
|
13
15
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
16
|
+
var _primitives = require("@atlaskit/primitives");
|
|
14
17
|
var _utils = require("../utils");
|
|
15
|
-
var _indicators = require("./indicators");
|
|
16
18
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
17
19
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } /**
|
|
18
20
|
* @jsxRuntime classic
|
|
@@ -20,11 +22,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
20
22
|
*/
|
|
21
23
|
var multiValueCSS = exports.multiValueCSS = function multiValueCSS(_ref) {
|
|
22
24
|
var isDisabled = _ref.isDisabled,
|
|
23
|
-
isFocused = _ref.isFocused
|
|
24
|
-
_ref$theme = _ref.theme,
|
|
25
|
-
spacing = _ref$theme.spacing,
|
|
26
|
-
borderRadius = _ref$theme.borderRadius,
|
|
27
|
-
colors = _ref$theme.colors;
|
|
25
|
+
isFocused = _ref.isFocused;
|
|
28
26
|
var backgroundColor;
|
|
29
27
|
var color;
|
|
30
28
|
if (isDisabled) {
|
|
@@ -135,14 +133,52 @@ var MultiValueContainer = exports.MultiValueContainer = MultiValueGeneric;
|
|
|
135
133
|
|
|
136
134
|
// eslint-disable-next-line @repo/internal/react/require-jsdoc
|
|
137
135
|
var MultiValueLabel = exports.MultiValueLabel = MultiValueGeneric;
|
|
136
|
+
var disabledStyles = (0, _react.css)({
|
|
137
|
+
display: 'none'
|
|
138
|
+
});
|
|
139
|
+
var enabledStyles = (0, _react.css)({
|
|
140
|
+
display: 'inherit'
|
|
141
|
+
});
|
|
142
|
+
var iconWrapperStyles = (0, _primitives.xcss)({
|
|
143
|
+
padding: 'space.025'
|
|
144
|
+
});
|
|
145
|
+
var renderIcon = function renderIcon() {
|
|
146
|
+
// eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
|
|
147
|
+
if ((0, _platformFeatureFlags.fg)('platform-component-visual-refresh')) {
|
|
148
|
+
return (0, _react.jsx)(_cross.default, {
|
|
149
|
+
label: "Clear",
|
|
150
|
+
color: "currentColor"
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
// eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
|
|
155
|
+
if ((0, _platformFeatureFlags.fg)('platform-visual-refresh-icons-legacy-facade')) {
|
|
156
|
+
return (0, _react.jsx)(_primitives.Inline, {
|
|
157
|
+
xcss: iconWrapperStyles
|
|
158
|
+
}, (0, _react.jsx)(_cross.default, {
|
|
159
|
+
label: "Clear",
|
|
160
|
+
color: "currentColor"
|
|
161
|
+
}));
|
|
162
|
+
}
|
|
163
|
+
return (
|
|
164
|
+
// eslint-disable-next-line @atlaskit/design-system/no-legacy-icons
|
|
165
|
+
(0, _react.jsx)(_selectClear.default, {
|
|
166
|
+
label: "Clear",
|
|
167
|
+
primaryColor: "transparent",
|
|
168
|
+
size: "small",
|
|
169
|
+
secondaryColor: "inherit"
|
|
170
|
+
})
|
|
171
|
+
);
|
|
172
|
+
};
|
|
138
173
|
function MultiValueRemove(_ref5) {
|
|
139
|
-
var
|
|
174
|
+
var isDisabled = _ref5.isDisabled,
|
|
140
175
|
innerProps = _ref5.innerProps;
|
|
141
176
|
return (0, _react.jsx)("div", (0, _extends2.default)({
|
|
142
177
|
role: "button"
|
|
143
|
-
}, innerProps),
|
|
144
|
-
|
|
145
|
-
|
|
178
|
+
}, innerProps), (0, _react.jsx)("div", {
|
|
179
|
+
css: isDisabled ? disabledStyles : enabledStyles,
|
|
180
|
+
"data-testid": isDisabled ? 'hide-clear-icon' : 'show-clear-icon'
|
|
181
|
+
}, renderIcon()));
|
|
146
182
|
}
|
|
147
183
|
var MultiValue = function MultiValue(props) {
|
|
148
184
|
var children = props.children,
|
|
@@ -175,6 +211,7 @@ var MultiValue = function MultiValue(props) {
|
|
|
175
211
|
})), {}, {
|
|
176
212
|
'aria-label': "Remove ".concat(children || 'option')
|
|
177
213
|
}, removeProps),
|
|
214
|
+
isDisabled: isDisabled,
|
|
178
215
|
selectProps: selectProps
|
|
179
216
|
}));
|
|
180
217
|
};
|
|
@@ -14,8 +14,7 @@ var _utils = require("../utils");
|
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
16
|
var css = exports.css = function css(_ref) {
|
|
17
|
-
var isDisabled = _ref.isDisabled
|
|
18
|
-
spacing = _ref.theme.spacing;
|
|
17
|
+
var isDisabled = _ref.isDisabled;
|
|
19
18
|
return {
|
|
20
19
|
label: 'singleValue',
|
|
21
20
|
gridArea: '1 / 1 / 2 / 3',
|
package/dist/cjs/index.js
CHANGED
|
@@ -22,12 +22,6 @@ Object.defineProperty(exports, "default", {
|
|
|
22
22
|
return _stateManager.default;
|
|
23
23
|
}
|
|
24
24
|
});
|
|
25
|
-
Object.defineProperty(exports, "defaultTheme", {
|
|
26
|
-
enumerable: true,
|
|
27
|
-
get: function get() {
|
|
28
|
-
return _theme.defaultTheme;
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
25
|
Object.defineProperty(exports, "mergeStyles", {
|
|
32
26
|
enumerable: true,
|
|
33
27
|
get: function get() {
|
|
@@ -43,6 +37,5 @@ Object.defineProperty(exports, "useStateManager", {
|
|
|
43
37
|
var _useStateManager = _interopRequireDefault(require("./use-state-manager"));
|
|
44
38
|
var _stateManager = _interopRequireDefault(require("./state-manager"));
|
|
45
39
|
var _styles = require("./styles");
|
|
46
|
-
var _theme = require("./theme");
|
|
47
40
|
var _filters = require("./filters");
|
|
48
41
|
var _components = require("./components");
|