OwlCyberSecurity - MANAGER
Edit File: presto-action-bar_17.entry.js.map
{"file":"presto-action-bar.presto-action-bar-controller.presto-audio.presto-bunny.presto-business-skin.presto-cta-overlay.presto-cta-overlay-controller.presto-dynamic-overlay-ui.presto-dynamic-overlays.presto-email-overlay.presto-email-overlay-controller.presto-modern-skin.presto-muted-overlay.presto-search-bar.presto-stacked-skin.presto-vimeo.presto-youtube.entry.js","mappings":"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","names":["PrestoActionBar"],"sources":["src/components/core/features/presto-action-bar/component/presto-action-bar.scss?tag=presto-action-bar&encapsulation=shadow","src/components/core/features/presto-action-bar/component/presto-action-bar.tsx","src/components/core/features/presto-action-bar/controller/presto-action-bar-controller.scss?tag=presto-action-bar-controller&encapsulation=shadow","src/components/core/features/presto-action-bar/controller/presto-action-bar-controller.tsx","src/components/core/providers/presto-audio/presto-audio.scss?tag=presto-audio","src/components/core/providers/presto-audio/presto-audio.tsx","src/components/core/providers/presto-bunny/presto-bunny.tsx","src/components/ui/skins/presto-business-skin/presto-business-skin.scss?tag=presto-business-skin","src/components/ui/skins/presto-business-skin/presto-business-skin.tsx","src/components/core/features/presto-cta-overlay/component/presto-cta-overlay.css?tag=presto-cta-overlay","src/components/core/features/presto-cta-overlay/component/presto-cta-overlay.tsx","src/components/core/features/presto-cta-overlay/controller/presto-cta-overlay-controller.css?tag=presto-cta-overlay-controller","src/components/core/features/presto-cta-overlay/controller/presto-cta-overlay-controller.tsx","src/components/core/features/presto-dynamic-overlays/ui/presto-dynamic-overlay-ui.scss?tag=presto-dynamic-overlay-ui&encapsulation=shadow","src/components/core/features/presto-dynamic-overlays/ui/presto-dynamic-overlay-ui.tsx","src/components/core/features/presto-dynamic-overlays/component/presto-dynamic-overlays.scss?tag=presto-dynamic-overlays&encapsulation=shadow","src/components/core/features/presto-dynamic-overlays/component/presto-dynamic-overlays.tsx","src/components/core/features/presto-email-overlay/component/presto-email-overlay.css?tag=presto-email-overlay","src/components/core/features/presto-email-overlay/component/presto-email-overlay.tsx","src/components/core/features/presto-email-overlay/controller/presto-email-overlay-controller.css?tag=presto-email-overlay-controller","src/components/core/features/presto-email-overlay/controller/presto-email-overlay-controller.tsx","src/components/ui/skins/presto-modern-skin/presto-modern-skin.scss?tag=presto-modern-skin","src/components/ui/skins/presto-modern-skin/presto-modern-skin.tsx","src/components/core/features/presto-muted-overlay/presto-muted-overlay.css?tag=presto-muted-overlay","src/components/core/features/presto-muted-overlay/presto-muted-overlay.tsx","src/components/core/features/presto-search-bar/component/presto-search-bar.tsx","src/components/ui/skins/presto-stacked-skin/presto-stacked-skin.scss?tag=presto-stacked-skin","src/components/ui/skins/presto-stacked-skin/presto-stacked-skin.tsx","src/components/core/providers/presto-vimeo/presto-vimeo.css?tag=presto-vimeo","src/components/core/providers/presto-vimeo/presto-vimeo.tsx","src/components/core/providers/presto-youtube/presto-youtube.css?tag=presto-youtube","src/components/core/providers/presto-youtube/presto-youtube.tsx"],"sourcesContent":[":host {\n display: block;\n}\n","import { Component, Element, h, Prop, State } from '@stencil/core';\nimport { ActionBarConfig, YoutubeConfig } from '../../../../../interfaces';\n\n@Component({\n tag: 'presto-action-bar',\n styleUrl: 'presto-action-bar.scss',\n shadow: true,\n})\nexport class PrestoActionBar {\n @Element() el: HTMLElement;\n\n @Prop() player: any;\n @Prop() config: ActionBarConfig;\n @Prop() direction?: 'rtl';\n @Prop() youtube?: YoutubeConfig;\n\n @State() currentTime: number;\n @State() duration: number;\n @State() ended: boolean;\n\n componentWillLoad() {\n if (!this.player) return;\n this.player.on('ended', () => this.setEnded());\n this.player.on('timeupdate', e => this.setCurrentTime(e));\n }\n\n setEnded() {\n this.ended = true;\n }\n\n setCurrentTime(e) {\n this.currentTime = e?.detail?.plyr.currentTime;\n this.duration = e?.detail?.plyr.duration;\n }\n\n /**\n * Remove listeners if destroyed\n */\n disconnectedCallback() {\n if (!this.player) return;\n this.player.off('ended', this.setEnded);\n this.player.off('timeupdate', this.setCurrentTime);\n }\n\n render() {\n return (\n <presto-action-bar-controller\n ended={this.ended}\n config={this.config}\n currentTime={this.currentTime}\n duration={this.duration}\n direction={this.direction}\n youtube={this.youtube}\n ></presto-action-bar-controller>\n );\n }\n}\n",":host {\n display: block;\n}\n","import { Component, Element, Event, EventEmitter, h, Prop, State, Watch } from '@stencil/core';\nimport { ActionBarConfig, YoutubeConfig } from '../../../../../interfaces';\nimport { timePassed } from '../../../../../util';\n\n@Component({\n tag: 'presto-action-bar-controller',\n styleUrl: 'presto-action-bar-controller.scss',\n shadow: true,\n})\nexport class PrestoActionBar {\n @Element() el: HTMLElement;\n\n @Prop() ended: boolean;\n @Prop() config: ActionBarConfig;\n @Prop({ reflect: true }) currentTime: number;\n @Prop({ reflect: true }) duration: number;\n @Prop() direction?: 'rtl';\n @Prop() youtube?: YoutubeConfig;\n\n @State() show: boolean = false;\n @State() youtubeRenderKey: number = 1;\n @State() percentagePassed: number = 0;\n @Event() actionBarStateChange: EventEmitter<boolean>;\n\n componentWillLoad() {\n this.handleDuration();\n }\n\n /**\n * Wait for duration to start before checking time\n * @returns void\n */\n @Watch('duration')\n handleDuration() {\n this.handleTime();\n }\n\n /**\n * Handle with the player is ended\n * @param val\n * @returns\n */\n @Watch('ended')\n handleEnded(val) {\n if (val) {\n if (this?.config?.percentage_start !== 100) return;\n this.show = true;\n }\n }\n\n @Watch('currentTime')\n @Watch('duration')\n handlePercentagePassed() {\n this.percentagePassed = (this.currentTime / this.duration) * 100;\n }\n\n /**\n * When current time changes, check to see if we should\n * enable the overlay\n * @returns void\n */\n @Watch('currentTime')\n handleTime() {\n this.checkTime();\n }\n\n /**\n * Set enabled/disabled based on time that has passed\n */\n checkTime() {\n if (window?.wp?.blocks) {\n this.show = true;\n return;\n }\n // if ( this.config?.percentage_start === 0) {\n // this.show = true;\n // } else {\n\n // console.log(this.currentTime, this.duration, this.config?.percentage_start);\n this.show = timePassed({\n current: this.currentTime,\n duration: this.duration,\n showAfter: this.config?.percentage_start,\n });\n }\n\n @Watch('config')\n handleButtonCountChange(newVal, oldVal) {\n if (newVal?.button_count !== oldVal?.button_count) {\n this.youtubeRenderKey++;\n }\n if (newVal?.enabled) {\n this.handleDuration();\n }\n }\n\n youtubeButton() {\n if (this.config?.button_type !== 'youtube' || !this.youtube?.channelId) {\n return;\n }\n\n return <presto-youtube-subscribe-button key={this.youtubeRenderKey} channel={this.youtube?.channelId} showCount={this.config?.button_count}></presto-youtube-subscribe-button>;\n }\n\n customButton() {\n if (this.config?.button_type !== 'custom') {\n return;\n }\n\n return (\n <presto-player-button\n type=\"primary\"\n size=\"small\"\n href={this.config?.button_link?.url}\n target={this.config?.button_link?.opensInNewTab ? '_blank' : '_self'}\n style={{\n '--presto-player-button-border-radius': `${this.config?.button_radius}px`,\n ...(this.config?.button_color\n ? {\n '--presto-player-button-color': `${this.config?.button_color}`,\n }\n : {}),\n ...(this.config?.button_text_color\n ? {\n '--presto-player-button-text': `${this.config?.button_text_color}`,\n }\n : {}),\n }}\n >\n {this.config?.button_text}\n </presto-player-button>\n );\n }\n @Watch('show')\n handleCtaStateChange(val) {\n this.actionBarStateChange.emit(val);\n }\n render() {\n return (\n <presto-action-bar-ui\n open={this.show}\n style={{\n '--presto-action-bar-background': this.config?.background_color || '#1d1d1d',\n }}\n >\n {this.config?.text}\n\n <div slot=\"button\">\n {this.youtubeButton()}\n {this.customButton()}\n </div>\n </presto-action-bar-ui>\n );\n }\n}\n",":host {\n display: block;\n}\n\n.presto-audio {\n $pre: &;\n\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n // Plyr tweaks\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n &__wrapper {\n border-radius: var(--presto-player-border-radius, 0px);\n .plyr--audio .plyr__controls {\n padding: 0;\n }\n\n .plyr--audio .plyr__control.plyr__tab-focus,\n .plyr--audio .plyr__control:hover,\n .plyr--audio .plyr__control[aria-expanded='true'] {\n background: var(--plyr-audio-controls-background);\n color: var(--plyr-audio-control-color);\n }\n }\n\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n // Wrapper\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n &__wrapper {\n display: flex;\n background: var(--plyr-audio-controls-background, #fff);\n }\n\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n // Controls Container\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n &__controls-wrapper {\n padding: calc(var(--plyr-control-spacing, 10px) * 2);\n flex: 1;\n display: flex;\n flex-direction: column;\n justify-content: center;\n min-width: 0;\n\n // handle style tweaks for poster.\n .has-poster & {\n padding: calc(var(--plyr-control-spacing, 10px) * 3);\n }\n // handle style tweaks for play-large with no poster.\n .has-play-large:not(.has-poster) & {\n padding-left: 0;\n }\n }\n\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n // Title\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n &__title,\n &__mobile-title {\n font-size: 18px;\n font-weight: 500;\n line-height: 1;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n color: var(--plyr-audio-control-color);\n }\n\n &__title {\n margin: calc(var(--plyr-control-spacing, 10px) / 2);\n margin-top: 0;\n text-wrap: wrap;\n }\n\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n // Poster\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n &__poster-wrapper {\n position: relative;\n width: 100px;\n min-height: 100px;\n flex: 0 0 100px;\n\n img {\n border-radius: var(--presto-player-border-radius, 0px) 0 0 var(--presto-player-border-radius, 0px);\n width: 100%;\n height: 100%;\n object-fit: cover;\n aspect-ratio: 1;\n display: block;\n }\n\n // handle style tweaks for poster.\n .has-poster & {\n width: 140px;\n height: 140px;\n flex: 0 0 140px;\n }\n }\n\n &__poster {\n width: 100%;\n height: 100%;\n }\n\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n // Play Large Button\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n &__large-play-button {\n user-select: none;\n cursor: pointer;\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 50px;\n height: 50px;\n color: white;\n border-radius: 100%;\n background: var(--plyr-audio-control-color);\n color: var(--plyr-audio-controls-background);\n\n &.is-relative {\n position: relative;\n top: auto;\n left: auto;\n transform: none;\n }\n\n .has-light-background.has-poster & {\n background: var(--plyr-audio-controls-background);\n color: var(--plyr-audio-control-color);\n }\n .has-dark-background.has-poster & {\n background: var(--plyr-audio-control-color);\n color: var(--plyr-audio-controls-background);\n }\n }\n\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n // Play Large Icon\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n &__icon-play,\n &__icon-pause {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n fill: currentColor;\n display: block;\n transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;\n margin: 0 auto;\n text-align: center;\n }\n &__icon-pause {\n opacity: 0;\n visibility: hidden;\n\n #{$pre}__wrapper.is-playing & {\n opacity: 1;\n visibility: visible;\n }\n }\n &__icon-play {\n margin-left: 2px; // optically center\n opacity: 1;\n visibility: visible;\n #{$pre}__wrapper.is-playing & {\n opacity: 0;\n visibility: hidden;\n }\n }\n\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n // Mobile sizing\n ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n &__poster-wrapper-mobile {\n display: none;\n min-width: 0;\n\n .presto-audio__large-play-button {\n flex: 0 0 50px;\n }\n }\n\n &__wrapper.breakpoint-small {\n flex-direction: column;\n\n #{$pre}__controls-wrapper {\n padding: calc(var(--plyr-control-spacing, 10px) * 2);\n }\n\n &.has-poster #{$pre}__title {\n text-align: center;\n margin: calc(var(--plyr-control-spacing, 10px) * 1.5);\n }\n\n &.has-poster #{$pre}__poster-wrapper {\n margin: 30px auto auto auto;\n overflow: hidden;\n border-radius: var(--presto-player-border-radius, 0px);\n width: 225px;\n height: 225px;\n flex: 0 0 225px;\n }\n\n &.has-play-large:not(.has-poster) #{$pre}__poster-wrapper,\n &.has-play-large:not(.has-poster) #{$pre}__title {\n display: none;\n }\n\n &.has-play-large:not(.has-poster) #{$pre}__poster-wrapper-mobile {\n display: flex;\n align-items: center;\n gap: 1em;\n margin-bottom: calc(var(--plyr-control-spacing, 10px) * -1);\n padding: calc(var(--plyr-control-spacing, 10px) * 2) calc(var(--plyr-control-spacing, 10px) * 2) 0 calc(var(--plyr-control-spacing, 10px) * 2);\n }\n }\n}\n\n// Stacked View\n.skin-stacked.presto-sticky-audio {\n .presto-audio__wrapper {\n height: 115px;\n }\n .has-poster {\n .presto-audio__controls-wrapper {\n padding: 20px;\n }\n .presto-audio__poster-wrapper {\n width: 115px;\n height: 115px;\n flex: 0 0 115px;\n }\n }\n}\n\n// skin-default\n.presto-sticky-audio {\n .presto-audio__wrapper {\n height: 100px;\n }\n .has-poster {\n .presto-audio__controls-wrapper {\n padding: 20px;\n }\n .presto-audio__poster-wrapper {\n width: 100px;\n height: 100px;\n flex: 0 0 100px;\n }\n }\n}\n\n// Basic Viwe\n\n.action-bar-active {\n .presto-audio__wrapper {\n border-radius: var(--presto-player-border-radius) var(--presto-player-border-radius) 0px 0px;\n }\n}\n\n@media screen and (max-width: 782px) {\n .presto-sticky-audio {\n .presto-audio__poster-wrapper-mobile {\n display: flex;\n align-items: center;\n gap: 1em;\n margin-bottom: calc(var(--plyr-control-spacing, 10px) * -1);\n padding: calc(var(--plyr-control-spacing, 10px) * 2) calc(var(--plyr-control-spacing, 10px) * 2) 0 calc(var(--plyr-control-spacing, 10px) * 2);\n }\n .presto-audio__poster-wrapper,\n .presto-audio__title {\n display: none;\n }\n .presto-audio__wrapper {\n height: 140px;\n }\n .has-poster .presto-audio__controls-wrapper {\n padding: 0px;\n }\n .presto-audio__poster-wrapper-mobile {\n .presto-audio__large-play-button {\n flex: 0 0 40px;\n height: 40px;\n }\n }\n }\n}\n","import { Component, h, Event, EventEmitter, Prop, State } from '@stencil/core';\nimport { presetAttributes } from '../../../../interfaces';\nimport { lightOrDark } from '../../../../util';\n\n@Component({\n tag: 'presto-audio',\n styleUrl: 'presto-audio.scss',\n shadow: false,\n})\nexport class PrestoAudio {\n private el: HTMLDivElement;\n @Prop({ mutable: true }) getRef?: (elm?: HTMLAudioElement) => void;\n @Prop() autoplay: boolean;\n @Prop() src: string;\n @Prop() preload: string;\n @Prop() poster: string;\n @Prop() player: any;\n @Prop() preset: presetAttributes;\n @Prop() tracks: { label: string; src: string; srcLang: string }[];\n @Prop() provider: string;\n @Prop() mediaTitle: string;\n @Prop() audioAttributes: object;\n\n @Event() playVideo: EventEmitter<void>;\n @Event() pauseVideo: EventEmitter<true>;\n\n @State() width: number;\n\n renderPosterImage() {\n if (this.poster) {\n return (\n <div class=\"presto-audio__poster\">\n <img src={this.poster} />\n </div>\n );\n }\n return;\n }\n\n hasPosterArea() {\n return !!this.poster || !!this.preset?.['play-large'];\n }\n\n renderMobilePoster() {\n return (\n <div class=\"presto-audio__poster-wrapper-mobile\">\n {!!this.preset?.['play-large'] && this.renderLargePlay('presto-audio__large-play-button is-relative')}\n <div class=\"presto-audio__mobile-title\">{this.mediaTitle}</div>\n </div>\n );\n }\n\n renderLargePlay(className = 'presto-audio__large-play-button') {\n return (\n <div\n class={className}\n onClick={() => {\n if (!this.player.playing) {\n this.playVideo.emit();\n } else {\n this.pauseVideo.emit();\n }\n }}\n >\n <svg class=\"presto-audio__icon-play\" width=\"16\" height=\"18\" viewBox=\"0 0 16 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M15.5588 9.00005L0.117662 17.915L0.117662 0.0850823L15.5588 9.00005Z\" />\n </svg>\n <svg class=\"presto-audio__icon-pause\" width=\"17\" height=\"17\" viewBox=\"0 0 17 17\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect width=\"5\" height=\"17\" />\n <rect x=\"12\" width=\"5\" height=\"17\" />\n </svg>\n </div>\n );\n }\n\n componentDidLoad() {\n // Only run if ResizeObserver is supported.\n if ('ResizeObserver' in window) {\n var ro = new ResizeObserver(entries => {\n entries.forEach(entry => (this.width = entry.contentRect.width));\n });\n ro.observe(this.el);\n }\n }\n\n render() {\n return (\n <div\n ref={el => (this.el = el as HTMLDivElement)}\n class={{\n 'presto-audio__wrapper': true,\n 'has-poster': !!this.poster,\n 'has-play-large': !!this.preset?.['play-large'],\n 'is-playing': this.player?.playing,\n 'has-light-background': lightOrDark(this.preset?.background_color) === 'light',\n 'has-dark-background': lightOrDark(this.preset?.background_color) === 'dark',\n 'breakpoint-small': this.width < 520,\n 'skin-stacked': this.width < 520,\n 'breakpoint-large': this.width >= 520,\n }}\n >\n {this.hasPosterArea() && (\n <div class=\"presto-audio__poster-wrapper\">\n {!!this.preset?.['play-large'] && <div class=\"presto-audio__large-play-wrapper\">{this.renderLargePlay()}</div>}\n {this.renderPosterImage()}\n </div>\n )}\n\n {this.hasPosterArea() && this.renderMobilePoster()}\n\n <div class=\"presto-audio__controls-wrapper\">\n <div class=\"presto-audio__title\">{this.mediaTitle}</div>\n <audio part=\"audio-player\" ref={this.getRef} autoplay={this.autoplay} preload={this.preload} data-poster={this.poster} {...this.audioAttributes}>\n <source src={this.src} />\n {!!this.tracks &&\n !!this.tracks.length &&\n this.tracks.map(track => <track kind=\"captions\" label={track?.label ? track.label : 'Captions'} src={track?.src} srclang={track?.srcLang ? track?.srcLang : 'en'} />)}\n </audio>\n </div>\n </div>\n );\n }\n}\n","import { Component, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'presto-bunny',\n shadow: false,\n})\nexport class PrestoBunny {\n @Prop({ mutable: true }) getRef?: (elm?: HTMLVideoElement) => void;\n @Prop() autoplay: boolean;\n @Prop() src: string;\n @Prop() preload: string;\n @Prop({ mutable: true }) poster: string;\n @Prop() player: any;\n @Prop() tracks: { label: string; src: string; srcLang: string }[];\n @Prop() playsinline: boolean;\n @Prop() provider: string;\n @Prop() thumbnail: string;\n @Prop() previewUrl: string;\n @Prop() videoAttributes: object;\n\n componentWillLoad() {\n this.poster = this.poster || this.thumbnail; // maybe add bunny thumbnail\n }\n\n render() {\n return (\n <presto-video\n getRef={this.getRef}\n player={this.player}\n autoplay={this.autoplay}\n preload={this.preload}\n poster={this.poster}\n playsinline={this.playsinline}\n src={this.src}\n tracks={this.tracks}\n videoAttributes={this.videoAttributes}\n ></presto-video>\n );\n }\n}\n",".skin-business {\n &.presto-player__wrapper {\n // when small play button is active but rewind is inactive\n &.rewind-inactive {\n .plyr__controls .plyr__controls__item:nth-child(2) {\n &::before {\n border-radius: var(--plyr-control-radius, 3px) 0px 0px var(--plyr-control-radius, 3px);\n }\n }\n }\n\n // full captions\n &.caption-style-full .plyr:not(.plyr--hide-controls):not(.is-muted-overlay) .plyr__controls:not(:empty) ~ .plyr__captions {\n transform: translateY(calc(var(--plyr-control-spacing, 16px) * -4));\n }\n\n .presto-player-progress__marker {\n border-radius: 0;\n width: 15px;\n height: 15px;\n border-width: 1px;\n }\n\n // hover effect for all button\n .plyr__control[data-plyr] {\n &:hover,\n &:focus,\n &:active {\n &:not([role*='menuitem']):not(.plyr__control--back) {\n background-color: transparent;\n color: var(--plyr-color-main);\n\n &[data-plyr='play'] {\n background-color: var(--plyr-color-main);\n color: white;\n }\n }\n }\n }\n\n // for large button\n .plyr__control--overlaid[data-plyr='play'] {\n border-radius: 4px;\n background: #000000;\n opacity: 75%;\n &:hover {\n background-color: var(--plyr-color-main);\n color: white;\n opacity: 100%;\n }\n }\n\n // for soun range cursor\n .plyr__volume input[type='range'] {\n cursor: pointer;\n }\n\n // fast forward\n .plyr__controls .plyr__controls__item[data-plyr='fast-forward'] {\n border-radius: 0px;\n }\n\n // range contol for video progression\n .plyr__progress {\n margin: 0px 20px 0 5px;\n\n input[type='range'] {\n height: 32px;\n border-radius: 0px;\n cursor: pointer;\n }\n }\n\n .plyr__controls .plyr__controls__item:not(.presto-player-progress__marker):first-child {\n &::before {\n border-radius: var(--plyr-control-radius, 3px) 0px 0px var(--plyr-control-radius, 3px);\n }\n }\n .plyr__controls .plyr__controls__item:not(.presto-player-progress__marker):last-child {\n &::before {\n border-radius: 0px var(--plyr-control-radius, 3px) var(--plyr-control-radius, 3px) 0px;\n }\n }\n\n // play button\n .plyr__controls .plyr__controls__item.plyr__control[data-plyr='play'] {\n order: -1;\n margin-right: 5px;\n padding: 11px 20px 11px 20px;\n top: -4px;\n &::before {\n border-radius: 4px;\n }\n }\n\n // rewind control\n .plyr__controls .plyr__controls__item[data-plyr='rewind'] {\n &::before {\n border-radius: var(--plyr-control-radius, 3px) 0px 0px var(--plyr-control-radius, 3px);\n }\n }\n\n .plyr__controls .plyr__controls__item:not([data-plyr='play']) {\n margin: 0;\n }\n\n //make fullscreen svg bigger\n .plyr__controls .plyr__controls__item[data-plyr='fullscreen'] {\n padding: 4px;\n svg {\n height: 24px;\n width: 24px;\n }\n }\n\n .plyr__controls .plyr__controls__item:not(.presto-player-progress__marker) {\n position: relative;\n // time\n &.plyr__time {\n height: 32px;\n padding-top: 4.5px;\n }\n\n &::before {\n content: '';\n background: #000000;\n position: absolute;\n top: 0px;\n left: 0;\n right: 0;\n bottom: 0px;\n opacity: 0.76;\n z-index: -1;\n }\n }\n\n // make video prgression range outline\n .plyr--full-ui input[type='range']::-webkit-slider-runnable-track {\n box-shadow: none;\n color: var(--plyr-color-main);\n height: 9px;\n outline: 1px solid #878787a6;\n outline-offset: 2px;\n border-radius: 0px;\n }\n\n // make the range control invisible\n .plyr--full-ui input[type='range']::-webkit-slider-thumb {\n visibility: hidden;\n }\n\n // make buffer big\n .plyr__progress__buffer::-webkit-progress-value {\n position: relative;\n border-radius: 0px;\n height: 9px;\n top: -2px;\n }\n\n .plyr--full-ui input[type='range']::-webkit-slider-runnable-track {\n background-color: transparent;\n }\n\n @media screen and (max-width: 480px) {\n .plyr__controls .plyr__controls__item {\n &.plyr__time {\n padding: 1.5%;\n }\n }\n .plyr__controls .plyr__controls__item[data-plyr='play'] {\n padding: 8px;\n top: 0px;\n }\n //make fullscreen svg bigger\n .plyr__controls .plyr__controls__item[data-plyr='fullscreen'] {\n svg {\n width: 22px;\n }\n }\n }\n }\n}\n","import { Component, Host, h } from '@stencil/core';\n\n@Component({\n tag: 'presto-business-skin',\n styleUrl: 'presto-business-skin.scss',\n shadow: false,\n})\nexport class PrestoBusinessSkin {\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n",":host {\n display: block;\n}\n","import { Component, h, Prop, State } from '@stencil/core';\nimport { i18nConfig, presetAttributes } from '../../../../../interfaces';\n\n/**\n * This component is needed to prevent re-rendering of\n * main component with currentTime changes.\n */\n@Component({\n tag: 'presto-cta-overlay',\n styleUrl: 'presto-cta-overlay.css',\n shadow: false,\n})\nexport class PrestoCTAOverlay {\n @Prop() player: any;\n @Prop() direction?: 'rtl';\n @Prop() preset: presetAttributes;\n @Prop() i18n: i18nConfig;\n @Prop() provider: string;\n\n @State() currentTime: number;\n @State() duration: number;\n @State() ended: boolean;\n\n componentWillLoad() {\n if (!this.player) return;\n this.player.on('ended', () => this.setEnded());\n this.player.on('timeupdate', e => this.setCurrentTime(e));\n }\n\n setEnded() {\n this.ended = true;\n }\n\n setCurrentTime(e) {\n this.currentTime = e?.detail?.plyr.currentTime;\n this.duration = e?.detail?.plyr.duration;\n }\n\n /**\n * Remove listeners if destroyed\n */\n disconnectedCallback() {\n if (!this.player) return;\n this.player.off('ended', this.setEnded);\n this.player.off('timeupdate', this.setCurrentTime);\n }\n\n /**\n * Maybe render\n * @returns JSX\n */\n render() {\n return (\n <presto-cta-overlay-controller\n ended={this.ended}\n currentTime={this.currentTime}\n duration={this.duration}\n direction={this.direction}\n cta={this.preset?.cta}\n i18n={this.i18n}\n provider={this.provider}\n ></presto-cta-overlay-controller>\n );\n }\n}\n",":host {\n display: block;\n}\n","import { Component, Event, EventEmitter, h, Prop, State, Watch } from '@stencil/core';\nimport { i18nConfig, CTA } from '../../../../../interfaces';\nimport { timePassed } from '../../../../../util';\n\n@Component({\n tag: 'presto-cta-overlay-controller',\n styleUrl: 'presto-cta-overlay-controller.css',\n shadow: false,\n})\nexport class PrestoCtaOverlayController {\n @Prop() ended: boolean;\n @Prop({ reflect: true }) currentTime: number;\n @Prop({ reflect: true }) duration: number;\n @Prop() direction?: 'rtl';\n @Prop() cta?: CTA;\n @Prop() i18n: i18nConfig;\n @Prop() provider: string;\n\n @State() enabled: boolean;\n @State() show: boolean;\n @State() loading: boolean;\n @State() error: string;\n @State() skipped: boolean;\n @State() percentagePassed: number = 0;\n\n @Event() playVideo: EventEmitter<void>;\n @Event() pauseVideo: EventEmitter<boolean>;\n @Event() restartVideo: EventEmitter<void>;\n @Event() ctaStateChange: EventEmitter<boolean>;\n\n componentWillLoad() {\n this.handleDuration();\n }\n\n /**\n * Handle with the player is ended\n * @param val\n * @returns\n */\n @Watch('ended')\n handleEnded(val) {\n if (val) {\n if (this?.cta?.percentage !== 100) return;\n this.show = true;\n }\n }\n\n /**\n * Wait for duration to start before checking time\n * @returns void\n */\n @Watch('duration')\n handleDuration() {\n this.enabled = this.skipped ? false : this?.cta?.enabled;\n this.handleTime();\n }\n\n @Watch('currentTime')\n @Watch('duration')\n handlePercentagePassed() {\n this.percentagePassed = (this.currentTime / this.duration) * 100;\n }\n\n /**\n * Watch current time and check if we should\n * pause the video.\n */\n @Watch('currentTime')\n handleEnabled() {\n if (!this.show) return; // not showing.\n if (this.skipped) return; // already skipped.\n this.pauseVideo.emit(true); // pause if enabled.\n }\n\n /**\n * When current time changes, check to see if we should\n * enable the overlay\n * @returns void\n */\n @Watch('currentTime')\n handleTime() {\n if (!this.enabled) return; // not enabled.\n if (this.skipped) return; // skipped.\n if (this?.cta?.percentage === 100) return; // we'll catch this on ended event.\n this.checkTime();\n }\n\n /**\n * Set enabled/disabled based on time that has passed\n */\n checkTime() {\n this.show = timePassed({\n current: this.currentTime,\n duration: this.duration,\n showAfter: this?.cta?.percentage || 0,\n });\n }\n\n /**\n * Skip email collection\n */\n skip() {\n this.skipped = true;\n this.show = false;\n this.playVideo.emit();\n }\n\n /**\n * Handle rewatch click.\n */\n rewatch() {\n this.ended = false;\n this.show = false;\n this.restartVideo.emit();\n }\n\n /**\n * Maybe render\n * @returns JSX\n */\n\n @Watch('show')\n handleCtaStateChange(val) {\n this.ctaStateChange.emit(val);\n }\n render() {\n if (!this.show) {\n return;\n }\n\n return (\n <presto-cta-overlay-ui\n style={{\n '--presto-player-button-border-radius': `${this?.cta?.button_radius}px`,\n ...(this?.cta?.background_opacity ? { '--presto-player-cta-background-opacity': `${this?.cta?.background_opacity / 100}` } : {}),\n ...(this?.cta?.button_color\n ? {\n '--presto-player-button-color': `${this?.cta?.button_color}`,\n }\n : {}),\n ...(this?.cta?.button_text_color\n ? {\n '--presto-player-button-text': `${this?.cta?.button_text_color}`,\n }\n : {}),\n }}\n direction={this.direction}\n class=\"cta-overlay\"\n i18n={this.i18n}\n headline={this?.cta?.headline}\n bottom-text={this?.cta?.bottom_text}\n show-button={this?.cta?.show_button}\n buttonLink={this?.cta?.button_link}\n allowSkip={!this.ended && this?.cta?.show_skip}\n allowRewatch={this.ended && this?.cta?.show_rewatch}\n button-text={this?.cta?.button_text}\n onSkip={() => this.skip()}\n onRewatch={() => this.rewatch()}\n provider={this.provider}\n ></presto-cta-overlay-ui>\n );\n }\n}\n",":host {\n display: block;\n}\n\n.overlay-text {\n text-decoration: none;\n display: inline-block;\n user-select: none;\n line-height: 1;\n opacity: var(--presto-dynamic-overlay-opacity, 1);\n font-size: var(--presto-dynamic-overlay-font-size, 18px);\n padding: var(--presto-dynamic-overlay-padding, 0.65em 0.85em);\n font-weight: var(--presto-dynamic-overlay-font-weight, 500);\n border-radius: var(--presto-dynamic-overlay-radius, 0.25em);\n background: var(--presto-dynamic-overlay-background, rgba(0, 0, 0, 0.8));\n color: var(--presto-dynamic-overlay-color, #fff);\n opacity: var(--presto-dynamic-overlay-opacity, 1);\n word-break: break-word;\n}\n\na.overlay-text {\n cursor: pointer;\n}\n","import { Component, Element, h, Prop } from '@stencil/core';\nimport fitText from '../../../../../library/fittext.js';\n\n@Component({\n tag: 'presto-dynamic-overlay-ui',\n styleUrl: 'presto-dynamic-overlay-ui.scss',\n shadow: true,\n})\nexport class PrestoDynamicOverlayUi {\n @Element() el: HTMLElement;\n\n private text: HTMLAnchorElement;\n\n /** When set, the underlying button will be rendered as an `<a>` with this `href` instead of a `<button>`. */\n @Prop() href: string;\n\n /** Tells the browser where to open the link. Only used when `href` is set. */\n @Prop() target: '_blank' | '_parent' | '_self' | '_top';\n\n @Prop() position: 'top-left' | 'top-right' = 'top-right';\n\n closestElement(selector, el) {\n return (el && el != document && el != window && el.closest(selector)) || (el && this.closestElement(selector, el.getRootNode().host));\n }\n\n componentDidLoad() {\n let player = this.closestElement('presto-player', this.el) as HTMLPrestoPlayerElement;\n fitText(this.text, 3, {\n maxFontSize: 16,\n minFontSize: 10,\n container: player,\n });\n }\n\n render() {\n const Tag = this.href ? 'a' : ('span' as keyof JSX.IntrinsicElements);\n return (\n <Tag\n class={{\n 'overlay-text': true,\n 'overlay--top-left': this.position === 'top-left',\n 'overlay--top-right': this.position === 'top-right',\n }}\n href={this.href}\n target={this.target}\n part=\"overlay-text\"\n ref={el => (this.text = el as HTMLAnchorElement)}\n >\n <slot />\n </Tag>\n );\n }\n}\n",".top-left,\n.top-right {\n position: absolute;\n display: block;\n padding: 20px;\n max-width: 45%;\n z-index: 20;\n display: flex;\n flex-direction: column;\n flex-wrap: wrap;\n}\n\n.top-left {\n top: 0;\n left: 0;\n}\n\n.top-right {\n top: 0;\n right: 0;\n align-items: flex-end;\n}\n\npresto-dynamic-overlay-ui {\n overflow: hidden; /* Hide the element content, while height = 0 */\n height: 0;\n opacity: 0;\n transition: height 0ms 400ms, opacity 400ms 0ms;\n}\n\npresto-dynamic-overlay-ui.visible {\n margin-bottom: 10px;\n height: auto;\n opacity: 1;\n transition: height 0ms 0ms, opacity 500ms 0ms;\n}\n","import { Component, h, Prop, Element, State, Event, EventEmitter } from '@stencil/core';\nimport { DynamicOverlay, presetAttributes } from '../../../../../interfaces';\nimport { timeToSeconds, parseColor } from '../../../../../util';\n\n@Component({\n tag: 'presto-dynamic-overlays',\n styleUrl: 'presto-dynamic-overlays.scss',\n shadow: true,\n})\nexport class PrestoDynamicOverlays {\n private topLeft: HTMLDivElement;\n private topRight: HTMLDivElement;\n private container: HTMLDivElement;\n private watermarkRef: {\n left: HTMLPrestoDynamicOverlayUiElement;\n right: HTMLPrestoDynamicOverlayUiElement;\n } = {\n left: null,\n right: null,\n };\n\n @Element() el: HTMLPrestoDynamicOverlaysElement;\n\n @Prop() overlays: Array<DynamicOverlay>;\n @Prop() player: any;\n @Prop() preset: presetAttributes;\n @Prop() enabled: boolean;\n\n @State() currentTime: number;\n @State() destroy: boolean = false;\n\n @Event() reloadComponent: EventEmitter<void>;\n\n private refs: any = {};\n\n componentDidLoad() {\n if (!this.player) {\n return;\n }\n this.player.on('timeupdate', e => {\n this.currentTime = e.detail.plyr.currentTime;\n this.checkValidity(); // check overlays validity.\n });\n }\n\n /**\n * Check validity of the overlays.\n * Blow up if any funny business.\n */\n checkValidity() {\n // only if we are playing\n if (!this.player.playing) {\n return;\n }\n\n if (!this?.overlays?.length && !this.preset?.watermark?.enabled) {\n return;\n }\n\n // make sure container and other divs are not removed.\n if (!this.container?.offsetParent || !this.topLeft?.offsetParent || !this.topRight?.offsetParent) {\n this.reloadComponent.emit();\n }\n\n // check for funny business on overlays.\n Object.keys(this.refs || {}).forEach(key => {\n const { overlay, component } = this.refs[key];\n this.checkComponent(component, overlay.text, () => this.reloadComponent.emit());\n });\n\n // check for any funny business on watermark\n if (this.shouldShowWatermark('top-left') && this.watermarkRef.left) {\n this.checkComponent(this.watermarkRef.left, this.preset?.watermark?.text, () => this.reloadComponent.emit());\n }\n if (this.shouldShowWatermark('top-right') && this.watermarkRef.right) {\n this.checkComponent(this.watermarkRef.right, this.preset?.watermark?.text, () => this.reloadComponent.emit());\n }\n }\n\n /**\n * Check if the component is valid.\n * If invalid, run a callback.\n *\n * @param component\n * @param text\n * @returns\n */\n checkComponent(component, text, callback) {\n // hidden, it's invalid.\n if (!component?.offsetParent) {\n return callback();\n }\n\n // slot was removed.\n if (!component.shadowRoot.querySelector('slot')) {\n return callback();\n }\n\n // only if we're playing\n if (!!this.player && this.player.playing) {\n const content = component.shadowRoot.querySelector('slot').assignedNodes()[0];\n\n if (content) {\n // slot content changed.\n if (content.parentElement.innerHTML != text) {\n return callback();\n }\n\n // font-size changes.\n const style = getComputedStyle(content.parentElement.shadowRoot.querySelector('.overlay-text'));\n if (parseInt(style.fontSize, 10) < 10) {\n return callback();\n }\n\n // opacity changes\n const color = parseColor(style.color);\n if (color?.[3] !== '1') {\n return callback();\n }\n }\n }\n }\n\n /**\n * Show the overlay\n * @param overlay\n * @returns\n */\n shouldShowOverlay(overlay) {\n // need a time.\n if (typeof this.currentTime === 'undefined') {\n return;\n }\n\n // bail if current time is less than start time\n if (this.currentTime < timeToSeconds(overlay?.startTime)) {\n return false;\n }\n\n // bail if current time is more than end time\n if (this.currentTime > timeToSeconds(overlay?.endTime)) {\n return false;\n }\n\n return true;\n }\n\n /**\n * Render the watermark\n */\n renderOverlay(overlay) {\n return (\n <presto-dynamic-overlay-ui\n class={{\n visible: this.shouldShowOverlay(overlay),\n }}\n ref={el =>\n (this.refs[overlay.id] = {\n overlay,\n component: el as HTMLPrestoDynamicOverlayUiElement,\n })\n }\n key={overlay.id}\n position={overlay.position}\n href={overlay?.link?.url}\n target={overlay?.link?.opensInNewTab ? '_blank' : '_self'}\n innerHTML={this.shouldShowOverlay(overlay) ? overlay.text : ''}\n style={{\n '--presto-dynamic-overlay-color': overlay?.color || '#fff',\n '--presto-dynamic-overlay-background': overlay?.backgroundColor || '#333',\n '--presto-dynamic-overlay-opacity': overlay?.opacity ? (overlay.opacity / 100).toString() : '1',\n }}\n ></presto-dynamic-overlay-ui>\n );\n }\n\n /**\n * Should we show the watermark?\n */\n shouldShowWatermark(position) {\n if (!this.preset?.watermark?.enabled) return false;\n\n const watermark = this.preset?.watermark;\n\n // randomize\n if (watermark.position === 'randomize') {\n const time = Math.floor((this.player.currentTime || 0) / 10);\n\n // even or odd\n if (time % 2 == 0) {\n return position === 'top-left';\n } else {\n return position === 'top-right';\n }\n }\n\n // position is set.\n if (watermark.position === position) {\n return true;\n }\n\n // fallback.\n if (!watermark.position && 'top-right' === position) {\n return true;\n }\n\n return false;\n }\n\n render() {\n // bail if disabled.\n if (!this.enabled) {\n return;\n }\n\n // bail if no overlays or watermark\n if (!this?.overlays?.length && !this.preset?.watermark?.enabled) {\n return;\n }\n\n return (\n <div class=\"overlays\" ref={el => (this.container = el as HTMLDivElement)}>\n <div class=\"top-left\" ref={el => (this.topLeft = el as HTMLDivElement)}>\n {!!this.shouldShowWatermark('top-left') && (\n <presto-dynamic-overlay-ui\n ref={el => (this.watermarkRef.left = el as HTMLPrestoDynamicOverlayUiElement)}\n style={{\n '--presto-dynamic-overlay-color': this.preset.watermark?.color || '#fff',\n '--presto-dynamic-overlay-background': this.preset.watermark?.backgroundColor || '#333',\n '--presto-dynamic-overlay-opacity': this.preset.watermark?.opacity ? (this.preset.watermark.opacity / 100).toString() : '1',\n }}\n class=\"visible\"\n position={'top-left'}\n innerHTML={this.preset.watermark.text}\n ></presto-dynamic-overlay-ui>\n )}\n\n {!!this?.overlays?.length &&\n this.overlays.map(overlay => {\n if (overlay.position !== 'top-left') {\n return '';\n }\n return this.renderOverlay(overlay);\n })}\n </div>\n\n <div class=\"top-right\" ref={el => (this.topRight = el as HTMLDivElement)}>\n {!!this.shouldShowWatermark('top-right') && (\n <presto-dynamic-overlay-ui\n ref={el => (this.watermarkRef.right = el as HTMLPrestoDynamicOverlayUiElement)}\n style={{\n '--presto-dynamic-overlay-color': this.preset.watermark?.color || '#fff',\n '--presto-dynamic-overlay-background': this.preset.watermark?.backgroundColor || '#333',\n '--presto-dynamic-overlay-opacity': this.preset.watermark?.opacity ? (this.preset.watermark.opacity / 100).toString() : '1',\n }}\n class=\"visible\"\n position={'top-right'}\n innerHTML={this.preset.watermark.text}\n ></presto-dynamic-overlay-ui>\n )}\n\n {!!this?.overlays?.length &&\n this.overlays.map(overlay => {\n if (overlay.position !== 'top-right') {\n return '';\n }\n return this.renderOverlay(overlay);\n })}\n </div>\n </div>\n );\n }\n}\n",":host {\n display: block;\n}\n","import { Component, h, Prop, State } from '@stencil/core';\nimport { i18nConfig, presetAttributes } from '../../../../../interfaces';\n\n/**\n * This component is needed to prevent re-rendering of\n * main component with currentTime changes.\n */\n@Component({\n tag: 'presto-email-overlay',\n styleUrl: 'presto-email-overlay.css',\n shadow: false,\n})\nexport class PrestoEmailOverlay {\n @Prop() player: any;\n @Prop() direction?: 'rtl';\n @Prop() preset: presetAttributes;\n @Prop() videoId: number;\n @Prop() i18n: i18nConfig;\n @Prop() provider: string;\n\n @State() currentTime: number;\n @State() duration: number;\n @State() ended: boolean;\n\n componentWillLoad() {\n if (!this.player) return;\n this.player.on('ended', () => this.setEnded());\n this.player.on('timeupdate', e => this.setCurrentTime(e));\n }\n\n setEnded() {\n this.ended = true;\n }\n\n setCurrentTime(e) {\n this.currentTime = e?.detail?.plyr.currentTime;\n this.duration = e?.detail?.plyr.duration;\n }\n\n /**\n * Remove listeners if destroyed\n */\n disconnectedCallback() {\n if (!this.player) return;\n this.player.off('ended', this.setEnded);\n this.player.off('timeupdate', this.setCurrentTime);\n }\n\n /**\n * Maybe render\n * @returns JSX\n */\n render() {\n return (\n <presto-email-overlay-controller\n ended={this.ended}\n currentTime={this.currentTime}\n videoId={this.videoId}\n duration={this.duration}\n direction={this.direction}\n presetId={this.preset?.id}\n emailCollection={this.preset?.email_collection}\n i18n={this.i18n}\n provider={this.provider}\n ></presto-email-overlay-controller>\n );\n }\n}\n",":host {\n display: block;\n}\n","import { Component, Event, EventEmitter, h, Prop, State, Watch } from '@stencil/core';\nimport { i18nConfig, EmailCollection } from '../../../../../interfaces';\nimport { timePassed } from '../../../../../util';\n\n@Component({\n tag: 'presto-email-overlay-controller',\n styleUrl: 'presto-email-overlay-controller.css',\n shadow: false,\n})\nexport class PrestoEmailOverlayController {\n @Prop() ended: boolean;\n @Prop({ reflect: true }) currentTime: number;\n @Prop({ reflect: true }) duration: number;\n @Prop() direction?: 'rtl';\n @Prop() emailCollection?: EmailCollection;\n @Prop() i18n: i18nConfig;\n @Prop() videoId: number;\n @Prop() presetId: number;\n @Prop() provider: string;\n\n @State() enabled: boolean;\n @State() show: boolean;\n @State() loading: boolean;\n @State() error: string;\n @State() percentagePassed: number = 0;\n\n @Event() playVideo: EventEmitter<void>;\n @Event() pauseVideo: EventEmitter<true>;\n @Event() restartVideo: EventEmitter<void>;\n @Event() emailStateChange: EventEmitter<boolean>;\n\n /**\n * Set email collection in local storage\n * @param status string\n */\n setStorage(status) {\n window.localStorage.setItem('presto.videos.email_collection', JSON.stringify({ [this.videoId]: status }));\n }\n\n /**\n * Get email collection in local storage\n * @returns status string\n */\n getStorage() {\n return window.localStorage.getItem('presto.videos.email_collection');\n }\n\n componentWillLoad() {\n this.handleDuration();\n }\n\n /**\n * Wait for duration to start before checking time\n * @returns void\n */\n @Watch('duration')\n handleDuration() {\n this.enabled = this.getStorage() ? false : this?.emailCollection?.enabled;\n this.handleTimeCheck();\n }\n\n /**\n * When current time changes, check to see if we should\n * enable the overlay\n * @returns void\n */\n @Watch('currentTime')\n handleTimeCheck() {\n if (!this.enabled) return; // not enabled\n if (this.getStorage()) return; // already skipped\n this.checkTime();\n }\n\n @Watch('currentTime')\n handleShowChange() {\n if (!this.show) return; // bail if not showing.\n this.pauseVideo.emit(true); // pause video if here.\n }\n\n /**\n * Set enabled/disabled based on time that has passed\n */\n checkTime() {\n this.show = timePassed({\n current: this.currentTime,\n duration: this.duration,\n showAfter: this?.emailCollection?.percentage || 0,\n });\n }\n\n /**\n * Fetch updated nonce in case of caching\n * @returns Promise\n */\n async getNonce() {\n return fetch(`${window?.prestoPlayer?.ajaxurl}?action=presto_refresh_progress_nonce`);\n }\n\n /**\n * Submit email collection\n * @param e Event\n */\n async submit(e) {\n this.loading = true;\n this.error = '';\n\n // get nonce refresh\n const response = await this.getNonce();\n const { data: nonce } = await response.json();\n\n // handle submit\n try {\n let response = await fetch(window?.prestoPlayer?.ajaxurl, {\n method: 'post',\n body: new URLSearchParams({\n action: 'presto_player_email_submit',\n nonce,\n preset_id: this.presetId,\n video_id: this.videoId,\n provider: this.provider,\n ...(e?.detail || {}),\n }),\n });\n const { success, data } = await response.json();\n if (success) {\n this.setStorage('collected');\n this.show = false;\n this.playVideo.emit();\n } else {\n throw data;\n }\n } catch (e) {\n const error = e?.[0];\n if (error && typeof error === 'string') {\n this.error = error;\n }\n } finally {\n this.loading = false;\n }\n }\n\n /**\n * Skip email collection\n */\n skip() {\n this.setStorage('skipped');\n this.show = false;\n this.playVideo.emit();\n }\n\n /**\n * Maybe render\n * @returns JSX\n */\n\n @Watch('show')\n handleEmailStateChange(val) {\n this.emailStateChange.emit(val);\n }\n\n render() {\n if (!this.show) {\n return;\n }\n\n return (\n <presto-email-overlay-ui\n style={{\n ...(this?.emailCollection?.button_color\n ? {\n '--presto-player-button-color': `${this?.emailCollection?.button_color}`,\n }\n : {}),\n ...(this?.emailCollection?.button_text_color\n ? {\n '--presto-player-button-text': `${this?.emailCollection?.button_text_color}`,\n }\n : {}),\n }}\n direction={this.direction}\n class=\"email-overlay\"\n headline={this?.emailCollection?.headline}\n bottomText={this?.emailCollection?.bottom_text}\n allowSkip={this?.emailCollection?.allow_skip}\n buttonText={this?.emailCollection?.button_text}\n isLoading={this.loading}\n errorMessage={this.error}\n onSubmitForm={e => this.submit(e)}\n onSkip={() => this.skip()}\n i18n={this.i18n}\n provider={this.provider}\n ></presto-email-overlay-ui>\n );\n }\n}\n",".skin-modern {\n &.presto-player__wrapper {\n button.plyr__control.plyr__control--overlaid {\n border-radius: 2px;\n padding: 3% 5%;\n max-width: 135px;\n max-height: 90px;\n box-sizing: content-box;\n position: absolute !important;\n top: 50% !important;\n opacity: 100%;\n svg {\n height: 31px;\n width: 37px;\n }\n &:hover,\n &:focus {\n opacity: 0.8;\n background: var(--plyr-color-main);\n }\n }\n\n // full captions\n &.caption-style-full .plyr:not(.plyr--hide-controls):not(.is-muted-overlay) .plyr__controls:not(:empty) ~ .plyr__captions {\n transform: translateY(calc(var(--plyr-control-spacing, 9px) * -4));\n }\n\n // color background\n .plyr--video .plyr__controls {\n padding: 0px;\n &::before {\n content: '';\n background: var(--plyr-color-main);\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n opacity: 0.75;\n }\n }\n\n // adding hover state\n .plyr__controls__item {\n z-index: 1;\n &.plyr__control:not(.presto-player-progress__marker):not([role*='menuitem']):not(.plyr__control--back) {\n height: 36px;\n border-radius: 0px;\n &:focus {\n background-color: transparent;\n color: white;\n }\n }\n &.presto-player-progress__marker {\n z-index: 2;\n }\n &.plyr__menu {\n height: 36px;\n }\n }\n\n // completed range\n .plyr--full-ui.plyr--video input[type='range']::-webkit-slider-runnable-track {\n height: 2px;\n color: white;\n }\n\n // will complete range\n .presto-player__wrapper .plyr--full-ui.plyr--video input[type='range']::-webkit-slider-runnable-track {\n height: 2px;\n }\n\n // for buffer\n .plyr--video .plyr__progress__buffer {\n height: 2px;\n top: 11px;\n }\n\n .plyr__progress {\n input[type='range'] {\n cursor: pointer;\n }\n }\n\n // for range button\n .plyr--full-ui input[type='range']::-webkit-slider-thumb {\n top: 1px;\n height: var(--plyr-range-thumb-height, 8px);\n width: var(--plyr-range-thumb-height, 8px);\n box-shadow: 0px 0px 5px white;\n &:hover {\n transform: scale(1.5);\n }\n }\n\n // margin control\n .plyr__controls .plyr__controls__item {\n margin: 0px;\n }\n\n // volume width\n .plyr__volume {\n width: auto;\n input[type='range'] {\n width: 55px;\n }\n }\n\n // for soun range cursor\n .plyr__volume input[type='range'] {\n cursor: pointer;\n }\n\n // muted autoplay button size\n .presto-player__muted-overlay {\n .plyr__control {\n &.plyr__control--overlaid {\n border-radius: 2px;\n svg {\n height: 40px;\n width: 50px;\n }\n }\n }\n }\n\n .plyr__controls .plyr__controls__item[data-plyr='rewind'] svg,\n .plyr__controls .plyr__controls__item[data-plyr='fast-forward'] svg,\n .plyr__controls .plyr__controls__item[data-plyr='fullscreen'] svg {\n width: 22px;\n height: 22px;\n }\n\n @media screen and (max-width: 480px) {\n .plyr__control--overlaid {\n svg {\n height: 18px;\n width: 16px;\n }\n }\n }\n }\n}\n","import { Component, Host, h } from '@stencil/core';\n\n@Component({\n tag: 'presto-modern-skin',\n styleUrl: 'presto-modern-skin.scss',\n shadow: false,\n})\nexport class PrestoModernSkin {\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n",":host {\n display: block;\n}\n","import { Component, Event, EventEmitter, h, Prop } from '@stencil/core';\nimport { MutedOverlay, presetAttributes } from '../../../../interfaces';\n\n@Component({\n tag: 'presto-muted-overlay',\n styleUrl: 'presto-muted-overlay.css',\n shadow: false,\n})\nexport class PrestoMutedOverlay {\n @Prop() mutedPreview: boolean;\n @Prop() mutedOverlay: MutedOverlay;\n @Prop() preset: presetAttributes;\n\n @Event() playVideo: EventEmitter<void>;\n\n render() {\n return (\n <div\n class=\"presto-player__muted-overlay\"\n onClick={() => {\n this.mutedPreview = false;\n this.playVideo.emit();\n }}\n >\n {this.preset?.['play-large'] && (\n <div class=\"plyr__control plyr__control--overlaid\" data-plyr=\"play\" aria-label=\"Play\" part=\"muted-overlay-play\">\n <svg id=\"plyr-play\" viewBox=\"0 0 18 18\">\n <path d=\"M15.562 8.1L3.87.225c-.818-.562-1.87 0-1.87.9v15.75c0 .9 1.052 1.462 1.87.9L15.563 9.9c.584-.45.584-1.35 0-1.8z\"></path>\n </svg>\n <span class=\"plyr__sr-only\">Play</span>\n </div>\n )}\n\n {this.mutedOverlay?.enabled && this.mutedOverlay?.src ? (\n <div\n class=\"presto-player__overlay is-image\"\n part=\"muted-overlay-image\"\n style={{\n width: `${this.mutedOverlay?.width || 50}%`,\n left: `${(this.mutedOverlay?.focalPoint?.x || 0.5) * 100}%`,\n top: `${(this.mutedOverlay?.focalPoint?.y || 0.5) * 100}%`,\n }}\n >\n <img src={this.mutedOverlay?.src} style={{ transform: 'translateX(-50%) translateY(-50%)' }} />\n </div>\n ) : (\n ''\n )}\n </div>\n );\n }\n}\n","import { Component, h, Prop, State } from '@stencil/core';\nimport { searchVtt, setMarkers, removeOldMarkers } from '../../../player/functions/search-vtt';\n\n@Component({\n tag: 'presto-search-bar',\n shadow: false,\n})\nexport class PrestoSearchBar {\n /**\n * Props\n */\n @Prop() value: string;\n @Prop() player: any;\n\n /**\n * State\n */\n @State() markers: any;\n @State() currentMarkerLocation: number = -1;\n\n /**\n * Handle search event\n * @param value Event\n */\n onSearch(e) {\n this.value = e.detail;\n\n if ('' === this.value) {\n removeOldMarkers(this.player);\n this.markers = [];\n } else {\n const searchResult = searchVtt(this.player, this.value);\n this.player.config.markers = { enabled: true, points: searchResult };\n this.markers = searchResult;\n setMarkers(this.player, searchResult);\n }\n }\n\n /**\n * Handle previous arrow key click after search\n */\n onPreviousNav() {\n const prevLocation = this.currentMarkerLocation - 1;\n // previous location is -1\n if (prevLocation < 0) {\n this.currentMarkerLocation = this.markers.length - 1;\n } else {\n this.currentMarkerLocation--;\n }\n this.player.currentTime = this.markers[this.currentMarkerLocation]['time'];\n }\n\n /**\n * Handle the event where search is hovered or focused\n */\n onFocusChange(focus) {\n if (focus?.detail === true) {\n this.player.config.hideControls = false;\n } else {\n this.player.config.hideControls = this.player.config?.preset?.auto_hide || false;\n }\n }\n\n /**\n * Handle next arrow key click after search\n */\n onNextNav() {\n const nextLocation = this.currentMarkerLocation + 1;\n if (nextLocation > this.markers.length - 1) {\n this.currentMarkerLocation = 0;\n } else {\n this.currentMarkerLocation++;\n }\n this.player.currentTime = this.markers[this.currentMarkerLocation]['time'];\n }\n\n render() {\n if (!this.player) return '';\n if (!this.player?.media?.textTracks?.length || this.player?.media?.textTracks?.length === 0) return '';\n\n const presets = this.player.config.preset;\n const placeholder = presets.search?.placeholder;\n\n return (\n <presto-search-bar-ui\n value={this.value}\n hasNavigation={this.markers?.length > 1}\n placeholder={placeholder}\n onNextNav={() => this.onNextNav()}\n onPreviousNav={() => this.onPreviousNav()}\n onSearch={e => this.onSearch(e)}\n onFocusChange={focus => this.onFocusChange(focus)}\n ></presto-search-bar-ui>\n );\n }\n}\n",".skin-stacked {\n .plyr__controls {\n flex-wrap: wrap;\n }\n\n .presto-player-progress__marker {\n transform: scale(0.75);\n }\n\n .plyr__controls {\n justify-content: flex-start;\n }\n\n .plyr__controls__item.plyr__progress__container {\n order: -1;\n flex: 1 0 100%;\n }\n\n .plyr__controls__item.plyr__progress__container + :not(.plyr__time),\n .plyr__controls__item.plyr__progress__container + .plyr__time + * {\n margin-left: auto;\n }\n\n .plyr__controls .plyr__controls__item:first-child {\n margin: 0;\n }\n\n .plyr__progress {\n height: 19px;\n display: flex;\n align-items: center;\n // --plyr-range-track-height: 3px;\n .plyr__progress__buffer {\n height: 3px;\n transition: all 0.25s ease;\n position: absolute;\n top: calc(50% + 1px);\n }\n\n input[type='range'] {\n &::-moz-range-track {\n height: 3px;\n transition: all 0.25s ease;\n }\n &::-webkit-slider-runnable-track {\n height: 3px;\n transition: all 0.25s ease;\n }\n &::-ms-track {\n height: 3px;\n transition: all 0.25s ease;\n }\n &::-ms-fill-upper {\n height: 3px;\n transition: all 0.25s ease;\n }\n &::-ms-fill-lower {\n height: 3px;\n transition: height 0.25s ease;\n }\n\n &::-webkit-slider-thumb {\n visibility: hidden;\n opacity: 0;\n transition: opacity 0.25s ease;\n }\n &::-moz-range-thumb {\n visibility: hidden;\n opacity: 0;\n transition: opacity 0.25s ease;\n }\n &::-ms-thumb {\n visibility: hidden;\n opacity: 0;\n transition: opacity 0.25s ease;\n }\n }\n }\n\n .plyr__progress__container:hover {\n .presto-player-progress__marker {\n transform: scale(1);\n }\n .plyr__progress {\n .plyr__progress__buffer {\n height: 5px;\n top: calc(50%);\n }\n // --plyr-range-track-height: 5px;\n input[type='range'] {\n overflow: visible;\n &::-moz-range-track {\n height: 5px;\n }\n &::-webkit-slider-runnable-track {\n height: 5px;\n }\n &::-ms-track {\n height: 5px;\n }\n &::-ms-fill-upper {\n height: 5px;\n }\n &::-ms-fill-lower {\n height: 5px;\n }\n &::-webkit-slider-thumb {\n visibility: visible;\n opacity: 1;\n }\n &::-moz-range-thumb {\n visibility: visible;\n opacity: 1;\n }\n &::-ms-thumb {\n visibility: visible;\n opacity: 1;\n }\n }\n }\n }\n}\n","import { Component, Host, h } from '@stencil/core';\n\n@Component({\n tag: 'presto-stacked-skin',\n styleUrl: 'presto-stacked-skin.scss',\n shadow: false,\n})\nexport class PrestoStackedSkin {\n render() {\n return (\n <Host>\n <slot></slot>\n </Host>\n );\n }\n}\n",":host {\n display: block;\n}\n","import { Component, h, Prop } from '@stencil/core';\nimport { isAndroidWebView } from '../../../../util';\n\n@Component({\n tag: 'presto-vimeo',\n styleUrl: 'presto-vimeo.css',\n shadow: false,\n})\nexport class PrestoVimeo {\n @Prop() src: string;\n @Prop() poster: string;\n @Prop() player: any;\n @Prop({ mutable: true }) getRef?: (elm?: HTMLIFrameElement) => void;\n\n getId(url) {\n const regExp = /^.*(vimeo\\.com\\/)((channels\\/[A-z]+\\/)|(groups\\/[A-z]+\\/videos\\/))?([0-9]+)/;\n const parseUrl = regExp.exec(url || '');\n return parseUrl?.[5] || '';\n }\n\n // Try to extract a hash for private videos from the URL\n parseHash(url) {\n /* This regex matches a hexadecimal hash if given in any of these forms:\n * - [https://player.]vimeo.com/video/{id}/{hash}[?params]\n * - [https://player.]vimeo.com/video/{id}?h={hash}[¶ms]\n * - [https://player.]vimeo.com/video/{id}?[params]&h={hash}\n * - video/{id}/{hash}\n * If matched, the hash is available in the named group `hash`\n */\n const regex = /^.*(?:vimeo.com\\/|video\\/)(?:\\d+)(?:\\?.*\\&*h=|\\/)+(?<hash>[\\d,a-f]+)/;\n const found = url.match(regex);\n\n if (found) {\n return found.groups.hash;\n }\n\n return null;\n }\n\n render() {\n if (!this.src) {\n return;\n }\n\n /*\n Our player is not working on Android WebView.\n https://github.com/prestomade/presto-player/issues/124\n */\n if (isAndroidWebView()) {\n return (\n <div class=\"presto-iframe-fallback-container\">\n <iframe\n src={`https://player.vimeo.com/video/${this.getId(this.src)}?h=${this.parseHash(\n this.src,\n )}&loop=false&byline=false&portrait=false&title=false&speed=true&transparent=0&gesture=media`}\n allowFullScreen\n allowTransparency\n allow=\"autoplay\"\n style={{ width: '100%' }}\n class=\"presto-fallback-iframe\"\n ></iframe>\n </div>\n );\n }\n\n return (\n <div\n class=\"plyr__video-embed\"\n part=\"embed\"\n ref={this.getRef}\n data-plyr-provider=\"vimeo\"\n data-plyr-embed-id={this.getId(this.src)}\n data-plyr-embed-hash={this.parseHash(this.src)}\n ></div>\n );\n }\n}\n",":host {\n display: block;\n}\n\n.fallback-container {\n position: relative;\n padding-bottom: 56.25%;\n padding-top: 30px;\n height: 0;\n overflow: hidden;\n}\n.fallback-container iframe,\n.fallback-container object,\n.fallback-container embed {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n/** make sure the height applies */\n@supports not (aspect-ratio: 16/9) {\n .plyr__video-embed,\n .plyr__video-wrapper--fixed-ratio {\n height: 0 !important;\n padding-bottom: 56.25%;\n position: relative;\n }\n}\n","import { Component, Prop, h, Event, EventEmitter, Watch, State } from '@stencil/core';\nimport { isIOS } from '../../../../util';\n@Component({\n tag: 'presto-youtube',\n styleUrl: 'presto-youtube.css',\n shadow: false,\n})\nexport class PrestoYoutube {\n @Prop() src: string;\n @Prop({ mutable: true }) poster: string;\n @Prop({ mutable: true }) lazyLoad: boolean;\n @Prop() player: any;\n @Prop({ mutable: true }) getRef?: (elm?: HTMLIFrameElement | HTMLVideoElement | HTMLDivElement) => void;\n\n /**\n * Events\n */\n @Event() reload: EventEmitter<string>;\n\n /**\n * State\n */\n @State() reloadPlayer: boolean;\n @State() isWebView: boolean;\n\n /**\n * When player is set, do ratio and fixes\n * @returns\n */\n @Watch('player')\n handlePlayerChange() {\n if (!this.player) {\n return;\n }\n\n this.fixes();\n this.setPoster();\n }\n\n // fixes issue where youtube can sometimes can be muted if played before load\n fixes() {\n this.player.once('statechange', e => {\n // only playing\n if (e.detail.code !== 1) {\n return;\n }\n // not autoplay\n if (e?.detail?.plyr?.config?.blockAttributes?.mutedPreview?.enabled) {\n return;\n }\n // unmute\n this.player.muted = false;\n });\n }\n\n // get id from youtube url\n getId(url) {\n const regExp = /^.*(youtu.be\\/|v\\/|u\\/\\w\\/|embed\\/|watch\\?v=|&v=)([^#&?]*).*/;\n const match = (url || '').match(regExp);\n return match && match?.[2]?.length === 11 ? match[2] : null;\n }\n\n // load player\n loadPlayer() {\n this.lazyLoad = false;\n this.reloadPlayer = true;\n }\n\n // wait for component to update before reloading\n componentDidRender() {\n if (this.reloadPlayer) {\n this.reloadPlayer = false;\n this.reload.emit('play');\n }\n }\n\n /**\n * detect if we're in a webview browser\n */\n setWebView() {\n // @ts-ignore\n let standalone = window.navigator?.standalone,\n userAgent = window.navigator.userAgent.toLowerCase(),\n safari = /safari/.test(userAgent),\n ios = /iphone|ipod|ipad/.test(userAgent);\n\n if (ios) {\n // ios webview\n this.isWebView = !standalone && !safari;\n } else {\n // android webview\n this.isWebView = userAgent.includes('wv');\n }\n }\n\n // Load image avoiding xhr/fetch CORS issues. \n // Server status can't be obtained this way unfortunately, so this uses \"naturalWidth\" to determine if the image has loaded/\n loadImage(src, minWidth = 1) {\n return new Promise((resolve, reject) => {\n const image = new Image();\n \n const handler = () => {\n delete image.onload;\n delete image.onerror;\n (image.naturalWidth >= minWidth ? resolve : reject)(src);\n };\n \n Object.assign(image, { onload: handler, onerror: handler, src });\n });\n }\n\n setPoster() {\n if (!this.player.poster) {\n let posterSrc = (s) => `https://i.ytimg.com/vi/${this.getId(this.src)}/${s}default.jpg`;\n\n this.loadImage(posterSrc('maxres'), 121) // 480p padded 4:3\n .catch(() => this.loadImage(posterSrc('sd'), 121)) // 360p padded 4:3. Always exists\n .catch(() => this.loadImage(posterSrc('hq'), 121)) // 360p padded 4:3. Always exists\n .then((image:string) => this.player.poster = image )\n .catch(() => {});\n }\n }\n\n // don't lazy load on iOS\n componentWillLoad() {\n this.setWebView();\n if (this.lazyLoad && isIOS()) {\n this.lazyLoad = false;\n }\n }\n\n render() {\n if (this.isWebView) {\n return (\n <div class=\"fallback-container\">\n <iframe src={this.src} allowFullScreen allowtransparency allow=\"autoplay\"></iframe>\n </div>\n );\n }\n\n if (this.lazyLoad) {\n return (\n <div>\n <presto-video part=\"video\" getRef={this.getRef} src=\"\" provider=\"youtube\"></presto-video>\n <div class=\"presto-player__play-cover\" onClick={() => this.loadPlayer()}></div>\n </div>\n );\n }\n\n return <div class=\"plyr__video-embed\" part=\"embed\" ref={this.getRef} data-plyr-provider=\"youtube\" data-plyr-embed-id={this.getId(this.src)}></div>;\n }\n}\n"],"version":3}