{"version":3,"file":"assets/js/381.3cc125d730a6ba8d4f72.js","mappings":"gLAAAA,OAAOC,UAAYD,OAAOC,WAAa,GAKvC,MAAMC,EAAW,CACfC,WAAY,IAAIC,SAASC,iBAAiB,oBAItCC,EAAe,CACnBC,UAAW,2BACXC,gBAAiB,yBACjBC,eAAgB,wBAChBC,aAAc,qBAGVC,EAAc,CAClBJ,UAAW,4BACXC,gBAAiB,0BACjBC,eAAgB,yBAChBC,aAAc,oBAGhB,SAASE,EAAiBC,EAAOC,EAAMC,GACjCD,EAAKE,UAAUC,SAASN,EAAYD,eACtCQ,EAAAA,EAAAA,GACEP,EAAYJ,UACZI,EAAYH,gBACZG,EAAYF,eACX,WAAUM,GAAiB,aAC5BF,GAEOC,EAAKE,UAAUC,SAASX,EAAaI,gBAC9CQ,EAAAA,EAAAA,GACEZ,EAAaC,UACbD,EAAaE,gBACbF,EAAaG,eACZ,WAAUM,IACXF,EAGN,CA6CA,QAVA,WACMX,EAASC,WAAWgB,OAAS,GAC/BjB,EAASC,WAAWiB,SAASC,IAC3B,MAAMN,EAAQM,EAAGC,cAxEJ,sBAwE+BC,YAAYC,QApC9D,SAAkBV,EAAMC,GACtB,MAAMU,EAAaX,EAAKQ,cAAc,mBAChCI,EAASD,EAAWE,aAAa,eACjCC,EAAQH,EAAWE,aAAa,cAEhCE,EAAa,IAAIC,IAAJ,CAASL,EAAY,CACtCM,SAAU,CAAC,OAAQ,SACnBC,UAAU,EACVC,KAAM,CAAEC,QAAQ,GAChBC,aAAa,EACbC,cAAc,EACdR,MAAOA,GAAgB,MACvBS,MAAO,CACLtB,OAAO,EACPuB,YAAY,KAIZZ,GACFG,EAAWU,GAAG,SAAS,KACrBV,EAAWH,OAASA,CAAM,IAK9BG,EAAWU,GAAG,QAAQ,KACpB3B,EAAiB,OAAQE,EAAMC,EAAM,IAEvCc,EAAWU,GAAG,SAAS,KACrB3B,EAAiB,QAASE,EAAMC,EAAM,GAE1C,CAOMyB,CAASnB,EAAIN,EAAM,GAGzB,C","sources":["webpack://ssen-transmission/./src/ui/templates/02-components/video-card/mando-ui.video-card.js"],"sourcesContent":["window.dataLayer = window.dataLayer || [];\r\n\r\nimport { pushToDataLayer } from '@/ui/scripts/analytics/analytics.methods';\r\nimport Plyr from 'plyr';\r\n\r\nconst elements = {\r\n videoCards: [...document.querySelectorAll('.js-video-card')],\r\n};\r\nconst titleClass = '.js-card-title-ga';\r\n\r\nconst updateCardGA = {\r\n eventName: 'updateCardVideo_tracking',\r\n actionPropTitle: 'updateCardVideo_action',\r\n labelPropTitle: 'updateCardVideo_label',\r\n elementClass: 'js-update-card-ga',\r\n};\r\n\r\nconst videoCardGA = {\r\n eventName: 'cardListingVideo_tracking',\r\n actionPropTitle: 'cardListingVideo_action',\r\n labelPropTitle: 'cardListingVideo_label',\r\n elementClass: 'js-video-card-ga',\r\n};\r\n\r\nfunction handleVideoClick(label, card, title) {\r\n if (card.classList.contains(videoCardGA.elementClass)) {\r\n pushToDataLayer(\r\n videoCardGA.eventName,\r\n videoCardGA.actionPropTitle,\r\n videoCardGA.labelPropTitle,\r\n `Video - ${title ? title : `No title`}`,\r\n label,\r\n );\r\n } else if (card.classList.contains(updateCardGA.elementClass)) {\r\n pushToDataLayer(\r\n updateCardGA.eventName,\r\n updateCardGA.actionPropTitle,\r\n updateCardGA.labelPropTitle,\r\n `Video - ${title}`,\r\n label,\r\n );\r\n }\r\n}\r\n\r\nfunction addVideo(card, title) {\r\n const videoEmbed = card.querySelector('.js-video-embed');\r\n const poster = videoEmbed.getAttribute('data-poster');\r\n const ratio = videoEmbed.getAttribute('data-ratio');\r\n\r\n const cardPlayer = new Plyr(videoEmbed, {\r\n controls: ['play', 'pause'],\r\n autoplay: false,\r\n loop: { active: false },\r\n clickToPlay: false,\r\n hideControls: false,\r\n ratio: ratio ? ratio : '3:2',\r\n vimeo: {\r\n title: true,\r\n responsive: true,\r\n },\r\n });\r\n\r\n if (poster) {\r\n cardPlayer.on('ready', () => {\r\n cardPlayer.poster = poster;\r\n });\r\n }\r\n\r\n //GA handlers (Play/Pause)\r\n cardPlayer.on('play', () => {\r\n handleVideoClick('Play', card, title);\r\n });\r\n cardPlayer.on('pause', () => {\r\n handleVideoClick('Pause', card, title);\r\n });\r\n}\r\n\r\nfunction init() {\r\n if (elements.videoCards.length > 0) {\r\n elements.videoCards.forEach((el) => {\r\n const title = el.querySelector(titleClass)?.textContent.trim();\r\n\r\n addVideo(el, title);\r\n });\r\n }\r\n}\r\n\r\nexport default init;\r\n"],"names":["window","dataLayer","elements","videoCards","document","querySelectorAll","updateCardGA","eventName","actionPropTitle","labelPropTitle","elementClass","videoCardGA","handleVideoClick","label","card","title","classList","contains","pushToDataLayer","length","forEach","el","querySelector","textContent","trim","videoEmbed","poster","getAttribute","ratio","cardPlayer","Plyr","controls","autoplay","loop","active","clickToPlay","hideControls","vimeo","responsive","on","addVideo"],"sourceRoot":""}