forked from StellarSplit/StellarSplit
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgroupApi.ts
More file actions
27 lines (22 loc) · 1007 Bytes
/
Copy pathgroupApi.ts
File metadata and controls
27 lines (22 loc) · 1007 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import type { Group, ApiResponse } from "../types/split-group";
import { getSplitGroupDataSource } from "./splitGroupDataSource";
export async function fetchGroups(): Promise<ApiResponse<Group[]>> {
const groups = await getSplitGroupDataSource().list();
return { data: groups };
}
export async function createGroup(group: Group): Promise<ApiResponse<Group>> {
const created = await getSplitGroupDataSource().create(group);
return { data: created };
}
export async function updateGroup(group: Group): Promise<ApiResponse<Group>> {
const updated = await getSplitGroupDataSource().update(group);
return { data: updated };
}
export async function deleteGroup(groupId: string): Promise<ApiResponse<{ id: string }>> {
await getSplitGroupDataSource().remove(groupId);
return { data: { id: groupId } };
}
export async function startSplit(groupId: string): Promise<ApiResponse<Group | null>> {
const updated = await getSplitGroupDataSource().touchSplit(groupId);
return { data: updated };
}