Customizable columns on the approvals list: reordering and adding related-item fields

Description

Background

The approvals list's "Customize columns" today only shows or hides a fixed set of columns. Users can't reorder or resize columns, can't add related-item data (Jira work item / Confluence page fields such as status, assignee, priority, labels), and on Jira the work item key and summary are locked together in one "Work item" column — so seeing an approval's context means opening each item or page.

Goal

Extend column customization on the approvals list with:

  • Reorder columns — drag in the panel, drag headers in the table, or use a per-column header menu.

  • Resize columns by dragging their borders.

  • Add related-item columns (Jira standard + custom fields; a curated set of Confluence page attributes).

  • On Jira, split the combined "Work item" column into separate Key and Summary columns (the combined column stays available).

  • Remove added columns and restore the default layout.

  • Columns fill the available width, so no space is wasted.

  • Settings (order, visibility, widths, added columns) are per user and per view (personal, project, global), remembered in the browser.

Functional scope

Reorder columns by dragging in the customize columns panel, by dragging headers in the table, or via each header's three-dot menu (move to first / left / right / last). All methods write the same order; panel and table stay in sync and changes apply immediately.

Each header shows, on hover, a sort control (for sortable columns) and the three-dot menu (which also offers "remove column"); the column name truncates so the icons stay visible. Columns can be resized by dragging their border along the full column height, and widths are remembered. Columns expand to fill the available width — a resized column keeps its width and the rest share the remainder; a horizontal scrollbar appears only when columns exceed the width.

Add related-item columns via a field search in the panel:

  • Jira: any standard or custom field; plus separate Key and Summary columns (the combined "Work item" column remains available).

  • Confluence: a curated set of page attributes — status, author, owner, labels, created date, modified date. (The existing built-in "Version" column is unchanged.)

Related-item values render the same way as the item detail view: priority (and similar fields) with its Jira icon, people fields as avatars (multiple users as a compact avatar group), dates in the user's timezone/locale, multi-value fields on one line, empty values as a muted dash; rows stay a single line high.

The customize columns panel also offers "Restore defaults" (resets order, visibility, widths, and added columns for the current view).

The CSV export mirrors the current view — only the visible columns, in the same order, including added related-item columns. It is produced with the requesting user's own permissions (related-item data is fetched as that user), so it never exposes data the user couldn't otherwise see.

Business value

Users tailor the list to how they work — arranging, resizing, and adding the columns that matter, splitting key and summary, and seeing related-item context (priority icons, assignees, dates) without opening each item. Columns fill the width so no space is wasted, and rows stay compact. This shortens review time, especially with many approvals. The export matches the view they built and respects their permissions, so it's both faithful and safe to share — no re-adding columns after every export.

Acceptance Criteria

  • Reorder columns from the panel (drag), by dragging a header, or via the header three-dot menu (move to first/left/right/last); all produce the same order and the panel and table stay in sync, reflected immediately.

  • Resize a column by dragging its border anywhere along the column height; the width applies immediately and is remembered per user and per view.

  • Columns fill the available width; a resized column keeps its width while the others fill the remainder; a horizontal scrollbar appears only on overflow.

  • Order, visibility, widths, and added columns persist across refresh and subsequent visits, separately for the personal, project, and global views.

  • Column names truncate so the header's sort and menu icons remain visible.

  • "Restore defaults" resets order, visibility, widths, and added columns for the current view.

  • On Jira, a user can add any standard or custom field (rendered per field type), and can add separate Key (links to the work item) and Summary columns (both non-sortable); the combined "Work item" column remains available.

  • On Confluence, a user can add columns from the curated set of page attributes.

  • Added related-item columns can be removed and reordered like built-in ones, and at least one column always stays visible.

  • Related-item values render like the item detail view (priority icon, avatars / avatar group, dates in the user's timezone and locale, muted dash for empty); rows stay a single line high.

  • The CSV export contains exactly the visible columns in the same order, with values formatted per field type in the user's timezone and locale, and is produced with the user's own permissions.

Out of scope

  • Related-item columns (and the split Key/Summary) are display-only: not sortable or filterable.

  • Adding related-item fields is not available to JSM portal customers (no access to work item data there).