feat: add API endpoints for fetching staff profiles and staff list

This commit is contained in:
Ardeman
2025-03-25 19:07:29 +08:00
parent dce745f53d
commit 84451f1fd4
8 changed files with 82 additions and 72 deletions
@@ -1,15 +1,17 @@
import { isRouteErrorResponse } from 'react-router'
import { getStaffs } from '~/apis/admin/get-staffs'
import { handleCookie } from '~/libs/cookies'
import { StaffsPage } from '~/pages/dashboard-staffs'
import type { Route } from './+types/_admin.lg-admin._dashboard.staffs._index'
// export const loader = async ({ request }: Route.LoaderArgs) => {
// const { staffToken: accessToken } = await handleCookie(request)
// const { data: usersData } = await getUsers({ accessToken })
export const loader = async ({ request }: Route.LoaderArgs) => {
const { staffToken: accessToken } = await handleCookie(request)
const { data: staffsData } = await getStaffs({ accessToken })
// return { usersData }
// }
return { staffsData }
}
export const ErrorBoundary = ({ error }: Route.ErrorBoundaryProps) => {
let message = 'Oops!'
+2 -2
View File
@@ -1,6 +1,6 @@
import { isRouteErrorResponse, Outlet, redirect } from 'react-router'
import { getStaff } from '~/apis/admin/get-staff'
import { getProfile } from '~/apis/admin/get-profile'
import { AUTH_PAGES } from '~/configs/pages'
import { AdminDefaultLayout } from '~/layouts/admin/default'
import { handleCookie } from '~/libs/cookies'
@@ -14,7 +14,7 @@ export const loader = async ({ request }: Route.LoaderArgs) => {
let staffData
if (accessToken) {
const { data } = await getStaff({ accessToken })
const { data } = await getProfile({ accessToken })
staffData = data
}
+2 -2
View File
@@ -3,7 +3,7 @@ import { data } from 'react-router'
import { getValidatedFormData } from 'remix-hook-form'
import { XiorError } from 'xior'
import { getStaff } from '~/apis/admin/get-staff'
import { getProfile } from '~/apis/admin/get-profile'
import { staffLoginRequest } from '~/apis/admin/login-staff'
import { loginSchema, type TLoginSchema } from '~/pages/staff-login'
import { generateStaffTokenCookie } from '~/utils/token'
@@ -28,7 +28,7 @@ export const action = async ({ request }: Route.ActionArgs) => {
const { data: loginData } = await staffLoginRequest(payload)
const { token: accessToken } = loginData
const { data: staffData } = await getStaff({ accessToken })
const { data: staffData } = await getProfile({ accessToken })
const tokenCookie = generateStaffTokenCookie({ accessToken })
const headers = new Headers()