var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
    if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
    return cooked;
};
import { memoizeGetStyles } from '../../lib/theming/Emotion.js';
import { resetButton } from '../../lib/styles/Mixins.js';
import { iconSizeMixin, menuItemSizeMixin, withIconSizeMixin } from './MenuItem.mixins.js';
export var getMenuItemPaddings = function (_a) {
    var menuItemPaddingX = _a.menuItemPaddingX, menuItemPaddingY = _a.menuItemPaddingY;
    var paddingX = menuItemPaddingX;
    var paddingY = menuItemPaddingY;
    return { paddingX: paddingX, paddingY: paddingY };
};
export var getStyles = memoizeGetStyles(function (_a) {
    var css = _a.css;
    return ({
        root: function (t) {
            return css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n      ", ";\n\n      cursor: pointer;\n      display: ", ";\n      position: relative;\n      text-decoration: none;\n      color: ", ";\n      border-radius: ", ";\n\n      button& {\n        min-width: 100%;\n      }\n\n      &:nth-last-of-type(n + 2) {\n        margin-bottom: ", ";\n      }\n    "], ["\n      ", ";\n\n      cursor: pointer;\n      display: ", ";\n      position: relative;\n      text-decoration: none;\n      color: ", ";\n      border-radius: ", ";\n\n      button& {\n        min-width: 100%;\n      }\n\n      &:nth-last-of-type(n + 2) {\n        margin-bottom: ", ";\n      }\n    "])), resetButton(), t.menuItemDisplay, t.menuItemTextColor, t.menuItemBorderRadius, t.menuItemGap);
        },
        rootSmall: function (t) {
            return css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n      ", ";\n    "], ["\n      ", ";\n    "])), menuItemSizeMixin(t.menuItemPaddingXSmall, t.menuItemPaddingYSmall, t.menuItemLineHeightSmall, t.menuItemFontSizeSmall));
        },
        rootMedium: function (t) {
            return css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n      ", ";\n    "], ["\n      ", ";\n    "])), menuItemSizeMixin(t.menuItemPaddingXMedium, t.menuItemPaddingYMedium, t.menuItemLineHeightMedium, t.menuItemFontSizeMedium));
        },
        rootLarge: function (t) {
            return css(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n      ", ";\n    "], ["\n      ", ";\n    "])), menuItemSizeMixin(t.menuItemPaddingXLarge, t.menuItemPaddingYLarge, t.menuItemLineHeightLarge, t.menuItemFontSizeLarge));
        },
        rootMobile: function (t) {
            return css(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n      font-size: ", ";\n      line-height: ", ";\n      padding: ", ";\n    "], ["\n      font-size: ", ";\n      line-height: ", ";\n      padding: ", ";\n    "])), t.menuItemFontSizeMobile, t.menuItemLineHeightMobile, t.menuItemPaddingMobile);
        },
        hover: function (t) {
            // Color with !important in purpose to override `a:hover`
            return css(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n      background: ", " !important;\n      color: ", " !important;\n    "], ["\n      background: ", " !important;\n      color: ", " !important;\n    "])), t.menuItemHoverBg, t.menuItemHoverColor);
        },
        selected: function (t) {
            return css(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n      background: ", " !important;\n    "], ["\n      background: ", " !important;\n    "])), t.menuItemSelectedBg);
        },
        disabled: function (t) {
            return css(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n      background: ", ";\n      color: ", ";\n      cursor: default;\n    "], ["\n      background: ", ";\n      color: ", ";\n      cursor: default;\n    "])), t.menuItemDisabledBg, t.menuItemDisabledColor);
        },
        nonSelectable: function () {
            return css(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n      cursor: default;\n    "], ["\n      cursor: default;\n    "])));
        },
        loose: function () {
            return css(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n      padding-left: 15px;\n    "], ["\n      padding-left: 15px;\n    "])));
        },
        withIconSmall: function (t) {
            return css(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n      ", "\n    "], ["\n      ", "\n    "])), withIconSizeMixin(t.menuItemPaddingForIconSmall));
        },
        withIconMedium: function (t) {
            return css(templateObject_12 || (templateObject_12 = __makeTemplateObject(["\n      ", "\n    "], ["\n      ", "\n    "])), withIconSizeMixin(t.menuItemPaddingForIconMedium));
        },
        withIconLarge: function (t) {
            return css(templateObject_13 || (templateObject_13 = __makeTemplateObject(["\n      ", "\n    "], ["\n      ", "\n    "])), withIconSizeMixin(t.menuItemPaddingForIconLarge));
        },
        comment: function (t) {
            return css(templateObject_14 || (templateObject_14 = __makeTemplateObject(["\n      color: ", ";\n      opacity: ", ";\n      white-space: normal;\n      padding-top: 4px;\n    "], ["\n      color: ", ";\n      opacity: ", ";\n      white-space: normal;\n      padding-top: 4px;\n    "])), t.menuItemCommentColor, t.menuItemCommentOpacity);
        },
        commentHover: function (t) {
            return css(templateObject_15 || (templateObject_15 = __makeTemplateObject(["\n      color: ", ";\n      opacity: ", ";\n    "], ["\n      color: ", ";\n      opacity: ", ";\n    "])), t.menuItemCommentColorHover, t.menuItemCommentOpacityHover);
        },
        icon: function () {
            return css(templateObject_16 || (templateObject_16 = __makeTemplateObject(["\n      display: inline-block;\n      position: absolute;\n      transform: translateY(0px); // icon shifts one pixel up in firefox on medium size without this property\n    "], ["\n      display: inline-block;\n      position: absolute;\n      transform: translateY(0px); // icon shifts one pixel up in firefox on medium size without this property\n    "])));
        },
        iconSmall: function (t) {
            return css(templateObject_17 || (templateObject_17 = __makeTemplateObject(["\n      ", ";\n    "], ["\n      ", ";\n    "])), iconSizeMixin(t.menuItemIconWidthSmall, t.menuItemPaddingXSmall));
        },
        iconMedium: function (t) {
            return css(templateObject_18 || (templateObject_18 = __makeTemplateObject(["\n      ", ";\n    "], ["\n      ", ";\n    "])), iconSizeMixin(t.menuItemIconWidthMedium, t.menuItemPaddingXMedium));
        },
        iconLarge: function (t) {
            return css(templateObject_19 || (templateObject_19 = __makeTemplateObject(["\n      ", ";\n    "], ["\n      ", ";\n    "])), iconSizeMixin(t.menuItemIconWidthLarge, t.menuItemPaddingXLarge));
        },
        mobileContentWithIcon: function () {
            return css(templateObject_20 || (templateObject_20 = __makeTemplateObject(["\n      margin-left: 8px;\n    "], ["\n      margin-left: 8px;\n    "])));
        },
    });
});
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11, templateObject_12, templateObject_13, templateObject_14, templateObject_15, templateObject_16, templateObject_17, templateObject_18, templateObject_19, templateObject_20;
//# sourceMappingURL=MenuItem.styles.js.map