I got an error here:
Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'totalTime')
at Timeline.restart (gsap.min.js:10:20564)
at tl.clear (confettiCuisine.js:118:10)
at Socket.<anonymous> (confettiCuisine.js:145:16)
at Emitter.emit (index.mjs:136:20)
at Socket.emitEvent (socket.js:498:20)
at Socket.onevent (socket.js:485:18)
at Socket.onpacket (socket.js:455:22)
at Emitter.emit (index.mjs:136:20)
at manager.js:204:18
and this is the code :::
function bel(){
const sound = new Audio('/sound/mixkit-fairy-message-notification-861.wav');
sound.addEventListener('canplaythrough', ()=>{
sound.play();
})
}
let tl = gsap.timeline( {paused: true, repeat:2});
tl.play = function(){
tl
.to(leftBell, { duration: 0.15, css: { scale: 1.2, skewY: "1deg", skewX: "-1deg" }, ease: Power0.easeNone })
.to(rightBell, { duration: 0.15, css: { scale: 1.2, skewY: "1deg", skewX: "-1deg" }, ease: Power0.easeNone })
.to(bodyBell, { x: 0, transformOrigin: "50% 50%" })
.to(bodyBell, {
keyframes: [
{ x: -3, rotate: 10},
{ x: 1.5, rotate: -10},
{ x: -1.5, rotate: 6.0 },
{ x: 1.5, rotate: -4.4},
{ x: -1.5, rotate: 2.2 }
],
duration:0.4,
ease: Power0.easeNone
});
}
tl.clear = function (){
this.kill();
this.restart();
}
// const submit = () => {
function submit() {
form.addEventListener('submit', (e) => {
e.preventDefault();
socket.emit('message', {
content: chatInput.value,
userName: Username.value,
id: Id.value
});
chatInput.value = "";
return false;
});
// what i get from the server
socket.on('message', (msg) => {
if(window.location.pathname !=="/chat"){
displayMessage(msg);
bel();
tl.play();
}else{
displayMessage(msg);
tl.clear();
}
chat.scrollTop = chat.scrollHeight;
})
socket.on('load all messages', (data) => {
data.forEach(message => {
displayMessage(message);
})
chat.scrollTop = chat.scrollHeight;
})
}