Fix RSS time filters and add draggable grid layout

Normalize pub_date to ISO 8601 on insert so SQLite datetime comparisons
work correctly. Migrate existing RFC 2822 dates. Change 1h filter to 12h.
Add react-grid-layout with persistent drag/resize and reset button.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Shivam Patel
2026-02-09 17:51:06 -05:00
parent 717d52bd9a
commit 4ee365cfc0
13 changed files with 324 additions and 47 deletions

View File

@@ -150,10 +150,10 @@ function FeedFilterPills({
);
}
type TimeFilter = '1h' | '24h' | '7d' | '30d';
type TimeFilter = '12h' | '24h' | '7d' | '30d';
const TIME_FILTER_OPTIONS: { value: TimeFilter; label: string }[] = [
{ value: '1h', label: '1h' },
{ value: '12h', label: '12h' },
{ value: '24h', label: '24h' },
{ value: '7d', label: '7d' },
{ value: '30d', label: '30d' },
@@ -479,9 +479,9 @@ export function NewsFeed() {
const hasFeeds = feeds.length > 0;
return (
<div className="col-span-1 md:col-span-4 lg:col-span-4 row-span-3 bg-neutral-900 border border-neutral-800 rounded-xl p-5 flex flex-col hover:border-neutral-700 transition-colors overflow-hidden">
<div className="h-full bg-neutral-900 border border-neutral-800 rounded-xl p-5 flex flex-col hover:border-neutral-700 transition-colors overflow-hidden">
{/* Header */}
<div className="flex items-center justify-between gap-3 shrink-0 mb-3">
<div className="widget-drag-handle flex items-center justify-between gap-3 shrink-0 mb-3">
<div className="flex items-center gap-2 text-neutral-400">
<Rss size={18} />
<span className="text-sm font-medium">Feed</span>