mirror of
https://github.com/coder/coder.git
synced 2026-11-07 12:34:23 +08:00
39 lines
1.2 KiB
TypeScript
39 lines
1.2 KiB
TypeScript
// biome-ignore lint/style/noRestrictedImports: We still use `Theme` as a basis for our actual theme, for now.
|
|
import type { Theme as MuiTheme } from "@mui/material/styles";
|
|
import type * as monaco from "monaco-editor";
|
|
import type { Branding } from "./branding";
|
|
import dark from "./dark";
|
|
import type { NewTheme } from "./experimental";
|
|
import type { ExternalImageModeStyles } from "./externalImages";
|
|
import light from "./light";
|
|
import type { Roles } from "./roles";
|
|
|
|
export interface Theme extends Omit<MuiTheme, "palette"> {
|
|
/** @deprecated prefer `theme.roles` when possible */
|
|
palette: MuiTheme["palette"];
|
|
|
|
/** Sets of colors that can be used based on the role that a UI element serves
|
|
* for the user.
|
|
* Does it signify an error? a warning? that something is currently running? etc.
|
|
*/
|
|
roles: Roles;
|
|
|
|
/** Theme properties that we're testing out but haven't committed to. */
|
|
experimental: NewTheme;
|
|
|
|
/** Theme colors related to marketing */
|
|
branding: Branding;
|
|
|
|
monaco: monaco.editor.IStandaloneThemeData;
|
|
externalImages: ExternalImageModeStyles;
|
|
}
|
|
|
|
export const DEFAULT_THEME = "dark";
|
|
|
|
const theme = {
|
|
dark,
|
|
light,
|
|
} satisfies Record<string, Theme>;
|
|
|
|
export default theme;
|