add: more things

Signed-off-by: Kenneth Obsequio <k80308392@gmail.com>
This commit is contained in:
2026-07-06 15:21:36 +08:00
parent 41e98bb602
commit 244aa607f7
71 changed files with 2998 additions and 1014 deletions
+78 -13
View File
@@ -53,7 +53,12 @@ export const StaffTaskProvider = ({ children }) => {
} catch (err) {
const message = err?.response?.data?.message || err.message || "Something went wrong.";
setError(message);
toast.error(message);
toast(message, {
action: {
label: "Close",
onClick: () => {}
}
});
return null;
} finally {
setLoading(false);
@@ -134,7 +139,12 @@ export const StaffTaskProvider = ({ children }) => {
const res = await api.post(`${BASE}/task-lists`, payload);
const created = res.data?.data;
if (created) setTaskLists((prev) => [created, ...prev]);
toast.success("Task list created.");
toast("Task list created.", {
action: {
label: "Close",
onClick: () => {}
}
});
return res.data;
}),
[request]
@@ -153,7 +163,12 @@ export const StaffTaskProvider = ({ children }) => {
if (taskList?.task_list_id === taskListId)
setTaskList((prev) => ({ ...prev, ...updated }));
}
toast.success("Task list updated.");
toast("Task list updated.", {
action: {
label: "Close",
onClick: () => {}
}
});
return res.data;
}),
[request, taskList]
@@ -166,7 +181,12 @@ export const StaffTaskProvider = ({ children }) => {
const res = await api.post(`${BASE}/task-lists/${taskListId}/archive`);
setTaskLists((prev) => prev.filter((tl) => tl.task_list_id !== taskListId));
if (taskList?.task_list_id === taskListId) setTaskList(null);
toast.success("Task list archived.");
toast("Task list archived.", {
action: {
label: "Close",
onClick: () => {}
}
});
return res.data;
}),
[request, taskList]
@@ -178,7 +198,12 @@ export const StaffTaskProvider = ({ children }) => {
request(async () => {
const res = await api.post(`${BASE}/task-lists/${taskListId}/restore`);
setTaskLists((prev) => prev.filter((tl) => tl.task_list_id !== taskListId));
toast.success("Task list restored.");
toast("Task list restored.", {
action: {
label: "Close",
onClick: () => {}
}
});
return res.data;
}),
[request]
@@ -193,7 +218,12 @@ export const StaffTaskProvider = ({ children }) => {
setTaskLists((prev) =>
prev.filter((tl) => !archived_ids.includes(tl.task_list_id))
);
toast.success(`${archived_ids.length} task list(s) archived.`);
toast(`${archived_ids.length} task list(s) archived.`, {
action: {
label: "Close",
onClick: () => {}
}
});
return res.data;
}),
[request]
@@ -208,7 +238,12 @@ export const StaffTaskProvider = ({ children }) => {
setTaskLists((prev) =>
prev.filter((tl) => !restored_ids.includes(tl.task_list_id))
);
toast.success(`${restored_ids.length} task list(s) restored.`);
toast(`${restored_ids.length} task list(s) restored.`, {
action: {
label: "Close",
onClick: () => {}
}
});
return res.data;
}),
[request]
@@ -290,7 +325,12 @@ export const StaffTaskProvider = ({ children }) => {
)
);
}
toast.success("Task created.");
toast("Task created.", {
action: {
label: "Close",
onClick: () => {}
}
});
return res.data;
}),
[request]
@@ -320,7 +360,12 @@ export const StaffTaskProvider = ({ children }) => {
);
if (task?.task_id === taskId) setTask((prev) => ({ ...prev, ...updated }));
}
toast.success("Task updated.");
toast("Task updated.", {
action: {
label: "Close",
onClick: () => {}
}
});
return res.data;
}),
[request, task]
@@ -339,7 +384,12 @@ export const StaffTaskProvider = ({ children }) => {
: tl
)
);
toast.success("Task archived.");
toast("Task archived.", {
action: {
label: "Close",
onClick: () => {}
}
});
return res.data;
}),
[request]
@@ -351,7 +401,12 @@ export const StaffTaskProvider = ({ children }) => {
request(async () => {
const res = await api.post(`${BASE}/task-lists/${taskListId}/tasks/${taskId}/restore`);
setTasks((prev) => prev.filter((t) => t.task_id !== taskId));
toast.success("Task restored.");
toast("Task restored.", {
action: {
label: "Close",
onClick: () => {}
}
});
return res.data;
}),
[request]
@@ -364,7 +419,12 @@ export const StaffTaskProvider = ({ children }) => {
const res = await api.post(`${BASE}/task-lists/${taskListId}/tasks/bulk-archive`, { ids });
const { archived_ids = [] } = res.data?.data ?? {};
setTasks((prev) => prev.filter((t) => !archived_ids.includes(t.task_id)));
toast.success(`${archived_ids.length} task(s) archived.`);
toast(`${archived_ids.length} task(s) archived.`, {
action: {
label: "Close",
onClick: () => {}
}
});
return res.data;
}),
[request]
@@ -377,7 +437,12 @@ export const StaffTaskProvider = ({ children }) => {
const res = await api.post(`${BASE}/task-lists/${taskListId}/tasks/bulk-restore`, { ids });
const { restored_ids = [] } = res.data?.data ?? {};
setTasks((prev) => prev.filter((t) => !restored_ids.includes(t.task_id)));
toast.success(`${restored_ids.length} task(s) restored.`);
toast(`${restored_ids.length} task(s) restored.`, {
action: {
label: "Close",
onClick: () => {}
}
});
return res.data;
}),
[request]