Skip to content

fix: add hint tooltips for quadrant axes#2419

Merged
graphieros merged 11 commits intomainfrom
compare-quadrant-axes-tooltips
Apr 8, 2026
Merged

fix: add hint tooltips for quadrant axes#2419
graphieros merged 11 commits intomainfrom
compare-quadrant-axes-tooltips

Conversation

@graphieros
Copy link
Copy Markdown
Contributor

@graphieros graphieros commented Apr 8, 2026

Follow up to #2416

Compare page, quadrant chart.
This adds tooltip hints for the quadrant axes.
The hint icon is hidden for prints.

image image image

@vercel
Copy link
Copy Markdown

vercel bot commented Apr 8, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
npmx.dev Ready Ready Preview, Comment Apr 8, 2026 2:24pm
2 Skipped Deployments
Project Deployment Actions Updated (UTC)
docs.npmx.dev Ignored Ignored Preview Apr 8, 2026 2:24pm
npmx-lunaria Ignored Ignored Apr 8, 2026 2:24pm

Request Review

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 8, 2026

Lunaria Status Overview

🌕 This pull request will trigger status changes.

Learn more

By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.

You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

File Note
i18n/locales/en.json Source changed, localizations will be marked as outdated.
i18n/locales/fr-FR.json Localization changed, will be marked as complete.
Warnings reference
Icon Description
🔄️ The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.

@graphieros graphieros requested a review from serhalp April 8, 2026 13:38
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 8, 2026

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

The pull request adds two SVG foreignObject overlays to the quadrant chart component that provide contextual information to users. The first overlay displays an efficiency-related explanation tooltip positioned at the top left of the chart, whilst the second displays an adoption-related explanation tooltip positioned at the right centre. Both overlays wrap info buttons with associated TooltipApp components using localised text strings. The buttons are marked to be excluded from PNG exports via the data-dom-to-png-ignore attribute.

Possibly related PRs

Suggested reviewers

  • serhalp
  • alexdln
🚥 Pre-merge checks | ✅ 1
✅ Passed checks (1 passed)
Check name Status Explanation
Description check ✅ Passed The pull request description clearly describes the changes being made: adding tooltip hints for quadrant axes on the compare page quadrant chart, with visual evidence provided.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch compare-quadrant-axes-tooltips

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
app/components/Compare/FacetQuadrantChart.vue (1)

386-437: Well-implemented tooltip overlays for axis explanations.

The use of foreignObject with overflow: visible is appropriate for embedding interactive HTML tooltips within the SVG context. Good choices:

  • The interactive prop on TooltipApp correctly enables pointer events and provides a 150ms hide delay, allowing users to move their cursor to the tooltip content.
  • data-dom-to-png-ignore appropriately excludes these UI controls from image exports.
  • Proper accessibility via aria-label attributes on the buttons.

One minor formatting observation: the indentation within the foreignObject elements is inconsistent (e.g., lines 394-410 use different indentation than the surrounding template code). Consider aligning with the file's existing indentation style for consistency.


ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: fa7ca62f-bc2e-4019-b116-e0ab752102bf

📥 Commits

Reviewing files that changed from the base of the PR and between 526c5db and 3fcf576.

📒 Files selected for processing (4)
  • app/components/Compare/FacetQuadrantChart.vue
  • i18n/locales/en.json
  • i18n/locales/fr-FR.json
  • i18n/schema.json

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2


ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: ce78f7ba-eaae-476d-89f1-69daa28116b5

📥 Commits

Reviewing files that changed from the base of the PR and between c0022ae and 6cfcee3.

📒 Files selected for processing (1)
  • app/components/Compare/FacetQuadrantChart.vue

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

♻️ Duplicate comments (1)
app/components/Compare/FacetQuadrantChart.vue (1)

390-394: ⚠️ Potential issue | 🟠 Major

Add accessible names to the new axis help buttons.

Both triggers are icon-only. Unlike the chart-level help button on Line 343, these buttons have no localised aria-label, so screen readers will announce them as an unlabelled button and the new help text is not discoverable.

♿ Suggested fix
               <TooltipApp>
                 <button
                   data-dom-to-png-ignore
                   class="i-lucide:info w-3.5 h-3.5 text-fg-muted cursor-help"
                   type="button"
+                  :aria-label="$t('compare.quadrant_chart.explanation.efficiency')"
                 />
@@
               <TooltipApp>
                 <button
                   data-dom-to-png-ignore
                   class="i-lucide:info w-3.5 h-3.5 text-fg-muted cursor-help"
                   type="button"
+                  :aria-label="$t('compare.quadrant_chart.explanation.adoption')"
                 />

Also applies to: 415-419


ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 4ec96272-60c6-46eb-b0cb-ee6700270c33

📥 Commits

Reviewing files that changed from the base of the PR and between 61ec1b8 and 8a52d65.

📒 Files selected for processing (1)
  • app/components/Compare/FacetQuadrantChart.vue

Copy link
Copy Markdown
Member

@serhalp serhalp left a comment

Choose a reason for hiding this comment

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

LGTM but there's an a11y violation 👀

@graphieros
Copy link
Copy Markdown
Contributor Author

graphieros commented Apr 8, 2026

LGTM but there's an a11y violation 👀

I know it's an impossible one.
The svg is already focusable, and the foreignObject creates a HTML scope with a focusable button

I had to filter some violations just for this component. Hope it's ok, if not, we'll have to find another way.

@codecov
Copy link
Copy Markdown

codecov bot commented Apr 8, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ All tests successful. No failed tests found.

📢 Thoughts on this report? Let us know!

@graphieros graphieros requested a review from serhalp April 8, 2026 14:29
@graphieros graphieros enabled auto-merge April 8, 2026 14:34
@graphieros graphieros added this pull request to the merge queue Apr 8, 2026
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Apr 8, 2026
@graphieros graphieros added this pull request to the merge queue Apr 8, 2026
Merged via the queue into main with commit 7505f1a Apr 8, 2026
24 checks passed
@graphieros graphieros deleted the compare-quadrant-axes-tooltips branch April 8, 2026 15:12
@github-actions github-actions bot mentioned this pull request Apr 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants