Console: try to use timelines, but GSAP is not loaded

since i updated to 0.9.4.1 my animation stopped and i got this console warning.

Hi! Could you post the warning? :slight_smile:

var brfPanel;class BricksforgePanel{domContentLoadedEvent;currentUserRole;roles;hideElementsOnly=!1;timelines=[];splitTextInstances=[];timelineActions=[];constructor(e){e&&(this.domContentLoadedEvent=e),this.init()}async init(){this.setGlobals(),“undefined”!=typeof BRFVARS&&1==BRFVARS.panelActivated&&(bricksIsFrontend||this.loadPanel(),setTimeout((()=>{this.renderPanel()}))),this.renderLogic(),this.hideElementsOnly&&this.handlePermissionSettings()}setGlobals(){if(“undefined”!=typeof BRFVARS&&(this.currentUserRole=BRFVARS.currentUserRole,this.roles=BRFVARS.permissions,this.roles&&Array.isArray(this.roles)))for(let e of this.roles)e.value==this.currentUserRole&&(this.hideElementsOnly=e.permissions.hideOnly)}renderLogic(){document.addEventListener(“click”,(e=>{const t=e.target;t instanceof HTMLElement&&“BUTTON”==t.tagName&&“brf-render”==t.parentNode.getAttribute(“controlkey”)&&(e.preventDefault(),document.querySelector(“li.reload-canvas”).click())}))}loadPanel(){let e=document.createElement(“div”);e.setAttribute(“id”,“bricksforge-triggers”),document.querySelector(“#bricks-preview”)&&document.querySelector(“#bricks-preview”).appendChild(e);let t=document.querySelector(“#bricks-toolbar ul.group-wrapper.left”),a=document.createElement(“li”);a.classList.add(“brf-panel”),a.setAttribute(“data-balloon”,“Bricksforge Panel (Shortcut: CTRL + P)”),a.setAttribute(“data-balloon-pos”,“bottom”);let i=document.createElement(“span”);i.classList.add(“bricks-svg-wrapper”),a.appendChild(i),t&&t.appendChild(a),setTimeout((()=>{document.querySelector(“#bricksforge-triggers .brf-triggers-container”)&&(document.querySelector(“#bricksforge-triggers .brf-triggers-container”).style.bottom=“-”+document.querySelector(“#bricksforge-triggers .brf-triggers-container”).getAttribute(“data-height”))}),500),a.addEventListener(“click”,(()=>{const e=new Proxy(new URLSearchParams(window.location.search),{get:(e,t)=>e.get(t)});let t=document.querySelector(“#bricksforge-triggers .brf-triggers-container”);if(t.style.bottom&&1==t.style.opacity){if(t.style.bottom=“-”+t.getAttribute(“data-height”),t.style.opacity=0,e[“brf-panel”]){const e=new URL(window.location.href);e.searchParams.delete(“brf-panel”),window.history.replaceState(null,null,e)}}else if(t.style.bottom=“-2px”,t.style.opacity=1,!e[“brf-panel”]){const e=new URL(window.location.href);e.searchParams.set(“brf-panel”,“1”),window.history.replaceState(null,null,e)}}))}handlePermissionSettings(){document.addEventListener(“mousedown”,(e=>{let t=e.target;t&&(t.matches(“li.elements”)||t.closest(“li”)&&t.closest(“li”).classList.contains(“elements”))&&setTimeout((()=>{this.hideCategories()}),250)})),setTimeout((()=>{this.hideCategories()}),750)}hideCategories(){for(let e of document.querySelectorAll(“#bricks-panel-elements-categories .category”)){if(!(e.classList.contains(“category-layout”)||e.classList.contains(“category-basic”)||e.classList.contains(“category-general”)||e.classList.contains(“category-media”)||e.classList.contains(“category-wordpress”)||e.classList.contains(“category-single”))){let t=e.querySelector(“.sortable-wrapper”).querySelectorAll(“li”);for(let e of t)e.setAttribute(“style”,“display:block !important”);return}let t=e.querySelector(“.sortable-wrapper”).querySelectorAll(“li”),a=!0;for(let e of t)“none”!=getComputedStyle(e).display&&(a=!1);a&&(e.style.display=“none”)}}renderPanel(e=!1,t=[],a=!1,i=!1){if(!BRFVARS||!BRFVARS.panel||!BRFVARS.panel.length){if(i){this.timelines=[];for(let e of t)this.handleTimeline(e,!1,!0);return}return}if(i){this.timelines=[];for(let e of t)this.handleTimeline(e,!1,!0);return}if(0==e&&bricksIsFrontend){let e=BRFVARS.panel[0].instances;if(e&&e.length>0)for(let t of e){this.checkInstanceConditions(t)&&this.handleInstance(t)}}let r=BRFVARS.panel[0].timelines;if(!0===e&&(this.timelines=[],r=[],r.push(t)),!0===a&&(this.timelines=[],r=[],r=t),r&&r.length>0){if(“undefined”==typeof gsap)return void console.warn(“Bricksforge Panel: You try to use timelines, but GSAP is not loaded.”);for(let t of r)if(t.matchMedia){gsap.matchMedia().add(t.matchMedia,(()=>{this.handleTimeline(t,e,a)}))}else this.handleTimeline(t,e,a)}}checkInstanceConditions(e){if(!e.conditions||!e.conditions.length)return!0;let t=e.conditionsRelation?e.conditionsRelation:“and”,a=[];for(let t of e.conditions)switch(t.type){case"elementNode":if(!t.elementNodeSelector||!t.elementNodeSelector||!t.elementNodeOption){a.push(!1);break}let e=document.querySelector(t.elementNodeSelector);if(!e){a.push(!1);break}switch(t.elementNodeOption){case"class":if(!t.elementNodeValue){a.push(!1);break}if(“has”==t.elementNodeOperator){if(e.classList.contains(t.elementNodeValue)){a.push(!0);break}a.push(!1);break}if(“notHas”==t.elementNodeOperator){if(e.classList.contains(t.elementNodeValue)){a.push(!1);break}a.push(!0);break}break;case"attribute":if(!t.elementNodeValue){a.push(!1);break}if(!t.elementNodeAttribute){a.push(!1);break}if(“has”==t.elementNodeOperator){if(e.getAttribute(t.elementNodeAttribute)==t.elementNodeValue){a.push(!0);break}a.push(!1);break}if(“notHas”==t.elementNodeOperator){if(e.getAttribute(t.elementNodeAttribute)!=t.elementNodeValue){a.push(!0);break}a.push(!1);break}}break;case"localStorage":if(!t.localStorageKey||!t.localStorageOperator){a.push(!1);break}switch(t.localStorageOperator){case"exists":a.push(null!=localStorage.getItem(t.localStorageKey));break;case"notExists":a.push(!localStorage.getItem(t.localStorageKey));break;case"==“:a.push(localStorage.getItem(t.localStorageKey)==t.localStorageValue);break;case”!=“:a.push(localStorage.getItem(t.localStorageKey)!=t.localStorageValue);break;case”>“:a.push(localStorage.getItem(t.localStorageKey)>parseInt(t.localStorageValue));break;case”<“:a.push(localStorage.getItem(t.localStorageKey)<parseInt(t.localStorageValue));break;case”>=“:a.push(localStorage.getItem(t.localStorageKey)>=parseInt(t.localStorageValue));break;case”<=“:a.push(localStorage.getItem(t.localStorageKey)<=parseInt(t.localStorageValue))}break;case"sessionStorage”:if(!t.localStorageKey||!t.localStorageOperator){a.push(!1);break}switch(t.localStorageOperator){case"exists":a.push(null!=sessionStorage.getItem(t.localStorageKey));break;case"notExists":a.push(!sessionStorage.getItem(t.localStorageKey));break;case"==“:a.push(sessionStorage.getItem(t.localStorageKey)==t.localStorageValue);break;case”!=“:a.push(sessionStorage.getItem(t.localStorageKey)!=t.localStorageValue);break;case”>“:a.push(sessionStorage.getItem(t.localStorageKey)>parseInt(t.localStorageValue));break;case”<“:a.push(sessionStorage.getItem(t.localStorageKey)<parseInt(t.localStorageValue));break;case”>=“:a.push(sessionStorage.getItem(t.localStorageKey)>=parseInt(t.localStorageValue));break;case”<=“:a.push(sessionStorage.getItem(t.localStorageKey)<=parseInt(t.localStorageValue))}break;case"custom”:if(!t.customCondition){a.push(!1);break}let i=new Function(“return “+t.customCondition);if(“function”!=typeof i){a.push(!1);break}a.push(!0===i())}if(!a.length)return!1;switch(t){case"and”:return!a.includes(!1);case"or”:return a.includes(!0);default:return!1}}handleInstance(e){if(!e.event||!e.selector||!e.actions.length){if(!e.selector&&“pageLoad”!=e.event&&!e.selector&&“scrollPosition”!=e.event&&“scrollUp”!=e.event&&“scrollDown”!=e.event&&“visibilitychange”!=e.event&&“resize”!=e.event)return void console.warn(“You try to use the Bricksforge Panel, but there are some informations missing. This warning appears for the instance: “+(e.name?e.name:“No Name”));e.selector=“html”}let t=e.selector,a=!1,i=e.event,r=e.actions;switch(e.selectorType){case"exactly”:default:t=document.querySelector(t);break;case"all”:t=document.querySelectorAll(t),a=!0;break;case"siblings":t=document.querySelector(t).parentNode.children,a=!0;break;case"parent":t=document.querySelector(t).parentNode;break;case"children":t=document.querySelector(t).children,a=!0;break;case"closest":if(!e.closestValue)break;t=document.querySelector(t).closest(e.closestValue)}if(null!=t)for(let n of r){let r=n.action.target,s=n.action.targetElement,l=!1;switch(r){case"same":default:if(!t)break;r=document.querySelector(e.selector);break;case"triggered":r=“triggered”;break;case"all":if(!t)break;r=document.querySelectorAll(e.selector),l=!0;break;case"siblings":if(!t)break;r=document.querySelector(e.selector).parentNode.children,l=!0;break;case"parent":if(!t)break;r=document.querySelector(e.selector).parentNode;break;case"children":if(!t)break;r=document.querySelector(e.selector).children,l=!0;break;case"closest":if(!t)break;if(!r)break;r=document.querySelector(e.selector).closest(s);break;case"querySelector":if(!t)break;r=document.querySelector(e.selector).querySelector(s);break;case"custom":r=document.querySelector(s);break;case"customAll":r=document.querySelectorAll(s),l=!0}switch(i){case"scrollPosition":document.addEventListener(“scroll”,(a=>{if(e.consoleLog&&“event”==e.consoleLog&&console.log(a),!e.scrollPosition||!e.scrollPositionOperator)return;let i;switch(e.scrollPositionOperator){case"==“:default:i=window.scrollY==e.scrollPosition;break;case”>“:i=window.scrollY>e.scrollPosition;break;case”<“:i=window.scrollY<e.scrollPosition;break;case”>=“:i=window.scrollY>=e.scrollPosition;break;case”<=“:i=window.scrollY<=e.scrollPosition}i&&this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a})}));break;case"scrollUp”:var o=0;document.addEventListener(“scroll”,(a=>{var i=window.pageYOffset||document.documentElement.scrollTop;i<o&&(e.consoleLog&&“event”==e.consoleLog&&console.log(a),this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a})),o=i<=0?0:i}),!1);break;case"scrollDown":o=0;document.addEventListener(“scroll”,(a=>{var i=window.pageYOffset||document.documentElement.scrollTop;i>o&&(e.consoleLog&&“event”==e.consoleLog&&console.log(a),this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a})),o=i<=0?0:i}),!1);break;case"inViewport":if(!t)return;document.addEventListener(“scroll”,(i=>{if(a)t.forEach((t=>{var a=t.getBoundingClientRect(),o=a.top,s=a.bottom;let c=e.inViewportVisibility?e.inViewportVisibility:“partially”,u=e.inViewportVisibilityOffset?e.inViewportVisibilityOffset:0;(“partially”==c?o<window.innerHeight-u&&s>=0:o>=0&&s<=window.innerHeight+u)&&(e.consoleLog&&“event”==e.consoleLog&&console.log(i),this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:i}))}));else{var o=t.getBoundingClientRect(),s=o.top,c=o.bottom;let a=e.inViewportVisibility?e.inViewportVisibility:“partially”,u=e.inViewportVisibilityOffset?e.inViewportVisibilityOffset:0;(“partially”==a?s<window.innerHeight-u&&c>=0:s>=0&&c<=window.innerHeight+u)&&(e.consoleLog&&“event”==e.consoleLog&&console.log(i),this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:i}))}}));break;case"pageLoad":this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:this.domContentLoadedEvent});break;case"visibilitychange":document.addEventListener(“visibilitychange”,(a=>{e.consoleLog&&“event”==e.consoleLog&&console.log(a),e.visibilityState&&document.visibilityState==e.visibilityState&&this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a})}));break;case"resize":window.addEventListener(“resize”,(a=>{if(e.consoleLog&&“event”==e.consoleLog&&console.log(a),e.resizeDimension&&e.resizeOperator&&e.resizeValue)switch(e.resizeOperator){case"==“:“width”==e.resizeDimension&&window.innerWidth==e.resizeValue&&this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a}),“height”==e.resizeDimension&&window.innerHeight==e.resizeValue&&this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a});break;case”>“:“width”==e.resizeDimension&&window.innerWidth>e.resizeValue&&this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a}),“height”==e.resizeDimension&&window.innerHeight>e.resizeValue&&this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a});break;case”<“:“width”==e.resizeDimension&&window.innerWidth<e.resizeValue&&this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a}),“height”==e.resizeDimension&&window.innerHeight<e.resizeValue&&this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a});break;case”>=“:“width”==e.resizeDimension&&window.innerWidth>=e.resizeValue&&this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a}),“height”==e.resizeDimension&&window.innerHeight>=e.resizeValue&&this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a});break;case”<=“:“width”==e.resizeDimension&&window.innerWidth<=e.resizeValue&&this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a}),“height”==e.resizeDimension&&window.innerHeight<=e.resizeValue&&this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a});break;default:this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a})}else this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a})}));break;case"resizeObserver”:if(!t)return;new ResizeObserver((a=>{e.consoleLog&&“event”==e.consoleLog&&console.log(a),this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a})})).observe(t);break;case"mutationObserver":if(!t)return;let s=!!e.mutationObserverAttributes&&e.mutationObserverAttributes,c=!!e.mutationObserverChildList&&e.mutationObserverChildList,u=!!e.mutationObserverCharacterData&&e.mutationObserverCharacterData,g=!!e.mutationObserverSubTree&&e.mutationObserverSubTree;new MutationObserver((a=>{e.consoleLog&&“event”==e.consoleLog&&console.log(a),this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,actionData:n.action,event:a})})).observe(t,{attributes:s,childList:c,characterData:u,subtree:g});break;default:if(a){Array.prototype.forEach.call(t,(t=>{t.addEventListener(i,(a=>{e.consoleLog&&“event”==e.consoleLog&&console.log(a),this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,event:a,actionData:n.action})}))}));break}t.addEventListener(i,(a=>{e.consoleLog&&“event”==e.consoleLog&&console.log(a),this.fireAction({action:n.action.value,selector:t,target:r,queryAll:l,instance:e,event:a,actionData:n.action})}))}}}async fireAction(e){let t=e.instance,a=e.action,i=e.actionData,r=e.selector,o=e.target,n=e.queryAll,s=!!e.event&&e.event.target;if(!a||!r||!o)return;let l=i.except&&“none”!=i.except,c=!!i.exceptSelector&&i.exceptSelector,u=s;switch(!1!==c&&s&&s!=document.querySelector(c)&&(u=s.closest(c)),“triggered”==o&&(o=s!=document.querySelector(t.selector)?s.closest(t.selector):document.querySelector(t.selector)),a){case"show":if(n)for(let e of o)l&&u==e||(e.style.display=i.display?i.display:“block”);else o.style.display=i.display?i.display:“block”;break;case"hide":if(n)for(let e of o)l&&u==e||(e.style.display=“none”);else o.style.display=“none”;break;case"addClass":if(!i.cssClass)return;if(n)for(let e of o)l&&u==e||e.classList.add(i.cssClass);else o.classList.add(i.cssClass);break;case"removeClass":if(!i.cssClass)return;if(n)for(let e of o)l&&u==e||e.classList.remove(i.cssClass);else o.classList.remove(i.cssClass);break;case"toggleClass":if(!i.cssClass)return;if(n)for(let e of o)l&&u==e||e.classList.toggle(i.cssClass);else o.classList.toggle(i.cssClass);break;case"setAttribute":if(!i.attributeKey||!i.attributeValue)return;if(n)for(let e of o)l&&u==e||e.setAttribute(i.attributeKey,i.attributeValue);else o.setAttribute(i.attributeKey,i.attributeValue);break;case"removeAttribute":if(!i.attributeKeyRemoval)return;if(n)for(let e of o)l&&u==e||e.removeAttribute(i.attributeKeyRemoval);else o.removeAttribute(i.attributeKeyRemoval);break;case"gsap":if(“pageLoad”==t.event&&await this.wait(0),!i.animationAction||!i.animationTimeline)return;let a=i.animationAction,c=i.animationTimeline,g=i.animationSelectorType?i.animationSelectorType:“all”,d=[];“all”==g&&(d=this.timelines.filter((e=>e.id==c))),“trigger”==g&&(d=this.timelines.filter((e=>{let t=[…s.getElementsByTagName(“*”)].includes(e.trigger);return!(e.id!=c||e.trigger!=s&&!t)}))),d.forEach((e=>{let t=e.tl;switch(a){case"play":t.play();break;case"pause":t.pause();break;case"restart":t.restart();break;case"resume":t.resume();break;case"reverse":t.reverse()}}));break;case"jsFunction":if(!i.jsFunctionName)return;let p=e.event,f=i.jsFunctionName,m=new Function(“return ((trigger, event) => {”+f+“})”)();“function”==typeof m&&m(r,p);break;case"gsapFlip":if(!o)return;gsap.registerPlugin(Flip);let b=e.actionData.flipStylesProps?e.actionData.flipStylesProps:“”,h=e.actionData.flipEase?e.actionData.flipEase:“power1.inOut”,y=e.actionData.flipDuration?e.actionData.flipDuration:1,S=!!e.actionData.flipIncludeChildren&&e.actionData.flipIncludeChildren,k=!!e.actionData.flipAbsolute&&e.actionData.flipAbsolute;if(n)for(let t of o){if(l&&u==t)continue;const a=Flip.getState(1==S?[t,…t.children]:t,{props:b});if(o.style.transition=“none”,S)for(let e of o.children)e.style.transition=“none”;switch(e.actionData.flipStylesInput){case"custom":if(!e.actionData.flipStylesCode)break;let a=new Function(“return ((trigger, target, event) => {”+e.actionData.flipStylesCode+“})”)();“function”==typeof a&&a(r,t,e.event);break;case"removeClass":if(!e.actionData.flipStylesInputClassName)return;t.classList.remove(e.actionData.flipStylesInputClassName);break;case"addClass":if(!e.actionData.flipStylesInputClassName)return;t.classList.add(e.actionData.flipStylesInputClassName);break;case"toggleClass":if(!e.actionData.flipStylesInputClassName)return;t.classList.toggle(e.actionData.flipStylesInputClassName);break;case"appendTo":if(!e.actionData.flipStylesInputDOMElement)return;document.querySelector(e.actionData.flipStylesInputDOMElement).append(t)}Flip.from(a,{duration:y,ease:h,absolute:k,nested:!0})}else{const t=Flip.getState(1==S?[o,…o.children]:o,{props:b});if(o.style.transition=“none”,S)for(let e of o.children)e.style.transition=“none”;switch(e.actionData.flipStylesInput){case"custom":if(!e.actionData.flipStylesCode)break;let t=new Function(“return ((trigger, target, event) => {”+e.actionData.flipStylesCode+“})”)();“function”==typeof t&&t(r,o,e.event);break;case"removeClass":case"addClass":if(!e.actionData.flipStylesInputClassName)return;o.classList.add(e.actionData.flipStylesInputClassName);break;case"toggleClass":if(!e.actionData.flipStylesInputClassName)return;o.classList.toggle(e.actionData.flipStylesInputClassName);break;case"appendTo":if(!e.actionData.flipStylesInputDOMElement)return;document.querySelector(e.actionData.flipStylesInputDOMElement).append(o)}Flip.from(t,{duration:y,ease:h,absolute:k})}break;case"gsapSet":if(!o)return;if(n)for(let t of o){let a=i.gsapSetObject,n=new Function(“return (trigger, target, event) => { return “+a+” }”)();gsap.set(o,“function”==typeof n?n(r,t,e.event):{})}else{let t=i.gsapSetObject,a=new Function(“return (trigger, target, event) => { return “+t+” }”)();gsap.set(o,“function”==typeof a?a(r,o,e.event):{})}break;case"video_self_hosted_play":if(!o)return;if(n)for(let e of o)l&&u==e||e.play();else o.play();break;case"video_self_hosted_pause":if(!o)return;if(n)for(let e of o)l&&u==e||e.pause();else o.pause();break;case"video_self_hosted_stop":if(!o)return;if(n)for(let e of o)l&&u==e||(e.pause(),e.currentTime=0);else o.pause(),o.currentTime=0;break;case"storageSetItem":if(!e.actionData.storageItemKey||!e.actionData.storageItemValue)return;localStorage.setItem(e.actionData.storageItemKey,e.actionData.storageItemValue);break;case"storageRemoveItem":if(!e.actionData.storageItemKey)return;localStorage.removeItem(e.actionData.storageItemKey);break;case"sessionStorageSetItem":if(!e.actionData.storageItemKey||!e.actionData.storageItemValue)return;sessionStorage.setItem(e.actionData.storageItemKey,e.actionData.storageItemValue);break;case"sessionStorageRemoveItem":if(!e.actionData.storageItemKey)return;sessionStorage.removeItem(e.actionData.storageItemKey)}}handleTimeline(e,t=!1,a=!1){bricksIsFrontend||gsap.config({nullTargetWarn:!1}),e.animations&&e.animations.length||console.warn(“Bricksforge Panel: You try to use timelines, but we found no animations for it. This warning appears for the timeline: “+e.name);let i=e.repeat?parseInt(e.repeat):0,r=e.repeatDelay?parseInt(e.repeatDelay):0,o=e.trigger?e.trigger:“scrollTrigger”,n=e.triggerSelector?e.triggerSelector:””,s=!!e.animateTrigger&&e.animateTrigger,l=!!e.scrub&&e.scrub,c=e.scrubValue?e.scrubValue:1,u=e.scrollStart?e.scrollStart:“top bottom”,g=e.scrollEnd?e.scrollEnd:“bottom top”,d=!!e.pin&&e.pin,p=e.pinSelector?e.pinSelector:“”,f=!e.pinSpacing||e.pinSpacing,m=!!e.markers&&e.markers,b=!!e.stagger&&e.stagger,h=e.staggerAmount?e.staggerAmount:.2,y=e.staggerFrom?e.staggerFrom:“start”,S=e.staggerEase?e.staggerEase:“linear”,k=e.toggleActions?e.toggleActions:“play none none none”,v=!!e.snap&&e.snap,w=!!e.snapTo&&e.snapTo,A=e.snapDuration?e.snapDuration:.3,D=e.snapDelay?e.snapDelay:.1,I=e.snapEase?e.snapEase:“power1.inOut”;if(“scrollTrigger”===o)bricksIsFrontend&&gsap.registerPlugin(ScrollTrigger);if(!n||“.”==n||!this.isValidSelector(n)){if(“custom”!=o)return;n=“html”}gsap.utils.toArray(n).forEach((L=>{const V=gsap.timeline({repeat:i,repeatDelay:r,…“scrollTrigger”==o&&e.animations.length&&bricksIsFrontend&&{scrollTrigger:{trigger:L,markers:m,start:u,…1==v&&{snap:{snapTo:w,duration:A,delay:D,ease:I}},toggleActions:k,end:g,…1==l&&{scrub:c},…1==d&&p&&{pin:p,pinSpacing:f}}}});!0===a&&V.pause(),“custom”==o&&V.pause();for(let i of e.animations){if(!(!0!==a||i.selector&&“.”!=i.selector&&document.querySelector(i.selector))){let e=!0===s&&n?n:“.brf-dummy”;if(V.to(e,{duration:1}),bricksIsFrontend)continue}if(!i.selector&&!1===s){bricksIsFrontend&&console.warn(“Bricksforge Panel: You try to use timeline animations, but we found no selector for it. This warning appears for the timeline: “+e.name);continue}if(”.”==i.selector&&!1===s||!1===s&&!document.querySelector(i.selector))continue;if((!i.data||“”==i.data)&&bricksIsFrontend){console.warn(“Bricksforge Panel: You try to use timeline animations, but we found no animation data for it. This warning appears for the timeline: “+e.name);continue}let r;try{r=new Function(“return (trigger, target) => {return “+i.data+”}”)()}catch(e){if(r=new Function,bricksIsFrontend)continue}try{r(n,i.selector)}catch(t){if(r=new Function,console.warn(“Bricksforge Panel: You try to use timeline animations, but your Animation data object seems to be wrong. This warning appears for the timeline: “+e.name),bricksIsFrontend)continue}let o,l=r(n,i.selector),c=i.duration?i.duration:.5,u=i.delay?i.delay:0,g=i.position?i.position:“default”,d=i.customPosition?i.customPosition:”>”,p=i.ease?i.ease:“linear”,f=!!i.splitText&&i.splitText,m=i.splitTextType?i.splitTextType:“chars”,k=!!i.stagger&&i.stagger,v=i.staggerValue?i.staggerValue:.02;switch(g){case”<”:case">“:o=g;break;case"custom”:o=this.isNumeric(d)?parseInt(d):d;break;default:o=“>”}!0===t&&gsap.set(i.selector,{clearProps:“all”});let w=!0===s&&n&&bricksIsFrontend?L:i.selector;if(w||(w=“.brf-dummy”),bricksIsFrontend||V.pause(),!0===f){let e;gsap.registerPlugin(SplitText);let t=this.splitTextInstances.find((e=>e.id==i.id));switch(bricksIsFrontend?e=new SplitText(w,{type:“chars,words,lines”}):(t?e=t:(e=this.splitTextInstances.push({id:i.id,type:i.splitTextType,data:new SplitText(w,{type:“chars,words,lines”})}),e=this.splitTextInstances.find((e=>e.id==i.id))),e=e.data),m){case"chars":w=e.chars;break;case"words":w=e.words;break;case"lines":w=e.lines}}if(void 0===this.timelineActions.find((e=>e.finalSelector==w&&JSON.stringify(e.animationData)==JSON.stringify(l)))||!bricksIsFrontend){switch(i.method){case"from":V.from(w,{duration:c,delay:u,…l,ease:p,…!0===k&&{stagger:v},…!k&&b&&{stagger:{from:y,amount:h,ease:S}}},o);break;case"to":V.to(w,{duration:c,delay:u,…l,ease:p,…!0===k&&{stagger:v},…!k&&b&&{stagger:{from:y,amount:h,ease:S}}},o);break;case"fromTo":let t;try{t=new Function(“return (trigger, target) => {return “+i.data2+”}”)()}catch(e){if(t=new Function,bricksIsFrontend)continue}try{t(n,i.selector)}catch(a){if(t=new Function,console.warn("Bricksforge Panel: You try to use timeline animations, but your Animation data object seems to be wrong. This warning appears for the timeline: "+e.name),bricksIsFrontend)continue}let a=t(n,i.selector);V.fromTo(w,{…l,duration:c,delay:u,ease:p,…!0===k&&{stagger:v},…!k&&b&&{stagger:{from:y,amount:h,ease:S}}},{…a,duration:c,delay:u,ease:p,…!0===k&&{stagger:v},…!k&&b&&{stagger:{from:y,amount:h,ease:S}}},o)}this.timelineActions.push({finalSelector:w,animationData:l})}}!1===t&&this.timelines.push({id:e.id,tl:V,children:V.getChildren(),trigger:L})}))}isValidSelector(e){try{return document.querySelector(e),!0}catch(e){}return!1}async wait(e=1e3){return new Promise((async t=>{setTimeout((()=>{t()}),e)}))}parseObject(e){return new Function("return “+e)}isNumeric(e){return"string”==typeof e&&(!isNaN(e)&&!isNaN(parseFloat(e)))}isParsable(e){try{JSON5.parse(e)}catch(e){return!1}return!0}}document.addEventListener(“DOMContentLoaded”,(e=>{brfPanel=new BricksforgePanel(e)}));

sorry realy long :grimacing:

the console warning is:

Bricksforge Panel: You try to use timelines, but GSAP is not loaded.
renderPanel @ bricksforge_panel.js?ver=1671001266:1

Could you try to update to 0.9.4.2? I’ve deployed this fix a few hours ago :slight_smile:

thank you - this fixed it! :+1:

1 Like