T.ME/BIBIL_0DAY
CasperSecurity


Server : Apache/2
System : Linux server-15-235-50-60 5.15.0-164-generic #174-Ubuntu SMP Fri Nov 14 20:25:16 UTC 2025 x86_64
User : gositeme ( 1004)
PHP Version : 8.2.29
Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Directory :  /home/gositeme/.cursor-server/data/User/History/-683e4975/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/gositeme/.cursor-server/data/User/History/-683e4975/xcWB.tsx
import '@/styles/globals.css';
import type { AppProps } from 'next/app';
import { SessionProvider, useSession } from 'next-auth/react';
import NProgress from 'nprogress';
import 'nprogress/nprogress.css';
import { useRouter } from 'next/router';
import { useEffect } from 'react';
import ErrorBoundary from '@/components/ErrorBoundary';
import { ThemeProvider } from '@/context/ThemeContext';
import ThemeCustomizer from '@/components/ThemeCustomizer';
import Layout from '@/components/Layout';
import { ChakraProvider, defaultSystem } from '@chakra-ui/react';

import { Toaster } from 'react-hot-toast';
import { registerServiceWorker } from '@/utils/serviceWorker';
import Head from 'next/head';
import AuthenticatedWebSocketProvider from '@/components/AuthenticatedWebSocketProvider';
import { PublicNotificationProvider } from '@/context/PublicNotificationContext';
import { LanguageProvider } from '@/context/LanguageContext';
import CaseUpdateBanner from '@/components/CaseUpdateBanner';
import SmartEngagement from '@/components/SmartEngagement';
// import IncomingCallNotification from '@/components/IncomingCallNotification'; // Removed for now
// import SimpleVideoCall from '@/components/SimpleVideoCall'; // Removed for now


// Disable the default Next.js loading indicator
NProgress.configure({ showSpinner: false });

function SessionRefresh() {
  const { data: session, update } = useSession();

  useEffect(() => {
    // Refresh session on page load to ensure impersonation state is current
    if (session?.user) {
      console.log('🔄 App - Refreshing session on page load');
      update({ trigger: 'update' });
    }
  }, []); // Only run once on mount

  return null;
}

function App({ Component, pageProps: { session, ...pageProps } }: AppProps) {
  const router = useRouter();

  useEffect(() => {
    registerServiceWorker();
  }, []);

  useEffect(() => {
    const handleStart = () => NProgress.start();
    const handleStop = () => NProgress.done();
    router.events.on('routeChangeStart', handleStart);
    router.events.on('routeChangeComplete', handleStop);
    router.events.on('routeChangeError', handleStop);
    return () => {
      router.events.off('routeChangeStart', handleStart);
      router.events.off('routeChangeComplete', handleStop);
      router.events.off('routeChangeError', handleStop);
    };
  }, [router]);

  return (
    <ErrorBoundary>
      <ChakraProvider value={defaultSystem}>
        <SessionProvider session={session}>
          <SessionRefresh />
          <ThemeProvider>
            <LanguageProvider>
              <PublicNotificationProvider>
                <AuthenticatedWebSocketProvider>
                <Head>
                  <meta charSet="utf-8" />
                  <meta name="viewport" content="width=device-width, initial-scale=1" />
                  <link rel="icon" href="/favicon.ico" />
                  <link rel="preload" href="/fonts/Inter-Regular.woff2" as="font" type="font/woff2" crossOrigin="anonymous" />
                  {/* CSS is imported directly, no need for preload */}
                </Head>
                <CaseUpdateBanner />
                <ThemeCustomizer />
                <Layout>
                  <Component {...pageProps} />
                </Layout>
                <SmartEngagement />
                {/* Video call removed for now */}
                {/* Video call removed for now */}
        
                <Toaster />
        
              </AuthenticatedWebSocketProvider>
            </PublicNotificationProvider>
            </LanguageProvider>
          </ThemeProvider>
        </SessionProvider>
      </ChakraProvider>
    </ErrorBoundary>
  );
}

export default App; 

CasperSecurity Mini