mirror of
https://github.com/netbirdio/dashboard.git
synced 2026-01-26 01:21:04 +00:00
Fix peer groups occasionally not refreshing (#351)
* Trigger groups refresh when visiting peers page * Disable exhaustive-deps linter --------- Co-authored-by: Maycon Santos <mlsmaycon@gmail.com>
This commit is contained in:
@@ -6,8 +6,9 @@ import Paragraph from "@components/Paragraph";
|
|||||||
import SkeletonTable from "@components/skeletons/SkeletonTable";
|
import SkeletonTable from "@components/skeletons/SkeletonTable";
|
||||||
import useFetchApi from "@utils/api";
|
import useFetchApi from "@utils/api";
|
||||||
import { ExternalLinkIcon } from "lucide-react";
|
import { ExternalLinkIcon } from "lucide-react";
|
||||||
import React, { lazy, Suspense } from "react";
|
import React, { lazy, Suspense, useEffect } from "react";
|
||||||
import PeerIcon from "@/assets/icons/PeerIcon";
|
import PeerIcon from "@/assets/icons/PeerIcon";
|
||||||
|
import { useGroups } from "@/contexts/GroupsProvider";
|
||||||
import { useLoggedInUser, useUsers } from "@/contexts/UsersProvider";
|
import { useLoggedInUser, useUsers } from "@/contexts/UsersProvider";
|
||||||
import { Peer } from "@/interfaces/Peer";
|
import { Peer } from "@/interfaces/Peer";
|
||||||
import PageContainer from "@/layouts/PageContainer";
|
import PageContainer from "@/layouts/PageContainer";
|
||||||
@@ -28,6 +29,12 @@ export default function Peers() {
|
|||||||
function PeersView() {
|
function PeersView() {
|
||||||
const { data: peers, isLoading } = useFetchApi<Peer[]>("/peers");
|
const { data: peers, isLoading } = useFetchApi<Peer[]>("/peers");
|
||||||
const { users } = useUsers();
|
const { users } = useUsers();
|
||||||
|
const { refresh } = useGroups();
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
refresh();
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
|
}, []);
|
||||||
|
|
||||||
const peersWithUser = peers?.map((peer) => {
|
const peersWithUser = peers?.map((peer) => {
|
||||||
if (!users) return peer;
|
if (!users) return peer;
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ export function GroupsProviderContent({ children }: Props) {
|
|||||||
const [dropdownOptions, setDropdownOptions] = useState<Group[]>([]);
|
const [dropdownOptions, setDropdownOptions] = useState<Group[]>([]);
|
||||||
|
|
||||||
const refresh = () => {
|
const refresh = () => {
|
||||||
mutate().then();
|
if (groups && !isLoading) mutate().then();
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|||||||
Reference in New Issue
Block a user