@atlaskit/inline-message
Version:
An inline message lets users know when important information is available or when an action is required.
68 lines (64 loc) • 2.11 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = require("@emotion/react");
var _colors = require("@atlaskit/theme/colors");
var _constants = require("../../constants");
/**
* @jsxRuntime classic
* @jsx jsx
*/
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
var iconColor = function iconColor(appearance) {
switch (appearance) {
case 'connectivity':
return "var(--ds-icon-brand, ".concat(_colors.B400, ")");
case 'confirmation':
return "var(--ds-icon-success, ".concat(_colors.G300, ")");
case 'info':
return "var(--ds-icon-discovery, ".concat(_colors.P300, ")");
case 'warning':
return "var(--ds-icon-warning, ".concat(_colors.Y300, ")");
case 'error':
return "var(--ds-icon-danger, ".concat(_colors.R400, ")");
}
};
var iconWrapperStyles = (0, _react.css)({
display: 'flex',
alignItems: 'center',
flex: '0 0 auto',
color: 'var(--icon-color)'
});
var iconColorStyles = (0, _react.css)({
color: 'var(--icon-accent-color)'
});
/**
* __Selected icon__
*
* The selected icon is used as the primary interactive element for the dialog.
* Can be used with or without supporting text.
*/
var SelectedIcon = function SelectedIcon(_ref) {
var appearance = _ref.appearance,
isOpen = _ref.isOpen,
label = _ref.label;
var _typesMapping$appeara = _constants.typesMapping[appearance],
Icon = _typesMapping$appeara.icon,
defaultLabel = _typesMapping$appeara.defaultLabel;
return (0, _react.jsx)("span", {
"data-ds--inline-message--icon": true
// eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop, @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766
,
style: {
'--icon-color': iconColor(appearance)
},
css: [iconWrapperStyles, isOpen && iconColorStyles]
}, (0, _react.jsx)(Icon, {
testId: "inline-message-icon",
label: label || defaultLabel,
size: "medium"
}));
};
var _default = exports.default = SelectedIcon;