SILENT KILLERPanel

Current Path: > home > transcarter > > www > wp-content > plugins > > leadin > scripts > > shared > Meeting > hooks


Operation   : Linux host59.registrar-servers.com 4.18.0-513.18.1.lve.2.el8.x86_64 #1 SMP Sat Mar 30 15:36:11 UTC 2024 x86_64
Software     : Apache
Server IP    : 198.54.126.42 | Your IP: 216.73.216.135
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: /home/transcarter//www/wp-content/plugins//leadin/scripts//shared/Meeting/hooks

NameTypeSizeLast ModifiedActions
useCurrentUserFetch.ts File 1227 bytes July 17 2025 21:06:25.
useMeetings.ts File 3102 bytes July 17 2025 21:06:25.
useMeetingsFetch.ts File 1420 bytes July 17 2025 21:06:25.
useMeetingsScript.ts File 667 bytes July 17 2025 21:06:25.

Reading File: /home/transcarter//www/wp-content/plugins//leadin/scripts//shared/Meeting/hooks/useMeetingsFetch.ts

import { useEffect, useState } from 'react';
import { usePostAsyncBackgroundMessage } from '../../../iframe/useBackgroundApp';
import LoadState, { LoadStateType } from '../../enums/loadState';
import { ProxyMessages } from '../../../iframe/integratedMessages';

export interface Meeting {
  meetingsUserIds: number[];
  name: string;
  link: string;
}

export interface MeetingUser {
  id: string;
}

let meetings: Meeting[] = [];
let meetingUsers: MeetingUser[] = [];

export default function useMeetingsFetch() {
  const proxy = usePostAsyncBackgroundMessage();
  const [loadState, setLoadState] = useState<LoadStateType>(
    LoadState.NotLoaded
  );

  const [error, setError] = useState(null);

  const reload = () => {
    meetings = [];
    setError(null);
    setLoadState(LoadState.NotLoaded);
  };

  useEffect(() => {
    if (loadState === LoadState.NotLoaded && meetings.length === 0) {
      setLoadState(LoadState.Loading);
      proxy({
        key: ProxyMessages.FetchMeetingsAndUsers,
      })
        .then(data => {
          setLoadState(LoadState.Loaded);
          meetings = data && data.meetingLinks;
          meetingUsers = data && data.meetingUsers;
        })
        .catch(e => {
          setError(e);
          setLoadState(LoadState.Failed);
        });
    }
  }, [loadState]);

  return {
    meetings,
    meetingUsers,
    loadMeetingsState: loadState,
    error,
    reload,
  };
}

SILENT KILLER Tool