Reload page on leave

This commit is contained in:
2025-02-05 02:23:29 +01:00
parent 9237d98731
commit 405c7c5a60
2 changed files with 31 additions and 9 deletions

View File

@@ -1,13 +1,14 @@
"use client";
import { useEffect, useRef } from "react";
import { useCallback, useEffect, useRef } from "react";
import "@whereby.com/browser-sdk/embed";
import { Box, Button, HStack, useToast, Text } from "@chakra-ui/react";
interface WherebyEmbedProps {
roomUrl: string;
onLeave?: () => void;
}
export default function WherebyEmbed({ roomUrl }: WherebyEmbedProps) {
export default function WherebyEmbed({ roomUrl, onLeave }: WherebyEmbedProps) {
const wherebyRef = useRef<HTMLElement>(null);
const toast = useToast();
@@ -53,6 +54,20 @@ export default function WherebyEmbed({ roomUrl }: WherebyEmbedProps) {
}
}, [roomUrl, toast]);
const handleLeave = () => {
if (onLeave) {
onLeave();
}
};
useEffect(() => {
wherebyRef.current?.addEventListener("leave", handleLeave);
return () => {
wherebyRef.current?.removeEventListener("leave", handleLeave);
};
}, [handleLeave]);
return (
<whereby-embed
ref={wherebyRef}