Skip to content

feat(templates): link every title Terracotta Rail draws - #626

Merged
DemchaAV merged 1 commit into
feature/template-promotionfrom
feat/terracotta-title-links
Aug 31, 2026
Merged

DemchaAV merged 1 commit into
feature/template-promotionfrom
feat/terracotta-title-links

Conversation

@DemchaAV

Copy link
Copy Markdown
Owner

Why

Only a project title could point somewhere. A role, a degree and a credential are just as often things a reader wants to open — a company, a campus, a registry entry — and CvEntry already carries the target on every entry, so the preset was leaving a stated link undrawn.

What

A role, a degree and a credential each become a link when their entry carries CvEntry.link(), joining the project title that already did. The two shared widgets take the target: the title-and-date line links its title cell, and the bullet line links its item.

The closing facts stay plain, and the class documentation now says why: their bold line is a label for the values under it — "Languages:", "Availability:" — rather than the name of something a reader could open.

Tests

./mvnw -B -ntp clean verify -pl :graph-compose-core,:graph-compose-render-pdf,:graph-compose-render-docx,:graph-compose-render-pptx,:graph-compose-templates,:graph-compose-testing,:graph-compose-qa,:graph-compose-coverage -am — BUILD SUCCESS.

everyTitleBecomesALinkWhenItsEntryCarriesOne asserts the three new targets are in the PDF's annotations. It is the only thing that can: both gates pass on the baselines recorded before this change, unchanged, because a link is an annotation rather than ink — which is also the argument that this costs the sheet nothing.

Only a project title could point somewhere. A role, a degree and a credential
are just as often things a reader wants to open — a company, a campus, a
registry entry — and the model already carries the target on every entry.

Each of them is now a link when its entry carries CvEntry.link(). It costs the
layout nothing, because a link is an annotation rather than ink: both gates
pass on the baselines recorded before this change, which is the proof.

The closing facts stay plain. Their bold line is a label for the values under
it — "Languages:", "Availability:" — rather than the name of something a
reader could open.
@DemchaAV
DemchaAV merged commit c76f847 into feature/template-promotion Aug 31, 2026
11 checks passed
@DemchaAV
DemchaAV deleted the feat/terracotta-title-links branch August 31, 2026 13:27
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.

1 participant