{"version":3,"sources":["webpack://@verndale/toolkit/./src/js/components/FeaturedIndividual.js","webpack://@verndale/toolkit/./src/js/helpers/motion.js"],"names":[],"mappings":"8JAGA,eAAiC,KAAU,CACzC,eAAgB,CACd,KAAK,IAAM,CACT,QAAS,KAAK,GAAG,cAAc,6BAGjC,KAAK,IAAI,QAAQ,MAAM,UAAY,SACnC,KAAK,eAGP,cAAe,CACb,OAAO,iBAAiB,SAAU,KAAK,aAAa,KAAK,OACzD,KAAK,GAAG,iBAAiB,YAAa,KAAK,gBAAgB,KAAK,OAChE,KAAK,GAAG,iBAAiB,aAAc,KAAK,iBAAiB,KAAK,OAGpE,cAAe,CACb,OAAW,WAAa,IAClB,MAAK,IAAI,QAAQ,MAAM,KAAK,IAAI,QAAQ,KAAK,OACjD,KAAK,OAAS,GACd,KAAK,IAAI,QAAQ,MAAM,WAAa,WAEpC,KAAK,OAAS,GAIlB,iBAAkB,CAChB,KAAU,QACR,MAAK,IAAI,QAAQ,MAAM,WAAa,UAChC,KAAK,IAAI,QAAQ,MAAM,KAAK,IAAI,QAAQ,KAAK,OACjD,KAAK,IAAI,QAAQ,KAAO,SACtB,KAAK,IAAI,QACT,GACA,GACA,CAAC,IAAM,EAAG,GAAK,KAKrB,kBAAmB,CACjB,KAAU,QACJ,MAAK,IAAI,QAAQ,MAAM,KAAK,IAAI,QAAQ,KAAK,OACjD,KAAK,IAAI,QAAQ,KAAO,SACtB,KAAK,IAAI,QACT,GACA,GACA,CAAC,IAAM,EAAG,GAAK,IAEjB,KAAK,IAAI,QAAQ,KAAK,SAAS,KAAK,IAAM,CACxC,KAAK,IAAI,QAAQ,MAAM,WAAa,aAM5C,UAAe,G,8RCxDR,KAAM,GAAO,CAAC,EAAS,EAAW,EAAG,EAAS,CAAC,IAAM,EAAG,IAAM,KACnE,QACE,EACA,CACE,UAAW,GAAG,EAAQ,iBACtB,QAAS,GAEX,CACE,WACA,WAIO,EAAQ,CAAC,EAAS,EAAW,EAAG,EAAS,CAAC,IAAM,EAAG,IAAM,KACpE,QACE,EACA,CACE,UAAW,EACX,QAAS,GAEX,CACE,WACA,WAIO,EAAc,CACzB,EACA,EAAW,EACX,EAAQ,EACR,EAAS,CAAC,IAAM,EAAG,IAAM,KAEzB,QACE,EACA,CACE,QAAS,GAEX,CACE,WACA,QACA,WAIO,EAAc,CACzB,EACA,EAAW,EACX,EAAQ,EACR,EAAS,CAAC,IAAM,EAAG,IAAM,KAEzB,QACE,EACA,CACE,QAAS,GAEX,CACE,WACA,QACA,WAIO,EAAO,CAClB,EACA,EAAW,EACX,EAAQ,EACR,EAAS,CAAC,IAAM,EAAG,IAAM,KAEzB,QACE,EACA,CACE,aAAc,SAEhB,CACE,WACA,QACA,WAIO,EAAO,CAClB,EACA,EAAe,EACf,EAAW,EACX,EAAQ,EACR,EAAS,CAAC,IAAM,EAAG,IAAM,KAEzB,QACE,EACA,CACE,gBAEF,CACE,WACA,QACA,WAIO,EAAiB,CAC5B,EACA,EAAQ,GACR,EAAW,GACX,EAAS,CAAC,IAAM,EAAG,GAAK,KAExB,QACE,EACA,CACE,QAAS,EACT,WAAY,GAEd,CACE,QACA,WACA,WAIO,EAAc,CACzB,EACA,EAAQ,GACR,EAAW,GACX,EAAS,CAAC,IAAM,EAAG,GAAK,KAExB,QACE,EACA,CACE,QAAS,EACT,WAAY,IAEd,CACE,QACA,WACA,WAIO,EAAc,CACzB,EACA,EAAQ,GACR,EAAW,GACX,EAAS,CAAC,IAAM,EAAG,GAAK,KAExB,QACE,EACA,CACE,QAAS,EACT,WAAY,IAEd,CACE,QACA,WACA,WAIO,EAAa,CACxB,EACA,EAAQ,GACR,EAAW,GACX,EAAS,CAAC,IAAM,EAAG,GAAK,KAExB,QACE,EACA,CACE,QAAS,EACT,WAAY,KAEd,CACE,QACA,WACA","file":"scripts/7255.13ce3e2cc356ec228c4a.js","sourcesContent":["import { Component } from '@verndale/core';\nimport { showFromBottom, hideFromTop } from '../helpers/motion';\n\nclass FeaturedIndividual extends Component {\n setupDefaults() {\n this.dom = {\n content: this.el.querySelector('.featured-panel__content')\n };\n\n this.dom.content.style.visiblity = 'hidden';\n this.handleResize();\n }\n\n addListeners() {\n window.addEventListener('resize', this.handleResize.bind(this));\n this.el.addEventListener('mouseover', this.handleMouseOver.bind(this));\n this.el.addEventListener('mouseleave', this.handleMouseLeave.bind(this));\n }\n\n handleResize() {\n if (window.innerWidth < 768) {\n if (this.dom.content.anim) this.dom.content.anim.stop();\n this.mobile = true;\n this.dom.content.style.visibility = 'visible';\n } else {\n this.mobile = false;\n }\n }\n\n handleMouseOver() {\n if (!this.mobile) {\n this.dom.content.style.visibility = 'visible';\n if (this.dom.content.anim) this.dom.content.anim.stop();\n this.dom.content.anim = showFromBottom(\n this.dom.content,\n 0.2,\n 0.2,\n [0.11, 0, 0.5, 0]\n );\n }\n }\n\n handleMouseLeave() {\n if (!this.mobile) {\n if (this.dom.content.anim) this.dom.content.anim.stop();\n this.dom.content.anim = hideFromTop(\n this.dom.content,\n 0.1,\n 0.2,\n [0.11, 0, 0.5, 0]\n );\n this.dom.content.anim.finished.then(() => {\n this.dom.content.style.visibility = 'hidden';\n });\n }\n }\n}\n\nexport default FeaturedIndividual;\n","import { animate } from 'motion';\n\nexport const open = (element, duration = 1, easing = [0.19, 1, 0.22, 1]) =>\n animate(\n element,\n {\n maxHeight: `${element.scrollHeight}px`,\n opacity: 1\n },\n {\n duration,\n easing\n }\n );\n\nexport const close = (element, duration = 1, easing = [0.19, 1, 0.22, 1]) =>\n animate(\n element,\n {\n maxHeight: 0,\n opacity: 0\n },\n {\n duration,\n easing\n }\n );\n\nexport const hideOpacity = (\n element,\n duration = 1,\n delay = 0,\n easing = [0.19, 1, 0.22, 1]\n) =>\n animate(\n element,\n {\n opacity: 0\n },\n {\n duration,\n delay,\n easing\n }\n );\n\nexport const showOpacity = (\n element,\n duration = 1,\n delay = 0,\n easing = [0.19, 1, 0.22, 1]\n) =>\n animate(\n element,\n {\n opacity: 1\n },\n {\n duration,\n delay,\n easing\n }\n );\n\nexport const show = (\n element,\n duration = 1,\n delay = 0,\n easing = [0.19, 1, 0.22, 1]\n) =>\n animate(\n element,\n {\n maxBlockSize: 'unset'\n },\n {\n duration,\n delay,\n easing\n }\n );\n\nexport const hide = (\n element,\n maxBlockSize = 0,\n duration = 1,\n delay = 0,\n easing = [0.19, 1, 0.22, 1]\n) =>\n animate(\n element,\n {\n maxBlockSize\n },\n {\n duration,\n delay,\n easing\n }\n );\n\nexport const showFromBottom = (\n element,\n delay = 0.2,\n duration = 0.2,\n easing = [0.11, 0, 0.5, 0]\n) =>\n animate(\n element,\n {\n opacity: 1,\n translateY: 0\n },\n {\n delay,\n duration,\n easing\n }\n );\n\nexport const hideFromTop = (\n element,\n delay = 0.2,\n duration = 0.2,\n easing = [0.11, 0, 0.5, 0]\n) =>\n animate(\n element,\n {\n opacity: 0,\n translateY: 30\n },\n {\n delay,\n duration,\n easing\n }\n );\n\nexport const hideToRight = (\n element,\n delay = 0.2,\n duration = 0.2,\n easing = [0.11, 0, 0.5, 0]\n) =>\n animate(\n element,\n {\n opacity: 0,\n translateX: 90\n },\n {\n delay,\n duration,\n easing\n }\n );\n\nexport const hideToLeft = (\n element,\n delay = 0.2,\n duration = 0.2,\n easing = [0.11, 0, 0.5, 0]\n) =>\n animate(\n element,\n {\n opacity: 0,\n translateX: -90\n },\n {\n delay,\n duration,\n easing\n }\n );\n"],"sourceRoot":""}