Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Replace the timetable filter pills with one Filters button and popover

Đang mở
#288 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

@liualt đang làm issue này rồi.

Từ ngày 29/10/2026.

  • #333 của @liualt — đang mở

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
42/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
react, typescript
Lĩnh vực
design, frontend

Hướng nghiên cứu

Start with ViewTimeTable.tsx, FacultySelector.tsx, and the Figma frame “Timetable filters” (node 2560:1371); check the open work on #266, #283, and #262 before editing. Build the Filters button, popover, active filter tags, and clear/remove interactions while keeping faculty and same-building behavior. Done when the design and listed interactions work; coordinate the remaining timetable logic with #289.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Scroll down for design

Is your feature request related to a problem? Please describe.

Next to "Your Timetables" there are Morning, Evening and Mixed pills, a Same Building checkbox and a Filter by Faculty box. They take a lot of room and each one is a separate control.

Describe the solution you'd like

One Filters button replaces all of them. Pressing it opens a popover.

  • A count badge on the button shows how many filters are on.
  • Popover options:
    • Theory time (Morning, Evening, Mixed)
    • Class time: a range bar with two handles that snap to class start and end times, with the times shown under the handles
    • Fewest lab days
    • Same building
    • A faculty field
    • Clear all
  • Active filters show as small removable tags beside "Your Timetables", and the × removes one.
  • Same building and the faculty field keep working as they do today, just moved into the popover. How the other options pick and order timetables is in the logic issue (#289).
Additional context

Related: #187 (filter by multiple faculties), #188 (filter by slots) and #263 (same-building filtering), all closed.

ViewTimeTable.tsx is changing in other work, so expect merge conflicts:

  • #266 (open): splits FacultySelector.tsx and ViewTimeTable.tsx into smaller modules.
  • #283 (open PR): changes timetable state in ViewTimeTable.tsx.
  • #262 (open): changes the saved-timetable local storage syncing in the same file.
  • #267 (merged): groups timetables with the same slot layout. The tags and counts must still refer to the real timetable selection.
Design
Image Image
Example

One way to build it (just an idea):

  • ZButton for the Filters button
  • A popover built like the other popups
  • The existing faculty ComboBox for the faculty field
<ZButton type="regular" text={`Filters${count ? ` (${count})` : ''}`} onClick={togglePopover} />
{open && <FiltersPopover value={filters} onChange={setFilters} onClear={clearAll} />}
Ngôn ngữ chính
TypeScript
Star
6
Fork
37
Merge trung bình
11 giờ 13 phút
Pull request đã merge (30 ngày)
55

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của CodeChefVIT/ffcs

Tất cả issue của CodeChefVIT/ffcs

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.