Skip to content

Conversation

@dnywh
Copy link
Contributor

@dnywh dnywh commented Nov 5, 2025

What kind of change does this PR introduce?

  • Interface update

What is the current behavior?

  • Interactive elements within a TableRow → TableCell often have their action hidden

What is the new behavior?

  • Interactive elements within a TableRow → TableCell have a suggestive underline
Before and After
before
after

Additional context

  • This is achieved via a new .text-link-table-cell typography style class
  • Prior commits used a custom component, but this quickly becomes complex as various scenarios must support
    • Buttons, not just links
    • Some lighter, some darker
    • Various class name additions depending on the situations

Still to come:

  • Design system documentation

@dnywh dnywh requested a review from a team as a code owner November 5, 2025 06:55
@vercel
Copy link

vercel bot commented Nov 5, 2025

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

Project Deployment Preview Comments Updated (UTC)
studio-self-hosted Ready Ready Preview Comment Nov 5, 2025 7:27am
studio-staging Ready Ready Preview Comment Nov 5, 2025 7:27am
6 Skipped Deployments
Project Deployment Preview Comments Updated (UTC)
studio Ignored Ignored Nov 5, 2025 7:27am
cms Skipped Skipped Nov 5, 2025 7:27am
design-system Skipped Skipped Nov 5, 2025 7:27am
docs Skipped Skipped Nov 5, 2025 7:27am
ui-library Skipped Skipped Nov 5, 2025 7:27am
zone-www-dot-com Skipped Skipped Nov 5, 2025 7:27am

@supabase
Copy link

supabase bot commented Nov 5, 2025

This pull request has been ignored for the connected project xguihxuzqibwxjnimxev because there are no changes detected in supabase directory. You can change this behaviour in Project Integrations Settings ↗︎.


Preview Branches by Supabase.
Learn more about Supabase Branching ↗︎.

@dnywh dnywh requested a review from a team November 5, 2025 06:55
@github-actions
Copy link
Contributor

github-actions bot commented Nov 5, 2025

Studio E2E Results

  • Total: 1
  • Passed: 1
  • Failed: 0
  • Skipped: 0
  • Timed out: 0
  • Interrupted: 0
  • Flaky: 0
  • Duration: 2.3s

Artifacts: https://github.com/supabase/supabase/actions/runs/19094398916

Last updated: Wednesday 5, November, 2025 07:39:38 (UTC)

className="text-foreground text-sm p-0 hover:bg-transparent"
className="text-link-table-cell text-sm p-0 hover:bg-transparent title"
onClick={() => editFunction(x)}
title={x.name}
Copy link
Contributor Author

Choose a reason for hiding this comment

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

title being the HTML attribute that adds a browser-native tooltip. Useful for the name instances of a TableCell, in case they are truncated.

Comment on lines +120 to +124
<p
title={x.argument_types}
className={`truncate ${x.argument_types ? 'text-foreground-light' : 'text-foreground-muted'}`}
>
{x.argument_types || '–'}
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Just made this a little lighter if there are no arguments.

Comment on lines +100 to +107
<Button
type="text"
onClick={() => editTrigger(x)}
title={x.name}
className="text-link-table-cell text-left text-sm min-w-0 p-0 hover:bg-transparent font-medium max-w-48 title"
>
{x.name}
</Button>
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Tooltip felt a bit unnecessary. I added title (native tooltip as explained above) in the rare case that it is truncated.

Comment on lines +78 to +80
.text-link-table-cell {
@apply truncate cursor-pointer underline underline-offset-4 decoration-foreground-muted/50 hover:decoration-foreground-lighter/80 transition-colors duration-100;
}
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This is the meat-and-potatoes. It contains the base styles for any table cell text that acts as a link (or button).

A previous commit used a new TableLink component but that quickly got out of hand given the amount of variation. Especially as this style is used across links and buttons.

@coveralls
Copy link

Coverage Status

coverage: 70.363%. remained the same
when pulling 0a45caa on dnywh/feat/table-row-names-as-links
into abd3521 on master.

<Link
href={`/project/${projectRef}/storage/files/buckets/${encodeURIComponent(bucket.id)}`}
title={bucket.id}
className="text-link-table-cell"
Copy link
Contributor

Choose a reason for hiding this comment

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

Overall I'm a big fan of text styling like this where we load a class with the properties outside of mark up ...it's almost like what we used to call CSS back in my day. 👴 Big yes from me.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

What’s old is new again!

Copy link
Contributor

@kemaldotearth kemaldotearth left a comment

Choose a reason for hiding this comment

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

Good stuff, I recently found myself styling links like this in log drains, happy to re-use these classes. :shipit:

@dnywh dnywh merged commit 41afe37 into master Nov 5, 2025
21 checks passed
@dnywh dnywh deleted the dnywh/feat/table-row-names-as-links branch November 5, 2025 21:56
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.

4 participants