forked from github/plane
d511799f31
* feat: created custom mention component * feat: added mention suggestions and suggestion highlights * feat: created mention suggestion list for displaying mention suggestions * feat: created custom mention text component, for handling click event * feat: exposed mention component * feat: integrated and exposed `mentions` componenet with `editor-core` * feat: integrated mentions extension with the core editor package * feat: exposed suggestion types from mentions * feat: added `mention-suggestion` parameters in `r-t-e` and `l-t-e` * feat: added `IssueMention` model in apiserver models * chore: updated activities background job and added bs4 in requirements * feat: added mention removal logic in issue_activity * chore: exposed mention types from `r-t-e` and `l-t-e` * feat: integrated mentions in side peek view description form * feat: added mentions in issue modal form * feat: created custom react-hook for editor suggestions * feat: integrated mention suggestions block in RichTextEditor * feat: added `mentions` integration in `lite-text-editor` instances * fix: tailwind loading nodemodules from packages * feat: added styles for the mention suggestion list * fix: update module import to resolve build failure * feat: added mentions as an issue filter * feat: added UI Changes to Implement `mention` filters * feat: added `mentions` as a filter option in the header * feat: added mentions in the filter list options * feat: added mentions in default display filter options * feat: added filters in applied and issue params in store * feat: modified types for adding mentions as a filter option * feat: modified `notification-card` to display message when it exists in object * feat: rewrote user mention management upon the changes made in develop * chore: merged debounce PR with the current PR for tracing changes * fix: mentions_filters updated with the new setup * feat: updated requirements for bs4 * feat: modified `mentions-filter` to remove many to many dependency * feat: implemented list manipulation instead of for loop * feat: added readonly functionality in `read-only` editor core * feat: added UI Changes for read-only mode * feat: added mentions store in web Root Store * chore: renamed `use-editor-suggestions` hook * feat: UI Improvements for conditional highlights w.r.t readonly in mentionNode * fix: removed mentions from `filter_set` parameters * fix: minor merge fixes * fix: package lock updates --------- Co-authored-by: sriram veeraghanta <veeraghanta.sriram@gmail.com>
155 lines
3.7 KiB
TypeScript
155 lines
3.7 KiB
TypeScript
export type TIssueLayouts = "list" | "kanban" | "calendar" | "spreadsheet" | "gantt_chart";
|
|
|
|
export type TIssueGroupByOptions =
|
|
| "state"
|
|
| "priority"
|
|
| "labels"
|
|
| "created_by"
|
|
| "state_detail.group"
|
|
| "project"
|
|
| "assignees"
|
|
| "mentions"
|
|
| null;
|
|
|
|
export type TIssueOrderByOptions =
|
|
| "-created_at"
|
|
| "created_at"
|
|
| "updated_at"
|
|
| "-updated_at"
|
|
| "priority"
|
|
| "-priority"
|
|
| "sort_order"
|
|
| "state__name"
|
|
| "-state__name"
|
|
| "assignees__first_name"
|
|
| "-assignees__first_name"
|
|
| "labels__name"
|
|
| "-labels__name"
|
|
| "target_date"
|
|
| "-target_date"
|
|
| "estimate_point"
|
|
| "-estimate_point"
|
|
| "start_date"
|
|
| "-start_date";
|
|
|
|
export type TIssueTypeFilters = "active" | "backlog" | null;
|
|
|
|
export type TIssueExtraOptions = "show_empty_groups" | "sub_issue";
|
|
|
|
export type TIssueParams =
|
|
| "priority"
|
|
| "state_group"
|
|
| "state"
|
|
| "assignees"
|
|
| "mentions"
|
|
| "created_by"
|
|
| "subscriber"
|
|
| "labels"
|
|
| "start_date"
|
|
| "target_date"
|
|
| "project"
|
|
| "group_by"
|
|
| "sub_group_by"
|
|
| "order_by"
|
|
| "type"
|
|
| "sub_issue"
|
|
| "show_empty_groups"
|
|
| "start_target_date";
|
|
|
|
export type TCalendarLayouts = "month" | "week";
|
|
|
|
export interface IIssueFilterOptions {
|
|
assignees?: string[] | null;
|
|
mentions?: string[] | null;
|
|
created_by?: string[] | null;
|
|
labels?: string[] | null;
|
|
priority?: string[] | null;
|
|
project?: string[] | null;
|
|
start_date?: string[] | null;
|
|
state?: string[] | null;
|
|
state_group?: string[] | null;
|
|
subscriber?: string[] | null;
|
|
target_date?: string[] | null;
|
|
}
|
|
|
|
export interface IIssueDisplayFilterOptions {
|
|
calendar?: {
|
|
show_weekends?: boolean;
|
|
layout?: TCalendarLayouts;
|
|
};
|
|
group_by?: TIssueGroupByOptions;
|
|
sub_group_by?: TIssueGroupByOptions;
|
|
layout?: TIssueLayouts;
|
|
order_by?: TIssueOrderByOptions;
|
|
show_empty_groups?: boolean;
|
|
start_target_date?: boolean;
|
|
sub_issue?: boolean;
|
|
type?: TIssueTypeFilters;
|
|
}
|
|
export interface IIssueDisplayProperties {
|
|
assignee?: boolean;
|
|
start_date?: boolean;
|
|
due_date?: boolean;
|
|
labels?: boolean;
|
|
key?: boolean;
|
|
priority?: boolean;
|
|
state?: boolean;
|
|
sub_issue_count?: boolean;
|
|
link?: boolean;
|
|
attachment_count?: boolean;
|
|
estimate?: boolean;
|
|
created_on?: boolean;
|
|
updated_on?: boolean;
|
|
}
|
|
|
|
export interface IWorkspaceIssueFilterOptions {
|
|
assignees?: string[] | null;
|
|
created_by?: string[] | null;
|
|
labels?: string[] | null;
|
|
priority?: string[] | null;
|
|
state_group?: string[] | null;
|
|
subscriber?: string[] | null;
|
|
start_date?: string[] | null;
|
|
target_date?: string[] | null;
|
|
project?: string[] | null;
|
|
}
|
|
|
|
export interface IWorkspaceGlobalViewDisplayFilterOptions {
|
|
order_by?: string | undefined;
|
|
type?: "active" | "backlog" | null;
|
|
sub_issue?: boolean;
|
|
layout?: TIssueViewOptions;
|
|
}
|
|
|
|
export interface IWorkspaceViewIssuesParams {
|
|
assignees?: string | undefined;
|
|
created_by?: string | undefined;
|
|
labels?: string | undefined;
|
|
priority?: string | undefined;
|
|
start_date?: string | undefined;
|
|
state?: string | undefined;
|
|
state_group?: string | undefined;
|
|
subscriber?: string | undefined;
|
|
target_date?: string | undefined;
|
|
project?: string | undefined;
|
|
order_by?: string | undefined;
|
|
type?: "active" | "backlog" | undefined;
|
|
sub_issue?: boolean;
|
|
}
|
|
|
|
export interface IProjectViewProps {
|
|
display_filters: IIssueDisplayFilterOptions | undefined;
|
|
filters: IIssueFilterOptions;
|
|
}
|
|
|
|
export interface IWorkspaceViewProps {
|
|
filters: IIssueFilterOptions;
|
|
display_filters: IIssueDisplayFilterOptions | undefined;
|
|
display_properties: IIssueDisplayProperties;
|
|
}
|
|
export interface IWorkspaceGlobalViewProps {
|
|
filters: IWorkspaceIssueFilterOptions;
|
|
display_filters: IWorkspaceIssueDisplayFilterOptions | undefined;
|
|
display_properties: IIssueDisplayProperties;
|
|
}
|