Skip to content
Snippets Groups Projects
Commit 2fe50fe9 authored by Georgi's avatar Georgi
Browse files

[BUGFIX] Improve default template behavior

parent 1425f731
No related branches found
No related tags found
1 merge request!13Feature frontend filters
......@@ -121,6 +121,7 @@ plugin.tx_sgvimeo {
- Initialize the javascript modules in your main.js: `
new SgVideoLightbox();
SgVideo.initDefault();`
- If you want to recompile the JS with SGC, you must add `excludeFromQa: ['!**/Backend/**/*']` to your .sgc-config.js and also set your main extension in extensions to sg-vimeo `extensions: ['sg-vimeo']`
### Compiling SASS only without SGC
......
......@@ -80,7 +80,7 @@
<f:if condition="{filtersBottom} || {submitButton.position} == 'bottom' || {submitButton.position} == 'both'">
<div class="sg-video-filters sg-video-filters-bottom gap-2 d-flex align-items-baseline">
<f:for each="{filtersBottom}" as="filter">
<f:render partial="{filter.partial}" arguments="{name: filter.name, label: filter.label}" />
<f:render partial="{filter.partial}" arguments="{filter: filter, pluginId: pluginContentData.uid, filterValues: filterValues}" />
</f:for>
<f:if condition="{submitButton.position} == 'bottom' || {submitButton.position} == 'both'">
......
......@@ -26,7 +26,7 @@
import Notification from '@typo3/backend/notification.js';
const LicenseCheck = {
init () {
init() {
fetch(TYPO3.settings.ajaxUrls['sg_vimeo::checkLicense'])
.then((response) => {
if (response.ok) {
......
(()=>{var A=Object.create;var x=Object.defineProperty;var I=Object.getOwnPropertyDescriptor;var M=Object.getOwnPropertyNames;var U=Object.getPrototypeOf,$=Object.prototype.hasOwnProperty;var g=(n=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(n,{get:(e,t)=>(typeof require<"u"?require:e)[t]}):n)(function(n){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+n+'" is not supported')});var C=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var P=(n,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of M(e))!$.call(n,o)&&o!==t&&x(n,o,{get:()=>e[o],enumerable:!(i=I(e,o))||i.enumerable});return n};var k=(n,e,t)=>(t=n!=null?A(U(n)):{},P(e||!n||!n.__esModule?x(t,"default",{value:n,enumerable:!0}):t,n));var L=C((w,v)=>{(function(n){typeof w=="object"&&typeof v<"u"?v.exports=n():typeof define=="function"&&define.amd?define([],n):(typeof window<"u"||typeof window<"u"?window:typeof self<"u"?self:this).basicLightbox=n()})(function(){return function n(e,t,i){function o(s,d){if(!t[s]){if(!e[s]){var p=typeof g=="function"&&g;if(!d&&p)return p(s,!0);if(a)return a(s,!0);var h=new Error("Cannot find module '"+s+"'");throw h.code="MODULE_NOT_FOUND",h}var r=t[s]={exports:{}};e[s][0].call(r.exports,function(u){return o(e[s][1][u]||u)},r,r.exports,n,e,t,i)}return t[s].exports}for(var a=typeof g=="function"&&g,c=0;c<i.length;c++)o(i[c]);return o}({1:[function(n,e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.create=t.visible=void 0;var i=function(c){var s=arguments.length>1&&arguments[1]!==void 0&&arguments[1],d=document.createElement("div");return d.innerHTML=c.trim(),s===!0?d.children:d.firstChild},o=function(c,s){var d=c.children;return d.length===1&&d[0].tagName===s},a=function(c){return(c=c||document.querySelector(".basicLightbox"))!=null&&c.ownerDocument.body.contains(c)===!0};t.visible=a,t.create=function(c,s){var d=function(r,u){var m=i(`
<div class="basicLightbox `.concat(u.className,`">
<div class="basicLightbox__placeholder" role="dialog"></div>
</div>
`)),b=m.querySelector(".basicLightbox__placeholder");r.forEach(function(T){return b.appendChild(T)});var _=o(b,"IMG"),E=o(b,"VIDEO"),q=o(b,"IFRAME");return _===!0&&m.classList.add("basicLightbox--img"),E===!0&&m.classList.add("basicLightbox--video"),q===!0&&m.classList.add("basicLightbox--iframe"),m}(c=function(r){var u=typeof r=="string",m=r instanceof HTMLElement==1;if(u===!1&&m===!1)throw new Error("Content must be a DOM element/node or string");return u===!0?Array.from(i(r,!0)):r.tagName==="TEMPLATE"?[r.content.cloneNode(!0)]:Array.from(r.children)}(c),s=function(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if((r=Object.assign({},r)).closable==null&&(r.closable=!0),r.className==null&&(r.className=""),r.onShow==null&&(r.onShow=function(){}),r.onClose==null&&(r.onClose=function(){}),typeof r.closable!="boolean")throw new Error("Property `closable` must be a boolean");if(typeof r.className!="string")throw new Error("Property `className` must be a string");if(typeof r.onShow!="function")throw new Error("Property `onShow` must be a function");if(typeof r.onClose!="function")throw new Error("Property `onClose` must be a function");return r}(s)),p=function(r){return s.onClose(h)!==!1&&function(u,m){return u.classList.remove("basicLightbox--visible"),setTimeout(function(){return a(u)===!1||u.parentElement.removeChild(u),m()},410),!0}(d,function(){if(typeof r=="function")return r(h)})};s.closable===!0&&d.addEventListener("click",function(r){r.target===d&&p()});var h={element:function(){return d},visible:function(){return a(d)},show:function(r){return s.onShow(h)!==!1&&function(u,m){return document.body.appendChild(u),setTimeout(function(){requestAnimationFrame(function(){return u.classList.add("basicLightbox--visible"),m()})},10),!0}(d,function(){if(typeof r=="function")return r(h)})},close:p};return h}},{}]},{},[1])(1)})});var y=k(L()),l=class{constructor(){let e=document.querySelectorAll(".sg-video-item"),t=window.matchMedia("(max-width: 679px)").matches;e.forEach(i=>{(i.dataset.disableLightboxMobile==="1"&&t||i.dataset.disableLightbox==="1"&&!t)&&(i.classList.remove("sg-video-item"),i.addEventListener("click",l.disableLightbox.bind(this)))}),Array.prototype.forEach.call(document.querySelectorAll(".sg-video-item"),i=>{i.addEventListener("click",l.openLightbox)})}static openLightbox(e){var t,i;switch(e.preventDefault(),(i=(t=e.target.closest("a"))==null?void 0:t.dataset)==null?void 0:i.videoType){case"youtube":{l.openYouTubeLightBox(e);break}case"vimeo":{l.openVimeoLightBox(e);break}default:}}static disableLightbox(e){var t,i;switch(e.preventDefault(),(i=(t=e.target.closest("a"))==null?void 0:t.dataset)==null?void 0:i.videoType){case"youtube":{l.disableYouTubeLightbox(e);break}case"vimeo":{l.disableVimeoLightbox(e);break}default:}}static openVimeoLightBox(e){let t=e.target.closest(".sg-video-item").href;t=l.includeAdditionalUrlParameters(t,e.target.closest("a").dataset.additionalUrlParameters),t+="&autoplay=1&dnt=1",y.create(`<iframe class="sg-video-iframe sg-video-vimeo-iframe mfp-iframe" frameborder="0" allowfullscreen allow="autoplay; fullscreen *; picture-in-picture" src="${t}"></iframe>`,{closable:!0}).show()}static openYouTubeLightBox(e){let t=e.target.closest(".sg-video-item").href;t=`https://www.youtube-nocookie.com/embed/${l.getYouTubeVideoIdFromUrl(t)}`,t=l.includeAdditionalUrlParameters(t,e.target.closest("a").dataset.additionalUrlParameters),y.create(`
(() => {
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
}) : x)(function(x) {
if (typeof require !== "undefined")
return require.apply(this, arguments);
throw new Error('Dynamic require of "' + x + '" is not supported');
});
var __commonJS = (cb, mod) => function __require2() {
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
mod
));
// vendor/sgalinski/sg-vimeo/node_modules/basiclightbox/dist/basicLightbox.min.js
var require_basicLightbox_min = __commonJS({
"vendor/sgalinski/sg-vimeo/node_modules/basiclightbox/dist/basicLightbox.min.js"(exports, module) {
!function(e) {
if ("object" == typeof exports && "undefined" != typeof module)
module.exports = e();
else if ("function" == typeof define && define.amd)
define([], e);
else {
("undefined" != typeof window ? window : "undefined" != typeof window ? window : "undefined" != typeof self ? self : this).basicLightbox = e();
}
}(function() {
return function e(n, t, o) {
function r(c2, u) {
if (!t[c2]) {
if (!n[c2]) {
var s = "function" == typeof __require && __require;
if (!u && s)
return s(c2, true);
if (i)
return i(c2, true);
var a = new Error("Cannot find module '" + c2 + "'");
throw a.code = "MODULE_NOT_FOUND", a;
}
var l = t[c2] = { exports: {} };
n[c2][0].call(l.exports, function(e2) {
return r(n[c2][1][e2] || e2);
}, l, l.exports, e, n, t, o);
}
return t[c2].exports;
}
for (var i = "function" == typeof __require && __require, c = 0; c < o.length; c++)
r(o[c]);
return r;
}({ 1: [function(e, n, t) {
"use strict";
Object.defineProperty(t, "__esModule", { value: true }), t.create = t.visible = void 0;
var o = function(e2) {
var n2 = arguments.length > 1 && void 0 !== arguments[1] && arguments[1], t2 = document.createElement("div");
return t2.innerHTML = e2.trim(), true === n2 ? t2.children : t2.firstChild;
}, r = function(e2, n2) {
var t2 = e2.children;
return 1 === t2.length && t2[0].tagName === n2;
}, i = function(e2) {
return null != (e2 = e2 || document.querySelector(".basicLightbox")) && true === e2.ownerDocument.body.contains(e2);
};
t.visible = i;
t.create = function(e2, n2) {
var t2 = function(e3, n3) {
var t3 = o('\n <div class="basicLightbox '.concat(n3.className, '">\n <div class="basicLightbox__placeholder" role="dialog"></div>\n </div>\n ')), i2 = t3.querySelector(".basicLightbox__placeholder");
e3.forEach(function(e4) {
return i2.appendChild(e4);
});
var c2 = r(i2, "IMG"), u2 = r(i2, "VIDEO"), s = r(i2, "IFRAME");
return true === c2 && t3.classList.add("basicLightbox--img"), true === u2 && t3.classList.add("basicLightbox--video"), true === s && t3.classList.add("basicLightbox--iframe"), t3;
}(e2 = function(e3) {
var n3 = "string" == typeof e3, t3 = e3 instanceof HTMLElement == 1;
if (false === n3 && false === t3)
throw new Error("Content must be a DOM element/node or string");
return true === n3 ? Array.from(o(e3, true)) : "TEMPLATE" === e3.tagName ? [e3.content.cloneNode(true)] : Array.from(e3.children);
}(e2), n2 = function() {
var e3 = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
if (null == (e3 = Object.assign({}, e3)).closable && (e3.closable = true), null == e3.className && (e3.className = ""), null == e3.onShow && (e3.onShow = function() {
}), null == e3.onClose && (e3.onClose = function() {
}), "boolean" != typeof e3.closable)
throw new Error("Property `closable` must be a boolean");
if ("string" != typeof e3.className)
throw new Error("Property `className` must be a string");
if ("function" != typeof e3.onShow)
throw new Error("Property `onShow` must be a function");
if ("function" != typeof e3.onClose)
throw new Error("Property `onClose` must be a function");
return e3;
}(n2)), c = function(e3) {
return false !== n2.onClose(u) && function(e4, n3) {
return e4.classList.remove("basicLightbox--visible"), setTimeout(function() {
return false === i(e4) || e4.parentElement.removeChild(e4), n3();
}, 410), true;
}(t2, function() {
if ("function" == typeof e3)
return e3(u);
});
};
true === n2.closable && t2.addEventListener("click", function(e3) {
e3.target === t2 && c();
});
var u = { element: function() {
return t2;
}, visible: function() {
return i(t2);
}, show: function(e3) {
return false !== n2.onShow(u) && function(e4, n3) {
return document.body.appendChild(e4), setTimeout(function() {
requestAnimationFrame(function() {
return e4.classList.add("basicLightbox--visible"), n3();
});
}, 10), true;
}(t2, function() {
if ("function" == typeof e3)
return e3(u);
});
}, close: c };
return u;
};
}, {}] }, {}, [1])(1);
});
}
});
// vendor/sgalinski/sg-vimeo/Resources/Public/JavaScript/Modules/sgVideoLightbox.js
var BasicLightbox = __toESM(require_basicLightbox_min());
var SgVideoLightbox = class {
constructor() {
const videoItems = document.querySelectorAll(".sg-video-item");
const isMobile = window.matchMedia("(max-width: 679px)").matches;
videoItems.forEach((item) => {
if (item.dataset.disableLightboxMobile === "1" && isMobile || item.dataset.disableLightbox === "1" && !isMobile) {
item.classList.remove("sg-video-item");
item.addEventListener("click", SgVideoLightbox.disableLightbox.bind(this));
}
});
Array.prototype.forEach.call(document.querySelectorAll(".sg-video-item"), (element) => {
element.addEventListener("click", SgVideoLightbox.openLightbox);
});
}
static openLightbox(event) {
var _a, _b, _c, _d;
event.preventDefault();
const isShorts = ((_b = (_a = event.target.closest("a")) == null ? void 0 : _a.dataset) == null ? void 0 : _b.isShorts) === "1";
switch ((_d = (_c = event.target.closest("a")) == null ? void 0 : _c.dataset) == null ? void 0 : _d.videoType) {
case "youtube": {
SgVideoLightbox.openYouTubeLightBox(event, isShorts);
break;
}
case "vimeo": {
SgVideoLightbox.openVimeoLightBox(event);
break;
}
default:
}
}
static disableLightbox(event) {
var _a, _b, _c, _d;
event.preventDefault();
const isShorts = ((_b = (_a = event.target.closest("a")) == null ? void 0 : _a.dataset) == null ? void 0 : _b.isShorts) === "1";
switch ((_d = (_c = event.target.closest("a")) == null ? void 0 : _c.dataset) == null ? void 0 : _d.videoType) {
case "youtube": {
SgVideoLightbox.disableYouTubeLightbox(event, isShorts);
break;
}
case "vimeo": {
SgVideoLightbox.disableVimeoLightbox(event);
break;
}
default:
}
}
static openVimeoLightBox(event) {
let url = event.target.closest(".sg-video-item").href;
url = SgVideoLightbox.includeAdditionalUrlParameters(
url,
event.target.closest("a").dataset.additionalUrlParameters
);
url += "&autoplay=1&dnt=1";
const instance = BasicLightbox.create(
`<iframe class="sg-video-iframe sg-video-vimeo-iframe mfp-iframe" frameborder="0" allowfullscreen allow="autoplay; fullscreen *; picture-in-picture" src="${url}"></iframe>`,
{
closable: true
}
);
instance.show();
}
static openYouTubeLightBox(event, isShorts) {
let url = event.target.closest(".sg-video-item").href;
const videoId = SgVideoLightbox.getYouTubeVideoIdFromUrl(url);
url = `https://www.youtube-nocookie.com/embed/${videoId}`;
url = SgVideoLightbox.includeAdditionalUrlParameters(
url,
event.target.closest("a").dataset.additionalUrlParameters
);
const iframeClass = isShorts ? "sg-video-iframe sg-video-youtube-iframe sg-video-youtube-shorts-iframe" : "sg-video-iframe sg-video-youtube-iframe";
const instance = BasicLightbox.create(
`
<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
class="sg-video-iframe sg-video-youtube-iframe" src="${t}"></iframe>
`,{closable:!0}).show()}static disableYouTubeLightbox(e){e.preventDefault();let t=e.currentTarget;t.classList.add("no-lightbox");let i=l.includeAdditionalUrlParameters(l.getYouTubeVideoIdFromUrl(t.href),t.dataset.additionalUrlParameters),o=t.querySelector(".sg-video__image"),a=o.offsetHeight,c=o.offsetWidth,s=document.createElement("iframe");s.width=c,s.height=a,s.style.border="none",s.allowFullscreen=!0,s.allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",s.src=`https://www.youtube-nocookie.com/embed/${i}`,o.parentElement.nodeName.toLowerCase()==="picture"?o.parentElement.replaceWith(s):o.replaceWith(s)}static disableVimeoLightbox(e){e.preventDefault();let t=e.currentTarget.closest(".sg-video__item"),i=t.querySelector("a");t.classList.add("no-lightbox");let o=l.includeAdditionalUrlParameters(i.href,i.dataset.additionalUrlParameters),a=t.querySelector(".sg-video__image"),c=a==null?void 0:a.clientWidth,s=a==null?void 0:a.clientHeight,d=document.createRange().createContextualFragment(`<div class="sg-video-item sg-card-shadow" style="height: ${s}px; width: ${c}px;"><div class="embed-container" style="padding-bottom: calc(${s} / ${c} * 100%);"><iframe width="${c}" height="${s}" src="${o}&dnt=1" frameborder="0" allow="autoplay; fullscreen; picture-in-picture" allowfullscreen></iframe></div></div>`);a==null||a.replaceWith(d)}static getVimeoVideoIdFromUrl(e){return/^.*(vimeo\.com\/)((channels\/[A-z]+\/)|(groups\/[A-z]+\/videos\/))?(\d+)/.exec(e)[5]}static getYouTubeVideoIdFromUrl(e){let t=e.match(/watch\?v=(.*)&list=(.*)/);if(!t&&(t=e.match(/watch\?v=([^&?]*)/),!t))return null;let[,i]=t,o="?";return t[2]&&(i+=`?list=${t[2]}`,o="&"),`${i+o}autoplay=1&rel=0`}static includeAdditionalUrlParameters(e,t=""){if(!e)return"";if(!t)return e;let i=t,o=i.charAt(0)==="?",a=i.charAt(0)==="&";return(o||a)&&(i=i.slice(1)),e.includes("?")?`${e}&${i}`:`${e}?${i}`}};var f=class{constructor(e,t){this.settings=t,this.dom={list:e,listItems:e.querySelectorAll(".sg-video__item")},this.active=0,this.dom.listItems.forEach((i,o)=>{this.setupReadMore(o)}),this.settings.disableMinHeight||this.checkImageSizes()}static initDefault(){document.querySelectorAll(".sg-video__list--default").forEach(e=>{new f(e,{textSelector:".sg-video__bodytext",descriptionSelector:".sg-video__description",type:"default"})}),document.querySelectorAll(".sg-video__list--rows").forEach(e=>{new f(e,{textSelector:".sg-video__description",descriptionSelector:".sg-video__description",disableMinHeight:!0})}),document.querySelectorAll(".sg-video__list--playlist").forEach(e=>{new f(e,{textSelector:".sg-video__description",descriptionSelector:".sg-video__description",disableMinHeight:!0})}),document.querySelectorAll(".sg-video__highlight").forEach(e=>{new f(e,{textSelector:".sg-video__bodytext",descriptionSelector:".sg-video__description",disableMinHeight:!0})}),document.querySelectorAll(".sg-video--single").forEach(e=>{new f(e,{textSelector:".sg-video__description",descriptionSelector:".sg-video__description"})})}checkImageSizes(){let e=0,t=[];this.dom.listItems.forEach(i=>{let o=i.querySelector("img");o&&o.height>e&&(e=o.height),t.push(o)}),t.forEach(i=>{i.style.minHeight=`${e}px`})}setupReadMore(e){let t=this.dom.listItems[e],i=t.querySelector(".sg-video__read-more"),o=t.querySelector(this.settings.textSelector);if(!o){i&&i.classList.add("disabled");return}if(!!i){if(f.isTextTruncated(o,this.settings)){i.classList.add("disabled");return}i.addEventListener("click",()=>this.showText(e))}}showText(e){let t=this.dom.listItems[e];if(t.classList.contains("expanded")){this.active-=1,this.hideText(e);return}this.active+=1;let i=t.querySelector(".sg-video__read-more"),o=t.querySelector(this.settings.textSelector),a=o.matches(this.settings.descriptionSelector)?o:o.querySelector(this.settings.descriptionSelector);t.classList.add("expanded"),o.classList.add("expanded"),a.classList.add("expanded"),i.classList.add("expanded"),i.querySelector(".sg-video__read-more-text").textContent=i.dataset.buttonCloseText}hideText(e){let t=this.dom.listItems[e],i=t.querySelector(".sg-video__read-more"),o=t.querySelector(this.settings.textSelector),a=o.matches(this.settings.descriptionSelector)?o:o.querySelector(this.settings.descriptionSelector);o.classList.remove("expanded"),a.classList.remove("expanded"),i.classList.remove("expanded"),i.querySelector(".sg-video__read-more-text").textContent=i.dataset.buttonOpenText,setTimeout(()=>{this.settings.type==="default"&&this.active===0&&this.dom.listItems.forEach(c=>{c.style.height="",c.style.zIndex=""}),t.classList.remove("expanded")},200)}static isTextTruncated(e,t){let i=e.matches(t.descriptionSelector)?e:e.querySelector(t.descriptionSelector);return i&&i.scrollHeight<=i.clientHeight}};function S(){new l,f.initDefault()}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",S):S();})();
class="${iframeClass}" src="${url}"></iframe>
`,
{
closable: true
}
);
instance.show();
}
static disableYouTubeLightbox(event, isShorts) {
event.preventDefault();
const item = event.currentTarget;
item.classList.add("no-lightbox");
const videoId = SgVideoLightbox.includeAdditionalUrlParameters(
SgVideoLightbox.getYouTubeVideoIdFromUrl(item.href),
item.dataset.additionalUrlParameters
);
const videoImage = item.querySelector(".sg-video__image");
const originalWidth = videoImage.offsetWidth;
const originalHeight = videoImage.offsetHeight;
let iframeWidth = originalWidth;
let iframeHeight = originalHeight;
if (isShorts) {
iframeWidth = originalWidth;
iframeHeight = Math.round(iframeWidth / 9 * 16);
}
const iframe = document.createElement("iframe");
iframe.width = iframeWidth;
iframe.height = iframeHeight;
iframe.style.border = "none";
iframe.allowFullscreen = true;
iframe.classList.add(isShorts ? "sg-video-youtube-shorts-iframe" : "");
iframe.allow = "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture";
iframe.src = `https://www.youtube-nocookie.com/embed/${videoId}`;
if (videoImage.parentElement.nodeName.toLowerCase() === "picture") {
videoImage.parentElement.replaceWith(iframe);
} else {
videoImage.replaceWith(iframe);
}
}
static disableVimeoLightbox(event) {
event.preventDefault();
const item = event.currentTarget.closest(".sg-video__item");
const link = item.querySelector("a");
item.classList.add("no-lightbox");
const iframeUrl = SgVideoLightbox.includeAdditionalUrlParameters(
link.href,
link.dataset.additionalUrlParameters
);
const thumbnailElement = item.querySelector(".sg-video__image");
const width = thumbnailElement == null ? void 0 : thumbnailElement.clientWidth;
const height = thumbnailElement == null ? void 0 : thumbnailElement.clientHeight;
const nodes = document.createRange().createContextualFragment(
`<div class="sg-video-item sg-card-shadow" style="height: ${height}px; width: ${width}px;"><div class="embed-container" style="padding-bottom: calc(${height} / ${width} * 100%);"><iframe width="${width}" height="${height}" src="${iframeUrl}&dnt=1" frameborder="0" allow="autoplay; fullscreen; picture-in-picture" allowfullscreen></iframe></div></div>`
);
thumbnailElement == null ? void 0 : thumbnailElement.replaceWith(nodes);
}
static getVimeoVideoIdFromUrl(url) {
const regExp = /^.*(vimeo\.com\/)((channels\/[A-z]+\/)|(groups\/[A-z]+\/videos\/))?(\d+)/;
const parseUrl = regExp.exec(url);
return parseUrl[5];
}
static getYouTubeVideoIdFromUrl(url) {
const matches = url.match(/watch\?v=([^&?]*)(?:&list=([^&?]*))?|shorts\/([^&/?]+)/);
if (!matches) {
return null;
}
const videoId = matches[1] || matches[3];
const listParameter = matches[2] ? `?list=${matches[2]}` : "";
const autoplayParameters = listParameter ? "&autoplay=1&rel=0" : "?autoplay=1&rel=0";
return `${videoId}${listParameter}${autoplayParameters}`;
}
static includeAdditionalUrlParameters(url, _additionalUrlParameters = "") {
if (!url) {
return "";
}
if (!_additionalUrlParameters) {
return url;
}
let additionalUrlParameters = _additionalUrlParameters;
const beginsWithQuestionMark = additionalUrlParameters.charAt(0) === "?";
const beginsWithAmpersand = additionalUrlParameters.charAt(0) === "&";
if (beginsWithQuestionMark || beginsWithAmpersand) {
additionalUrlParameters = additionalUrlParameters.slice(1);
}
return url.includes("?") ? `${url}&${additionalUrlParameters}` : `${url}?${additionalUrlParameters}`;
}
};
// vendor/sgalinski/sg-vimeo/Resources/Public/JavaScript/Modules/sgVideo.js
var SgVideo = class {
constructor(element, settings) {
this.settings = settings;
this.dom = {
list: element,
listItems: element.querySelectorAll(".sg-video__item")
};
this.active = 0;
this.dom.listItems.forEach((item, index) => {
this.setupReadMore(index);
});
if (!this.settings.disableMinHeight) {
this.checkImageSizes();
}
}
static initDefault() {
document.querySelectorAll(".sg-video__list--default").forEach((item) => {
new SgVideo(item, {
textSelector: ".sg-video__bodytext",
descriptionSelector: ".sg-video__description",
type: "default"
});
});
document.querySelectorAll(".sg-video__list--rows").forEach((item) => {
new SgVideo(item, {
textSelector: ".sg-video__description",
descriptionSelector: ".sg-video__description",
disableMinHeight: true
});
});
document.querySelectorAll(".sg-video__list--playlist").forEach((item) => {
new SgVideo(item, {
textSelector: ".sg-video__description",
descriptionSelector: ".sg-video__description",
disableMinHeight: true
});
});
document.querySelectorAll(".sg-video__highlight").forEach((item) => {
new SgVideo(item, {
textSelector: ".sg-video__bodytext",
descriptionSelector: ".sg-video__description",
disableMinHeight: true
});
});
document.querySelectorAll(".sg-video--single").forEach((item) => {
new SgVideo(item, {
textSelector: ".sg-video__description",
descriptionSelector: ".sg-video__description"
});
});
}
checkImageSizes() {
let highestValue = 0;
const images = [];
this.dom.listItems.forEach((item) => {
const image = item.querySelector("img");
if (image && image.height > highestValue) {
highestValue = image.height;
}
images.push(image);
});
images.forEach((image) => {
image.style.minHeight = `${highestValue}px`;
});
}
setupReadMore(index) {
const item = this.dom.listItems[index];
const button = item.querySelector(".sg-video__read-more");
const text = item.querySelector(this.settings.textSelector);
if (!text) {
if (button) {
button.classList.add("disabled");
}
return;
}
if (!button) {
return;
}
if (SgVideo.isTextTruncated(text, this.settings)) {
button.classList.add("disabled");
return;
}
button.addEventListener("click", () => this.showText(index));
}
showText(index) {
const item = this.dom.listItems[index];
if (item.classList.contains("expanded")) {
this.active -= 1;
this.hideText(index);
return;
}
this.active += 1;
const button = item.querySelector(".sg-video__read-more");
const text = item.querySelector(this.settings.textSelector);
const description = text.matches(this.settings.descriptionSelector) ? text : text.querySelector(this.settings.descriptionSelector);
item.classList.add("expanded");
text.classList.add("expanded");
description.classList.add("expanded");
button.classList.add("expanded");
button.querySelector(".sg-video__read-more-text").textContent = button.dataset.buttonCloseText;
}
hideText(index) {
const item = this.dom.listItems[index];
const button = item.querySelector(".sg-video__read-more");
const text = item.querySelector(this.settings.textSelector);
const description = text.matches(this.settings.descriptionSelector) ? text : text.querySelector(this.settings.descriptionSelector);
text.classList.remove("expanded");
description.classList.remove("expanded");
button.classList.remove("expanded");
button.querySelector(".sg-video__read-more-text").textContent = button.dataset.buttonOpenText;
setTimeout(() => {
if (this.settings.type === "default" && this.active === 0) {
this.dom.listItems.forEach((_item) => {
_item.style.height = "";
_item.style.zIndex = "";
});
}
item.classList.remove("expanded");
}, 200);
}
static isTextTruncated(element, settings) {
const descriptionElement = element.matches(settings.descriptionSelector) ? element : element.querySelector(settings.descriptionSelector);
return descriptionElement && descriptionElement.scrollHeight <= descriptionElement.clientHeight;
}
};
// vendor/sgalinski/sg-vimeo/Resources/Public/JavaScript/main.js
function main() {
new SgVideoLightbox();
SgVideo.initDefault();
}
if (document.readyState === "loading") {
document.addEventListener("DOMContentLoaded", main);
} else {
main();
}
})();
//# sourceMappingURL=main.bundled.min.js.map
......@@ -105,7 +105,9 @@ export default class SgVideoLightbox {
event.target.closest('a').dataset.additionalUrlParameters,
);
const iframeClass = isShorts ? 'sg-video-iframe sg-video-youtube-iframe sg-video-youtube-shorts-iframe' : 'sg-video-iframe sg-video-youtube-iframe';
const iframeClass = isShorts
? 'sg-video-iframe sg-video-youtube-iframe sg-video-youtube-shorts-iframe'
: 'sg-video-iframe sg-video-youtube-iframe';
const instance = BasicLightbox.create(
`
......@@ -154,7 +156,8 @@ export default class SgVideoLightbox {
iframe.style.border = 'none';
iframe.allowFullscreen = true;
iframe.classList.add(isShorts ? 'sg-video-youtube-shorts-iframe' : '');
iframe.allow = 'accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture';
iframe.allow =
'accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture';
iframe.src = `https://www.youtube-nocookie.com/embed/${videoId}`;
if (videoImage.parentElement.nodeName.toLowerCase() === 'picture') {
......@@ -221,17 +224,17 @@ export default class SgVideoLightbox {
*/
static getYouTubeVideoIdFromUrl(url) {
// Match standard YouTube URL or Shorts URL
const matches = url.match(/watch\?v=([^&?]*)(?:&list=([^&?]*))?|shorts\/([^&?/]+)/);
const matches = url.match(/watch\?v=([^&?]*)(?:&list=([^&?]*))?|shorts\/([^&/?]+)/);
if (!matches) {
return null;
}
// Determine the video ID and construct the appropriate URL
const videoId = matches[1] || matches[3];
const listParam = matches[2] ? `?list=${matches[2]}` : '';
const autoplayParams = listParam ? '&autoplay=1&rel=0' : '?autoplay=1&rel=0';
const listParameter = matches[2] ? `?list=${matches[2]}` : '';
const autoplayParameters = listParameter ? '&autoplay=1&rel=0' : '?autoplay=1&rel=0';
return `${videoId}${listParam}${autoplayParams}`;
return `${videoId}${listParameter}${autoplayParameters}`;
}
/**
......
@import '../Modules/Bootstrap5/sg-video';
@use '../Modules/Bootstrap5/sg-video';
......@@ -14,9 +14,9 @@ $basicLightbox__timing: ease !default;
}
$sg-video-icon-solid-play: "data:image/svg+xml,%3csvg fill='white' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3e%3cpath d='M424.4 214.7L72.4 6.6C43.8-10.3 0 6.1 0 47.9V464c0 37.5 40.7 60.1 72.4 41.3l352-208c31.4-18.5 31.5-64.1 0-82.6z'/%3e%3c/svg%3e"
448px 512px;
448px 512px;
$sg-video-icon-solid-chevron-down: "data:image/svg+xml,%3csvg fill='white' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3e%3cpath d='M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z'/%3e%3c/svg%3e"
448px 512px;
448px 512px;
$sg-video-item-heading-color: var(--sg-video-component-color-headline);
$sg-video-item-text-color: var(--sg-video-component-color-foreground);
......@@ -62,6 +62,14 @@ $sg-video-screen-xs-min: $sg-video-screen-xs;
width: 100%;
height: auto;
transition: transform $sg-video-base-transition-timing ease;
&--shorts {
height: auto;
aspect-ratio: 9 / 16;
object-fit: cover;
max-height: 900px;
}
}
&__image-container {
......@@ -80,7 +88,7 @@ $sg-video-screen-xs-min: $sg-video-screen-xs;
transform: translate(-50%, -50%) scale(0.8);
opacity: 0.8;
transition: opacity $sg-video-base-transition-timing,
transform $sg-video-base-transition-timing;
transform $sg-video-base-transition-timing;
z-index: 9;
text-shadow: -1px 4px 27px rgba(0, 0, 0, 0.5);
}
......@@ -148,6 +156,7 @@ $sg-video-screen-xs-min: $sg-video-screen-xs;
&__list {
margin-bottom: 0;
list-style: none;
padding-left: 0;
}
&__highlight {
......@@ -477,9 +486,11 @@ iframe.sg-video-iframe {
aspect-ratio: 16/9;
}
.tx-sg-youtube-filters {
.sg-video-filters {
gap: 10px;
display: flex;
flex-direction: row;
align-items: baseline;
}
@import 'Modules/sg-video';
@use 'Modules/sg-video';
:root{--sg-video-component-color-headline: #0a293b;--sg-video-component-color-foreground: #174566;--sg-video-component-color-background: none;--sg-video-component-color-link: #15415e;--sg-video-component-color-play-button: #fff;--sg-video-component-color-link--hover: #061924}.tx-sg-youtube{margin-bottom:20px}.tx-sg-youtube iframe{border:0}.tx-sg-vimeo{margin-bottom:20px}.tx-sg-vimeo iframe{border:0}.sg-video__image{width:100%;height:auto;transition:transform var(--sg-video-base-transition-timing, 0.3s) ease}.sg-video__image-container{position:relative;overflow:hidden;width:100%;color:var(--sg-video-component-color-play-button);display:block}.sg-video__image-container:not(.no-lightbox) svg{position:absolute;top:50%;left:50%;width:40px;height:50px;transform:translate(-50%, -50%) scale(0.8);opacity:.8;transition:opacity var(--sg-video-base-transition-timing, 0.3s),transform var(--sg-video-base-transition-timing, 0.3s);z-index:9;text-shadow:-1px 4px 27px rgba(0,0,0,.5)}.sg-video__image-container:hover,.sg-video__image-container:focus{text-decoration:none}.sg-video__image-container:hover .sg-video__image,.sg-video__image-container:focus .sg-video__image{transform:scale(1.1)}.sg-video__image-container:hover::after,.sg-video__image-container:focus::after{transform:translate(-50%, -50%) scale(1.1)}.sg-video__read-more{padding:10px 0;display:inline-block;cursor:pointer;width:100%;text-align:left;margin-top:auto;text-decoration:none;font-weight:700;text-transform:lowercase}.sg-video__bodytext{padding:10px 0;margin-top:auto;margin-bottom:auto;min-height:90px}@media(1200px){.sg-video__bodytext{padding:20px}}.sg-video__bodytext h3{color:var(--sg-video-component-color-headline);margin-top:0;padding-top:0}.sg-video__bodytext .sg-video__description{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.sg-video__bodytext .sg-video__description.expanded{-webkit-line-clamp:unset}.sg-video__item{box-shadow:0 0 7px rgba(var(--sg-video-box-shadow-rgb), 0.18);background:var(--sg-video-component-color-background)}.sg-video__list{margin-bottom:0;list-style:none}.sg-video__highlight .sg-video__item{display:flex;flex-direction:column}.sg-video__highlight .sg-video__image{-o-object-fit:scale-down;object-fit:scale-down}@media(min-width: 1200px){.sg-video__list-item--alt .sg-video__item{display:flex}.sg-video__list-item--alt .sg-video__image-container{width:50%}.sg-video__list-item--alt .sg-video__bodytext{width:50%;background:rgba(0,0,0,0);padding:0 5px 0 20px}}@media(min-width: 1200px){.sg-video--playlist{display:grid;gap:20px;grid-template-columns:70% auto;position:relative}}.sg-video__list--playlist{display:flex;flex-direction:row;position:relative}@media(min-width: 1200px){.sg-video__list--playlist>div{position:absolute;height:100%;width:100%;overflow-y:auto;flex-direction:column;flex-grow:1;justify-content:space-between}.sg-video__list--playlist>div .sg-video__list-item:not(:last-child){margin-bottom:15px}}.sg-video__list--playlist .sg-video__item{height:100%}.sg-video__list--playlist .sg-video__bodytext{padding:10px 0 0}.sg-video__list--playlist h3{font-size:1.3em}.sg-video__list-item{position:relative;margin:15px 10px}@media(min-width: 1200px){.sg-video__list-item{margin:auto}}@media(min-width: 1200px){.sg-video__list-item--alt{margin:0}}@media(max-width: 767.98px){.sg-video .sg-video__list--playlist{display:block}}.sg-video__list--default{display:flex;flex-wrap:wrap;margin:0 -10px}.sg-video__list--default>li{width:100%;margin:10px;display:flex;flex-direction:column}@media(min-width: 1200px){.sg-video__list--default>li{width:calc(33.3333% - 20px)}}.sg-video__list--default a{box-shadow:none}.sg-video__list--default .sg-video__bodytext{position:relative;display:block;overflow:hidden;padding:10px 0;transition:max-height var(--sg-video-base-transition-timing-fast, 0.1s)}.sg-video__list--default .sg-video__read-more{display:block;width:100%;text-align:left;margin-top:auto}.sg-video__list--default .sg-video__item{flex-grow:1}@media(max-width: var(--sg-video-mobile-breakpoint, 768px)-1px){.sg-video__list--default img{min-height:0 !important}}.sg-video__read-more{background:none;color:var(--sg-video-component-color-link);border:0}.sg-video__read-more:hover{color:var(--sg-video-component-color-link--hover)}.sg-video__read-more svg{display:inline-block;width:13px;height:10px;transition:transform var(--sg-video-base-transition-timing, 0.3s)}.sg-video__read-more.disabled{display:none}.sg-video__list--rows .sg-video__read-more.disabled{display:none !important}.sg-video__list--rows .sg-video__image{-o-object-fit:contain;object-fit:contain}@media(min-width: 992px){.sg-video__list--rows .sg-video__item{box-shadow:none;background-color:rgba(0,0,0,0);display:flex}.sg-video__list--rows .sg-video__image-container{float:left;clear:left;width:40.5%}.sg-video__list--rows .sg-video__image-container span{position:relative}}@media(min-width: 992px)and (min-width: 1200px){.sg-video__list--rows .sg-video__image-container{width:35%}}@media(min-width: 992px){.sg-video__list--rows .sg-video__bodytext{position:relative;box-shadow:0 0 7px rgba(var(--sg-video-box-shadow-rgb), 0.18);margin-left:auto;display:block;min-height:210px}}@media(min-width: 992px)and (min-width: 1200px){.sg-video__list--rows .sg-video__bodytext{width:65%;min-height:225px;padding-top:0;padding-left:20px}}@media(min-width: 992px){.sg-video__list--rows .sg-video__description{-webkit-line-clamp:5;transition:max-height var(--sg-video-base-transition-timing-fast, 0.1s)}}@media(min-width: 992px){.sg-video__list--rows .sg-video__list-item{margin-bottom:25px}}@media(min-width: 992px){.sg-video__list--rows .sg-video__read-more{display:block;padding:20px 0 0}}.sg-video__read-more.expanded .sg-video__read-more-arrow{transform:rotateX(180deg)}.sg-video-lightbox-wrapper{pointer-events:all;padding:0;margin:0}.no-lightbox svg{display:none}.plyr .sg-cookie-optin-iframe-consent{min-height:410px}.basicLightbox{position:fixed;display:flex;justify-content:center;align-items:center;top:0;left:0;width:100%;height:100vh;background:rgba(0,0,0,.8);opacity:.01;transition:opacity .4s ease;z-index:1000;will-change:opacity}.basicLightbox ::after{content:"";position:absolute;top:1.8rem;right:1.8rem;width:2em;height:2em;background-size:contain;background-image:url("data:image/svg+xml,%3Csvg width='90px' height='90px' viewBox='0 0 24 24' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill='%23ffffff' stroke='%23ffffff'%3E%3Cg id='SVGRepo_bgCarrier' stroke-width='0'%3E%3C/g%3E%3Cg id='SVGRepo_tracerCarrier' stroke-linecap='round' stroke-linejoin='round'%3E%3C/g%3E%3Cg id='SVGRepo_iconCarrier'%3E%3Ctitle%3EClose-Circle%3C/title%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg id='Close-Circle'%3E%3Crect id='Rectangle' fill-rule='nonzero' x='0' y='0' width='24' height='24'%3E%3C/rect%3E%3Ccircle id='Oval' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' cx='12' cy='12' r='9'%3E%3C/circle%3E%3Cline x1='14.1213' y1='9.87866' x2='9.8787' y2='14.1213' id='Path' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'%3E%3C/line%3E%3Cline x1='9.87866' y1='9.87866' x2='14.1213' y2='14.1213' id='Path' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'%3E%3C/line%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer}.basicLightbox--visible{opacity:1;pointer-events:auto}.basicLightbox__placeholder{max-width:100%;transform:scale(0.9);transition:transform .4s ease;z-index:1;will-change:transform}.basicLightbox__placeholder>img:first-child:last-child,.basicLightbox__placeholder>video:first-child:last-child,.basicLightbox__placeholder>iframe:first-child:last-child{display:block;position:absolute;top:0;right:0;bottom:0;left:0;margin:auto}.basicLightbox__placeholder>video:first-child:last-child,.basicLightbox__placeholder>iframe:first-child:last-child{pointer-events:auto}.basicLightbox__placeholder>img:first-child:last-child,.basicLightbox__placeholder>video:first-child:last-child{width:auto;height:auto}.basicLightbox--img .basicLightbox__placeholder,.basicLightbox--video .basicLightbox__placeholder,.basicLightbox--iframe .basicLightbox__placeholder{width:100%;height:100%;pointer-events:none}.basicLightbox--visible .basicLightbox__placeholder{transform:scale(1)}iframe.sg-video-iframe{width:100%;height:auto;max-width:900px;aspect-ratio:16/9}
\ No newline at end of file
:root{--sg-video-component-color-headline: #0a293b;--sg-video-component-color-foreground: #174566;--sg-video-component-color-background: none;--sg-video-component-color-link: #15415e;--sg-video-component-color-play-button: #fff;--sg-video-component-color-link--hover: #061924}.tx-sg-youtube{margin-bottom:20px}.tx-sg-youtube iframe{border:0}.tx-sg-vimeo{margin-bottom:20px}.tx-sg-vimeo iframe{border:0}.sg-video__image{width:100%;height:auto;transition:transform var(--sg-video-base-transition-timing, 0.3s) ease}.sg-video__image--shorts{height:auto;aspect-ratio:9/16;object-fit:cover;max-height:900px}.sg-video__image-container{position:relative;overflow:hidden;width:100%;color:var(--sg-video-component-color-play-button);display:block}.sg-video__image-container:not(.no-lightbox) svg{position:absolute;top:50%;left:50%;width:40px;height:50px;transform:translate(-50%, -50%) scale(0.8);opacity:.8;transition:opacity var(--sg-video-base-transition-timing, 0.3s),transform var(--sg-video-base-transition-timing, 0.3s);z-index:9;text-shadow:-1px 4px 27px rgba(0,0,0,.5)}.sg-video__image-container:hover,.sg-video__image-container:focus{text-decoration:none}.sg-video__image-container:hover .sg-video__image,.sg-video__image-container:focus .sg-video__image{transform:scale(1.1)}.sg-video__image-container:hover::after,.sg-video__image-container:focus::after{transform:translate(-50%, -50%) scale(1.1)}.sg-video__read-more{padding:10px 0;display:inline-block;cursor:pointer;width:100%;text-align:left;margin-top:auto;text-decoration:none;font-weight:700;text-transform:lowercase}.sg-video__bodytext{padding:10px 0;margin-top:auto;margin-bottom:auto;min-height:90px}@media(1200px){.sg-video__bodytext{padding:20px}}.sg-video__bodytext h3{color:var(--sg-video-component-color-headline);margin-top:0;padding-top:0}.sg-video__bodytext .sg-video__description{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.sg-video__bodytext .sg-video__description.expanded{-webkit-line-clamp:unset}.sg-video__item{box-shadow:0 0 7px rgba(var(--sg-video-box-shadow-rgb), 0.18);background:var(--sg-video-component-color-background)}.sg-video__list{margin-bottom:0;list-style:none;padding-left:0}.sg-video__highlight .sg-video__item{display:flex;flex-direction:column}.sg-video__highlight .sg-video__image{object-fit:scale-down}@media(min-width: 1200px){.sg-video__list-item--alt .sg-video__item{display:flex}.sg-video__list-item--alt .sg-video__image-container{width:50%}.sg-video__list-item--alt .sg-video__bodytext{width:50%;background:rgba(0,0,0,0);padding:0 5px 0 20px}}@media(min-width: 1200px){.sg-video--playlist{display:grid;gap:20px;grid-template-columns:70% auto;position:relative}}.sg-video__list--playlist{display:flex;flex-direction:row;position:relative}@media(min-width: 1200px){.sg-video__list--playlist>div{position:absolute;height:100%;width:100%;overflow-y:auto;flex-direction:column;flex-grow:1;justify-content:space-between}.sg-video__list--playlist>div .sg-video__list-item:not(:last-child){margin-bottom:15px}}.sg-video__list--playlist .sg-video__item{height:100%}.sg-video__list--playlist .sg-video__bodytext{padding:10px 0 0}.sg-video__list--playlist h3{font-size:1.3em}.sg-video__list-item{position:relative;margin:15px 10px}@media(min-width: 1200px){.sg-video__list-item{margin:auto}}@media(min-width: 1200px){.sg-video__list-item--alt{margin:0}}@media(max-width: 767.98px){.sg-video .sg-video__list--playlist{display:block}}.sg-video__list--default{display:flex;flex-wrap:wrap;margin:0 -10px}.sg-video__list--default>li{width:100%;margin:10px;display:flex;flex-direction:column}@media(min-width: 1200px){.sg-video__list--default>li{width:calc(33.3333% - 20px)}}.sg-video__list--default a{box-shadow:none}.sg-video__list--default .sg-video__bodytext{position:relative;display:block;overflow:hidden;padding:10px 0;transition:max-height var(--sg-video-base-transition-timing-fast, 0.1s)}.sg-video__list--default .sg-video__read-more{display:block;width:100%;text-align:left;margin-top:auto}.sg-video__list--default .sg-video__item{flex-grow:1}@media(max-width: var(--sg-video-mobile-breakpoint, 768px)-1px){.sg-video__list--default img{min-height:0 !important}}.sg-video__read-more{background:none;color:var(--sg-video-component-color-link);border:0}.sg-video__read-more:hover{color:var(--sg-video-component-color-link--hover)}.sg-video__read-more svg{display:inline-block;width:13px;height:10px;transition:transform var(--sg-video-base-transition-timing, 0.3s)}.sg-video__read-more.disabled{display:none}.sg-video__list--rows .sg-video__read-more.disabled{display:none !important}.sg-video__list--rows .sg-video__image{object-fit:contain}@media(min-width: 992px){.sg-video__list--rows .sg-video__item{box-shadow:none;background-color:rgba(0,0,0,0);display:flex}.sg-video__list--rows .sg-video__image-container{float:left;clear:left;width:40.5%}.sg-video__list--rows .sg-video__image-container span{position:relative}}@media(min-width: 992px)and (min-width: 1200px){.sg-video__list--rows .sg-video__image-container{width:35%}}@media(min-width: 992px){.sg-video__list--rows .sg-video__bodytext{position:relative;box-shadow:0 0 7px rgba(var(--sg-video-box-shadow-rgb), 0.18);margin-left:auto;display:block;min-height:210px}}@media(min-width: 992px)and (min-width: 1200px){.sg-video__list--rows .sg-video__bodytext{width:65%;min-height:225px;padding-top:0;padding-left:20px}}@media(min-width: 992px){.sg-video__list--rows .sg-video__description{-webkit-line-clamp:5;transition:max-height var(--sg-video-base-transition-timing-fast, 0.1s)}.sg-video__list--rows .sg-video__list-item{margin-bottom:25px}.sg-video__list--rows .sg-video__read-more{display:block;padding:20px 0 0}}.sg-video__read-more.expanded .sg-video__read-more-arrow{transform:rotateX(180deg)}.sg-video-lightbox-wrapper{pointer-events:all;padding:0;margin:0}.no-lightbox svg{display:none}.plyr .sg-cookie-optin-iframe-consent{min-height:410px}.basicLightbox{position:fixed;display:flex;justify-content:center;align-items:center;top:0;left:0;width:100%;height:100vh;background:rgba(0,0,0,.8);opacity:.01;transition:opacity .4s ease;z-index:1000;will-change:opacity}.basicLightbox ::after{content:"";position:absolute;top:1.8rem;right:1.8rem;width:2em;height:2em;background-size:contain;background-image:url("data:image/svg+xml,%3Csvg width='90px' height='90px' viewBox='0 0 24 24' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill='%23ffffff' stroke='%23ffffff'%3E%3Cg id='SVGRepo_bgCarrier' stroke-width='0'%3E%3C/g%3E%3Cg id='SVGRepo_tracerCarrier' stroke-linecap='round' stroke-linejoin='round'%3E%3C/g%3E%3Cg id='SVGRepo_iconCarrier'%3E%3Ctitle%3EClose-Circle%3C/title%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg id='Close-Circle'%3E%3Crect id='Rectangle' fill-rule='nonzero' x='0' y='0' width='24' height='24'%3E%3C/rect%3E%3Ccircle id='Oval' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' cx='12' cy='12' r='9'%3E%3C/circle%3E%3Cline x1='14.1213' y1='9.87866' x2='9.8787' y2='14.1213' id='Path' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'%3E%3C/line%3E%3Cline x1='9.87866' y1='9.87866' x2='14.1213' y2='14.1213' id='Path' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'%3E%3C/line%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer}.basicLightbox--visible{opacity:1;pointer-events:auto}.basicLightbox__placeholder{max-width:100%;transform:scale(0.9);transition:transform .4s ease;z-index:1;will-change:transform}.basicLightbox__placeholder>img:first-child:last-child,.basicLightbox__placeholder>video:first-child:last-child,.basicLightbox__placeholder>iframe:first-child:last-child{display:block;position:absolute;top:0;right:0;bottom:0;left:0;margin:auto}.basicLightbox__placeholder>video:first-child:last-child,.basicLightbox__placeholder>iframe:first-child:last-child{pointer-events:auto}.basicLightbox__placeholder>img:first-child:last-child,.basicLightbox__placeholder>video:first-child:last-child{width:auto;height:auto}.basicLightbox--img .basicLightbox__placeholder,.basicLightbox--video .basicLightbox__placeholder,.basicLightbox--iframe .basicLightbox__placeholder{width:100%;height:100%;pointer-events:none}.basicLightbox--visible .basicLightbox__placeholder{transform:scale(1)}iframe.sg-video-iframe{width:100%;height:auto;max-width:900px;aspect-ratio:16/9}.sg-video-filters{gap:10px;display:flex;flex-direction:row;align-items:baseline}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment