mirror of
https://github.com/p-stream/p-stream.git
synced 2026-03-11 09:45:33 +00:00
18 lines
396 B
TypeScript
18 lines
396 B
TypeScript
import { defaultTheme } from "./default";
|
|
|
|
export type DeepPartial<T> = {
|
|
[P in keyof T]?: T[P] extends object ? DeepPartial<T[P]> : T[P];
|
|
};
|
|
|
|
export interface Theme {
|
|
name: string;
|
|
extend: DeepPartial<(typeof defaultTheme)["extend"]>;
|
|
}
|
|
|
|
export function createTheme(theme: Theme) {
|
|
return {
|
|
name: theme.name,
|
|
selectors: [`.theme-${theme.name}`],
|
|
extend: theme.extend,
|
|
};
|
|
}
|