- Fitur notifikasi ke admin dari user baru - Notifikasi ke user bahwa akunnya telah terverifikasi Fix: - app/(application)/(user)/notifications/index.tsx - app/(application)/(user)/waiting-room.tsx - app/(application)/admin/super-admin/[id]/index.tsx - app/(application)/admin/user-access/[id]/index.tsx - context/AuthContext.tsx - screens/Home/tabsList.ts - service/api-admin/api-admin-user-access.ts - service/api-device-token.ts - service/api-notifications.ts - types/type-notification-category.ts Add: - lib/routeApp.ts ### No Issue
89 lines
1.6 KiB
TypeScript
89 lines
1.6 KiB
TypeScript
import {
|
|
NotificationProp,
|
|
TypeNotificationCategoryApp
|
|
} from "@/types/type-notification-category";
|
|
import { apiConfig } from "./api-config";
|
|
|
|
export async function apiNotificationsSend({
|
|
data,
|
|
}: {
|
|
data: NotificationProp;
|
|
}) {
|
|
try {
|
|
const response = await apiConfig.post(`/mobile/notification`, {
|
|
data: data,
|
|
});
|
|
|
|
return response.data;
|
|
} catch (error) {
|
|
throw error;
|
|
}
|
|
}
|
|
|
|
export async function apiNotificationsSendById({
|
|
data,
|
|
id,
|
|
}: {
|
|
data: NotificationProp;
|
|
id: string;
|
|
}) {
|
|
try {
|
|
const response = await apiConfig.post(`/mobile/notification/${id}`, {
|
|
data: data,
|
|
});
|
|
|
|
return response.data;
|
|
} catch (error) {
|
|
throw error;
|
|
}
|
|
}
|
|
|
|
export async function apiGetNotificationsById({
|
|
id,
|
|
category,
|
|
}: {
|
|
id: string;
|
|
category: TypeNotificationCategoryApp;
|
|
}) {
|
|
console.log("ID", id);
|
|
console.log("Category", category);
|
|
|
|
try {
|
|
const response = await apiConfig.get(
|
|
`/mobile/notification/${id}?category=${category}`
|
|
);
|
|
|
|
return response.data;
|
|
} catch (error) {
|
|
throw error;
|
|
}
|
|
}
|
|
|
|
export async function apiNotificationUnreadCount({
|
|
id,
|
|
role,
|
|
}: {
|
|
id: string;
|
|
role: "user" | "admin";
|
|
}) {
|
|
try {
|
|
const response = await apiConfig.get(
|
|
`/mobile/notification/${id}/unread-count?role=${role}`
|
|
);
|
|
|
|
console.log("Response Unread Count", response.data);
|
|
return response.data;
|
|
} catch (error) {
|
|
throw error;
|
|
}
|
|
}
|
|
|
|
export async function apiNotificationMarkAsRead({ id }: { id: string }) {
|
|
try {
|
|
const response = await apiConfig.put(`/mobile/notification/${id}`);
|
|
return response.data;
|
|
} catch (error) {
|
|
throw error;
|
|
}
|
|
}
|