route.ts 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. import { NextRequest, NextResponse } from "next/server";
  2. import { restApiFetch } from "@/utils/bagisto";
  3. import type { GiftCardRespBody } from '@/types/api/gift/my-gift-cards';
  4. export async function GET(req: NextRequest) {
  5. try {
  6. const searchParams = req.nextUrl.searchParams;
  7. const page = searchParams.get('page') || '1';
  8. const per_page = searchParams.get('per_page') || '10';
  9. const response = await restApiFetch<{
  10. data: GiftCardRespBody,
  11. variables: {page: string;per_page: string;}
  12. }>({
  13. variables: {
  14. page,
  15. per_page
  16. },
  17. api: `/gift/my-gift-cards`,
  18. method:'GET',
  19. cache:'no-store',
  20. });
  21. return NextResponse.json(response.body,{
  22. status: response.status,
  23. });
  24. } catch (error) {
  25. return NextResponse.json(
  26. {
  27. message: error instanceof Error ? error.message : "Network error",
  28. success: false,
  29. data: []
  30. },
  31. { status:500 }
  32. );
  33. }
  34. }