diff --git a/ui/litellm-dashboard/src/components/view_users.tsx b/ui/litellm-dashboard/src/components/view_users.tsx index 2af1195ef..e3be74706 100644 --- a/ui/litellm-dashboard/src/components/view_users.tsx +++ b/ui/litellm-dashboard/src/components/view_users.tsx @@ -52,6 +52,15 @@ interface ViewUserDashboardProps { teams: any[] | null; setKeys: React.Dispatch>; } + +interface UserListResponse { + users: any[] | null; + total: number; + page: number; + page_size: number; + total_pages: number; +} + const isLocal = process.env.NODE_ENV === "development"; const proxyBaseUrl = isLocal ? "http://localhost:4000" : null; if (isLocal != true) { @@ -67,6 +76,7 @@ const ViewUserDashboard: React.FC = ({ teams, setKeys, }) => { + const [userListResponse, setUserListResponse] = useState(null); const [userData, setUserData] = useState(null); const [endUsers, setEndUsers] = useState(null); const [currentPage, setCurrentPage] = useState(1); @@ -123,8 +133,11 @@ const ViewUserDashboard: React.FC = ({ currentPage, defaultPageSize ); + + setUserListResponse(userDataResponse); + console.log("user data response:", userDataResponse); - setUserData(userDataResponse.users); + setUserData(userDataResponse.users || []); const availableUserRoles = await getPossibleUserRoles(accessToken); setPossibleUIRoles(availableUserRoles); @@ -149,27 +162,31 @@ const ViewUserDashboard: React.FC = ({ function renderPagination() { if (!userData) return null; - const totalPages = Math.ceil(userData.length / defaultPageSize); + const totalPages = userListResponse?.total_pages || 0; + + const handlePageChange = (newPage: number) => { + setUserData([]); // Clear current users + setCurrentPage(newPage); + }; + return (
- Showing Page {currentPage + 1} of {totalPages} + Showing Page {currentPage } of {totalPages}
@@ -255,11 +272,6 @@ const ViewUserDashboard: React.FC = ({ > View Keys - {/* - { - setOpenDialogId(user.user_id) - setSelectedItem(user) - }}>View Keys */} ))} @@ -271,25 +283,6 @@ const ViewUserDashboard: React.FC = ({
- {/* - - - End User - Spend - Total Events - - - - - {endUsers?.map((user: any, index: number) => ( - - {user.end_user} - {user.total_spend} - {user.total_events} - - ))} - -
*/}