feat: saved views of my work, across my projects
A person saves named views of «my work»: projects, assigned to me, that I follow, status categories, priorities, bugs only, overdue and text. They are private (Mongo my_views, no history), listed and deleted by their owner (GraphQL myViews / saveMyView / deleteMyView, REST /api/me/views), and run as the cross-project search, which gains project, priority, bugsOnly and overdue filters (also in MCP my_issues). The home page shows them as a bar above «my work», with a drawer to save a new one. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import { IssuePriority } from '../issue/issue.enums';
|
||||
import { StatusCategory } from '../project/project-settings';
|
||||
import { UserRefReadModel } from './user-ref.read-model';
|
||||
|
||||
/** What a saved view of the board narrows the tickets to. Empty: everything. */
|
||||
@@ -27,3 +28,31 @@ export class SavedFilterReadModel {
|
||||
criteria!: SavedFilterCriteriaReadModel;
|
||||
createdAt!: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* What a view of «my work» narrows to, across the projects I belong to.
|
||||
* Empty: every ticket of them.
|
||||
*/
|
||||
export class MyViewCriteriaReadModel {
|
||||
/** Only these projects (empty: all of mine). */
|
||||
projectIds?: string[];
|
||||
assignedToMe?: boolean;
|
||||
/** Only the tickets I follow. */
|
||||
watching?: boolean;
|
||||
categories?: StatusCategory[];
|
||||
priorities?: IssuePriority[];
|
||||
/** Only tickets of a type drawn with the bug icon. */
|
||||
bugsOnly?: boolean;
|
||||
/** Only open tickets past their due date. */
|
||||
overdue?: boolean;
|
||||
search?: string;
|
||||
}
|
||||
|
||||
/** A named view of «my work», private to whoever saved it. */
|
||||
export class MyViewReadModel {
|
||||
id!: string;
|
||||
ownerId!: string;
|
||||
name!: string;
|
||||
criteria!: MyViewCriteriaReadModel;
|
||||
createdAt!: string;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user