diff --git a/package-lock.json b/package-lock.json index 8d0bd97..c188793 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "@hibas123/theme-preact", - "version": "1.0.0", + "version": "1.0.5", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 6f561bf..51b0740 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@hibas123/theme-preact", - "version": "1.0.5", + "version": "1.0.6", "description": "", "main": "out/index.js", "dependencies": { diff --git a/src/Theme.tsx b/src/Theme.tsx index b49caf4..a3ad900 100644 --- a/src/Theme.tsx +++ b/src/Theme.tsx @@ -1,4 +1,4 @@ -import { h } from "preact"; +import { h, createContext } from "preact"; import { useEffect, useState, useMemo } from "preact/hooks"; export enum ThemeModes { @@ -21,6 +21,12 @@ export interface IThemeProps { onSuccess?: string; } +export interface IThemeContext { + mode: ThemeModes.DARK | ThemeModes.LIGHT; +} + +export const ThemeContext = createContext({}); + const modeMediaQuery = window.matchMedia("prefers-color-scheme: dark"); export default function Theme({ mode, children, ...colors }: IThemeProps) { @@ -99,8 +105,12 @@ export default function Theme({ mode, children, ...colors }: IThemeProps) { ]); return ( -