import { A } from '@solidjs/router'; import { createMemo, createResource, createSignal, For, Show } from 'solid-js'; import AdminShell from '~/components/AdminShell'; const API = '/api/gateway'; async function fetchUsers(): Promise { try { const res = await fetch(`${API}/api/admin/users?role=video_editor`); if (!res.ok) throw new Error('Failed to load'); const data = await res.json(); return Array.isArray(data) ? data : (data.users || []); } catch { return []; } } export default function VideoEditorsPage() { const [users] = createResource(fetchUsers); const [search, setSearch] = createSignal(''); const [statusFilter, setStatusFilter] = createSignal(''); const filtered = createMemo(() => { const list = users() ?? []; const q = search().toLowerCase(); const s = statusFilter(); return list.filter((u) => { const matchSearch = !q || (u.name || u.full_name || '').toLowerCase().includes(q) || (u.email || '').toLowerCase().includes(q); const matchStatus = !s || (u.status || '').toUpperCase() === s; return matchSearch && matchStatus; }); }); return (

Video Editor Management

Manage all video editor accounts on the platform.

setSearch(e.currentTarget.value)} style="border:1px solid #cbd5e1;border-radius:6px;padding:8px 12px;font-size:14px;width:260px;" />
0}> {(item) => ( )}
Name Email Status Registered Actions
Loading...
Failed to load. Is the backend running?
No video editor users found.
{item.name || item.full_name || '—'} {item.email} {item.status?.toUpperCase() === 'ACTIVE' && ( ACTIVE )} {item.status?.toUpperCase() === 'INACTIVE' && ( INACTIVE )} {item.status?.toUpperCase() === 'PENDING' && ( PENDING )} {!item.status && } {item.created_at ? new Date(item.created_at).toLocaleDateString() : '—'}
); }