File tree Expand file tree Collapse file tree 1 file changed +38
-0
lines changed
apps/frontend/src/components Expand file tree Collapse file tree 1 file changed +38
-0
lines changed Original file line number Diff line number Diff line change 1+ import { Checkbox , Table } from "@quassel/ui" ;
2+ import { components } from "../api.gen" ;
3+
4+ type QuestionnairesSelectProps = {
5+ value : number [ ] ;
6+ onChange : ( participantIds : number [ ] ) => void ;
7+ questionnaires : components [ "schemas" ] [ "QuestionnaireResponseDto" ] [ ] ;
8+ } ;
9+
10+ export function QuestionnairesSelect ( { questionnaires, value, onChange } : QuestionnairesSelectProps ) {
11+ return (
12+ < Table >
13+ < Table . Caption > Questionnaires</ Table . Caption >
14+ < Table . Thead >
15+ < Table . Tr >
16+ < Table . Th > </ Table . Th >
17+ < Table . Th > Id</ Table . Th >
18+ < Table . Th > Title</ Table . Th >
19+ </ Table . Tr >
20+ </ Table . Thead >
21+ < Table . Tbody >
22+ { questionnaires ?. map ( ( q ) => (
23+ < Table . Tr key = { q . id } >
24+ < Table . Td >
25+ < Checkbox
26+ aria-label = "Select row"
27+ checked = { value . includes ( q . id ) }
28+ onChange = { ( event ) => onChange ( event . currentTarget . checked ? [ ...value , q . id ] : value . filter ( ( id ) => id !== q . id ) ) }
29+ />
30+ </ Table . Td >
31+ < Table . Td > { q . id } </ Table . Td >
32+ < Table . Td > { q . title } </ Table . Td >
33+ </ Table . Tr >
34+ ) ) }
35+ </ Table . Tbody >
36+ </ Table >
37+ ) ;
38+ }
You can’t perform that action at this time.
0 commit comments