seti-ramesesv1
Version:
Reusable components and context for Next.js apps
31 lines (28 loc) • 1.11 kB
JavaScript
import { userTask } from '../constant/userTask.js';
import { userUnassignedTask } from '../constant/userUnassignTask.js';
const getUserTasks = async (params) => {
const { start = 0, limit, tag, searchtext = "", searchfields = [], filters = {} } = params;
let list = [];
if (tag == "mytask") {
list = userTask;
}
else if (tag == "unassigned") {
list = userUnassignedTask;
}
if (searchtext.trim() !== "" && Array.isArray(searchfields) && searchfields.length > 0) {
const text = searchtext.toLowerCase();
list = list.filter((item) => searchfields.some((field) => item[field]?.toString().toLowerCase().includes(text)));
}
if (filters && typeof filters === "object") {
list = list.filter((item) => {
return Object.entries(filters).every(([field, value]) => {
if (value === "")
return true;
return item[field]?.toString() === value;
});
});
}
return list.slice(start, start + limit + 1);
};
export { getUserTasks };
//# sourceMappingURL=task.js.map