{"version":3,"file":"booking-hero-masthead-p70WaA07.js","sources":["../../../../src/scripts/modules/booking-hero-masthead.ts"],"sourcesContent":["import { Component } from '@verndale/core';\nimport Player from '@vimeo/player';\n\nclass BookingHeroMasthead extends Component {\n private playing = false;\n private player: Player | null = null;\n private classes = {\n playing: 'is-playing',\n paused: 'is-paused'\n };\n\n constructor(el: HTMLElement) {\n super(el);\n\n this.initVimeoPlayer();\n }\n\n setupDefaults() {\n this.dom = {\n container: this.el.querySelector('.booking-hero-mast__video') as HTMLElement,\n wrapper: this.el.querySelector('.booking-hero-mast__media-wrapper') as HTMLElement,\n btnPlayPause: this.el.querySelector('.booking-hero-mast__play-pause') as HTMLButtonElement\n };\n }\n\n addListeners() {\n (this.dom.btnPlayPause as HTMLButtonElement)?.addEventListener(\n 'click',\n this.handlelayPause.bind(this)\n );\n }\n\n initVimeoPlayer() {\n console.log('initVimeoPlayer');\n const container = this.dom.container as HTMLElement;\n const vimeoId = container.dataset.videoId || '';\n if (this.playing || vimeoId?.length < 1) return;\n const options01 = {\n id: parseInt(vimeoId),\n allow: 'autoplay; fullscreen; picture-in-picture; background; muted',\n width: window.innerWidth,\n autoplay: true,\n background: true,\n byline: false,\n controls: false\n };\n\n if (this.dom.container instanceof HTMLElement) {\n if (this.playing) return;\n const player = new Player(this.dom.container, options01);\n this.player = player;\n\n player.ready().then(() => {\n player.play();\n player.on('progress', data => {\n if (data.percent > 0.1) {\n this.playing = true;\n (this.dom.wrapper as HTMLElement).classList.add(this.classes.playing);\n (this.dom.btnPlayPause as HTMLButtonElement).style.display = 'flex';\n player.off('progress');\n }\n });\n });\n }\n }\n\n handlelayPause() {\n const player = this.player;\n\n if (player) {\n player.ready().then(() => {\n (this.dom.wrapper as HTMLElement).classList.remove(\n this.classes.playing,\n this.classes.paused\n );\n\n this.playing = !this.playing;\n (this.dom.wrapper as HTMLElement).classList.add(\n this.playing ? this.classes.playing : this.classes.paused\n );\n\n if (this.playing) {\n player.play();\n } else {\n player.pause();\n }\n });\n }\n }\n}\n\nexport default BookingHeroMasthead;\n"],"names":["BookingHeroMasthead","Component","el","__publicField","_a","vimeoId","options01","player","Player","data"],"mappings":"6PAGA,MAAMA,UAA4BC,CAAU,CAQ1C,YAAYC,EAAiB,CAC3B,MAAMA,CAAE,EARFC,EAAA,eAAU,IACVA,EAAA,cAAwB,MACxBA,EAAA,eAAU,CAChB,QAAS,aACT,OAAQ,WAAA,GAMR,KAAK,gBAAgB,CACvB,CAEA,eAAgB,CACd,KAAK,IAAM,CACT,UAAW,KAAK,GAAG,cAAc,2BAA2B,EAC5D,QAAS,KAAK,GAAG,cAAc,mCAAmC,EAClE,aAAc,KAAK,GAAG,cAAc,gCAAgC,CAAA,CAExE,CAEA,cAAe,QACZC,EAAA,KAAK,IAAI,eAAT,MAAAA,EAA6C,iBAC5C,QACA,KAAK,eAAe,KAAK,IAAI,EAEjC,CAEA,iBAAkB,CAChB,QAAQ,IAAI,iBAAiB,EAEvB,MAAAC,EADY,KAAK,IAAI,UACD,QAAQ,SAAW,GACzC,GAAA,KAAK,UAAWA,GAAA,YAAAA,EAAS,QAAS,EAAG,OACzC,MAAMC,EAAY,CAChB,GAAI,SAASD,CAAO,EACpB,MAAO,8DACP,MAAO,OAAO,WACd,SAAU,GACV,WAAY,GACZ,OAAQ,GACR,SAAU,EAAA,EAGR,GAAA,KAAK,IAAI,qBAAqB,YAAa,CAC7C,GAAI,KAAK,QAAS,OAClB,MAAME,EAAS,IAAIC,EAAO,KAAK,IAAI,UAAWF,CAAS,EACvD,KAAK,OAASC,EAEPA,EAAA,QAAQ,KAAK,IAAM,CACxBA,EAAO,KAAK,EACLA,EAAA,GAAG,WAAoBE,GAAA,CACxBA,EAAK,QAAU,KACjB,KAAK,QAAU,GACd,KAAK,IAAI,QAAwB,UAAU,IAAI,KAAK,QAAQ,OAAO,EACnE,KAAK,IAAI,aAAmC,MAAM,QAAU,OAC7DF,EAAO,IAAI,UAAU,EACvB,CACD,CAAA,CACF,CACH,CACF,CAEA,gBAAiB,CACf,MAAMA,EAAS,KAAK,OAEhBA,GACKA,EAAA,QAAQ,KAAK,IAAM,CACvB,KAAK,IAAI,QAAwB,UAAU,OAC1C,KAAK,QAAQ,QACb,KAAK,QAAQ,MAAA,EAGV,KAAA,QAAU,CAAC,KAAK,QACpB,KAAK,IAAI,QAAwB,UAAU,IAC1C,KAAK,QAAU,KAAK,QAAQ,QAAU,KAAK,QAAQ,MAAA,EAGjD,KAAK,QACPA,EAAO,KAAK,EAEZA,EAAO,MAAM,CACf,CACD,CAEL,CACF"}