feat(skin): remove legacyDisplay border radius token#1626
Merged
Conversation
Remove the Tu skin entirely: skin definition, logo files and their shells, the registry entry, the public exports, and all related stories, screenshot tests, snapshots, storybook/playroom wiring, and docs. BREAKING CHANGE: the Tu skin has been removed. The TuLogo component and the TU_SKIN, getTuSkin, and tuPalette exports are no longer available.
Complete the O2-new cleanup missed in the initial replacement: - playroom/themes.tsx: rename O2_New/O2_New_iOS to O2/O2_iOS so the Playroom O2 theme resolves (fixes the TypeScript build). - audit-accessibility: audit the O2 skin instead of the removed O2-new. - generate-design-tokens and import-mistica-icons: drop the stale o2-new entries so regeneration does not recreate the deleted files. - docs: point to getO2Skin/o2Palette and a single o2 skin row.
The Movistar-new skin no longer exists after its promotion to the canonical Movistar skin, so its committed image snapshots are obsolete. Regeneration does not delete obsolete image files, so remove them here.
These tests were pinned to the legacy Movistar skin because they were unstable on Movistar-new. Since Movistar now is the former Movistar-new, the warning still applies; reword it instead of dropping it.
…ng issue Replace the free-text TODO comments with the `// todo <link> <description>` pattern, pointing at the tracking issue for the screenshot instability.
The O2-new skin was removed from all acceptance test parametrizations when O2-new replaced O2. These snapshot images are no longer generated and are removed as obsolete output.
…-remove-movistar-new
Removes the deprecated data-component-name attribute across all components. getPrefixedDataAttributes now emits only data-testid, and the three hardcoded data-component-name attributes (BurgerMenuIcon, NavigationBarActionGroup, Dialog) are replaced; the duplicate on FixedFooter is dropped. Ref: #1598
Removes deprecated APIs as part of the 17.0.0 breaking changes (#1599). Props removed: - Spinner `rolePresentation` (use `aria-hidden`) - Theme `enableTabFocus` (use the browser `:focus-visible` behavior; the internal TabFocus mechanism is dropped) - NavigationBar `paddingX` (use `wide`) - RowList/BoxedRowList `ariaLabelledby` (use `aria-labelledby`) - Sheet item `Icon` (use `url`) - `isInverse` across Boxed, DataCard, CoverCard, MediaCard, BoxedRow, ResponsiveLayout, LoadingScreen, BoxedAccordionItem, FeedbackScreen, HeaderLayout, MainSectionHeaderLayout and ThemeVariant (use `variant="brand"`) - Card aliases: `button`, `actions`, `media`, `poster`, `imageUrl`, `backgroundImage`, `backgroundVideo`, `backgroundVideoRef`, `secondaryButton` Hooks removed: `useIsInverseVariant`, `useIsInverseOrMediaVariant`. Components removed: `HighlightedCard`, `PosterCard`, `SnapCard`, `DisplayDataCard`, `DisplayMediaCard`, `SmallNakedCard`. Sheet public exports removed: `ActionsSheet`, `InfoSheet`, `ActionsListSheet`, `RadioListSheet` (kept internally for `showSheet`). Stories, playroom snippets, type tests and unit tests are updated to the replacement APIs. Obsolete tests, stories and orphaned screenshot baselines are removed. The `extra` to `slot` migration and the `legacyDisplay` token are intentionally left for their dedicated branches.
Removes legacyDisplay from the five skins where its value is identical to the container token (Vivo, Vivo Evolution, O2, Movistar, esimflag). Telefonica, Blau, defaults, and the two consumers (empty-state.css.ts, feedback.tsx) are left untouched pending design alignment.
|
Size stats
|
The __ssr_pages__ card and carousel test pages import from the built package root, so the stale local dist masked the removal of the deprecated MediaCard/DataCard aliases. Migrate them to the replacement API: media -> imageSrc + mediaAspectRatio, button -> buttonPrimary.
The image loading fallback (opacity:0 → 1 + skeleton removal) triggers a resize observation on the carousel container during hydration, causing it to recalculate scroll positions and scroll to a non-zero offset on desktop. The carousel SSR test covers the carousel's hydration behaviour, not image loading, so removing the image is the correct fix — mirroring the approach taken in b8c6bde which set loadingFallback={false} on the now-deprecated media prop.
Restores image in the carousel SSR test page. The previous fix removed
the image entirely to avoid a hydration mismatch caused by the loading
skeleton's removal triggering the carousel's ResizeObserver. The proper
fix is to expose imageLoadingFallback on MediaCard (following the image*
prop naming convention) so callers can pass false and get the same
behaviour as the old media={<Image loadingFallback={false} />} pattern.
This reverts commit 2fe58b9.
…d-props' into mbertamini/1600-remove-border-radius-token
Marcosld
approved these changes
Jul 8, 2026
# Conflicts: # doc/llms/llms.md # playroom/components/index.tsx # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-movistar-2-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-movistar-3-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-movistar-alternative-2-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-movistar-alternative-3-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-movistar-dark-mode-2-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-movistar-dark-mode-3-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-movistar-inverse-2-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-movistar-inverse-3-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-movistar-inverse-and-dark-mode-2-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-movistar-inverse-and-dark-mode-3-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-o-2-2-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-o-2-3-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-o-2-4-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-o-2-alternative-2-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-o-2-alternative-3-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-o-2-alternative-4-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-o-2-dark-mode-2-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-o-2-dark-mode-3-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-o-2-inverse-2-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-o-2-inverse-3-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-o-2-inverse-and-dark-mode-2-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-o-2-inverse-and-dark-mode-3-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-vivo-2-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-vivo-3-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-vivo-alternative-2-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-vivo-alternative-3-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-vivo-dark-mode-2-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-vivo-dark-mode-3-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-vivo-inverse-2-snap.png # src/__screenshot_tests__/__image_snapshots__/private-skin-components-screenshot-test-tsx-components-in-vivo-inverse-and-dark-mode-2-snap.png # src/__screenshot_tests__/counter-screenshot-test.tsx # src/skins/o2.tsx # src/skins/vivo.tsx # src/test-utils/index.tsx # src/utils/dom.tsx
brtbrt
changed the base branch from
mbertamini/1599-remove-deprecated-props
to
master
July 15, 2026 14:59
…600-remove-border-radius-token
Remove legacyDisplay property from borderRadii config in o2 and vivo skins. This property is no longer part of the BorderRadiiConfig type as part of the border radius token removal work. Fixes TypeScript errors: - src/skins/o2.tsx:640 - src/skins/vivo.tsx:630
Collaborator
|
🎉 This PR is included in version 16.72.0 🎉 The release is available on: Your semantic-release bot 📦🚀 |
Collaborator
|
🎉 This PR is included in version 17.0.0 🎉 The release is available on: Your semantic-release bot 📦🚀 |
MurilloLeoni
pushed a commit
to MurilloLeoni/mistica-web
that referenced
this pull request
Jul 16, 2026
# [17.0.0](Telefonica/mistica-web@v16.71.0...v17.0.0) (2026-07-15) ### chore * **guide:** update migration guide ([Telefonica#1652](Telefonica#1652)) ([ac8e28d](Telefonica@ac8e28d)) ### Features * **Chore:** remove deprecated props, hooks and components ([Telefonica#1625](Telefonica#1625)) ([d021fc3](Telefonica@d021fc3)), closes [Telefonica#1599](Telefonica#1599) [Telefonica#626](Telefonica#626) [Telefonica#1602](Telefonica#1602) [Telefonica#1600](Telefonica#1600) [Telefonica#1598](Telefonica#1598) [Telefonica#1598](Telefonica#1598) [Telefonica#626](Telefonica#626) * **skin:** remove legacyDisplay border radius token ([Telefonica#1626](Telefonica#1626)) ([2282d4d](Telefonica@2282d4d)), closes [Telefonica#1600](Telefonica#1600) [Telefonica#626](Telefonica#626) [Telefonica#1599](Telefonica#1599) [Telefonica#1599](Telefonica#1599) [Telefonica#626](Telefonica#626) * **skin:** remove Tu skin ([Telefonica#1609](Telefonica#1609)) ([3dde4bf](Telefonica@3dde4bf)), closes [Telefonica#1596](Telefonica#1596) [Telefonica#626](Telefonica#626) [Telefonica#1608](Telefonica#1608) [Telefonica#1608](Telefonica#1608) [Telefonica#1608](Telefonica#1608) [Telefonica#626](Telefonica#626) * **skin:** replace vivo-new with vivo, and add vivo-evolution ([Telefonica#1608](Telefonica#1608)) ([cd459b5](Telefonica@cd459b5)), closes [Telefonica#1595](Telefonica#1595) [Telefonica#626](Telefonica#626) [Telefonica#1609](Telefonica#1609) [Telefonica#626](Telefonica#626) ### BREAKING CHANGES * **guide:** list all the migration changes to ease migration
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #1600. Part of #626 — Major release plan 17.0.0.
Changes
Removes the deprecated
legacyDisplayborder radius token and replaces its two consumers with thecontainertoken.legacyDisplayfrom theBorderRadiiConfigtype and the skin contract.legacyDisplayoverride from every skin: Telefonica, Blau, Movistar, O2, Vivo, Vivo-evolution, esimflag,defaultsand the community cyber-skin.EmptyStateand feedback-screen consumers to usecontainer.Visual impact
Replacing
legacyDisplaywithcontainerchanges the radius only where the two tokens differed:Out of scope
The static per-skin
css/*.csstoken exports still declare--mistica-border-radius-legacyDisplay(now an unused variable). Those files are synced from the mistica-design tokens and are cleaned up on that side.Tests
tsc(0 errors),eslint(0 errors) and the theme unit tests pass.EmptyStateand feedback screens (Telefonica, Blau,defaults, community cyber-skin) must be regenerated.Stack position — 7 of 10
This PR targets the branch from #1599 and can only be merged after #1599 lands on
master. GitHub will retarget it tomasterautomatically as the parent merges.For the full merge strategy and ordering, see #626. Do not merge out of order.