Skip to content

feat(ui-tag): new Tag v3 implementation - #2687

Open
git-nandor wants to merge 3 commits into
masterfrom
INSTUI-5130_new_tag_design_implementation
Open

feat(ui-tag): new Tag v3 implementation#2687
git-nandor wants to merge 3 commits into
masterfrom
INSTUI-5130_new_tag_design_implementation

Conversation

@git-nandor

Copy link
Copy Markdown
Contributor

Summary

  • Add Tag v3 (library v11_8) with the new design; v2 preserved and frozen to /v11_7 imports.
  • renderIcon leading icon that auto-sizes to the Tag size; href/onClick render a focusable link/button body (underlined text for links).
  • dismissible now renders a separate close button controlled by the new onDismiss callback — only the close button dismisses.
  • Focus ring moved from the whole tag to the individual focusable elements (link/button body and close button).
  • New src/exports/c.ts and package.json ./v11_8 + ./latest point to v3.

Test Plan

  • Tab through a link + dismissible Tag: the label/icon group and the close button receive focus rings independently; clicking only the X dismisses.
  • Visual: leading icon sizing across small/medium/large; link underline; focus-ring radius/height.
  • Note: umbrella @instructure/ui v11_8 wiring and the small-components regression page update are deferred to the release bump (umbrella /latest still resolves Tag to v2 until then).

Fixes INSTUI-5130

🤖 Generated with Claude Code

Introduce a v3 of Tag (library v11_8) implementing the new design. v2 is
preserved unchanged and frozen to v11_7 imports; the new ./v11_8 export and
./latest point to v3.

- renderIcon leading icon that auto-sizes to the Tag size
- link/button body via href/onClick, with the label and icon as one
  focusable group (underlined text for links)
- dismissible renders a separate close button controlled by the new
  onDismiss callback; only the close button dismisses the tag
- focus ring moved from the whole tag to the individual focusable elements
  (link/button body and close button)

BREAKING CHANGE: Tag latest now resolves to v3. Dismissible tags are
dismissed via the new onDismiss prop instead of onClick, and the focus ring
appears on the close button / link body rather than the whole tag. Consumers
pinned to @instructure/ui-tag/v11_7 are unaffected.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@git-nandor git-nandor self-assigned this Aug 12, 2026
@git-nandor git-nandor changed the title feat(ui-tag): add Tag v3 with leading icon, link, and per-element focus feat(ui-tag): new Tag v3 implementation Aug 12, 2026
@github-actions

github-actions Bot commented Aug 12, 2026

Copy link
Copy Markdown
Contributor
PR Preview Action v1.8.1

QR code for preview link

🚀 View preview at
https://instructure.design/pr-preview/pr-2687/

Built to branch gh-pages at 2026-08-13 08:51 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

@github-actions

Copy link
Copy Markdown
Contributor

Visual regression report

⚠️ Changes detected.

Status Count
Unchanged 0
Changed 1
New 96
Removed 32

📊 View full report

Diff images (33)

alert.png — baseline no longer produced

avatar.png — baseline no longer produced

badge.png — baseline no longer produced

billboard.png — baseline no longer produced

breadcrumb.png — baseline no longer produced

button-and-derivatives.png — baseline no longer produced

byline.png — baseline no longer produced

calendar.png — baseline no longer produced

checkbox.png — baseline no longer produced

checkboxgroup.png — baseline no longer produced

colorpicker.png — baseline no longer produced

contextview.png — baseline no longer produced

custom-and-lucide-icons.png — baseline no longer produced

dateinput-dateinput2.png — baseline no longer produced

datetimeinput.png — baseline no longer produced

diff-demo.png — 6324 pixels differ

drilldown.png — baseline no longer produced

filedrop.png — baseline no longer produced

form-errors.png — baseline no longer produced

heading.png — baseline no longer produced

img.png — baseline no longer produced

link.png — baseline no longer produced

menu.png — baseline no longer produced

metric-pill-tag-timeselect-text.png — baseline no longer produced

options.png — baseline no longer produced

pagination.png — baseline no longer produced

progressbar.png — baseline no longer produced

select-simpleselect.png — baseline no longer produced

table.png — baseline no longer produced

tabs.png — baseline no longer produced

tooltip.png — baseline no longer produced

treebrowser.png — baseline no longer produced

view.png — baseline no longer produced

Baselines come from the visual-baselines branch. They refresh on every merge to master.

github-actions Bot pushed a commit that referenced this pull request Aug 12, 2026
@git-nandor
git-nandor requested a review from adamlobler August 13, 2026 06:19
Add the @instructure/ui v11_8 barrel (Tag from ui-tag/v11_8, everything else
still at v11_7) and register v11_8 in the docs versioned-components map so the
docs render the new Tag v3 (with renderIcon/href/onDismiss). Point the umbrella
./latest at v11_8.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
github-actions Bot pushed a commit that referenced this pull request Aug 13, 2026
Use a single Tag with an icon in the README example instead of one per size.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
github-actions Bot pushed a commit that referenced this pull request Aug 13, 2026
@danegivens

Copy link
Copy Markdown
Collaborator

This looks PERFECT! the only thing that was missed is the color of the tag on the rebrand light theme...in that theme the tag should be the opacity navy that is used for our secondary buttons!

@adamlobler

Copy link
Copy Markdown
Collaborator

This looks PERFECT! the only thing that was missed is the color of the tag on the rebrand light theme...in that theme the tag should be the opacity navy that is used for our secondary buttons!

It’s because this branch is still using v1.5.0 of the tokens. We should update it to the latest version.

@HerrTopi
HerrTopi requested a review from danegivens August 14, 2026 19:10
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.

3 participants