forked from baron/baron-sso
fix(adminfront): fix ReferenceErrors and null checks in UI components
- Import and initialize 'navigate' in TenantUsersPage and TenantAdminsAndOwnersTab. - Use optional chaining for 'user.id' in UserDetailPage to prevent runtime errors during initial load.
This commit is contained in:
@@ -11,7 +11,7 @@ import {
|
|||||||
} from "lucide-react";
|
} from "lucide-react";
|
||||||
import { useState } from "react";
|
import { useState } from "react";
|
||||||
import { useAuth } from "react-oidc-context";
|
import { useAuth } from "react-oidc-context";
|
||||||
import { useParams } from "react-router-dom";
|
import { useNavigate, useParams } from "react-router-dom";
|
||||||
import { Badge } from "../../../components/ui/badge";
|
import { Badge } from "../../../components/ui/badge";
|
||||||
import { Button } from "../../../components/ui/button";
|
import { Button } from "../../../components/ui/button";
|
||||||
import {
|
import {
|
||||||
@@ -66,6 +66,7 @@ function mergePendingMembers(
|
|||||||
|
|
||||||
export function TenantAdminsAndOwnersTab() {
|
export function TenantAdminsAndOwnersTab() {
|
||||||
const auth = useAuth();
|
const auth = useAuth();
|
||||||
|
const navigate = useNavigate();
|
||||||
const currentUserId = auth.user?.profile.sub;
|
const currentUserId = auth.user?.profile.sub;
|
||||||
const { tenantId } = useParams<{ tenantId: string }>();
|
const { tenantId } = useParams<{ tenantId: string }>();
|
||||||
const queryClient = useQueryClient();
|
const queryClient = useQueryClient();
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import {
|
|||||||
UserMinus,
|
UserMinus,
|
||||||
UserPlus,
|
UserPlus,
|
||||||
} from "lucide-react";
|
} from "lucide-react";
|
||||||
import { Link, useParams } from "react-router-dom";
|
import { Link, useNavigate, useParams } from "react-router-dom";
|
||||||
import { Badge } from "../../../components/ui/badge";
|
import { Badge } from "../../../components/ui/badge";
|
||||||
import { Button } from "../../../components/ui/button";
|
import { Button } from "../../../components/ui/button";
|
||||||
import {
|
import {
|
||||||
@@ -38,6 +38,7 @@ import { t } from "../../../lib/i18n";
|
|||||||
|
|
||||||
function TenantUsersPage() {
|
function TenantUsersPage() {
|
||||||
const params = useParams<{ tenantId: string }>();
|
const params = useParams<{ tenantId: string }>();
|
||||||
|
const navigate = useNavigate();
|
||||||
const tenantId = params.tenantId ?? "";
|
const tenantId = params.tenantId ?? "";
|
||||||
const queryClient = useQueryClient();
|
const queryClient = useQueryClient();
|
||||||
|
|
||||||
|
|||||||
@@ -1078,7 +1078,7 @@ function UserDetailPage() {
|
|||||||
id="role"
|
id="role"
|
||||||
className="flex h-11 w-full rounded-md border border-input bg-background px-3 py-2 text-sm shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-primary disabled:opacity-50"
|
className="flex h-11 w-full rounded-md border border-input bg-background px-3 py-2 text-sm shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-primary disabled:opacity-50"
|
||||||
{...register("role")}
|
{...register("role")}
|
||||||
disabled={profile?.role !== "super_admin" || profile?.id === user.id}
|
disabled={profile?.role !== "super_admin" || profile?.id === user?.id}
|
||||||
>
|
>
|
||||||
<option value="super_admin">
|
<option value="super_admin">
|
||||||
{t("ui.admin.role.super_admin", "시스템 관리자")}
|
{t("ui.admin.role.super_admin", "시스템 관리자")}
|
||||||
|
|||||||
Reference in New Issue
Block a user