chore(a11y): rename props, fix linting error

This commit is contained in:
Abbey Yacoe
2025-05-20 14:40:28 +02:00
parent 36f1d94ca7
commit 07265ed277
10 changed files with 27 additions and 26 deletions
@@ -2,7 +2,7 @@ import { CSSProperties } from 'react';
import { useStore } from '../../hooks/useStore';
import type { ReactFlowState } from '../../types';
import type { a11yMessages } from '@xyflow/system';
import type { descriptions } from '@xyflow/system';
const style: CSSProperties = { display: 'none' };
const ariaLiveStyle: CSSProperties = {
@@ -21,7 +21,7 @@ export const ARIA_NODE_DESC_KEY = 'react-flow__node-desc';
export const ARIA_EDGE_DESC_KEY = 'react-flow__edge-desc';
export const ARIA_LIVE_MESSAGE = 'react-flow__aria-live';
const defaultA11yMessages: Required<a11yMessages> = {
const defaultDescriptions: Required<descriptions> = {
'a11yDescription.node.default':
'Press enter or space to select a node. Press delete to remove it and escape to cancel.',
'a11yDescription.node.keyboardDisabled':
@@ -45,17 +45,17 @@ function AriaLiveMessage({ rfId }: { rfId: string }) {
export function A11yDescriptions({
rfId,
disableKeyboardA11y,
a11yMessages = {},
descriptions = {},
}: {
rfId: string;
disableKeyboardA11y: boolean;
a11yMessages?: a11yMessages;
descriptions?: descriptions;
}) {
const nodeDesc = disableKeyboardA11y
? a11yMessages['a11yDescription.node.default'] || defaultA11yMessages['a11yDescription.node.default']
: a11yMessages['a11yDescription.node.keyboardDisabled'] ||
defaultA11yMessages['a11yDescription.node.keyboardDisabled'];
const edgeDesc = a11yMessages['a11yDescription.edge.default'] || defaultA11yMessages['a11yDescription.edge.default'];
? descriptions['a11yDescription.node.default'] || defaultDescriptions['a11yDescription.node.default']
: descriptions['a11yDescription.node.keyboardDisabled'] ||
defaultDescriptions['a11yDescription.node.keyboardDisabled'];
const edgeDesc = descriptions['a11yDescription.edge.default'] || defaultDescriptions['a11yDescription.edge.default'];
return (
<>
@@ -145,7 +145,7 @@ function ReactFlow<NodeType extends Node = Node, EdgeType extends Edge = Edge>(
colorMode = 'light',
debug,
onScroll,
a11yMessages,
descriptions,
...rest
}: ReactFlowProps<NodeType, EdgeType>,
ref: ForwardedRef<HTMLDivElement>
@@ -310,7 +310,7 @@ function ReactFlow<NodeType extends Node = Node, EdgeType extends Edge = Edge>(
<SelectionListener<NodeType, EdgeType> onSelectionChange={onSelectionChange} />
{children}
<Attribution proOptions={proOptions} position={attributionPosition} />
<A11yDescriptions rfId={rfId} disableKeyboardA11y={disableKeyboardA11y} a11yMessages={a11yMessages} />
<A11yDescriptions rfId={rfId} disableKeyboardA11y={disableKeyboardA11y} descriptions={descriptions} />
</Wrapper>
</div>
);
+2 -2
View File
@@ -21,7 +21,7 @@ import type {
ColorMode,
SnapGrid,
OnReconnect,
a11yMessages,
descriptions,
} from '@xyflow/system';
import type {
@@ -671,5 +671,5 @@ export interface ReactFlowProps<NodeType extends Node = Node, EdgeType extends E
* Custom accessibility messages for screen readers and a11y features.
* Allows localization and customization of ARIA descriptions.
*/
a11yMessages?: a11yMessages;
descriptions?: descriptions;
}