1 Star 0 Fork 0

小弟调调 / dark-mode

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
main.d.ts 1.81 KB
一键复制 编辑 原始数据 按行查看 历史
小弟调调 提交于 2022-03-18 00:20 . type: Fix type issue in react.
export type ColorScheme = 'light' | 'dark';
export type ColorSchemeChangeEvent = CustomEvent<{ colorScheme: ColorScheme }>;
export type PermanentColorSchemeEvent = CustomEvent<{ colorScheme: ColorScheme, permanent: boolean }>;
export class DarkMode extends HTMLElement {
mode?: ColorScheme;
/**
* Defaults to not remember the last choice.
* If present remembers the last selected mode (`dark` or `light`),
* which allows the user to permanently override their usual preferred color scheme.
*/
permanent?: boolean;
/**
* Any string value that represents the label for the "dark" mode.
*/
dark?: string;
/**
* Any string value that represents the label for the "light" mode.
*/
light?: string;
}
declare global {
interface HTMLElementTagNameMap {
'dark-mode': DarkMode;
}
interface GlobalEventHandlersEventMap {
/**
* Fired when the color scheme gets changed.
*
* ```js
* const toggle = document.querySelector('dark-mode');
* document.addEventListener('colorschemechange', (e) => {
* console.log(`Color scheme changed to "${e.detail.colorScheme}".`);
* console.log(toggle.mode === 'dark' ? 'Change Theme 🌞' : 'Change Theme 🌒')
* });
* ```
*/
'colorschemechange': ColorSchemeChangeEvent;
/**
* Fired when the color scheme should be permanently remembered or not.
*
* ```js
* document.addEventListener('permanentcolorscheme', (e) => {
* console.log(`~: Color scheme changed to "${e.detail.colorScheme}" , "${e.detail.permanent}" .`);
* });
* ```
*/
'permanentcolorscheme': PermanentColorSchemeEvent;
}
namespace JSX {
interface IntrinsicElements {
'dark-mode': Partial<DarkMode> | {
style?: Partial<CSSStyleDeclaration> | React.CSSProperties;
};
}
}
}
JavaScript
1
https://gitee.com/jaywcjlove/dark-mode.git
git@gitee.com:jaywcjlove/dark-mode.git
jaywcjlove
dark-mode
dark-mode
main

搜索帮助