UNPKG

@wordpress/components

Version:
8 lines (7 loc) 1.77 kB
{ "version": 3, "sources": ["../../src/theme/index.tsx"], "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\n\nimport { colorVariables, Wrapper } from './styles';\nimport { generateThemeVariables } from './color-algorithms';\nimport { useCx } from '../utils';\n\n/**\n * `Theme` allows defining theme variables for components in the `@wordpress/components` package.\n *\n * Multiple `Theme` components can be nested in order to override specific theme variables.\n *\n *\n * ```jsx\n * const Example = () => {\n * return (\n * <Theme accent=\"red\">\n * <Button variant=\"primary\">I'm red</Button>\n * <Theme accent=\"blue\">\n * <Button variant=\"primary\">I'm blue</Button>\n * </Theme>\n * </Theme>\n * );\n * };\n * ```\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction Theme({\n accent,\n background,\n className,\n ...props\n}) {\n const cx = useCx();\n const classes = useMemo(() => cx(...colorVariables(generateThemeVariables({\n accent,\n background\n })), className), [accent, background, className, cx]);\n return /*#__PURE__*/_jsx(Wrapper, {\n className: classes,\n ...props\n });\n}\nexport default Theme;"], "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,qBAAwB;AAMxB,oBAAwC;AACxC,8BAAuC;AACvC,mBAAsB;AAqBtB,yBAA4B;AAC5B,SAAS,MAAM;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAAG;AACD,QAAM,SAAK,oBAAM;AACjB,QAAM,cAAU,wBAAQ,MAAM,GAAG,OAAG,kCAAe,gDAAuB;AAAA,IACxE;AAAA,IACA;AAAA,EACF,CAAC,CAAC,GAAG,SAAS,GAAG,CAAC,QAAQ,YAAY,WAAW,EAAE,CAAC;AACpD,SAAoB,uCAAAA,KAAK,uBAAS;AAAA,IAChC,WAAW;AAAA,IACX,GAAG;AAAA,EACL,CAAC;AACH;AACA,IAAO,gBAAQ;", "names": ["_jsx"] }