mirror of
https://github.com/TriliumNext/Notes.git
synced 2025-07-29 11:02:28 +08:00
feat(tasks): filter by parent note
This commit is contained in:
parent
bb822126cd
commit
c0d3e8d834
@ -217,9 +217,7 @@ export default class Becca {
|
||||
}
|
||||
|
||||
getTasks(): BTask[] {
|
||||
return Object
|
||||
.values(this.tasks)
|
||||
.filter((task) => !task.isDone);
|
||||
return Object.values(this.tasks);
|
||||
}
|
||||
|
||||
getTask(taskId: string): BTask | null {
|
||||
|
@ -372,8 +372,8 @@ class FrocaImpl implements Froca {
|
||||
});
|
||||
}
|
||||
|
||||
async getTasks() {
|
||||
const taskRows = await server.get<FTaskRow[]>(`tasks`);
|
||||
async getTasks(parentNoteId: string) {
|
||||
const taskRows = await server.get<FTaskRow[]>(`tasks/${parentNoteId}`);
|
||||
return this.processTaskRow(taskRows);
|
||||
}
|
||||
|
||||
|
@ -108,13 +108,13 @@ export default class TaskListWidget extends TypeWidget {
|
||||
async doRefresh(note: FNote) {
|
||||
this.$widget.show();
|
||||
|
||||
if (!this.note) {
|
||||
if (!this.note || !this.noteId) {
|
||||
return;
|
||||
}
|
||||
|
||||
this.$taskContainer.html("");
|
||||
|
||||
const tasks = await froca.getTasks();
|
||||
const tasks = await froca.getTasks(this.noteId);
|
||||
for (const task of tasks) {
|
||||
this.$taskContainer.append($(buildTask(task)));
|
||||
}
|
||||
|
@ -1,8 +1,9 @@
|
||||
import type { Request } from "express";
|
||||
import * as tasksService from "../../services/tasks.js";
|
||||
|
||||
export function getTasks() {
|
||||
return tasksService.getTasks();
|
||||
export function getTasks(req: Request) {
|
||||
const { parentNoteId } = req.params;
|
||||
return tasksService.getTasks(parentNoteId);
|
||||
}
|
||||
|
||||
export function createNewTask(req: Request) {
|
||||
|
@ -280,7 +280,7 @@ function register(app: express.Application) {
|
||||
apiRoute(PATCH, "/api/etapi-tokens/:etapiTokenId", etapiTokensApiRoutes.patchToken);
|
||||
apiRoute(DEL, "/api/etapi-tokens/:etapiTokenId", etapiTokensApiRoutes.deleteToken);
|
||||
|
||||
apiRoute(GET, "/api/tasks", tasksRoute.getTasks);
|
||||
apiRoute(GET, "/api/tasks/:parentNoteId", tasksRoute.getTasks);
|
||||
apiRoute(PST, "/api/tasks", tasksRoute.createNewTask);
|
||||
apiRoute(PST, "/api/tasks/:taskId/toggle", tasksRoute.toggleTaskDone);
|
||||
|
||||
|
@ -1,8 +1,9 @@
|
||||
import becca from "../becca/becca.js";
|
||||
import BTask from "../becca/entities/btask.js";
|
||||
|
||||
export function getTasks() {
|
||||
return becca.getTasks();
|
||||
export function getTasks(parentNoteId: string) {
|
||||
return becca.getTasks()
|
||||
.filter((task) => task.parentNoteId === parentNoteId && !task.isDone);
|
||||
}
|
||||
|
||||
interface CreateTaskParams {
|
||||
|
Loading…
x
Reference in New Issue
Block a user