feat: migrate task jobs to workflow notifications + timeline
This commit is contained in:
25
lib/api.ts
25
lib/api.ts
@@ -12,6 +12,8 @@ import type {
|
||||
PortfolioInsight,
|
||||
PortfolioSummary,
|
||||
Task,
|
||||
TaskStatus,
|
||||
TaskTimeline,
|
||||
User,
|
||||
WatchlistItem
|
||||
} from './types';
|
||||
@@ -244,10 +246,29 @@ export async function getTask(taskId: string) {
|
||||
return await unwrapData<{ task: Task }>(result, 'Unable to fetch task');
|
||||
}
|
||||
|
||||
export async function listRecentTasks(limit = 20) {
|
||||
export async function getTaskTimeline(taskId: string) {
|
||||
const result = await client.api.tasks[taskId].timeline.get();
|
||||
return await unwrapData<TaskTimeline>(result, 'Unable to fetch task timeline');
|
||||
}
|
||||
|
||||
export async function updateTaskNotificationState(
|
||||
taskId: string,
|
||||
input: { read?: boolean; silenced?: boolean }
|
||||
) {
|
||||
const result = await client.api.tasks[taskId].notification.patch(input);
|
||||
return await unwrapData<{ task: Task }>(result, 'Unable to update task notification state');
|
||||
}
|
||||
|
||||
export async function listRecentTasks(input: {
|
||||
limit?: number;
|
||||
statuses?: TaskStatus[];
|
||||
} = {}) {
|
||||
const result = await client.api.tasks.get({
|
||||
$query: {
|
||||
limit
|
||||
limit: input.limit ?? 20,
|
||||
...(input.statuses && input.statuses.length > 0
|
||||
? { status: input.statuses }
|
||||
: {})
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user