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

DataView: expose classNames for filter-chip internals and loader rows

Đã đóng
#846 1 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

Chưa có ai nhận issue này.

Đánh giá

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

Hướng nghiên cứu

Bắt đầu từ DataView.List và phần triển khai FilterChip, sau đó lần theo cách Filters.classNames.filterChips và DataViewListClassNames được áp dụng cho các phần tử đã render. Thêm hooks cho các phần bên trong filter-chip được liệt kê và cho container loading hoặc các hàng, đồng thời giữ nguyên các pattern classNames hiện có; hoàn tất khi cả hai khu vực đều có thể được áp dụng theme mà không cần các selector CSS-module đã băm.

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

Mô tả

Summary

DataView.List renders its rows, cells, and group headers internally, and exposes classNames hooks for them (root, header, headerCell, row, cell, groupHeader, plus per-column cell/header and Filters.classNames.filterChips/addFilter). Two rendered parts still have no hook, so theming them means targeting hashed CSS-module classes ([class*="data-view-module_…"]), which are internal and can change between releases.

What has no hook

  1. Filter-chip internals. Filters.classNames.filterChips lands on the chip root only. The inner parts can't be reached: chip-label, operationText, operationValue, selectValue, removeIcon, removeIconContainer, leadingIcon.

  2. Loader / skeleton rows. When isLoading renders placeholder rows, there's no hook on the loader container or its rows — DataViewListClassNames covers real rows, not the loading state.

Proposed change

  1. Add a classNames object to FilterChip (surfaced through Filters) covering its inner parts.
  2. Add a loader (and/or loader-row) key to DataViewListClassNames.

Both follow the pattern the existing hooks already use: read an optional string from props, apply it to the element DataView already renders.

Willing to contribute

Happy to open a PR if the approach looks right.

Ngôn ngữ chính
TypeScript
Star
70
Fork
13
Merge trung bình
8 ngày 56 phút
Pull request đã merge (30 ngày)
16

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 raystack/apsara

Tất cả issue của raystack/apsara

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.