{"version":3,"sources":["webpack:///./src/js/modules/upCards.js"],"names":["UpCards","this","dom","decorator","el","querySelector","genericRow","cardsContainer","cards","querySelectorAll","forEach","card","addEventListener","onHoverCard","bind","onLeaveCard","classList","contains","resizeDecorator","window","offsetTop","offsetHeight","style","height","e","target","add","remove","Component"],"mappings":"8kDAIMA,E,sWACJ,WACEC,KAAKC,IAAM,CACTC,UAAWF,KAAKG,GAAGC,cAAc,wBACjCC,WAAYL,KAAKG,GAAGC,cAAc,gBAClCE,eAAgBN,KAAKG,GAAGC,cAAc,SACtCG,MAAOP,KAAKG,GAAGK,iBAAiB,4B,0BAIpC,WAAe,WACLD,EAAUP,KAAKC,IAAfM,MAERA,EAAME,SAAQ,SAAAC,GAAI,OAChBA,EAAKC,iBAAiB,YAAa,EAAKC,YAAYC,KAAK,OAE3DN,EAAME,SAAQ,SAAAC,GAAI,OAChBA,EAAKC,iBAAiB,aAAc,EAAKG,YAAYD,KAAK,OAGxDb,KAAKG,GAAGY,UAAUC,SAAS,mBAAqBhB,KAAKC,IAAII,aAC3DL,KAAKiB,kBACLC,OAAOP,iBAAiB,SAAUX,KAAKiB,gBAAgBJ,KAAKb,U,6BAIhE,WACE,IAAQmB,EAAcnB,KAAKC,IAAIK,eAAvBa,UACAC,EAAiBpB,KAAKC,IAAIM,MAAM,GAAGH,cAAc,OAAjDgB,aAERpB,KAAKC,IAAIC,UAAUmB,MAAMC,OAAzB,UAAqCH,EAAYC,EAAe,EAAhE,Q,yBAGF,SAAYG,GACVvB,KAAKC,IAAIM,MAAME,SACb,SAAAC,GAAI,OAAKA,EAAKM,SAASO,EAAEC,SAAWd,EAAKK,UAAUU,IAAI,sB,yBAI3D,SAAYF,GACVvB,KAAKC,IAAIM,MAAME,SACb,SAAAC,GAAI,OAAKA,EAAKM,SAASO,EAAEC,SAAWd,EAAKK,UAAUW,OAAO,yB,8BAzC1CC,aA8CP5B","file":"85.ad160b12388a9ec5c350.js","sourcesContent":["import { Component } from '@verndale/core';\n\nimport { breakpoints } from '../helpers/constants';\n\nclass UpCards extends Component {\n  setupDefaults() {\n    this.dom = {\n      decorator: this.el.querySelector('.up-cards__decorator'),\n      genericRow: this.el.querySelector('.generic-row'),\n      cardsContainer: this.el.querySelector('.grid'),\n      cards: this.el.querySelectorAll('.cta-description-card')\n    };\n  }\n\n  addListeners() {\n    const { cards } = this.dom;\n\n    cards.forEach(card =>\n      card.addEventListener('mouseover', this.onHoverCard.bind(this))\n    );\n    cards.forEach(card =>\n      card.addEventListener('mouseleave', this.onLeaveCard.bind(this))\n    );\n\n    if (this.el.classList.contains('up-cards--dark') && this.dom.genericRow) {\n      this.resizeDecorator();\n      window.addEventListener('resize', this.resizeDecorator.bind(this));\n    }\n  }\n\n  resizeDecorator() {\n    const { offsetTop } = this.dom.cardsContainer;\n    const { offsetHeight } = this.dom.cards[0].querySelector('img');\n\n    this.dom.decorator.style.height = `${offsetTop + offsetHeight / 2}px`;\n  }\n\n  onHoverCard(e) {\n    this.dom.cards.forEach(\n      card => !card.contains(e.target) && card.classList.add('light-opacity')\n    );\n  }\n\n  onLeaveCard(e) {\n    this.dom.cards.forEach(\n      card => !card.contains(e.target) && card.classList.remove('light-opacity')\n    );\n  }\n}\n\nexport default UpCards;\n"],"sourceRoot":""}