{"version":3,"file":"Banner.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_styles","_icons","_Button","_styles2","_HyperLink","_utils","_jsxRuntime","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","BannerContainerStyles","exports","styled","div","props","$backgroundColor","COLORS","getColor","theme","$bottom","BREAKPOINTS","MEDIUM","LARGE","StyledLink","$link","$linkActive","BannerCenterStyles","ComponentMStyling","ComponentTextStyle","Regular","BannerCloseButtonWrapperStyles","BannerCloseButtonContainerStyles","$type","getButtonStyle","BannerContentWrapperStyles","Banner","_ref","size","type","children","bottom","testId","linkText","link","onClose","icon","noIcon","linkAction","fullWidth","className","rest","_objectWithoutProperties2","useTheme","width","setWidth","useState","hasWindow","window","innerWidth","useEffect","handleResize","addEventListener","removeEventListener","variant","bannerParams","background","generateToken","componentType","defaultVariant","linkColor","closeIconColor","SystemIcons","Tip","containerType","linkActive","state","Help","TechnicalWarning","ThumbsUp","cls","jsx","role","jsxs","style","color","ComponentResponsive","id","Math","floor","random","onClick","preventDefault","href","IconButton","shape","useTransparentBackground","action","Close","propTypes","_propTypes","oneOf","string","func","bool","node","_default"],"sources":["../../src/Banners/Banner.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { useTheme } from 'styled-components';\r\n\r\nimport { BREAKPOINTS, COLORS, ComponentTextStyle } from '../styles';\r\nimport { SystemIcons } from '../icons';\r\nimport { IconButton } from '../Button';\r\nimport { getButtonStyle } from './styles';\r\nimport { Size } from '../types';\r\nimport { ComponentMStyling, ComponentResponsive } from '../styles';\r\nimport HyperLink from '../HyperLink/HyperLink';\r\nimport { StyledLink } from '../HyperLink/HyperLink';\r\nimport { hasWindow } from '../utils/utils';\r\nimport { ColorVariant } from 'src/utils/color-tokens';\r\n\r\n/**\r\n * Styles for <Banner />\r\n */\r\nexport type StyleBannerProps = BannerProps & { type: string; linkVisited: string; linkFocused: string };\r\n\r\nexport const BannerContainerStyles = styled.div<{ $link?: string, $bottom?: boolean, $backgroundColor: string; $linkActive: string; }>`\r\n  background: ${props => props.$backgroundColor};\r\n  min-height: 48px;\r\n  display: flex;\r\n  color: ${props => COLORS.getColor('black', props.theme)};\r\n  margin-top: ${props => (props.$bottom ? 'auto' : '0')};\r\n  border-radius: 4px;\r\n\r\n  button:last-child {\r\n    line-height: 0;\r\n    margin: 0 0 0 8px;\r\n    ${BREAKPOINTS.MEDIUM} {\r\n      margin: 0 0 0 16px;\r\n    }\r\n    ${BREAKPOINTS.LARGE} {\r\n      margin: 0 0 0 32px;\r\n    }\r\n    &.small {\r\n      margin: 0 0 0 8px;\r\n    }\r\n    &.medium {\r\n      margin: 0 0 0 16px;\r\n    }\r\n    &.large {\r\n      margin: 0 0 0 32px;\r\n    }\r\n  }\r\n\r\n  ${StyledLink} {\r\n    &:link {\r\n      color: ${(props) => props.$link};\r\n    }\r\n    &:visited {\r\n      color: ${(props) => props.$linkActive};\r\n    }\r\n    &:focus,\r\n    &:active {\r\n      background-color: ${(props) => props.$linkActive};\r\n      color: ${props => COLORS.getColor('white', props.theme)};\r\n    }\r\n  }\r\n\r\n  &.full-width-banner {\r\n    margin: 8px;\r\n  }\r\n`;\r\n\r\nexport const BannerCenterStyles = styled.div`\r\n  ${ComponentMStyling(ComponentTextStyle.Regular, null)}\r\n\r\n  display: flex;\r\n  width: 100%;\r\n  margin: 0 16px;\r\n  ${BREAKPOINTS.MEDIUM} {\r\n    margin: 0 32px;\r\n  }\r\n  ${BREAKPOINTS.LARGE} {\r\n    margin: 0 56px;\r\n  }\r\n  &.small {\r\n    margin: 0 16px;\r\n  }\r\n  &.medium {\r\n    margin: 0 32px;\r\n  }\r\n  &.large {\r\n    margin: 0 64px;\r\n  }\r\n\r\n  > svg {\r\n    flex-shrink: 0;\r\n    margin: 12px 0;\r\n  }\r\n\r\n  .full-width-banner & {\r\n    margin: 0 16px;\r\n\r\n    ${BREAKPOINTS.MEDIUM} {\r\n      margin: 0 32px;\r\n    }\r\n    ${BREAKPOINTS.LARGE} {\r\n      margin: 0 64px;\r\n    }\r\n\r\n    &.small {\r\n      margin: 0 16px;\r\n    }\r\n\r\n    &.medium {\r\n      margin: 0 32px;\r\n    }\r\n\r\n    &.large {\r\n      margin: 0 64px;\r\n    }\r\n  }\r\n`;\r\n\r\nexport const BannerCloseButtonWrapperStyles = styled.div`\r\n  margin: 0 0 0 auto;\r\n`;\r\n\r\nexport const BannerCloseButtonContainerStyles = styled.div<{ $type?: string }>`\r\n  display: contents;\r\n  ${(props) => (props.$type ? getButtonStyle(props.$type, props.theme) : null)};\r\n`;\r\n\r\nexport const BannerContentWrapperStyles = styled.div`\r\n  display: flex;\r\n  align-items: center;\r\n  margin: 12px 0;\r\n  &:not(:first-child) {\r\n    margin-left: 8px;\r\n  }\r\n`;\r\n\r\nexport type BannerProps = React.HTMLAttributes<HTMLDivElement> & {\r\n  /** Size of the banner. */\r\n  size?: Size.Small | Size.Medium | Size.Large;\r\n  /** Type of the banner. Different types have different color schemes. */\r\n  type?: 'warning' | 'critical' | 'positive' | 'neutral';\r\n  /** Link that will be shown after the children of the component. */\r\n  link?: string;\r\n  /** Text of the link */\r\n  linkText?: string;\r\n  /** If provided, then after user clicks on the link instead of following the link this method will be executed. */\r\n  linkAction?: (ev: React.MouseEvent) => void;\r\n  /** If set to true, then Banner will have 'margin-top' set to auto, and will render it at the bottom of the parent. */\r\n  bottom?: boolean;\r\n  /** For testing purposes. Will be set on top level container. */\r\n  testId?: string;\r\n  /** Icon to be shown instead of default icon on the left side of the Banner. */\r\n  icon?: React.ReactNode;\r\n  /** Callback event to be executed when user clicks on Close button. */\r\n  onClose?: () => void;\r\n  /** By default different banner types have different icons shown. If this flag is set, then no icon will be shown */\r\n  noIcon?: boolean;\r\n  /** Modifies margin of the banner for the cases when Banner stretches to full page width. */\r\n  fullWidth?: boolean;\r\n};\r\n\r\n/** Banner component is used as a middle-interrupting message to the user with zero to one actions. */\r\nconst Banner: React.FunctionComponent<BannerProps> = ({\r\n  size,\r\n  type = 'neutral',\r\n  children,\r\n  bottom,\r\n  testId,\r\n  linkText,\r\n  link,\r\n  onClose,\r\n  icon,\r\n  noIcon,\r\n  linkAction,\r\n  fullWidth,\r\n  className,\r\n  ...rest\r\n}) => {\r\n  const theme = useTheme();\r\n  const [width, setWidth] = React.useState<number>(hasWindow() ? window.innerWidth : -1);\r\n  React.useEffect(() => {\r\n    function handleResize() {\r\n      setWidth(window.innerWidth);\r\n    }\r\n    window.addEventListener('resize', handleResize);\r\n    return () => window.removeEventListener('resize', handleResize);\r\n  }, []);\r\n\r\n\r\n  let variant = 'primary';\r\n  switch(type)\r\n  {\r\n    case 'warning':\r\n      variant = 'warning';\r\n      break;\r\n\r\n    case 'critical':\r\n      variant = 'critical';\r\n      break;\r\n\r\n    case 'positive':\r\n      variant = 'positive';\r\n      break;\r\n  }\r\n  \r\n  let bannerParams = {\r\n    background:     COLORS.generateToken({ componentType: 'bg-surface', defaultVariant: variant as ColorVariant }, theme),\r\n    linkColor:      COLORS.generateToken({ componentType: 'text-link',  defaultVariant: variant as ColorVariant }, theme),\r\n    closeIconColor: COLORS.generateToken({ componentType: 'icon',       defaultVariant: variant as ColorVariant }, theme),\r\n    icon: SystemIcons.Tip,\r\n    containerType: type,\r\n    linkActive:     COLORS.generateToken({ componentType: 'text-link',  defaultVariant: variant as ColorVariant, state: 'active' }, theme),\r\n  };\r\n\r\n  switch (type) {\r\n    case 'warning':\r\n      bannerParams.icon = SystemIcons.Help;\r\n      break;\r\n    case 'critical':\r\n      bannerParams.icon = SystemIcons.TechnicalWarning;\r\n      break;\r\n    case 'positive':\r\n      bannerParams.icon = SystemIcons.ThumbsUp;\r\n      break;\r\n  }\r\n\r\n  const cls = `${className ?? ''} ${fullWidth ? 'full-width-banner' : ''}`;\r\n\r\n  return (\r\n    <BannerContainerStyles\r\n      data-testid={testId}\r\n      $backgroundColor={bannerParams.background}\r\n      $linkActive={bannerParams.linkActive}\r\n      $link={bannerParams.linkColor}\r\n      $bottom={bottom}\r\n      className={cls}\r\n      role=\"note\"\r\n      {...rest}>\r\n      <BannerCenterStyles style={{ color: bannerParams.linkColor }} className={size}>\r\n        {icon ? icon : noIcon ? null : <bannerParams.icon color={bannerParams.linkColor} size=\"24px\" />}\r\n        <BannerContentWrapperStyles>\r\n          <ComponentResponsive size={size} width={width} color={bannerParams.linkColor}>\r\n            {children}&nbsp;\r\n            {link && linkText && (\r\n              <HyperLink\r\n                id={`${Math.floor(Math.random() * 999999999999)}_BannerLink`}\r\n                onClick={(e) => {\r\n                  if (linkAction) {\r\n                    e.preventDefault();\r\n                    linkAction(e);\r\n                  }\r\n                }}\r\n                href={link}\r\n                variant=\"default\">\r\n                {linkText}\r\n              </HyperLink>\r\n            )}\r\n          </ComponentResponsive>\r\n        </BannerContentWrapperStyles>\r\n        {onClose && (\r\n          <BannerCloseButtonWrapperStyles>\r\n            <BannerCloseButtonContainerStyles $type={bannerParams.containerType}>\r\n              <IconButton variant=\"secondary\" shape=\"circular\" useTransparentBackground action={() => onClose()}>\r\n                <SystemIcons.Close color={bannerParams.closeIconColor} size=\"24px\" />\r\n              </IconButton>\r\n            </BannerCloseButtonContainerStyles>\r\n          </BannerCloseButtonWrapperStyles>\r\n        )}\r\n      </BannerCenterStyles>\r\n    </BannerContainerStyles>\r\n  );\r\n};\r\n\r\nexport default Banner;\r\n"],"mappings":"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","ignoreList":[]}