DataView: expose classNames for filter-chip internals and loader rows
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 65/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- react, typescript
- Área
- frontend
Línea de trabajo
Comienza por DataView.List y la implementación de FilterChip; después, sigue cómo se aplican Filters.classNames.filterChips y DataViewListClassNames a los elementos renderizados. Añade hooks para los elementos internos de filter-chip indicados y para el contenedor de carga o las filas, conservando los patrones existentes de classNames; se considera terminado cuando ambas áreas puedan tematizarse sin selectores hash de módulos CSS.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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
-
Filter-chip internals.
Filters.classNames.filterChipslands on the chip root only. The inner parts can't be reached:chip-label,operationText,operationValue,selectValue,removeIcon,removeIconContainer,leadingIcon. -
Loader / skeleton rows. When
isLoadingrenders placeholder rows, there's no hook on the loader container or its rows —DataViewListClassNamescovers real rows, not the loading state.
Proposed change
- Add a
classNamesobject toFilterChip(surfaced throughFilters) covering its inner parts. - Add a
loader(and/or loader-row) key toDataViewListClassNames.
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.
- Lenguaje dominante
- TypeScript
- Estrellas
- 70
- Forks
- 13
- Merge medio
- 4 d 6 h
- PR fusionados (30 d)
- 10
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de raystack/apsara
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Dificultad 3/5 1-2 días Aptitud para principiantes 75/100
-
Docs: hand-duplicated props tables drift risk, missing a11y sections, no per-component changelog Abiertoenhancement global
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
-
bug global
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
Todos los issues de raystack/apsara
Issues similares
-
bug(cli): hapi doctor inline-media prints a fabricated B:\ helper-script path in packaged installs Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
Crush Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
catppuccin/catppuccin#3125 ·
-
Add a SECURITY.md Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
ElementsProject/cln-application#167 · 1 comentario · 1 reacción ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Quantco/pnpm-licenses#17 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100