feat: saved board views and richer board filters
The board now filters by text, type, priority and unassigned tickets as well. Any combination can be saved as a named view, private or shared with the project, and opened again with one click. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -20,3 +20,4 @@ export * from './tracker-streams.repository';
|
||||
export * from './attachment-storage';
|
||||
export * from './notifications.repository';
|
||||
export * from './notification-mailer';
|
||||
export * from './saved-filters.repository';
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
import { SavedFilterReadModel } from '@task-stream/api/tracker/domain';
|
||||
|
||||
/** Saved board views: per person (or shared with a project), no history. */
|
||||
export abstract class SavedFiltersRepository {
|
||||
/** Whoever's own views of the project, then the shared ones, by name. */
|
||||
abstract findVisible(
|
||||
projectId: string,
|
||||
userId: string,
|
||||
): Promise<SavedFilterReadModel[]>;
|
||||
abstract findById(id: string): Promise<SavedFilterReadModel | null>;
|
||||
abstract countOwned(projectId: string, userId: string): Promise<number>;
|
||||
abstract insert(filter: SavedFilterReadModel): Promise<void>;
|
||||
abstract delete(id: string): Promise<void>;
|
||||
}
|
||||
Reference in New Issue
Block a user