Skip to content

feat(tile): align component with Fusion DS - #8129

Draft
mihai-albu-sage wants to merge 1 commit into
masterfrom
FE-7232
Draft

feat(tile): align component with Fusion DS#8129
mihai-albu-sage wants to merge 1 commit into
masterfrom
FE-7232

Conversation

@mihai-albu-sage

@mihai-albu-sage mihai-albu-sage commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Proposed behaviour

The following changes have been made:
The TileHeader component has been deprecated. The styled component has been removed, and TileHeader is now based on the Box component. To ensure backwards compatibility until TileHeader is fully removed, the styles previously defined in the styled component have been moved to props on the exported Box component.

The TileContent component has been deprecated. The styled component has been removed, and TileContent is now based on the Box component. To ensure backwards compatibility until TileContent is fully removed, the styles previously defined in the styled component have been moved to props on the exported Box component.

The TileFooter variants have been updated, with the existing variants deprecated in favor of the new ones. When a Tile has outline set to true, and therefore has a visible border, a TileFooter with the selected or active variant will also determine the border color of the entire Tile.

The following props have been marked as deprecated:

  • orientation: The Tile will now be horizontally oriented by default.
  • borderWidth: Deprecated, as custom border widths are no longer supported.
  • borderVariant: Deprecated, as custom border variants are no longer supported. The border color can instead be controlled using the Tile variant together with the outline prop.
  • roundness: Deprecated in favor of the new radius prop. Existing roundness values have been mapped to their corresponding radius values to maintain backwards compatibility.
  • highlightVariant: Deprecated in favor of the new statusKeyline prop. Existing highlightVariant values have been mapped to their corresponding statusKeyline values to maintain backwards compatibility.

Current behaviour

Checklist

  • Commits follow our style guide
  • Related issues linked in commit messages if required
  • Screenshots are included in the PR if useful
  • All themes are supported if required
  • Unit tests added or updated if required
  • Playwright automation tests added or updated if required
  • Storybook added or updated if required
  • Translations added or updated (including creating or amending translation keys table in storybook) if required
  • Typescript d.ts file added or updated if required
  • Related docs have been updated if required

QA

  • Tested in provided StackBlitz sandbox/Storybook
  • Add new Playwright test coverage if required
  • Carbon implementation matches Design System/designs
  • UI Tests GitHub check reviewed if required

Additional context

Testing instructions

@mihai-albu-sage mihai-albu-sage self-assigned this Aug 12, 2026
@mihai-albu-sage
mihai-albu-sage force-pushed the FE-7232 branch 2 times, most recently from 05ae5fe to 920a1dd Compare August 13, 2026 08:28
if (
$hasFooter &&
($footerVariant === "selected" || $footerVariant === "active")
) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Should this condition also check outline? At the moment, a selected or active footer appears to create a visible Tile border even when outline isn't enabled. From PR description I understood that Tile border is only when outline is enabled. Or we can skip outline here?


return (
<StyledTileContent
<Box

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Are we going to preserve existing StyledTyleContent appearance completely? Should we preserve styles between children or first / last child?

{...marginProps}
{...tagComponent("tile", rest)}
>
<StyledTileWrapper data-role="tile-wrapper" radius={actualRadius}>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Is there a reason we apply width / height just to inner StyledTile? For example, passing 50% width can leave full-width StyledTileWrapper with half-width StyledTile.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

2 participants