"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;
    }
});
const _styledcomponents = /*#__PURE__*/ _interop_require_wildcard(require("styled-components"));
const _mixins = require("../../mixins");
const _Button = require("../Button");
const _engines = require("../../engines");
const _Notificationtokens = require("./Notification.tokens");
const _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;
}
const StyledNotification = (0, _styledcomponents.css)([
    `width:fit-content;`
]);
const mergedButtonConfig = (0, _engines.mergeConfig)(_Button.buttonConfig);
const Button = (0, _engines.component)(mergedButtonConfig);
const CloseIconWrapper = (0, _styledcomponents.default)(Button).withConfig({
    displayName: "Notification.styles__CloseIconWrapper",
    componentId: "sc-e4c66d3c-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);
const Wrapper = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__Wrapper",
    componentId: "sc-e4c66d3c-1"
})([
    `position:relative;width:`,
    `;max-width:`,
    `;border-radius:var(`,
    `);border:var(`,
    `) solid transparent;background:`,
    `;box-sizing:border-box;box-shadow:var(`,
    `);&::before{content:'';position:absolute;pointer-events:none;inset:calc(-1 * var(`,
    `,0px));border-radius:inherit;padding:var(`,
    `,0px);background:var(`,
    `,transparent);--m:linear-gradient(#fff 0 0);-webkit-mask:var(--m) content-box,var(--m);mask:var(--m) content-box exclude,var(--m);-webkit-mask-composite:xor;mask-composite:exclude;}&.`,
    `{display:flex;align-items:center;gap:var(`,
    `);}`
], ({ width = `var(${_Notificationtokens.tokens.width})` })=>width, ({ maxWidth })=>maxWidth || 'unset', _Notificationtokens.tokens.borderRadius, _Notificationtokens.tokens.borderWidth, ({ backgroundColor })=>backgroundColor || `var(${_Notificationtokens.tokens.background})`, _Notificationtokens.tokens.boxShadow, _Notificationtokens.tokens.borderWidth, _Notificationtokens.tokens.borderWidth, _Notificationtokens.tokens.borderColor, _Notificationtokens.classes.horizontal, _Notificationtokens.tokens.horizontalLayoutGap);
const ButtonsWrapper = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__ButtonsWrapper",
    componentId: "sc-e4c66d3c-2"
})([
    `margin-top:var(`,
    `);margin-left:`,
    `;align-self:var(`,
    `);&.`,
    `{margin-top:unset;margin-left:unset;}`
], _Notificationtokens.tokens.buttonsMarginTop, ({ iconPlacement })=>iconPlacement === _Notificationtypes.placements.left ? `var(${_Notificationtokens.tokens.buttonsMarginLeft})` : 'unset', _Notificationtokens.tokens.horisontalActionsAlignSelf, _Notificationtokens.classes.horizontal);
const IconWrapper = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__IconWrapper",
    componentId: "sc-e4c66d3c-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, ({ iconColor })=>iconColor || `var(${_Notificationtokens.tokens.contentLeftIconColor})`, ({ iconPlacement })=>iconPlacement === _Notificationtypes.placements.left ? `var(${_Notificationtokens.tokens.contentLeftIconMargin})` : 'unset', ({ iconPlacement })=>iconPlacement === _Notificationtypes.placements.top ? `var(${_Notificationtokens.tokens.contentTopIconMargin})` : 'unset', _Notificationtokens.classes.horizontal, _Notificationtokens.tokens.horizontalLayoutLeftIconMargin);
const ContentBox = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__ContentBox",
    componentId: "sc-e4c66d3c-4"
})([
    `display:`,
    `;padding-top:`,
    `;&.`,
    `{padding:unset;display:flex;align-items:center;flex-grow:1;}`
], ({ iconPlacement })=>iconPlacement === _Notificationtypes.placements.left ? 'flex' : 'block', ({ iconPlacement })=>iconPlacement ? `var(${_Notificationtokens.tokens.contentPaddingTop})` : `var(${_Notificationtokens.tokens.contentPaddingTopWithoutIcon})`, _Notificationtokens.classes.horizontal);
const TextBox = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__TextBox",
    componentId: "sc-e4c66d3c-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, ({ iconPlacement })=>!iconPlacement || iconPlacement === _Notificationtypes.placements.top ? `var(${_Notificationtokens.tokens.textboxPaddingTopWithTopIcon})` : `var(${_Notificationtokens.tokens.textboxPaddingTop})`, ({ showCloseIcon, iconPlacement })=>showCloseIcon && iconPlacement !== _Notificationtypes.placements.top ? `var(${_Notificationtokens.tokens.textboxPaddingRightWithCloseIcon})` : `var(${_Notificationtokens.tokens.textboxPaddingRight})`, _Notificationtokens.tokens.textboxGap, _Notificationtokens.classes.horizontal);
const StyledTitle = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__StyledTitle",
    componentId: "sc-e4c66d3c-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), ({ textColor })=>textColor || `var(${_Notificationtokens.tokens.titleColor})`);
const StyledContent = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__StyledContent",
    componentId: "sc-e4c66d3c-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), ({ textColor })=>textColor || `var(${_Notificationtokens.tokens.contentColor})`);
const StyledItemWrapper = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__StyledItemWrapper",
    componentId: "sc-e4c66d3c-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);
const StyledRoot = _styledcomponents.default.div.withConfig({
    displayName: "Notification.styles__StyledRoot",
    componentId: "sc-e4c66d3c-9"
})([
    `display:flex;flex-direction:column-reverse;box-sizing:border-box;padding:0 1.5rem 1.5rem;max-height:100%;align-items:`,
    `;`
], ({ placement })=>placement === 'bottom-left' ? 'flex-start' : 'flex-end');
