Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: rewrite the preset #24

Open
wants to merge 18 commits into
base: main
Choose a base branch
from
Open

feat: rewrite the preset #24

wants to merge 18 commits into from

Conversation

awwwdev
Copy link

@awwwdev awwwdev commented Sep 4, 2024

This is a complete rewrite of the preset and many missing features are added.

Instead of adding all 12 shades of a color at the start, this adds color shades as they are used, unless they are safeListed. So always, the minimum amount of css is added to your project.

Mechanism:
There is a colorsInUse object that keeps track of colors used.
There is a unocss shortcut that runs when a radix color is used in a utility token, and add the color to colorsInUse.
In preflight, based on colorsInUse, it add css variables.

palette option is removed.

new options are introduced.

useP3Colors (boolean)
to use P3 colors with fallbacks

safeListColors:
a list of colors or color-shades to preserve

safeListAliases:
a list of aliases to preserve

onlyOneTheme ('dark' | 'light' | undefined):
if your app has only one theme, you can indicate with this, so only 'dark' or 'light' colors are added to css.

awwwdev

This comment was marked as duplicate.

@endigma
Copy link
Owner

endigma commented Sep 16, 2024

Hey, I'd be willing to review and accept this, but you'd need to update docs to reflect your changes and increment the major version in package.json. From an initial review, there's also a bunch of typescript errors that should be fixed before merge.

@awwwdev
Copy link
Author

awwwdev commented Oct 4, 2024

Sorry for late response. I'll address those. Thanks.

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.

2 participants