feat: unhide action, date-range filter, more sort options
- Hidden view shows an Unhide action (eye icon) instead of Hide - Upload-date filter: From/To date range (inclusive); feed shows only videos published in that window (backend published_after / published_before) - New sort options: Name (A-Z) and Channel subscribers, alongside date/views/ duration/shuffle - Native controls follow the theme via color-scheme (dark date picker)
This commit is contained in:
parent
ecbecbb9f4
commit
f73cbdb490
5 changed files with 79 additions and 6 deletions
|
|
@ -54,6 +54,8 @@ export interface FeedFilters {
|
|||
maxAgeDays?: number;
|
||||
minDuration?: number;
|
||||
maxDuration?: number;
|
||||
dateFrom?: string;
|
||||
dateTo?: string;
|
||||
}
|
||||
|
||||
class HttpError extends Error {
|
||||
|
|
@ -86,6 +88,8 @@ function feedQuery(f: FeedFilters, offset: number, limit: number): string {
|
|||
p.set("show", f.show);
|
||||
if (f.channelId) p.set("channel_id", f.channelId);
|
||||
if (f.maxAgeDays) p.set("max_age_days", String(f.maxAgeDays));
|
||||
if (f.dateFrom) p.set("published_after", f.dateFrom);
|
||||
if (f.dateTo) p.set("published_before", f.dateTo);
|
||||
if (f.minDuration != null) p.set("min_duration", String(f.minDuration));
|
||||
if (f.maxDuration != null) p.set("max_duration", String(f.maxDuration));
|
||||
p.set("offset", String(offset));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue