{"version":3,"sources":["pages/advertiser-ads-page/advertiser-card.js","pages/advertiser-ads-page/advertiser-ads-page.js","assets/no-associated-ad.svg","../../../node_modules/react-masonry-css/dist/react-masonry-css.module.js"],"names":["getStyles","cardContainer","width","padding","marginTop","cardTitle","fontStyle","fontWeight","fontSize","lineHeight","color","cardSubtitle","verified","display","flexDirection","alignItems","justifyContent","& span","marginLeft","tooltip","position","top","Header","_ref","classes","name","isVerified","react_default","a","createElement","Fragment","Text","className","TooltipHost","content","href","target","rel","chunk_2","tabIndex","id","primaryFill","ICON_FILL_COLOR","aria-labelledby","concat","aria-label","AdvertiserCard","compose","WrappedComponent","withDefaultStyles","props","AdvertiserName","country","AdvertiserCountry","IsVerified","Card","classnames","CardHeader","image","Avatar","shape","size","header","advertiser_card_Header","description","pageOuterContainer","height","overflowY","background","pageInnerContainer","marginBottom","@media (max-width: 1200px)","@media (max-width: 950px)","resultTextContainer","resultCardContainer","flexWrap","gap","paginationContainer","filterRow","filterContainer","noResultWrapper","& .first-row","& b","sortText","textAlign","invalidMessageWrapper","AdSearchResults","memo","advertiserId","adQueryString","searchConfig","adCount","setAdCount","perfMarker","logger","searchResultPerfMarker","createChild","_useState","useState","_useState2","Object","slicedToArray","ads","setAds","_useState3","_useState4","lastRID","setLastRID","_useState5","_useState6","fetchComplete","setFetchComplete","_useState7","_useState8","massonryCols","setMassonryCols","willInit","_useFetch","useFetch","get","response","loading","error","handleResize","useCallback","window","innerWidth","_loadAds","asyncToGenerator","_regeneratorRuntime","mark","_callee","requestId","results","wrap","_context","prev","next","generateGuid","logTrace","RID","QueryString","sent","willRender","ok","Response","stop","apply","this","arguments","useEffect","willFetchData","loadAds","isNumber","done","addEventListener","removeEventListener","logError","Error","status","src","error_page","Image","NoAssociatedAdImg","react_masonry_css_module","breakpointCols","columnClassName","value","map","ad","updatedAd","_objectSpread","AdId","toString","AdvertiserId","assign","key","prevProps","nextProps","AdvertiserBanner","_ref2","setAdvertiserName","setIsInvalidID","bannerPerfMarker","_useState9","_useState10","advertiser","setAdvertiser","_useState11","_useState12","_useState13","_useState14","_useFetch2","_loadAdvertiserById","_callee2","_context2","isEmpty","data","loadAdvertiserById","InvalidIdMessage","_ref3","StyledAdvertiserAdsPage","useContext","InstrumentationServiceContext","useCreateChildPerfMarker","_useState15","_useState16","_useState17","_useState18","advertiserName","_useState19","_useState20","prevPageState","setPrevPageState","_useState21","_useState22","isInvalidID","location","useLocation","navigate","useNavigate","state","useParams","_useSearchParams","useSearchParams","_useSearchParams2","searchParams","setSearchParams","countryCodeList","split","filterStartDate","filterEndDate","filterExtraInput","currentPage","buildGetAdsQueryString","DEFAULT_AD_PAGE_SIZE","skip","startDate","endDate","searchText","totalPage","useMemo","Math","ceil","onPageChange","newPage","newSearchParams","object","toConsumableArray","page","adPreviewContent","document","getElementsByClassName","length","focus","onBackButtonClick","t","q","advertiser_ads_page_InvalidIdMessage","adQueryInput","Number","module","exports","__webpack_require__","p","react__WEBPACK_IMPORTED_MODULE_0__","react__WEBPACK_IMPORTED_MODULE_0___default","n","_objectWithoutProperties","source","excluded","i","sourceKeys","keys","indexOf","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","prototype","propertyIsEnumerable","call","_extends","hasOwnProperty","ownKeys","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","configurable","writable","defaultProps","undefined","children","columnAttrs","column","DEFAULT_COLUMNS","Masonry","Component","[object Object]","columnCount","super","reCalculateColumnCount","bind","reCalculateColumnCountDebounce","default","parseInt","requestAnimationFrame","cancelAnimationFrame","_lastRecalculateAnimationFrame","windowWidth","Infinity","breakpointColsObject","matchedBreakpoint","columns","breakpoint","optBreakpoint","max","setState","currentColumnCount","itemsInColumns","Array","items","Children","toArray","columnIndex","childrenInColumns","columnWidth","logDeprecated","columnAttributes","style","message","console","_this$props","rest","classNameOutput","renderColumns","__webpack_exports__"],"mappings":"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","file":"static/js/4.2f9ffb82.chunk.js","sourcesContent":["import React from 'react';\r\nimport classnames from 'classnames';\r\nimport Proptypes from 'prop-types';\r\nimport { compose } from 'underscore';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport { ICON_FILL_COLOR } from '@bingads-webui-adlibrary/common-components';\r\nimport {\r\n  Avatar,\r\n  Card,\r\n  CardHeader,\r\n  Text,\r\n} from '@fluentui/react-components';\r\nimport {\r\n  CheckmarkCircle16Filled,\r\n} from '@fluentui/react-icons';\r\nimport {\r\n  TooltipHost,\r\n} from '@fluentui/react/lib/Tooltip';\r\n\r\n\r\nconst getStyles = () => ({\r\n  cardContainer: {\r\n    width: '100%',\r\n    padding: '16px',\r\n    marginTop: '16px',\r\n  },\r\n  cardTitle: {\r\n    fontStyle: 'normal',\r\n    fontWeight: '600',\r\n    fontSize: '14px',\r\n    lineHeight: '20px',\r\n    color: '#242424',\r\n  },\r\n  cardSubtitle: {\r\n    fontStyle: 'normal',\r\n    fontWeight: '400',\r\n    fontSize: '12px',\r\n    lineHeight: '16px',\r\n    color: '#616161',\r\n  },\r\n  verified: {\r\n    display: 'flex',\r\n    flexDirection: 'row',\r\n    alignItems: 'center',\r\n    justifyContent: 'flex-start',\r\n    '& span': {\r\n      marginLeft: '4px',\r\n    },\r\n  },\r\n  tooltip: {\r\n    marginLeft: '5px',\r\n    position: 'relative',\r\n    top: '2px',\r\n  },\r\n});\r\n\r\nconst Header = ({ classes, name, isVerified }) => {\r\n  const Content = () => (\r\n    <span>\r\n      Learn more about Microsoft's Advertiser Identity Verification Program <a href=\"https://help.ads.microsoft.com/#apex/ads/en/60151/-1\" target=\"_blank\" rel=\"noopener noreferrer\">here</a>\r\n    </span>\r\n  );\r\n  return (\r\n    <>\r\n      <Text className={classes.cardTitle}>\r\n        {name}\r\n      </Text>\r\n      { isVerified ?\r\n        <span className={classes.tooltip}>\r\n          <TooltipHost\r\n            content={<Content />}\r\n          >\r\n            <CheckmarkCircle16Filled\r\n              tabIndex={0}\r\n              id={name}\r\n              primaryFill={ICON_FILL_COLOR}\r\n              aria-labelledby={`${name} verified`}\r\n              aria-label={name}\r\n            />\r\n          </TooltipHost>\r\n        </span> : null}\r\n    </>\r\n  );\r\n};\r\n\r\nconst UnStyledAdvertiserCard = (props) => {\r\n  const {\r\n    classes,\r\n    AdvertiserName: name,\r\n    AdvertiserCountry: country,\r\n    IsVerified: isVerified,\r\n  } = props;\r\n\r\n  return (\r\n    <Card className={classnames('advertiser-card', classes.cardContainer)}>\r\n      <CardHeader\r\n        image={<Avatar name={name} shape=\"square\" color=\"colorful\" size={48} />}\r\n        header={<Header classes={classes} name={name} isVerified={isVerified} />}\r\n        description={\r\n          <Text className={classes.cardSubtitle}>Advertiser | {country}</Text>\r\n        }\r\n      />\r\n    </Card>\r\n  );\r\n};\r\n\r\nUnStyledAdvertiserCard.propTypes = {\r\n  classes: Proptypes.shape({\r\n    cardContainer: Proptypes.string.isRequired,\r\n    cardTitle: Proptypes.string.isRequired,\r\n    cardSubtitle: Proptypes.string.isRequired,\r\n  }).isRequired,\r\n};\r\n\r\nexport const AdvertiserCard = compose(WrappedComponent => withDefaultStyles(WrappedComponent, getStyles))(UnStyledAdvertiserCard);\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport React, { memo, useCallback, useContext, useEffect, useMemo, useState } from 'react';\r\nimport { useLocation, useNavigate, useParams, useSearchParams } from 'react-router-dom';\r\nimport { compose, object, isEmpty, isNumber } from 'underscore';\r\nimport classnames from 'classnames';\r\nimport useFetch from 'use-http';\r\nimport Masonry from 'react-masonry-css';\r\nimport { InstrumentationServiceContext } from '@bingads-webui/adlibrary-instrumentation';\r\nimport { withDefaultStyles } from '@bingads-webui-react/with-default-styles';\r\nimport {\r\n  Text,\r\n  Image,\r\n} from '@fluentui/react-components';\r\nimport { useCreateChildPerfMarker } from '@bingads-webui-campaign-react/performance-marker-provider';\r\nimport { generateGuid } from '@bingads-webui-universal/primitive-utilities';\r\nimport {\r\n  AdResultCard,\r\n  BackButton,\r\n  CountryFilter,\r\n  DateRangeFilter,\r\n  ExtraInputFilter,\r\n  Pagination,\r\n  buildGetAdsQueryString,\r\n  DEFAULT_AD_PAGE_SIZE,\r\n  FallbackSpinner,\r\n  AdResultLoadingEffect,\r\n  ErrorMessage500,\r\n} from '@bingads-webui-adlibrary/common-components';\r\nimport { AdvertiserCard } from './advertiser-card';\r\nimport NoAssociatedAdImg from '../../assets/no-associated-ad.svg';\r\nimport { StyledErrorPage } from '../error-page/error-page';\r\n\r\nconst getStyles = () => ({\r\n  pageOuterContainer: {\r\n    height: '100%',\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    overflowY: 'auto',\r\n    background: '#FAFAFA',\r\n    alignItems: 'center',\r\n  },\r\n  pageInnerContainer: {\r\n    width: '1122px',\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    justifyContent: 'center',\r\n    marginTop: '36px',\r\n    marginBottom: '36px',\r\n    '@media (max-width: 1200px)': {\r\n      width: '738px',\r\n    },\r\n    '@media (max-width: 950px)': {\r\n      width: '358px',\r\n    },\r\n  },\r\n  resultTextContainer: {\r\n    display: 'flex',\r\n    flexDirection: 'row',\r\n    alignItems: 'center',\r\n    marginTop: '40px',\r\n    justifyContent: 'space-between',\r\n  },\r\n  resultCardContainer: {\r\n    display: 'flex',\r\n    flexDirection: 'row',\r\n    flexWrap: 'wrap',\r\n    alignItems: 'flex-start',\r\n    justifyContent: 'center',\r\n    marginTop: '36px',\r\n    gap: '24px',\r\n  },\r\n  paginationContainer: {\r\n    marginTop: '36px',\r\n    display: 'flex',\r\n    justifyContent: 'center',\r\n  },\r\n  filterRow: {\r\n    display: 'flex',\r\n    flexDirection: 'row',\r\n    marginTop: '16px',\r\n    alignItems: 'flex-end',\r\n    justifyContent: 'space-between',\r\n    flexWrap: 'wrap',\r\n  },\r\n  filterContainer: {\r\n    display: 'flex',\r\n    flexDirection: 'row',\r\n    gap: '24px',\r\n    flexWrap: 'wrap',\r\n  },\r\n  noResultWrapper: {\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    alignItems: 'center',\r\n    justifyContent: 'center',\r\n    marginTop: '100px',\r\n    '& .first-row': {\r\n      marginTop: '24px',\r\n      fontWeight: '400',\r\n      fontSize: '24px',\r\n      lineHeight: '36px',\r\n      '& b': {\r\n        fontWeight: '600',\r\n      },\r\n    },\r\n  },\r\n  sortText: {\r\n    fontStyle: 'normal',\r\n    fontWeight: '600',\r\n    fontSize: '14px',\r\n    lineHeight: '20px',\r\n    textAlign: 'right',\r\n    color: '#646464',\r\n  },\r\n  invalidMessageWrapper: {\r\n    display: 'flex',\r\n    flexDirection: 'column',\r\n    justifyContent: 'center',\r\n    marginTop: '100px',\r\n    width: '1122px',\r\n  },\r\n});\r\n\r\nconst AdSearchResults = memo(({\r\n  classes,\r\n  advertiserId,\r\n  adQueryString,\r\n  searchConfig,\r\n  adCount,\r\n  setAdCount,\r\n  perfMarker,\r\n  logger,\r\n}) => {\r\n  const searchResultPerfMarker = perfMarker.createChild('results');\r\n  const [ads, setAds] = useState({});\r\n  const [lastRID, setLastRID] = useState(-1);\r\n  const [fetchComplete, setFetchComplete] = useState(false);\r\n  const [massonryCols, setMassonryCols] = useState(3);\r\n\r\n  if (!fetchComplete && adCount === -1) {\r\n    searchResultPerfMarker.willInit();\r\n  }\r\n\r\n  const {\r\n    get,\r\n    response,\r\n    loading,\r\n    error,\r\n  } = useFetch();\r\n\r\n  const handleResize = useCallback(() => {\r\n    if (window.innerWidth < 950) {\r\n      setMassonryCols(1);\r\n    } else if (window.innerWidth < 1200) {\r\n      setMassonryCols(2);\r\n    } else {\r\n      setMassonryCols(3);\r\n    }\r\n  }, []);\r\n\r\n  async function loadAds() {\r\n    const requestId = generateGuid();\r\n    setLastRID(requestId);\r\n    logger.logTrace(`Start fetching results of advertiserId=${advertiserId}`, {\r\n      RID: requestId,\r\n      QueryString: adQueryString,\r\n    });\r\n    const results = await get(`/api/v1/Ads?${adQueryString}&ReqId=${requestId}`);\r\n    searchResultPerfMarker.willRender();\r\n    setFetchComplete(true);\r\n    if (response.ok) {\r\n      logger.logTrace(`Succeed to fetch results of advertiserId=${advertiserId}`, {\r\n        RID: requestId,\r\n        QueryString: adQueryString,\r\n        Response: response,\r\n      });\r\n      setAds(results);\r\n    }\r\n  }\r\n\r\n  useEffect(() => {\r\n    searchResultPerfMarker.willFetchData();\r\n    loadAds();\r\n  }, [adQueryString]);\r\n\r\n  useEffect(() => {\r\n    if (isNumber(ads['@odata.count'])) setAdCount(ads['@odata.count']);\r\n  }, [ads['@odata.count']]);\r\n\r\n  useEffect(() => {\r\n    if (fetchComplete) {\r\n      searchResultPerfMarker.done();\r\n    }\r\n  }, [fetchComplete]);\r\n\r\n  useEffect(() => {\r\n    window.addEventListener('resize', handleResize);\r\n    handleResize();\r\n    return () => window.removeEventListener('resize', handleResize);\r\n  }, []);\r\n\r\n  if (error) {\r\n    logger.logError(`Failed to fetch results of advertiserId=${advertiserId}`, {\r\n      RID: lastRID,\r\n      QueryString: adQueryString,\r\n      Error: error,\r\n    });\r\n    if (response.status === 500) return <ErrorMessage500 />;\r\n    return <StyledErrorPage />;\r\n  }\r\n  if (loading) return <AdResultLoadingEffect />;\r\n\r\n  return adCount === 0 ? (\r\n    <div className={classes.noResultWrapper}>\r\n      <Image src={NoAssociatedAdImg} height=\"200\" width=\"222\" />\r\n      <Text className=\"first-row\">There are no ads associated with this advertiser</Text>\r\n    </div>\r\n  ) : (\r\n    <Masonry\r\n      breakpointCols={massonryCols}\r\n      className=\"masonry-grid\"\r\n      columnClassName=\"masonry-grid_column\"\r\n    >\r\n      {\r\n        ads.value && ads.value.map((ad) => {\r\n          const updatedAd = { ...ad };\r\n          if (updatedAd.AdId) updatedAd.AdId = updatedAd.AdId.toString();\r\n          if (updatedAd.AdvertiserId) updatedAd.AdvertiserId = updatedAd.AdvertiserId.toString();\r\n          return <AdResultCard key={updatedAd.AdId} {...updatedAd} searchConfig={searchConfig} />;\r\n        })\r\n      }\r\n    </Masonry>\r\n  );\r\n}, (prevProps, nextProps) => prevProps.adQueryString === nextProps.adQueryString && prevProps.adCount === nextProps.adCount);\r\n\r\nconst AdvertiserBanner = memo(({\r\n  advertiserId,\r\n  setAdvertiserName,\r\n  setIsInvalidID,\r\n  perfMarker,\r\n  logger,\r\n}) => {\r\n  const bannerPerfMarker = perfMarker.createChild('banner');\r\n\r\n  const [advertiser, setAdvertiser] = useState({});\r\n  const [lastRID, setLastRID] = useState(-1);\r\n  const [fetchComplete, setFetchComplete] = useState(false);\r\n\r\n  if (!fetchComplete && lastRID === -1) {\r\n    bannerPerfMarker.willInit();\r\n  }\r\n\r\n  const {\r\n    get,\r\n    response,\r\n    loading,\r\n    error,\r\n  } = useFetch();\r\n\r\n  async function loadAdvertiserById() {\r\n    const requestId = generateGuid();\r\n    setLastRID(requestId);\r\n    logger.logTrace(`Start fetching summary of advertiserId=${advertiserId}`, {\r\n      RID: requestId,\r\n      AdvertiserId: advertiserId,\r\n    });\r\n    const results = await get(`/api/v1/Advertisers/${advertiserId}?&ReqId=${requestId}`);\r\n    bannerPerfMarker.willRender();\r\n    setFetchComplete(true);\r\n    if (response.ok) {\r\n      logger.logTrace(`Succeed to fetch summary of advertiserId='${advertiserId}'`, {\r\n        RID: requestId,\r\n        AdvertiserId: advertiserId,\r\n        Response: results,\r\n      });\r\n      setAdvertiser(results);\r\n      if (response.status === 200 && isEmpty(response.data)) {\r\n        setIsInvalidID(true);\r\n      }\r\n    }\r\n  }\r\n\r\n  useEffect(() => {\r\n    bannerPerfMarker.willFetchData();\r\n    loadAdvertiserById();\r\n  }, []);\r\n\r\n  useEffect(() => {\r\n    if (advertiser) {\r\n      setAdvertiserName(advertiser.AdvertiserName);\r\n    }\r\n  }, [advertiser]);\r\n\r\n  useEffect(() => {\r\n    if (fetchComplete) {\r\n      bannerPerfMarker.done();\r\n    }\r\n  }, [fetchComplete]);\r\n\r\n  if (error) {\r\n    logger.logError(`Failed to fetch summary of advertiserId='${advertiserId}'`, {\r\n      RID: lastRID,\r\n      AdvertiserId: advertiserId,\r\n      Error: error,\r\n    });\r\n    return <div>Oops, something went wrong...</div>;\r\n  }\r\n  if (loading) return <FallbackSpinner />;\r\n\r\n  return (\r\n    <AdvertiserCard\r\n      AdvertiserName={advertiser.AdvertiserName}\r\n      AdvertiserCountry={advertiser.AdvertiserCountry}\r\n      IsVerified={advertiser.IsVerified}\r\n    />\r\n  );\r\n}, (prevProps, nextProps) => !prevProps || prevProps.advertiserId === nextProps.advertiserId);\r\n\r\nconst InvalidIdMessage = ({ classes }) => (\r\n  <div className={classes.invalidMessageWrapper}>\r\n    <h2>No data found for this advertiser ID.</h2>\r\n    <h2>Either it is invalid or this advertiser has not yet served any ads in the European Economic Area.</h2>\r\n  </div>\r\n);\r\n\r\nconst AdvertiserAdsPage = (props) => {\r\n  const { classes } = props;\r\n  const logger = useContext(InstrumentationServiceContext);\r\n  const perfMarker = useCreateChildPerfMarker('advertiser_page');\r\n\r\n  perfMarker.willInit();\r\n\r\n  const [adCount, setAdCount] = useState(-1);\r\n  const [advertiserName, setAdvertiserName] = useState('');\r\n  const [prevPageState, setPrevPageState] = useState(null);\r\n  const [isInvalidID, setIsInvalidID] = useState(false);\r\n\r\n  const location = useLocation();\r\n  const navigate = useNavigate();\r\n  const searchConfig = location.state ? location.state : null;\r\n\r\n  const { id } = useParams();\r\n  const [searchParams, setSearchParams] = useSearchParams();\r\n\r\n  const countryCodeList = searchParams.get('ctrs') ? searchParams.get('ctrs').split(',') : [];\r\n  const filterStartDate = searchParams.get('start') || '';\r\n  const filterEndDate = searchParams.get('end') || '';\r\n  const filterExtraInput = searchParams.get('aq') || '';\r\n  const currentPage = searchParams.get('page') || 1;\r\n  const adQueryString = buildGetAdsQueryString({\r\n    top: DEFAULT_AD_PAGE_SIZE,\r\n    skip: (currentPage - 1) * DEFAULT_AD_PAGE_SIZE,\r\n    startDate: filterStartDate,\r\n    endDate: filterEndDate,\r\n    countryCodeList,\r\n    advertiserId: id,\r\n    searchText: filterExtraInput,\r\n  });\r\n\r\n  const totalPage = useMemo(() => Math.ceil(adCount / DEFAULT_AD_PAGE_SIZE), [adCount]);\r\n  const onPageChange = useCallback((newPage) => {\r\n    logger.logTrace(`Changing page to ${newPage}`);\r\n    const newSearchParams = object([...searchParams]);\r\n    if (newPage) {\r\n      newSearchParams.page = newPage;\r\n    }\r\n    setSearchParams(newSearchParams);\r\n    const adPreviewContent = document.getElementsByClassName('responsive-ad-preview-content');\r\n    if (adPreviewContent.length > 0) {\r\n      adPreviewContent[0].focus();\r\n    }\r\n  }, [searchParams, setSearchParams]);\r\n\r\n  const onBackButtonClick = useCallback(() => {\r\n    logger.logTrace('Clicking back button');\r\n    if (prevPageState !== null) {\r\n      navigate(`/?t=${searchConfig.t}&q=${searchConfig.q}`);\r\n    } else {\r\n      navigate('/');\r\n    }\r\n  }, [prevPageState]);\r\n\r\n  useEffect(() => {\r\n    logger.logTrace('Rendered the advertiser page');\r\n    if (searchConfig !== null) {\r\n      setPrevPageState(searchConfig);\r\n    }\r\n    perfMarker.done();\r\n  }, []);\r\n\r\n  if (!id) return null;\r\n\r\n  perfMarker.willRender();\r\n\r\n  return (\r\n    <div className={classnames('advertiser-page', classes.pageOuterContainer)}>\r\n      {\r\n        isInvalidID && adCount === 0 ? <InvalidIdMessage classes={classes} /> :\r\n        <div className={classes.pageInnerContainer}>\r\n          {\r\n            prevPageState !== null ? (\r\n              <BackButton onBackButtonClick={onBackButtonClick} />\r\n            ) : null\r\n          }\r\n          <AdvertiserBanner\r\n            advertiserId={id}\r\n            setAdvertiserName={setAdvertiserName}\r\n            setIsInvalidID={setIsInvalidID}\r\n            perfMarker={perfMarker}\r\n            logger={logger}\r\n          />\r\n          <div className={classes.resultTextContainer}>\r\n            <Text>All ads by <b>{`${advertiserName} (${adCount === -1 ? '...' : adCount}${adCount === 1000 ? ' or more' : ''} results)`}</b></Text>\r\n          </div>\r\n          <div className={classes.filterRow}>\r\n            <div className={classes.filterContainer}>\r\n              <CountryFilter\r\n                countryCodeList={countryCodeList}\r\n                searchParams={searchParams}\r\n                setSearchParams={setSearchParams}\r\n              />\r\n              <DateRangeFilter\r\n                startDate={filterStartDate}\r\n                endDate={filterEndDate}\r\n                searchParams={searchParams}\r\n                setSearchParams={setSearchParams}\r\n              />\r\n            </div>\r\n            <ExtraInputFilter\r\n              adQueryInput={filterExtraInput}\r\n              searchParams={searchParams}\r\n              setSearchParams={setSearchParams}\r\n            />\r\n          </div>\r\n          <AdSearchResults\r\n            classes={classes}\r\n            advertiserId={id}\r\n            adQueryString={adQueryString}\r\n            adCount={adCount}\r\n            setAdCount={setAdCount}\r\n            searchConfig={{ id, ...object([...searchParams]) }}\r\n            perfMarker={perfMarker}\r\n            logger={logger}\r\n          />\r\n          {\r\n            adCount > 0 && (\r\n              <div className={classes.paginationContainer}>\r\n                <Pagination\r\n                  totalPage={totalPage}\r\n                  currentPage={Number(currentPage)}\r\n                  onPageChange={onPageChange}\r\n                />\r\n              </div>\r\n            )\r\n          }\r\n        </div>\r\n      }\r\n    </div>\r\n  );\r\n};\r\n\r\nexport const StyledAdvertiserAdsPage = compose(WrappedComponent => withDefaultStyles(WrappedComponent, getStyles))(AdvertiserAdsPage);\r\n","module.exports = __webpack_public_path__ + \"static/media/no-associated-ad.d844c8b3.svg\";","import React from 'react';\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nconst defaultProps = {\n  breakpointCols: undefined,\n  // optional, number or object { default: number, [key: number]: number }\n  className: undefined,\n  // required, string\n  columnClassName: undefined,\n  // optional, string\n  // Any React children. Typically an array of JSX items\n  children: undefined,\n  // Custom attributes, however it is advised against\n  // using these to prevent unintended issues and future conflicts\n  // ...any other attribute, will be added to the container\n  columnAttrs: undefined,\n  // object, added to the columns\n  // Deprecated props\n  // The column property is deprecated.\n  // It is an alias of the `columnAttrs` property\n  column: undefined\n};\nconst DEFAULT_COLUMNS = 2;\n\nclass Masonry extends React.Component {\n  constructor(props) {\n    super(props); // Correct scope for when methods are accessed externally\n\n    this.reCalculateColumnCount = this.reCalculateColumnCount.bind(this);\n    this.reCalculateColumnCountDebounce = this.reCalculateColumnCountDebounce.bind(this); // default state\n\n    let columnCount;\n\n    if (this.props.breakpointCols && this.props.breakpointCols.default) {\n      columnCount = this.props.breakpointCols.default;\n    } else {\n      columnCount = parseInt(this.props.breakpointCols) || DEFAULT_COLUMNS;\n    }\n\n    this.state = {\n      columnCount\n    };\n  }\n\n  componentDidMount() {\n    this.reCalculateColumnCount(); // window may not be available in some environments\n\n    if (window) {\n      window.addEventListener('resize', this.reCalculateColumnCountDebounce);\n    }\n  }\n\n  componentDidUpdate() {\n    this.reCalculateColumnCount();\n  }\n\n  componentWillUnmount() {\n    if (window) {\n      window.removeEventListener('resize', this.reCalculateColumnCountDebounce);\n    }\n  }\n\n  reCalculateColumnCountDebounce() {\n    if (!window || !window.requestAnimationFrame) {\n      // IE10+\n      this.reCalculateColumnCount();\n      return;\n    }\n\n    if (window.cancelAnimationFrame) {\n      // IE10+\n      window.cancelAnimationFrame(this._lastRecalculateAnimationFrame);\n    }\n\n    this._lastRecalculateAnimationFrame = window.requestAnimationFrame(() => {\n      this.reCalculateColumnCount();\n    });\n  }\n\n  reCalculateColumnCount() {\n    const windowWidth = window && window.innerWidth || Infinity;\n    let breakpointColsObject = this.props.breakpointCols; // Allow passing a single number to `breakpointCols` instead of an object\n\n    if (typeof breakpointColsObject !== 'object') {\n      breakpointColsObject = {\n        default: parseInt(breakpointColsObject) || DEFAULT_COLUMNS\n      };\n    }\n\n    let matchedBreakpoint = Infinity;\n    let columns = breakpointColsObject.default || DEFAULT_COLUMNS;\n\n    for (let breakpoint in breakpointColsObject) {\n      const optBreakpoint = parseInt(breakpoint);\n      const isCurrentBreakpoint = optBreakpoint > 0 && windowWidth <= optBreakpoint;\n\n      if (isCurrentBreakpoint && optBreakpoint < matchedBreakpoint) {\n        matchedBreakpoint = optBreakpoint;\n        columns = breakpointColsObject[breakpoint];\n      }\n    }\n\n    columns = Math.max(1, parseInt(columns) || 1);\n\n    if (this.state.columnCount !== columns) {\n      this.setState({\n        columnCount: columns\n      });\n    }\n  }\n\n  itemsInColumns() {\n    const currentColumnCount = this.state.columnCount;\n    const itemsInColumns = new Array(currentColumnCount); // Force children to be handled as an array\n\n    const items = React.Children.toArray(this.props.children);\n\n    for (let i = 0; i < items.length; i++) {\n      const columnIndex = i % currentColumnCount;\n\n      if (!itemsInColumns[columnIndex]) {\n        itemsInColumns[columnIndex] = [];\n      }\n\n      itemsInColumns[columnIndex].push(items[i]);\n    }\n\n    return itemsInColumns;\n  }\n\n  renderColumns() {\n    const {\n      column,\n      columnAttrs = {},\n      columnClassName\n    } = this.props;\n    const childrenInColumns = this.itemsInColumns();\n    const columnWidth = `${100 / childrenInColumns.length}%`;\n    let className = columnClassName;\n\n    if (className && typeof className !== 'string') {\n      this.logDeprecated('The property \"columnClassName\" requires a string'); // This is a deprecated default and will be removed soon.\n\n      if (typeof className === 'undefined') {\n        className = 'my-masonry-grid_column';\n      }\n    }\n\n    const columnAttributes = _objectSpread(_objectSpread(_objectSpread({}, column), columnAttrs), {}, {\n      style: _objectSpread(_objectSpread({}, columnAttrs.style), {}, {\n        width: columnWidth\n      }),\n      className\n    });\n\n    return childrenInColumns.map((items, i) => {\n      return /*#__PURE__*/React.createElement(\"div\", _extends({}, columnAttributes, {\n        key: i\n      }), items);\n    });\n  }\n\n  logDeprecated(message) {\n    console.error('[Masonry]', message);\n  }\n\n  render() {\n    const _this$props = this.props,\n          {\n      // ignored\n      children,\n      breakpointCols,\n      columnClassName,\n      columnAttrs,\n      column,\n      // used\n      className\n    } = _this$props,\n          rest = _objectWithoutProperties(_this$props, [\"children\", \"breakpointCols\", \"columnClassName\", \"columnAttrs\", \"column\", \"className\"]);\n\n    let classNameOutput = className;\n\n    if (typeof className !== 'string') {\n      this.logDeprecated('The property \"className\" requires a string'); // This is a deprecated default and will be removed soon.\n\n      if (typeof className === 'undefined') {\n        classNameOutput = 'my-masonry-grid';\n      }\n    }\n\n    return /*#__PURE__*/React.createElement(\"div\", _extends({}, rest, {\n      className: classNameOutput\n    }), this.renderColumns());\n  }\n\n}\n\nMasonry.defaultProps = defaultProps;\n\nexport default Masonry;\n"],"sourceRoot":""}