@atlaskit/navigation-system
Version:
The latest navigation system for Atlassian apps.
53 lines (51 loc) • 2.65 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.AppSwitcher = void 0;
var _react = _interopRequireWildcard(require("react"));
var _appSwitcher = _interopRequireDefault(require("@atlaskit/icon/core/app-switcher"));
var _fg = require("@atlaskit/platform-feature-flags/fg");
var _iconButton = require("./themed/icon-button");
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); }
var toggleButtonTooltipOptions = {
// We're disabling pointer events on the tooltip to prevent it from blocking mouse events, so that the side nav flyout stays open
// when moving the mouse from the top bar to the side nav.
ignoreTooltipPointerEvents: true
};
/**
* __App switcher__
*
* The trigger button for the app switcher. Allows users to switch between Atlassian products.
*/
var AppSwitcher = exports.AppSwitcher = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
var label = _ref.label,
icon = _ref.icon,
onClick = _ref.onClick,
onMouseEnter = _ref.onMouseEnter,
interactionName = _ref.interactionName,
isSelected = _ref.isSelected,
testId = _ref.testId,
ariaControls = _ref['aria-controls'],
ariaExpanded = _ref['aria-expanded'],
ariaHasPopup = _ref['aria-haspopup'];
var pickedAppSwitcherIcon = (0, _fg.fg)('platform_dst_ads_appswitcher_improvements') ? icon !== null && icon !== void 0 ? icon : _appSwitcher.default : _appSwitcher.default;
return /*#__PURE__*/_react.default.createElement(_iconButton.IconButton, {
ref: ref,
"aria-controls": ariaControls,
"aria-expanded": ariaExpanded,
"aria-haspopup": ariaHasPopup,
icon: pickedAppSwitcherIcon,
label: label,
appearance: "subtle",
onClick: onClick,
onMouseEnter: onMouseEnter,
interactionName: interactionName,
isTooltipDisabled: false,
tooltip: toggleButtonTooltipOptions,
isSelected: isSelected,
testId: testId
});
});