We usually use rgba to add opacity to colors.
But recently I was working on a project which all the colors were defined in a theme object with in hex format.
like this:
export type ThemeItem = { loader:string; } const darkTheme = { loader: "#ffffff", }; const lightTheme = { loader: "#000000", }; After a short talk with designer I figured out that every color in the theme object can have different opacity like 10% or 20% ...
For adding this functionality to our design system I added this function according to this stack overflow answer:
export function addOpacityToColor(color: string, opacity: number) { const _opacity = Math.round(Math.min(Math.max(opacity || 1, 0), 1) * 255); return color + _opacity.toString(16).toUpperCase(); } and we can use it this way:
addOpacityToColor(theme.green, 0.3) Here you can read more about adding alpha value to css hex codes
Top comments (0)