@zendeskgarden/react-dropdowns 9.0.0-next.8 → 9.0.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/dist/esm/elements/combobox/Combobox.js +9 -10
- package/dist/esm/elements/combobox/Field.js +0 -1
- package/dist/esm/elements/combobox/Hint.js +1 -2
- package/dist/esm/elements/combobox/Label.js +1 -2
- package/dist/esm/elements/combobox/Listbox.js +1 -2
- package/dist/esm/elements/combobox/Message.js +1 -2
- package/dist/esm/elements/combobox/OptGroup.js +4 -5
- package/dist/esm/elements/combobox/Option.js +9 -6
- package/dist/esm/elements/combobox/OptionMeta.js +0 -1
- package/dist/esm/elements/combobox/Tag.js +0 -1
- package/dist/esm/elements/menu/Item.js +11 -10
- package/dist/esm/elements/menu/ItemGroup.js +5 -5
- package/dist/esm/elements/menu/ItemMeta.js +0 -1
- package/dist/esm/elements/menu/Menu.js +9 -36
- package/dist/esm/elements/menu/MenuList.js +2 -3
- package/dist/esm/elements/menu/Separator.js +0 -1
- package/dist/esm/node_modules/@zendeskgarden/svg-icons/src/16/check-lg-stroke.svg.js +1 -1
- package/dist/esm/node_modules/@zendeskgarden/svg-icons/src/16/chevron-down-stroke.svg.js +1 -1
- package/dist/esm/node_modules/@zendeskgarden/svg-icons/src/16/chevron-left-stroke.svg.js +1 -1
- package/dist/esm/node_modules/@zendeskgarden/svg-icons/src/16/chevron-right-stroke.svg.js +1 -1
- package/dist/esm/node_modules/@zendeskgarden/svg-icons/src/16/plus-stroke.svg.js +1 -1
- package/dist/esm/views/combobox/StyledCombobox.js +2 -5
- package/dist/esm/views/combobox/StyledContainer.js +2 -5
- package/dist/esm/views/combobox/StyledField.js +2 -5
- package/dist/esm/views/combobox/StyledFloatingListbox.js +2 -5
- package/dist/esm/views/combobox/StyledHint.js +2 -5
- package/dist/esm/views/combobox/StyledInput.js +10 -7
- package/dist/esm/views/combobox/StyledInputGroup.js +2 -5
- package/dist/esm/views/combobox/StyledInputIcon.js +29 -26
- package/dist/esm/views/combobox/StyledLabel.js +2 -5
- package/dist/esm/views/combobox/StyledListbox.js +1 -5
- package/dist/esm/views/combobox/StyledListboxSeparator.js +10 -7
- package/dist/esm/views/combobox/StyledMessage.js +2 -5
- package/dist/esm/views/combobox/StyledOptGroup.js +2 -5
- package/dist/esm/views/combobox/StyledOption.js +34 -16
- package/dist/esm/views/combobox/StyledOptionContent.js +2 -5
- package/dist/esm/views/combobox/StyledOptionIcon.js +26 -15
- package/dist/esm/views/combobox/StyledOptionMeta.js +12 -7
- package/dist/esm/views/combobox/StyledOptionTypeIcon.js +21 -24
- package/dist/esm/views/combobox/StyledTag.js +6 -6
- package/dist/esm/views/combobox/StyledTagsButton.js +10 -7
- package/dist/esm/views/combobox/StyledTrigger.js +65 -37
- package/dist/esm/views/combobox/StyledValue.js +11 -7
- package/dist/esm/views/menu/StyledFloatingMenu.js +2 -5
- package/dist/esm/views/menu/StyledItem.js +2 -5
- package/dist/esm/views/menu/StyledItemContent.js +2 -5
- package/dist/esm/views/menu/StyledItemGroup.js +2 -5
- package/dist/esm/views/menu/StyledItemIcon.js +2 -5
- package/dist/esm/views/menu/StyledItemMeta.js +2 -5
- package/dist/esm/views/menu/StyledItemTypeIcon.js +2 -5
- package/dist/esm/views/menu/StyledMenu.js +4 -7
- package/dist/esm/views/menu/StyledSeparator.js +2 -5
- package/dist/index.cjs.js +387 -370
- package/dist/typings/context/useComboboxContext.d.ts +12 -13
- package/dist/typings/context/useFieldContext.d.ts +6 -6
- package/dist/typings/context/useItemContext.d.ts +2 -3
- package/dist/typings/context/useItemGroupContext.d.ts +2 -3
- package/dist/typings/context/useMenuContext.d.ts +10 -11
- package/dist/typings/context/useOptionContext.d.ts +2 -3
- package/dist/typings/elements/combobox/Field.d.ts +3 -1
- package/dist/typings/elements/combobox/Option.d.ts +3 -1
- package/dist/typings/elements/combobox/Tag.d.ts +3 -1
- package/dist/typings/elements/combobox/TagAvatar.d.ts +0 -1
- package/dist/typings/elements/combobox/utils.d.ts +2 -2
- package/dist/typings/elements/menu/Item.d.ts +3 -1
- package/dist/typings/elements/menu/utils.d.ts +2 -2
- package/dist/typings/types/index.d.ts +2 -0
- package/dist/typings/views/combobox/StyledHint.d.ts +0 -1
- package/dist/typings/views/combobox/StyledInputIcon.d.ts +6 -7
- package/dist/typings/views/combobox/StyledLabel.d.ts +0 -1
- package/dist/typings/views/combobox/StyledMessage.d.ts +0 -1
- package/dist/typings/views/combobox/StyledOptionIcon.d.ts +8 -4
- package/dist/typings/views/combobox/StyledOptionTypeIcon.d.ts +3 -4
- package/dist/typings/views/combobox/StyledTag.d.ts +2 -6
- package/dist/typings/views/index.d.ts +0 -1
- package/dist/typings/views/menu/StyledItemIcon.d.ts +2 -3
- package/dist/typings/views/menu/StyledItemTypeIcon.d.ts +1 -2
- package/package.json +12 -13
- package/LICENSE.md +0 -176
- package/dist/esm/views/menu/StyledButton.js +0 -23
- package/dist/typings/views/menu/StyledButton.d.ts +0 -20
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* found at http://www.apache.org/licenses/LICENSE-2.0.
|
|
6
6
|
*/
|
|
7
7
|
import styled, { css } from 'styled-components';
|
|
8
|
-
import { retrieveComponentStyles
|
|
8
|
+
import { retrieveComponentStyles } from '@zendeskgarden/react-theming';
|
|
9
9
|
|
|
10
10
|
const COMPONENT_ID = 'dropdowns.combobox.input_group';
|
|
11
11
|
const sizeStyles = props => {
|
|
@@ -14,13 +14,10 @@ const sizeStyles = props => {
|
|
|
14
14
|
};
|
|
15
15
|
const StyledInputGroup = styled.div.attrs({
|
|
16
16
|
'data-garden-id': COMPONENT_ID,
|
|
17
|
-
'data-garden-version': '9.0.0
|
|
17
|
+
'data-garden-version': '9.0.0'
|
|
18
18
|
}).withConfig({
|
|
19
19
|
displayName: "StyledInputGroup",
|
|
20
20
|
componentId: "sc-yx3q7u-0"
|
|
21
21
|
})(["display:flex;flex-grow:1;flex-wrap:wrap;", ";", ";"], sizeStyles, props => retrieveComponentStyles(COMPONENT_ID, props));
|
|
22
|
-
StyledInputGroup.defaultProps = {
|
|
23
|
-
theme: DEFAULT_THEME
|
|
24
|
-
};
|
|
25
22
|
|
|
26
23
|
export { StyledInputGroup };
|
|
@@ -4,53 +4,56 @@
|
|
|
4
4
|
* Use of this source code is governed under the Apache License, Version 2.0
|
|
5
5
|
* found at http://www.apache.org/licenses/LICENSE-2.0.
|
|
6
6
|
*/
|
|
7
|
-
import { cloneElement, Children } from 'react';
|
|
8
7
|
import styled, { css } from 'styled-components';
|
|
9
8
|
import { math } from 'polished';
|
|
10
|
-
import {
|
|
9
|
+
import { StyledBaseIcon, retrieveComponentStyles, getColor } from '@zendeskgarden/react-theming';
|
|
11
10
|
import { getHeight } from './StyledInput.js';
|
|
12
11
|
import { StyledTrigger } from './StyledTrigger.js';
|
|
13
12
|
|
|
14
13
|
const COMPONENT_ID = 'dropdowns.combobox.input_icon';
|
|
15
|
-
const colorStyles =
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
14
|
+
const colorStyles = _ref => {
|
|
15
|
+
let {
|
|
16
|
+
theme,
|
|
17
|
+
$isLabelHovered
|
|
18
|
+
} = _ref;
|
|
19
|
+
const options = {
|
|
20
|
+
theme,
|
|
21
|
+
variable: 'foreground.subtle'
|
|
22
|
+
};
|
|
23
|
+
const color = getColor(options);
|
|
24
|
+
const focusColor = getColor({
|
|
25
|
+
...options,
|
|
26
|
+
dark: {
|
|
27
|
+
offset: -100
|
|
28
|
+
},
|
|
29
|
+
light: {
|
|
30
|
+
offset: 100
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
const disabledColor = getColor({
|
|
34
|
+
theme,
|
|
35
|
+
variable: 'foreground.disabled'
|
|
36
|
+
});
|
|
37
|
+
return css(["color:", ";", ":hover &&,", ":focus-within &&,", ":focus &&{color:", ";}", "[aria-disabled='true'] &&{color:", ";}"], $isLabelHovered ? focusColor : color, StyledTrigger, StyledTrigger, StyledTrigger, focusColor, StyledTrigger, disabledColor);
|
|
20
38
|
};
|
|
21
39
|
const sizeStyles = props => {
|
|
22
40
|
const size = props.theme.iconSizes.md;
|
|
23
41
|
const position = math(`(${getHeight(props)} - ${size}) / 2`);
|
|
24
42
|
const margin = `${props.theme.space.base * 2}px`;
|
|
25
43
|
let side;
|
|
26
|
-
if (props
|
|
44
|
+
if (props.$isEnd) {
|
|
27
45
|
side = props.theme.rtl ? 'right' : 'left';
|
|
28
46
|
} else {
|
|
29
47
|
side = props.theme.rtl ? 'left' : 'right';
|
|
30
48
|
}
|
|
31
49
|
return css(["top:", ";margin-", ":", ";width:", ";height:", ";"], position, side, margin, size, size);
|
|
32
50
|
};
|
|
33
|
-
const StyledInputIcon = styled(
|
|
34
|
-
let {
|
|
35
|
-
children,
|
|
36
|
-
isCompact,
|
|
37
|
-
isDisabled,
|
|
38
|
-
isEnd,
|
|
39
|
-
isLabelHovered,
|
|
40
|
-
isRotated,
|
|
41
|
-
theme,
|
|
42
|
-
...props
|
|
43
|
-
} = _ref;
|
|
44
|
-
return cloneElement(Children.only(children), props);
|
|
45
|
-
}).attrs({
|
|
51
|
+
const StyledInputIcon = styled(StyledBaseIcon).attrs({
|
|
46
52
|
'data-garden-id': COMPONENT_ID,
|
|
47
|
-
'data-garden-version': '9.0.0
|
|
53
|
+
'data-garden-version': '9.0.0'
|
|
48
54
|
}).withConfig({
|
|
49
55
|
displayName: "StyledInputIcon",
|
|
50
56
|
componentId: "sc-gqbs1s-0"
|
|
51
|
-
})(["position:sticky;flex-shrink:0;transform:", ";transition:transform 0.25s ease-in-out,color 0.25s ease-in-out;", ";", ";", ";"], props => props
|
|
52
|
-
StyledInputIcon.defaultProps = {
|
|
53
|
-
theme: DEFAULT_THEME
|
|
54
|
-
};
|
|
57
|
+
})(["position:sticky;flex-shrink:0;transform:", ";transition:transform 0.25s ease-in-out,color 0.25s ease-in-out;", ";", ";", ";"], props => props.$isRotated && `rotate(${props.theme.rtl ? '-' : '+'}180deg)`, sizeStyles, colorStyles, props => retrieveComponentStyles(COMPONENT_ID, props));
|
|
55
58
|
|
|
56
59
|
export { StyledInputIcon };
|
|
@@ -5,19 +5,16 @@
|
|
|
5
5
|
* found at http://www.apache.org/licenses/LICENSE-2.0.
|
|
6
6
|
*/
|
|
7
7
|
import styled from 'styled-components';
|
|
8
|
-
import { retrieveComponentStyles
|
|
8
|
+
import { retrieveComponentStyles } from '@zendeskgarden/react-theming';
|
|
9
9
|
import { Field } from '@zendeskgarden/react-forms';
|
|
10
10
|
|
|
11
11
|
const COMPONENT_ID = 'dropdowns.combobox.label';
|
|
12
12
|
const StyledLabel = styled(Field.Label).attrs({
|
|
13
13
|
'data-garden-id': COMPONENT_ID,
|
|
14
|
-
'data-garden-version': '9.0.0
|
|
14
|
+
'data-garden-version': '9.0.0'
|
|
15
15
|
}).withConfig({
|
|
16
16
|
displayName: "StyledLabel",
|
|
17
17
|
componentId: "sc-az6now-0"
|
|
18
18
|
})(["vertical-align:revert;", ";"], props => retrieveComponentStyles(COMPONENT_ID, props));
|
|
19
|
-
StyledLabel.defaultProps = {
|
|
20
|
-
theme: DEFAULT_THEME
|
|
21
|
-
};
|
|
22
19
|
|
|
23
20
|
export { StyledLabel };
|
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
* found at http://www.apache.org/licenses/LICENSE-2.0.
|
|
6
6
|
*/
|
|
7
7
|
import styled, { css } from 'styled-components';
|
|
8
|
-
import { DEFAULT_THEME } from '@zendeskgarden/react-theming';
|
|
9
8
|
import { StyledOption, getMinHeight } from './StyledOption.js';
|
|
10
9
|
import { StyledOptionContent } from './StyledOptionContent.js';
|
|
11
10
|
import { StyledOptGroup } from './StyledOptGroup.js';
|
|
@@ -19,13 +18,10 @@ const sizeStyles = props => {
|
|
|
19
18
|
};
|
|
20
19
|
const StyledListbox = styled.ul.attrs({
|
|
21
20
|
'data-garden-id': COMPONENT_ID,
|
|
22
|
-
'data-garden-version': '9.0.0
|
|
21
|
+
'data-garden-version': '9.0.0'
|
|
23
22
|
}).withConfig({
|
|
24
23
|
displayName: "StyledListbox",
|
|
25
24
|
componentId: "sc-1k13ba7-0"
|
|
26
25
|
})(["overflow-y:auto;list-style-type:none;", ";&&&{display:block;}", ":first-child ", " ", ":first-child ", "[role='none']:first-child{display:none;}"], sizeStyles, StyledOption, StyledOptionContent, StyledOptGroup, StyledListboxSeparator);
|
|
27
|
-
StyledListbox.defaultProps = {
|
|
28
|
-
theme: DEFAULT_THEME
|
|
29
|
-
};
|
|
30
26
|
|
|
31
27
|
export { StyledListbox };
|
|
@@ -5,11 +5,17 @@
|
|
|
5
5
|
* found at http://www.apache.org/licenses/LICENSE-2.0.
|
|
6
6
|
*/
|
|
7
7
|
import styled, { css } from 'styled-components';
|
|
8
|
-
import { retrieveComponentStyles,
|
|
8
|
+
import { retrieveComponentStyles, getColor } from '@zendeskgarden/react-theming';
|
|
9
9
|
|
|
10
10
|
const COMPONENT_ID = 'dropdowns.combobox.separator';
|
|
11
|
-
const colorStyles =
|
|
12
|
-
|
|
11
|
+
const colorStyles = _ref => {
|
|
12
|
+
let {
|
|
13
|
+
theme
|
|
14
|
+
} = _ref;
|
|
15
|
+
const backgroundColor = getColor({
|
|
16
|
+
theme,
|
|
17
|
+
variable: 'border.subtle'
|
|
18
|
+
});
|
|
13
19
|
return css(["background-color:", ";"], backgroundColor);
|
|
14
20
|
};
|
|
15
21
|
const sizeStyles = props => {
|
|
@@ -19,13 +25,10 @@ const sizeStyles = props => {
|
|
|
19
25
|
};
|
|
20
26
|
const StyledListboxSeparator = styled.li.attrs({
|
|
21
27
|
'data-garden-id': COMPONENT_ID,
|
|
22
|
-
'data-garden-version': '9.0.0
|
|
28
|
+
'data-garden-version': '9.0.0'
|
|
23
29
|
}).withConfig({
|
|
24
30
|
displayName: "StyledListboxSeparator",
|
|
25
31
|
componentId: "sc-1p6toh2-0"
|
|
26
32
|
})(["cursor:default;", ";", ";", ";"], sizeStyles, colorStyles, props => retrieveComponentStyles(COMPONENT_ID, props));
|
|
27
|
-
StyledListboxSeparator.defaultProps = {
|
|
28
|
-
theme: DEFAULT_THEME
|
|
29
|
-
};
|
|
30
33
|
|
|
31
34
|
export { StyledListboxSeparator };
|
|
@@ -5,19 +5,16 @@
|
|
|
5
5
|
* found at http://www.apache.org/licenses/LICENSE-2.0.
|
|
6
6
|
*/
|
|
7
7
|
import styled from 'styled-components';
|
|
8
|
-
import { retrieveComponentStyles
|
|
8
|
+
import { retrieveComponentStyles } from '@zendeskgarden/react-theming';
|
|
9
9
|
import { Field } from '@zendeskgarden/react-forms';
|
|
10
10
|
|
|
11
11
|
const COMPONENT_ID = 'dropdowns.combobox.message';
|
|
12
12
|
const StyledMessage = styled(Field.Message).attrs({
|
|
13
13
|
'data-garden-id': COMPONENT_ID,
|
|
14
|
-
'data-garden-version': '9.0.0
|
|
14
|
+
'data-garden-version': '9.0.0'
|
|
15
15
|
}).withConfig({
|
|
16
16
|
displayName: "StyledMessage",
|
|
17
17
|
componentId: "sc-jux8m5-0"
|
|
18
18
|
})(["", ";"], props => retrieveComponentStyles(COMPONENT_ID, props));
|
|
19
|
-
StyledMessage.defaultProps = {
|
|
20
|
-
theme: DEFAULT_THEME
|
|
21
|
-
};
|
|
22
19
|
|
|
23
20
|
export { StyledMessage };
|
|
@@ -5,18 +5,15 @@
|
|
|
5
5
|
* found at http://www.apache.org/licenses/LICENSE-2.0.
|
|
6
6
|
*/
|
|
7
7
|
import styled from 'styled-components';
|
|
8
|
-
import { retrieveComponentStyles
|
|
8
|
+
import { retrieveComponentStyles } from '@zendeskgarden/react-theming';
|
|
9
9
|
|
|
10
10
|
const COMPONENT_ID = 'dropdowns.combobox.optgroup';
|
|
11
11
|
const StyledOptGroup = styled.ul.attrs({
|
|
12
12
|
'data-garden-id': COMPONENT_ID,
|
|
13
|
-
'data-garden-version': '9.0.0
|
|
13
|
+
'data-garden-version': '9.0.0'
|
|
14
14
|
}).withConfig({
|
|
15
15
|
displayName: "StyledOptGroup",
|
|
16
16
|
componentId: "sc-1kavqsx-0"
|
|
17
17
|
})(["margin:0;padding:0;list-style-type:none;", ";"], props => retrieveComponentStyles(COMPONENT_ID, props));
|
|
18
|
-
StyledOptGroup.defaultProps = {
|
|
19
|
-
theme: DEFAULT_THEME
|
|
20
|
-
};
|
|
21
18
|
|
|
22
19
|
export { StyledOptGroup };
|
|
@@ -6,24 +6,45 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import styled, { css } from 'styled-components';
|
|
8
8
|
import { hideVisually, math } from 'polished';
|
|
9
|
-
import { retrieveComponentStyles,
|
|
9
|
+
import { retrieveComponentStyles, getColor } from '@zendeskgarden/react-theming';
|
|
10
10
|
|
|
11
11
|
const COMPONENT_ID = 'dropdowns.combobox.option';
|
|
12
|
-
const colorStyles =
|
|
12
|
+
const colorStyles = _ref => {
|
|
13
|
+
let {
|
|
14
|
+
theme,
|
|
15
|
+
isActive,
|
|
16
|
+
$type
|
|
17
|
+
} = _ref;
|
|
13
18
|
let backgroundColor;
|
|
14
19
|
let boxShadow;
|
|
15
|
-
if (
|
|
16
|
-
const
|
|
17
|
-
backgroundColor =
|
|
18
|
-
|
|
20
|
+
if (isActive && $type !== 'group' && $type !== 'header') {
|
|
21
|
+
const variable = 'background.primaryEmphasis';
|
|
22
|
+
backgroundColor = getColor({
|
|
23
|
+
theme,
|
|
24
|
+
variable,
|
|
25
|
+
transparency: theme.opacity[100]
|
|
26
|
+
});
|
|
27
|
+
boxShadow = `inset ${theme.rtl ? `-${theme.shadowWidths.md}` : theme.shadowWidths.md} 0 ${getColor({
|
|
28
|
+
theme,
|
|
29
|
+
variable
|
|
30
|
+
})}`;
|
|
19
31
|
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
32
|
+
let foregroundVariable;
|
|
33
|
+
if ($type === 'add') {
|
|
34
|
+
foregroundVariable = 'foreground.primary';
|
|
35
|
+
} else if ($type === 'danger') {
|
|
36
|
+
foregroundVariable = 'foreground.danger';
|
|
37
|
+
} else {
|
|
38
|
+
foregroundVariable = 'foreground.default';
|
|
26
39
|
}
|
|
40
|
+
const foregroundColor = getColor({
|
|
41
|
+
theme,
|
|
42
|
+
variable: foregroundVariable
|
|
43
|
+
});
|
|
44
|
+
const disabledForegroundColor = getColor({
|
|
45
|
+
theme,
|
|
46
|
+
variable: 'foreground.disabled'
|
|
47
|
+
});
|
|
27
48
|
return css(["box-shadow:", ";background-color:", ";color:", ";&[aria-disabled='true']{background-color:transparent;color:", ";}"], boxShadow, backgroundColor, foregroundColor, disabledForegroundColor);
|
|
28
49
|
};
|
|
29
50
|
const getMinHeight = props => props.theme.space.base * (props.isCompact ? 7 : 9);
|
|
@@ -36,13 +57,10 @@ const sizeStyles = props => {
|
|
|
36
57
|
};
|
|
37
58
|
const StyledOption = styled.li.attrs({
|
|
38
59
|
'data-garden-id': COMPONENT_ID,
|
|
39
|
-
'data-garden-version': '9.0.0
|
|
60
|
+
'data-garden-version': '9.0.0'
|
|
40
61
|
}).withConfig({
|
|
41
62
|
displayName: "StyledOption",
|
|
42
63
|
componentId: "sc-jl4wn6-0"
|
|
43
64
|
})(["display:flex;position:relative;transition:color 0.25s ease-in-out;cursor:", ";overflow-wrap:anywhere;font-weight:", ";user-select:none;&:focus{outline:none;}", ";", ";&[aria-disabled='true']{cursor:default;}&[aria-hidden='true']{", ";}", ";"], props => props.$type === 'group' || props.$type === 'header' ? 'default' : 'pointer', props => props.$type === 'header' || props.$type === 'previous' ? props.theme.fontWeights.semibold : props.theme.fontWeights.regular, sizeStyles, colorStyles, hideVisually(), props => retrieveComponentStyles(COMPONENT_ID, props));
|
|
44
|
-
StyledOption.defaultProps = {
|
|
45
|
-
theme: DEFAULT_THEME
|
|
46
|
-
};
|
|
47
65
|
|
|
48
66
|
export { StyledOption, getMinHeight };
|
|
@@ -5,18 +5,15 @@
|
|
|
5
5
|
* found at http://www.apache.org/licenses/LICENSE-2.0.
|
|
6
6
|
*/
|
|
7
7
|
import styled from 'styled-components';
|
|
8
|
-
import { retrieveComponentStyles
|
|
8
|
+
import { retrieveComponentStyles } from '@zendeskgarden/react-theming';
|
|
9
9
|
|
|
10
10
|
const COMPONENT_ID = 'dropdowns.combobox.option.content';
|
|
11
11
|
const StyledOptionContent = styled.div.attrs({
|
|
12
12
|
'data-garden-id': COMPONENT_ID,
|
|
13
|
-
'data-garden-version': '9.0.0
|
|
13
|
+
'data-garden-version': '9.0.0'
|
|
14
14
|
}).withConfig({
|
|
15
15
|
displayName: "StyledOptionContent",
|
|
16
16
|
componentId: "sc-121ujpu-0"
|
|
17
17
|
})(["display:flex;flex-direction:column;flex-grow:1;", ";"], props => retrieveComponentStyles(COMPONENT_ID, props));
|
|
18
|
-
StyledOptionContent.defaultProps = {
|
|
19
|
-
theme: DEFAULT_THEME
|
|
20
|
-
};
|
|
21
18
|
|
|
22
19
|
export { StyledOptionContent };
|
|
@@ -6,32 +6,43 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import styled, { css } from 'styled-components';
|
|
8
8
|
import { math } from 'polished';
|
|
9
|
-
import { retrieveComponentStyles,
|
|
10
|
-
import { cloneElement, Children } from 'react';
|
|
9
|
+
import { StyledBaseIcon, retrieveComponentStyles, getColor } from '@zendeskgarden/react-theming';
|
|
11
10
|
|
|
12
11
|
const COMPONENT_ID = 'dropdowns.combobox.option.icon';
|
|
12
|
+
const colorStyles = _ref => {
|
|
13
|
+
let {
|
|
14
|
+
theme,
|
|
15
|
+
$isDisabled,
|
|
16
|
+
$type
|
|
17
|
+
} = _ref;
|
|
18
|
+
let variable;
|
|
19
|
+
if ($isDisabled) {
|
|
20
|
+
variable = 'foreground.disabled';
|
|
21
|
+
} else if ($type === 'danger') {
|
|
22
|
+
variable = 'foreground.danger';
|
|
23
|
+
} else if ($type === 'add') {
|
|
24
|
+
variable = 'foreground.primary';
|
|
25
|
+
} else {
|
|
26
|
+
variable = 'foreground.subtle';
|
|
27
|
+
}
|
|
28
|
+
const color = getColor({
|
|
29
|
+
theme,
|
|
30
|
+
variable
|
|
31
|
+
});
|
|
32
|
+
return css(["color:", ";"], color);
|
|
33
|
+
};
|
|
13
34
|
const sizeStyles = props => {
|
|
14
35
|
const size = props.theme.iconSizes.md;
|
|
15
36
|
const marginTop = math(`(${props.theme.lineHeights.md} - ${size}) / 2`);
|
|
16
37
|
const marginHorizontal = `${props.theme.space.base * 2}px`;
|
|
17
38
|
return css(["margin-top:", ";margin-", ":", ";width:", ";height:", ";"], marginTop, props.theme.rtl ? 'left' : 'right', marginHorizontal, size, size);
|
|
18
39
|
};
|
|
19
|
-
const StyledOptionIcon = styled(
|
|
20
|
-
let {
|
|
21
|
-
children,
|
|
22
|
-
theme,
|
|
23
|
-
...props
|
|
24
|
-
} = _ref;
|
|
25
|
-
return cloneElement(Children.only(children), props);
|
|
26
|
-
}).attrs({
|
|
40
|
+
const StyledOptionIcon = styled(StyledBaseIcon).attrs({
|
|
27
41
|
'data-garden-id': COMPONENT_ID,
|
|
28
|
-
'data-garden-version': '9.0.0
|
|
42
|
+
'data-garden-version': '9.0.0'
|
|
29
43
|
}).withConfig({
|
|
30
44
|
displayName: "StyledOptionIcon",
|
|
31
45
|
componentId: "sc-qsab3y-0"
|
|
32
|
-
})(["flex-shrink:0;", ";", ";"], sizeStyles, props => retrieveComponentStyles(COMPONENT_ID, props));
|
|
33
|
-
StyledOptionIcon.defaultProps = {
|
|
34
|
-
theme: DEFAULT_THEME
|
|
35
|
-
};
|
|
46
|
+
})(["flex-shrink:0;", ";", ";", ";"], sizeStyles, colorStyles, props => retrieveComponentStyles(COMPONENT_ID, props));
|
|
36
47
|
|
|
37
48
|
export { StyledOptionIcon };
|
|
@@ -5,11 +5,19 @@
|
|
|
5
5
|
* found at http://www.apache.org/licenses/LICENSE-2.0.
|
|
6
6
|
*/
|
|
7
7
|
import styled, { css } from 'styled-components';
|
|
8
|
-
import { retrieveComponentStyles,
|
|
8
|
+
import { retrieveComponentStyles, getColor } from '@zendeskgarden/react-theming';
|
|
9
9
|
|
|
10
10
|
const COMPONENT_ID = 'dropdowns.combobox.option.meta';
|
|
11
|
-
const colorStyles =
|
|
12
|
-
|
|
11
|
+
const colorStyles = _ref => {
|
|
12
|
+
let {
|
|
13
|
+
theme,
|
|
14
|
+
isDisabled
|
|
15
|
+
} = _ref;
|
|
16
|
+
const variable = isDisabled ? 'foreground.disabled' : 'foreground.subtle';
|
|
17
|
+
const color = getColor({
|
|
18
|
+
theme,
|
|
19
|
+
variable
|
|
20
|
+
});
|
|
13
21
|
return css(["color:", ";"], color);
|
|
14
22
|
};
|
|
15
23
|
const sizeStyles = props => {
|
|
@@ -19,13 +27,10 @@ const sizeStyles = props => {
|
|
|
19
27
|
};
|
|
20
28
|
const StyledOptionMeta = styled.div.attrs({
|
|
21
29
|
'data-garden-id': COMPONENT_ID,
|
|
22
|
-
'data-garden-version': '9.0.0
|
|
30
|
+
'data-garden-version': '9.0.0'
|
|
23
31
|
}).withConfig({
|
|
24
32
|
displayName: "StyledOptionMeta",
|
|
25
33
|
componentId: "sc-j6pu10-0"
|
|
26
34
|
})(["transition:color 0.25s ease-in-out;font-weight:", ";", ";", ";", ";"], props => props.theme.fontWeights.regular, sizeStyles, colorStyles, props => retrieveComponentStyles(COMPONENT_ID, props));
|
|
27
|
-
StyledOptionMeta.defaultProps = {
|
|
28
|
-
theme: DEFAULT_THEME
|
|
29
|
-
};
|
|
30
35
|
|
|
31
36
|
export { StyledOptionMeta };
|
|
@@ -4,22 +4,31 @@
|
|
|
4
4
|
* Use of this source code is governed under the Apache License, Version 2.0
|
|
5
5
|
* found at http://www.apache.org/licenses/LICENSE-2.0.
|
|
6
6
|
*/
|
|
7
|
-
import { cloneElement, Children } from 'react';
|
|
8
7
|
import styled, { css } from 'styled-components';
|
|
9
8
|
import { math } from 'polished';
|
|
10
|
-
import {
|
|
9
|
+
import { StyledBaseIcon, retrieveComponentStyles, getColor } from '@zendeskgarden/react-theming';
|
|
11
10
|
import { StyledOption, getMinHeight } from './StyledOption.js';
|
|
12
11
|
|
|
13
12
|
const COMPONENT_ID = 'dropdowns.combobox.option.type_icon';
|
|
14
|
-
const colorStyles =
|
|
15
|
-
|
|
13
|
+
const colorStyles = _ref => {
|
|
14
|
+
let {
|
|
15
|
+
theme,
|
|
16
|
+
$type
|
|
17
|
+
} = _ref;
|
|
18
|
+
const opacity = $type && $type !== 'danger' ? 1 : 0;
|
|
16
19
|
let color;
|
|
17
|
-
if (
|
|
20
|
+
if ($type === 'add') {
|
|
18
21
|
color = 'inherit';
|
|
19
|
-
} else if (
|
|
20
|
-
color =
|
|
22
|
+
} else if ($type === 'header' || $type === 'next' || $type === 'previous') {
|
|
23
|
+
color = getColor({
|
|
24
|
+
theme,
|
|
25
|
+
variable: 'foreground.subtle'
|
|
26
|
+
});
|
|
21
27
|
} else {
|
|
22
|
-
color =
|
|
28
|
+
color = getColor({
|
|
29
|
+
theme,
|
|
30
|
+
variable: 'foreground.primary'
|
|
31
|
+
});
|
|
23
32
|
}
|
|
24
33
|
return css(["opacity:", ";color:", ";", "[aria-selected='true'] > &{opacity:1;}", "[aria-disabled='true'] > &{color:inherit;}"], opacity, color, StyledOption, StyledOption);
|
|
25
34
|
};
|
|
@@ -28,31 +37,19 @@ const sizeStyles = props => {
|
|
|
28
37
|
const position = `${props.theme.space.base * 3}px`;
|
|
29
38
|
const top = math(`(${getMinHeight(props)} - ${size}) / 2`);
|
|
30
39
|
let side;
|
|
31
|
-
if (props
|
|
40
|
+
if (props.$type === 'next') {
|
|
32
41
|
side = props.theme.rtl ? 'left' : 'right';
|
|
33
42
|
} else {
|
|
34
43
|
side = props.theme.rtl ? 'right' : 'left';
|
|
35
44
|
}
|
|
36
45
|
return css(["top:", ";", ":", ";width:", ";height:", ";"], top, side, position, size, size);
|
|
37
46
|
};
|
|
38
|
-
const StyledOptionTypeIcon = styled(
|
|
39
|
-
let {
|
|
40
|
-
children,
|
|
41
|
-
isCompact,
|
|
42
|
-
theme,
|
|
43
|
-
type,
|
|
44
|
-
...props
|
|
45
|
-
} = _ref;
|
|
46
|
-
return cloneElement(Children.only(children), props);
|
|
47
|
-
}).attrs({
|
|
47
|
+
const StyledOptionTypeIcon = styled(StyledBaseIcon).attrs({
|
|
48
48
|
'data-garden-id': COMPONENT_ID,
|
|
49
|
-
'data-garden-version': '9.0.0
|
|
49
|
+
'data-garden-version': '9.0.0'
|
|
50
50
|
}).withConfig({
|
|
51
51
|
displayName: "StyledOptionTypeIcon",
|
|
52
52
|
componentId: "sc-xpink2-0"
|
|
53
|
-
})(["position:absolute;transform:", ";transition:opacity 0.1s ease-in-out;", ";", ";", ";"], props => props.theme.rtl && (props
|
|
54
|
-
StyledOptionTypeIcon.defaultProps = {
|
|
55
|
-
theme: DEFAULT_THEME
|
|
56
|
-
};
|
|
53
|
+
})(["position:absolute;transform:", ";transition:opacity 0.1s ease-in-out;", ";", ";", ";"], props => props.theme.rtl && (props.$type === 'next' || props.$type === 'previous') && 'rotate(180deg)', sizeStyles, colorStyles, props => retrieveComponentStyles(COMPONENT_ID, props));
|
|
57
54
|
|
|
58
55
|
export { StyledOptionTypeIcon };
|
|
@@ -6,19 +6,19 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import styled from 'styled-components';
|
|
8
8
|
import { hideVisually } from 'polished';
|
|
9
|
-
import {
|
|
9
|
+
import { getColor, retrieveComponentStyles } from '@zendeskgarden/react-theming';
|
|
10
10
|
import { Tag } from '@zendeskgarden/react-tags';
|
|
11
11
|
|
|
12
12
|
const COMPONENT_ID = 'dropdowns.combobox.tag';
|
|
13
13
|
const StyledTag = styled(Tag).attrs({
|
|
14
14
|
'data-garden-id': COMPONENT_ID,
|
|
15
|
-
'data-garden-version': '9.0.0
|
|
15
|
+
'data-garden-version': '9.0.0'
|
|
16
16
|
}).withConfig({
|
|
17
17
|
displayName: "StyledTag",
|
|
18
18
|
componentId: "sc-1alam0r-0"
|
|
19
|
-
})(["&[aria-disabled='true']{color:", ";}&[hidden]{display:revert;", "}", ";"], props => props.hue ? undefined :
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
};
|
|
19
|
+
})(["&[aria-disabled='true']{color:", ";}&[hidden]{display:revert;", "}", ";"], props => props.hue ? undefined : getColor({
|
|
20
|
+
theme: props.theme,
|
|
21
|
+
variable: 'foreground.disabled'
|
|
22
|
+
}), hideVisually(), props => retrieveComponentStyles(COMPONENT_ID, props));
|
|
23
23
|
|
|
24
24
|
export { StyledTag };
|
|
@@ -5,24 +5,27 @@
|
|
|
5
5
|
* found at http://www.apache.org/licenses/LICENSE-2.0.
|
|
6
6
|
*/
|
|
7
7
|
import styled, { css } from 'styled-components';
|
|
8
|
-
import { retrieveComponentStyles,
|
|
8
|
+
import { retrieveComponentStyles, getColor } from '@zendeskgarden/react-theming';
|
|
9
9
|
import { StyledValue } from './StyledValue.js';
|
|
10
10
|
|
|
11
11
|
const COMPONENT_ID = 'dropdowns.combobox.tags_button';
|
|
12
|
-
const colorStyles =
|
|
13
|
-
|
|
12
|
+
const colorStyles = _ref => {
|
|
13
|
+
let {
|
|
14
|
+
theme
|
|
15
|
+
} = _ref;
|
|
16
|
+
const color = getColor({
|
|
17
|
+
theme,
|
|
18
|
+
variable: 'foreground.primary'
|
|
19
|
+
});
|
|
14
20
|
return css(["color:", ";&:disabled{color:inherit;}"], color);
|
|
15
21
|
};
|
|
16
22
|
const StyledTagsButton = styled(StyledValue).attrs({
|
|
17
23
|
as: 'button',
|
|
18
24
|
'data-garden-id': COMPONENT_ID,
|
|
19
|
-
'data-garden-version': '9.0.0
|
|
25
|
+
'data-garden-version': '9.0.0'
|
|
20
26
|
}).withConfig({
|
|
21
27
|
displayName: "StyledTagsButton",
|
|
22
28
|
componentId: "sc-6q5w33-0"
|
|
23
29
|
})(["display:inline-flex;flex:0 1 auto;align-items:center;border:none;background-color:transparent;cursor:pointer;min-width:auto;font-family:inherit;&:hover{text-decoration:underline;}", ";&:disabled{cursor:default;text-decoration:none;}", ";"], colorStyles, props => retrieveComponentStyles(COMPONENT_ID, props));
|
|
24
|
-
StyledTagsButton.defaultProps = {
|
|
25
|
-
theme: DEFAULT_THEME
|
|
26
|
-
};
|
|
27
30
|
|
|
28
31
|
export { StyledTagsButton };
|