From d1d3d19f4fc748db52b5f416ca53d58122899dc3 Mon Sep 17 00:00:00 2001 From: Cheryl Kong Date: Wed, 24 Jun 2026 10:25:00 +0100 Subject: [PATCH 1/6] feat: add ARIA labels and semantic HTML for accessibility Signed-off-by: Cheryl Kong --- .../src/diagram-editor/DiagramEditor.tsx | 1 + .../diagram-editor/error-pages/ErrorPage.tsx | 2 +- .../src/react-flow/diagram/Diagram.tsx | 7 ++++++- .../src/react-flow/nodes/Nodes.tsx | 7 ++++++- .../src/side-panel/SidePanel.tsx | 21 ++++++++++++------- 5 files changed, 28 insertions(+), 10 deletions(-) diff --git a/packages/serverless-workflow-diagram-editor/src/diagram-editor/DiagramEditor.tsx b/packages/serverless-workflow-diagram-editor/src/diagram-editor/DiagramEditor.tsx index 81a9444c..4521b121 100644 --- a/packages/serverless-workflow-diagram-editor/src/diagram-editor/DiagramEditor.tsx +++ b/packages/serverless-workflow-diagram-editor/src/diagram-editor/DiagramEditor.tsx @@ -95,6 +95,7 @@ export const DiagramEditor = (props: DiagramEditorProps) => { return (
diff --git a/packages/serverless-workflow-diagram-editor/src/diagram-editor/error-pages/ErrorPage.tsx b/packages/serverless-workflow-diagram-editor/src/diagram-editor/error-pages/ErrorPage.tsx index f00b6159..eaf81348 100644 --- a/packages/serverless-workflow-diagram-editor/src/diagram-editor/error-pages/ErrorPage.tsx +++ b/packages/serverless-workflow-diagram-editor/src/diagram-editor/error-pages/ErrorPage.tsx @@ -23,7 +23,7 @@ type ErrorPageProps = { export const ErrorPage = ({ title, message, snippet }: ErrorPageProps) => { return ( -
+

diff --git a/packages/serverless-workflow-diagram-editor/src/react-flow/diagram/Diagram.tsx b/packages/serverless-workflow-diagram-editor/src/react-flow/diagram/Diagram.tsx index 34dd9caf..c7a638e3 100644 --- a/packages/serverless-workflow-diagram-editor/src/react-flow/diagram/Diagram.tsx +++ b/packages/serverless-workflow-diagram-editor/src/react-flow/diagram/Diagram.tsx @@ -175,7 +175,12 @@ export const Diagram = ({ divRef, ref, colorMode = "light" }: DiagramProps) => { position={"bottom-right"} showInteractive={false} > - setMinimapVisible(!minimapVisible)}>M + setMinimapVisible(!minimapVisible)} + aria-label={minimapVisible ? "Hide minimap" : "Show minimap"} + > + M + diff --git a/packages/serverless-workflow-diagram-editor/src/react-flow/nodes/Nodes.tsx b/packages/serverless-workflow-diagram-editor/src/react-flow/nodes/Nodes.tsx index 9a9efe60..5870d9ff 100644 --- a/packages/serverless-workflow-diagram-editor/src/react-flow/nodes/Nodes.tsx +++ b/packages/serverless-workflow-diagram-editor/src/react-flow/nodes/Nodes.tsx @@ -95,7 +95,12 @@ function TaskNodeBadge({ badge, testId }: BadgeProps) { if (isUnknown) { /* TODO: instead of using the browser default to display tool tip like below, replace with tooltip component when we add it */ return ( - + {badge} ); diff --git a/packages/serverless-workflow-diagram-editor/src/side-panel/SidePanel.tsx b/packages/serverless-workflow-diagram-editor/src/side-panel/SidePanel.tsx index b8b6ae4b..00ce09fb 100644 --- a/packages/serverless-workflow-diagram-editor/src/side-panel/SidePanel.tsx +++ b/packages/serverless-workflow-diagram-editor/src/side-panel/SidePanel.tsx @@ -61,11 +61,16 @@ export function SidePanel() { }, [selectedNodeId, setOpen]); return ( - - + +
- + {selectedNode ? ( ) : ( <>
- +
{model !== null ? : null} )}
- - {model !== null && selectedNodeId === null && } - + {model !== null && selectedNodeId === null ? ( + + + + ) : null}
); } From 42ad8aa22a56c2f7644c261e728c8f40f050adc7 Mon Sep 17 00:00:00 2001 From: Cheryl Kong Date: Wed, 24 Jun 2026 16:14:45 +0100 Subject: [PATCH 2/6] add changeset Signed-off-by: Cheryl Kong --- .changeset/improve-accessibility.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/improve-accessibility.md diff --git a/.changeset/improve-accessibility.md b/.changeset/improve-accessibility.md new file mode 100644 index 00000000..beb82b66 --- /dev/null +++ b/.changeset/improve-accessibility.md @@ -0,0 +1,5 @@ +--- +"@serverlessworkflow/diagram-editor": minor +--- + +Audit and improve accessibility From 74843ffedd805ac1678a23574208f95c6952b1b4 Mon Sep 17 00:00:00 2001 From: Cheryl Kong Date: Wed, 24 Jun 2026 16:39:28 +0100 Subject: [PATCH 3/6] fix copilot complaints Signed-off-by: Cheryl Kong --- .../src/diagram-editor/error-pages/ErrorPage.tsx | 5 ++++- .../src/side-panel/SidePanel.tsx | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/serverless-workflow-diagram-editor/src/diagram-editor/error-pages/ErrorPage.tsx b/packages/serverless-workflow-diagram-editor/src/diagram-editor/error-pages/ErrorPage.tsx index eaf81348..2b1c1ccc 100644 --- a/packages/serverless-workflow-diagram-editor/src/diagram-editor/error-pages/ErrorPage.tsx +++ b/packages/serverless-workflow-diagram-editor/src/diagram-editor/error-pages/ErrorPage.tsx @@ -25,7 +25,10 @@ export const ErrorPage = ({ title, message, snippet }: ErrorPageProps) => { return (
- +
- + {selectedNode ? ( ) : ( @@ -103,7 +103,7 @@ export function SidePanel() { )} {model !== null && selectedNodeId === null ? ( - + ) : null} From 2641c0f22520b8a7290ecda836bd1230797d4b29 Mon Sep 17 00:00:00 2001 From: Cheryl Kong Date: Fri, 26 Jun 2026 10:37:32 +0100 Subject: [PATCH 5/6] test: replace render with renderWithProviders in node tests Signed-off-by: Cheryl Kong --- .../tests/react-flow/nodes/Nodes.test.tsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/serverless-workflow-diagram-editor/tests/react-flow/nodes/Nodes.test.tsx b/packages/serverless-workflow-diagram-editor/tests/react-flow/nodes/Nodes.test.tsx index 7298ec3e..1455adb1 100644 --- a/packages/serverless-workflow-diagram-editor/tests/react-flow/nodes/Nodes.test.tsx +++ b/packages/serverless-workflow-diagram-editor/tests/react-flow/nodes/Nodes.test.tsx @@ -234,7 +234,7 @@ describe("React Flow custom node types", () => { listen: { to: { any: [] } }, }), ]; - render( + renderWithProviders(
, @@ -255,7 +255,7 @@ describe("React Flow custom node types", () => { call: "customCall", }), ]; - render( + renderWithProviders(
{ fork: { branches: [], compete: true }, }), ]; - render( + renderWithProviders(
Date: Fri, 26 Jun 2026 10:56:20 +0100 Subject: [PATCH 6/6] trigger checks Signed-off-by: Cheryl Kong --- pnpm-lock.yaml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8d884288..5e458c15 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -93,6 +93,9 @@ catalogs: jsdom: specifier: ^29.1.0 version: 29.1.1 + lint-staged: + specifier: ^17.0.8 + version: 17.0.8 lucide-react: specifier: ^1.21.0 version: 1.21.0 @@ -153,7 +156,7 @@ importers: specifier: 'catalog:' version: 9.1.7 lint-staged: - specifier: 17.0.8 + specifier: 'catalog:' version: 17.0.8 oxfmt: specifier: 'catalog:'