MCPcopy Create free account
hub / github.com/TanStack/devtools / A11yIssueCard

Function A11yIssueCard

packages/devtools-a11y/src/core/components/IssueCard.tsx:18–75  ·  view source on GitHub ↗
(props: A11yIssueCardProps)

Source from the content-addressed store, hash-verified

16}
17
18export function A11yIssueCard(props: A11yIssueCardProps) {
19 const selector = () => props.issue.nodes[0]?.selector || 'unknown'
20 const styles = createStyles()
21
22 return (
23 <div
24 class={styles().issueCard}
25 classList={{
26 [styles().issueCardSelected]: props.selected,
27 }}
28 onClick={props.onSelect}
29 >
30 <div class={styles().issueRow}>
31 <div class={styles().issueMain}>
32 <div class={styles().issueTitleRow}>
33 <span class={styles().dot(props.impact)} />
34
35 <span>{props.issue.ruleId}</span>
36 </div>
37 <p class={styles().issueMessage}>{props.issue.message}</p>
38
39 <div class={styles().selector}>{selector()}</div>
40 </div>
41
42 <div class={styles().issueAside}>
43 <a
44 class={styles().helpLink}
45 href={props.issue.helpUrl}
46 target="_blank"
47 rel="noopener noreferrer"
48 onClick={(event) => event.stopPropagation()}
49 >
50 Learn more
51 </a>
52
53 <Button
54 variant="secondary"
55 ghost
56 onClick={(event: MouseEvent) => {
57 event.stopPropagation()
58 props.onDisableRule(props.issue.ruleId)
59 }}
60 >
61 Disable rule
62 </Button>
63 </div>
64 </div>
65
66 <Show when={props.issue.wcagTags.length > 0}>
67 <div class={styles().tags}>
68 <For each={props.issue.wcagTags.slice(0, 3)}>
69 {(tag) => <span class={styles().tag}>{tag}</span>}
70 </For>
71 </div>
72 </Show>
73 </div>
74 )
75}

Callers

nothing calls this directly

Calls 2

createStylesFunction · 0.90
selectorFunction · 0.85

Tested by

no test coverage detected