From 3ed7f185e82c0cc87c63b75dc8cddfecc5c608ce Mon Sep 17 00:00:00 2001 From: Armand Philippot Date: Sun, 22 May 2022 17:39:39 +0200 Subject: chore(storybook): use custom themes and add dark mode support --- .storybook/overrides/docs-container.js | 36 ++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 .storybook/overrides/docs-container.js (limited to '.storybook/overrides/docs-container.js') diff --git a/.storybook/overrides/docs-container.js b/.storybook/overrides/docs-container.js new file mode 100644 index 0000000..f539986 --- /dev/null +++ b/.storybook/overrides/docs-container.js @@ -0,0 +1,36 @@ +import { DocsContainer as BaseContainer } from '@storybook/addon-docs/blocks'; +import { useDarkMode } from 'storybook-dark-mode'; +import dark from '../themes/dark'; +import light from '../themes/light'; + +/** + * Custom Docs Container to support dark theme. + * + * @see https://github.com/hipstersmoothie/storybook-dark-mode/issues/127#issuecomment-1070524402 + */ +export const DocsContainer = ({ children, context }) => { + const isDark = useDarkMode(); + + return ( + { + const storyContext = context.storyById(id); + return { + ...storyContext, + parameters: { + ...storyContext?.parameters, + docs: { + ...storyContext?.parameters?.docs, + theme: isDark ? dark : light, + }, + }, + }; + }, + }} + > + {children} + + ); +}; -- cgit v1.2.3