"use strict";
Object.defineProperty(exports, "__esModule", {
    value: true
});
function _export(target, all) {
    for(var name in all)Object.defineProperty(target, name, {
        enumerable: true,
        get: Object.getOwnPropertyDescriptor(all, name).get
    });
}
_export(exports, {
    get ButtonsWrapper () {
        return ButtonsWrapper;
    },
    get CloseIconWrapper () {
        return CloseIconWrapper;
    },
    get ContentBox () {
        return ContentBox;
    },
    get IconWrapper () {
        return IconWrapper;
    },
    get StyledContent () {
        return StyledContent;
    },
    get StyledItemWrapper () {
        return StyledItemWrapper;
    },
    get StyledNotification () {
        return StyledNotification;
    },
    get StyledRoot () {
        return StyledRoot;
    },
    get StyledTitle () {
        return StyledTitle;
    },
    get TextBox () {
        return TextBox;
    },
    get Wrapper () {
        return Wrapper;
    }
});
var _styledcomponents = /*#__PURE__*/ _interop_require_wildcard(require("styled-components"));
var _mixins = require("../../mixins");
var _Button = require("../Button");
var _engines = require("../../engines");
var _Notificationtokens = require("./Notification.tokens");
var _Notificationtypes = require("./Notification.types");
function _getRequireWildcardCache(nodeInterop) {
    if (typeof WeakMap !== "function") return null;
    var cacheBabelInterop = new WeakMap();
    var cacheNodeInterop = new WeakMap();
    return (_getRequireWildcardCache = function(nodeInterop) {
        return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
    })(nodeInterop);
}
function _interop_require_wildcard(obj, nodeInterop) {
    if (!nodeInterop && obj && obj.__esModule) {
        return obj;
    }
    if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
        return {
            default: obj
        };
    }
    var cache = _getRequireWildcardCache(nodeInterop);
    if (cache && cache.has(obj)) {
        return cache.get(obj);
    }
    var newObj = {
        __proto__: null
    };
    var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
    for(var key in obj){
        if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
            var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
            if (desc && (desc.get || desc.set)) {
                Object.defineProperty(newObj, key, desc);
            } else {
                newObj[key] = obj[key];
            }
        }
    }
    newObj.default = obj;
    if (cache) {
        cache.set(obj, newObj);
    }
    return newObj;
}
var StyledNotification = (0, _styledcomponents.css)([
    "width:fit-content;"
]);
var mergedButtonConfig = (0, _engines.mergeConfig)(_Button.buttonConfig);
var Button = (0, _engines.component)(mergedButtonConfig);
var CloseIconWrapper = (0, _styledcomponents.default)(Button).withConfig({
    displayName: "Notification.styles__CloseIconWrapper",
    componentId: "sc-6c65af7-0"
})([
    "position:absolute;width:var(",
    ");height:var(",
    ");align-self:var(",
    ");color:var(",
    ");:hover{color:var(",
    ");}&.",
    "{position:relative;}"
], _Notificationtokens.tokens.closeIconButtonSize, _Notificationtokens.tokens.closeIconButtonSize, _Notificationtokens.tokens.horisontalIconCloseAlignSelf, _Notificationtokens.tokens.closeIconColor, _Notificationtokens.tokens.closeIconColorOnHover, _Notificationtokens.classes.horizontal);
var Wrapper = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__Wrapper",
    componentId: "sc-6c65af7-1"
})([
    "position:relative;width:",
    ";max-width:",
    ";border-radius:var(",
    ");border:var(",
    ") solid var(",
    ");background:",
    ";box-sizing:border-box;&.",
    "{display:flex;align-items:center;gap:var(",
    ");}"
], function(param) {
    var _param_width = param.width, width = _param_width === void 0 ? "var(".concat(_Notificationtokens.tokens.width, ")") : _param_width;
    return width;
}, function(param) {
    var maxWidth = param.maxWidth;
    return maxWidth || 'unset';
}, _Notificationtokens.tokens.borderRadius, _Notificationtokens.tokens.borderWidth, _Notificationtokens.tokens.borderColor, function(param) {
    var backgroundColor = param.backgroundColor;
    return backgroundColor || "var(".concat(_Notificationtokens.tokens.background, ")");
}, _Notificationtokens.classes.horizontal, _Notificationtokens.tokens.horizontalLayoutGap);
var ButtonsWrapper = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__ButtonsWrapper",
    componentId: "sc-6c65af7-2"
})([
    "margin-top:var(",
    ");margin-left:",
    ";align-self:var(",
    ");&.",
    "{margin-top:unset;margin-left:unset;}"
], _Notificationtokens.tokens.buttonsMarginTop, function(param) {
    var iconPlacement = param.iconPlacement;
    return iconPlacement === _Notificationtypes.placements.left ? "var(".concat(_Notificationtokens.tokens.buttonsMarginLeft, ")") : 'unset';
}, _Notificationtokens.tokens.horisontalActionsAlignSelf, _Notificationtokens.classes.horizontal);
var IconWrapper = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__IconWrapper",
    componentId: "sc-6c65af7-3"
})([
    "width:var(",
    ");height:var(",
    ");align-self:var(",
    ");color:",
    ";margin-right:",
    ";margin-bottom:",
    ";&.",
    "{margin-right:var(",
    ");margin-bottom:unset;}"
], _Notificationtokens.tokens.contentLeftIconSize, _Notificationtokens.tokens.contentLeftIconSize, _Notificationtokens.tokens.horisontalIconLeftAlignSelf, function(param) {
    var iconColor = param.iconColor;
    return iconColor || "var(".concat(_Notificationtokens.tokens.contentLeftIconColor, ")");
}, function(param) {
    var iconPlacement = param.iconPlacement;
    return iconPlacement === _Notificationtypes.placements.left ? "var(".concat(_Notificationtokens.tokens.contentLeftIconMargin, ")") : 'unset';
}, function(param) {
    var iconPlacement = param.iconPlacement;
    return iconPlacement === _Notificationtypes.placements.top ? "var(".concat(_Notificationtokens.tokens.contentTopIconMargin, ")") : 'unset';
}, _Notificationtokens.classes.horizontal, _Notificationtokens.tokens.horizontalLayoutLeftIconMargin);
var ContentBox = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__ContentBox",
    componentId: "sc-6c65af7-4"
})([
    "display:",
    ";padding-top:",
    ";&.",
    "{padding:unset;display:flex;align-items:center;flex-grow:1;}"
], function(param) {
    var iconPlacement = param.iconPlacement;
    return iconPlacement === _Notificationtypes.placements.left ? 'flex' : 'block';
}, function(param) {
    var iconPlacement = param.iconPlacement;
    return iconPlacement ? "var(".concat(_Notificationtokens.tokens.contentPaddingTop, ")") : "var(".concat(_Notificationtokens.tokens.contentPaddingTopWithoutIcon, ")");
}, _Notificationtokens.classes.horizontal);
var TextBox = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__TextBox",
    componentId: "sc-6c65af7-5"
})([
    "padding:var(",
    ") var(",
    ") var(",
    ") var(",
    ");padding-top:",
    ";padding-right:",
    ";display:flex;flex-direction:column;row-gap:var(",
    ");word-break:break-word;&.",
    "{padding:unset;}"
], _Notificationtokens.tokens.textboxPaddingTop, _Notificationtokens.tokens.textboxPaddingRight, _Notificationtokens.tokens.textboxPaddingBottom, _Notificationtokens.tokens.textboxPaddingLeft, function(param) {
    var iconPlacement = param.iconPlacement;
    return !iconPlacement || iconPlacement === _Notificationtypes.placements.top ? "var(".concat(_Notificationtokens.tokens.textboxPaddingTopWithTopIcon, ")") : "var(".concat(_Notificationtokens.tokens.textboxPaddingTop, ")");
}, function(param) {
    var showCloseIcon = param.showCloseIcon, iconPlacement = param.iconPlacement;
    return showCloseIcon && iconPlacement !== _Notificationtypes.placements.top ? "var(".concat(_Notificationtokens.tokens.textboxPaddingRightWithCloseIcon, ")") : "var(".concat(_Notificationtokens.tokens.textboxPaddingRight, ")");
}, _Notificationtokens.tokens.textboxGap, _Notificationtokens.classes.horizontal);
var StyledTitle = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__StyledTitle",
    componentId: "sc-6c65af7-6"
})([
    "font-family:var(",
    ");font-size:var(",
    ");font-style:var(",
    ");font-weight:var(",
    ");letter-spacing:var(",
    ");line-height:var(",
    ");",
    ";color:",
    ";"
], _Notificationtokens.tokens.titleFontFamily, _Notificationtokens.tokens.titleFontSize, _Notificationtokens.tokens.titleFontStyle, _Notificationtokens.tokens.titleFontWeight, _Notificationtokens.tokens.titleFontLetterSpacing, _Notificationtokens.tokens.titleFontLineHeight, String(_mixins.applyHyphens), function(param) {
    var textColor = param.textColor;
    return textColor || "var(".concat(_Notificationtokens.tokens.titleColor, ")");
});
var StyledContent = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__StyledContent",
    componentId: "sc-6c65af7-7"
})([
    "font-family:var(",
    ");font-size:var(",
    ");font-style:var(",
    ");font-weight:var(",
    ");letter-spacing:var(",
    ");line-height:var(",
    ");",
    ";color:",
    ";"
], _Notificationtokens.tokens.contentFontFamily, _Notificationtokens.tokens.contentFontSize, _Notificationtokens.tokens.contentFontStyle, _Notificationtokens.tokens.contentFontWeight, _Notificationtokens.tokens.contentFontLetterSpacing, _Notificationtokens.tokens.contentFontLineHeight, String(_mixins.applyHyphens), function(param) {
    var textColor = param.textColor;
    return textColor || "var(".concat(_Notificationtokens.tokens.contentColor, ")");
});
var StyledItemWrapper = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__StyledItemWrapper",
    componentId: "sc-6c65af7-8"
})([
    "margin-top:1rem;opacity:1;&&.",
    "{animation:0.4s showAnimation ease-out;&.",
    "{animation:0.4s showLeftToRightAnimation ease-out;}&.",
    "{animation:0.4s showTopToCenterAnimation ease-out;}&.",
    "{animation:0.4s showBottomToCenterAnimation ease-out;}}&&.",
    "{animation:0.4s hideAnimation ease-out;&.",
    "{animation:0.4s hideLeftToRightAnimation ease-out;}}@keyframes showTopToCenterAnimation{0%{transform:translateY(-100%);opacity:0;}100%{transform:translateY(0);opacity:1;}}@keyframes showBottomToCenterAnimation{0%{transform:translateY(100%);opacity:0;}100%{transform:translateY(0);opacity:1;}}@keyframes showLeftToRightAnimation{0%{transform:translateX(-100%);opacity:0;}100%{transform:translateX(0);opacity:1;}}@keyframes hideLeftToRightAnimation{0%{transform:translateX(0);opacity:1;}100%{transform:translateX(-100%);opacity:0;}}@keyframes showAnimation{0%{transform:translateX(100%);opacity:0;}100%{transform:translateX(0);opacity:1;}}@keyframes hideAnimation{0%{transform:translateX(0);opacity:1;}100%{transform:translateX(100%);opacity:0;}}"
], _Notificationtokens.classes.notificationItemOpened, _Notificationtokens.classes.notificationLeftToRightAnimation, _Notificationtokens.classes.notificationTopToCenterAnimation, _Notificationtokens.classes.notificationBottomToCenterAnimation, _Notificationtokens.classes.notificationItemHidden, _Notificationtokens.classes.notificationLeftToRightAnimation);
var StyledRoot = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__StyledRoot",
    componentId: "sc-6c65af7-9"
})([
    "display:flex;flex-direction:column-reverse;box-sizing:border-box;padding:0 1.5rem 1.5rem;max-height:100%;align-items:",
    ";"
], function(param) {
    var placement = param.placement;
    return placement === 'bottom-left' ? 'flex-start' : 'flex-end';
});
