Merge pull request #3615 from matrix-org/travis/base-theme

Add a function to get the "base" theme for a theme
pull/21833/head
Travis Ralston 2019-11-14 09:25:12 -07:00 committed by GitHub
commit 4258a824df
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 16 additions and 0 deletions

View File

@ -60,6 +60,22 @@ function getCustomTheme(themeName) {
return customTheme;
}
/**
* Gets the underlying theme name for the given theme. This is usually the theme or
* CSS resource that the theme relies upon to load.
* @param {string} theme The theme name to get the base of.
* @returns {string} The base theme (typically "light" or "dark").
*/
export function getBaseTheme(theme) {
if (!theme) return "light";
if (theme.startsWith("custom-")) {
const customTheme = getCustomTheme(theme.substr(7));
return customTheme.is_dark ? "dark-custom" : "light-custom";
}
return theme; // it's probably a base theme
}
/**
* Called whenever someone changes the theme
*