@atlaskit/lozenge 13.4.0 → 13.4.1
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 +8 -0
- package/dist/cjs/new/icon-renderer.js +3 -9
- package/dist/cjs/new/lozenge-base.compiled.css +1 -3
- package/dist/cjs/new/lozenge-base.js +25 -7
- package/dist/es2019/new/icon-renderer.js +3 -9
- package/dist/es2019/new/lozenge-base.compiled.css +1 -3
- package/dist/es2019/new/lozenge-base.js +25 -7
- package/dist/esm/new/icon-renderer.js +3 -9
- package/dist/esm/new/lozenge-base.compiled.css +1 -3
- package/dist/esm/new/lozenge-base.js +25 -7
- package/dist/types/new/icon-renderer.d.ts +1 -5
- package/dist/types-ts4.5/new/icon-renderer.d.ts +1 -5
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @atlaskit/lozenge
|
|
2
2
|
|
|
3
|
+
## 13.4.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`396504e5d05d4`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/396504e5d05d4) -
|
|
8
|
+
[ux] Changed to use pressed state colors on selected lozenge dropdown trigger to keep the semantic
|
|
9
|
+
colors.
|
|
10
|
+
|
|
3
11
|
## 13.4.0
|
|
4
12
|
|
|
5
13
|
### Minor Changes
|
|
@@ -7,13 +7,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.default = exports.IconRenderer = void 0;
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
// Map lozenge colors to appropriate icon colors
|
|
10
|
-
var getIconColor = function getIconColor(color
|
|
11
|
-
//
|
|
12
|
-
if (isSelected) {
|
|
13
|
-
return "var(--ds-icon-selected, #1868DB)";
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
// For semantic colors, use corresponding semantic text colors
|
|
10
|
+
var getIconColor = function getIconColor(color) {
|
|
11
|
+
// For semantic colors, use corresponding semantic icon colors
|
|
17
12
|
switch (color) {
|
|
18
13
|
case 'success':
|
|
19
14
|
return "var(--ds-icon-success, #6A9A23)";
|
|
@@ -60,10 +55,9 @@ var getIconColor = function getIconColor(color, isSelected) {
|
|
|
60
55
|
var IconRenderer = exports.IconRenderer = function IconRenderer(_ref) {
|
|
61
56
|
var Icon = _ref.icon,
|
|
62
57
|
color = _ref.color,
|
|
63
|
-
isSelected = _ref.isSelected,
|
|
64
58
|
testId = _ref.testId,
|
|
65
59
|
size = _ref.size;
|
|
66
|
-
var iconColor = getIconColor(color
|
|
60
|
+
var iconColor = getIconColor(color);
|
|
67
61
|
return /*#__PURE__*/_react.default.createElement(Icon, {
|
|
68
62
|
color: iconColor,
|
|
69
63
|
label: "",
|
|
@@ -41,6 +41,7 @@
|
|
|
41
41
|
._1k671038{--border-l-factor:1.33}
|
|
42
42
|
._1reo15vq{overflow-x:hidden}
|
|
43
43
|
._1tkeviql{min-height:2rem}
|
|
44
|
+
._1xe213kw>span:first-of-type>svg{color:oklch(from var(--icon-color) calc(l * var(--icon-pressed-l-factor)) c h)!important}
|
|
44
45
|
._1xe213rw>span:first-of-type>svg{color:color-mix(in oklch,var(--icon-color) 100%,var(--cm-icon-color) var(--cm-icon-value))}
|
|
45
46
|
._3wu016y8{--border-color:var(--ds-border-accent-red,#e2483d)}
|
|
46
47
|
._3wu01b2s{--border-color:var(--ds-border-accent-orange,#e06c00)}
|
|
@@ -65,7 +66,6 @@
|
|
|
65
66
|
._80omtlke{cursor:pointer}
|
|
66
67
|
._bfhk10f4{background-color:var(--ds-background-warning-subtler,#fce4a6)}
|
|
67
68
|
._bfhk14j0{background-color:var(--ds-background-success-subtler,#d3f1a7)}
|
|
68
|
-
._bfhk15s3{background-color:var(--ds-background-selected,#e9f2fe)}
|
|
69
69
|
._bfhk165s{background-color:var(--ds-background-accent-orange-subtler,#fce4a6)}
|
|
70
70
|
._bfhk1773{background-color:var(--ds-background-accent-yellow-subtler,#f5e989)}
|
|
71
71
|
._bfhk18wg{background-color:var(--ds-background-danger-subtler,#ffd5d2)}
|
|
@@ -137,7 +137,6 @@
|
|
|
137
137
|
._irr3kwwr:hover{background-color:var(--ds-background-accent-teal-subtler-hovered,#b1e4f7)}
|
|
138
138
|
._irr3plhp:hover{background-color:var(--ds-background-neutral-hovered,#0b120e24)}
|
|
139
139
|
._irr3rumk:hover{background-color:var(--ds-background-discovery-subtler-hovered,#e3bdfa)}
|
|
140
|
-
._irr3ufnl:hover{background-color:var(--ds-background-selected-hovered,#cfe1fd)}
|
|
141
140
|
._irr3wejn:hover{background-color:var(--ds-background-accent-gray-subtlest-hovered,#dddee1)}
|
|
142
141
|
._q4zt1csi:active{border-color:color-mix(in oklch,var(--border-color) 100%,var(--cm-border-color) var(--cm-border-pressed-value))!important}
|
|
143
142
|
._1di618ut:active{background-color:var(--ds-background-accent-gray-subtlest-pressed,#b7b9be)}
|
|
@@ -154,7 +153,6 @@
|
|
|
154
153
|
._1di6d6jc:active{background-color:var(--ds-background-success-subtler-pressed,#b3df72)}
|
|
155
154
|
._1di6dpo3:active{background-color:var(--ds-background-accent-orange-subtler-pressed,#fbc828)}
|
|
156
155
|
._1di6jkmi:active{background-color:var(--ds-background-danger-subtler-pressed,#fd9891)}
|
|
157
|
-
._1di6nozp:active{background-color:var(--ds-background-selected-pressed,#8fb8f6)}
|
|
158
156
|
._1di6rwxf:active{background-color:var(--ds-background-accent-blue-subtler-pressed,#8fb8f6)}
|
|
159
157
|
._1di6ybhx:active{background-color:var(--ds-background-accent-green-subtler-pressed,#7ee2b8)}
|
|
160
158
|
@supports (color:oklch(from white l c h)){._1easxmrh{border-color:oklch(from var(--border-color) calc(l * var(--border-l-factor)) c h)!important}._1r9r1ss3>span:first-of-type>svg{color:oklch(from var(--icon-color) calc(l * var(--icon-l-factor)) c h)}._1lh71sfd:hover>span:first-of-type>svg{color:oklch(from var(--icon-color) calc(l * var(--icon-hovered-l-factor)) c h)}._11o31cha:active>span:first-of-type>svg{color:oklch(from var(--icon-color) calc(l * var(--icon-pressed-l-factor)) c h)}._75gv2l9f:hover{border-color:oklch(from var(--border-color) calc(l * var(--border-hovered-l-factor)) c h)!important}._ui3h1ct7:active{border-color:oklch(from var(--border-color) calc(l * var(--border-pressed-l-factor)) c h)!important}}
|
|
@@ -20,11 +20,29 @@ var _utils = require("./utils");
|
|
|
20
20
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
21
21
|
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; }
|
|
22
22
|
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; }
|
|
23
|
+
// Get the pressed background color for the selected lozenge dropdown trigger
|
|
24
|
+
var pressedBackgroundMapping = {
|
|
25
|
+
success: "var(--ds-background-success-subtler-pressed, #B3DF72)",
|
|
26
|
+
warning: "var(--ds-background-warning-subtler-pressed, #FBC828)",
|
|
27
|
+
danger: "var(--ds-background-danger-subtler-pressed, #FD9891)",
|
|
28
|
+
information: "var(--ds-background-information-subtler-pressed, #8FB8F6)",
|
|
29
|
+
neutral: "var(--ds-background-neutral-pressed, #080F214A)",
|
|
30
|
+
discovery: "var(--ds-background-discovery-subtler-pressed, #D8A0F7)",
|
|
31
|
+
'accent-red': "var(--ds-background-accent-red-subtler-pressed, #FD9891)",
|
|
32
|
+
'accent-orange': "var(--ds-background-accent-orange-subtler-pressed, #FBC828)",
|
|
33
|
+
'accent-yellow': "var(--ds-background-accent-yellow-subtler-pressed, #EED12B)",
|
|
34
|
+
'accent-lime': "var(--ds-background-accent-lime-subtler-pressed, #B3DF72)",
|
|
35
|
+
'accent-green': "var(--ds-background-accent-green-subtler-pressed, #7EE2B8)",
|
|
36
|
+
'accent-teal': "var(--ds-background-accent-teal-subtler-pressed, #9DD9EE)",
|
|
37
|
+
'accent-blue': "var(--ds-background-accent-blue-subtler-pressed, #8FB8F6)",
|
|
38
|
+
'accent-purple': "var(--ds-background-accent-purple-subtler-pressed, #D8A0F7)",
|
|
39
|
+
'accent-magenta': "var(--ds-background-accent-magenta-subtler-pressed, #F797D2)",
|
|
40
|
+
'accent-gray': "var(--ds-background-accent-gray-subtlest-pressed, #B7B9BE)"
|
|
41
|
+
};
|
|
23
42
|
var styles = {
|
|
24
43
|
container: "_2rko12b0 _1reo15vq _18m915vq _zulp1b66 _1rjcv77o _18zr1b66 _189ee4h9 _1dqonqa1 _1h6d1j28 _1e0c116y _4cvr1h6o _vchhusvi _4t3i1k92",
|
|
25
44
|
containerSpacious: "_2rko1qi0 _zulp12x7 _1rjc1b66 _18zrutpp _1tkeviql",
|
|
26
45
|
containerInteractive: "_80omtlke _mizu1v1w _1ah3v77o _ra3xnqa1 _128mdkaa",
|
|
27
|
-
containerSelected: "_bfhk15s3 _syaz6x5g _irr3ufnl _1di6nozp",
|
|
28
46
|
text: "_11c8wadc _1reo15vq _18m915vq _1bto1l2s _o5721q9c",
|
|
29
47
|
textSpacious: "_11c8fhey _k48p1wq8",
|
|
30
48
|
textSelected: "_syaz6x5g",
|
|
@@ -60,9 +78,9 @@ var styles = {
|
|
|
60
78
|
'interactive.accent.purple': "_irr3attl _1di63nfk",
|
|
61
79
|
'interactive.accent.magenta': "_irr31axx _1di642ri",
|
|
62
80
|
'interactive.accent.gray': "_irr3wejn _1di618ut",
|
|
63
|
-
selectedInteractive: "_irr3ufnl _1di6nozp",
|
|
64
81
|
iconBorderFilter: "_1h6dzs9d _4uq11yqs _1k671038 _m71tr3uz _13muu67f _168qx19p _oe6mmko7 _189qkb7n _u8p61h4e _1t75u67f _hg5mr3uz _1f28f1ug _1xe213rw _1easxmrh _1r9r1ss3",
|
|
65
|
-
iconBorderInteractiveFilter: "_1iel6xdd _111i1h4e _18dicjiy _hyog26zw _fdt01r5k _46v5hwvj _ylgq1r5k _bg3q9by0 _196p1btq _18mn783i _l0666xdd _pclnn8xv _ockq1r5k _aewt1n8h _4cvx7ddx _1cp21w66 _q4zt1csi _1gqs1mvc _75gv2l9f _1lh71sfd _ui3h1ct7 _11o31cha"
|
|
82
|
+
iconBorderInteractiveFilter: "_1iel6xdd _111i1h4e _18dicjiy _hyog26zw _fdt01r5k _46v5hwvj _ylgq1r5k _bg3q9by0 _196p1btq _18mn783i _l0666xdd _pclnn8xv _ockq1r5k _aewt1n8h _4cvx7ddx _1cp21w66 _q4zt1csi _1gqs1mvc _75gv2l9f _1lh71sfd _ui3h1ct7 _11o31cha",
|
|
83
|
+
containerSelected: "_1xe213kw"
|
|
66
84
|
};
|
|
67
85
|
|
|
68
86
|
/**
|
|
@@ -104,7 +122,6 @@ var LozengeBase = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forward
|
|
|
104
122
|
size: spacing === 'spacious' ? 'medium' : 'small',
|
|
105
123
|
icon: iconBefore,
|
|
106
124
|
color: resolvedColor,
|
|
107
|
-
isSelected: isInteractive ? isSelected : undefined,
|
|
108
125
|
testId: testId && "".concat(testId, "--icon")
|
|
109
126
|
}), /*#__PURE__*/React.createElement("span", {
|
|
110
127
|
style: {
|
|
@@ -116,18 +133,19 @@ var LozengeBase = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forward
|
|
|
116
133
|
}, children), isInteractive && /*#__PURE__*/React.createElement(_chevronDown.default, {
|
|
117
134
|
label: "",
|
|
118
135
|
size: "small",
|
|
119
|
-
color:
|
|
136
|
+
color: 'currentColor',
|
|
120
137
|
testId: testId && "".concat(testId, "--chevron")
|
|
121
138
|
}));
|
|
122
139
|
if (isInteractive) {
|
|
123
140
|
return /*#__PURE__*/React.createElement(_pressable.default, {
|
|
124
141
|
ref: ref,
|
|
125
|
-
xcss: (0, _css.cx)(styles.container, spacing === 'spacious' && styles.containerSpacious, !isSelected && styles.iconBorderFilter,
|
|
142
|
+
xcss: (0, _css.cx)(styles.container, spacing === 'spacious' && styles.containerSpacious, !isSelected && styles.iconBorderFilter, styles.iconBorderInteractiveFilter, styles[colorStyleKey], styles[interactiveStyleKey], isSelected && styles.containerSelected),
|
|
126
143
|
onClick: onClick,
|
|
127
144
|
style: _objectSpread(_objectSpread({}, commonStyleOverrides), {}, {
|
|
128
145
|
// Specified because Pressable has a default border:none which overrides the border specified on the container
|
|
129
146
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
|
|
130
|
-
border: "solid ".concat("var(--ds-border-width, 1px)", " ", isSelected ?
|
|
147
|
+
border: "solid ".concat("var(--ds-border-width, 1px)", " ", isSelected ? 'oklch(from var(--border-color) calc(l * var(--border-pressed-l-factor)) c h) !important' : 'transparent'),
|
|
148
|
+
backgroundColor: isSelected ? pressedBackgroundMapping[resolvedColor] : undefined
|
|
131
149
|
}),
|
|
132
150
|
testId: testId,
|
|
133
151
|
analyticsContext: analyticsContext,
|
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
// Map lozenge colors to appropriate icon colors
|
|
3
|
-
const getIconColor =
|
|
4
|
-
//
|
|
5
|
-
if (isSelected) {
|
|
6
|
-
return "var(--ds-icon-selected, #1868DB)";
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
// For semantic colors, use corresponding semantic text colors
|
|
3
|
+
const getIconColor = color => {
|
|
4
|
+
// For semantic colors, use corresponding semantic icon colors
|
|
10
5
|
switch (color) {
|
|
11
6
|
case 'success':
|
|
12
7
|
return "var(--ds-icon-success, #6A9A23)";
|
|
@@ -53,11 +48,10 @@ const getIconColor = (color, isSelected) => {
|
|
|
53
48
|
export const IconRenderer = ({
|
|
54
49
|
icon: Icon,
|
|
55
50
|
color,
|
|
56
|
-
isSelected,
|
|
57
51
|
testId,
|
|
58
52
|
size
|
|
59
53
|
}) => {
|
|
60
|
-
const iconColor = getIconColor(color
|
|
54
|
+
const iconColor = getIconColor(color);
|
|
61
55
|
return /*#__PURE__*/React.createElement(Icon, {
|
|
62
56
|
color: iconColor,
|
|
63
57
|
label: "",
|
|
@@ -41,6 +41,7 @@
|
|
|
41
41
|
._1k671038{--border-l-factor:1.33}
|
|
42
42
|
._1reo15vq{overflow-x:hidden}
|
|
43
43
|
._1tkeviql{min-height:2rem}
|
|
44
|
+
._1xe213kw>span:first-of-type>svg{color:oklch(from var(--icon-color) calc(l * var(--icon-pressed-l-factor)) c h)!important}
|
|
44
45
|
._1xe213rw>span:first-of-type>svg{color:color-mix(in oklch,var(--icon-color) 100%,var(--cm-icon-color) var(--cm-icon-value))}
|
|
45
46
|
._3wu016y8{--border-color:var(--ds-border-accent-red,#e2483d)}
|
|
46
47
|
._3wu01b2s{--border-color:var(--ds-border-accent-orange,#e06c00)}
|
|
@@ -65,7 +66,6 @@
|
|
|
65
66
|
._80omtlke{cursor:pointer}
|
|
66
67
|
._bfhk10f4{background-color:var(--ds-background-warning-subtler,#fce4a6)}
|
|
67
68
|
._bfhk14j0{background-color:var(--ds-background-success-subtler,#d3f1a7)}
|
|
68
|
-
._bfhk15s3{background-color:var(--ds-background-selected,#e9f2fe)}
|
|
69
69
|
._bfhk165s{background-color:var(--ds-background-accent-orange-subtler,#fce4a6)}
|
|
70
70
|
._bfhk1773{background-color:var(--ds-background-accent-yellow-subtler,#f5e989)}
|
|
71
71
|
._bfhk18wg{background-color:var(--ds-background-danger-subtler,#ffd5d2)}
|
|
@@ -137,7 +137,6 @@
|
|
|
137
137
|
._irr3kwwr:hover{background-color:var(--ds-background-accent-teal-subtler-hovered,#b1e4f7)}
|
|
138
138
|
._irr3plhp:hover{background-color:var(--ds-background-neutral-hovered,#0b120e24)}
|
|
139
139
|
._irr3rumk:hover{background-color:var(--ds-background-discovery-subtler-hovered,#e3bdfa)}
|
|
140
|
-
._irr3ufnl:hover{background-color:var(--ds-background-selected-hovered,#cfe1fd)}
|
|
141
140
|
._irr3wejn:hover{background-color:var(--ds-background-accent-gray-subtlest-hovered,#dddee1)}
|
|
142
141
|
._q4zt1csi:active{border-color:color-mix(in oklch,var(--border-color) 100%,var(--cm-border-color) var(--cm-border-pressed-value))!important}
|
|
143
142
|
._1di618ut:active{background-color:var(--ds-background-accent-gray-subtlest-pressed,#b7b9be)}
|
|
@@ -154,7 +153,6 @@
|
|
|
154
153
|
._1di6d6jc:active{background-color:var(--ds-background-success-subtler-pressed,#b3df72)}
|
|
155
154
|
._1di6dpo3:active{background-color:var(--ds-background-accent-orange-subtler-pressed,#fbc828)}
|
|
156
155
|
._1di6jkmi:active{background-color:var(--ds-background-danger-subtler-pressed,#fd9891)}
|
|
157
|
-
._1di6nozp:active{background-color:var(--ds-background-selected-pressed,#8fb8f6)}
|
|
158
156
|
._1di6rwxf:active{background-color:var(--ds-background-accent-blue-subtler-pressed,#8fb8f6)}
|
|
159
157
|
._1di6ybhx:active{background-color:var(--ds-background-accent-green-subtler-pressed,#7ee2b8)}
|
|
160
158
|
@supports (color:oklch(from white l c h)){._1easxmrh{border-color:oklch(from var(--border-color) calc(l * var(--border-l-factor)) c h)!important}._1r9r1ss3>span:first-of-type>svg{color:oklch(from var(--icon-color) calc(l * var(--icon-l-factor)) c h)}._1lh71sfd:hover>span:first-of-type>svg{color:oklch(from var(--icon-color) calc(l * var(--icon-hovered-l-factor)) c h)}._11o31cha:active>span:first-of-type>svg{color:oklch(from var(--icon-color) calc(l * var(--icon-pressed-l-factor)) c h)}._75gv2l9f:hover{border-color:oklch(from var(--border-color) calc(l * var(--border-hovered-l-factor)) c h)!important}._ui3h1ct7:active{border-color:oklch(from var(--border-color) calc(l * var(--border-pressed-l-factor)) c h)!important}}
|
|
@@ -8,11 +8,29 @@ import ChevronDownIcon from '@atlaskit/icon/core/chevron-down';
|
|
|
8
8
|
import Pressable from '@atlaskit/primitives/pressable';
|
|
9
9
|
import IconRenderer from './icon-renderer';
|
|
10
10
|
import { getThemeStyles, resolveLozengeColor } from './utils';
|
|
11
|
+
// Get the pressed background color for the selected lozenge dropdown trigger
|
|
12
|
+
const pressedBackgroundMapping = {
|
|
13
|
+
success: "var(--ds-background-success-subtler-pressed, #B3DF72)",
|
|
14
|
+
warning: "var(--ds-background-warning-subtler-pressed, #FBC828)",
|
|
15
|
+
danger: "var(--ds-background-danger-subtler-pressed, #FD9891)",
|
|
16
|
+
information: "var(--ds-background-information-subtler-pressed, #8FB8F6)",
|
|
17
|
+
neutral: "var(--ds-background-neutral-pressed, #080F214A)",
|
|
18
|
+
discovery: "var(--ds-background-discovery-subtler-pressed, #D8A0F7)",
|
|
19
|
+
'accent-red': "var(--ds-background-accent-red-subtler-pressed, #FD9891)",
|
|
20
|
+
'accent-orange': "var(--ds-background-accent-orange-subtler-pressed, #FBC828)",
|
|
21
|
+
'accent-yellow': "var(--ds-background-accent-yellow-subtler-pressed, #EED12B)",
|
|
22
|
+
'accent-lime': "var(--ds-background-accent-lime-subtler-pressed, #B3DF72)",
|
|
23
|
+
'accent-green': "var(--ds-background-accent-green-subtler-pressed, #7EE2B8)",
|
|
24
|
+
'accent-teal': "var(--ds-background-accent-teal-subtler-pressed, #9DD9EE)",
|
|
25
|
+
'accent-blue': "var(--ds-background-accent-blue-subtler-pressed, #8FB8F6)",
|
|
26
|
+
'accent-purple': "var(--ds-background-accent-purple-subtler-pressed, #D8A0F7)",
|
|
27
|
+
'accent-magenta': "var(--ds-background-accent-magenta-subtler-pressed, #F797D2)",
|
|
28
|
+
'accent-gray': "var(--ds-background-accent-gray-subtlest-pressed, #B7B9BE)"
|
|
29
|
+
};
|
|
11
30
|
const styles = {
|
|
12
31
|
container: "_2rko12b0 _1reo15vq _18m915vq _zulp1b66 _1rjcv77o _18zr1b66 _189ee4h9 _1dqonqa1 _1h6d1j28 _1e0c116y _4cvr1h6o _vchhusvi _4t3i1k92",
|
|
13
32
|
containerSpacious: "_2rko1qi0 _zulp12x7 _1rjc1b66 _18zrutpp _1tkeviql",
|
|
14
33
|
containerInteractive: "_80omtlke _mizu1v1w _1ah3v77o _ra3xnqa1 _128mdkaa",
|
|
15
|
-
containerSelected: "_bfhk15s3 _syaz6x5g _irr3ufnl _1di6nozp",
|
|
16
34
|
text: "_11c8wadc _1reo15vq _18m915vq _1bto1l2s _o5721q9c",
|
|
17
35
|
textSpacious: "_11c8fhey _k48p1wq8",
|
|
18
36
|
textSelected: "_syaz6x5g",
|
|
@@ -48,9 +66,9 @@ const styles = {
|
|
|
48
66
|
'interactive.accent.purple': "_irr3attl _1di63nfk",
|
|
49
67
|
'interactive.accent.magenta': "_irr31axx _1di642ri",
|
|
50
68
|
'interactive.accent.gray': "_irr3wejn _1di618ut",
|
|
51
|
-
selectedInteractive: "_irr3ufnl _1di6nozp",
|
|
52
69
|
iconBorderFilter: "_1h6dzs9d _4uq11yqs _1k671038 _m71tr3uz _13muu67f _168qx19p _oe6mmko7 _189qkb7n _u8p61h4e _1t75u67f _hg5mr3uz _1f28f1ug _1xe213rw _1easxmrh _1r9r1ss3",
|
|
53
|
-
iconBorderInteractiveFilter: "_1iel6xdd _111i1h4e _18dicjiy _hyog26zw _fdt01r5k _46v5hwvj _ylgq1r5k _bg3q9by0 _196p1btq _18mn783i _l0666xdd _pclnn8xv _ockq1r5k _aewt1n8h _4cvx7ddx _1cp21w66 _q4zt1csi _1gqs1mvc _75gv2l9f _1lh71sfd _ui3h1ct7 _11o31cha"
|
|
70
|
+
iconBorderInteractiveFilter: "_1iel6xdd _111i1h4e _18dicjiy _hyog26zw _fdt01r5k _46v5hwvj _ylgq1r5k _bg3q9by0 _196p1btq _18mn783i _l0666xdd _pclnn8xv _ockq1r5k _aewt1n8h _4cvx7ddx _1cp21w66 _q4zt1csi _1gqs1mvc _75gv2l9f _1lh71sfd _ui3h1ct7 _11o31cha",
|
|
71
|
+
containerSelected: "_1xe213kw"
|
|
54
72
|
};
|
|
55
73
|
|
|
56
74
|
/**
|
|
@@ -94,7 +112,6 @@ const LozengeBase = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
|
|
|
94
112
|
size: spacing === 'spacious' ? 'medium' : 'small',
|
|
95
113
|
icon: iconBefore,
|
|
96
114
|
color: resolvedColor,
|
|
97
|
-
isSelected: isInteractive ? isSelected : undefined,
|
|
98
115
|
testId: testId && `${testId}--icon`
|
|
99
116
|
}), /*#__PURE__*/React.createElement("span", {
|
|
100
117
|
style: {
|
|
@@ -106,20 +123,21 @@ const LozengeBase = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
|
|
|
106
123
|
}, children), isInteractive && /*#__PURE__*/React.createElement(ChevronDownIcon, {
|
|
107
124
|
label: "",
|
|
108
125
|
size: "small",
|
|
109
|
-
color:
|
|
126
|
+
color: 'currentColor',
|
|
110
127
|
testId: testId && `${testId}--chevron`
|
|
111
128
|
}));
|
|
112
129
|
if (isInteractive) {
|
|
113
130
|
return /*#__PURE__*/React.createElement(Pressable, {
|
|
114
131
|
ref: ref,
|
|
115
|
-
xcss: cx(styles.container, spacing === 'spacious' && styles.containerSpacious, !isSelected && styles.iconBorderFilter,
|
|
132
|
+
xcss: cx(styles.container, spacing === 'spacious' && styles.containerSpacious, !isSelected && styles.iconBorderFilter, styles.iconBorderInteractiveFilter, styles[colorStyleKey], styles[interactiveStyleKey], isSelected && styles.containerSelected),
|
|
116
133
|
onClick: onClick,
|
|
117
134
|
style: {
|
|
118
135
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
|
|
119
136
|
...commonStyleOverrides,
|
|
120
137
|
// Specified because Pressable has a default border:none which overrides the border specified on the container
|
|
121
138
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
|
|
122
|
-
border: `solid ${"var(--ds-border-width, 1px)"} ${isSelected ?
|
|
139
|
+
border: `solid ${"var(--ds-border-width, 1px)"} ${isSelected ? 'oklch(from var(--border-color) calc(l * var(--border-pressed-l-factor)) c h) !important' : 'transparent'}`,
|
|
140
|
+
backgroundColor: isSelected ? pressedBackgroundMapping[resolvedColor] : undefined
|
|
123
141
|
},
|
|
124
142
|
testId: testId,
|
|
125
143
|
analyticsContext: analyticsContext,
|
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
// Map lozenge colors to appropriate icon colors
|
|
3
|
-
var getIconColor = function getIconColor(color
|
|
4
|
-
//
|
|
5
|
-
if (isSelected) {
|
|
6
|
-
return "var(--ds-icon-selected, #1868DB)";
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
// For semantic colors, use corresponding semantic text colors
|
|
3
|
+
var getIconColor = function getIconColor(color) {
|
|
4
|
+
// For semantic colors, use corresponding semantic icon colors
|
|
10
5
|
switch (color) {
|
|
11
6
|
case 'success':
|
|
12
7
|
return "var(--ds-icon-success, #6A9A23)";
|
|
@@ -53,10 +48,9 @@ var getIconColor = function getIconColor(color, isSelected) {
|
|
|
53
48
|
export var IconRenderer = function IconRenderer(_ref) {
|
|
54
49
|
var Icon = _ref.icon,
|
|
55
50
|
color = _ref.color,
|
|
56
|
-
isSelected = _ref.isSelected,
|
|
57
51
|
testId = _ref.testId,
|
|
58
52
|
size = _ref.size;
|
|
59
|
-
var iconColor = getIconColor(color
|
|
53
|
+
var iconColor = getIconColor(color);
|
|
60
54
|
return /*#__PURE__*/React.createElement(Icon, {
|
|
61
55
|
color: iconColor,
|
|
62
56
|
label: "",
|
|
@@ -41,6 +41,7 @@
|
|
|
41
41
|
._1k671038{--border-l-factor:1.33}
|
|
42
42
|
._1reo15vq{overflow-x:hidden}
|
|
43
43
|
._1tkeviql{min-height:2rem}
|
|
44
|
+
._1xe213kw>span:first-of-type>svg{color:oklch(from var(--icon-color) calc(l * var(--icon-pressed-l-factor)) c h)!important}
|
|
44
45
|
._1xe213rw>span:first-of-type>svg{color:color-mix(in oklch,var(--icon-color) 100%,var(--cm-icon-color) var(--cm-icon-value))}
|
|
45
46
|
._3wu016y8{--border-color:var(--ds-border-accent-red,#e2483d)}
|
|
46
47
|
._3wu01b2s{--border-color:var(--ds-border-accent-orange,#e06c00)}
|
|
@@ -65,7 +66,6 @@
|
|
|
65
66
|
._80omtlke{cursor:pointer}
|
|
66
67
|
._bfhk10f4{background-color:var(--ds-background-warning-subtler,#fce4a6)}
|
|
67
68
|
._bfhk14j0{background-color:var(--ds-background-success-subtler,#d3f1a7)}
|
|
68
|
-
._bfhk15s3{background-color:var(--ds-background-selected,#e9f2fe)}
|
|
69
69
|
._bfhk165s{background-color:var(--ds-background-accent-orange-subtler,#fce4a6)}
|
|
70
70
|
._bfhk1773{background-color:var(--ds-background-accent-yellow-subtler,#f5e989)}
|
|
71
71
|
._bfhk18wg{background-color:var(--ds-background-danger-subtler,#ffd5d2)}
|
|
@@ -137,7 +137,6 @@
|
|
|
137
137
|
._irr3kwwr:hover{background-color:var(--ds-background-accent-teal-subtler-hovered,#b1e4f7)}
|
|
138
138
|
._irr3plhp:hover{background-color:var(--ds-background-neutral-hovered,#0b120e24)}
|
|
139
139
|
._irr3rumk:hover{background-color:var(--ds-background-discovery-subtler-hovered,#e3bdfa)}
|
|
140
|
-
._irr3ufnl:hover{background-color:var(--ds-background-selected-hovered,#cfe1fd)}
|
|
141
140
|
._irr3wejn:hover{background-color:var(--ds-background-accent-gray-subtlest-hovered,#dddee1)}
|
|
142
141
|
._q4zt1csi:active{border-color:color-mix(in oklch,var(--border-color) 100%,var(--cm-border-color) var(--cm-border-pressed-value))!important}
|
|
143
142
|
._1di618ut:active{background-color:var(--ds-background-accent-gray-subtlest-pressed,#b7b9be)}
|
|
@@ -154,7 +153,6 @@
|
|
|
154
153
|
._1di6d6jc:active{background-color:var(--ds-background-success-subtler-pressed,#b3df72)}
|
|
155
154
|
._1di6dpo3:active{background-color:var(--ds-background-accent-orange-subtler-pressed,#fbc828)}
|
|
156
155
|
._1di6jkmi:active{background-color:var(--ds-background-danger-subtler-pressed,#fd9891)}
|
|
157
|
-
._1di6nozp:active{background-color:var(--ds-background-selected-pressed,#8fb8f6)}
|
|
158
156
|
._1di6rwxf:active{background-color:var(--ds-background-accent-blue-subtler-pressed,#8fb8f6)}
|
|
159
157
|
._1di6ybhx:active{background-color:var(--ds-background-accent-green-subtler-pressed,#7ee2b8)}
|
|
160
158
|
@supports (color:oklch(from white l c h)){._1easxmrh{border-color:oklch(from var(--border-color) calc(l * var(--border-l-factor)) c h)!important}._1r9r1ss3>span:first-of-type>svg{color:oklch(from var(--icon-color) calc(l * var(--icon-l-factor)) c h)}._1lh71sfd:hover>span:first-of-type>svg{color:oklch(from var(--icon-color) calc(l * var(--icon-hovered-l-factor)) c h)}._11o31cha:active>span:first-of-type>svg{color:oklch(from var(--icon-color) calc(l * var(--icon-pressed-l-factor)) c h)}._75gv2l9f:hover{border-color:oklch(from var(--border-color) calc(l * var(--border-hovered-l-factor)) c h)!important}._ui3h1ct7:active{border-color:oklch(from var(--border-color) calc(l * var(--border-pressed-l-factor)) c h)!important}}
|
|
@@ -11,11 +11,29 @@ import ChevronDownIcon from '@atlaskit/icon/core/chevron-down';
|
|
|
11
11
|
import Pressable from '@atlaskit/primitives/pressable';
|
|
12
12
|
import IconRenderer from './icon-renderer';
|
|
13
13
|
import { getThemeStyles, resolveLozengeColor } from './utils';
|
|
14
|
+
// Get the pressed background color for the selected lozenge dropdown trigger
|
|
15
|
+
var pressedBackgroundMapping = {
|
|
16
|
+
success: "var(--ds-background-success-subtler-pressed, #B3DF72)",
|
|
17
|
+
warning: "var(--ds-background-warning-subtler-pressed, #FBC828)",
|
|
18
|
+
danger: "var(--ds-background-danger-subtler-pressed, #FD9891)",
|
|
19
|
+
information: "var(--ds-background-information-subtler-pressed, #8FB8F6)",
|
|
20
|
+
neutral: "var(--ds-background-neutral-pressed, #080F214A)",
|
|
21
|
+
discovery: "var(--ds-background-discovery-subtler-pressed, #D8A0F7)",
|
|
22
|
+
'accent-red': "var(--ds-background-accent-red-subtler-pressed, #FD9891)",
|
|
23
|
+
'accent-orange': "var(--ds-background-accent-orange-subtler-pressed, #FBC828)",
|
|
24
|
+
'accent-yellow': "var(--ds-background-accent-yellow-subtler-pressed, #EED12B)",
|
|
25
|
+
'accent-lime': "var(--ds-background-accent-lime-subtler-pressed, #B3DF72)",
|
|
26
|
+
'accent-green': "var(--ds-background-accent-green-subtler-pressed, #7EE2B8)",
|
|
27
|
+
'accent-teal': "var(--ds-background-accent-teal-subtler-pressed, #9DD9EE)",
|
|
28
|
+
'accent-blue': "var(--ds-background-accent-blue-subtler-pressed, #8FB8F6)",
|
|
29
|
+
'accent-purple': "var(--ds-background-accent-purple-subtler-pressed, #D8A0F7)",
|
|
30
|
+
'accent-magenta': "var(--ds-background-accent-magenta-subtler-pressed, #F797D2)",
|
|
31
|
+
'accent-gray': "var(--ds-background-accent-gray-subtlest-pressed, #B7B9BE)"
|
|
32
|
+
};
|
|
14
33
|
var styles = {
|
|
15
34
|
container: "_2rko12b0 _1reo15vq _18m915vq _zulp1b66 _1rjcv77o _18zr1b66 _189ee4h9 _1dqonqa1 _1h6d1j28 _1e0c116y _4cvr1h6o _vchhusvi _4t3i1k92",
|
|
16
35
|
containerSpacious: "_2rko1qi0 _zulp12x7 _1rjc1b66 _18zrutpp _1tkeviql",
|
|
17
36
|
containerInteractive: "_80omtlke _mizu1v1w _1ah3v77o _ra3xnqa1 _128mdkaa",
|
|
18
|
-
containerSelected: "_bfhk15s3 _syaz6x5g _irr3ufnl _1di6nozp",
|
|
19
37
|
text: "_11c8wadc _1reo15vq _18m915vq _1bto1l2s _o5721q9c",
|
|
20
38
|
textSpacious: "_11c8fhey _k48p1wq8",
|
|
21
39
|
textSelected: "_syaz6x5g",
|
|
@@ -51,9 +69,9 @@ var styles = {
|
|
|
51
69
|
'interactive.accent.purple': "_irr3attl _1di63nfk",
|
|
52
70
|
'interactive.accent.magenta': "_irr31axx _1di642ri",
|
|
53
71
|
'interactive.accent.gray': "_irr3wejn _1di618ut",
|
|
54
|
-
selectedInteractive: "_irr3ufnl _1di6nozp",
|
|
55
72
|
iconBorderFilter: "_1h6dzs9d _4uq11yqs _1k671038 _m71tr3uz _13muu67f _168qx19p _oe6mmko7 _189qkb7n _u8p61h4e _1t75u67f _hg5mr3uz _1f28f1ug _1xe213rw _1easxmrh _1r9r1ss3",
|
|
56
|
-
iconBorderInteractiveFilter: "_1iel6xdd _111i1h4e _18dicjiy _hyog26zw _fdt01r5k _46v5hwvj _ylgq1r5k _bg3q9by0 _196p1btq _18mn783i _l0666xdd _pclnn8xv _ockq1r5k _aewt1n8h _4cvx7ddx _1cp21w66 _q4zt1csi _1gqs1mvc _75gv2l9f _1lh71sfd _ui3h1ct7 _11o31cha"
|
|
73
|
+
iconBorderInteractiveFilter: "_1iel6xdd _111i1h4e _18dicjiy _hyog26zw _fdt01r5k _46v5hwvj _ylgq1r5k _bg3q9by0 _196p1btq _18mn783i _l0666xdd _pclnn8xv _ockq1r5k _aewt1n8h _4cvx7ddx _1cp21w66 _q4zt1csi _1gqs1mvc _75gv2l9f _1lh71sfd _ui3h1ct7 _11o31cha",
|
|
74
|
+
containerSelected: "_1xe213kw"
|
|
57
75
|
};
|
|
58
76
|
|
|
59
77
|
/**
|
|
@@ -95,7 +113,6 @@ var LozengeBase = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (_ref, ref
|
|
|
95
113
|
size: spacing === 'spacious' ? 'medium' : 'small',
|
|
96
114
|
icon: iconBefore,
|
|
97
115
|
color: resolvedColor,
|
|
98
|
-
isSelected: isInteractive ? isSelected : undefined,
|
|
99
116
|
testId: testId && "".concat(testId, "--icon")
|
|
100
117
|
}), /*#__PURE__*/React.createElement("span", {
|
|
101
118
|
style: {
|
|
@@ -107,18 +124,19 @@ var LozengeBase = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (_ref, ref
|
|
|
107
124
|
}, children), isInteractive && /*#__PURE__*/React.createElement(ChevronDownIcon, {
|
|
108
125
|
label: "",
|
|
109
126
|
size: "small",
|
|
110
|
-
color:
|
|
127
|
+
color: 'currentColor',
|
|
111
128
|
testId: testId && "".concat(testId, "--chevron")
|
|
112
129
|
}));
|
|
113
130
|
if (isInteractive) {
|
|
114
131
|
return /*#__PURE__*/React.createElement(Pressable, {
|
|
115
132
|
ref: ref,
|
|
116
|
-
xcss: cx(styles.container, spacing === 'spacious' && styles.containerSpacious, !isSelected && styles.iconBorderFilter,
|
|
133
|
+
xcss: cx(styles.container, spacing === 'spacious' && styles.containerSpacious, !isSelected && styles.iconBorderFilter, styles.iconBorderInteractiveFilter, styles[colorStyleKey], styles[interactiveStyleKey], isSelected && styles.containerSelected),
|
|
117
134
|
onClick: onClick,
|
|
118
135
|
style: _objectSpread(_objectSpread({}, commonStyleOverrides), {}, {
|
|
119
136
|
// Specified because Pressable has a default border:none which overrides the border specified on the container
|
|
120
137
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop
|
|
121
|
-
border: "solid ".concat("var(--ds-border-width, 1px)", " ", isSelected ?
|
|
138
|
+
border: "solid ".concat("var(--ds-border-width, 1px)", " ", isSelected ? 'oklch(from var(--border-color) calc(l * var(--border-pressed-l-factor)) c h) !important' : 'transparent'),
|
|
139
|
+
backgroundColor: isSelected ? pressedBackgroundMapping[resolvedColor] : undefined
|
|
122
140
|
}),
|
|
123
141
|
testId: testId,
|
|
124
142
|
analyticsContext: analyticsContext,
|
|
@@ -9,10 +9,6 @@ export interface IconRendererProps {
|
|
|
9
9
|
* The lozenge color to determine icon color
|
|
10
10
|
*/
|
|
11
11
|
color: LozengeColor;
|
|
12
|
-
/**
|
|
13
|
-
* Whether the lozenge is in a selected state
|
|
14
|
-
*/
|
|
15
|
-
isSelected?: boolean;
|
|
16
12
|
/**
|
|
17
13
|
* Test ID for the icon
|
|
18
14
|
*/
|
|
@@ -26,5 +22,5 @@ export interface IconRendererProps {
|
|
|
26
22
|
* Icon renderer for lozenge components
|
|
27
23
|
* Handles proper sizing and color theming for icons
|
|
28
24
|
*/
|
|
29
|
-
export declare const IconRenderer: ({ icon: Icon, color,
|
|
25
|
+
export declare const IconRenderer: ({ icon: Icon, color, testId, size }: IconRendererProps) => React.JSX.Element;
|
|
30
26
|
export default IconRenderer;
|
|
@@ -9,10 +9,6 @@ export interface IconRendererProps {
|
|
|
9
9
|
* The lozenge color to determine icon color
|
|
10
10
|
*/
|
|
11
11
|
color: LozengeColor;
|
|
12
|
-
/**
|
|
13
|
-
* Whether the lozenge is in a selected state
|
|
14
|
-
*/
|
|
15
|
-
isSelected?: boolean;
|
|
16
12
|
/**
|
|
17
13
|
* Test ID for the icon
|
|
18
14
|
*/
|
|
@@ -26,5 +22,5 @@ export interface IconRendererProps {
|
|
|
26
22
|
* Icon renderer for lozenge components
|
|
27
23
|
* Handles proper sizing and color theming for icons
|
|
28
24
|
*/
|
|
29
|
-
export declare const IconRenderer: ({ icon: Icon, color,
|
|
25
|
+
export declare const IconRenderer: ({ icon: Icon, color, testId, size }: IconRendererProps) => React.JSX.Element;
|
|
30
26
|
export default IconRenderer;
|
package/package.json
CHANGED