UNPKG

@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
"use strict"; 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;