{"version":3,"file":"emotion-styled-base.umd.min.js","sources":["../../../../node_modules/@babel/runtime/helpers/esm/extends.js","../../../memoize/src/index.js","../../../is-prop-valid/src/index.js","../../src/utils.js","../../../utils/src/index.js","../../../unitless/src/index.js","../../../serialize/src/index.js","../../../use-insertion-effect-with-fallbacks/src/index.js","../../src/base.js","../../../hash/src/index.js"],"sourcesContent":["export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n return _extends.apply(this, arguments);\n}","// @flow\n\nexport default function memoize(fn: string => V): string => V {\n const cache = Object.create(null)\n\n return (arg: string) => {\n if (cache[arg] === undefined) cache[arg] = fn(arg)\n return cache[arg]\n }\n}\n","// @flow\nimport memoize from '@emotion/memoize'\n\ndeclare var codegen: { require: string => RegExp }\n\nconst reactPropsRegex = codegen.require('./props')\n\n// https://esbench.com/bench/5bfee68a4cd7e6009ef61d23\nconst isPropValid = /* #__PURE__ */ memoize(\n prop =>\n reactPropsRegex.test(prop) ||\n (prop.charCodeAt(0) === 111 /* o */ &&\n prop.charCodeAt(1) === 110 /* n */ &&\n prop.charCodeAt(2) < 91) /* Z+1 */\n)\n\nexport default isPropValid\n","// @flow\nimport type {\n ElementType,\n StatelessFunctionalComponent,\n AbstractComponent\n} from 'react'\nimport isPropValid from '@emotion/is-prop-valid'\n\nexport type Interpolations = Array\n\nexport type StyledElementType =\n | string\n | AbstractComponent<{ ...Props, className: string }, mixed>\n\nexport type StyledOptions = {\n label?: string,\n shouldForwardProp?: string => boolean,\n target?: string\n}\n\nexport type StyledComponent = StatelessFunctionalComponent & {\n defaultProps: any,\n toString: () => string,\n withComponent: (\n nextTag: StyledElementType,\n nextOptions?: StyledOptions\n ) => StyledComponent\n}\n\nexport type PrivateStyledComponent = StyledComponent & {\n __emotion_real: StyledComponent,\n __emotion_base: any,\n __emotion_styles: any,\n __emotion_forwardProp: any\n}\n\nconst testOmitPropsOnStringTag = isPropValid\nconst testOmitPropsOnComponent = (key: string) => key !== 'theme'\n\nexport const getDefaultShouldForwardProp = (tag: ElementType) =>\n typeof tag === 'string' &&\n // 96 is one less than the char code\n // for \"a\" so this is checking that\n // it's a lowercase character\n tag.charCodeAt(0) > 96\n ? testOmitPropsOnStringTag\n : testOmitPropsOnComponent\n\nexport const composeShouldForwardProps = (\n tag: PrivateStyledComponent,\n options: StyledOptions | void,\n isReal: boolean\n) => {\n let shouldForwardProp\n if (options) {\n const optionsShouldForwardProp = options.shouldForwardProp\n shouldForwardProp =\n tag.__emotion_forwardProp && optionsShouldForwardProp\n ? (propName: string) =>\n tag.__emotion_forwardProp(propName) &&\n optionsShouldForwardProp(propName)\n : optionsShouldForwardProp\n }\n\n if (typeof shouldForwardProp !== 'function' && isReal) {\n shouldForwardProp = tag.__emotion_forwardProp\n }\n\n return shouldForwardProp\n}\n\nexport type CreateStyledComponent = (\n ...args: Interpolations\n) => StyledComponent\n\nexport type CreateStyled = {\n (\n tag: StyledElementType,\n options?: StyledOptions\n ): (...args: Interpolations) => StyledComponent,\n [key: string]: CreateStyledComponent,\n bind: () => CreateStyled\n}\n","// @flow\nimport type { RegisteredCache, EmotionCache, SerializedStyles } from './types'\n\nconst isBrowser = typeof document !== 'undefined'\n\nexport function getRegisteredStyles(\n registered: RegisteredCache,\n registeredStyles: string[],\n classNames: string\n) {\n let rawClassName = ''\n\n classNames.split(' ').forEach(className => {\n if (registered[className] !== undefined) {\n registeredStyles.push(`${registered[className]};`)\n } else {\n rawClassName += `${className} `\n }\n })\n return rawClassName\n}\n\nexport const registerStyles = (\n cache: EmotionCache,\n serialized: SerializedStyles,\n isStringTag: boolean\n) => {\n let className = `${cache.key}-${serialized.name}`\n if (\n // we only need to add the styles to the registered cache if the\n // class name could be used further down\n // the tree but if it's a string tag, we know it won't\n // so we don't have to add it to registered cache.\n // this improves memory usage since we can avoid storing the whole style string\n (isStringTag === false ||\n // we need to always store it if we're in compat mode and\n // in node since emotion-server relies on whether a style is in\n // the registered cache to know whether a style is global or not\n // also, note that this check will be dead code eliminated in the browser\n (isBrowser === false && cache.compat !== undefined)) &&\n cache.registered[className] === undefined\n ) {\n cache.registered[className] = serialized.styles\n }\n}\n\nexport const insertStyles = (\n cache: EmotionCache,\n serialized: SerializedStyles,\n isStringTag: boolean\n) => {\n registerStyles(cache, serialized, isStringTag)\n\n let className = `${cache.key}-${serialized.name}`\n\n if (cache.inserted[serialized.name] === undefined) {\n let stylesForSSR = ''\n let current = serialized\n do {\n let maybeStyles = cache.insert(\n serialized === current ? `.${className}` : '',\n current,\n cache.sheet,\n true\n )\n if (!isBrowser && maybeStyles !== undefined) {\n stylesForSSR += maybeStyles\n }\n current = current.next\n } while (current !== undefined)\n if (!isBrowser && stylesForSSR.length !== 0) {\n return stylesForSSR\n }\n }\n}\n\nexport * from './types'\n","// @flow\n\nlet unitlessKeys: { [key: string]: 1 } = {\n animationIterationCount: 1,\n aspectRatio: 1,\n borderImageOutset: 1,\n borderImageSlice: 1,\n borderImageWidth: 1,\n boxFlex: 1,\n boxFlexGroup: 1,\n boxOrdinalGroup: 1,\n columnCount: 1,\n columns: 1,\n flex: 1,\n flexGrow: 1,\n flexPositive: 1,\n flexShrink: 1,\n flexNegative: 1,\n flexOrder: 1,\n gridRow: 1,\n gridRowEnd: 1,\n gridRowSpan: 1,\n gridRowStart: 1,\n gridColumn: 1,\n gridColumnEnd: 1,\n gridColumnSpan: 1,\n gridColumnStart: 1,\n msGridRow: 1,\n msGridRowSpan: 1,\n msGridColumn: 1,\n msGridColumnSpan: 1,\n fontWeight: 1,\n lineHeight: 1,\n opacity: 1,\n order: 1,\n orphans: 1,\n tabSize: 1,\n widows: 1,\n zIndex: 1,\n zoom: 1,\n WebkitLineClamp: 1,\n\n // SVG-related properties\n fillOpacity: 1,\n floodOpacity: 1,\n stopOpacity: 1,\n strokeDasharray: 1,\n strokeDashoffset: 1,\n strokeMiterlimit: 1,\n strokeOpacity: 1,\n strokeWidth: 1\n}\n\nexport default unitlessKeys\n","// @flow\nimport type {\n Interpolation,\n SerializedStyles,\n RegisteredCache\n} from '@emotion/utils'\nimport hashString from '@emotion/hash'\nimport unitless from '@emotion/unitless'\nimport memoize from '@emotion/memoize'\n\nconst ILLEGAL_ESCAPE_SEQUENCE_ERROR = `You have illegal escape sequence in your template literal, most likely inside content's property value.\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \"content: '\\\\00d7';\" should become \"content: '\\\\\\\\00d7';\".\nYou can read more about this here:\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences`\n\nconst UNDEFINED_AS_OBJECT_KEY_ERROR =\n \"You have passed in falsy value as style object's key (can happen when in example you pass unexported component as computed key).\"\n\nlet hyphenateRegex = /[A-Z]|^ms/g\nlet animationRegex = /_EMO_([^_]+?)_([^]*?)_EMO_/g\n\nconst isCustomProperty = (property: string) => property.charCodeAt(1) === 45\nconst isProcessableValue = value => value != null && typeof value !== 'boolean'\n\nconst processStyleName = /* #__PURE__ */ memoize((styleName: string) =>\n isCustomProperty(styleName)\n ? styleName\n : styleName.replace(hyphenateRegex, '-$&').toLowerCase()\n)\n\nlet processStyleValue = (\n key: string,\n value: string | number\n): string | number => {\n switch (key) {\n case 'animation':\n case 'animationName': {\n if (typeof value === 'string') {\n return value.replace(animationRegex, (match, p1, p2) => {\n cursor = {\n name: p1,\n styles: p2,\n next: cursor\n }\n return p1\n })\n }\n }\n }\n\n if (\n unitless[key] !== 1 &&\n !isCustomProperty(key) &&\n typeof value === 'number' &&\n value !== 0\n ) {\n return value + 'px'\n }\n return value\n}\n\nif (process.env.NODE_ENV !== 'production') {\n let contentValuePattern =\n /(var|attr|counters?|url|element|(((repeating-)?(linear|radial))|conic)-gradient)\\(|(no-)?(open|close)-quote/\n let contentValues = ['normal', 'none', 'initial', 'inherit', 'unset']\n\n let oldProcessStyleValue = processStyleValue\n\n let msPattern = /^-ms-/\n let hyphenPattern = /-(.)/g\n\n let hyphenatedCache = {}\n\n processStyleValue = (key: string, value: string) => {\n if (key === 'content') {\n if (\n typeof value !== 'string' ||\n (contentValues.indexOf(value) === -1 &&\n !contentValuePattern.test(value) &&\n (value.charAt(0) !== value.charAt(value.length - 1) ||\n (value.charAt(0) !== '\"' && value.charAt(0) !== \"'\")))\n ) {\n throw new Error(\n `You seem to be using a value for 'content' without quotes, try replacing it with \\`content: '\"${value}\"'\\``\n )\n }\n }\n\n const processed = oldProcessStyleValue(key, value)\n\n if (\n processed !== '' &&\n !isCustomProperty(key) &&\n key.indexOf('-') !== -1 &&\n hyphenatedCache[key] === undefined\n ) {\n hyphenatedCache[key] = true\n console.error(\n `Using kebab-case for css properties in objects is not supported. Did you mean ${key\n .replace(msPattern, 'ms-')\n .replace(hyphenPattern, (str, char) => char.toUpperCase())}?`\n )\n }\n\n return processed\n }\n}\n\nconst noComponentSelectorMessage =\n 'Component selectors can only be used in conjunction with ' +\n '@emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware ' +\n 'compiler transform.'\n\nfunction handleInterpolation(\n mergedProps: void | Object,\n registered: RegisteredCache | void,\n interpolation: Interpolation\n): string | number {\n if (interpolation == null) {\n return ''\n }\n if (interpolation.__emotion_styles !== undefined) {\n if (\n process.env.NODE_ENV !== 'production' &&\n interpolation.toString() === 'NO_COMPONENT_SELECTOR'\n ) {\n throw new Error(noComponentSelectorMessage)\n }\n return interpolation\n }\n\n switch (typeof interpolation) {\n case 'boolean': {\n return ''\n }\n case 'object': {\n if (interpolation.anim === 1) {\n cursor = {\n name: interpolation.name,\n styles: interpolation.styles,\n next: cursor\n }\n\n return interpolation.name\n }\n if (interpolation.styles !== undefined) {\n let next = interpolation.next\n if (next !== undefined) {\n // not the most efficient thing ever but this is a pretty rare case\n // and there will be very few iterations of this generally\n while (next !== undefined) {\n cursor = {\n name: next.name,\n styles: next.styles,\n next: cursor\n }\n next = next.next\n }\n }\n let styles = `${interpolation.styles};`\n if (\n process.env.NODE_ENV !== 'production' &&\n interpolation.map !== undefined\n ) {\n styles += interpolation.map\n }\n\n return styles\n }\n\n return createStringFromObject(mergedProps, registered, interpolation)\n }\n case 'function': {\n if (mergedProps !== undefined) {\n let previousCursor = cursor\n let result = interpolation(mergedProps)\n cursor = previousCursor\n\n return handleInterpolation(mergedProps, registered, result)\n } else if (process.env.NODE_ENV !== 'production') {\n console.error(\n 'Functions that are interpolated in css calls will be stringified.\\n' +\n 'If you want to have a css call based on props, create a function that returns a css call like this\\n' +\n 'let dynamicStyle = (props) => css`color: ${props.color}`\\n' +\n 'It can be called directly with props or interpolated in a styled call like this\\n' +\n \"let SomeComponent = styled('div')`${dynamicStyle}`\"\n )\n }\n break\n }\n case 'string':\n if (process.env.NODE_ENV !== 'production') {\n const matched = []\n const replaced = interpolation.replace(\n animationRegex,\n (match, p1, p2) => {\n const fakeVarName = `animation${matched.length}`\n matched.push(\n `const ${fakeVarName} = keyframes\\`${p2.replace(\n /^@keyframes animation-\\w+/,\n ''\n )}\\``\n )\n return `\\${${fakeVarName}}`\n }\n )\n if (matched.length) {\n console.error(\n '`keyframes` output got interpolated into plain string, please wrap it with `css`.\\n\\n' +\n 'Instead of doing this:\\n\\n' +\n [...matched, `\\`${replaced}\\``].join('\\n') +\n '\\n\\nYou should wrap it with `css` like this:\\n\\n' +\n `css\\`${replaced}\\``\n )\n }\n }\n break\n }\n\n // finalize string values (regular strings and functions interpolated into css calls)\n if (registered == null) {\n return interpolation\n }\n const cached = registered[interpolation]\n return cached !== undefined ? cached : interpolation\n}\n\nfunction createStringFromObject(\n mergedProps: void | Object,\n registered: RegisteredCache | void,\n obj: { [key: string]: Interpolation }\n): string {\n let string = ''\n\n if (Array.isArray(obj)) {\n for (let i = 0; i < obj.length; i++) {\n string += `${handleInterpolation(mergedProps, registered, obj[i])};`\n }\n } else {\n for (let key in obj) {\n let value = obj[key]\n if (typeof value !== 'object') {\n if (registered != null && registered[value] !== undefined) {\n string += `${key}{${registered[value]}}`\n } else if (isProcessableValue(value)) {\n string += `${processStyleName(key)}:${processStyleValue(key, value)};`\n }\n } else {\n if (\n key === 'NO_COMPONENT_SELECTOR' &&\n process.env.NODE_ENV !== 'production'\n ) {\n throw new Error(noComponentSelectorMessage)\n }\n if (\n Array.isArray(value) &&\n typeof value[0] === 'string' &&\n (registered == null || registered[value[0]] === undefined)\n ) {\n for (let i = 0; i < value.length; i++) {\n if (isProcessableValue(value[i])) {\n string += `${processStyleName(key)}:${processStyleValue(\n key,\n value[i]\n )};`\n }\n }\n } else {\n const interpolated = handleInterpolation(\n mergedProps,\n registered,\n value\n )\n switch (key) {\n case 'animation':\n case 'animationName': {\n string += `${processStyleName(key)}:${interpolated};`\n break\n }\n default: {\n if (\n process.env.NODE_ENV !== 'production' &&\n key === 'undefined'\n ) {\n console.error(UNDEFINED_AS_OBJECT_KEY_ERROR)\n }\n string += `${key}{${interpolated}}`\n }\n }\n }\n }\n }\n }\n\n return string\n}\n\nlet labelPattern = /label:\\s*([^\\s;\\n{]+)\\s*(;|$)/g\n\nlet sourceMapPattern\nif (process.env.NODE_ENV !== 'production') {\n sourceMapPattern =\n /\\/\\*#\\ssourceMappingURL=data:application\\/json;\\S+\\s+\\*\\//g\n}\n\n// this is the cursor for keyframes\n// keyframes are stored on the SerializedStyles object as a linked list\nlet cursor\n\nexport const serializeStyles = function (\n args: Array,\n registered: RegisteredCache | void,\n mergedProps: void | Object\n): SerializedStyles {\n if (\n args.length === 1 &&\n typeof args[0] === 'object' &&\n args[0] !== null &&\n args[0].styles !== undefined\n ) {\n return args[0]\n }\n let stringMode = true\n let styles = ''\n\n cursor = undefined\n let strings = args[0]\n if (strings == null || strings.raw === undefined) {\n stringMode = false\n styles += handleInterpolation(mergedProps, registered, strings)\n } else {\n if (process.env.NODE_ENV !== 'production' && strings[0] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR)\n }\n styles += strings[0]\n }\n // we start at 1 since we've already handled the first arg\n for (let i = 1; i < args.length; i++) {\n styles += handleInterpolation(mergedProps, registered, args[i])\n if (stringMode) {\n if (process.env.NODE_ENV !== 'production' && strings[i] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR)\n }\n styles += strings[i]\n }\n }\n let sourceMap\n\n if (process.env.NODE_ENV !== 'production') {\n styles = styles.replace(sourceMapPattern, match => {\n sourceMap = match\n return ''\n })\n }\n\n // using a global regex with .exec is stateful so lastIndex has to be reset each time\n labelPattern.lastIndex = 0\n let identifierName = ''\n\n let match\n // https://esbench.com/bench/5b809c2cf2949800a0f61fb5\n while ((match = labelPattern.exec(styles)) !== null) {\n identifierName +=\n '-' +\n // $FlowFixMe we know it's not null\n match[1]\n }\n\n let name = hashString(styles) + identifierName\n\n if (process.env.NODE_ENV !== 'production') {\n // $FlowFixMe SerializedStyles type doesn't have toString property (and we don't want to add it)\n return {\n name,\n styles,\n map: sourceMap,\n next: cursor,\n toString() {\n return \"You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).\"\n }\n }\n }\n return {\n name,\n styles,\n next: cursor\n }\n}\n","import * as React from 'react'\n\nconst isBrowser = typeof document !== 'undefined'\n\nconst syncFallback = create => create()\n\nconst useInsertionEffect = React['useInsertion' + 'Effect']\n ? React['useInsertion' + 'Effect']\n : false\n\nexport const useInsertionEffectAlwaysWithSyncFallback = !isBrowser\n ? syncFallback\n : useInsertionEffect || syncFallback\n\nexport const useInsertionEffectWithLayoutFallback =\n useInsertionEffect || React.useLayoutEffect\n","// @flow\nimport * as React from 'react'\nimport {\n getDefaultShouldForwardProp,\n composeShouldForwardProps,\n type StyledOptions,\n type CreateStyled,\n type PrivateStyledComponent,\n type StyledElementType\n} from './utils'\nimport { withEmotionCache, ThemeContext } from '@emotion/react'\nimport {\n getRegisteredStyles,\n insertStyles,\n registerStyles\n} from '@emotion/utils'\nimport { serializeStyles } from '@emotion/serialize'\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks'\n\nconst ILLEGAL_ESCAPE_SEQUENCE_ERROR = `You have illegal escape sequence in your template literal, most likely inside content's property value.\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \"content: '\\\\00d7';\" should become \"content: '\\\\\\\\00d7';\".\nYou can read more about this here:\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences`\n\nlet isBrowser = typeof document !== 'undefined'\n\nconst Insertion = ({ cache, serialized, isStringTag }) => {\n registerStyles(cache, serialized, isStringTag)\n\n const rules = useInsertionEffectAlwaysWithSyncFallback(() =>\n insertStyles(cache, serialized, isStringTag)\n )\n\n if (!isBrowser && rules !== undefined) {\n let serializedNames = serialized.name\n let next = serialized.next\n while (next !== undefined) {\n serializedNames += ' ' + next.name\n next = next.next\n }\n return (\n \n )\n }\n return null\n}\n\nlet createStyled: CreateStyled = (tag: any, options?: StyledOptions) => {\n if (process.env.NODE_ENV !== 'production') {\n if (tag === undefined) {\n throw new Error(\n 'You are trying to create a styled element with an undefined component.\\nYou may have forgotten to import it.'\n )\n }\n }\n const isReal = tag.__emotion_real === tag\n const baseTag = (isReal && tag.__emotion_base) || tag\n\n let identifierName\n let targetClassName\n if (options !== undefined) {\n identifierName = options.label\n targetClassName = options.target\n }\n\n const shouldForwardProp = composeShouldForwardProps(tag, options, isReal)\n const defaultShouldForwardProp =\n shouldForwardProp || getDefaultShouldForwardProp(baseTag)\n const shouldUseAs = !defaultShouldForwardProp('as')\n\n return function (): PrivateStyledComponent {\n let args = arguments\n let styles =\n isReal && tag.__emotion_styles !== undefined\n ? tag.__emotion_styles.slice(0)\n : []\n\n if (identifierName !== undefined) {\n styles.push(`label:${identifierName};`)\n }\n if (args[0] == null || args[0].raw === undefined) {\n styles.push.apply(styles, args)\n } else {\n if (process.env.NODE_ENV !== 'production' && args[0][0] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR)\n }\n styles.push(args[0][0])\n let len = args.length\n let i = 1\n for (; i < len; i++) {\n if (process.env.NODE_ENV !== 'production' && args[0][i] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR)\n }\n styles.push(args[i], args[0][i])\n }\n }\n\n // $FlowFixMe: we need to cast StatelessFunctionalComponent to our PrivateStyledComponent class\n const Styled: PrivateStyledComponent = withEmotionCache(\n (props, cache, ref) => {\n const FinalTag = (shouldUseAs && props.as) || baseTag\n\n let className = ''\n let classInterpolations = []\n let mergedProps = props\n if (props.theme == null) {\n mergedProps = {}\n for (let key in props) {\n mergedProps[key] = props[key]\n }\n mergedProps.theme = React.useContext(ThemeContext)\n }\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(\n cache.registered,\n classInterpolations,\n props.className\n )\n } else if (props.className != null) {\n className = `${props.className} `\n }\n\n const serialized = serializeStyles(\n styles.concat(classInterpolations),\n cache.registered,\n mergedProps\n )\n className += `${cache.key}-${serialized.name}`\n if (targetClassName !== undefined) {\n className += ` ${targetClassName}`\n }\n\n const finalShouldForwardProp =\n shouldUseAs && shouldForwardProp === undefined\n ? getDefaultShouldForwardProp(FinalTag)\n : defaultShouldForwardProp\n\n let newProps = {}\n\n for (let key in props) {\n if (shouldUseAs && key === 'as') continue\n\n if (\n // $FlowFixMe\n finalShouldForwardProp(key)\n ) {\n newProps[key] = props[key]\n }\n }\n\n newProps.className = className\n newProps.ref = ref\n\n return (\n <>\n \n \n \n )\n }\n )\n\n Styled.displayName =\n identifierName !== undefined\n ? identifierName\n : `Styled(${\n typeof baseTag === 'string'\n ? baseTag\n : baseTag.displayName || baseTag.name || 'Component'\n })`\n\n Styled.defaultProps = tag.defaultProps\n Styled.__emotion_real = Styled\n Styled.__emotion_base = baseTag\n Styled.__emotion_styles = styles\n Styled.__emotion_forwardProp = shouldForwardProp\n\n Object.defineProperty(Styled, 'toString', {\n value() {\n if (\n targetClassName === undefined &&\n process.env.NODE_ENV !== 'production'\n ) {\n return 'NO_COMPONENT_SELECTOR'\n }\n // $FlowFixMe: coerce undefined to string\n return `.${targetClassName}`\n }\n })\n\n Styled.withComponent = (\n nextTag: StyledElementType,\n nextOptions?: StyledOptions\n ) => {\n return createStyled(nextTag, {\n ...options,\n // $FlowFixMe\n ...nextOptions,\n shouldForwardProp: composeShouldForwardProps(Styled, nextOptions, true)\n })(...styles)\n }\n\n return Styled\n }\n}\n\nexport default createStyled\n","// @flow\n/* eslint-disable */\n// Inspired by https://github.com/garycourt/murmurhash-js\n// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86\n\nexport default function murmur2(str: string) {\n // 'm' and 'r' are mixing constants generated offline.\n // They're not really 'magic', they just happen to work well.\n\n // const m = 0x5bd1e995;\n // const r = 24;\n\n // Initialize the hash\n\n var h = 0\n\n // Mix 4 bytes at a time into the hash\n\n var k,\n i = 0,\n len = str.length\n for (; len >= 4; ++i, len -= 4) {\n k =\n (str.charCodeAt(i) & 0xff) |\n ((str.charCodeAt(++i) & 0xff) << 8) |\n ((str.charCodeAt(++i) & 0xff) << 16) |\n ((str.charCodeAt(++i) & 0xff) << 24)\n\n k =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + (((k >>> 16) * 0xe995) << 16)\n k ^= /* k >>> r: */ k >>> 24\n\n h =\n /* Math.imul(k, m): */\n ((k & 0xffff) * 0x5bd1e995 + (((k >>> 16) * 0xe995) << 16)) ^\n /* Math.imul(h, m): */\n ((h & 0xffff) * 0x5bd1e995 + (((h >>> 16) * 0xe995) << 16))\n }\n\n // Handle the last few bytes of the input array\n\n switch (len) {\n case 3:\n h ^= (str.charCodeAt(i + 2) & 0xff) << 16\n case 2:\n h ^= (str.charCodeAt(i + 1) & 0xff) << 8\n case 1:\n h ^= str.charCodeAt(i) & 0xff\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + (((h >>> 16) * 0xe995) << 16)\n }\n\n // Do a few final mixes of the hash to ensure the last few\n // bytes are well-incorporated.\n\n h ^= h >>> 13\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + (((h >>> 16) * 0xe995) << 16)\n\n return ((h ^ (h >>> 15)) >>> 0).toString(36)\n}\n"],"names":["_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","this","memoize","fn","cache","create","arg","undefined","reactPropsRegex","testOmitPropsOnStringTag","prop","test","charCodeAt","testOmitPropsOnComponent","getDefaultShouldForwardProp","tag","composeShouldForwardProps","options","isReal","shouldForwardProp","optionsShouldForwardProp","__emotion_forwardProp","propName","registerStyles","serialized","isStringTag","className","name","registered","styles","unitlessKeys","animationIterationCount","aspectRatio","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","columns","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","msGridRow","msGridRowSpan","msGridColumn","msGridColumnSpan","fontWeight","lineHeight","opacity","order","orphans","tabSize","widows","zIndex","zoom","WebkitLineClamp","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","strokeWidth","hyphenateRegex","animationRegex","isCustomProperty","property","isProcessableValue","value","processStyleName","styleName","replace","toLowerCase","processStyleValue","match","p1","p2","cursor","next","unitless","handleInterpolation","mergedProps","interpolation","__emotion_styles","anim","obj","string","Array","isArray","interpolated","createStringFromObject","previousCursor","result","cached","labelPattern","useInsertionEffectAlwaysWithSyncFallback","React","Insertion","_ref","inserted","current","insert","sheet","insertStyles","createStyled","identifierName","targetClassName","__emotion_real","baseTag","__emotion_base","label","defaultShouldForwardProp","shouldUseAs","args","slice","push","raw","len","Styled","withEmotionCache","props","ref","registeredStyles","classNames","rawClassName","FinalTag","as","classInterpolations","theme","useContext","ThemeContext","split","forEach","stringMode","strings","lastIndex","exec","str","k","h","toString","hashString","serializeStyles","concat","finalShouldForwardProp","newProps","createElement","Fragment","displayName","defaultProps","defineProperty","withComponent","nextTag","nextOptions"],"mappings":"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"}