UNPKG

storybook-theme-css-vars

Version:

Theme switcher tool addon that changes the theme using CSS custom properties

19 lines (17 loc) 748 B
import React from "react"; import { IconButton } from "@storybook/components"; import { DEFAULT_PARAMS, PARAM_THEME, TOOL_ID } from "../constants"; import { SunIcon, MoonIcon } from "./Icons"; import { useTheme } from "./useTheme"; import { useParameter } from "@storybook/api"; export var ThemeSwitcher = function ThemeSwitcher() { var theme = useParameter(PARAM_THEME, DEFAULT_PARAMS); var _useTheme = useTheme(theme), isDark = _useTheme.isDark, toggleMode = _useTheme.toggleMode; return /*#__PURE__*/React.createElement(IconButton, { key: TOOL_ID, title: "Change theme mode", onClick: toggleMode }, isDark ? /*#__PURE__*/React.createElement(SunIcon, null) : /*#__PURE__*/React.createElement(MoonIcon, null)); };