Skip to content

Conversation

brandyscarney
Copy link
Member

Issue number: internal


What is the current behavior?

  • The theme interface defines only numeric tokens
  • The config values are set at the top-level of the theme
  • No tokens are defined for the md theme
  • The ionic theme redefines the base numeric tokens
  • Font family is being set in multiple places

What is the new behavior?

  • Updates the theme tokens interface to add more numeric tokens & semantic tokens
  • Moves the config values into a separate config option which uses the IonicConfig interface
    • Adds a config option for formHighlight to IonicConfig
  • Defines default & dark tokens for the md theme
  • Removes the numeric tokens from the ionic theme and adds semantic tokens
  • Remove the numerous --ion-font-family overrides in favor of the tokens

Does this introduce a breaking change?

  • Yes
  • No

Copy link

vercel bot commented Oct 17, 2025

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

Project Deployment Preview Comments Updated (UTC)
ionic-framework Ready Ready Preview Comment Oct 21, 2025 7:40pm

@github-actions github-actions bot added the package: core @ionic/core package label Oct 17, 2025
--ion-font-family: Roboto, "mdTestingFont", sans-serif;
font-family: Roboto, "mdTestingFont", sans-serif;
}

/* TODO(FW-6744): Remove this after adding the ios tokens */
Copy link
Member Author

Choose a reason for hiding this comment

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

I thought I could remove these but Playwright still needs the iosTestingFont and mdTestingFont.

Copy link
Contributor

Choose a reason for hiding this comment

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

Why does it need it?

Copy link
Member Author

Choose a reason for hiding this comment

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

It doesn't apply Roboto without the testing font in this file:

--ion-font-family: Roboto, "mdTestingFont", sans-serif;

and it doesn't apply the apple font without this either:

 --ion-font-family: -apple-system, BlinkMacSystemFont, "iosTestingFont", sans-serif;

I thought maybe this code was outdated but it is still needed so I left it. We could look into removing it later.

Copy link
Contributor

Choose a reason for hiding this comment

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

That's weird, I wonder why it needs it. Thanks!

@brandyscarney brandyscarney marked this pull request as ready for review October 17, 2025 20:50
@brandyscarney brandyscarney requested a review from a team as a code owner October 17, 2025 20:50
@brandyscarney brandyscarney requested a review from thetaPC October 17, 2025 20:50
Copy link
Member

@ShaneK ShaneK left a comment

Choose a reason for hiding this comment

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

Just noticed a weird inconsistency, but it may be intentional. Otherwise looks good to me.

},

textColorStep: {
50: '#f33f33',
Copy link
Member

Choose a reason for hiding this comment

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

So this is weird, but I noticed all of the other colors here seem to be a grey color (#xyxyxy) and this one doesn't follow that pattern, so I looked at it and this one is red. Was that intentional?

Maybe you meant #f3f3f3? That would be grey like the others.

Copy link
Member Author

Choose a reason for hiding this comment

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

Yes, nice catch. It should match this:

--ion-text-color-step-50: #f3f3f3;

Fixed md here: fafed46
I also reviewed the ios one and fixed it too: fbba940

Copy link
Contributor

@thetaPC thetaPC left a comment

Choose a reason for hiding this comment

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

LGTM

@brandyscarney brandyscarney merged commit a7699ea into ionic-modular Oct 21, 2025
49 checks passed
@brandyscarney brandyscarney deleted the FW-6745 branch October 21, 2025 19:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

package: core @ionic/core package

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants