Files
nextjs-address-book/src/app/(sidebar)/loaders.ts

22 lines
722 B
TypeScript

import { ContactRecord } from "@/app/data";
export async function fetchContacts() {
console.log("fetchContacts()");
const response = await fetch('/api/contacts');
if (!response.ok) {
console.log("ERROR!?");
throw new Error(`Network Error ${response.status}: ${response.statusText}`);
}
const data: { contacts: ContactRecord[] } = await response.json();
return data.contacts;
}
export async function fetchContact(contactId: string) {
console.log("fetchContacts()");
const response = await fetch(`/api/contacts/${contactId}`);
if (!response.ok) {
throw new Error(`Network Error ${response.status}: ${response.statusText}`);
}
return (await response.json())['contact'] as ContactRecord;
}