Fix Open in full page action in board issue drawer

What does this MR do and why?

Clicking Open in full page in the issue board work item drawer does nothing. The header reference link and the Copy item URL button in the same drawer are broken too.

Since the no-web-url migration (commit 9e1140dd, "Fix eslint no-web-url violation in board-card"), board cards and the IssueNode GraphQL fragment expose webPath instead of webUrl. But work_item_detail_panel.vue still reads activeItem.webUrl, which is undefined for board items. The click handler calls e.preventDefault() and then visitUrl(undefined), which throws in String.prototype.startsWith — so the native link is suppressed and no JS navigation happens.

This MR makes the panel fall back to webPath when webUrl is absent, restoring the header link, the copy-URL button, and the Open in full page navigation on issue boards. Non-board callers that still provide webUrl keep working through the same fallback.

Screenshots or screen recordings

image

Recordings to be added.

How to set up and validate locally

  1. Open any project Issue board.
  2. Click a card to open the work item drawer on the right.
  3. Click the Open in full page (maximize) icon in the drawer header.
  4. Before: nothing happens. After: you are taken to the full work item page. The header reference link and Copy item URL button also work again.

Testing

  • Added regression coverage in spec/frontend/work_items/components/work_item_detail_panel_spec.js for board items that expose webPath.

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Merge request reports

Loading