{"version":3,"file":"index-BvqII1QG.cjs","sources":["../node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js","../node_modules/@emotion/styled/base/dist/emotion-styled-base.browser.esm.js","../node_modules/@emotion/styled/dist/emotion-styled.browser.esm.js","../src/Tooltip/hook.ts","../src/Tooltip/Tooltip.tsx","../src/Loader/Loader.tsx","../src/Loader/LoaderBlock.tsx","../src/Button/Loader/index.tsx","../src/Button/Content/index.tsx","../src/Button/types.ts","../src/Button/Button.tsx","../src/Link/types.ts","../src/Link/Link.tsx","../src/Snackbar/SnackbarProvider.tsx","../src/Snackbar/Actions/index.tsx","../src/Snackbar/ActionsTop/index.tsx","../src/Snackbar/ActionsBottom/index.tsx","../src/Snackbar/types.ts","../src/Snackbar/MessageContent/index.tsx","../src/Snackbar/MessageIcon/index.tsx","../src/Snackbar/MessageComponent/index.tsx"],"sourcesContent":["function _extends() {\n  return _extends = Object.assign ? Object.assign.bind() : function (n) {\n    for (var e = 1; e < arguments.length; e++) {\n      var t = arguments[e];\n      for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n    }\n    return n;\n  }, _extends.apply(null, arguments);\n}\nexport { _extends as default };","import memoize from '@emotion/memoize';\n\n// eslint-disable-next-line no-undef\nvar reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|disableRemotePlayback|download|draggable|encType|enterKeyHint|fetchpriority|fetchPriority|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/; // https://esbench.com/bench/5bfee68a4cd7e6009ef61d23\n\nvar isPropValid = /* #__PURE__ */memoize(function (prop) {\n  return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111\n  /* o */\n  && prop.charCodeAt(1) === 110\n  /* n */\n  && prop.charCodeAt(2) < 91;\n}\n/* Z+1 */\n);\n\nexport { isPropValid as default };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport * as React from 'react';\nimport isPropValid from '@emotion/is-prop-valid';\nimport { withEmotionCache, ThemeContext } from '@emotion/react';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\n/* import type {\n  ElementType,\n  StatelessFunctionalComponent,\n  AbstractComponent\n} from 'react' */\n/*\nexport type Interpolations = Array<any>\n\nexport type StyledElementType<Props> =\n  | string\n  | AbstractComponent<{ ...Props, className: string }, mixed>\n\nexport type StyledOptions = {\n  label?: string,\n  shouldForwardProp?: string => boolean,\n  target?: string\n}\n\nexport type StyledComponent<Props> = StatelessFunctionalComponent<Props> & {\n  defaultProps: any,\n  toString: () => string,\n  withComponent: (\n    nextTag: StyledElementType<Props>,\n    nextOptions?: StyledOptions\n  ) => StyledComponent<Props>\n}\n\nexport type PrivateStyledComponent<Props> = StyledComponent<Props> & {\n  __emotion_real: StyledComponent<Props>,\n  __emotion_base: any,\n  __emotion_styles: any,\n  __emotion_forwardProp: any\n}\n*/\n\nvar testOmitPropsOnStringTag = isPropValid;\n\nvar testOmitPropsOnComponent = function testOmitPropsOnComponent(key\n/*: string */\n) {\n  return key !== 'theme';\n};\n\nvar getDefaultShouldForwardProp = function getDefaultShouldForwardProp(tag\n/*: ElementType */\n) {\n  return typeof tag === 'string' && // 96 is one less than the char code\n  // for \"a\" so this is checking that\n  // it's a lowercase character\n  tag.charCodeAt(0) > 96 ? testOmitPropsOnStringTag : testOmitPropsOnComponent;\n};\nvar composeShouldForwardProps = function composeShouldForwardProps(tag\n/*: PrivateStyledComponent<any> */\n, options\n/*: StyledOptions | void */\n, isReal\n/*: boolean */\n) {\n  var shouldForwardProp;\n\n  if (options) {\n    var optionsShouldForwardProp = options.shouldForwardProp;\n    shouldForwardProp = tag.__emotion_forwardProp && optionsShouldForwardProp ? function (propName\n    /*: string */\n    ) {\n      return tag.__emotion_forwardProp(propName) && optionsShouldForwardProp(propName);\n    } : optionsShouldForwardProp;\n  }\n\n  if (typeof shouldForwardProp !== 'function' && isReal) {\n    shouldForwardProp = tag.__emotion_forwardProp;\n  }\n\n  return shouldForwardProp;\n};\n/*\nexport type CreateStyledComponent = <Props>(\n  ...args: Interpolations\n) => StyledComponent<Props>\n\nexport type CreateStyled = {\n  <Props>(\n    tag: StyledElementType<Props>,\n    options?: StyledOptions\n  ): (...args: Interpolations) => StyledComponent<Props>,\n  [key: string]: CreateStyledComponent,\n  bind: () => CreateStyled\n}\n*/\n\nvar isDevelopment = false;\n\nvar Insertion = function Insertion(_ref) {\n  var cache = _ref.cache,\n      serialized = _ref.serialized,\n      isStringTag = _ref.isStringTag;\n  registerStyles(cache, serialized, isStringTag);\n  useInsertionEffectAlwaysWithSyncFallback(function () {\n    return insertStyles(cache, serialized, isStringTag);\n  });\n\n  return null;\n};\n\nvar createStyled\n/*: CreateStyled */\n= function createStyled\n/*: CreateStyled */\n(tag\n/*: any */\n, options\n/* ?: StyledOptions */\n) {\n\n  var isReal = tag.__emotion_real === tag;\n  var baseTag = isReal && tag.__emotion_base || tag;\n  var identifierName;\n  var targetClassName;\n\n  if (options !== undefined) {\n    identifierName = options.label;\n    targetClassName = options.target;\n  }\n\n  var shouldForwardProp = composeShouldForwardProps(tag, options, isReal);\n  var defaultShouldForwardProp = shouldForwardProp || getDefaultShouldForwardProp(baseTag);\n  var shouldUseAs = !defaultShouldForwardProp('as');\n  /* return function<Props>(): PrivateStyledComponent<Props> { */\n\n  return function () {\n    var args = arguments;\n    var styles = isReal && tag.__emotion_styles !== undefined ? tag.__emotion_styles.slice(0) : [];\n\n    if (identifierName !== undefined) {\n      styles.push(\"label:\" + identifierName + \";\");\n    }\n\n    if (args[0] == null || args[0].raw === undefined) {\n      styles.push.apply(styles, args);\n    } else {\n\n      styles.push(args[0][0]);\n      var len = args.length;\n      var i = 1;\n\n      for (; i < len; i++) {\n\n        styles.push(args[i], args[0][i]);\n      }\n    }\n\n    var Styled\n    /*: PrivateStyledComponent<Props> */\n    = withEmotionCache(function (props, cache, ref) {\n      var FinalTag = shouldUseAs && props.as || baseTag;\n      var className = '';\n      var classInterpolations = [];\n      var mergedProps = props;\n\n      if (props.theme == null) {\n        mergedProps = {};\n\n        for (var key in props) {\n          mergedProps[key] = props[key];\n        }\n\n        mergedProps.theme = React.useContext(ThemeContext);\n      }\n\n      if (typeof props.className === 'string') {\n        className = getRegisteredStyles(cache.registered, classInterpolations, props.className);\n      } else if (props.className != null) {\n        className = props.className + \" \";\n      }\n\n      var serialized = serializeStyles(styles.concat(classInterpolations), cache.registered, mergedProps);\n      className += cache.key + \"-\" + serialized.name;\n\n      if (targetClassName !== undefined) {\n        className += \" \" + targetClassName;\n      }\n\n      var finalShouldForwardProp = shouldUseAs && shouldForwardProp === undefined ? getDefaultShouldForwardProp(FinalTag) : defaultShouldForwardProp;\n      var newProps = {};\n\n      for (var _key in props) {\n        if (shouldUseAs && _key === 'as') continue;\n\n        if (finalShouldForwardProp(_key)) {\n          newProps[_key] = props[_key];\n        }\n      }\n\n      newProps.className = className;\n\n      if (ref) {\n        newProps.ref = ref;\n      }\n\n      return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n        cache: cache,\n        serialized: serialized,\n        isStringTag: typeof FinalTag === 'string'\n      }), /*#__PURE__*/React.createElement(FinalTag, newProps));\n    });\n    Styled.displayName = identifierName !== undefined ? identifierName : \"Styled(\" + (typeof baseTag === 'string' ? baseTag : baseTag.displayName || baseTag.name || 'Component') + \")\";\n    Styled.defaultProps = tag.defaultProps;\n    Styled.__emotion_real = Styled;\n    Styled.__emotion_base = baseTag;\n    Styled.__emotion_styles = styles;\n    Styled.__emotion_forwardProp = shouldForwardProp;\n    Object.defineProperty(Styled, 'toString', {\n      value: function value() {\n        if (targetClassName === undefined && isDevelopment) {\n          return 'NO_COMPONENT_SELECTOR';\n        }\n\n        return \".\" + targetClassName;\n      }\n    });\n\n    Styled.withComponent = function (nextTag\n    /*: StyledElementType<Props> */\n    , nextOptions\n    /* ?: StyledOptions */\n    ) {\n      return createStyled(nextTag, _extends({}, options, nextOptions, {\n        shouldForwardProp: composeShouldForwardProps(Styled, nextOptions, true)\n      })).apply(void 0, styles);\n    };\n\n    return Styled;\n  };\n};\n\nexport { createStyled as default };\n","import createStyled from '../base/dist/emotion-styled-base.browser.esm.js';\nimport '@babel/runtime/helpers/extends';\nimport 'react';\nimport '@emotion/is-prop-valid';\nimport '@emotion/react';\nimport '@emotion/utils';\nimport '@emotion/serialize';\nimport '@emotion/use-insertion-effect-with-fallbacks';\n\nvar tags = ['a', 'abbr', 'address', 'area', 'article', 'aside', 'audio', 'b', 'base', 'bdi', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'canvas', 'caption', 'cite', 'code', 'col', 'colgroup', 'data', 'datalist', 'dd', 'del', 'details', 'dfn', 'dialog', 'div', 'dl', 'dt', 'em', 'embed', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'i', 'iframe', 'img', 'input', 'ins', 'kbd', 'keygen', 'label', 'legend', 'li', 'link', 'main', 'map', 'mark', 'marquee', 'menu', 'menuitem', 'meta', 'meter', 'nav', 'noscript', 'object', 'ol', 'optgroup', 'option', 'output', 'p', 'param', 'picture', 'pre', 'progress', 'q', 'rp', 'rt', 'ruby', 's', 'samp', 'script', 'section', 'select', 'small', 'source', 'span', 'strong', 'style', 'sub', 'summary', 'sup', 'table', 'tbody', 'td', 'textarea', 'tfoot', 'th', 'thead', 'time', 'title', 'tr', 'track', 'u', 'ul', 'var', 'video', 'wbr', // SVG\n'circle', 'clipPath', 'defs', 'ellipse', 'foreignObject', 'g', 'image', 'line', 'linearGradient', 'mask', 'path', 'pattern', 'polygon', 'polyline', 'radialGradient', 'rect', 'stop', 'svg', 'text', 'tspan'];\n\nvar newStyled = createStyled.bind();\ntags.forEach(function (tagName) {\n  newStyled[tagName] = newStyled(tagName);\n});\n\nexport { newStyled as default };\n","import {cloneElement, useRef, useState} from 'react';\nimport {\n  arrow,\n  autoPlacement,\n  autoUpdate,\n  flip,\n  offset,\n  useDismiss,\n  useFloating,\n  useHover,\n  useInteractions,\n  useMergeRefs,\n  useTransitionStyles,\n} from '@floating-ui/react';\n\nimport type {TooltipProps} from './types';\n\nexport const useTooltip = (props: TooltipProps) => {\n  const {\n    children,\n    placement,\n    enabled,\n\n    delay = {open: 330, close: 100},\n  } = props;\n\n  const [isOpenIn, setIsOpenIn] = useState<boolean>(false);\n  const isOpen = props.isOpen ?? isOpenIn;\n  const setIsOpen = props.setIsOpen ?? setIsOpenIn;\n\n  const arrowRef = useRef(null);\n\n  const floating = useFloating({\n    placement,\n\n    open: isOpen,\n    onOpenChange: setIsOpen,\n    whileElementsMounted: autoUpdate,\n\n    middleware: [offset(8), !placement ? autoPlacement() : flip(), arrow({element: arrowRef})],\n  });\n\n  const interactions = useInteractions([\n    useHover(floating.context, {enabled, delay, move: false}),\n    useDismiss(floating.context, {enabled}),\n  ]);\n\n  const {isMounted, styles} = useTransitionStyles(floating.context);\n\n  const ref = useMergeRefs([floating.refs.setReference, children['ref']]);\n\n  const child = cloneElement(children, interactions.getReferenceProps({...children.props, ref}));\n\n  return {isMounted, floating, interactions, arrowRef, styles, child};\n};\n","import React from 'react';\nimport styled from '@emotion/styled';\nimport {FloatingArrow, FloatingPortal} from '@floating-ui/react';\n\nimport theme from 'theme';\n\nimport {useTooltip} from './hook';\n\nimport type {TooltipProps} from './types';\n\nconst Container = styled.div`\n  padding: 10px 12px;\n  border-radius: 4px;\n  box-sizing: border-box;\n\n  ${theme.typography.p2}\n`;\n\nexport const Tooltip: React.FC<TooltipProps> = props => {\n  const {\n    content,\n    width,\n    whiteSpace,\n    className,\n\n    isPortal = true,\n    zIndex = theme.zIndex.tooltip,\n    color = theme.colors.white,\n    backgroundColor = theme.colors.grey[90],\n\n    qa = 'tooltip',\n  } = props;\n\n  const {isMounted, floating, interactions, arrowRef, styles, child} = useTooltip(props);\n\n  if (!isMounted) {\n    return child;\n  }\n\n  const containerProps = {\n    ...interactions.getFloatingProps(),\n\n    className,\n\n    style: {\n      ...styles,\n      ...floating.floatingStyles,\n\n      width,\n      whiteSpace,\n      zIndex,\n\n      color: color,\n      backgroundColor: backgroundColor,\n    },\n\n    'data-qa': qa,\n  };\n\n  const arrowProps = {\n    width: 8,\n    height: 4,\n\n    context: floating.context,\n    fill: backgroundColor,\n  };\n\n  const Wrapper = isPortal ? FloatingPortal : React.Fragment;\n\n  return (\n    <>\n      {child}\n      <Wrapper>\n        <Container ref={floating.refs.setFloating} {...containerProps}>\n          {content}\n\n          <FloatingArrow ref={arrowRef} {...arrowProps} />\n        </Container>\n      </Wrapper>\n    </>\n  );\n};\n","import styled from '@emotion/styled';\nimport {keyframes} from '@emotion/react';\n\nimport theme from 'theme';\nimport {SizeTokenValue} from 'common';\n\nimport type {LoaderProps} from './types';\n\nconst progressKeyframe = keyframes`\n  0% {\n    transform: rotate(0deg);\n  }\n\n  100% {\n    transform: rotate(360deg);\n  }\n`;\n\nconst dashKeyframe = keyframes`\n  0% {\n    stroke-dasharray: 1px, 200px;\n    stroke-dashoffset: 0;\n  }\n  \n  50% {\n    stroke-dasharray: 100px, 200px;\n    stroke-dashoffset: -15px;\n  }\n  \n  100% {\n    stroke-dasharray: 100px, 200px;\n    stroke-dashoffset: -125px;\n  }\n`;\n\nconst SVG = styled.svg`\n  display: block;\n  color: currentColor;\n`;\n\nconst Circle = styled.circle`\n  stroke: currentColor;\n  stroke-dasharray: 80px, 200px;\n  stroke-dashoffset: 0;\n  animation: ${dashKeyframe} 1.4s ease-in-out infinite;\n`;\n\nconst Rotation = styled.div<LoaderProps>`\n  animation: ${progressKeyframe} 1.4s ease-in-out infinite;\n\n  ${({size, color}) => {\n    switch (size) {\n      case SizeTokenValue.Large:\n        size = 48;\n        break;\n      case SizeTokenValue.Medium:\n        size = 24;\n        break;\n      case SizeTokenValue.Small:\n        size = 18;\n        break;\n    }\n\n    return {color, width: size, height: size};\n  }}\n`;\n\nexport const Loader: React.FC<LoaderProps> = props => {\n  const {size = SizeTokenValue.Medium, color = theme.colors.accent[90], qa = 'loader'} = props;\n\n  return (\n    <Rotation data-qa={qa} size={size} color={color}>\n      <SVG viewBox=\"22 22 44 44\">\n        <Circle cx=\"44\" cy=\"44\" r=\"20\" fill=\"none\" strokeWidth=\"3.6\" />\n      </SVG>\n    </Rotation>\n  );\n};\n","import styled from '@emotion/styled';\n\nimport theme from 'theme';\n\nimport {Loader} from './Loader';\n\nimport type {LoaderBlockProps} from './types';\n\nexport const Container = styled.div`\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  gap: 16px;\n  color: ${theme.colors.grey[100]};\n\n  ${theme.typography.p1};\n`;\n\nexport const LoaderBlock: React.FC<LoaderBlockProps> = ({children, size, color, qa, ...props}) => {\n  const loaderProps = {size, color};\n\n  return (\n    <Container data-qa={qa} {...props}>\n      <Loader {...loaderProps} />\n      <div>{children}</div>\n    </Container>\n  );\n};\n","import styled from '@emotion/styled';\n\nimport {SizeTokenValue} from 'common';\nimport {Loader as BaseLoader} from 'Loader';\n\nimport type {ButtonStyles} from '../types';\n\nconst Container = styled.div`\n  position: absolute;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  left: 0;\n  top: 0;\n  width: 100%;\n  height: 100%;\n  min-width: 18px;\n  min-height: 18px;\n`;\n\nexport const Loader: React.FC<ButtonStyles> = props => {\n  if (!props.isLoading) {\n    return null;\n  }\n\n  return (\n    <Container>\n      <BaseLoader color=\"inherit\" size={SizeTokenValue.Small} />\n    </Container>\n  );\n};\n","import styled from '@emotion/styled';\n\nimport type {CSSProperties} from 'react';\nimport type {ButtonProps} from '../types';\n\nexport const Content: React.FC<Pick<ButtonProps, 'children' | 'isLoading'>> = ({children, isLoading}) => {\n  const style: CSSProperties = {\n    visibility: isLoading ? 'hidden' : undefined,\n    padding: typeof children === 'string' ? '0 4px' : undefined,\n  };\n\n  return <div style={style}>{children}</div>;\n};\n\nconst IconContentComponent = styled.div`\n  display: flex;\n  & svg {\n    vertical-align: top;\n  }\n`;\n\nexport const IconContent: React.FC<Pick<ButtonProps, 'children' | 'isLoading'>> = ({children, isLoading}) => {\n  const style: CSSProperties = {\n    visibility: isLoading ? 'hidden' : undefined,\n  };\n\n  return <IconContentComponent style={style}>{children}</IconContentComponent>;\n};\n","// eslint-disable-next-line @typescript-eslint/consistent-type-imports\nimport {SizeTokenValue} from 'common';\n\nimport type {AnchorHTMLAttributes, ButtonHTMLAttributes, ElementType, ReactNode} from 'react';\nimport type {CSSObject} from '@emotion/react';\n\nimport type {QA} from 'common';\nimport type {TooltipProps} from 'Tooltip';\n\nexport enum ButtonVariant {\n  Primary = 'primary',\n  Secondary = 'secondary',\n  Outlined = 'outlined',\n  Text = 'text',\n\n  Inner = 'inner',\n  InnerInput = 'innerInput',\n\n  DangerPrimary = 'dangerPrimary',\n  DangerSecondary = 'dangerSecondary',\n  DangerOutlined = 'dangerOutlined',\n  DangerText = 'dangerText',\n}\n\nexport type ButtonStyles = {\n  /** Размер */\n  size: SizeTokenValue;\n  /** Показывать Loader */\n  isLoading?: boolean;\n\n  /** Кастомные стили */\n  behavior: {\n    /** По умолчанию */\n    default: CSSObject;\n    /** При наведении */\n    hover: CSSObject;\n    /** При нажатии */\n    active: CSSObject;\n    /** Отключенный */\n    disabled: CSSObject;\n  };\n} & Pick<CSSObject, 'width' | 'justifyContent' | 'fontSize' | 'lineHeight'>;\n\nexport type ButtonProps = {\n  /** Вариант кнопки */\n  variant?: ButtonVariant;\n  /** Всплывающая подсказка */\n  tooltip?: TooltipProps['content'];\n\n  /** Иконка | Контент слева */\n  startAdornment?: ReactNode;\n  /** Иконка | Контент справа */\n  endAdornment?: ReactNode;\n\n  /** TagName - по умолчанию button */\n  as?: ElementType;\n} & QA &\n  Partial<ButtonStyles> &\n  Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'color'> &\n  Omit<AnchorHTMLAttributes<HTMLAnchorElement>, 'color'>;\n\nexport type IconButtonProps = Omit<ButtonProps, 'startAdornment' | 'endAdornment'>;\n","import {forwardRef} from 'react';\n\nimport styled from '@emotion/styled';\n\nimport theme from 'theme';\nimport {SizeTokenValue} from 'common';\nimport {Tooltip} from 'Tooltip';\n\nimport {Loader} from './Loader';\nimport {Content, IconContent} from './Content';\n\nimport {ButtonVariant} from './types';\n\nimport type {ButtonProps, ButtonStyles, IconButtonProps} from './types';\nimport type {CSSObject} from '@emotion/styled';\n\nexport const variantBehavior: Record<ButtonVariant, ButtonStyles['behavior']> = {\n  [ButtonVariant.Primary]: {\n    default: {\n      color: theme.colors.white,\n      backgroundColor: theme.colors.accent[90],\n      borderColor: theme.colors.accent[90],\n    },\n    hover: {\n      color: theme.colors.white,\n      backgroundColor: theme.colors.accent[80],\n      borderColor: theme.colors.accent[80],\n    },\n    active: {\n      color: theme.colors.white,\n      backgroundColor: theme.colors.accent[100],\n      borderColor: theme.colors.accent[100],\n    },\n    disabled: {\n      color: theme.colors.grey[40],\n      backgroundColor: theme.colors.grey[20],\n      borderColor: theme.colors.grey[20],\n    },\n  },\n\n  [ButtonVariant.Secondary]: {\n    default: {\n      color: theme.colors.grey[100],\n      backgroundColor: theme.colors.grey[30],\n      borderColor: theme.colors.grey[30],\n    },\n    hover: {\n      color: theme.colors.grey[100],\n      backgroundColor: theme.colors.grey[20],\n      borderColor: theme.colors.grey[20],\n    },\n    active: {\n      color: theme.colors.grey[100],\n      backgroundColor: theme.colors.grey[40],\n      borderColor: theme.colors.grey[40],\n    },\n    disabled: {\n      color: theme.colors.grey[40],\n      backgroundColor: theme.colors.grey[20],\n      borderColor: theme.colors.grey[20],\n    },\n  },\n\n  [ButtonVariant.Outlined]: {\n    default: {\n      color: theme.colors.grey[100],\n      backgroundColor: theme.colors.white,\n      borderColor: theme.colors.grey[30],\n    },\n    hover: {\n      color: theme.colors.grey[100],\n      backgroundColor: theme.colors.grey[20],\n      borderColor: theme.colors.grey[40],\n    },\n    active: {\n      color: theme.colors.grey[100],\n      backgroundColor: theme.colors.grey[40],\n      borderColor: theme.colors.grey[40],\n    },\n    disabled: {\n      color: theme.colors.grey[40],\n      backgroundColor: theme.colors.white,\n      borderColor: theme.colors.grey[20],\n    },\n  },\n\n  [ButtonVariant.Text]: {\n    default: {\n      color: theme.colors.accent[90],\n      backgroundColor: 'transparent',\n      borderColor: 'transparent',\n    },\n    hover: {\n      color: theme.colors.accent[90],\n      backgroundColor: theme.colors.accent[20],\n      borderColor: theme.colors.accent[20],\n    },\n    active: {\n      color: theme.colors.accent[90],\n      backgroundColor: theme.colors.accent[30],\n      borderColor: theme.colors.accent[30],\n    },\n    disabled: {\n      color: theme.colors.grey[40],\n      backgroundColor: 'transparent',\n      borderColor: 'transparent',\n    },\n  },\n\n  [ButtonVariant.Inner]: {\n    default: {\n      color: theme.colors.grey[40],\n      backgroundColor: 'transparent',\n      borderColor: 'transparent',\n    },\n    hover: {\n      color: theme.colors.grey[40],\n      backgroundColor: theme.colors.grey[80],\n      borderColor: theme.colors.grey[80],\n    },\n    active: {\n      color: theme.colors.grey[40],\n      backgroundColor: theme.colors.grey[60],\n      borderColor: theme.colors.grey[60],\n    },\n    disabled: {\n      color: theme.colors.grey[60],\n      backgroundColor: 'transparent',\n      borderColor: 'transparent',\n    },\n  },\n\n  [ButtonVariant.InnerInput]: {\n    default: {\n      color: theme.colors.grey[60],\n      backgroundColor: 'transparent',\n      borderColor: 'transparent',\n    },\n    hover: {\n      color: theme.colors.grey[60],\n      backgroundColor: theme.colors.grey[30],\n      borderColor: theme.colors.grey[30],\n    },\n    active: {\n      color: theme.colors.grey[60],\n      backgroundColor: theme.colors.grey[40],\n      borderColor: theme.colors.grey[40],\n    },\n    disabled: {\n      color: theme.colors.grey[60],\n      backgroundColor: 'transparent',\n      borderColor: 'transparent',\n    },\n  },\n\n  [ButtonVariant.DangerPrimary]: {\n    default: {\n      color: theme.colors.white,\n      backgroundColor: theme.colors.red[80],\n      borderColor: theme.colors.red[80],\n    },\n    hover: {\n      color: theme.colors.white,\n      backgroundColor: theme.colors.red[70],\n      borderColor: theme.colors.red[70],\n    },\n    active: {\n      color: theme.colors.white,\n      backgroundColor: theme.colors.red[90],\n      borderColor: theme.colors.red[90],\n    },\n    disabled: {\n      color: theme.colors.grey[40],\n      backgroundColor: theme.colors.grey[20],\n      borderColor: theme.colors.grey[20],\n    },\n  },\n\n  [ButtonVariant.DangerSecondary]: {\n    default: {\n      color: theme.colors.red[80],\n      backgroundColor: theme.colors.red[20],\n      borderColor: theme.colors.red[20],\n    },\n    hover: {\n      color: theme.colors.red[80],\n      backgroundColor: theme.colors.red[10],\n      borderColor: theme.colors.red[10],\n    },\n    active: {\n      color: theme.colors.red[80],\n      backgroundColor: theme.colors.red[30],\n      borderColor: theme.colors.red[30],\n    },\n    disabled: {\n      color: theme.colors.grey[40],\n      backgroundColor: theme.colors.grey[20],\n      borderColor: theme.colors.grey[20],\n    },\n  },\n\n  [ButtonVariant.DangerOutlined]: {\n    default: {\n      color: theme.colors.red[80],\n      backgroundColor: theme.colors.white,\n      borderColor: theme.colors.red[80],\n    },\n    hover: {\n      color: theme.colors.red[80],\n      backgroundColor: theme.colors.red[10],\n      borderColor: theme.colors.red[80],\n    },\n    active: {\n      color: theme.colors.red[80],\n      backgroundColor: theme.colors.red[30],\n      borderColor: theme.colors.red[80],\n    },\n    disabled: {\n      color: theme.colors.grey[40],\n      backgroundColor: theme.colors.white,\n      borderColor: theme.colors.grey[20],\n    },\n  },\n\n  [ButtonVariant.DangerText]: {\n    default: {\n      color: theme.colors.red[80],\n      backgroundColor: 'transparent',\n      borderColor: 'transparent',\n    },\n    hover: {\n      color: theme.colors.red[80],\n      backgroundColor: theme.colors.red[10],\n      borderColor: theme.colors.red[10],\n    },\n    active: {\n      color: theme.colors.red[80],\n      backgroundColor: theme.colors.red[30],\n      borderColor: theme.colors.red[30],\n    },\n    disabled: {\n      color: theme.colors.grey[40],\n      backgroundColor: 'transparent',\n      borderColor: 'transparent',\n    },\n  },\n};\n\nconst buttonSize: Partial<Record<SizeTokenValue, CSSObject>> = {\n  [SizeTokenValue.Large]: {\n    minHeight: 48,\n    padding: '11px 15px',\n  },\n\n  [SizeTokenValue.Medium]: {\n    minHeight: 40,\n    padding: '7px 11px',\n  },\n\n  [SizeTokenValue.Small]: {\n    minHeight: 32,\n    padding: '3px 7px',\n  },\n\n  [SizeTokenValue.XSmall]: {\n    minHeight: 24,\n    padding: '3px',\n  },\n\n  [SizeTokenValue.XXSmall]: {\n    minHeight: 16,\n    padding: 0,\n  },\n};\n\nconst iconButtonSize: Partial<Record<SizeTokenValue, CSSObject>> = {\n  [SizeTokenValue.Large]: {\n    minHeight: 48,\n    minWidth: 48,\n    padding: 12,\n  },\n\n  [SizeTokenValue.Medium]: {\n    minHeight: 40,\n    minWidth: 40,\n    padding: 8,\n  },\n\n  [SizeTokenValue.Small]: {\n    minHeight: 32,\n    minWidth: 32,\n    padding: 4,\n  },\n\n  [SizeTokenValue.XSmall]: {\n    minHeight: 24,\n    minWidth: 24,\n    padding: 4,\n  },\n\n  [SizeTokenValue.XXSmall]: {\n    minHeight: 16,\n    minWidth: 16,\n    padding: 0,\n  },\n};\n\nconst ButtonComponent = styled.button<ButtonStyles>`\n  position: relative;\n  display: inline-flex;\n  align-items: center;\n  gap: 2px;\n  justify-content: center;\n  box-sizing: border-box;\n  border-width: 1px;\n  border-style: solid;\n  border-radius: 4px;\n  cursor: pointer;\n  outline: none;\n  text-decoration: none;\n\n  ${({\n    width,\n    justifyContent,\n    size,\n    behavior,\n\n    fontSize = theme.typography.p1.fontSize,\n    lineHeight = theme.typography.p1.lineHeight,\n  }) => {\n    return {\n      width,\n      justifyContent,\n\n      ...behavior.default,\n      ...buttonSize[size],\n      ...theme.typography.p1,\n\n      fontSize,\n      lineHeight,\n    };\n  }}\n\n  :hover {\n    ${props => props.behavior.hover}\n  }\n\n  :active {\n    ${props => props.behavior.active}\n  }\n\n  :focus-visible::after {\n    content: '';\n    display: block;\n    position: absolute;\n    box-sizing: border-box;\n    top: -2px;\n    left: -2px;\n    width: calc(100% + 4px);\n    height: calc(100% + 4px);\n    border-radius: 4px;\n    box-shadow: 0px 0px 3px 2px ${theme.colors.accent[70]};\n  }\n\n  :visited {\n    ${props => props.behavior.default}\n  }\n\n  &[disabled] {\n    ${props => props.behavior.disabled}\n  }\n`;\n\nconst IconButtonComponent = styled(ButtonComponent)(props => iconButtonSize[props.size]);\n\nconst BaseButton = forwardRef<\n  HTMLButtonElement,\n  ButtonProps & {component: typeof ButtonComponent | typeof IconButtonComponent}\n>((props, ref) => {\n  const {\n    children,\n    tooltip,\n    behavior,\n    component: Component,\n\n    variant = ButtonVariant.Primary,\n    size = SizeTokenValue.Large,\n\n    type = 'button',\n    qa = 'btn',\n\n    ...rest\n  } = props;\n\n  const buttonStyles = {\n    ...rest,\n\n    size,\n    type,\n    behavior: behavior ?? variantBehavior[variant],\n\n    'data-qa': qa,\n  };\n\n  const child = (\n    <Component ref={ref} {...buttonStyles}>\n      <Loader {...buttonStyles} />\n      {children}\n    </Component>\n  );\n\n  if (tooltip) {\n    return <Tooltip content={tooltip}>{child}</Tooltip>;\n  }\n\n  return child;\n});\n\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>((props, ref) => {\n  const {children, isLoading, startAdornment, endAdornment} = props;\n\n  return (\n    <BaseButton ref={ref} component={ButtonComponent} {...props}>\n      {startAdornment}\n\n      <Content isLoading={isLoading}>{children}</Content>\n\n      {endAdornment}\n    </BaseButton>\n  );\n});\n\nexport const IconButton = forwardRef<HTMLButtonElement, IconButtonProps>((props, ref) => {\n  const {children, isLoading} = props;\n\n  return (\n    <BaseButton ref={ref} component={IconButtonComponent} {...props}>\n      <IconContent isLoading={isLoading}>{children}</IconContent>\n    </BaseButton>\n  );\n});\n","import type {AnchorHTMLAttributes} from 'react';\nimport type {CSSObject} from '@emotion/react';\n\nimport type {QA} from 'common';\n\nexport enum LinkVariant {\n  Accent = 'accent',\n  Blue = 'blue',\n}\n\nexport type LinkStyles = {\n  /** Отключено */\n  disabled?: boolean;\n  /** Стиль с подчеркиванием */\n  isPseudolink?: boolean;\n  /** Использовать состояние :visited */\n  isVisitable?: boolean;\n  /** Показать loader */\n  isLoading?: boolean;\n\n  /** Кастомные стили */\n  behavior: {\n    /** По умолчанию */\n    default: CSSObject;\n    /** При наведении */\n    hover: CSSObject;\n    /** При нажатии */\n    active: CSSObject;\n    /** Был переход по ссылке */\n    visited: CSSObject;\n    /** Отключенный */\n    disabled: CSSObject;\n  };\n};\n\nexport type LinkProps = {\n  /** Вариант */\n  variant?: LinkVariant;\n} & QA &\n  Partial<LinkStyles> &\n  AnchorHTMLAttributes<HTMLAnchorElement>;\n","import {forwardRef} from 'react';\nimport styled from '@emotion/styled';\n\nimport theme from 'theme';\nimport {SizeTokenValue} from 'common';\nimport {Loader} from 'Loader';\n\nimport {LinkVariant} from './types';\n\nimport type {LinkProps, LinkStyles} from './types';\nimport type {MouseEventHandler} from 'react';\n\nconst variantBehavior = {\n  [LinkVariant.Accent]: {\n    default: {\n      color: theme.colors.accent[90],\n    },\n\n    hover: {\n      color: theme.colors.accent[80],\n    },\n\n    active: {\n      color: theme.colors.accent[100],\n    },\n\n    visited: {\n      color: theme.colors.additional.violet[80],\n    },\n\n    disabled: {\n      color: theme.colors.grey[40],\n      cursor: 'default',\n    },\n  },\n\n  [LinkVariant.Blue]: {\n    default: {\n      color: theme.colors.additional.blue[90],\n    },\n\n    hover: {\n      color: theme.colors.additional.blue[80],\n    },\n\n    active: {\n      color: theme.colors.additional.blue[100],\n    },\n\n    visited: {\n      color: theme.colors.additional.violet[80],\n    },\n\n    disabled: {\n      color: theme.colors.grey[40],\n      cursor: 'default',\n    },\n  },\n};\n\nconst BaseLinkComponent = styled.a<LinkStyles>`\n  display: inline-flex;\n  gap: 8px;\n  align-items: center;\n  text-decoration-skip-ink: none;\n  vertical-align: bottom;\n  cursor: pointer;\n  user-select: none;\n  font-family: ${theme.typography.p1.fontFamily};\n\n  ${props => props.behavior.default}\n\n  :hover {\n    ${props => props.behavior.hover}\n  }\n\n  :active {\n    ${props => props.behavior.active}\n  }\n\n  :visited {\n    ${props => props.isVisitable && props.behavior.visited}\n  }\n\n  &[disabled] {\n    ${props => props.behavior.disabled}\n  }\n`;\n\nconst LinkComponent = styled(BaseLinkComponent)`\n  text-decoration: none;\n\n  :link {\n    text-decoration: none;\n  }\n\n  :hover {\n    text-decoration: underline;\n  }\n\n  :active {\n    text-decoration: none;\n  }\n\n  :visited {\n    text-decoration: none;\n  }\n\n  &[disabled] {\n    text-decoration: none;\n  }\n`;\n\nconst PseudoLinkComponent = styled(BaseLinkComponent)`\n  text-decoration: underline dashed;\n\n  :link {\n    text-decoration: underline dashed;\n  }\n\n  :hover {\n    text-decoration: underline dashed;\n  }\n\n  :active {\n    text-decoration: dashed;\n  }\n\n  :visited {\n    text-decoration: dashed;\n  }\n\n  &[disabled] {\n    text-decoration: none;\n  }\n`;\n\nexport const Link = forwardRef<HTMLAnchorElement, LinkProps>((props, ref) => {\n  const {\n    children,\n    disabled,\n    behavior,\n    isPseudolink,\n    isLoading,\n\n    variant = LinkVariant.Accent,\n    qa = 'link',\n\n    ...rest\n  } = props;\n\n  const onClickCapture: MouseEventHandler<HTMLAnchorElement> = e => {\n    if (disabled) {\n      e.preventDefault();\n      e.stopPropagation();\n    }\n\n    if (!props.href) {\n      e.preventDefault();\n    }\n\n    props.onClickCapture?.(e);\n  };\n\n  const linkStyles = {\n    ...rest,\n\n    disabled,\n    onClickCapture,\n\n    behavior: behavior ?? variantBehavior[variant],\n\n    'data-qa': qa,\n  };\n\n  const Component = isPseudolink ? PseudoLinkComponent : LinkComponent;\n\n  return (\n    <Component ref={ref} {...linkStyles}>\n      {isLoading && <Loader color=\"inherit\" size={SizeTokenValue.Small} />}\n      {children}\n    </Component>\n  );\n});\n","import {forwardRef} from 'react';\n\nimport {SnackbarProvider as BaseSnackbarProvider} from 'notistack';\n\nimport type {SnackbarProviderProps, CustomContentProps} from 'notistack';\n\nexport const SnackbarContainer = forwardRef<HTMLDivElement, CustomContentProps>(({message, style}, ref) => (\n  <div ref={ref} style={style}>\n    {message}\n  </div>\n));\n\nconst Components: SnackbarProviderProps['Components'] = {\n  default: SnackbarContainer,\n  success: SnackbarContainer,\n  warning: SnackbarContainer,\n  error: SnackbarContainer,\n  info: SnackbarContainer,\n};\n\nexport const SnackbarProvider: React.FC<SnackbarProviderProps> = ({children, ...props}) => (\n  <>\n    <BaseSnackbarProvider Components={Components} {...props} />\n    {children}\n  </>\n);\n","import {SizeTokenValue} from 'common';\nimport {Button, ButtonVariant} from 'Button';\nimport {Link} from 'Link';\n\nimport type {SnackbarAction} from '../types';\n\nexport const getAction = (action: SnackbarAction, index: number) => {\n  if (action && typeof action === 'object') {\n    if ('isButton' in action) {\n      return <Button key={index} variant={ButtonVariant.Text} size={SizeTokenValue.Small} {...action} />;\n    }\n\n    if ('isLink' in action) {\n      return <Link key={index} {...action} />;\n    }\n  }\n\n  return action;\n};\n","import styled from '@emotion/styled';\nimport {closeSnackbar} from 'notistack';\n\nimport {ButtonVariant, IconButton} from 'Button';\n\nimport {SizeTokenValue} from 'common';\nimport {CloseIcon} from 'icons';\n\nimport {getAction} from '../Actions';\n\nimport type {RequiredQA} from 'common';\nimport type {SnackbarContentProps} from '../types';\n\nconst Container = styled.div`\n  display: flex;\n  align-items: flex-start;\n`;\n\nexport const ActionsTop: React.FC<SnackbarContentProps & RequiredQA> = ({qa, message}) => {\n  const {key, closable, actionsTop = []} = message;\n\n  const child = actionsTop.map(getAction).filter(Boolean);\n\n  if (closable) {\n    const onClose = () => closeSnackbar(key);\n\n    child.push(\n      <IconButton\n        key=\"closebutton\"\n        qa={`${qa}-close`}\n        size={SizeTokenValue.Small}\n        variant={ButtonVariant.Inner}\n        onClick={onClose}\n      >\n        <CloseIcon size={SizeTokenValue.Small} />\n      </IconButton>\n    );\n  }\n\n  if (!child.length) {\n    return null;\n  }\n\n  return <Container data-qa={`${qa}-actions-top`}>{child}</Container>;\n};\n","import styled from '@emotion/styled';\n\nimport {getAction} from '../Actions';\n\nimport type {SnackbarContentProps} from '../types';\nimport type {RequiredQA} from 'common';\n\nconst Container = styled.div`\n  display: flex;\n  align-items: center;\n  justify-content: flex-end;\n  padding-top: 8px;\n  gap: 8px;\n`;\n\nexport const ActionsBottom: React.FC<SnackbarContentProps & RequiredQA> = props => {\n  const {actionsBottom = []} = props.message;\n\n  const child = actionsBottom.map(getAction).filter(Boolean);\n\n  if (!child.length) {\n    return null;\n  }\n\n  return <Container data-qa={`${props.qa}-actions-bottom`}>{child}</Container>;\n};\n","import type {CSSProperties, HTMLAttributes, ReactNode} from 'react';\nimport type {SnackbarProviderProps as BaseSnackbarProviderProps, OptionsObject} from 'notistack';\n\nimport type {QA} from 'common';\nimport type {ButtonProps} from 'Button';\nimport type {LinkProps} from 'Link';\n\n/** Пропсы провайдера notistack */\nexport type SnackbarProviderProps = BaseSnackbarProviderProps;\n\n/** Вариант дизайна Snackbar */\nexport enum SnackbarVariant {\n  /** Без границы и иконки */\n  Default = 'default',\n  /** Зеленая граница и иконка */\n  Success = 'success',\n  /** Желтая граница и иконка */\n  Warning = 'warning',\n  /** Красная граница и иконка */\n  Error = 'error',\n}\n\n/** Кнопки в сообщении\n *\n * Передаются кнопки(isButton), ссылки(isLink), или кастомный элемент\n */\nexport type SnackbarAction = ({isButton: true} & ButtonProps) | ({isLink: true} & LinkProps) | ReactNode;\n\n/** Всплывающее сообщение */\nexport type SnackbarMessage = {\n  /** Контент */\n  content: ReactNode;\n  /** Заголовок */\n  title?: ReactNode;\n  /** Кастомная иконка */\n  icon?: ReactNode;\n  /** Вариант */\n  variant?: SnackbarVariant;\n\n  /** С возможностью закрытия (показывать крестик) */\n  closable?: boolean;\n\n  /** Кнопки сверху справа */\n  actionsTop?: SnackbarAction[];\n  /** Кнопки снизу */\n  actionsBottom?: SnackbarAction[];\n} & QA &\n  Omit<OptionsObject, 'variant'> &\n  Pick<CSSProperties, 'maxWidth' | 'whiteSpace'> &\n  Pick<HTMLAttributes<HTMLDivElement>, 'style' | 'className'>;\n\nexport type SnackbarMessageInner = Omit<SnackbarMessage, 'key'> & Required<Pick<SnackbarMessage, 'key' | 'variant'>>;\n\nexport type SnackbarContentProps = {\n  message: SnackbarMessageInner;\n};\n","import styled from '@emotion/styled';\n\nimport theme from 'theme';\n\nimport {SnackbarVariant} from '../types';\n\nimport type {RequiredQA} from 'common';\nimport type {SnackbarContentProps, SnackbarMessageInner} from '../types';\n\nconst variantColor: Record<SnackbarVariant, string> = {\n  [SnackbarVariant.Default]: theme.colors.white,\n  [SnackbarVariant.Success]: theme.colors.additional.green[50],\n  [SnackbarVariant.Warning]: theme.colors.additional.yellow[50],\n  [SnackbarVariant.Error]: theme.colors.additional.red[50],\n};\n\nconst Container = styled.div`\n  padding: 6px 8px 6px 4px;\n`;\n\nconst TitleComponent = styled.div<Pick<SnackbarMessageInner, 'variant'>>`\n  padding-bottom: 2px;\n  color: ${props => variantColor[props.variant]};\n\n  ${theme.typography.h4}\n`;\n\nconst ContentComponent = styled.div`\n  color: ${theme.colors.white};\n\n  ${theme.typography.p1compact}\n`;\n\nexport const MessageContent: React.FC<SnackbarContentProps & RequiredQA> = ({message, qa}) => {\n  const {title, content, variant, whiteSpace} = message;\n\n  return (\n    <Container data-qa={`${qa}-message`}>\n      {title && <TitleComponent variant={variant}>{title}</TitleComponent>}\n      <ContentComponent style={{whiteSpace}}>{content}</ContentComponent>\n    </Container>\n  );\n};\n","import styled from '@emotion/styled';\n\nimport theme from 'theme';\nimport {SizeTokenValue} from 'common';\n\nimport {CheckIcon, ErrorIcon, WarningOutlineIcon} from 'icons';\n\nimport {SnackbarVariant} from '../types';\n\nimport type {RequiredQA} from 'common';\nimport type {IconComponent} from 'icons';\nimport type {SnackbarContentProps} from '../types';\n\nconst variantIcon: Record<SnackbarVariant, IconComponent | null> = {\n  [SnackbarVariant.Default]: null,\n  [SnackbarVariant.Success]: CheckIcon,\n  [SnackbarVariant.Warning]: WarningOutlineIcon,\n  [SnackbarVariant.Error]: ErrorIcon,\n};\n\nconst variantColor: Record<SnackbarVariant, string> = {\n  [SnackbarVariant.Default]: theme.colors.white,\n  [SnackbarVariant.Success]: theme.colors.additional.green[50],\n  [SnackbarVariant.Warning]: theme.colors.additional.yellow[50],\n  [SnackbarVariant.Error]: theme.colors.additional.red[50],\n};\n\nconst Container = styled.div`\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 32px;\n  min-height: 32px;\n  padding: 4px;\n  box-sizing: border-box;\n\n  ${theme.typography.h4}\n`;\n\nexport const MessageIcon: React.FC<SnackbarContentProps & RequiredQA> = ({qa, message: {icon, variant}}) => {\n  if (typeof icon !== 'undefined' && icon !== true) {\n    return icon;\n  }\n\n  const Component = variantIcon[variant];\n  if (!Component) {\n    return null;\n  }\n\n  return (\n    <Container data-qa={`${qa}-icon`}>\n      <Component size={SizeTokenValue.Medium} color={variantColor[variant]} />\n    </Container>\n  );\n};\n","import styled from '@emotion/styled';\n\nimport theme from 'theme';\n\nimport {ActionsTop} from '../ActionsTop';\nimport {ActionsBottom} from '../ActionsBottom';\nimport {MessageContent} from '../MessageContent';\nimport {MessageIcon} from '../MessageIcon';\n\nimport {SnackbarVariant} from '../types';\n\nimport type {SnackbarContentProps, SnackbarMessageInner} from '../types';\n\nconst variantShadow: Record<SnackbarVariant, string> = {\n  [SnackbarVariant.Default]: 'none',\n  [SnackbarVariant.Success]: `-4px 0px 0px 0px ${theme.colors.success}`,\n  [SnackbarVariant.Warning]: `-4px 0px 0px 0px ${theme.colors.additional.yellow[50]}`,\n  [SnackbarVariant.Error]: `-4px 0px 0px 0px ${theme.colors.additional.red[50]}`,\n};\n\nconst Container = styled.div<Pick<SnackbarMessageInner, 'variant'>>`\n  display: flex;\n  align-items: flex-start;\n  padding: 8px;\n  border-radius: 4px;\n  background-color: ${theme.colors.grey[90]};\n  box-shadow: ${props => variantShadow[props.variant]};\n`;\n\nconst Content = styled.div`\n  flex-grow: 1;\n`;\n\nconst Top = styled.div`\n  display: flex;\n  align-items: flex-start;\n  justify-content: space-between;\n`;\n\nexport const MessageComponent: React.FC<SnackbarContentProps> = props => {\n  const {variant, maxWidth, className, style, qa = 'snackbar-message'} = props.message;\n\n  const resultProps = {...props, qa};\n\n  const containerProps = {\n    variant,\n    className,\n\n    'data-qa': qa,\n\n    style: {maxWidth, ...style},\n  };\n\n  return (\n    <Container {...containerProps}>\n      <MessageIcon {...resultProps} />\n\n      <Content>\n        <Top>\n          <MessageContent {...resultProps} />\n          <ActionsTop {...resultProps} />\n        </Top>\n\n        <ActionsBottom {...resultProps} />\n      </Content>\n    </Container>\n  );\n};\n"],"names":["_extends","n","e","r","reactPropsRegex","isPropValid","memoize","prop","testOmitPropsOnStringTag","testOmitPropsOnComponent","key","getDefaultShouldForwardProp","tag","composeShouldForwardProps","options","isReal","shouldForwardProp","optionsShouldForwardProp","propName","isDevelopment","Insertion","_ref","cache","serialized","isStringTag","registerStyles","useInsertionEffectAlwaysWithSyncFallback","insertStyles","createStyled","baseTag","identifierName","targetClassName","defaultShouldForwardProp","shouldUseAs","args","styles","len","i","Styled","withEmotionCache","props","ref","FinalTag","className","classInterpolations","mergedProps","React","ThemeContext","getRegisteredStyles","serializeStyles","finalShouldForwardProp","newProps","_key","nextTag","nextOptions","tags","newStyled","tagName","useTooltip","children","placement","enabled","delay","isOpenIn","setIsOpenIn","useState","isOpen","setIsOpen","arrowRef","useRef","floating","useFloating","autoUpdate","offset","flip","autoPlacement","arrow","interactions","useInteractions","useHover","useDismiss","isMounted","useTransitionStyles","useMergeRefs","child","cloneElement","Container","styled","theme","Tooltip","content","width","whiteSpace","isPortal","zIndex","color","backgroundColor","qa","containerProps","arrowProps","Wrapper","FloatingPortal","jsxs","Fragment","jsx","FloatingArrow","progressKeyframe","keyframes","dashKeyframe","SVG","Circle","Rotation","size","SizeTokenValue","Loader","LoaderBlock","loaderProps","BaseLoader","Content","isLoading","style","IconContentComponent","IconContent","ButtonVariant","variantBehavior","buttonSize","iconButtonSize","ButtonComponent","justifyContent","behavior","fontSize","lineHeight","IconButtonComponent","BaseButton","forwardRef","tooltip","Component","variant","type","rest","buttonStyles","Button","startAdornment","endAdornment","IconButton","LinkVariant","BaseLinkComponent","LinkComponent","PseudoLinkComponent","Link","disabled","isPseudolink","linkStyles","_a","SnackbarContainer","message","Components","SnackbarProvider","BaseSnackbarProvider","getAction","action","index","ActionsTop","closable","actionsTop","onClose","closeSnackbar","CloseIcon","ActionsBottom","actionsBottom","SnackbarVariant","variantColor","TitleComponent","ContentComponent","MessageContent","title","variantIcon","CheckIcon","WarningOutlineIcon","ErrorIcon","MessageIcon","icon","variantShadow","Top","MessageComponent","maxWidth","resultProps"],"mappings":"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","x_google_ignoreList":[0,1,2,3]}