[parsing] Add visibility:local search query filter (ISH-707)
This commit is contained in:
parent
822d5f90d3
commit
220c4b776d
2 changed files with 6 additions and 1 deletions
|
@ -168,6 +168,9 @@ public static class QueryableFtsExtensions
|
||||||
|
|
||||||
private static IQueryable<Note> ApplyVisibilityFilter(this IQueryable<Note> query, VisibilityFilter filter)
|
private static IQueryable<Note> ApplyVisibilityFilter(this IQueryable<Note> query, VisibilityFilter filter)
|
||||||
{
|
{
|
||||||
|
if (filter.Value is VisibilityFilterType.Local)
|
||||||
|
return query.Where(p => p.LocalOnly == !filter.Negated);
|
||||||
|
|
||||||
var visibility = filter.Value switch
|
var visibility = filter.Value switch
|
||||||
{
|
{
|
||||||
VisibilityFilterType.Public => Note.NoteVisibility.Public,
|
VisibilityFilterType.Public => Note.NoteVisibility.Public,
|
||||||
|
|
|
@ -136,7 +136,8 @@ public enum VisibilityFilterType
|
||||||
Public,
|
Public,
|
||||||
Home,
|
Home,
|
||||||
Followers,
|
Followers,
|
||||||
Specified
|
Specified,
|
||||||
|
Local
|
||||||
}
|
}
|
||||||
|
|
||||||
public record VisibilityFilter(bool Negated, VisibilityFilterType Value) : ISearchQueryFilter
|
public record VisibilityFilter(bool Negated, VisibilityFilterType Value) : ISearchQueryFilter
|
||||||
|
@ -154,6 +155,7 @@ public record VisibilityFilter(bool Negated, VisibilityFilterType Value) : ISear
|
||||||
"specified" => VisibilityFilterType.Specified,
|
"specified" => VisibilityFilterType.Specified,
|
||||||
"direct" => VisibilityFilterType.Specified,
|
"direct" => VisibilityFilterType.Specified,
|
||||||
"private" => VisibilityFilterType.Specified,
|
"private" => VisibilityFilterType.Specified,
|
||||||
|
"local" => VisibilityFilterType.Local,
|
||||||
_ => null
|
_ => null
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue