UNPKG

@atlaskit/lozenge

Version:

A lozenge is a visual indicator used to highlight an item's status for quick recognition.

79 lines (78 loc) 3.8 kB
/* lozenge-dropdown-trigger.tsx generated by @compiled/babel-plugin v0.39.1 */ "use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); var _typeof = require("@babel/runtime/helpers/typeof"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = _interopRequireWildcard(require("react")); var React = _react; var _runtime = require("@compiled/react/runtime"); var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _noop = _interopRequireDefault(require("@atlaskit/ds-lib/noop")); var _lozengeBase = _interopRequireDefault(require("./lozenge-base")); 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); } /** * __Lozenge Dropdown Trigger__ * * An interactive lozenge component that acts as a dropdown trigger. * Built on LozengeBase with dropdown interaction patterns. * * - Supports all color variants from the lozenge * - Shows selected state with dedicated color tokens * - Includes a chevron icon on the right of the text * - Built for dropdown menu interactions * - Supports analytics events and UFO press interactions */ var LozengeDropdownTrigger = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) { var children = _ref.children, testId = _ref.testId, _ref$appearance = _ref.appearance, appearance = _ref$appearance === void 0 ? 'neutral' : _ref$appearance, _ref$spacing = _ref.spacing, spacing = _ref$spacing === void 0 ? 'default' : _ref$spacing, iconBefore = _ref.iconBefore, trailingMetric = _ref.trailingMetric, trailingMetricAppearance = _ref.trailingMetricAppearance, _ref$isSelected = _ref.isSelected, isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected, _ref$isLoading = _ref.isLoading, isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading, _ref$maxWidth = _ref.maxWidth, maxWidth = _ref$maxWidth === void 0 ? 200 : _ref$maxWidth, _ref$onClick = _ref.onClick, onClick = _ref$onClick === void 0 ? _noop.default : _ref$onClick, style = _ref.style, analyticsContext = _ref.analyticsContext, interactionName = _ref.interactionName, ariaControls = _ref['aria-controls'], ariaExpanded = _ref['aria-expanded'], ariaHaspopup = _ref['aria-haspopup'], ariaLabel = _ref['aria-label']; var baseProps = { appearance: appearance, spacing: spacing, iconBefore: iconBefore, trailingMetric: trailingMetric, trailingMetricAppearance: trailingMetricAppearance, isSelected: isSelected, isLoading: isLoading, maxWidth: maxWidth, style: style, testId: testId, onClick: onClick, analyticsContext: analyticsContext, interactionName: interactionName, children: children, 'aria-controls': ariaControls, 'aria-expanded': ariaExpanded, 'aria-haspopup': ariaHaspopup, 'aria-label': ariaLabel }; return /*#__PURE__*/React.createElement(_lozengeBase.default, (0, _extends2.default)({ ref: ref }, baseProps), children); })); LozengeDropdownTrigger.displayName = 'LozengeDropdownTrigger'; var _default = exports.default = LozengeDropdownTrigger;