Files
pragma-stack/frontend/src/app/admin/organizations/[id]/members/page.tsx
Felipe Cardoso 6b556431d3 Refactor organization and user management components/tests for simplification and improved clarity
- Removed unused properties (`slug`, `is_active`, etc.) in organization and user-related components and test data.
- Simplified function data typing by removing redundant `any` usage.
- Updated `params` in `OrganizationMembersPage` for Promise resolution and async handling.
- Cleaned up unused variables and streamlined form handling in `AddMemberDialog`.
2025-11-07 00:14:10 +01:00

46 lines
1.3 KiB
TypeScript

/**
* Admin Organization Members Page
* Displays and manages members of a specific organization
* Protected by AuthGuard in layout with requireAdmin=true
*/
/* istanbul ignore next - Next.js type import for metadata */
import type { Metadata } from 'next';
import Link from 'next/link';
import { ArrowLeft } from 'lucide-react';
import { Button } from '@/components/ui/button';
import { OrganizationMembersContent } from '@/components/admin/organizations/OrganizationMembersContent';
/* istanbul ignore next - Next.js metadata, not executable code */
export const metadata: Metadata = {
title: 'Organization Members',
};
interface PageProps {
params: Promise<{
id: string;
}>;
}
export default async function OrganizationMembersPage({ params }: PageProps) {
const { id } = await params;
return (
<div className="container mx-auto px-6 py-8">
<div className="space-y-6">
{/* Back Button */}
<div className="flex items-center gap-4">
<Link href="/admin/organizations">
<Button variant="outline" size="icon" aria-label="Back to Organizations">
<ArrowLeft className="h-4 w-4" aria-hidden="true" />
</Button>
</Link>
</div>
{/* Organization Members Content */}
<OrganizationMembersContent organizationId={id} />
</div>
</div>
);
}