{"version":3,"sources":["webpack:///../resources/assets/js/ads/CommentsAds.ts","webpack:///../resources/assets/js/ads/Google.ts","webpack:///../resources/assets/js/ads/HoverAds.ts","webpack:///../resources/assets/js/ads/Interstitial.ts","webpack:///../resources/assets/js/ads/ReferrerDomain.ts","webpack:///../resources/assets/js/ads/SkinAds.ts","webpack:///../resources/assets/js/ads/UserData.ts","webpack:///../resources/assets/js/ads/desktop/DesktopAds.ts","webpack:///../resources/assets/js/ads/desktop/desktop-home-ads.ts","webpack:///../resources/assets/js/ads/loadNativo.ts","webpack:///../resources/assets/js/ads/outbrain.ts"],"names":["CommentsAds","Zones","showAds","doConstruct","doLoadMore","adConfig","streamAds","length","Logger","log","commentStream","document","getElementById","ad","railAdConfig","zone","positionPrefix","initialTargetingPosition","slice","currentPosition","parseInt","sizes","JSON","parse","maxPixelDepth","slotString","articleBody","querySelector","articleRail","commentRail","createElement","setAttribute","classList","add","appendChild","articleBodyHeight","offsetHeight","articleRailHeight","Error","position","top","generateAdDivs","showNextAd","amazonSlots","id","push","slotID","pos","newAdDiv","adDivs","scrollTop","$","offsetTop","nextAdDiv","shift","adId","get","Google","command","window","googletag","cmd","e","error","TypeError","ReferenceError","Bugsnag","notify","HoverAds","GlobalData","disabledPremiumAds","hoverAds","premium","hover","element","hoverElement","Interstitial","load","loadAdScript","disableOOP","interstitialElement","ReferrerDomain","refVal","referrer","userFrom","Cookies","decodeURIComponent","indexOf","includes","set","substring","referrerDomainParts","split","join","referrerKeyValueMap","hasOwnProperty","SkinAds","constructor","skinAd","pubads","addEventListener","event","slot","getSlotElementId","appendSkinLink","loadTags","skinRightContainer","skinRightAd","dartSlotString","skinLeftContainer","skinLeftAd","skin","selector","skinStyle","width","linkStyle","display","height","frame","skinUrl","contentWindow","body","getAttribute","elem","Object","assign","style","newLink","append","UserData","getData","keyVals","ref","zip","gender","gndr","toLowerCase","birthDate","d","Date","currentYear","getFullYear","userBirthYear","age","yearOfBirth","yob","subId","samlId","user","dti","location","pathname","href","rf","DesktopAds","init","now","opt_disableAds","Feature","isActive","setTargeting","Page","select","home","homeAds","section","AdStack","sectionAds","content","contentAds","stribCommentAds","other","skinAds","ready","nativoAds","loadNativoTag","then","showThumbnail","segment","User","getSessionSegment","outbrainAds","loadOutbrainTag","interstitialAds","interstitial","targetingKeyValues","entries","globalTargeting","forEach","key","value","isContent","ct","isSection","slotStringPath","pop","sf","fyis","isMostRead","most_read","isGallery","pg","htlbid","isEmpty","RenderedAdSlot","didServe","ST_stickyZone","slotDiv","getDiv","nextSibling","next","addClass","children","first","removeClass","domain","expires","isThumbnail","downPage","wrapper"],"mappings":"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","file":"9dcfe66f9d232ee1b56d.js","sourcesContent":["import { adConfig } from './AdStack'\nimport { Logger } from '../utils/logger'\nimport { AdZoneInterface } from './interfaces/AdZoneInterface'\nimport { Zones } from './Zones'\n\ndeclare global {\n interface Window {\n stribCommentAds: {\n doLoadMore(): void\n }\n }\n}\n\nexport class CommentsAds extends Zones implements AdZoneInterface {\n showAds(): void {\n this.doConstruct()\n this.doLoadMore()\n }\n\n adDivs: any[]\n commentRail: any\n commentStream: any\n railAdConfig: {\n zone: string\n positionPrefix: string\n currentPosition: number\n sizes: number[][]\n maxPixelDepth: number\n slotString: string\n }\n\n doConstruct() {\n if (!adConfig.streamAds || !adConfig.streamAds.length) {\n Logger.log('No comment ads configured')\n return\n }\n\n this.commentStream = document.getElementById('news_talk_stream')\n\n if (!this.commentStream.length) {\n return\n }\n\n const ad = adConfig.streamAds[0]\n\n this.railAdConfig = {\n zone: ad.zone,\n positionPrefix:\n ad.initialTargetingPosition.length > 1\n ? ad.initialTargetingPosition.slice(0, -1)\n : '',\n currentPosition: parseInt(ad.initialTargetingPosition.slice(-1), 10),\n sizes: JSON.parse(ad.sizes),\n maxPixelDepth: ad.maxPixelDepth,\n slotString: adConfig.slotString\n }\n\n const articleBody = document.querySelector('.article-body')\n const articleRail = document.querySelector('.l-article-rail')\n\n // @ts-ignore\n if (articleRail === null || articleRail.length === 0) return\n this.commentRail = document.createElement('div')\n this.commentRail.setAttribute('id', 'comment-rail')\n this.commentRail.classList.add('float--right')\n articleRail.appendChild(this.commentRail)\n // @ts-ignore\n const articleBodyHeight = articleBody.offsetHeight\n // @ts-ignore\n const articleRailHeight = articleRail.offsetHeight\n\n if (\n typeof articleBodyHeight !== 'number' ||\n typeof articleRailHeight !== 'number'\n ) {\n throw new Error('Article or rail height is not a number')\n }\n\n // Pad the right rail so ads start at top of comment stream\n if (articleRailHeight < articleBodyHeight) {\n this.commentRail.setAttribute(\n 'css',\n `margin-top=${this.commentStream.position().top - articleRailHeight!}`\n )\n }\n }\n\n doLoadMore() {\n this.generateAdDivs()\n this.showNextAd()\n }\n\n generateAdDivs() {\n const amazonSlots = []\n if (this.commentRail) {\n while (\n this.commentRail.offsetHeight! + this.railAdConfig.maxPixelDepth <\n this.commentStream.offsetHeight!\n ) {\n const id = `zone-${this.railAdConfig.zone}-block-${\n this.railAdConfig.currentPosition\n }-comments`\n\n amazonSlots.push({\n slotID: id,\n pos:\n this.railAdConfig.positionPrefix +\n this.railAdConfig.currentPosition,\n sizes: [[160, 600], [300, 250], [300, 600]]\n })\n\n const newAdDiv = document.createElement('zeus-ad')\n newAdDiv.setAttribute('data-appear-top-offset', '300')\n newAdDiv.setAttribute('id', id)\n newAdDiv.setAttribute(\n 'css',\n `height=${this.railAdConfig.maxPixelDepth}`\n )\n this.commentRail.appendChild(newAdDiv)\n this.adDivs.push(newAdDiv)\n\n this.railAdConfig.currentPosition++\n }\n }\n }\n\n showNextAd() {\n const scrollTop = $(document).scrollTop()\n if (\n typeof scrollTop === 'number' &&\n this.adDivs.length &&\n scrollTop > this.adDivs[0][0].offsetTop - 1000\n ) {\n const nextAdDiv = this.adDivs.shift()\n if (nextAdDiv) {\n const adId = nextAdDiv.get(0).id\n Logger.log(`Registering comment ad: ${adId}`)\n // registerAd(adId)\n }\n }\n }\n}\n","import { Logger } from '../utils/logger'\n\nexport class Google {\n static push(command: () => void) {\n if (!window.googletag) {\n // @ts-ignore\n window.googletag = { cmd: [] }\n }\n\n try {\n googletag.cmd.push(command)\n } catch (e) {\n Logger.error(e)\n if (\n !(e instanceof TypeError) &&\n !(e instanceof ReferenceError) &&\n typeof window.Bugsnag !== 'undefined'\n ) {\n window.Bugsnag.notify(e)\n }\n }\n }\n}\n","import { Zones } from './Zones'\nimport { AdZoneInterface } from './interfaces/AdZoneInterface'\nimport { GlobalData } from './GlobalData'\n\nexport class HoverAds extends Zones implements AdZoneInterface {\n showAds(): void {\n const adConfig = GlobalData.get('adConfig')\n\n if (adConfig.disabledPremiumAds.hoverAds) return\n if (!adConfig.premium.hover || !adConfig.premium.hover.id) return\n const element = document.getElementById('fixed_leader')\n if (element) {\n const hoverElement = document.createElement('div')\n hoverElement.classList.add(adConfig.premium.hover.id)\n element.appendChild(hoverElement)\n }\n }\n}\n","import { loadAdScript } from './loadAdScript'\n\nexport class Interstitial {\n static load(id: string) {\n return loadAdScript('/static/js/ads/interstitial.js', () => {\n if (window.disableOOP) return\n\n const element = document.getElementById('intWrap')\n if (!element) return\n\n const interstitialElement = document.createElement('div')\n interstitialElement.setAttribute('id', id)\n element.appendChild(interstitialElement)\n })\n }\n}\n","import { GlobalData } from './GlobalData'\nimport Cookies from 'js-cookie'\n\nexport class ReferrerDomain {\n static get(): any {\n let refVal = ''\n\n // Get referrer from cookie if sideways-redirect destroyed the original referrer\n let referrer = ''\n const userFrom = Cookies.get('userFrom')\n if (userFrom) {\n referrer = decodeURIComponent(userFrom)\n } else {\n referrer = document.referrer\n }\n\n // Get just the domain\n if (referrer.indexOf('http://') === 0) {\n referrer = referrer.slice(7)\n } else if (referrer.indexOf('https://') === 0) {\n referrer = referrer.slice(8)\n }\n if (referrer.includes('/')) {\n GlobalData.set(\n 'referrerDomain',\n referrer.substring(0, referrer.indexOf('/'))\n )\n } else if (referrer.indexOf('?') > -1) {\n GlobalData.set(\n 'referrerDomain',\n referrer.substring(0, referrer.indexOf('?'))\n )\n } else {\n GlobalData.set('referrerDomain', referrer)\n }\n\n const referrerDomainParts = GlobalData.get('referrerDomain').split('.')\n GlobalData.set(\n 'referrerDomain',\n referrerDomainParts.slice(referrerDomainParts.length - 2).join('.')\n )\n\n // Match up the referrer domain to our key-values\n const referrerKeyValueMap: { [key: string]: string } = {\n 'startribune.com': '',\n 'vita.mn': '',\n 'facebook.com': 'fb',\n 'linkedin.com': 'li',\n 'drudgereport.com': 'dr',\n 'drudge.com': 'dr',\n 'twitter.com': 'tw',\n 't.co': 'tw',\n 'bleacherreport.com': 'br',\n 'reddit.com': 'red',\n 'cnn.com': 'cnn',\n 'denverpost.com': 'den',\n 'nytimes.com': 'nyt',\n 'huffingtonpost.com': 'hp',\n 'huffpost.com': 'hp',\n 'nbcnews.com': 'nbc',\n 'foxnews.com': 'fox',\n 'washingtonpost.com': 'wp',\n 'usatoday.com': 'usa'\n }\n\n if (referrerKeyValueMap.hasOwnProperty(GlobalData.get('referrerDomain'))) {\n refVal = referrerKeyValueMap[GlobalData.get('referrerDomain')]\n } else {\n refVal = 'o'\n }\n\n return refVal\n }\n}\n","import {AdZoneInterface} from './interfaces/AdZoneInterface'\nimport {Zones} from './Zones'\nimport {GlobalData} from './GlobalData'\nimport {Logger} from '../utils/logger'\nimport {PremiumAdSlotInterface} from './interfaces/PremiumAdSlotInterface'\nimport {Google} from './Google'\n\nexport class SkinAds extends Zones implements AdZoneInterface {\n zoneName = ''\n\n showAds(): void {\n Logger.log(GlobalData.get('adConfig'))\n const skinAd = GlobalData.get('adConfig').premium\n if (!skinAd || skinAd.length < 1) {\n Logger.log('No skin ads configured')\n return\n }\n\n Google.push(() => {\n googletag\n .pubads()\n .addEventListener(\n 'slotRenderEnded',\n (event: googletag.events.SlotRenderEndedEvent) => {\n if (event.slot.getSlotElementId() === 'skinLeft') {\n this.appendSkinLink(skinAd, '.skin-left')\n } else if (event.slot.getSlotElementId() === 'skinRight') {\n this.appendSkinLink(skinAd, '.skin-right')\n }\n }\n )\n })\n }\n\n static loadTags() {\n const skinRightContainer: HTMLElement | null = document.getElementById(\n 'skinRight'\n )\n if (skinRightContainer) {\n const skinRightAd = document.createElement('div')\n skinRightAd.classList.add('htlad-skinRight')\n skinRightAd.setAttribute('data-targeting', '{\"pos\":\"sk2\"}')\n skinRightAd.setAttribute('data-unit', window.dartSlotString)\n skinRightContainer.appendChild(skinRightAd)\n }\n const skinLeftContainer: HTMLElement | null = document.getElementById(\n 'skinLeft'\n )\n if (skinLeftContainer) {\n const skinLeftAd = document.createElement('div')\n skinLeftAd.classList.add('htlad-skinLeft')\n skinLeftAd.setAttribute('data-targeting', '{\"pos\":\"sk1\"}')\n skinLeftAd.setAttribute('data-unit', window.dartSlotString)\n skinLeftContainer.appendChild(skinLeftAd)\n }\n }\n\n private appendSkinLink(skin: PremiumAdSlotInterface, selector: string): void {\n const skinStyle = {'z-index': '10', width: '293px'}\n const linkStyle = {\n display: 'inline-block',\n width: '293px',\n height: '100%'\n }\n\n const frame: any = document.querySelector(`#${skin.id} iframe`)\n if (!frame) {\n return\n }\n const skinUrl = frame.contentWindow.document.body\n .querySelector('a')\n .getAttribute('href')\n\n if (skinUrl) {\n const elem: any = document.querySelector(selector)\n if (!elem) {\n return\n }\n Object.assign(elem.style, skinStyle)\n\n const newLink = document.createElement('a')\n newLink.setAttribute('href', skinUrl)\n newLink.setAttribute('target', '_blank')\n Object.assign(newLink.style, linkStyle)\n elem.append(newLink)\n }\n }\n}\n","import { ReferrerDomain } from './ReferrerDomain'\nimport Cookies from 'js-cookie'\n\nexport class UserData {\n static getData(): { [key: string]: string } {\n const keyVals: { [key: string]: string } = {}\n\n // Get referrer from cookie if sideways-redirect destroyed the original referrer\n keyVals.ref = ReferrerDomain.get()\n\n //\n // If user is logged in, grab a bunch of info about them from cookies\n //\n const zip = Cookies.get('st_usr_zip')\n if (zip) {\n keyVals.zip = zip\n }\n\n const gender = Cookies.get('st_usr_gender')\n if (gender) {\n keyVals.gndr = gender.toLowerCase()\n }\n\n const birthDate = Cookies.get('st_usr_birth_date')\n if (birthDate) {\n const d = new Date()\n const currentYear = d.getFullYear()\n const userBirthYear = parseInt(birthDate.split('-')[0], 10)\n const age = currentYear - userBirthYear\n let yearOfBirth = ''\n switch (true) {\n case age < 18:\n yearOfBirth = 'under18'\n break\n case age < 25:\n yearOfBirth = '18-24'\n break\n case age < 35:\n yearOfBirth = '25-34'\n break\n case age < 45:\n yearOfBirth = '35-44'\n break\n case age < 55:\n yearOfBirth = '45-54'\n break\n case age < 65:\n yearOfBirth = '55-64'\n break\n case age < 109:\n yearOfBirth = '65-108'\n break\n case age >= 109:\n yearOfBirth = '108plus'\n break\n default:\n yearOfBirth = ''\n break\n }\n keyVals.yob = yearOfBirth\n }\n\n //\n // Get user status: logged in, subscriber, etc.\n //\n\n const subId = Cookies.get('st_usr_sub_id')\n const samlId = Cookies.get('st_usr_saml_id')\n if (subId) {\n keyVals.user = 'subscriber'\n keyVals.dti = subId\n } else if (samlId) {\n keyVals.user = 'loggedin'\n } else {\n keyVals.user = 'notloggedin'\n }\n\n if (\n window.location.pathname === '/' &&\n window.location.href.indexOf('refresh=true') !== -1\n ) {\n keyVals.rf = 'true'\n }\n\n return keyVals\n }\n}\n","import {Logger} from '../../utils/logger'\nimport {GlobalData} from '../GlobalData'\nimport {Feature} from '../../utils/feature-api'\nimport {adConfig, AdStack} from '../AdStack'\nimport {loadNativoTag} from '../loadNativo'\nimport {User} from '../../user/user'\nimport {loadOutbrainTag} from '../outbrain'\nimport {Interstitial} from '../Interstitial'\nimport {SkinAds} from '../SkinAds'\nimport {Page} from '../../utils/page'\nimport {homeAds} from './desktop-home-ads'\nimport {UserData} from '../UserData'\nimport Cookies from 'js-cookie'\nimport {HoverAds} from '../HoverAds'\nimport {CommentsAds} from '../CommentsAds'\nimport {Google} from '../Google'\n\n// import { initializeAmazonAdapter } from '../AmazonAdapter'\n\nexport class DesktopAds {\n static init() {\n Logger.log(\n '[Ads] Made it to initializeAds ',\n Date.now() - GlobalData.get('baseTime')\n )\n // allow optimizely to disable ads\n if (window.opt_disableAds) {\n return\n }\n\n Google.push(() => {\n // Flag to signal that ad blocking did not occur\n GlobalData.set('stblkck', true)\n })\n\n if (Feature.isActive('Amazon')) {\n // initializeAmazonAdapter()\n }\n\n this.setTargeting()\n\n Google.push(() => {\n // Run page-type specific ad code\n Page.select({\n home: homeAds,\n section: () => AdStack.sectionAds(),\n content: () => {\n AdStack.contentAds()\n window.stribCommentAds = new CommentsAds()\n },\n other: () => Logger.log('No page-type specific ads to initialize')\n })()\n\n const skinAds = new SkinAds()\n skinAds.showAds()\n })\n\n // todo: can we redo this section without using any jquery?\n $(document).ready(() => {\n if (!adConfig || !adConfig.disabledPremiumAds) {\n return\n }\n // todo: this will likely come out with Zeus (are we using nativo at all\n if (!adConfig.disabledPremiumAds.nativoAds) {\n if (Feature.isActive('Nativo')) {\n loadNativoTag().then(() => Logger.log('Nativo Ad script loaded'))\n }\n }\n let showThumbnail = false\n const segment = User.getSessionSegment()\n if (\n segment === 'Social Grazer' ||\n segment === 'Google Grazer' ||\n segment === 'Section and Blog Reader'\n ) {\n showThumbnail = true\n }\n if (!adConfig.disabledPremiumAds.outbrainAds) {\n if (Feature.isActive('Outbrain')) {\n loadOutbrainTag(showThumbnail).then(() =>\n Logger.log('Outbrain Ad tag loaded')\n )\n }\n }\n\n const hoverAds = new HoverAds()\n hoverAds.showAds()\n\n if (!adConfig.disabledPremiumAds.interstitialAds) {\n if (adConfig.premium.interstitial && adConfig.premium.interstitial.id) {\n Interstitial.load(adConfig.premium.interstitial.id).then(() =>\n Logger.log('Interstitial Ad tag loaded')\n )\n }\n }\n if (!adConfig.disabledPremiumAds.skinAds && adConfig.premium.id) {\n SkinAds.loadTags()\n }\n })\n }\n\n static setTargeting() {\n const targetingKeyValues: { [id: string]: any } = {}\n\n Object.entries(adConfig.globalTargeting).forEach(\n ([key, value]) => (targetingKeyValues[key] = value)\n )\n Object.entries(UserData.getData()).forEach(\n ([key, value]) => (targetingKeyValues[key] = value)\n )\n\n // set ad targeting on the client based on article sideways status\n if (Page.isContent()) {\n if (GlobalData.get('showSidewaysPage')) {\n targetingKeyValues.ct = 's'\n } else if (adConfig.globalTargeting && adConfig.globalTargeting.ct) {\n targetingKeyValues.ct = adConfig.globalTargeting.ct\n } else {\n targetingKeyValues.ct = 'a'\n }\n }\n\n if (Page.isSection()) {\n const slotStringPath = adConfig.slotString ? adConfig.slotString.split('/') : null\n if (slotStringPath && slotStringPath.length === 4) {\n const section = slotStringPath.pop()\n switch (section) {\n case 'web_sports':\n case 'web_variety':\n case 'web_opinion':\n case 'web_business':\n case 'web_local':\n case 'web_weather':\n case 'web_politics':\n targetingKeyValues.sf = 'top'\n }\n }\n }\n\n const samlId = Cookies.get('st_usr_saml_id')\n if (samlId) {\n targetingKeyValues.fyis = samlId\n }\n\n if (Page.isMostRead()) {\n targetingKeyValues.most_read = true\n }\n\n if (Page.isGallery() || window.location.pathname.includes('/galleries')) {\n targetingKeyValues.pg = 'y'\n }\n\n window.htlbid = window.htlbid || {}\n window.htlbid.cmd = window.htlbid.cmd || []\n // tslint:disable-next-line:only-arrow-functions\n window.htlbid.cmd.push(function () {\n for (const [key, value] of Object.entries(targetingKeyValues)) {\n window.htlbid.setTargeting(key, value)\n }\n })\n }\n}\n","import Cookies from 'js-cookie'\nimport { RenderedAdSlot } from './RenderedAdSlot'\n\ndeclare global {\n interface Window {\n ST_stickyZone: {\n init(): void\n }\n }\n}\n\nexport function homeAds() {\n try {\n googletag.cmd.push(() => {\n googletag\n .pubads()\n .addEventListener(\n 'slotRenderEnded',\n (event: googletag.events.SlotRenderEndedEvent) => {\n if (event.isEmpty) return\n\n const slot = new RenderedAdSlot(event)\n\n // Recalculate sticky zone if ad pops in and changes dimensions\n if (slot.id.indexOf('vertical' || 'fill') !== -1 && slot.didServe) {\n window.ST_stickyZone.init()\n }\n\n // Apply styles to fix rule line if native pops into top spot above content collections\n else if (slot.id.indexOf('native') !== -1 && slot.didServe) {\n const slotDiv = slot.getDiv()\n const nextSibling = slotDiv.next()\n slotDiv.addClass('ad-native-fix')\n nextSibling\n .children()\n .first()\n .removeClass('hatch-rule')\n }\n }\n )\n })\n // Browser did not break ads\n Cookies.set('adblocker', 'false', {\n domain: '.startribune.com',\n expires: 1\n })\n } catch (e) {\n // Adblocker detected\n Cookies.set('adblocker', 'true', {\n domain: '.startribune.com',\n expires: 1\n })\n if (\n !(e instanceof TypeError) &&\n !(e instanceof ReferenceError) &&\n typeof window.Bugsnag !== 'undefined'\n ) {\n window.Bugsnag.notify(e)\n }\n }\n}\n","import { loadAdScript } from './loadAdScript'\n\nexport function loadNativoTag() {\n return loadAdScript('//s.ntv.io/serve/load.js')\n}\n","import { loadAdScript } from './loadAdScript'\nimport { Page } from '../utils/page'\n\nexport function loadOutbrainTag(isThumbnail: boolean) {\n return loadAdScript('//widgets.outbrain.com/outbrain.js', () => {\n const element = document.getElementById('outbrain')\n if (element) {\n if (Page.isGallery()) {\n element.setAttribute('data-widget-id', 'AR_3')\n }\n // Will replace getUserSegment with new method once decided.\n if (isThumbnail) {\n element.setAttribute('data-widget-id', 'AR_1')\n // eslint-disable-next-line no-undef\n const downPage: ElementCSSInlineStyle | null = document.getElementById(\n 'downpageRecommended'\n )\n if (downPage) {\n downPage.style.display = 'none'\n }\n if (Page.isGallery()) {\n element.setAttribute('data-widget-id', 'AR_4')\n }\n } else {\n // eslint-disable-next-line no-undef\n const wrapper: HTMLElement | null = document.getElementById(\n 'outbrain-wrapper'\n )\n if (wrapper) {\n wrapper.classList.add('l-article-downpage-recommended')\n }\n }\n element.style.display = 'inline'\n }\n })\n}\n"],"sourceRoot":""}