vendor: 21,419 bytes, lines 1-7
1 2/*! 3 * Bootstrap v5.0.2 (https://getbootstrap.com/) 4 * Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) 5 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) 6 */ 7!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).bootstrap=e()}(this,(function(){"use strict";const t={find:(t,e=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(e,t)),findOne:(t,e=document.documentElement)=>Element.prototype.querySelector.call(e,t),children:(t,e)=>[].concat(...t.children).filter(t=>t.matches(e)),parents(t,e){const i=[];let n=t.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&3!==n.nodeType;)n.matches(e)&&i.push(n),n=n.parentNode;return i},prev(t,e){let i=t.previousElementSibling;for(;i;){if(i.matches(e))return[i];i=i.previousElementSibling}return[]},next(t,e){let i=t.nextElementSibling;for(;i;){if(i.matches(e))return[i];i=i.nextElementSibling}return[]}},e=t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t},i=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let i=t.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i="#"+i.split("#")[1]),e=i&&"#"!==i?i.trim():null}return e},n=t=>{const e=i(t);return e&&document.querySelector(e)?e:null},s=t=>{const e=i(t);return e?document.querySelector(e):null},o=t=>{t.dispatchEvent(new Event("transitionend"))},r=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),a=e=>r(e)?e.jquery?e[0]:e:"string"==typeof e&&e.length>0?t.findOne(e):null,l=(t,e,i)=>{Object.keys(i).forEach(n=>{const s=i[n],o=e[n],a=o&&r(o)?"element":null==(l=o)?""+l:{}.toString.call(l).match(/\s([a-z]+)/i)[1].toLowerCase();var l;if(!new RegExp(s).test(a))throw new TypeError(`${t.toUpperCase()}: Option "${n}" provided type "${a}" but expected type "${s}".`)})},c=t=>!(!r(t)||0===t.getClientRects().length)&&"visible"===getComputedStyle(t).getPropertyValue("visibility"),h=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),d=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?d(t.parentNode):null},u=()=>{},f=t=>t.offsetHeight,p=()=>{const{jQuery:t}=window;return t&&!document.body.hasAttribute("data-bs-no-jquery")?t:null},m=[],g=()=>"rtl"===document.documentElement.dir,_=t=>{var e;e=()=>{const e=p();if(e){const i=t.NAME,n=e.fn[i];e.fn[i]=t.jQueryInterface,e.fn[i].Constructor=t,e.fn[i].noConflict=()=>(e.fn[i]=n,t.jQueryInterface)}},"loading"===document.readyState?(m.length||document.addEventListener("DOMContentLoaded",()=>{m.forEach(t=>t())}),m.push(e)):e()},b=t=>{"function"==typeof t&&t()},v=(t,e,i=!0)=>{if(!i)return void b(t);const n=(t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:i}=window.getComputedStyle(t);const n=Number.parseFloat(e),s=Number.parseFloat(i);return n||s?(e=e.split(",")[0],i=i.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(i))):0})(e)+5;let s=!1;const r=({target:i})=>{i===e&&(s=!0,e.removeEventListener("transitionend",r),b(t))};e.addEventListener("transitionend",r),setTimeout(()=>{s||o(e)},n)},y=(t,e,i,n)=>{let s=t.indexOf(e);if(-1===s)return t[!i&&n?t.length-1:0];const o=t.length;return s+=i?1:-1,n&&(s=(s+o)%o),t[Math.max(0,Math.min(s,o-1))]},w=/[^.]*(?=\..*)\.|.*/,E=/\..*/,A=/::\d+$/,T={};let O=1;const C={mouseenter:"mouseover",mouseleave:"mouseout"},k=/^(mouseenter|mouseleave)/i,L=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function x(t,e){return e&&`${e}::${O++}`||t.uidEvent||O++}function D(t){const e=x(t);return t.uidEvent=e,T[e]=T[e]||{},T[e]}function S(t,e,i=null){const n=Object.keys(t);for(let s=0,o=n.length;s<o;s++){const o=t[n[s]];if(o.originalHandler===e&&o.delegationSelector===i)return o}return null}function I(t,e,i){const n="string"==typeof e,s=n?i:e;let o=M(t);return L.has(o)||(o=t),[n,s,o]}function N(t,e,i,n,s){if("string"!=typeof e||!t)return;if(i||(i=n,n=null),k.test(e)){const t=t=>function(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};n?n=t(n):i=t(i)}const[o,r,a]=I(e,i,n),l=D(t),c=l[a]||(l[a]={}),h=S(c,r,o?i:null);if(h)return void(h.oneOff=h.oneOff&&s);const d=x(r,e.replace(w,"")),u=o?function(t,e,i){return function n(s){const o=t.querySelectorAll(e);for(let{target:r}=s;r&&r!==this;r=r.parentNode)for(let a=o.length;a--;)if(o[a]===r)return s.delegateTarget=r,n.oneOff&&P.off(t,s.type,e,i),i.apply(r,[s]);return null}}(t,i,n):function(t,e){return function i(n){return n.delegateTarget=t,i.oneOff&&P.off(t,n.type,e),e.apply(t,[n])}}(t,i);u.delegationSelector=o?i:null,u.originalHandler=r,u.oneOff=s,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function j(t,e,i,n,s){const o=S(e[i],n,s);o&&(t.removeEventListener(i,o,Boolean(s)),delete e[i][o.uidEvent])}function M(t){return t=t.replace(E,""),C[t]||t}const P={on(t,e,i,n){N(t,e,i,n,!1)},one(t,e,i,n){N(t,e,i,n,!0)},off(t,e,i,n){if("string"!=typeof e||!t)return;const[s,o,r]=I(e,i,n),a=r!==e,l=D(t),c=e.startsWith(".");if(void 0!==o){if(!l||!l[r])return;return void j(t,l,r,o,s?i:null)}c&&Object.keys(l).forEach(i=>{!function(t,e,i,n){const s=e[i]||{};Object.keys(s).forEach(o=>{if(o.includes(n)){const n=s[o];j(t,e,i,n.originalHandler,n.delegationSelector)}})}(t,l,i,e.slice(1))});const h=l[r]||{};Object.keys(h).forEach(i=>{const n=i.replace(A,"");if(!a||e.includes(n)){const e=h[i];j(t,l,r,e.originalHandler,e.delegationSelector)}})},trigger(t,e,i){if("string"!=typeof e||!t)return null;const n=p(),s=M(e),o=e!==s,r=L.has(s);let a,l=!0,c=!0,h=!1,d=null;return o&&n&&(a=n.Event(e,i),n(t).trigger(a),l=!a.isPropagationStopped(),c=!a.isImmediatePropagationStopped(),h=a.isDefaultPrevented()),r?(d=document.createEvent("HTMLEvents"),d.initEvent(s,l,!0)):d=new CustomEvent(e,{bubbles:l,cancelable:!0}),void 0!==i&&Object.keys(i).forEach(t=>{Object.defineProperty(d,t,{get:()=>i[t]})}),h&&d.preventDefault(),c&&t.dispatchEvent(d),d.defaultPrevented&&void 0!==a&&a.preventDefault(),d}},H=new Map;var R={set(t,e,i){H.has(t)||H.set(t,new Map);const n=H.get(t);n.has(e)||0===n.size?n.set(e,i):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(n.keys())[0]}.`)},get:(t,e)=>H.has(t)&&H.get(t).get(e)||null,remove(t,e){if(!H.has(t))return;const i=H.get(t);i.delete(e),0===i.size&&H.delete(t)}};class B{constructor(t){(t=a(t))&&(this._element=t,R.set(this._element,this.constructor.DATA_KEY,this))}dispose(){R.remove(this._element,this.constructor.DATA_KEY),P.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach(t=>{this[t]=null})}_queueCallback(t,e,i=!0){v(t,e,i)}static getInstance(t){return R.get(t,this.DATA_KEY)}static getOrCreateInstance(t,e={}){return this.getInstance(t)||new this(t,"object"==typeof e?e:null)}static get VERSION(){return"5.0.2"}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}static get DATA_KEY(){return"bs."+this.NAME}static get EVENT_KEY(){return"."+this.DATA_KEY}}class W extends B{static get NAME(){return"alert"}close(t){const e=t?this._getRootElement(t):this._element,i=this._triggerCloseEvent(e);null===i||i.defaultPrevented||this._removeElement(e)}_getRootElement(t){return s(t)||t.closest(".alert")}_triggerCloseEvent(t){return P.trigger(t,"close.bs.alert")}_removeElement(t){t.classList.remove("show");const e=t.classList.contains("fade");this._queueCallback(()=>this._destroyElement(t),t,e)}_destroyElement(t){t.remove(),P.trigger(t,"closed.bs.alert")}static jQueryInterface(t){return this.each((function(){const e=W.getOrCreateInstance(this);"close"===t&&e[t](this)}))}static handleDismiss(t){return function(e){e&&e.preventDefault(),t.close(this)}}}P.on(document,"click.bs.alert.data-api",'[data-bs-dismiss="alert"]',W.handleDismiss(new W)),_(W);class q extends B{static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(t){return this.each((function(){const e=q.getOrCreateInstance(this);"toggle"===t&&e[t]()}))}}function z(t){return"true"===t||"false"!==t&&(t===Number(t).toString()?Number(t):""===t||"null"===t?null:t)}function $(t){return t.replace(/[A-Z]/g,t=>"-"+t.toLowerCase())}P.on(document,"click.bs.button.data-api",'[data-bs-toggle="button"]',t=>{t.preventDefault();const e=t.target.closest('[data-bs-toggle="button"]');q.getOrCreateInstance(e).toggle()}),_(q);const U={setDataAttribute(t,e,i){t.setAttribute("data-bs-"+$(e),i)},removeDataAttribute(t,e){t.removeAttribute("data-bs-"+$(e))},getDataAttributes(t){if(!t)return{};const e={};return Object.keys(t.dataset).filter(t=>t.startsWith("bs")).forEach(i=>{let n=i.replace(/^bs/,"");n=n.charAt(0).toLowerCase()+n.slice(1,n.length),e[n]=z(t.dataset[i])}),e},getDataAttribute:(t,e)=>z(t.getAttribute("data-bs-"+$(e))),offset(t){const e=t.getBoundingClientRect();return{top:e.top+document.body.scrollTop,left:e.left+document.body.scrollLeft}},position:t=>({top:t.offsetTop,left:t.offsetLeft})},F={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},V={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},K="next",X="prev",Y="left",Q="right",G={ArrowLeft:Q,ArrowRight:Y};class Z extends B{constructor(e,i){super(e),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(i),this._indicatorsElement=t.findOne(".carousel-indicators",this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=Boolean(window.PointerEvent),this._addEventListeners()}static get Default(){return F}static get NAME(){return"carousel"}next(){this._slide(K)}nextWhenVisible(){!document.hidden&&c(this._element)&&this.next()}prev(){this._slide(X)}pause(e){e||(this._isPaused=!0),t.findOne(".carousel-item-next, .carousel-item-prev",this._element)&&(o(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(e){this._activeElement=t.findOne(".active.carousel-item",this._element);const i=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding)return void P.one(this._element,"slid.bs.carousel",()=>this.to(e));if(i===e)return this.pause(),void this.cycle();const n=e>i?K:X;this._slide(n,this._items[e])}_getConfig(t){return t={...F,...U.getDataAttributes(this._element),..."object"==typeof t?t:{}},l("carousel",t,V),t}_handleSwipe(){const t=Math.abs(this.touchDeltaX);if(t<=40)return;const e=t/this.touchDeltaX;this.touchDeltaX=0,e&&this._slide(e>0?Q:Y)}_addEventListeners(){this._config.keyboard&&P.on(this._element,"keydown.bs.carousel",t=>this._keydown(t)),"hover"===this._config.pause&&(P.on(this._element,"mouseenter.bs.carousel",t=>this.pause(t)),P.on(this._element,"mouseleave.bs.carousel",t=>this.cycle(t))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){const e=t=>{!this._pointerEvent||"pen"!==t.pointerType&&"touch"!==t.pointerType?this._pointerEvent||(this.touchStartX=t.touches[0].clientX):this.touchStartX=t.clientX},i=t=>{this.touchDeltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this.touchStartX},n=t=>{!this._pointerEvent||"pen"!==t.pointerType&&"touch"!==t.pointerType||(this.touchDeltaX=t.clientX-this.touchStartX),this._handleSwipe(),"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(t=>this.cycle(t),500+this._config.interval))};t.find(".carousel-item img",this._element).forEach(t=>{P.on(t,"dragstart.bs.carousel",t=>t.preventDefault())}),this._pointerEvent?(P.on(this._element,"pointerdown.bs.carousel",t=>e(t)),P.on(this._element,"pointerup.bs.carousel",t=>n(t)),this._element.classList.add("pointer-event")):(P.on(this._element,"touchstart.bs.carousel",t=>e(t)),P.on(this._element,"touchmove.bs.carousel",t=>i(t)),P.on(this._element,"touchend.bs.carousel",t=>n(t)))}_keydown(t){if(/input|textarea/i.test(t.target.tagName))return;const e=G[t.key];e&&(t.preventDefault(),this._slide(e))}_getItemIndex(e){return this._items=e&&e.parentNode?t.find(".carousel-item",e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(t,e){const i=t===K;return y(this._items,e,i,this._config.wrap)}_triggerSlideEvent(e,i){const n=this._getItemIndex(e),s=this._getItemIndex(t.findOne(".active.carousel-item",this._element));return P.trigger(this._element,"slide.bs.carousel",{relatedTarget:e,direction:i,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){const i=t.findOne(".active",this._indicatorsElement);i.classList.remove("active"),i.removeAttribute("aria-current");const n=t.find("[data-bs-target]",this._indicatorsElement);for(let t=0;t<n.length;t++)if(Number.parseInt(n[t].getAttribute("data-bs-slide-to"),10)===this._getItemIndex(e)){n[t].classList.add("active"),n[t].setAttribute("aria-current","true");break}}}_updateInterval(){const e=this._activeElement||t.findOne(".active.carousel-item",this._element);if(!e)return;const i=Number.parseInt(e.getAttribute("data-bs-interval"),10);i?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,this._config.interval=i):this._config.interval=this._config.defaultInterval||this._config.interval}_slide(e,i){const n=this._directionToOrder(e),s=t.findOne(".active.carousel-item",this._element),o=this._getItemIndex(s),r=i||this._getItemByOrder(n,s),a=this._getItemIndex(r),l=Boolean(this._interval),c=n===K,h=c?"carousel-item-start":"carousel-item-end",d=c?"carousel-item-next":"carousel-item-prev",u=this._orderToDirection(n);if(r&&r.classList.contains("active"))return void(this._isSliding=!1);if(this._isSliding)return;if(this._triggerSlideEvent(r,u).defaultPrevented)return;if(!s||!r)return;this._isSliding=!0,l&&this.pause(),this._setActiveIndicatorElement(r),this._activeElement=r;const p=()=>{P.trigger(this._element,"slid.bs.carousel",{relatedTarget:r,direction:u,from:o,to:a})};if(this._element.classList.contains("slide")){r.classList.add(d),f(r),s.classList.add(h),r.classList.add(h);const t=()=>{r.classList.remove(h,d),r.classList.add("active"),s.classList.remove("active",d,h),this._isSliding=!1,setTimeout(p,0)};this._queueCallback(t,s,!0)}else s.classList.remove("active"),r.classList.add("active"),this._isSliding=!1,p();l&&this.cycle()}_directionToOrder(t){return[Q,Y].includes(t)?g()?t===Y?X:K:t===Y?K:X:t}_orderToDirection(t){return[K,X].includes(t)?g()?t===X?Y:Q:t===X?Q:Y:t}static carouselInterface(t,e){const i=Z.getOrCreateInstance(t,e);let{_config:n}=i;"object"==typeof e&&(n={...n,...e});const s="string"==typeof e?e:n.slide;if("number"==typeof e)i.to(e);else if("string"==typeof s){if(void 0===i[s])throw new TypeError(`No method named "${s}"`);i[s]()}else n.interval&&n.ride&&(i.pause(),i.cycle())}static jQueryInterface(t){return this.each((function(){Z.carouselInterface(this,t)}))}static dataApiClickHandler(t){const e=s(this);if(!e||!e.classList.contains("carousel"))return;const i={...U.getDataAttributes(e),...U.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(i.interval=!1),Z.carouselInterface(e,i),n&&Z.getInstance(e).to(n),t.preventDefault()}}P.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",Z.dataApiClickHandler),P.on(window,"load.bs.carousel.data-api",()=>{const e=t.find('[data-bs-ride="carousel"]');for(let t=0,i=e.length;t<i;t++)Z.carouselInterface(e[t],Z.getInstance(e[t]))}),_(Z);const J={toggle:!0,parent:""},tt={toggle:"boolean",parent:"(string|element)"};class et extends B{constructor(e,i){super(e),this._isTransitioning=!1,this._config=this._getConfig(i),this._triggerArray=t.find(`[data-bs-toggle="collapse"][href="#${this._element.id}"],[data-bs-toggle="collapse"][data-bs-target="#${this._element.id}"]`);const s=t.find('[data-bs-toggle="collapse"]');for(let e=0,i=s.length;e<i;e++){const i=s[e],o=n(i),r=t.find(o).filter(t=>t===this._element);null!==o&&r.length&&(this._selector=o,this._triggerArray.push(i))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}static get Default(){return J}static get NAME(){return"collapse"}toggle(){this._element.classList.contains("show")?this.hide():this.show()}show(){if(this._isTransitioning||this._element.classList.contains("show"))return;let e,i;this._parent&&(e=t.find(".show, .collapsing",this._parent).filter(t=>"string"==typeof this._config.parent?t.getAttribute("data-bs-parent")===this._config.parent:t.classList.contains("collapse")),0===e.length&&(e=null));const n=t.findOne(this._selector);if(e){const t=e.find(t=>n!==t);if(i=t?et.getInstance(t):null,i&&i._isTransitioning)return}if(P.trigger(this._element,"show.bs.collapse").defaultPrevented)return;e&&e.forEach(t=>{n!==t&&et.collapseInterface(t,"hide"),i||R.set(t,"bs.collapse",null)});const s=this._getDimension();this._element.classList.remove("collapse"),this._element.classList.add("collapsing"),this._element.style[s]=0,this._triggerArray.length&&this._triggerArray.forEach(t=>{t.classList.remove("collapsed"),t.setAttribute("aria-expanded",!0)}),this.setTransitioning(!0);const o="scroll"+(s[0].toUpperCase()+s.slice(1));this._queueCallback(()=>{this._element.classList.remove("collapsing"),this._element.classList.add("collapse","show"),this._element.style[s]="",this.setTransitioning(!1),P.trigger(this._element,"shown.bs.collapse")},this._element,!0),this._element.style[s]=this._element[o]+"px"}hide(){if(this._isTransitioning||!this._element.classList.contains("show"))return;if(P.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const t=this._getDimension();this._element.style[t]=this._element.getBoundingClientRect()[t]+"px",f(this._element),this._element.classList.add("collapsing"),this._element.classList.remove("collapse","show");const e=this._triggerArray.length;if(e>0)for(let t=0;t<e;t++){const e=this._triggerArray[t],i=s(e);i&&!i.classList.contains("show")&&(e.classList.add("collapsed"),e.setAttribute("aria-expanded",!1))}this.setTransitioning(!0),this._element.style[t]="",this._queueCallback(()=>{this.setTransitioning(!1),this._element.classList.remove("collapsing"),this._element.classList.add("collapse"),P.trigger(this._element,"hidden.bs.collapse")},this._element,!0)}setTransitioning(t){this._isTransitioning=t}_getConfig(t){return(t={...J,...t}).toggle=Boolean(t.toggle),l("collapse",t,tt),t}_getDimension(){return this._element.classList.contains("width")?"width":"height"}_getParent(){let{parent:e}=this._config;e=a(e);const i=`[data-bs-toggle="collapse"][data-bs-parent="${e}"]`;return t.find(i,e).forEach(t=>{const e=s(t);this._addAriaAndCollapsedClass(e,[t])}),e}_addAriaAndCollapsedClass(t,e){if(!t||!e.length)return;const i=t.classList.contains("show");e.forEach(t=>{i?t.classList.remove("collapsed"):t.classList.add("collapsed"),t.setAttribute("aria-expanded",i)})}static collapseInterface(t,e){let i=et.getInstance(t);const n={...J,...U.getDataAttributes(t),..."object"==typeof e&&e?e:{}};if(!i&&n.toggle&&"string"==typeof e&&/show|hide/.test(e)&&(n.toggle=!1),i||(i=new et(t,n)),"string"==typeof e){if(void 0===i[e])throw new TypeError(`No method named "${e}"`);i[e]()}}static jQueryInterface(t){return this.each((function(){et.collapseInterface(this,t)}))}}P.on(document,"click.bs.collapse.data-api",'[data-bs-toggle="collapse"]',(function(e){("A"===e.target.tagName||e.delegateTarget&&"A"===e.delegateTarget.tagName)&&e.preventDefault();const i=U.getDataAttributes(this),s=n(this);t.find(s).forEach(t=>{const e=et.getInstance(t);let n;e?(null===e._parent&&"string"==typeof i.parent&&(e._config.parent=i.parent,e._parent=e._getParent()),n="toggle"):n=i,et.collapseInterface(t,n)})})),_(et);var it="top",nt="bottom",st="right",ot="left",rt=[it,nt,st,ot],at=rt.reduce((function(t,e){return t.concat([e+"-start",e+"-end"])}),[]),lt=[].concat(rt,["auto"]).reduce((function(t,e){return t.concat([e,e+"-start",e+"-end"])}),[]),ct=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];
vendor: 6,230 bytes, line 7
7function ht(t){return t?(t.nodeName||"").toLowerCase():null}function dt(t){if(null==t)return window;if("[object Window]"!==t.toString()){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function ut(t){return t instanceof dt(t).Element||t instanceof Element}function ft(t){return t instanceof dt(t).HTMLElement||t instanceof HTMLElement}function pt(t){return"undefined"!=typeof ShadowRoot&&(t instanceof dt(t).ShadowRoot||t instanceof ShadowRoot)}var mt={name:"applyStyles",enabled:!0,phase:"write",fn:function(t){var e=t.state;Object.keys(e.elements).forEach((function(t){var i=e.styles[t]||{},n=e.attributes[t]||{},s=e.elements[t];ft(s)&&ht(s)&&(Object.assign(s.style,i),Object.keys(n).forEach((function(t){var e=n[t];!1===e?s.removeAttribute(t):s.setAttribute(t,!0===e?"":e)})))}))},effect:function(t){var e=t.state,i={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,i.popper),e.styles=i,e.elements.arrow&&Object.assign(e.elements.arrow.style,i.arrow),function(){Object.keys(e.elements).forEach((function(t){var n=e.elements[t],s=e.attributes[t]||{},o=Object.keys(e.styles.hasOwnProperty(t)?e.styles[t]:i[t]).reduce((function(t,e){return t[e]="",t}),{});ft(n)&&ht(n)&&(Object.assign(n.style,o),Object.keys(s).forEach((function(t){n.removeAttribute(t)})))}))}},requires:["computeStyles"]};function gt(t){return t.split("-")[0]}function _t(t){var e=t.getBoundingClientRect();return{width:e.width,height:e.height,top:e.top,right:e.right,bottom:e.bottom,left:e.left,x:e.left,y:e.top}}function bt(t){var e=_t(t),i=t.offsetWidth,n=t.offsetHeight;return Math.abs(e.width-i)<=1&&(i=e.width),Math.abs(e.height-n)<=1&&(n=e.height),{x:t.offsetLeft,y:t.offsetTop,width:i,height:n}}function vt(t,e){var i=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(i&&pt(i)){var n=e;do{if(n&&t.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function yt(t){return dt(t).getComputedStyle(t)}function wt(t){return["table","td","th"].indexOf(ht(t))>=0}function Et(t){return((ut(t)?t.ownerDocument:t.document)||window.document).documentElement}function At(t){return"html"===ht(t)?t:t.assignedSlot||t.parentNode||(pt(t)?t.host:null)||Et(t)}function Tt(t){return ft(t)&&"fixed"!==yt(t).position?t.offsetParent:null}function Ot(t){for(var e=dt(t),i=Tt(t);i&&wt(i)&&"static"===yt(i).position;)i=Tt(i);return i&&("html"===ht(i)||"body"===ht(i)&&"static"===yt(i).position)?e:i||function(t){var e=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&ft(t)&&"fixed"===yt(t).position)return null;for(var i=At(t);ft(i)&&["html","body"].indexOf(ht(i))<0;){var n=yt(i);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||e&&"filter"===n.willChange||e&&n.filter&&"none"!==n.filter)return i;i=i.parentNode}return null}(t)||e}function Ct(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}var kt=Math.max,Lt=Math.min,xt=Math.round;function Dt(t,e,i){return kt(t,Lt(e,i))}function St(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function It(t,e){return e.reduce((function(e,i){return e[i]=t,e}),{})}var Nt={name:"arrow",enabled:!0,phase:"main",fn:function(t){var e,i=t.state,n=t.name,s=t.options,o=i.elements.arrow,r=i.modifiersData.popperOffsets,a=gt(i.placement),l=Ct(a),c=[ot,st].indexOf(a)>=0?"height":"width";if(o&&r){var h=function(t,e){return St("number"!=typeof(t="function"==typeof t?t(Object.assign({},e.rects,{placement:e.placement})):t)?t:It(t,rt))}(s.padding,i),d=bt(o),u="y"===l?it:ot,f="y"===l?nt:st,p=i.rects.reference[c]+i.rects.reference[l]-r[l]-i.rects.popper[c],m=r[l]-i.rects.reference[l],g=Ot(o),_=g?"y"===l?g.clientHeight||0:g.clientWidth||0:0,b=p/2-m/2,v=h[u],y=_-d[c]-h[f],w=_/2-d[c]/2+b,E=Dt(v,w,y),A=l;i.modifiersData[n]=((e={})[A]=E,e.centerOffset=E-w,e)}},effect:function(t){var e=t.state,i=t.options.element,n=void 0===i?"[data-popper-arrow]":i;null!=n&&("string"!=typeof n||(n=e.elements.popper.querySelector(n)))&&vt(e.elements.popper,n)&&(e.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]},jt={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Mt(t){var e,i=t.popper,n=t.popperRect,s=t.placement,o=t.offsets,r=t.position,a=t.gpuAcceleration,l=t.adaptive,c=t.roundOffsets,h=!0===c?function(t){var e=t.x,i=t.y,n=window.devicePixelRatio||1;return{x:xt(xt(e*n)/n)||0,y:xt(xt(i*n)/n)||0}}(o):"function"==typeof c?c(o):o,d=h.x,u=void 0===d?0:d,f=h.y,p=void 0===f?0:f,m=o.hasOwnProperty("x"),g=o.hasOwnProperty("y"),_=ot,b=it,v=window;if(l){var y=Ot(i),w="clientHeight",E="clientWidth";y===dt(i)&&"static"!==yt(y=Et(i)).position&&(w="scrollHeight",E="scrollWidth"),y=y,s===it&&(b=nt,p-=y[w]-n.height,p*=a?1:-1),s===ot&&(_=st,u-=y[E]-n.width,u*=a?1:-1)}var A,T=Object.assign({position:r},l&&jt);return a?Object.assign({},T,((A={})[b]=g?"0":"",A[_]=m?"0":"",A.transform=(v.devicePixelRatio||1)<2?"translate("+u+"px, "+p+"px)":"translate3d("+u+"px, "+p+"px, 0)",A)):Object.assign({},T,((e={})[b]=g?p+"px":"",e[_]=m?u+"px":"",e.transform="",e))}var Pt={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(t){var e=t.state,i=t.options,n=i.gpuAcceleration,s=void 0===n||n,o=i.adaptive,r=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:gt(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:s};null!=e.modifiersData.popperOffsets&&(e.styles.popper=Object.assign({},e.styles.popper,Mt(Object.assign({},c,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:r,roundOffsets:l})))),null!=e.modifiersData.arrow&&(e.styles.arrow=Object.assign({},e.styles.arrow,Mt(Object.assign({},c,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})},data:{}},Ht={passive:!0},Rt={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(t){var e=t.state,i=t.instance,n=t.options,s=n.scroll,o=void 0===s||s,r=n.resize,a=void 0===r||r,l=dt(e.elements.popper),c=[].concat(e.scrollParents.reference,e.scrollParents.popper);
vendor: 1,265 bytes, line 7
7return o&&c.forEach((function(t){t.addEventListener("scroll",i.update,Ht)})),a&&l.addEventListener("resize",i.update,Ht),function(){o&&c.forEach((function(t){t.removeEventListener("scroll",i.update,Ht)})),a&&l.removeEventListener("resize",i.update,Ht)}},data:{}},Bt={left:"right",right:"left",bottom:"top",top:"bottom"};function Wt(t){return t.replace(/left|right|bottom|top/g,(function(t){return Bt[t]}))}var qt={start:"end",end:"start"};function zt(t){return t.replace(/start|end/g,(function(t){return qt[t]}))}function $t(t){var e=dt(t);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function Ut(t){return _t(Et(t)).left+$t(t).scrollLeft}function Ft(t){var e=yt(t),i=e.overflow,n=e.overflowX,s=e.overflowY;return/auto|scroll|overlay|hidden/.test(i+s+n)}function Vt(t,e){var i;void 0===e&&(e=[]);var n=function t(e){return["html","body","#document"].indexOf(ht(e))>=0?e.ownerDocument.body:ft(e)&&Ft(e)?e:t(At(e))}(t),s=n===(null==(i=t.ownerDocument)?void 0:i.body),o=dt(n),r=s?[o].concat(o.visualViewport||[],Ft(n)?n:[]):n,a=e.concat(r);return s?a:a.concat(Vt(At(r)))}function Kt(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function Xt(t,e){return"viewport"===e?Kt(function(t){var e=dt(t),i=Et(t),n=e.visualVie
vendor: 5,470 bytes, line 7
7wport,s=i.clientWidth,o=i.clientHeight,r=0,a=0;return n&&(s=n.width,o=n.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(r=n.offsetLeft,a=n.offsetTop)),{width:s,height:o,x:r+Ut(t),y:a}}(t)):ft(e)?function(t){var e=_t(t);return e.top=e.top+t.clientTop,e.left=e.left+t.clientLeft,e.bottom=e.top+t.clientHeight,e.right=e.left+t.clientWidth,e.width=t.clientWidth,e.height=t.clientHeight,e.x=e.left,e.y=e.top,e}(e):Kt(function(t){var e,i=Et(t),n=$t(t),s=null==(e=t.ownerDocument)?void 0:e.body,o=kt(i.scrollWidth,i.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),r=kt(i.scrollHeight,i.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),a=-n.scrollLeft+Ut(t),l=-n.scrollTop;return"rtl"===yt(s||i).direction&&(a+=kt(i.clientWidth,s?s.clientWidth:0)-o),{width:o,height:r,x:a,y:l}}(Et(t)))}function Yt(t){return t.split("-")[1]}function Qt(t){var e,i=t.reference,n=t.element,s=t.placement,o=s?gt(s):null,r=s?Yt(s):null,a=i.x+i.width/2-n.width/2,l=i.y+i.height/2-n.height/2;switch(o){case it:e={x:a,y:i.y-n.height};break;case nt:e={x:a,y:i.y+i.height};break;case st:e={x:i.x+i.width,y:l};break;case ot:e={x:i.x-n.width,y:l};break;default:e={x:i.x,y:i.y}}var c=o?Ct(o):null;if(null!=c){var h="y"===c?"height":"width";switch(r){case"start":e[c]=e[c]-(i[h]/2-n[h]/2);break;case"end":e[c]=e[c]+(i[h]/2-n[h]/2)}}return e}function Gt(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=void 0===n?t.placement:n,o=i.boundary,r=void 0===o?"clippingParents":o,a=i.rootBoundary,l=void 0===a?"viewport":a,c=i.elementContext,h=void 0===c?"popper":c,d=i.altBoundary,u=void 0!==d&&d,f=i.padding,p=void 0===f?0:f,m=St("number"!=typeof p?p:It(p,rt)),g="popper"===h?"reference":"popper",_=t.elements.reference,b=t.rects.popper,v=t.elements[u?g:h],y=function(t,e,i){var n="clippingParents"===e?function(t){var e=Vt(At(t)),i=["absolute","fixed"].indexOf(yt(t).position)>=0&&ft(t)?Ot(t):t;return ut(i)?e.filter((function(t){return ut(t)&&vt(t,i)&&"body"!==ht(t)})):[]}(t):[].concat(e),s=[].concat(n,[i]),o=s[0],r=s.reduce((function(e,i){var n=Xt(t,i);return e.top=kt(n.top,e.top),e.right=Lt(n.right,e.right),e.bottom=Lt(n.bottom,e.bottom),e.left=kt(n.left,e.left),e}),Xt(t,o));return r.width=r.right-r.left,r.height=r.bottom-r.top,r.x=r.left,r.y=r.top,r}(ut(v)?v:v.contextElement||Et(t.elements.popper),r,l),w=_t(_),E=Qt({reference:w,element:b,strategy:"absolute",placement:s}),A=Kt(Object.assign({},b,E)),T="popper"===h?A:w,O={top:y.top-T.top+m.top,bottom:T.bottom-y.bottom+m.bottom,left:y.left-T.left+m.left,right:T.right-y.right+m.right},C=t.modifiersData.offset;if("popper"===h&&C){var k=C[s];Object.keys(O).forEach((function(t){var e=[st,nt].indexOf(t)>=0?1:-1,i=[it,nt].indexOf(t)>=0?"y":"x";O[t]+=k[i]*e}))}return O}function Zt(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=i.boundary,o=i.rootBoundary,r=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,c=void 0===l?lt:l,h=Yt(n),d=h?a?at:at.filter((function(t){return Yt(t)===h})):rt,u=d.filter((function(t){return c.indexOf(t)>=0}));0===u.length&&(u=d);var f=u.reduce((function(e,i){return e[i]=Gt(t,{placement:i,boundary:s,rootBoundary:o,padding:r})[gt(i)],e}),{});return Object.keys(f).sort((function(t,e){return f[t]-f[e]}))}var Jt={name:"flip",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,n=t.name;if(!e.modifiersData[n]._skip){for(var s=i.mainAxis,o=void 0===s||s,r=i.altAxis,a=void 0===r||r,l=i.fallbackPlacements,c=i.padding,h=i.boundary,d=i.rootBoundary,u=i.altBoundary,f=i.flipVariations,p=void 0===f||f,m=i.allowedAutoPlacements,g=e.options.placement,_=gt(g),b=l||(_!==g&&p?function(t){if("auto"===gt(t))return[];var e=Wt(t);return[zt(t),e,zt(e)]}(g):[Wt(g)]),v=[g].concat(b).reduce((function(t,i){return t.concat("auto"===gt(i)?Zt(e,{placement:i,boundary:h,rootBoundary:d,padding:c,flipVariations:p,allowedAutoPlacements:m}):i)}),[]),y=e.rects.reference,w=e.rects.popper,E=new Map,A=!0,T=v[0],O=0;O<v.length;O++){var C=v[O],k=gt(C),L="start"===Yt(C),x=[it,nt].indexOf(k)>=0,D=x?"width":"height",S=Gt(e,{placement:C,boundary:h,rootBoundary:d,altBoundary:u,padding:c}),I=x?L?st:ot:L?nt:it;y[D]>w[D]&&(I=Wt(I));var N=Wt(I),j=[];if(o&&j.push(S[k]<=0),a&&j.push(S[I]<=0,S[N]<=0),j.every((function(t){return t}))){T=C,A=!1;break}E.set(C,j)}if(A)for(var M=function(t){var e=v.find((function(e){var i=E.get(e);if(i)return i.slice(0,t).every((function(t){return t}))}));if(e)return T=e,"break"},P=p?3:1;P>0&&"break"!==M(P);P--);e.placement!==T&&(e.modifiersData[n]._skip=!0,e.placement=T,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function te(t,e,i){return void 0===i&&(i={x:0,y:0}),{top:t.top-e.height-i.y,right:t.right-e.width+i.x,bottom:t.bottom-e.height+i.y,left:t.left-e.width-i.x}}function ee(t){return[it,st,nt,ot].some((function(e){return t[e]>=0}))}var ie={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(t){var e=t.state,i=t.name,n=e.rects.reference,s=e.rects.popper,o=e.modifiersData.preventOverflow,r=Gt(e,{elementContext:"reference"}),a=Gt(e,{altBoundary:!0}),l=te(r,n),c=te(a,s,o),h=ee(l),d=ee(c);e.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:h,hasPopperEscaped:d},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":h,"data-popper-escaped":d})}},ne={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(t){var e=t.state,i=t.options,n=t.name,s=i.offset,o=void 0===s?[0,0]:s,r=lt.reduce((function(t,i){return t[i]=function(t,e,
vendor: 4,280 bytes, line 7
7i){var n=gt(t),s=[ot,it].indexOf(n)>=0?-1:1,o="function"==typeof i?i(Object.assign({},e,{placement:t})):i,r=o[0],a=o[1];return r=r||0,a=(a||0)*s,[ot,st].indexOf(n)>=0?{x:a,y:r}:{x:r,y:a}}(i,e.rects,o),t}),{}),a=r[e.placement],l=a.x,c=a.y;null!=e.modifiersData.popperOffsets&&(e.modifiersData.popperOffsets.x+=l,e.modifiersData.popperOffsets.y+=c),e.modifiersData[n]=r}},se={name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var e=t.state,i=t.name;e.modifiersData[i]=Qt({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}},oe={name:"preventOverflow",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,n=t.name,s=i.mainAxis,o=void 0===s||s,r=i.altAxis,a=void 0!==r&&r,l=i.boundary,c=i.rootBoundary,h=i.altBoundary,d=i.padding,u=i.tether,f=void 0===u||u,p=i.tetherOffset,m=void 0===p?0:p,g=Gt(e,{boundary:l,rootBoundary:c,padding:d,altBoundary:h}),_=gt(e.placement),b=Yt(e.placement),v=!b,y=Ct(_),w="x"===y?"y":"x",E=e.modifiersData.popperOffsets,A=e.rects.reference,T=e.rects.popper,O="function"==typeof m?m(Object.assign({},e.rects,{placement:e.placement})):m,C={x:0,y:0};if(E){if(o||a){var k="y"===y?it:ot,L="y"===y?nt:st,x="y"===y?"height":"width",D=E[y],S=E[y]+g[k],I=E[y]-g[L],N=f?-T[x]/2:0,j="start"===b?A[x]:T[x],M="start"===b?-T[x]:-A[x],P=e.elements.arrow,H=f&&P?bt(P):{width:0,height:0},R=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},B=R[k],W=R[L],q=Dt(0,A[x],H[x]),z=v?A[x]/2-N-q-B-O:j-q-B-O,$=v?-A[x]/2+N+q+W+O:M+q+W+O,U=e.elements.arrow&&Ot(e.elements.arrow),F=U?"y"===y?U.clientTop||0:U.clientLeft||0:0,V=e.modifiersData.offset?e.modifiersData.offset[e.placement][y]:0,K=E[y]+z-V-F,X=E[y]+$-V;if(o){var Y=Dt(f?Lt(S,K):S,D,f?kt(I,X):I);E[y]=Y,C[y]=Y-D}if(a){var Q="x"===y?it:ot,G="x"===y?nt:st,Z=E[w],J=Z+g[Q],tt=Z-g[G],et=Dt(f?Lt(J,K):J,Z,f?kt(tt,X):tt);E[w]=et,C[w]=et-Z}}e.modifiersData[n]=C}},requiresIfExists:["offset"]};function re(t,e,i){void 0===i&&(i=!1);var n,s,o=Et(e),r=_t(t),a=ft(e),l={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(a||!a&&!i)&&(("body"!==ht(e)||Ft(o))&&(l=(n=e)!==dt(n)&&ft(n)?{scrollLeft:(s=n).scrollLeft,scrollTop:s.scrollTop}:$t(n)),ft(e)?((c=_t(e)).x+=e.clientLeft,c.y+=e.clientTop):o&&(c.x=Ut(o))),{x:r.left+l.scrollLeft-c.x,y:r.top+l.scrollTop-c.y,width:r.width,height:r.height}}var ae={placement:"bottom",modifiers:[],strategy:"absolute"};function le(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return!e.some((function(t){return!(t&&"function"==typeof t.getBoundingClientRect)}))}function ce(t){void 0===t&&(t={});var e=t,i=e.defaultModifiers,n=void 0===i?[]:i,s=e.defaultOptions,o=void 0===s?ae:s;return function(t,e,i){void 0===i&&(i=o);var s,r,a={placement:"bottom",orderedModifiers:[],options:Object.assign({},ae,o),modifiersData:{},elements:{reference:t,popper:e},attributes:{},styles:{}},l=[],c=!1,h={state:a,setOptions:function(i){d(),a.options=Object.assign({},o,a.options,i),a.scrollParents={reference:ut(t)?Vt(t):t.contextElement?Vt(t.contextElement):[],popper:Vt(e)};var s,r,c=function(t){var e=function(t){var e=new Map,i=new Set,n=[];return t.forEach((function(t){e.set(t.name,t)})),t.forEach((function(t){i.has(t.name)||function t(s){i.add(s.name),[].concat(s.requires||[],s.requiresIfExists||[]).forEach((function(n){if(!i.has(n)){var s=e.get(n);s&&t(s)}})),n.push(s)}(t)})),n}(t);return ct.reduce((function(t,i){return t.concat(e.filter((function(t){return t.phase===i})))}),[])}((s=[].concat(n,a.options.modifiers),r=s.reduce((function(t,e){var i=t[e.name];return t[e.name]=i?Object.assign({},i,e,{options:Object.assign({},i.options,e.options),data:Object.assign({},i.data,e.data)}):e,t}),{}),Object.keys(r).map((function(t){return r[t]}))));return a.orderedModifiers=c.filter((function(t){return t.enabled})),a.orderedModifiers.forEach((function(t){var e=t.name,i=t.options,n=void 0===i?{}:i,s=t.effect;if("function"==typeof s){var o=s({state:a,name:e,instance:h,options:n});l.push(o||function(){})}})),h.update()},forceUpdate:function(){if(!c){var t=a.elements,e=t.reference,i=t.popper;if(le(e,i)){a.rects={reference:re(e,Ot(i),"fixed"===a.options.strategy),popper:bt(i)},a.reset=!1,a.placement=a.options.placement,a.orderedModifiers.forEac
7h((function(t){return a.modifiersData[t.name]=Object.assign({},t.data)}));for(var n=0;n<a.orderedModifiers.length;n++)if(!0!==a.reset){var s=a.orderedModifiers[n],o=s.fn,r=s.options,l=void 0===r?{}:r,d=s.name;"function"==typeof o&&(a=o({state:a,options:l,name:d,instance:h})||a)}else a.reset=!1,n=-1}}},update:(s=function(){return new Promise((function(t){h.forceUpdate(),t(a)}))},function(){return r||(r=new Promise((function(t){Promise.resolve().then((function(){r=void 0,t(s())}))}))),r}),destroy:function(){d(),c=!0}};if(!le(t,e))return h;function d(){l.forEach((function(t){return t()})),l=[]}return h.setOptions(i).then((function(t){!c&&i.onFirstUpdate&&i.onFirstUpdate(t)})),h}}var he=ce(),de=ce({defaultModifiers:[Rt,se,Pt,mt]}),ue=ce({defaultModifiers:[Rt,se,Pt,mt,ne,Jt,oe,Nt,ie]}),fe=Object.freeze({__proto__:null,popperGenerator:ce,detectOverflow:Gt,createPopperBase:he,createPopper:ue,createPopperLite:de,top:it,bottom:nt,right:st,left:ot,auto:"auto",basePlacements:rt,start:"start",end:"end",clippingParents:"clippingParents",viewport:"viewport",popper:"popper",reference:"reference",variationPlacements:at,placements:lt,beforeRead:"beforeRead",read:"read",afterRead:"afterRead",beforeMain:"beforeMain",main:"main",afterMain:"afterMain",beforeWrite:"beforeWrite",write:"write",afterWrite:"afterWrite",modifierPhases:ct,applyStyles:mt,arrow:Nt,computeStyles:Pt,eventListeners:Rt,flip:Jt,hide:ie,offset:ne,popperOffsets:se,preventOverflow:oe});const pe=new RegExp("ArrowUp|ArrowDown|Escape"),me=g()?"top-end":"top-start",ge=g()?"top-start":"top-end",_e=g()?"bottom-end":"bottom-start",be=g()?"bottom-start":"bottom-end",ve=g()?"left-start":"right-start",ye=g()?"right-start":"left-start",we={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},Ee={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class Ae extends B{constructor(t,e){super(t),this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}static get Default(){return we}static get DefaultType(){return Ee}static get NAME(){return"dropdown"}toggle(){h(this._element)||(this._element.classList.contains("show")?this.hide():this.show())}show(){if(h(this._element)||this._menu.classList.contains("show"))return;const t=Ae.getParentFromElement(this._element),e={relatedTarget:this._element};if(!P.trigger(this._element,"show.bs.dropdown",e).defaultPrevented){if(this._inNavbar)U.setDataAttribute(this._menu,"popper","none");else{if(void 0===fe)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let e=this._element;"parent"===this._config.reference?e=t:r(this._config.reference)?e=a(this._config.reference):"object"==typeof this._config.reference&&(e=this._config.reference);const i=this._getPopperConfig(),n=i.modifiers.find(t=>"applyStyles"===t.name&&!1===t.enabled);this._popper=ue(e,this._menu,i),n&&U.setDataAttribute(this._menu,"popper","static")}
vendor: 12,488 bytes, line 7
7"ontouchstart"in document.documentElement&&!t.closest(".navbar-nav")&&[].concat(...document.body.children).forEach(t=>P.on(t,"mouseover",u)),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.toggle("show"),this._element.classList.toggle("show"),P.trigger(this._element,"shown.bs.dropdown",e)}}hide(){if(h(this._element)||!this._menu.classList.contains("show"))return;const t={relatedTarget:this._element};this._completeHide(t)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_addEventListeners(){P.on(this._element,"click.bs.dropdown",t=>{t.preventDefault(),this.toggle()})}_completeHide(t){P.trigger(this._element,"hide.bs.dropdown",t).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(t=>P.off(t,"mouseover",u)),this._popper&&this._popper.destroy(),this._menu.classList.remove("show"),this._element.classList.remove("show"),this._element.setAttribute("aria-expanded","false"),U.removeDataAttribute(this._menu,"popper"),P.trigger(this._element,"hidden.bs.dropdown",t))}_getConfig(t){if(t={...this.constructor.Default,...U.getDataAttributes(this._element),...t},l("dropdown",t,this.constructor.DefaultType),"object"==typeof t.reference&&!r(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError("dropdown".toUpperCase()+': Option "reference" provided type "object" without a required "getBoundingClientRect" method.');return t}_getMenuElement(){return t.next(this._element,".dropdown-menu")[0]}_getPlacement(){const t=this._element.parentNode;if(t.classList.contains("dropend"))return ve;if(t.classList.contains("dropstart"))return ye;const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?ge:me:e?be:_e}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map(t=>Number.parseInt(t,10)):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(){const t={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return"static"===this._config.display&&(t.modifiers=[{name:"applyStyles",enabled:!1}]),{...t,..."function"==typeof this._config.popperConfig?this._config.popperConfig(t):this._config.popperConfig}}_selectMenuItem({key:e,target:i}){const n=t.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(c);n.length&&y(n,i,"ArrowDown"===e,!n.includes(i)).focus()}static dropdownInterface(t,e){const i=Ae.getOrCreateInstance(t,e);if("string"==typeof e){if(void 0===i[e])throw new TypeError(`No method named "${e}"`);i[e]()}}static jQueryInterface(t){return this.each((function(){Ae.dropdownInterface(this,t)}))}static clearMenus(e){if(e&&(2===e.button||"keyup"===e.type&&"Tab"!==e.key))return;const i=t.find('[data-bs-toggle="dropdown"]');for(let t=0,n=i.length;t<n;t++){const n=Ae.getInstance(i[t]);if(!n||!1===n._config.autoClose)continue;if(!n._element.classList.contains("show"))continue;const s={relatedTarget:n._element};if(e){const t=e.composedPath(),i=t.includes(n._menu);if(t.includes(n._element)||"inside"===n._config.autoClose&&!i||"outside"===n._config.autoClose&&i)continue;if(n._menu.contains(e.target)&&("keyup"===e.type&&"Tab"===e.key||/input|select|option|textarea|form/i.test(e.target.tagName)))continue;"click"===e.type&&(s.clickEvent=e)}n._completeHide(s)}}static getParentFromElement(t){return s(t)||t.parentNode}static dataApiKeydownHandler(e){if(/input|textarea/i.test(e.target.tagName)?"Space"===e.key||"Escape"!==e.key&&("ArrowDown"!==e.key&&"ArrowUp"!==e.key||e.target.closest(".dropdown-menu")):!pe.test(e.key))return;const i=this.classList.contains("show");if(!i&&"Escape"===e.key)return;if(e.preventDefault(),e.stopPropagation(),h(this))return;const n=()=>this.matches('[data-bs-toggle="dropdown"]')?this:t.prev(this,'[data-bs-toggle="dropdown"]')[0];return"Escape"===e.key?(n().focus(),void Ae.clearMenus()):"ArrowUp"===e.key||"ArrowDown"===e.key?(i||n().click(),void Ae.getInstance(n())._selectMenuItem(e)):void(i&&"Space"!==e.key||Ae.clearMenus())}}P.on(document,"keydown.bs.dropdown.data-api",'[data-bs-toggle="dropdown"]',Ae.dataApiKeydownHandler),P.on(document,"keydown.bs.dropdown.data-api",".dropdown-menu",Ae.dataApiKeydownHandler),P.on(document,"click.bs.dropdown.data-api",Ae.clearMenus),P.on(document,"keyup.bs.dropdown.data-api",Ae.clearMenus),P.on(document,"click.bs.dropdown.data-api",'[data-bs-toggle="dropdown"]',(function(t){t.preventDefault(),Ae.dropdownInterface(this)})),_(Ae);class Te{constructor(){this._element=document.body}getWidth(){const t=document.documentElement.clientWidth;return Math.abs(window.innerWidth-t)}hide(){const t=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",e=>e+t),this._setElementAttributes(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top","paddingRight",e=>e+t),this._setElementAttributes(".sticky-top","marginRight",e=>e-t)}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(t,e,i){const n=this.getWidth();this._applyManipulationCallback(t,t=>{if(t!==this._element&&window.innerWidth>t.clientWidth+n)return;this._saveInitialAttribute(t,e);const s=window.getComputedStyle(t)[e];t.style[e]=i(Number.parseFloat(s))+"px"})}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top","paddingRight"),this._resetElementAttributes(".sticky-top","marginRight")}_saveInitialAttribute(t,e){const i=t.style[e];i&&U.setDataAttribute(t,e,i)}_resetElementAttributes(t,e){this._applyManipulationCallback(t,t=>{const i=U.getDataAttribute(t,e);void 0===i?t.style.removeProperty(e):(U.removeDataAttribute(t,e),t.style[e]=i)})}_applyManipulationCallback(e,i){r(e)?i(e):t.find(e,this._element).forEach(i)}isOverflowing(){return this.getWidth()>0}}const Oe={isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Ce={isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"};class ke{constructor(t){this._config=this._getConfig(t),this._isAppended=!1,this._element=null}show(t){this._config.isVisible?(this._append(),this._config.isAnimated&&f(this._getElement()),this._getElement().classList.add("show"),this._emulateAnimation(()=>{b(t)})):b(t)}hide(t){this._config.isVisible?(this._getElement().classList.remove("show"),this._emulateAnimation(()=>{this.dispose(),b(t)})):b(t)}_getElement(){if(!this._element){const t=document.createElement("div");t.className="modal-backdrop",this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_getConfig(t){return(t={...Oe,..."object"==typeof t?t:{}}).rootElement=a(t.rootElement),l("backdrop",t,Ce),t}_append(){this._isAppended||(this._config.rootElement.appendChild(this._getElement()),P.on(this._getElement(),"mousedown.bs.backdrop",()=>{b(this._config.clickCallback)}),this._isAppended=!0)}dispose(){this._isAppended&&(P.off(this._element,"mousedown.bs.backdrop"),this._element.remove(),this._isAppended=!1)}_emulateAnimation(t){v(t,this._getElement(),this._config.isAnimated)}}const Le={backdrop:!0,keyboard:!0,focus:!0},xe={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"};class De extends B{constructor(e,i){super(e),this._config=this._getConfig(i),this._dialog=t.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new Te}static get Default(){return Le}static get NAME(){return"modal"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||this._isTransitioning||P.trigger(this._element,"show.bs.modal",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add("modal-open"),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),P.on(this._element,"click.dismiss.bs.modal",'[data-bs-dismiss="modal"]',t=>this.hide(t)),P.on(this._dialog,"mousedown.dismiss.bs.modal",()=>{P.one(this._element,"mouseup.dismiss.bs.modal",t=>{t.target===this._element&&(this._ignoreBackdropClick=!0)})}),this._showBackdrop(()=>this._showElement(t)))}hide(t){if(t&&["A","AREA"].includes(t.target.tagName)&&t.preventDefault(),!this._isShown||this._isTransitioning)return;if(P.trigger(this._element,"hide.bs.modal").defaultPrevented)return;this._isShown=!1;const e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),P.off(document,"focusin.bs.modal"),this._element.classList.remove("show"),P.off(this._element,"click.dismiss.bs.modal"),P.off(this._dialog,"mousedown.dismiss.bs.modal"),this._queueCallback(()=>this._hideModal(),this._element,e)}dispose(){[window,this._dialog].forEach(t=>P.off(t,".bs.modal")),this._backdrop.dispose(),super.dispose(),P.off(document,"focusin.bs.modal")}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ke({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_getConfig(t){return t={...Le,...U.getDataAttributes(this._element),..."object"==typeof t?t:{}},l("modal",t,xe),t}_showElement(e){const i=this._isAnimated(),n=t.findOne(".modal-body",this._dialog);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0,n&&(n.scrollTop=0),i&&f(this._element),this._element.classList.add("show"),this._config.focus&&this._enforceFocus(),this._queueCallback(()=>{this._config.focus&&this._element.focus(),this._isTransitioning=!1,P.trigger(this._element,"shown.bs.modal",{relatedTarget:e})},this._dialog,i)}_enforceFocus(){P.off(document,"focusin.bs.modal"),P.on(document,"focusin.bs.modal",t=>{document===t.target||this._element===t.target||this._element.contains(t.target)||this._element.focus()})}_setEscapeEvent(){this._isShown?P.on(this._element,"keydown.dismiss.bs.modal",t=>{this._config.keyboard&&"Escape"===t.key?(t.preventDefault(),this.hide()):this._config.keyboard||"Escape"!==t.key||this._triggerBackdropTransition()}):P.off(this._element,"keydown.dismiss.bs.modal")}_setResizeEvent(){this._isShown?P.on(window,"resize.bs.modal",()=>this._adjustDialog()):P.off(window,"resize.bs.modal")}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide(()=>{document.body.classList.remove("modal-open"),this._resetAdjustments(),this._scrollBar.reset(),P.trigger(this._element,"hidden.bs.modal")})}_showBackdrop(t){P.on(this._element,"click.dismiss.bs.modal",t=>{this._ignoreBackdropClick?this._ignoreBackdropClick=!1:t.target===t.currentTarget&&(!0===this._config.backdrop?this.hide():"static"===this._config.backdrop&&this._triggerBackdropTransition())}),this._backdrop.show(t)}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(P.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const{classList:t,scrollHeight:e,style:i}=this._element,n=e>document.documentElement.clientHeight;!n&&"hidden"===i.overflowY||t.contains("modal-static")||(n||(i.overflowY="hidden"),t.add("modal-static"),this._queueCallback(()=>{t.remove("modal-static"),n||this._queueCallback(()=>{i.overflowY=""},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._scrollBar.getWidth(),i=e>0;(!i&&t&&!g()||i&&!t&&g())&&(this._element.style.paddingLeft=e+"px"),(i&&!t&&!g()||!i&&t&&g())&&(this._element.style.paddingRight=e+"px")}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const i=De.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method n
7amed "${t}"`);i[t](e)}}))}}P.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(t){const e=s(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),P.one(e,"show.bs.modal",t=>{t.defaultPrevented||P.one(e,"hidden.bs.modal",()=>{c(this)&&this.focus()})}),De.getOrCreateInstance(e).toggle(this)})),_(De);const Se={backdrop:!0,keyboard:!0,scroll:!1},Ie={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"};class Ne extends B{constructor(t,e){super(t),this._config=this._getConfig(e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._addEventListeners()}static get NAME(){return"offcanvas"}static get Default(){return Se}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||P.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||((new Te).hide(),this._enforceFocusOnElement(this._element)),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add("show"),this._queueCallback(()=>{P.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})},this._element,!0))}hide(){this._isShown&&(P.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||(P.off(document,"focusin.bs.offcanvas"),this._element.blur(),this._isShown=!1,this._element.classList.remove("show"),this._backdrop.hide(),this._queueCallback(()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new Te).reset(),P.trigger(this._element,"hidden.bs.offcanvas")},this._element,!0)))}dispose(){this._backdrop.dispose(),super.dispose(),P.off(document,"focusin.bs.offcanvas")}_getConfig(t){return t={...Se,...U.getDataAttributes(this._element),..."object"==typeof t?t:{}},l("offcanvas",t,Ie),t}_initializeBackDrop(){return new ke({isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_enforceFocusOnElement(t){P.off(document,"focusin.bs.offcanvas"),P.on(document,"focusin.bs.offcanvas",e=>{document===e.target||t===e.target||t.contains(e.target)||t.focus()}),t.focus()}_addEventListeners(){P.on(this._element,"click.dismiss.bs.offcanvas",'[data-bs-dismiss="offcanvas"]',()=>this.hide()),P.on(this._element,"keydown.dismiss.bs.offcanvas",t=>{this._config.keyboard&&"Escape"===t.key&&this.hide()})}static jQueryInterface(t){return this.each((function(){const e=Ne.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}P.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(e){const i=s(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),h(this))return;P.one(i,"hidden.bs.offcanvas",()=>{c(this)&&this.focus()});const n=t.findOne(".offcanvas.show");n&&n!==i&&Ne.getInstance(n).hide(),Ne.getOrCreateInstance(i).toggle(this)})),P.on(window,"load.bs.offcanvas.data-api",()=>t.find(".offcanvas.show").forEach(t=>Ne.getOrCreateInstance(t).show())),_(Ne);const je=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Me=/^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i,Pe=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,He=(t,e)=>{const i=t.nodeName.toLowerCase();if(e.includes(i))return!je.has(i)||Boolean(Me.test(t.nodeValue)||Pe.test(t.nodeValue));const n=e.filter(t=>t instanceof RegExp);for(let t=0,e=n.length;t<e;t++)if(n[t].test(i))return!0;return!1};function Re(t,e,i){if(!t.length)return t;if(i&&"function"==typeof i)return i(t);const n=(new window.DOMParser).parseFromString(t,"text/html"),s=Object.keys(e),o=[].concat(...n.body.querySelectorAll("*"));for(let t=0,i=o.length;t<i;t++){const i=o[t],n=i.nodeName.toLowerCase();if(!s.includes(n)){i.remove();continue}const r=[].concat(...i.attributes),a=[].concat(e["*"]||[],e[n]||[]);r.forEach(t=>{He(t,a)||i.removeAttribute(t.nodeName)})}return n.body.innerHTML}const Be=new RegExp("(^|\\s)bs-tooltip\\S+","g"),We=new Set(["sanitize","allowList","sanitizeFn"]),qe={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(array|string|function)",container:"(string|element|boolean)",fallbackPlacements:"array",boun
vendor: 19,581 bytes, line 7
7dary:"(string|element)",customClass:"(string|function)",sanitize:"boolean",sanitizeFn:"(null|function)",allowList:"object",popperConfig:"(null|object|function)"},ze={AUTO:"auto",TOP:"top",RIGHT:g()?"left":"right",BOTTOM:"bottom",LEFT:g()?"right":"left"},$e={animation:!0,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:[0,0],container:!1,fallbackPlacements:["top","right","bottom","left"],boundary:"clippingParents",customClass:"",sanitize:!0,sanitizeFn:null,allowList:{"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},popperConfig:null},Ue={HIDE:"hide.bs.tooltip",HIDDEN:"hidden.bs.tooltip",SHOW:"show.bs.tooltip",SHOWN:"shown.bs.tooltip",INSERTED:"inserted.bs.tooltip",CLICK:"click.bs.tooltip",FOCUSIN:"focusin.bs.tooltip",FOCUSOUT:"focusout.bs.tooltip",MOUSEENTER:"mouseenter.bs.tooltip",MOUSELEAVE:"mouseleave.bs.tooltip"};class Fe extends B{constructor(t,e){if(void 0===fe)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(t),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(e),this.tip=null,this._setListeners()}static get Default(){return $e}static get NAME(){return"tooltip"}static get Event(){return Ue}static get DefaultType(){return qe}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(t){if(this._isEnabled)if(t){const e=this._initializeOnDelegatedTarget(t);e._activeTrigger.click=!e._activeTrigger.click,e._isWithActiveTrigger()?e._enter(null,e):e._leave(null,e)}else{if(this.getTipElement().classList.contains("show"))return void this._leave(null,this);this._enter(null,this)}}dispose(){clearTimeout(this._timeout),P.off(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this.tip&&this.tip.remove(),this._popper&&this._popper.destroy(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;const t=P.trigger(this._element,this.constructor.Event.SHOW),i=d(this._element),n=null===i?this._element.ownerDocument.documentElement.contains(this._element):i.contains(this._element);if(t.defaultPrevented||!n)return;const s=this.getTipElement(),o=e(this.constructor.NAME);s.setAttribute("id",o),this._element.setAttribute("aria-describedby",o),this.setContent(),this._config.animation&&s.classList.add("fade");const r="function"==typeof this._config.placement?this._config.placement.call(this,s,this._element):this._config.placement,a=this._getAttachment(r);this._addAttachmentClass(a);const{container:l}=this._config;R.set(s,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.appendChild(s),P.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=ue(this._element,s,this._getPopperConfig(a)),s.classList.add("show");const c="function"==typeof this._config.customClass?this._config.customClass():this._config.customClass;c&&s.classList.add(...c.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(t=>{P.on(t,"mouseover",u)});const h=this.tip.classList.contains("fade");this._queueCallback(()=>{const t=this._hoverState;this._hoverState=null,P.trigger(this._element,this.constructor.Event.SHOWN),"out"===t&&this._leave(null,this)},this.tip,h)}hide(){if(!this._popper)return;const t=this.getTipElement();if(P.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;t.classList.remove("show"),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach(t=>P.off(t,"mouseover",u)),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1;const e=this.tip.classList.contains("fade");this._queueCallback(()=>{this._isWithActiveTrigger()||("show"!==this._hoverState&&t.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),P.trigger(this._element,this.constructor.Event.HIDDEN),this._popper&&(this._popper.destroy(),this._popper=null))},this.tip,e),this._hoverState=""}update(){null!==this._popper&&this._popper.update()}isWithContent(){return Boolean(this.getTitle())}getTipElement(){if(this.tip)return this.tip;const t=document.createElement("div");return t.innerHTML=this._config.template,this.tip=t.children[0],this.tip}setContent(){const e=this.getTipElement();this.setElementContent(t.findOne(".tooltip-inner",e),this.getTitle()),e.classList.remove("fade","show")}setElementContent(t,e){if(null!==t)return r(e)?(e=a(e),void(this._config.html?e.parentNode!==t&&(t.innerHTML="",t.appendChild(e)):t.textContent=e.textContent)):void(this._config.html?(this._config.sanitize&&(e=Re(e,this._config.allowList,this._config.sanitizeFn)),t.innerHTML=e):t.textContent=e)}getTitle(){let t=this._element.getAttribute("data-bs-original-title");return t||(t="function"==typeof this._config.title?this._config.title.call(this._element):this._config.title),t}updateAttachment(t){return"right"===t?"end":"left"===t?"start":t}_initializeOnDelegatedTarget(t,e){const i=this.constructor.DATA_KEY;return(e=e||R.get(t.delegateTarget,i))||(e=new this.constructor(t.delegateTarget,this._getDelegateConfig()),R.set(t.delegateTarget,i,e)),e}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map(t=>Number.parseInt(t,10)):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(t){const e={placement:t,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"onChange",enabled:!0,phase:"afterWrite",fn:t=>this._handlePopperPlacementChange(t)}],onFirstUpdate:t=>{t.options.placement!==t.placement&&this._handlePopperPlacementChange(t)}};return{...e,..."function"==typeof this._config.popperConfig?this._config.popperConfig(e):this._config.popperConfig}}_addAttachmentClass(t){this.getTipElement().classList.add("bs-tooltip-"+this.updateAttachment(t))}_getAttachment(t){return ze[t.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach(t=>{if("click"===t)P.on(this._element,this.constructor.Event.CLICK,this._config.selector,t=>this.toggle(t));else if("manual"!==t){const e="hover"===t?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,i="hover"===t?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;P.on(this._element,e,this._config.selector,t=>this._enter(t)),P.on(this._element,i,this._config.selector,t=>this._leave(t))}}),this._hideModalHandler=()=>{this._element&&this.hide()},P.on(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){const t=this._element.getAttribute("title"),e=typeof this._element.getAttribute("data-bs-original-title");(t||"string"!==e)&&(this._element.setAttribute("data-bs-original-title",t||""),!t||this._element.getAttribute("aria-label")||this._element.textContent||this._element.setAttribute("aria-label",t),this._element.setAttribute("title",""))}_enter(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusin"===t.type?"focus":"hover"]=!0),e.getTipElement().classList.contains("show")||"show"===e._hoverState?e._hoverState="show":(clearTimeout(e._timeout),e._hoverState="show",e._config.delay&&e._config.delay.show?e._timeout=setTimeout(()=>{"show"===e._hoverState&&e.show()},e._config.delay.show):e.show())}_leave(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusout"===t.type?"focus":"hover"]=e._element.contains(t.relatedTarget)),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState="out",e._config.delay&&e._config.delay.hide?e._timeout=setTimeout(()=>{"out"===e._hoverState&&e.hide()},e._config.delay.hide):e.hide())}_isWithActiveTrigger(){for(const t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1}_getConfig(t){const e=U.getDataAttributes(this._element);return Object.keys(e).forEach(t=>{We.has(t)&&delete e[t]}),(t={...this.constructor.Default,...e,..."object"==typeof t&&t?t:{}}).container=!1===t.container?document.body:a(t.container),"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),l("tooltip",t,this.constructor.DefaultType),t.sanitize&&(t.template=Re(t.template,t.allowList,t.sanitizeFn)),t}_getDelegateConfig(){const t={};if(this._config)for(const e in this._config)this.constructor.Default[e]!==this._config[e]&&(t[e]=this._config[e]);return t}_cleanTipClass(){const t=this.getTipElement(),e=t.getAttribute("class").match(Be);null!==e&&e.length>0&&e.map(t=>t.trim()).forEach(e=>t.classList.remove(e))}_handlePopperPlacementChange(t){const{state:e}=t;e&&(this.tip=e.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(e.placement)))}static jQueryInterface(t){return this.each((function(){const e=Fe.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}_(Fe);const Ve=new RegExp("(^|\\s)bs-popover\\S+","g"),Ke={...Fe.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="popover-arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'},Xe={...Fe.DefaultType,content:"(string|element|function)"},Ye={HIDE:"hide.bs.popover",HIDDEN:"hidden.bs.popover",SHOW:"show.bs.popover",SHOWN:"shown.bs.popover",INSERTED:"inserted.bs.popover",CLICK:"click.bs.popover",FOCUSIN:"focusin.bs.popover",FOCUSOUT:"focusout.bs.popover",MOUSEENTER:"mouseenter.bs.popover",MOUSELEAVE:"mouseleave.bs.popover"};class Qe extends Fe{static get Default(){return Ke}static get NAME(){return"popover"}static get Event(){return Ye}static get DefaultType(){return Xe}isWithContent(){return this.getTitle()||this._getContent()}getTipElement(){return this.tip||(this.tip=super.getTipElement(),this.getTitle()||t.findOne(".popover-header",this.tip).remove(),this._getContent()||t.findOne(".popover-body",this.tip).remove()),this.tip}setContent(){const e=this.getTipElement();this.setElementContent(t.findOne(".popover-header",e),this.getTitle());let i=this._getContent();"function"==typeof i&&(i=i.call(this._element)),this.setElementContent(t.findOne(".popover-body",e),i),e.classList.remove("fade","show")}_addAttachmentClass(t){this.getTipElement().classList.add("bs-popover-"+this.updateAttachment(t))}_getContent(){return this._element.getAttribute("data-bs-content")||this._config.content}_cleanTipClass(){const t=this.getTipElement(),e=t.getAttribute("class").match(Ve);null!==e&&e.length>0&&e.map(t=>t.trim()).forEach(e=>t.classList.remove(e))}static jQueryInterface(t){return this.each((function(){const e=Qe.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}_(Qe);const Ge={offset:10,method:"auto",target:""},Ze={offset:"number",method:"string",target:"(string|element)"};class Je extends B{constructor(t,e){super(t),this._scrollElement="BODY"===this._element.tagName?window:this._element,this._config=this._getConfig(e),this._selector=`${this._config.target} .nav-link, ${this._config.target} .list-group-item, ${this._config.target} .dropdown-item`,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,P.on(this._scrollElement,"scroll.bs.scrollspy",()=>this._process()),this.refresh(),this._process()}static get Default(){return Ge}static get NAME(){return"scrollspy"}refresh(){const e=this._scrollElement===this._scrollElement.window?"offset":"position",i="auto"===this._config.method?e:this._config.method,s="position"===i?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),t.find(this._selector).map(e=>{const o=n(e),r=o?t.findOne(o):null;if(r){const t=r.getBoundingClientRect();if(t.width||t.height)return[U[i](r).top+s,o]}return null}).filter(t=>t).sort((t,e)=>t[0]-e[0]).forEach(t=>{this._offsets.push(t[0]),this._targets.push(t[1])})}dispose(){P.off(this._scrollElement,".bs.scrollspy"),super.dispose()}_getConfig(t){if("string"!=typeof(t={...Ge,...U.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}}).target&&r(t.target)){let{id:i}=t.target;i||(i=e("scrollspy"),t.target.id=i),t.target="#"+i}return l("scrollspy",t,Ze),t}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){const t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),i=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=i){const t=this._targets[this._targets.length-1];this._activeTarget!==t&&this._activate(t)}else{if(this._activeTarget&&t<this._offsets[0]&&this._offsets[0]>0)return this._activeTarget=null,void this._clear();for(let e=this._offsets.length;e--;)this._activeTarget!==this._targets[e]&&t>=this._offsets[e]&&(void 0===this._offsets[e+1]||t<this._offsets[e+1])&&this._activate(this._targets[e])}}_activate(e){this._activeTarget=e,this._clear();const i=this._selector.split(",").map(t=>`${t}[data-bs-target="${e}"],${t}[href="${e}"]`),n=t.findOne(i.join(","));n.classList.contains("dropdown-item")?(t.findOne(".dropdown-toggle",n.closest(".dropdown")).classList.add("active"),n.classList.add("active")):(n.classList.add("active"),t.parents(n,".nav, .list-group").forEach(e=>{t.prev(e,".nav-link, .list-group-item").forEach(t=>t.classList.add("active")),t.prev(e,".nav-item").forEach(e=>{t.children(e,".nav-link").forEach(t=>t.classList.add("active"))})})),P.trigger(this._scrollElement,"activate.bs.scrollspy",{relatedTarget:e})}_clear(){t.find(this._selector).filter(t=>t.classList.contains("active")).forEach(t=>t.classList.remove("active"))}static jQueryInterface(t){return this.each((function(){const e=Je.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}P.on(window,"load.bs.scrollspy.data-api",()=>{t.find('[data-bs-spy="scroll"]').forEach(t=>new Je(t))}),_(Je);class ti extends B{static get NAME(){return"tab"}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains("active"))return;let e;const i=s(this._element),n=this._element.closest(".nav, .list-group");if(n){const i="UL"===n.nodeName||"OL"===n.nodeName?":scope > li > .active":".active";e=t.find(i,n),e=e[e.length-1]}const o=e?P.trigger(e,"hide.bs.tab",{relatedTarget:this._element}):null;if(P.trigger(this._element,"show.bs.tab",{relatedTarget:e}).defaultPrevented||null!==o&&o.defaultPrevented)return;this._activate(this._element,n);const r=()=>{P.trigger(e,"hidden.bs.tab",{relatedTarget:this._element}),P.trigger(this._element,"shown.bs.tab",{relatedTarget:e})};i?this._activate(i,i.parentNode,r):r()}_activate(e,i,n){const s=(!i||"UL"!==i.nodeName&&"OL"!==i.nodeName?t.children(i,".active"):t.find(":scope > li > .active",i))[0],o=n&&s&&s.classList.contains("fade"),r=()=>this._transitionComplete(e,s,n);s&&o?(s.classList.remove("show"),this._queueCallback(r,e,!0)):r()}_transitionComplete(e,i,n){if(i){i.classList.remove("active");const e=t.findOne(":scope > .dropdown-menu .active",i.parentNode);e&&e.classList.remove("active"),"tab"===i.getAttribute("role")&&i.setAttribute("aria-selected",!1)}e.classList.add("active"),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!0),f(e),e.classList.contains("fade")&&e.classList.add("show");let s=e.parentNode;if(s&&"LI"===s.nodeName&&(s=s.parentNode),s&&s.classList.contains("dropdown-menu")){const i=e.closest(".dropdown");i&&t.find(".dropdown-toggle",i).forEach(t=>t.classList.add("active")),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(t){return this.each((function(){const e=ti.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}P.on(document,"click.bs.tab.data-api",'[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',(function(t){["A","AREA"].includes(this.tagName)&&t.preventDefault(),h(this)||ti.getOrCreateInstance(this).show()})),_(ti);const ei={animation:"boolean",autohide:"boolean",delay:"number"},ii={animation:!0,autohide:!0,delay:5e3};class ni extends B{constructor(t,e){super(t),this._config=this._getConfig(e),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return ei}static get Default(){return ii}static get NAME(){return"toast"}show(){P.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove("hide"),f(this._element),this._element.classList.add("showing"),this._queueCallback(()=>{this._element.classList.remove("showing"),this._element.classList.add("show"),P.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()},this._element,this._config.animation))}hide(){this._element.classList.contains("show")&&(P.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.remove("show"),this._queueCallback(()=>{this._element.classList.add("hide"),P.trigger(this._element,"hidden.bs.toast")},this._element,this._config.animation)))}dispose(){this._clearTimeout(),this._element.classList.contains("show")&&this._element.classList.remove("show"),super.dispose()}_getConfig(t){return t={...ii,...U.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}},l("toast",t,this.constructor.DefaultType),t}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(t,e){switch(t.type){case"mouseover":case"mouseout":this._hasMouseInteraction=e;break;case"focusin":case"focusout":this._hasKeyboardInteraction=e}if(e)return void this._clearTimeout();const i=t.relatedTarget;this._element===i||this._element.contains(i)||this._maybeScheduleHide()}_setListeners(){P.on(this._element,"click.dismiss.bs.toast",'[data-bs-dismiss="toast"]',()=>this.hide()),P.on(this._element,"mouseover.bs.toast",t=>this._onInteraction(t,!0)),P.on(this._element,"mouseout.bs.toast",t=>this._onInteraction(t,!1)),P.on(this._element,"focusin.bs.toast",t=>this._onInteraction(t,!0)),P.on(this._element,"focusout.bs.toast",t=>this._onInteraction(t,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(t){return this.each((function(){const e=ni.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method n
7amed "${t}"`);e[t](this)}}))}}return _(ni),{Alert:W,Button:q,Carousel:Z,Collapse:et,Dropdown:Ae,Modal:De,Offcanvas:Ne,Popover:Qe,ScrollSpy:Je,Tab:ti,Toast:ni,Tooltip:Fe}})); 8//# sourceMappingURL=bootstrap.bundle.min.js.map 9(function (global, factory) { 10 typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : 11 typeof define === 'function' && define.amd ? define(['exports'], factory) : 12 (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.countUp = {})); 13})(this, (function (exports) { 'use strict'; 14 15 var __assign = (undefined && undefined.__assign) || function () { 16 __assign = Object.assign || function(t) { 17 for (var s, i = 1, n = arguments.length; i < n; i++) { 18 s = arguments[i]; 19 for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) 20 t[p] = s[p]; 21 } 22 return t; 23 }; 24 return __assign.apply(this, arguments); 25 }; 26 // playground: stackblitz.com/edit/countup-typescript 27 var CountUp = /** @class */ (function () { 28 function CountUp(target, endVal, options) { 29 var _this = this; 30 this.target = target; 31 this.endVal = endVal; 32 this.options = options; 33 this.version = '2.0.8'; 34 this.defaults = { 35 startVal: 0, 36 decimalPlaces: 0, 37 duration: 2, 38 useEasing: true, 39 useGrouping: true, 40 smartEasingThreshold: 999, 41 smartEasingAmount: 333, 42 separator: ',', 43 decimal: '.', 44 prefix: '', 45 suffix: '' 46 }; 47 this.finalEndVal = null; // for smart easing 48 this.useEasing = true; 49 this.countDown = false; 50 this.error = ''; 51 this.startVal = 0; 52 this.paused = true; 53 this.count = function (timestamp) { 54 if (!_this.startTime) { 55 _this.startTime = timestamp; 56 } 57 var progress = timestamp - _this.startTime; 58 _this.remaining = _this.duration - progress; 59 // to ease or not to ease 60 if (_this.useEasing) { 61 if (_this.countDown) { 62 _this.frameVal = _this.startVal - _this.easingFn(progress, 0, _this.startVal - _this.endVal, _this.duration); 63 } 64 else { 65 _this.frameVal = _this.easingFn(progress, _this.startVal, _this.endVal - _this.startVal, _this.duration); 66 } 67 } 68 else { 69 if (_this.countDown) { 70 _this.frameVal = _this.startVal - ((_this.startVal - _this.endVal) * (progress / _this.duration)); 71 } 72 else { 73 _this.frameVal = _this.startVal + (_this.endVal - _this.startVal) * (progress / _this.duration); 74 } 75 } 76 // don't go past endVal since progress can exceed duration in the last frame 77 if (_this.countDown) { 78 _this.frameVal = (_this.frameVal < _this.endVal) ? _this.endVal : _this.frameVal; 79 } 80 else { 81 _this.frameVal = (_this.frameVal > _this.endVal) ? _this.endVal : _this.frameVal; 82 } 83 // decimal 84 _this.frameVal = Number(_this.frameVal.toFixed(_this.options.decimalPlaces)); 85 // format and print value 86 _this.printValue(_this.frameVal); 87 // whether to continue 88 if (progress < _this.duration) { 89 _this.rAF = requestAnimationFrame(_this.count); 90 } 91 else if (_this.finalEndVal !== null) { 92 // smart easing 93 _this.update(_this.finalEndVal); 94 } 95 else { 96 if (_this.callback) { 97 _this.callback(); 98 } 99 } 100 }; 101 // default format and easing functions 102 this.formatNumber = function (num) { 103 var neg = (num < 0) ? '-' : ''; 104 var result, x1, x2, x3; 105 result = Math.abs(num).toFixed(_this.options.decimalPlaces); 106 result += ''; 107 var x = result.split('.'); 108 x1 = x[0]; 109 x2 = x.length > 1 ? _this.options.decimal + x[1] : ''; 110 if (_this.options.useGrouping) { 111 x3 = ''; 112 for (var i = 0, len = x1.length; i < len; ++i) { 113 if (i !== 0 && (i % 3) === 0) { 114 x3 = _this.options.separator + x3; 115 } 116 x3 = x1[len - i - 1] + x3; 117 } 118 x1 = x3; 119 } 120 // optional numeral substitution 121 if (_this.options.numerals && _this.options.numerals.length) { 122 x1 = x1.replace(/[0-9]/g, function (w) { return _this.options.numerals[+w]; }); 123 x2 = x2.replace(/[0-9]/g, function (w) { return _this.options.numerals[+w]; }); 124 } 125 return neg + _this.options.prefix + x1 + x2 + _this.options.suffix; 126 }; 127 this.easeOutExpo = function (t, b, c, d) { 128 return c * (-Math.pow(2, -10 * t / d) + 1) * 1024 / 1023 + b; 129 }; 130 this.options = __assign(__assign({}, this.defaults), options); 131 this.formattingFn = (this.options.formattingFn) ? 132 this.options.formattingFn : this.formatNumber; 133 this.easingFn = (this.options.easingFn) ? 134 this.options.easingFn : this.easeOutExpo; 135 this.startVal = this.validateValue(this.options.startVal); 136 this.frameVal = this.startVal; 137 this.endVal = this.validateValue(endVal); 138 this.options.decimalPlaces = Math.max(this.options.decimalPlaces); 139 this.resetDuration(); 140 this.options.separator = String(this.options.separator); 141 this.useEasing = this.options.useEasing; 142 if (this.options.separator === '') { 143 this.options.useGrouping = false;
144 } 145 this.el = (typeof target === 'string') ? document.getElementById(target) : target; 146 if (this.el) { 147 this.printValue(this.startVal); 148 } 149 else { 150 this.error = '[CountUp] target is null or undefined'; 151 } 152 } 153 // determines where easing starts and whether to count down or up 154 CountUp.prototype.determineDirectionAndSmartEasing = function () { 155 var end = (this.finalEndVal) ? this.finalEndVal : this.endVal; 156 this.countDown = (this.startVal > end); 157 var animateAmount = end - this.startVal; 158 if (Math.abs(animateAmount) > this.options.smartEasingThreshold) { 159 this.finalEndVal = end; 160 var up = (this.countDown) ? 1 : -1; 161 this.endVal = end + (up * this.options.smartEasingAmount); 162 this.duration = this.duration / 2; 163 } 164 else { 165 this.endVal = end; 166 this.finalEndVal = null; 167 } 168 if (this.finalEndVal) { 169 this.useEasing = false; 170 } 171 else { 172 this.useEasing = this.options.useEasing; 173 } 174 }; 175 // start animation 176 CountUp.prototype.start = function (callback) { 177 if (this.error) { 178 return; 179 } 180 this.callback = callback; 181 if (this.duration > 0) { 182 this.determineDirectionAndSmartEasing(); 183 this.paused = false; 184 this.rAF = requestAnimationFrame(this.count); 185 } 186 else { 187 this.printValue(this.endVal); 188 } 189 }; 190 // pause/resume animation 191 CountUp.prototype.pauseResume = function () { 192 if (!this.paused) { 193 cancelAnimationFrame(this.rAF); 194 } 195 else { 196 this.startTime = null; 197 this.duration = this.remaining; 198 this.startVal = this.frameVal; 199 this.determineDirectionAndSmartEasing(); 200 this.rAF = requestAnimationFrame(this.count); 201 } 202 this.paused = !this.paused; 203 }; 204 // reset to startVal so animation can be run again 205 CountUp.prototype.reset = function () { 206 cancelAnimationFrame(this.rAF); 207 this.paused = true; 208 this.resetDuration(); 209 this.startVal = this.validateValue(this.options.startVal); 210 this.frameVal = this.startVal; 211 this.printValue(this.startVal); 212 }; 213 // pass a new endVal and start animation 214 CountUp.prototype.update = function (newEndVal) { 215 cancelAnimationFrame(this.rAF); 216 this.startTime = null; 217 this.endVal = this.validateValue(newEndVal); 218 if (this.endVal === this.frameVal) { 219 return; 220 } 221 this.startVal = this.frameVal; 222 if (!this.finalEndVal) { 223 this.resetDuration(); 224 } 225 this.finalEndVal = null; 226 this.determineDirectionAndSmartEasing(); 227 this.rAF = requestAnimationFrame(this.count); 228 }; 229 CountUp.prototype.printValue = function (val) { 230 var result = this.formattingFn(val); 231 if (this.el.tagName === 'INPUT') { 232 var input = this.el; 233 input.value = result; 234 } 235 else if (this.el.tagName === 'text' || this.el.tagName === 'tspan') { 236 this.el.textContent = result; 237 } 238 else { 239 this.el.innerHTML = result; 240 } 241 }; 242 CountUp.prototype.ensureNumber = function (n) { 243 return (typeof n === 'number' && !isNaN(n)); 244 }; 245 CountUp.prototype.validateValue = function (value) { 246 var newValue = Number(value); 247 if (!this.ensureNumber(newValue)) { 248 this.error = "[CountUp] invalid start or end value: " + value; 249 return null; 250 } 251 else { 252 return newValue; 253 } 254 }; 255 CountUp.prototype.resetDuration = function () { 256 this.startTime = null; 257 this.duration = Number(this.options.duration) * 1000; 258 this.remaining = this.duration; 259 }; 260 return CountUp; 261 }()); 262 263 exports.CountUp = CountUp; 264 265 Object.defineProperty(exports, '__esModule', { value: true }); 266 267})); 268 269$( document ).ready( function() { 270 271 gsap.registerPlugin(ScrollTrigger); 272 273 $( ".tx_hive_facts .hive-facts-item.fact .value" ).each(function( index ) { 274 275 // Initialize Configuration 276 var $value = parseFloat($( this ).data("value")); 277 var $duration = parseInt($( this ).data("duration")); 278 if( $duration == 0) { $duration = parseInt($( this ).data("duration-global")); } 279 280 var $factIdentifier = $(this).attr('id'); 281 282 const options = { 283 startVal: parseFloat($( this ).data("start-value")), 284 decimalPlaces: parseInt($( this ).data("decimalplaces")), 285 duration: $duration, 286 useGrouping: Boolean($( this ).data("usegrouping")), 287 separator: $( this ).data("separator"),
288 decimal: $( this ).data("decimal"), 289 prefix: $( this ).data("prefix"), 290 suffix: $( this ).data("suffix"), 291 }; 292 293 var countUpElement = new countUp.CountUp($factIdentifier, $value, options); 294 295 gsap.to($( this ), { 296 scrollTrigger: { 297 trigger: $( this ), 298 start: "top bottom", 299 end: "bottom top", 300 once: true, 301 onEnter: () => { 302 if (!countUpElement.error) { 303 countUpElement.start(); 304 } else { 305 console.error(countUpElement.error); 306 } 307 } 308 } 309 }); 310 311 }); 312 313}); 314$( document ).ready( function() { 315 var aSwiper = []; 316 var titles = []; 317 318 $( ".tx_hive_swiperjs_simple .swiper-container[data-configuration='default']" ).each(function( index ) { 319 320 // Initialize Configuration 321 var $uid = $( this ).data("uid"); 322 var $autoplay = parseInt($( this ).data("autoplay")); 323 var $loop = parseInt($( this ).data("loop")); 324 var $hashNavigation = parseInt($( this ).data("hash-navigation")); 325 if($hashNavigation == 1) { $hashNavigation = true; } 326 var $paginationType = $( this ).data("pagination-type"); 327 328 // Initialize Swiper 329 console.log("hive_swiperjs_simple :: Swiper initialize #hive-swiperjs-simple--" + $uid); 330 var swiperIdentifier = '#hive-swiperjs-simple--' + $uid; 331 aSwiper[index] = new Swiper('#hive-swiperjs-simple--' + $uid, { 332 333 loop: $loop, 334 335 hashNavigation: $hashNavigation, 336 337 pagination: { 338 //el: '#swiper-pagination--' + $uid, 339 el: '.swiper-pagination', 340 clickable: true, 341 }, 342 343 navigation: { 344 //nextEl: '#swiper-button-next--' + $uid, 345 //prevEl: '#swiper-button-prev--' + $uid, 346 nextEl: '.swiper-button-next', 347 prevEl: '.swiper-button-prev', 348 }, 349 350 }); 351 352 // update Swiper (add Params) 353 //pagination 354 switch ($paginationType) { 355 case 'dynamicbullets': 356 aSwiper[index].params.pagination.type = 'bullets'; 357 aSwiper[index].params.pagination.dynamicBullets = true; 358 aSwiper[index].pagination.init(); 359 aSwiper[index].pagination.render(); 360 aSwiper[index].pagination.update(); 361 break; 362 case 'fraction': 363 aSwiper[index].params.pagination.type = 'fraction'; 364 aSwiper[index].pagination.init(); 365 aSwiper[index].pagination.render(); 366 aSwiper[index].pagination.update(); 367 break; 368 case 'progressbar': 369 aSwiper[index].params.pagination.type = 'progressbar'; 370 aSwiper[index].pagination.init(); 371 aSwiper[index].pagination.render(); 372 aSwiper[index].pagination.update(); 373 break; 374 case 'custom': 375 aSwiper[index].params.pagination.clickable = true; 376 aSwiper[index].params.pagination.renderBullet = function (index, className) { 377 var el = $( swiperIdentifier ).find(".slide--" + (index + 1) + ":not(.swiper-slide-duplicate)"); 378 var titleValue = el.data("pagination-title").toString(); 379 if (!titles.includes(titleValue)) { 380 titles.push(titleValue); 381 return '<span class="' + className + ' swiper-pagination-custom swiper-pagination-titled">' + titles[index] + '</span>'; 382 } 383 return ""; 384 }; 385 aSwiper[index].pagination.init(); 386 aSwiper[index].pagination.render(); 387 aSwiper[index].pagination.update(); 388 break; 389 case 'nopagination': 390 aSwiper[index].pagination.destroy(); 391 break; 392 default: 393 aSwiper[index].params.pagination.type = 'bullets'; 394 aSwiper[index].params.pagination.dynamicBullets = false;
395 aSwiper[index].pagination.init(); 396 aSwiper[index].pagination.render(); 397 aSwiper[index].pagination.update(); 398 break; 399 } 400 401 //autoplay 402 if($autoplay > 0) { 403 aSwiper[index].params.autoplay.delay = $autoplay; 404 aSwiper[index].autoplay.start(); 405 } 406 407 aSwiper[index].update(); 408 409 }); 410 411}); 412/** 413 * ------------------------------------------------------------------------ 414 * Smooth Anchor Scroll (Offset) 415 * ------------------------------------------------------------------------ 416 **/ 417 418// caching 419//var $root = $('html, body'); 420 421// offset 422var $globalOffset = 0; 423 424var $anchor_scrolling = false; 425 426if (window.location.hash) { 427 // to top right away 428 scroll(0,0); 429 // void some browsers issue 430 setTimeout( function() { scroll(0,0); }, 1); 431 432 console.log("anchor scroll: to top right away"); 433} 434 435 436$(document).ready(function() { 437 //On Load 438 if (window.location.hash && !$("body").hasClass("anchorscrolling-off")) { 439 console.log("anchor scroll on path: " + window.location.pathname); 440 441 $offset = $globalOffset; 442 443 setTimeout(function() { 444 smooth_scroll_to(window.location.hash, $offset); 445 }, 100); 446 } 447}); 448 449$(document).ready(function() { 450 //On Click 451 $('a[href*="#"]').not('[href="#"]').not('[href="#0"]').not('[href*="#carousel"]').not('[href*="#accordion"]').on('click', function(event){ 452 // On-page links 453 if ( 454 location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') 455 && 456 location.hostname == this.hostname 457 && 458 !$("body").hasClass("anchorscrolling-off") 459 ) { 460 461 $offset = $globalOffset; 462 // Figure out element to scroll to 463 smooth_scroll_to(this.hash, $offset, event); 464 } 465 }); 466 467 468}); //end document.ready 469 470 471$(document).ready(function() { 472 //On ToTop 473 $('a[href="#top"]').on('click', function(event){ 474 event.preventDefault(); 475 var offset = 0; 476 477 $('html, body').animate({ 478 scrollTop: 0 + offset + 'px' 479 }, 700, 'swing'); 480 }); 481 482}); //end document.ready 483 484function smooth_scroll_to(hash, offset, event) { 485 486 $anchor_scrolling = true; 487 488 if(typeof hash == 'undefined') { 489 console.log("smooth anchor scroll hash=undefined"); 490 return false; 491 } else { 492 493 var target = $(hash); 494 target = target.length ? target : $('[name=' + hash.slice(1) + ']'); 495 496 console.log("anchor scroll with offset: " + offset); 497 498 if($(target).length > 0) { 499 500 if(typeof event !== 'undefined') { 501 event.preventDefault(); 502 history.pushState(null, null, $(event.target).attr('href')); 503 } 504 $('html, body').animate({ 505 scrollTop: target.offset().top + offset + 'px' 506 }, 700, 'swing', function() { 507 /* 508 // Callback after animation 509 // Must change focus! 510 var $target = $(target); 511 $target.focus(); 512 if ($target.is(":focus")) { // Checking if the target was focused 513 return false; 514 } else { 515 $target.attr('tabindex','-1'); // Adding tabindex for elements not focusable 516 $target.focus(); // Set focus again 517 }; 518 */ 519 520 location.hash = hash; 521 $anchor_scrolling = false; 522 }); 523 } 524 } 525 526}//END smooth_scroll_to 527// nav 528$(document).ready(function() { 529 $("a#open_burger_menu").click(function() { 530 $('nav.navigation__nav').toggleClass("active"); 531 532 window.setTimeout(function() { 533 $('#open_burger_menu').toggleClass("active"); 534 }, 250); 535 536 window.setTimeout(function() { 537 $('nav.navigation__nav .navigation__item:first-child').toggleClass("active"); 538 }, 500); 539 540 window.setTimeout(function() { 541 $('nav.navigation__nav .navigation__item:nth-child(2)').toggleClass("active"); 542 }, 1000); 543 544 window.setTimeout(function() { 545 $('nav.navigation__nav .navigation__item:nth-child(3)').toggleClass("active"); 546 }, 1500); 547 }); 548 549 if ($(window).width() < 767) { 550 $('section.video-bg .btn').removeClass("btn-primary-white"); 551 $('section.video-bg .btn').addClass("btn-primary"); 552 } 553}); 554 555// artists category filter toggle 556/*$(document).ready(function() { 557 $(".category-filter p.filter-header").click(function() { 558 $('p.filter-header').toggleClass("active"); 559 $('.filter-body').toggleClass("active"); 560 }); 561});*/ 562 563 564// btn animation 565$(document).ready(function () { 566 // Get the button 567 $(".btn.btn-text-animation, .btn.btn-read-more, .btn.btn-read-more-white, .btn.btn-start-now, .btn.btn-start-now-white, .btn.btn-find-dealer, .btn.btn-newsroom, .btn.btn-back, .btn.btn-subscribe").each(function () { 568 var $button = $(this); 569 570 // Get the text of the button 571 var buttonText = $button.text(); 572 573 // Append the text as a span element twice 574 $button.append('<div class="btn__marquee"><div><span>' + buttonText + '</span><span>' + buttonText + '</span><span>' + buttonText + '</span></div></div>'); 575 //$button.after('<span>' + buttonText + '</span>'); 576 }); 577}); 578 579 580// section header-banner video sound on/off animation 581// Get a reference to the section element 582var sectionHeaderBanner = document.querySelector('section'); 583 584// Check if the section element has the specific class 585if (sectionHeaderBanner.classList.contains('add-sound-button')) { 586 // Create the new HTML element 587 const div = document.createElement('div'); 588 div.classList.add('drums-button'); 589 div.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="55.5" height="45" viewB
589ox="0 0 55.5 45"><g id="Komponente_36_3" data-name="Komponente 36 â 3" transform="translate(1)"><g id="Ellipse_211" data-name="Ellipse 211" transform="translate(4)" fill="transparent" stroke="#000" stroke-width="2"> <circle cx="22.5" cy="22.5" r="22.5" stroke="none"/> <circle cx="22.5" cy="22.5" r="21.5" fill="none"/> </g> <line id="drum-stick-1" data-name="Linie 327" y1="34" transform="translate(0 5.75)" fill="none" stroke="#000" stroke-width="2"/> <line id="drum-stick-2" data-name="Linie 328" y1="34" transform="translate(53.5 5.25)" fill="none" stroke="#000" stroke-width="2"/> <g id="Ellipse_215" data-name="Ellipse 215" transform="translate(20 16)" stroke="#000" stroke-width="2" opacity="0"> <circle cx="6.5" cy="6.5" r="6.5" stroke="none"/> <circle cx="6.5" cy="6.5" r="5.5" fill="none"/> </g> </g></svg>'; 590 591 // Append the new HTML element to the section element 592 sectionHeaderBanner.appendChild(div); 593} 594 595var headerVideo = document.querySelector('section.header-banner.add-sound-button video'); 596 597$('.drums-button svg').on('click', function () { 598 $(".drums-button").addClass("sound"); 599 600 if (headerVideo.muted == false) { 601 headerVideo.muted = true; 602 $(".drums-button").removeClass("sound"); 603 } else { 604 headerVideo.muted = false; 605 //headerVideo.load(); 606 } 607}); 608 609 610// artists demo-sound 611$(document).ready(function() { 612 var audioElement = $('.audio-embed-item')[0]; 613 var playing = false; 614 615 $('.news-single .frame-type-textmedia.frame-layout-8 audio').click(function() { 616 if (!playing) { 617 audioElement.play(); 618 playing = true; 619 $(this).parent().parent().parent().parent().parent().parent().parent().parent().parent().addClass("play"); 620 } else { 621 audioElement.pause(); 622 playing = false; 623 $(this).parent().parent().parent().parent().parent().parent().parent().parent().parent().removeClass("play"); 624 } 625 }); 626}); 627 628 629// randomized artists listing 630$(document).ready(function() { 631 if ($(".shuffle-artists").length) { 632 //console.log("shuffle"); 633 634 var cards = $(".shuffle-artists .article-liststyle-artists"); 635 636 for(var i = 0; i < cards.length; i++){ 637 var target = Math.floor(Math.random() * cards.length -1) + 1; 638 var target2 = Math.floor(Math.random() * cards.length -1) +1; 639 cards.eq(target).before(cards.eq(target2)); 640 } 641 } 642}); 643 644 645// remove overflow visible from swiper container when first slide is active 646$(document).ready(function () { 647 if ($(".tx_hive_swiperjs_simple .swiper-container[data-configuration='custom-4-slides'] .swiper-slide.slide--1.swiper-slide-active") || $(".tx_hive_swiperjs_simple .swiper-container[data-configuration='custom-5-slides'] .swiper-slide.slide--1.swiper-slide-active")) { 648 $(this).parent().parent().css("overflow", "hidden"); 649 } 650}); 651 652// switching visible label with placeholder when input/textarea is focused 653var input = $("input.form-control"); 654 655input.focusin(function() { 656 $(this).addClass("focus"); 657 $(this).parent().siblings().addClass("show-label"); 658}); 659 660input.focusout(function() { 661 $(this).removeClass("focus"); 662 $(this).parent().siblings().removeClass("show-label"); 663}); 664 665var textarea = $("textarea.form-control"); 666 667textarea.focusin(function() { 668 $(this).addClass("focus"); 669 $(this).parent().siblings().addClass("show-label"); 670}); 671 672textarea.focusout(function() { 673 $(this).removeClass("focus"); 674 $(this).parent().siblings().removeClass("show-label"); 675}); 676 677// Animating font style button 678$(document).ready(function() { 679 $(".frame-layout-23 p").click(function() { 680 $('p.huge').toggleClass("active"); 681 $(this).toggleClass("active"); 682 }); 683}); 684 685// Optimize news pagination to scroll to specific section 686 $(document).ready(function() { 687 $('.f3-widget-paginator a').click(function() { 688 $(this).attr('href', $(this).attr('href') + '#listing').reload(); 689 }); 690}); 691 692 693/* 694 added 1/21/2023 to prevent: 695 Loading the Google Maps JavaScript API without a callback is not supported: https://developers.google.com/maps/documentation/javascript/url-params#required_parameters 696*/ 697function dummy() { 698 console.log('GoogleMaps Callback Dummy'); 699} 700 701// fix scroll trigger confusion after page reload 702$(document).ready(function(){ 703 //console.log("Page reloaded."); 704 //ScrollTrigger.refresh(); 705 //console.log("refreshed"); 706 707 setTimeout(function() { 708 $('.drums-button-single').on('click', function() { 709 var audio = $(this).closest('.fixed-sound-button').find('.audio-embed-item')[0]; 710 if (audio) { 711 if (audio.paused) { 712 audio.play(); 713 } else { 714 audio.pause(); 715 } 716 } else { 717 console.error('Audio-Element nicht gefunden'); 718 } 719 }); 720 }, 100); // Delay von 100ms 721 722 // Check if the section element has the specific class 723 if (sectionHeaderBanner.classList.contains('add-sound-button-single')) { 724 // Create the new HTML element 725 const div = document.createElement('div'); 726 div.classList.add('drums-button-single'); 727 div.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="55.5" height="45" viewB
727ox="0 0 55.5 45"><g id="Komponente_36_3" data-name="Komponente 36 â 3" transform="translate(1)"><g id="Ellipse_211" data-name="Ellipse 211" transform="translate(4)" fill="transparent" stroke="#000" stroke-width="2"> <circle cx="22.5" cy="22.5" r="22.5" stroke="none"/> <circle cx="22.5" cy="22.5" r="21.5" fill="none"/> </g> <line id="drum-stick-1" data-name="Linie 327" y1="34" transform="translate(0 5.75)" fill="none" stroke="#000" stroke-width="2"/> <line id="drum-stick-2" data-name="Linie 328" y1="34" transform="translate(53.5 5.25)" fill="none" stroke="#000" stroke-width="2"/> <g id="Ellipse_215" data-name="Ellipse 215" transform="translate(20 16)" stroke="#000" stroke-width="2" opacity="0"> <circle cx="6.5" cy="6.5" r="6.5" stroke="none"/> <circle cx="6.5" cy="6.5" r="5.5" fill="none"/> </g> </g></svg>'; 728 729 // Append the new HTML element to the section element 730 sectionHeaderBanner.appendChild(div); 731 } 732 733 const updateCountdown = () => { 734 $(".countdown-productslider").each(function () { 735 const countdown = $(this); 736 const startDate = new Date(countdown.data("start")); 737 const endDate = new Date(countdown.data("end")); 738 const now = new Date(); 739 740 if (now >= startDate && now <= endDate) { 741 const timeLeft = endDate - now; 742 const days = Math.floor(timeLeft / (1000 * 60 * 60 * 24)); 743 const hours = Math.floor((timeLeft % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); 744 const minutes = Math.floor((timeLeft % (1000 * 60 * 60)) / (1000 * 60)); 745 const seconds = Math.floor((timeLeft % (1000 * 60)) / 1000); 746 747 countdown.text(`${days}d ${hours}h ${minutes}m ${seconds}s`); 748 } else { 749 countdown.hide(); 750 } 751 }); 752 }; 753 754 // Initialize countdown update 755 setInterval(updateCountdown, 1000); 756}); 757 758 759$( document ).ready( function() { 760 var aSwiper = []; 761 762 $( ".tx_hive_swiperjs_simple .swiper-container[data-configuration='custom-5-slides']" ).each(function( index ) { 763 764 // Initialize Configuration 765 var $uid = $( this ).data("uid"); 766 var $autoplay = $( this ).data("autoplay"); 767 var $loop = parseInt($( this ).data("loop")); 768 var $hashNavigation = parseInt($( this ).data("hash-navigation")); 769 if($hashNavigation == 1) { $hashNavigation = true; } 770 var $paginationType = $( this ).data("pagination-type"); 771 772 773 // Initialize Swiper 774 console.log("hive_swiperjs_simple :: Swiper initialize #hive-swiperjs-simple--" + $uid); 775 var swiperIdentifier = '#hive-swiperjs-simple--' + $uid; 776 aSwiper[index] = new Swiper('#hive-swiperjs-simple--' + $uid, { 777 778 // Default parameters 779 grabCursor: true, 780 slidesPerView: 1, 781 spaceBetween: 10, 782 // Responsive breakpoints 783 breakpoints: { 784 1: { 785 slidesPerView: 1.5, 786 spaceBetween: 15, 787 slidesPerGroupSkip: 0, 788 slidesPerGroup: 1 789 }, 790 768: { 791 slidesPerView: 2.5, 792 spaceBetween: 45, 793 //centeredSlides: true, 794 slidesPerGroupSkip: 1, 795 slidesPerGroup: 1 796 }, 797 1440: { 798 slidesPerView: 4.5, 799 spaceBetween: 60, 800 //centeredSlides: true, 801 slidesPerGroupSkip: 1, 802 slidesPerGroup: 1, 803 } 804 }, 805 806 loop: $loop, 807 808 hashNavigation: $hashNavigation, 809 810 pagination: { 811 el: '.swiper-pagination', 812 clickable: true, 813 }, 814 815 navigation: { 816 nextEl: '.swiper-button-next', 817 prevEl: '.swiper-button-prev', 818 }, 819 820 }); 821 822 // update Swiper (add Params) 823 //pagination 824 switch ($paginationType) { 825 case 'dynamicbullets': 826 aSwiper[index].params.pagination.type = 'bullets'; 827 aSwiper[index].params.pagination.dynamicBullets = true; 828 aSwiper[index].pagination.init(); 829 aSwiper[index].pagination.render(); 830 aSwiper[index].pagination.update(); 831 break; 832 case 'fraction': 833 aSwiper[index].params.pagination.type = 'fraction'; 834 aSwiper[index].pagination.init(); 835 aSwiper[index].pagination.render(); 836 aSwiper[index].pagination.update(); 837 break; 838 case 'progressbar': 839 aSwiper[index].params.pagination.type = 'progressbar'; 840 aSwiper[index].pagination.init(); 841 aSwiper[index].pagination.render(); 842 aSwiper[index].pagination.update(); 843 break; 844 case 'custom': 845 aSwiper[index].params.pagination.clickable = true; 846 aSwiper[index].params.pagination.renderBullet = function (i, className) { 847 var titles = []; 848 $( swiperIdentifier ).find(".swiper-slide").each(function(j) { 849 var title = $(this).data("pagination-title").toString(); 850 titles.push(title); 851 }); 852 return '<span class="' + className + ' swiper-pagination-titled">' + titles[i] + '</span>'; 853 }; 854 aSwiper[index].pagination.init(); 855 aSwiper[index].pagination.render(); 856 aSwiper[index].pagination.update(); 857 break; 858 case 'nopagination': 859 aSwiper[index].pagination.destroy(); 860 break; 861 default: 862 aSwiper[index].params.pagination.type = 'bullets'; 863 aSwiper[index].params.pagination.dynamicBullets = false;
864 aSwiper[index].pagination.init(); 865 aSwiper[index].pagination.render(); 866 aSwiper[index].pagination.update(); 867 break; 868 } 869 870 //autoplay 871 if($autoplay > 0) { 872 aSwiper[index].params.autoplay.delay = $autoplay; 873 aSwiper[index].autoplay.start(); 874 } 875 876 aSwiper[index].update(); 877 878 }); 879 880 $( ".tx_hive_swiperjs_simple .swiper-container[data-configuration='custom-4-slides']" ).each(function( index ) { 881 882 // Initialize Configuration 883 var $uid = $( this ).data("uid"); 884 var $autoplay = $( this ).data("autoplay"); 885 var $loop = parseInt($( this ).data("loop")); 886 var $hashNavigation = parseInt($( this ).data("hash-navigation")); 887 if($hashNavigation == 1) { $hashNavigation = true; } 888 var $paginationType = $( this ).data("pagination-type"); 889 890 891 // Initialize Swiper 892 console.log("hive_swiperjs_simple :: Swiper initialize #hive-swiperjs-simple--" + $uid); 893 var swiperIdentifier = '#hive-swiperjs-simple--' + $uid; 894 aSwiper[index] = new Swiper('#hive-swiperjs-simple--' + $uid, { 895 896 // Default parameters 897 grabCursor: true, 898 slidesPerView: 1, 899 spaceBetween: 10, 900 // Responsive breakpoints 901 breakpoints: { 902 1: { 903 slidesPerView: 1.5, 904 spaceBetween: 15, 905 slidesPerGroupSkip: 0, 906 slidesPerGroup: 1 907 }, 908 768: { 909 slidesPerView: 2.5, 910 spaceBetween: 60, 911 //centeredSlides: true, 912 slidesPerGroupSkip: 1, 913 slidesPerGroup: 1 914 }, 915 1440: { 916 slidesPerView: 3.5, 917 spaceBetween: 85, 918 //centeredSlides: true, 919 slidesPerGroupSkip: 1, 920 slidesPerGroup: 1 921 } 922 }, 923 924 loop: $loop, 925 926 hashNavigation: $hashNavigation, 927 928 pagination: { 929 el: '.swiper-pagination', 930 clickable: true, 931 }, 932 933 navigation: { 934 nextEl: '.swiper-button-next', 935 prevEl: '.swiper-button-prev', 936 }, 937 938 }); 939 940 // update Swiper (add Params) 941 //pagination 942 switch ($paginationType) { 943 case 'dynamicbullets': 944 aSwiper[index].params.pagination.type = 'bullets'; 945 aSwiper[index].params.pagination.dynamicBullets = true; 946 aSwiper[index].pagination.init(); 947 aSwiper[index].pagination.render(); 948 aSwiper[index].pagination.update(); 949 break; 950 case 'fraction': 951 aSwiper[index].params.pagination.type = 'fraction'; 952 aSwiper[index].pagination.init(); 953 aSwiper[index].pagination.render(); 954 aSwiper[index].pagination.update(); 955 break; 956 case 'progressbar': 957 aSwiper[index].params.pagination.type = 'progressbar'; 958 aSwiper[index].pagination.init(); 959 aSwiper[index].pagination.render(); 960 aSwiper[index].pagination.update(); 961 break; 962 case 'custom': 963 aSwiper[index].params.pagination.clickable = true; 964 aSwiper[index].params.pagination.renderBullet = function (i, className) { 965 var titles = []; 966 $( swiperIdentifier ).find(".swiper-slide").each(function(j) { 967 var title = $(this).data("pagination-title").toString(); 968 titles.push(title); 969 }); 970 return '<span class="' + className + ' swiper-pagination-titled">' + titles[i] + '</span>'; 971 }; 972 aSwiper[index].pagination.init(); 973 aSwiper[index].pagination.render(); 974 aSwiper[index].pagination.update(); 975 break; 976 case 'nopagination': 977 aSwiper[index].pagination.destroy(); 978 break; 979 default: 980 aSwiper[index].params.pagination.type = 'bullets'; 981 aSwiper[index].params.pagination.dynamicBullets = false;
982 aSwiper[index].pagination.init(); 983 aSwiper[index].pagination.render(); 984 aSwiper[index].pagination.update(); 985 break; 986 } 987 988 //autoplay 989 if($autoplay > 0) { 990 aSwiper[index].params.autoplay.delay = $autoplay; 991 aSwiper[index].autoplay.start(); 992 } 993 994 aSwiper[index].update(); 995 996 }); 997 998 $( ".tx_hive_swiperjs_simple .swiper-container[data-configuration='custom-2-slides']" ).each(function( index ) { 999 1000 // Initialize Configuration 1001 var $uid = $( this ).data("uid"); 1002 var $autoplay = $( this ).data("autoplay"); 1003 var $loop = parseInt($( this ).data("loop")); 1004 var $hashNavigation = parseInt($( this ).data("hash-navigation")); 1005 if($hashNavigation == 1) { $hashNavigation = true; } 1006 var $paginationType = $( this ).data("pagination-type"); 1007 1008 1009 // Initialize Swiper 1010 console.log("hive_swiperjs_simple :: Swiper initialize #hive-swiperjs-simple--" + $uid); 1011 var swiperIdentifier = '#hive-swiperjs-simple--' + $uid; 1012 aSwiper[index] = new Swiper('#hive-swiperjs-simple--' + $uid, { 1013 1014 // Default parameters 1015 grabCursor: true, 1016 slidesPerView: 1, 1017 spaceBetween: 10, 1018 // Responsive breakpoints 1019 breakpoints: { 1020 1: { 1021 slidesPerView: 1, 1022 spaceBetween: 60, 1023 slidesPerGroupSkip: 0, 1024 slidesPerGroup: 1 1025 }, 1026 768: { 1027 slidesPerView: 2.5, 1028 spaceBetween: 60, 1029 centeredSlides: true, 1030 slidesPerGroupSkip: 1, 1031 slidesPerGroup: 1 1032 } 1033 }, 1034 1035 loop: $loop, 1036 1037 hashNavigation: $hashNavigation, 1038 1039 pagination: { 1040 el: '.swiper-pagination', 1041 clickable: true, 1042 }, 1043 1044 navigation: { 1045 nextEl: '.swiper-button-next', 1046 prevEl: '.swiper-button-prev', 1047 }, 1048 1049 }); 1050 1051 // update Swiper (add Params) 1052 //pagination 1053 switch ($paginationType) { 1054 case 'dynamicbullets': 1055 aSwiper[index].params.pagination.type = 'bullets'; 1056 aSwiper[index].params.pagination.dynamicBullets = true; 1057 aSwiper[index].pagination.init(); 1058 aSwiper[index].pagination.render(); 1059 aSwiper[index].pagination.update(); 1060 break; 1061 case 'fraction': 1062 aSwiper[index].params.pagination.type = 'fraction'; 1063 aSwiper[index].pagination.init(); 1064 aSwiper[index].pagination.render(); 1065 aSwiper[index].pagination.update(); 1066 break; 1067 case 'progressbar': 1068 aSwiper[index].params.pagination.type = 'progressbar'; 1069 aSwiper[index].pagination.init(); 1070 aSwiper[index].pagination.render(); 1071 aSwiper[index].pagination.update(); 1072 break; 1073 case 'custom': 1074 aSwiper[index].params.pagination.clickable = true; 1075 aSwiper[index].params.pagination.renderBullet = function (i, className) { 1076 var titles = []; 1077 $( swiperIdentifier ).find(".swiper-slide").each(function(j) { 1078 var title = $(this).data("pagination-title").toString(); 1079 titles.push(title); 1080 }); 1081 return '<span class="' + className + ' swiper-pagination-titled">' + titles[i] + '</span>'; 1082 }; 1083 aSwiper[index].pagination.init(); 1084 aSwiper[index].pagination.render(); 1085 aSwiper[index].pagination.update(); 1086 break; 1087 case 'nopagination': 1088 aSwiper[index].pagination.destroy(); 1089 break; 1090 default: 1091 aSwiper[index].params.pagination.type = 'bullets'; 1092 aSwiper[index].params.pagination.dynamicBullets = false;
1093 aSwiper[index].pagination.init(); 1094 aSwiper[index].pagination.render(); 1095 aSwiper[index].pagination.update(); 1096 break; 1097 } 1098 1099 //autoplay 1100 if($autoplay > 0) { 1101 aSwiper[index].params.autoplay.delay = $autoplay; 1102 aSwiper[index].autoplay.start(); 1103 } 1104 1105 aSwiper[index].update(); 1106 1107 }); 1108 1109}); 1110// rotating svgs w. id rotate on scroll 1111var rotate = gsap.timeline({ 1112 scrollTrigger:{ 1113 trigger: ".ce-gallery", 1114 scrub: 0.2, 1115 start: 'top top', 1116 end:'+=10000', 1117 } 1118}) 1119 1120 .to('#rotate', { 1121 rotation:360*5, 1122 duration:.5, ease:'none', 1123 }) 1124 1125// section bar-chart animations 1126function animateHighsBar() { 1127 var y = document.querySelector("rect#highs-bar").getAttribute("height"); 1128 var y_beech = document.querySelector("rect#beech-highs-bar").getAttribute("height"); 1129 var y_acrylic= document.querySelector("rect#acrylic-highs-bar").getAttribute("height"); 1130 var y_maple= document.querySelector("rect#maple-highs-bar").getAttribute("height"); 1131 1132 TweenMax.to("rect#highs-bar", 1, {height: y}) 1133 TweenMax.to("rect#beech-highs-bar", 1, {height: y_beech}) 1134 TweenMax.to("rect#acrylic-highs-bar", 1, {height: y_acrylic}) 1135 TweenMax.to("rect#maple-highs-bar", 1, {height: y_maple}) 1136} 1137 1138function animateMidsBar() { 1139 var y = document.querySelector("rect#mids-bar").getAttribute("height"); 1140 var y_beech = document.querySelector("rect#beech-mids-bar").getAttribute("height"); 1141 var y_acrylic = document.querySelector("rect#acrylic-mids-bar").getAttribute("height"); 1142 var y_maple = document.querySelector("rect#maple-mids-bar").getAttribute("height"); 1143 1144 TweenMax.to("rect#mids-bar", 1, {height: y}) 1145 TweenMax.to("rect#beech-mids-bar", 1, {height: y_beech}) 1146 TweenMax.to("rect#acrylic-mids-bar", 1, {height: y_acrylic}) 1147 TweenMax.to("rect#maple-mids-bar", 1, {height: y_maple}) 1148} 1149 1150function animateLowsBar() { 1151 var y = document.querySelector("rect#lows-bar").getAttribute("height"); 1152 var y_beech = document.querySelector("rect#beech-lows-bar").getAttribute("height"); 1153 var y_acrylic = document.querySelector("rect#acrylic-lows-bar").getAttribute("height"); 1154 var y_maple = document.querySelector("rect#maple-lows-bar").getAttribute("height"); 1155 1156 TweenMax.to("rect#lows-bar", 1, {height: y}) 1157 TweenMax.to("rect#beech-lows-bar", 1, {height: y_beech}) 1158 TweenMax.to("rect#acrylic-lows-bar", 1, {height: y_acrylic}) 1159 TweenMax.to("rect#maple-lows-bar", 1, {height: y_maple}) 1160} 1161 1162function animateMaterial(elem) { 1163 elem.style.transform = "scale(1)"; 1164} 1165 1166document.addEventListener("DOMContentLoaded", function() { 1167 gsap.registerPlugin(ScrollTrigger); 1168 1169 gsap.utils.toArray("svg#material").forEach(function (elem) { 1170 ScrollTrigger.create({ 1171 trigger: "section.bar-chart", 1172 //markers: true, 1173 start: "-200", 1174 ease: "bounce", 1175 duration: 2, 1176 onEnter: function () { 1177 animateMaterial(elem) 1178 }, 1179 }); 1180 }); 1181 1182 gsap.utils.toArray("rect#highs-bar, rect#mids-bar, rect#lows-bar, rect#maple-highs-bar, rect#maple-mids-bar, rect#maple-lows-bar, rect#beech-highs-bar, rect#beech-mids-bar, rect#beech-lows-bar, rect#acrylic-highs-bar, rect#acrylic-mids-bar, rect#acrylic-lows-bar").forEach(function (elem) { 1183 elem.style.height = "0px"; // assure that the bar is hidden when scrolled into view 1184 1185 ScrollTrigger.create({ 1186 trigger: "section.bar-chart", 1187 //markers: true, 1188 start: "-100", 1189 delay: 0.25, 1190 onEnter: function () { 1191 animateHighsBar(elem) 1192 animateMidsBar(elem) 1193 animateLowsBar(elem) 1194 }, 1195 }); 1196 }); 1197}); 1198 1199// section icon-listing animations 1200var iconListing = gsap.utils.toArray(".ce-col"); 1201iconListing.forEach(function (icon) { 1202 ScrollTrigger.create({ 1203 trigger: icon.closest("section.icon-listing"), 1204 start: "top 40%", 1205 end: "bottom 60%", 1206 toggleClass: "icons-bigger", 1207 duration: 1.25, 1208 //markers: true, 1209 }); 1210}); 1211 1212// video animation 1213var videos = gsap.utils.toArray('section:not(.video-resize) .frame-type-textmedia video'); 1214 1215var toggleVideo = function (video, state) { 1216 if (state == 'start') { 1217 if (video.attributes.autoplay) { 1218 video.play(); 1219 } 1220 } 1221 if (state == 'pause') { 1222 video.pause(); 1223 } 1224}; 1225 1226ScrollTrigger.matchMedia({ 1227 // all 1228 "all": function () { 1229 // Video stop start 1230 videos.forEach(function (video) { 1231 ScrollTrigger.create({ 1232 scrub: true, 1233 // markers: true, 1234 trigger: video, 1235 start: 'top 75%', 1236 end: 'bottom 25%', 1237 id: 'video', 1238 onEnter: function () { 1239 toggleVideo(video, 'start'); 1240 }, 1241 onEnterBack: function () { 1242 toggleVideo(video, 'start'); 1243 }, 1244 onLeave: function () { 1245 toggleVideo(video, 'pause'); 1246 }, 1247 onLeaveBack: function () { 1248 toggleVideo(video, 'pause'); 1249 }, 1250 }); 1251 }); 1252 } 1253}); 1254 1255// section headline vertical animation 1256var sectionHeadlinesVertical = gsap.utils.toArray(".headline.vertical, .sub-headline"); 1257sectionHeadlinesVertical.forEach(function (headline) { 1258 ScrollTrigger.create({ 1259 // markers: true, 1260 trigger: headline.closest("section"), 1261 start: "top 50%", 1262 end: "bottom 60%", 1263 toggleClass: "active", 1264 }); 1265}); 1266 1267// section headline gray animation 1268function animateFrom(elem, direction) { 1269 direction = direction || 1; 1270 var y = 0, 1271 x = direction * 100; 1272 1273 elem.style.transform = "translate(" + x + "px, " + y + "px)"; 1274 elem.style.opacity = "0"; 1275 gsap.fromTo(elem, {x: x, y: y, autoAlpha: 0}, { 1276 duration: 1.25, 1277 x: 0, 1278 y: 20, 1279 autoAlpha: 1, 1280 ease: "expo", 1281 overwrite: "auto" 1282 }); 1283} 1284 1285function hide(elem) { 1286 gsap.set(elem, {autoAlpha: 0}); 1287} 1288 1289// animate when scrolled to 1290document.addEventListener("DOMContentLoaded", function() { 1291 gsap.registerPlugin(ScrollTrigger); 1292 1293 // animated headlines 1294 gsap.utils.toArray(".headline.gray").forEach(function (elem) { 1295 hide(elem); // assure that the element is hidden when scrolled into view 1296 1297 ScrollTrigger.create({ 1298 trigger: elem, 1299 onEnter: function () { 1300 animateFrom(elem, -1) 1301 }, 1302 //onEnterBack: function () { animateFrom(elem, -1) } 1303 //onLeave: function() { hide(elem) } // assure that the element is hidden when scrolled into view 1304 }); 1305 }); 1306}); 1307 1308// headline animations h1, h2 1309ScrollTrigger.matchMedia({ 1310 1311 "all": function () { 1312 function animateHeadlines(elem) { 1313 var y = 0, 1314 x = 50; 1315 1316 elem.style.transform = "translate(" + x + "px, " + y + "px)"; 1317 gsap.fromTo(elem, {x: x, y: y, opacity:0}
1317, { 1318 duration: 1.25, 1319 x: 0, 1320 y: 0, 1321 opacity: 1, 1322 ease: "bounce", 1323 overwrite: "auto" 1324 }); 1325 } 1326 1327 function hideHeadline(elem) { 1328 gsap.set(elem, {opacity: 1}); 1329 } 1330 1331 // animate when scrolled to 1332 document.addEventListener("DOMContentLoaded", function() { 1333 gsap.registerPlugin(ScrollTrigger); 1334 1335 // animated headlines 1336 gsap.utils.toArray(".newsletter-container h2, #content section:not(.video-resize) h2:not(.ce-headline-center), #content section:not(.video-resize) .frame-type-text h2:not(.ce-headline-center), #content section:not(.video-resize) .frame-type-text div:not(.text-center) h2, #content .frame-type-textpic h2:not(.text-center), #content .frame-type-menu_pages .cross-link-container h2:not(.ce-headline-center), #content .frame-type-textpic h2:not(.ce-headline-center), #content section:not(.video-resize) .frame-type-textmedia h2:not(.ce-headline-center), #content .tx-ttaddress .address-description h2:not(.ce-headline-center), #content .news-single .intro h2:not(.ce-headline-center), #content .news-single h1.artists-title").forEach(function(elem) { 1337 hideHeadline(elem); // assure that the element is hidden when scrolled into view 1338 1339 ScrollTrigger.create({ 1340 trigger: elem, 1341 onEnter: function() { animateHeadlines(elem) }, 1342 onEnterBack: function() { animateHeadlines(elem, -1) }, 1343 //onLeave: function() { hideHeadline(elem) } // assure that the element is hidden when scrolled into view 1344 }); 1345 }); 1346 }); 1347 1348 function animateHeadlinesCenter(elem) { 1349 var y = -50, 1350 x = 0; 1351 1352 elem.style.transform = "translate(" + x + "px, " + y + "px)"; 1353 gsap.fromTo(elem, {x: x, y: y, opacity:0}, { 1354 duration: 1.25, 1355 x: 0, 1356 y: 0, 1357 opacity:1, 1358 ease: "bounce", 1359 overwrite: "auto" 1360 }); 1361 } 1362 1363 // animate when scrolled to 1364 document.addEventListener("DOMContentLoaded", function() { 1365 gsap.registerPlugin(ScrollTrigger); 1366 1367 // animated headlines 1368 gsap.utils.toArray("#footer p.big, #content h1.text-center, #content .frame-type-textpic h2.text-center, #content .frame-type-header h2.ce-headline-center, #content .frame-type-text h2.ce-headline-center, #content .frame-type-text .text-center h2, #content .frame-type-textmedia h2.ce-headline-center span, #content .frame-type-menu_pages .cross-link-container h2.ce-headline-center, #content .tx_hive_swiperjs_simple h1, #content .frame-type-textpic h2.ce-headline-center, #content .news-list-view .article h1.news-title").forEach(function(elem) { 1369 hideHeadline(elem); // assure that the element is hidden when scrolled into view 1370 1371 ScrollTrigger.create({ 1372 trigger: elem, 1373 onEnter: function() { animateHeadlinesCenter(elem) }, 1374 onEnterBack: function() { animateHeadlinesCenter(elem, -1) }, 1375 //onLeave: function() { hideHeadline(elem) } // assure that the element is hidden when scrolled into view 1376 }); 1377 }); 1378 }); 1379 } 1380}); 1381 1382 1383// regular text animation 1384ScrollTrigger.matchMedia({ 1385 1386 "(min-width: 992px)": function () { 1387 1388 function animateText(elem, direction) { 1389 direction = direction || 1; 1390 var y = direction * 100, 1391 x = 0; 1392 1393 elem.style.transform = "translate(" + x + "px, " + y + "px)"; 1394 elem.style.opacity = "0"; 1395 gsap.fromTo(elem, {x: x, y: y, autoAlpha: 0}, { 1396 duration: 1.25, 1397 x: 0, 1398 y: 0, 1399 autoAlpha: 1, 1400 ease: "expo", 1401 overwrite: "auto" 1402 }); 1403 } 1404 1405 function hide(elem) { 1406 gsap.set(elem, {autoAlpha: 0}); 1407 } 1408 1409 // animate when scrolled to 1410 document.addEventListener("DOMContentLoaded", function() { 1411 gsap.registerPlugin(ScrollTrigger); 1412 1413 // animated headlines 1414 gsap.utils.toArray("#content section:not(.text-animation-150) .frame-type-text p:not(.extra-large), #content .frame-type-textpic .ce-bodytext p, #content .frame-type-textpic .ce-bodytext ul, #content .circle-listing h5, #content .tx-ttaddress .address-description p, #content .tx-ttaddress .address-list ul, #content .news-single .teaser-text-artist p, #content .news-single .news-backlink-wrap a, #content .news-single p").forEach(function(elem) { 1415 hide(elem); // assure that the element is hidden when scrolled into view 1416 1417 ScrollTrigger.create({ 1418 trigger: elem, 1419 onEnter: function() { animateText(elem) }, 1420 //onEnterBack: function() { animateText(elem, -1) }, 1421 //onLeave: function() { hide(elem) } // assure that the element is hidden when scrolled into view 1422 }); 1423 }); 1424 }); 1425 } 1426}); 1427 1428// section circle-listing 1429var circleListing = gsap.utils.toArray(".ce-col"); 1430circleListing.forEach(function (circle) { 1431 ScrollTrigger.create({
1432 trigger: circle.closest("section.circle-listing"), 1433 start: "top 40%", 1434 end: "bottom 60%", 1435 toggleClass: "circle-bigger", 1436 //markers: true, 1437 }); 1438}); 1439 1440ScrollTrigger.matchMedia({ 1441 "(min-width: 992px)": function () { 1442 // section video-resize 1443 const videoResize = gsap.utils.toArray('section.video-resize .ce-gallery'); 1444 videoResize.forEach(video => { 1445 gsap.to(video, { 1446 scale: .75, 1447 scrollTrigger: { 1448 trigger: video, 1449 scrub: true, 1450 pin: true, 1451 //markers: true, 1452 start: "50% 50%", 1453 end: "+=100%", 1454 } 1455 }) 1456 }); 1457 1458 // headline animation section video-resize 1459 const sections = gsap.utils.toArray("section.video-resize"); 1460 const lastIndex = sections.length - 1; 1461 1462 sections.forEach((section, i) => { 1463 section._headline = section.querySelector(".ce-bodytext"); 1464 1465 // Create a standalone ST instance, and use the progress value (0 - 1) to tween the timeline's progress 1466 ScrollTrigger.create({ 1467 trigger: section, 1468 start: ()=> i==0 ? "top top" : "top bottom", // The FIRST section will use a different start value than the rest 1469 end: ()=> i==lastIndex ? "top top" : "bottom top", // The LAST section will use a different start value than the rest 1470 onRefresh: self => { // onRefresh (so it gets reset upon resize), create a timeline that moves the h1 + bg vertically 1471 section._tl = gsap.timeline({paused:true, defaults:{ease:'none', overwrite:'auto'}}) 1472 .fromTo(section._headline, {y:()=> i==0 ? 0 : (innerHeight/2)*1.5}, {y:()=> i==lastIndex ? 0 : (-innerHeight/2)*1.5}, 0) 1473 .progress(self.progress); //use progress to position the timeline correctly 1474 }, 1475 onUpdate: self => { gsap.to(section._tl, {duration:0.75, progress:self.progress}); } 1476 }); 1477 }); 1478 } 1479}); 1480 1481// logo entry animation 1482ScrollTrigger.matchMedia({ 1483 1484 "all": function () { 1485 1486 var entry_logoanimation = document.querySelectorAll("header"); 1487 1488 entry_logoanimation.forEach(function (container) { 1489 var tl = gsap.timeline({ 1490 scrollTrigger: { 1491 trigger: container, 1492 } 1493 }); 1494 1495 tl.from(container.querySelector(".logo-entry-container svg"), 1.5, { 1496 scale: 1.5, 1497 ease: "bounce", 1498 }) 1499 tl.to(container.querySelector(".logo-entry-container svg"), 1, { 1500 yPercent: -600, 1501 //height: "100%", 1502 ease: "power4.out", 1503 }) 1504 tl.to(container.querySelector(".logo-entry-container"), 1, { 1505 //scale: .75, 1506 //height: "100%", 1507 yPercent: -100, 1508 //opacity: 0, 1509 //display: "none", 1510 ease: "power4.out", 1511 }) 1512 /* tl.to(container.querySelector(".page-1 .header-home"), 1 , { 1513 //opacity: 1, 1514 yPercent: -200, 1515 ease: "power4.out", 1516 })*/ 1517 }); 1518 1519 var home_headerAnimation = new TimelineMax({ delay: 1.75 }); 1520 1521 home_headerAnimation.to('.page-1 .header-home', { duration: 1 }) 1522 .to('.page-1 .header-home', { yPercent: -50, ease: "power4.out", }) 1523 } 1524}); 1525 1526// remove scroll-down when scrolling 1527/* 1528$(window).on('scroll', function() { 1529 setTimeout(function() { 1530 $('.frame-layout-22').css('opacity', '0'); 1531 }, 500); // 2000 ms Delay 1532}); 1533*/ 1534 1535// section 50:50 1536ScrollTrigger.matchMedia({ 1537"(min-width: 768px)": function () { 1538 1539 var col_fadeimage = document.querySelectorAll("section.image-text-5050, .news-single .frame-type-textpic"); 1540 var col_fadetext = document.querySelectorAll("section.image-text-5050, .news-single .frame-type-textpic"); 1541 1542 // animated cols in section text-image and tt_address cols 1543 col_fadeimage.forEach(function (container) { 1544 var tl = gsap.timeline({ 1545 scrollTrigger: { 1546 trigger: container, 1547 } 1548 }); 1549 1550 tl.from(container.querySelector(".ce-col:first-child, .ce-textpic .ce-gallery"), 2, { 1551 xPercent: -100, 1552 ease: "Bounce.easeOut", 1553 }) 1554 }); 1555 1556 col_fadetext.forEach(function (container) { 1557 var tl = gsap.timeline({ 1558 scrollTrigger: { 1559 trigger: container, 1560 } 1561 }); 1562 1563 tl.from(container.querySelector(".ce-col:last-child, .ce-textpic .ce-bodytext"), 2, { 1564 xPercent: 100, 1565 ease: "power4", 1566 delay: 1.5, 1567 }); 1568 }); 1569 } 1570}); 1571 1572// extra-large horizontal text animation 1573var horizontalText = gsap.utils.toArray(".extra-large"); 1574 1575gsap.to(horizontalText, { 1576 x: (i) => { 1577 if (i % 2 === 0) { 1578 return -(horizontalText[i].scrollWidth - window.innerWidth); 1579 } else { 1580 return +(horizontalText[i].scrollWidth - window.innerWidth); 1581 } 1582 }, 1583 ease: "none", 1584 scrollTrigger: { 1585 //markers: true, 1586 trigger: horizontalText,
1587 pin: false, 1588 scrub: true, 1589 invalidateOnRefresh: true 1590 } 1591}); 1592 1593// text-animation-150 1594function animateText150(elem) { 1595 gsap.to(elem, { 1596 ease: "power4.out", 1597 delay: 1, 1598 duration: 2.2, 1599 "--pos-typo-left": "0%", 1600 "--pos-typo-right": "0%", 1601 }); 1602} 1603 1604document.addEventListener("DOMContentLoaded", function() { 1605 gsap.registerPlugin(ScrollTrigger); 1606 1607 gsap.utils.toArray(".text-animation-150").forEach(function (elem) { 1608 ScrollTrigger.create({ 1609 trigger: ".text-animation-150", 1610 //start: 'top 50%', 1611 //markers: true, 1612 onEnter: function () { animateText150(elem) }, 1613 }); 1614 }); 1615}); 1616 1617// sonor-logo-150 1618function animateSONORLogo(elem) { 1619 gsap.to(elem, { 1620 duration: 1, 1621 ease: "bounce", 1622 overwrite: "auto", 1623 opacity: 1, 1624 "--logo-scale": "1", 1625 "--logo-opacity": "1", 1626 }); 1627} 1628 1629document.addEventListener("DOMContentLoaded", function() { 1630 gsap.registerPlugin(ScrollTrigger); 1631 1632 gsap.utils.toArray(".sonor-logo-150").forEach(function (elem) { 1633 ScrollTrigger.create({ 1634 trigger: ".sonor-logo-150", 1635 start: 'top 40%', 1636 //markers: true, 1637 onEnter: function () { animateSONORLogo(elem) }, 1638 }); 1639 }); 1640}); 1641 1642document.addEventListener("DOMContentLoaded", function() { 1643 gsap.registerPlugin(ScrollTrigger); 1644 1645 gsap.utils.toArray(".video-resize-reverse").forEach(function (elem) { 1646 ScrollTrigger.create({ 1647 trigger: ".video-resize-reverse", 1648 //start: 'top 40%', 1649 //markers: true, 1650 onEnter: function () { animateSONORLogo(elem) }, 1651 }); 1652 }); 1653}); 1654ScrollTrigger.matchMedia({ 1655 "all": function () { 1656 1657 const sections = gsap.utils.toArray('section.video-resize-reverse .animate-inner-container .animate-inner-content'); 1658 1659 // Set initial styles for all sections except the first 1660 gsap.set(sections.slice(1), { 1661 position: 'absolute', 1662 top: '50%', 1663 left: '50%', 1664 transform: 'translate(-50%, -50%) scale(0)', 1665 //opacity: 0, 1666 }); 1667 1668 // Ensure the first section is displayed without animation 1669 gsap.set(sections[0], { 1670 position: 'relative', // Adjust to ensure proper stacking 1671 top: 'auto', 1672 left: 'auto', 1673 transform: 'none', 1674 opacity: 1, 1675 }); 1676 1677 let hasScrolled = false; // Flag to track first interaction 1678 1679 // Timeline for smooth transitions across sections 1680 const timeline = gsap.timeline({ 1681 scrollTrigger: { 1682 trigger: 'section.video-resize-reverse', 1683 start: "top top", 1684 end: () => `+=${(sections.length - 1) * 250}%`, // Halbiere die Zeit für den ersten Abschnitt 1685 scrub: true, 1686 pin: true, 1687 onUpdate: self => { 1688 if (!hasScrolled) hasScrolled = true; // Mark first scroll interaction 1689 const progress = self.progress; // Scroll progress (0 to 1) 1690 const activeIndex = Math.floor(progress * sections.length); // Aktuelles Element berechnen 1691 handleActiveSection(activeIndex, hasScrolled); 1692 }, 1693 } 1694 }); 1695 1696 // Erste Animation (kürzere Dauer) 1697 timeline.to(sections[0], { 1698 scale: 1, 1699 opacity: 1, 1700 duration: 0.3, // Halbe Zeit im Vergleich zu anderen 1701 ease: "power2.inOut", 1702 }); 1703 1704 // Restliche Animationen 1705 sections.slice(1).forEach((section, i) => { 1706 timeline.to(section, { 1707 scale: 1, 1708 opacity: 1, 1709 duration: 1, // Normale Dauer 1710 ease: "power2.inOut", 1711 }); 1712 }); 1713 1714 // Function to handle active section and play/pause videos with delay 1715 function handleActiveSection(activeIndex, hasScrolled) { 1716 sections.forEach((section, index) => { 1717 const video = section.querySelector('video'); 1718 const leftAnim = section.querySelectorAll(".frame-horizontal-textscroll-to-left"); 1719 const rightAnim = section.querySelectorAll(".frame-horizontal-textscroll-to-right"); 1720 const rightAnimImage = section.querySelectorAll(".frame-horizontal-textscroll-to-right.frame-type-image"); 1721 const buttonAnim = section.querySelectorAll(".frame-fade-in-element"); 1722 1723 if (index === activeIndex) { 1724 section.classList.add('active'); 1725 1726 if (video && hasScrolled) { 1727 gsap.delayedCall(0.2, () => { // Delay of 0.5 seconds 1728 if (video.paused) { 1729 video.play(); 1730 } 1731 }); 1732 } 1733 1734 // Trigger horizontal animations 1735 leftAnim.forEach(container => { 1736 gsap.to(container, { 1737 xPercent: 0, 1738 duration: 2, 1739 ease: "power1.out", 1740 }); 1741 }); 1742 1743 rightAnim.forEach(container => { 1744 gsap.to(container, { 1745 xPercent: 0, 1746 duration: 2, 1747 ease: "power1.out", 1748 }); 1749 }); 1750 1751 rightAnimImage.forEach(container => { 1752 gsap.to(container, { 1753 xPercent: 10, 1754 duration: 10, 1755 ease: "power1.out", 1756 }); 1757 }); 1758 1759 buttonAnim.forEach(container => { 1760 gsap.to(container, { 1761 opacity: 1, 1762 duration: 2, 1763 ease: "power1.out", 1764 }); 1765 }); 1766 } else { 1767 section.classList.remove('active'); 1768 if (video) { 1769 gsap.delayedCall(0.6, () => { // Delay of 0.5 seconds 1770 if (!video.paused) { 1771 video.pause(); 1772 } 1773 }); 1774 } 1775 1776 // Smooth reset horizontal animations 1777 leftAnim.forEach(container => { 1778 gsap.to(container, { 1779 xPercent: -100, // Reset to initial position 1780 duration: 1, 1781 ease: "power1.in", 1782 }); 1783 }); 1784 1785 rightAnim.forEach(container => { 1786 gsap.to(container, { 1787 xPercent: 100, // Reset to initial position 1788 duration: 1, 1789 ease: "power1.in", 1790 }); 1791 }); 1792 1793 rightAnimImage.forEach(container => { 1794 gsap.to(container, { 1795 xPercent: 120, 1796 duration: 7, 1797 ease: "power1.in", 1798 }); 1799 }); 1800 1801 buttonAnim.forEach(container => { 1802 gsap.to(container, { 1803 opacity: 0, 1804 duration: 1, 1805 ease: "power1.in", 1806 }); 1807 }); 1808 } 1809 }); 1810 } 1811 } 1812 1813});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.