!(function (e) { e.languages.puppet = { heredoc: [ { pattern: /(@\("([^"\r\n\/):]+)"(?:\/[nrts$uL]*)?\).*(?:\r?\n|\r))(?:.*(?:\r?\n|\r(?!\n)))*?[ \t]*(?:\|[ \t]*)?(?:-[ \t]*)?\2/, lookbehind: !0, alias: 'string', inside: { punctuation: /(?=\S).*\S(?= *$)/ }, }, { pattern: /(@\(([^"\r\n\/):]+)(?:\/[nrts$uL]*)?\).*(?:\r?\n|\r))(?:.*(?:\r?\n|\r(?!\n)))*?[ \t]*(?:\|[ \t]*)?(?:-[ \t]*)?\2/, lookbehind: !0, greedy: !0, alias: 'string', inside: { punctuation: /(?=\S).*\S(?= *$)/ }, }, { pattern: /@\("?(?:[^"\r\n\/):]+)"?(?:\/[nrts$uL]*)?\)/, alias: 'string', inside: { punctuation: { pattern: /(\().+?(?=\))/, lookbehind: !0 } }, }, ], 'multiline-comment': { pattern: /(^|[^\\])\/\*[\s\S]*?\*\//, lookbehind: !0, greedy: !0, alias: 'comment', }, regex: { pattern: /((?:\bnode\s+|[~=\(\[\{,]\s*|[=+]>\s*|^\s*))\/(?:[^\/\\]|\\[\s\S])+\/(?:[imx]+\b|\B)/, lookbehind: !0, greedy: !0, inside: { 'extended-regex': { pattern: /^\/(?:[^\/\\]|\\[\s\S])+\/[im]*x[im]*$/, inside: { comment: /#.*/ }, }, }, }, comment: { pattern: /(^|[^\\])#.*/, lookbehind: !0, greedy: !0 }, string: { pattern: /(["'])(?:\$\{(?:[^'"}]|(["'])(?:(?!\2)[^\\]|\\[\s\S])*\2)+\}|\$(?!\{)|(?!\1)[^\\$]|\\[\s\S])*\1/, greedy: !0, inside: { 'double-quoted': { pattern: /^"[\s\S]*"$/, inside: {} } }, }, variable: { pattern: /\$(?:::)?\w+(?:::\w+)*/, inside: { punctuation: /::/ }, }, 'attr-name': /(?:\b\w+|\*)(?=\s*=>)/, function: [ { pattern: /(\.)(?!\d)\w+/, lookbehind: !0 }, /\b(?:contain|debug|err|fail|include|info|notice|realize|require|tag|warning)\b|\b(?!\d)\w+(?=\()/, ], number: /\b(?:0x[a-f\d]+|\d+(?:\.\d+)?(?:e-?\d+)?)\b/i, boolean: /\b(?:false|true)\b/, keyword: /\b(?:application|attr|case|class|consumes|default|define|else|elsif|function|if|import|inherits|node|private|produces|type|undef|unless)\b/, datatype: { pattern: /\b(?:Any|Array|Boolean|Callable|Catalogentry|Class|Collection|Data|Default|Enum|Float|Hash|Integer|NotUndef|Numeric|Optional|Pattern|Regexp|Resource|Runtime|Scalar|String|Struct|Tuple|Type|Undef|Variant)\b/, alias: 'symbol', }, operator: /=[=~>]?|![=~]?|<(?:<\|?|[=~|-])?|>[>=]?|->?|~>|\|>?>?|[*\/%+?]|\b(?:and|in|or)\b/, punctuation: /[\[\]{}().,;]|:+/, }; var n = [ { pattern: /(^|[^\\])\$\{(?:[^'"{}]|\{[^}]*\}|(["'])(?:(?!\2)[^\\]|\\[\s\S])*\2)+\}/, lookbehind: !0, inside: { 'short-variable': { pattern: /(^\$\{)(?!\w+\()(?:::)?\w+(?:::\w+)*/, lookbehind: !0, alias: 'variable', inside: { punctuation: /::/ }, }, delimiter: { pattern: /^\$/, alias: 'variable' }, rest: e.languages.puppet, }, }, { pattern: /(^|[^\\])\$(?:::)?\w+(?:::\w+)*/, lookbehind: !0, alias: 'variable', inside: { punctuation: /::/ }, }, ]; (e.languages.puppet.heredoc[0].inside.interpolation = n), (e.languages.puppet.string.inside['double-quoted'].inside.interpolation = n); })(Prism); ='n6' href='#n6'>6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
import * as NextImage from 'next/image';
import { ThemeProvider, useTheme } from 'next-themes';
import { useEffect } from 'react';
import { IntlProvider } from 'react-intl';
import { useDarkMode } from 'storybook-dark-mode';
import { DocsContainer } from './overrides/docs-container';
import dark from './themes/dark';
import light from './themes/light';
import '@styles/globals.scss';
const OriginalNextImage = NextImage.default;
Object.defineProperty(NextImage, 'default', {
configurable: true,
value: (props) =>
typeof props.src === 'string' ? (
<OriginalNextImage {...props} unoptimized blurDataURL={props.src} />
) : (
<OriginalNextImage {...props} unoptimized />
),
});
Object.defineProperty(NextImage, '__esModule', {
configurable: true,
value: true,
});
export const parameters = {
actions: { argTypesRegex: '^on[A-Z].*' },
controls: {
matchers: {
color: /(background|color)$/i,
date: /Date$/,
},
},
darkMode: {
// Override the default dark theme
dark: { ...dark },
// Override the default light theme
light: { ...light },
stylePreview: true,
},
docs: {
container: DocsContainer,
},
};
// Create a component that listens for theme change.
export const ThemeWrapper = (props) => {
const { setTheme } = useTheme();
const theme = useDarkMode() ? 'dark' : 'light';
useEffect(() => {
setTheme(theme);
}, [theme, setTheme]);
return <>{props.children}</>;
};
export const decorators = [
(Story) => (
<IntlProvider locale="en">
<ThemeProvider
defaultTheme="system"
enableColorScheme={true}
enableSystem={true}
>
<ThemeWrapper>
<Story />
</ThemeWrapper>
</ThemeProvider>
</IntlProvider>
),
];