Skip to content

fix(apollo-react): announce Toolbox row details and submenus [MST-14409] [MST-14937] - #1459

Merged
KodudulaAshishUiPath merged 1 commit into
mainfrom
fix/MST-14409-MST-14937-add-node-list-a11y
Oct 26, 2026
Merged

KodudulaAshishUiPath merged 1 commit into
mainfrom
fix/MST-14409-MST-14937-add-node-list-a11y

Conversation

@KodudulaAshishUiPath

@KodudulaAshishUiPath KodudulaAshishUiPath commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Description

Fixes two Deque findings on the Flow "Add node" panel (Toolbox).

MST-14409: tooltip content not available to screen readers. Rows get virtual focus through
aria-activedescendant and the tooltip opens only on hover, so detail (tooltip-only text)
never reached assistive tech or keyboard users.

  • Each row points aria-describedby at a hidden span holding its detail. Nothing changes visually.
  • While the keyboard drives the panel, the active row shows its tooltip and other rows' hover
    tooltips stay closed. Toolbox sets keyboardNav on any key in the search box and clears it on
    pointer movement over the panel, so mouse use (including a Back click) behaves as before.

MST-14937: submenu availability not announced. Rows with children showed only a visual chevron.

  • Those rows add "Has submenu" (toolbox.item.submenu) to the same description.
  • Drilling into a category announces its name and item count through a polite live region
    (toolbox.category.announcement, e.g. "Agent, 12 items"). It stays empty while searching or
    while the panel or category is loading.
  • This keeps the combobox + listbox pattern instead of the ARIA menu or nav pattern Deque offered:
    a menu cannot contain the search input, and drill-in replaces the list rather than opening a
    submenu beside its parent, so aria-expanded could never be true on a visible row.

Testing

  • ListView: the row description combines detail and the submenu hint.
  • Toolbox: ArrowDown opens the active row's tooltip and pointer movement closes it; the ArrowRight
    drill-in test checks the announcement; the childrenLoading drill-in test checks it stays empty.
  • Toolbox and AddNodePanel suites pass (192 tests). tsc clean.

Copilot AI balanced review requested due to automatic review settings October 23, 2026 06:37
@github-actions github-actions Bot added size:M 30-99 changed lines. pkg:apollo-react labels Oct 23, 2026
@github-actions
github-actions Bot temporarily deployed to preview/apollo-landing October 23, 2026 06:38 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-design October 23, 2026 06:38 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-vertex October 23, 2026 06:38 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-docs October 23, 2026 06:38 Destroyed
@github-actions

Copy link
Copy Markdown
Contributor

Dependency License Review

  • ✅ 1957 package(s) scanned
  • ✅ No license issues found
  • ⚠️ 2 package(s) excluded (see details below)
License distribution
License Packages
MIT 1721
ISC 91
Apache-2.0 57
BSD-3-Clause 28
BSD-2-Clause 23
BlueOak-1.0.0 8
MPL-2.0 4
CC0-1.0 4
MIT-0 3
MIT OR Apache-2.0 2
(MIT OR Apache-2.0) 2
Unlicense 2
LGPL-3.0-or-later 1
Python-2.0 1
CC-BY-4.0 1
(MPL-2.0 OR Apache-2.0) 1
Unknown 1
Artistic-2.0 1
(WTFPL OR MIT) 1
(BSD-2-Clause OR MIT OR Apache-2.0) 1
CC-BY-3.0 1
0BSD 1
(MIT OR CC0-1.0) 1
MIT AND ISC 1
Excluded packages
Package Version License Reason
@img/sharp-libvips-linux-x64 1.3.4 LGPL-3.0-or-later LGPL pre-built binary, not linked
khroma 2.1.0 Unknown MIT per GitHub repo, missing license field in package.json

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Keyboard-active tooltips ignore close requests and can remain visible alongside another row’s hovered tooltip.

1 open issue
What changed in this PR

Improves accessibility in the canvas Toolbox’s “Add node” list while preserving its combobox and listbox navigation pattern.

Changes:

  • Adds accessible row descriptions combining tooltip details and submenu availability.
  • Opens tooltips for keyboard-active rows.
  • Adds tests for descriptions, submenu hints, and initial tooltip visibility.
File Description
packages/​apollo-react/​src/​canvas/​locales/​en.json Adds the “Has submenu” translation entry.
packages/​apollo-react/​src/​canvas/​components/​Toolbox/​ListView.tsx Adds accessible descriptions and keyboard-active tooltips.
packages/​apollo-react/​src/​canvas/​components/​Toolbox/​ListView.test.tsx Tests row descriptions and tooltip open props.

Review effort: Balanced

Comment thread packages/apollo-react/src/canvas/components/Toolbox/ListView.tsx Outdated
@KodudulaAshishUiPath
KodudulaAshishUiPath force-pushed the fix/MST-14409-MST-14937-add-node-list-a11y branch from 045787d to 2625357 Compare October 23, 2026 06:53
Copilot AI balanced review requested due to automatic review settings October 23, 2026 06:53
@github-actions
github-actions Bot temporarily deployed to preview/apollo-docs October 23, 2026 06:54 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-landing October 23, 2026 06:54 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-design October 23, 2026 06:54 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-vertex October 23, 2026 06:54 Destroyed
@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

📊 Coverage + size by package

Per-package coverage and bundle size on this PR. New-line coverage = of the source lines this PR adds or changes, the % hit by tests.

Package Coverage New-line coverage Packed (gzip) Unpacked vs main
@uipath/apollo-core — — 42.02 MB 50.17 MB ±0
@uipath/apollo-react 58.4% 100.0% (8/8) 8.14 MB 32.17 MB +286 B
@uipath/apollo-ui-icons — — 2.86 MB 6.97 MB ±0
@uipath/apollo-vertex — — — — —
@uipath/apollo-wind — — 810.7 KB 4.68 MB −15 B
@uipath/ap-chat 85.8% — 40.42 MB 45.71 MB −88 B

"Coverage" is each package's own coverage.include scope (e.g. apollo-core instruments only scripts/). "Packed"/"Unpacked" come from npm pack --dry-run and only cover built packages — "—" means not measured this run (package not affected / not built). "vs main" is the packed (gzipped) delta against the last successful main build (the package-sizes artifact from the Release workflow); "—" there means no main baseline was available this run. The baseline is main's latest build, not this PR's exact merge-base, so it includes any drift since the branch diverged. Packages with no vitest config are omitted.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Category counts are announced before supported loading states finish, giving screen reader users misleading information.

2 open issues

Review effort: Balanced

Comment thread packages/apollo-react/src/canvas/components/Toolbox/Toolbox.tsx Outdated
Copilot AI balanced review requested due to automatic review settings October 23, 2026 06:58
@KodudulaAshishUiPath
KodudulaAshishUiPath force-pushed the fix/MST-14409-MST-14937-add-node-list-a11y branch from 2625357 to 3bf1c5d Compare October 23, 2026 06:58
@KodudulaAshishUiPath
KodudulaAshishUiPath force-pushed the fix/MST-14409-MST-14937-add-node-list-a11y branch from 3bf1c5d to 727d567 Compare October 23, 2026 06:59
@github-actions
github-actions Bot temporarily deployed to preview/apollo-docs October 23, 2026 07:00 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-design October 23, 2026 07:00 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-landing October 23, 2026 07:00 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-vertex October 23, 2026 07:00 Destroyed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Persistent pointer suppression prevents tooltips from reopening when keyboard navigation returns to a previously suppressed row.

1 open issue
2 resolved since last review

Review effort: Balanced

Comment thread packages/apollo-react/src/canvas/components/Toolbox/ListView.tsx Outdated
Copilot AI balanced review requested due to automatic review settings October 23, 2026 07:03
@github-actions
github-actions Bot temporarily deployed to preview/apollo-vertex October 23, 2026 07:15 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-landing October 23, 2026 07:15 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-docs October 23, 2026 07:16 Destroyed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The focused accessibility changes address prior feedback, include regression coverage, and have no identified unresolved blocking issues.

No open issues 🎉

1 resolved since last review

Review effort: Balanced

Copilot AI balanced review requested due to automatic review settings October 23, 2026 07:26
@KodudulaAshishUiPath
KodudulaAshishUiPath force-pushed the fix/MST-14409-MST-14937-add-node-list-a11y branch from 562902a to 7f2222f Compare October 23, 2026 07:26
@github-actions
github-actions Bot temporarily deployed to preview/apollo-design October 23, 2026 07:27 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-landing October 23, 2026 07:27 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-docs October 23, 2026 07:27 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-vertex October 23, 2026 07:27 Destroyed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Description IDs can collide with option IDs for valid items, causing screen-reader focus to reference a hidden span.

1 open issue

Review effort: Balanced

Comment thread packages/apollo-react/src/canvas/components/Toolbox/ListView.tsx Outdated
@KodudulaAshishUiPath
KodudulaAshishUiPath force-pushed the fix/MST-14409-MST-14937-add-node-list-a11y branch from 7f2222f to 33e7ce0 Compare October 23, 2026 07:45
Copilot AI balanced review requested due to automatic review settings October 23, 2026 07:45
@github-actions
github-actions Bot temporarily deployed to preview/apollo-vertex October 23, 2026 07:47 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-docs October 23, 2026 07:47 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-design October 23, 2026 07:47 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-landing October 23, 2026 07:47 Destroyed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The focused accessibility changes have regression coverage and no unresolved blocking findings.

No open issues 🎉

1 resolved since last review

Review effort: Balanced

@KodudulaAshishUiPath
KodudulaAshishUiPath force-pushed the fix/MST-14409-MST-14937-add-node-list-a11y branch from 33e7ce0 to 755fd9f Compare October 23, 2026 07:48
@github-actions
github-actions Bot temporarily deployed to preview/apollo-docs October 23, 2026 07:50 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-vertex October 23, 2026 07:50 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-design October 23, 2026 07:50 Destroyed
@github-actions
github-actions Bot temporarily deployed to preview/apollo-landing October 23, 2026 07:50 Destroyed
@github-actions

Copy link
Copy Markdown
Contributor

Storybook visual diff

⚠️ Visual changes detected: 10 changed (of 402 compared, 392 unchanged). View report

Baseline is the deployed main Storybook, so changes merged to main after this branch was last updated can also appear here. Logs

Updated (PT): Oct 23, 2026, 01:15:43 AM

@KodudulaAshishUiPath
KodudulaAshishUiPath merged commit 89464fc into main Oct 26, 2026
42 checks passed
@KodudulaAshishUiPath
KodudulaAshishUiPath deleted the fix/MST-14409-MST-14937-add-node-list-a11y branch October 26, 2026 05:45

This branch was successfully deployed

No deployments
preview/apollo-landing — 755fd9fa Deployed Oct 23, 2026 by github-actions[bot]
preview/apollo-design — 755fd9fa Deployed Oct 23, 2026 by github-actions[bot]
preview/apollo-vertex — 755fd9fa Deployed Oct 23, 2026 by github-actions[bot]
preview/apollo-docs — 755fd9fa Deployed Oct 23, 2026 by github-actions[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pkg:apollo-react size:L 100-499 changed lines.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants