{"version":3,"sources":["../node_modules/styled-components/node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.browser.esm.js","../../src/constants.js","../../src/sheet/Rehydration.js","../../src/sheet/Tag.js","../../src/sheet/Sheet.js","../../src/utils/isStaticRules.js","../../src/models/Keyframes.js","../../src/models/StyledComponent.js","../../src/models/GlobalStyle.js","../../src/models/ServerStyleSheet.js","../../src/utils/interleave.js","../../src/utils/isPlainObject.js","../../src/utils/empties.js","../../src/utils/isFunction.js","../../src/utils/getComponentName.js","../../src/utils/isStyledComponent.js","../../src/utils/error.js","../../src/sheet/GroupedTag.js","../../src/sheet/GroupIDAllocator.js","../../src/utils/nonce.js","../../src/sheet/dom.js","../../src/utils/generateAlphabeticName.js","../../src/utils/hash.js","../../src/models/ComponentStyle.js","../../src/utils/stylis.js","../../src/utils/stylisPluginInsertRule.js","../../src/models/StyleSheetManager.js","../../src/utils/hyphenateStyleName.js","../../src/utils/flatten.js","../../src/utils/isStatelessFunction.js","../../src/utils/addUnitIfNeeded.js","../../src/constructors/css.js","../../src/utils/checkDynamicCreation.js","../../src/utils/determineTheme.js","../../src/utils/escape.js","../../src/utils/generateComponentId.js","../../src/utils/isTag.js","../../src/utils/mixinDeep.js","../../src/models/ThemeProvider.js","../../src/utils/generateDisplayName.js","../../src/utils/joinStrings.js","../../src/utils/domElements.js","../../src/constructors/styled.js","../../src/constructors/constructWithOptions.js","../../src/base.js"],"names":["reactPropsRegex","isPropValid","memoize","prop","test","charCodeAt","nodes","insertRule","server","n","names","gs","undefined","id","options","flatten","React","strings","interpolations","result","i","len","length","push","x","toString","Object","prototype","call","typeOf","EMPTY_ARRAY","freeze","EMPTY_OBJECT","isFunction","getComponentName","target","displayName","name","isStyledComponent","styledComponentId","SC_ATTR","process","REACT_APP_SC_ATTR","IS_BROWSER","window","DISABLE_SPEEDY","Boolean","SC_DISABLE_SPEEDY","REACT_APP_SC_DISABLE_SPEEDY","throwStyledComponentsError","code","Error","join","DefaultGroupedTag","tag","groupSizes","Uint32Array","indexOfGroup","group","index","this","insertRules","rules","oldBuffer","oldSize","newSize","throwStyledError","set","ruleIndex","l","clearGroup","startIndex","endIndex","deleteRule","getGroup","css","getRule","groupIDRegister","Map","reverseRegister","nextFreeGroup","getGroupForId","has","get","getIdForGroup","setGroupForId","SELECTOR","MARKER_RE","RegExp","rehydrateNamesFromContent","sheet","content","split","registerName","rehydrateSheetFromTag","style","parts","textContent","part","trim","marker","match","parseInt","getTag","getNonce","__webpack_nonce__","makeStyleTag","head","document","parent","createElement","prevStyle","childNodes","child","nodeType","hasAttribute","nextSibling","setAttribute","__VERSION__","nonce","insertBefore","CSSOMTag","element","appendChild","createTextNode","styleSheets","ownerNode","rule","_error","cssRules","cssText","TextTag","node","refNode","removeChild","VirtualTag","_target","splice","t","SHOULD_REHYDRATE","defaultOptions","isServer","useCSSOMInjection","StyleSheet","globalStyles","querySelectorAll","getAttribute","parentNode","registerId","reconstructWithOptions","withNames","allocateGSInstance","hasNameForId","add","groupNames","Set","clearNames","clear","clearRules","clearTag","size","selector","forEach","AD_REPLACER_R","getAlphabeticChar","String","fromCharCode","generateAlphabeticName","Math","abs","replace","phash","h","hash","isStaticRules","SEED","ComponentStyle","componentId","baseStyle","staticRulesId","isStatic","NODE_ENV","baseHash","generateAndInjectStyles","executionContext","styleSheet","stylis","cssStatic","generateName","cssStaticFormatted","dynamicHash","partRule","partChunk","partString","Array","isArray","cssFormatted","COMMENT_REGEX","COMPLEX_SELECTOR_PREFIX","createStylisInstance","_componentId","_selector","_selectorRegexp","_consecutiveSelfRefRegExp","plugins","Stylis","parsingRules","parseRulesPlugin","toSheet","block","e","context","selectors","parents","line","column","ns","depth","at","delimiter","selfReferenceReplacer","offset","string","indexOf","stringifyRules","prefix","flatCSS","cssStr","use","_","lastIndexOf","parsedRules","reduce","acc","plugin","StyleSheetContext","createContext","StylisContext","Consumer","masterSheet","masterStylis","useStyleSheet","useContext","useStylis","StyleSheetManager","props","useState","stylisPlugins","setPlugins","contextStyleSheet","useMemo","disableCSSOMInjection","disableVendorPrefixes","useEffect","shallowequal","Provider","value","children","Keyframes","inject","stylisInstance","resolvedName","_this","getName","uppercaseCheck","uppercasePattern","msPattern","prefixAndLowerCase","char","toLowerCase","hyphenateStyleName","isFalsish","chunk","ruleSet","isReactComponent","isPlainObject","objToCssArray","obj","prevKey","key","hasOwnProperty","isCss","hyphenate","unitless","addTag","arg","styles","interleave","originalConsoleError","providedTheme","defaultProps","theme","escapeRegex","dashesAtEnds","escape","str","isTag","isObject","val","isValidKey","mixin","mixinDeep","rest","ThemeContext","ThemeProvider","outerTheme","themeContext","identifiers","createStyledComponent","isTargetStyledComp","isCompositeComponent","attrs","parentComponentId","generateComponentId","finalAttrs","concat","filter","shouldForwardProp","filterFn","elementToBeCreated","WrappedStyledComponent","componentStyle","forwardRef","ref","forwardedComponent","forwardedRef","componentAttrs","foldedComponentIds","resolvedAttrs","a","b","resolvedAttrDef","attrDef","determineTheme","generatedClassName","warnTooManyClasses","refToForward","$as","as","isTargetTag","computedProps","propsForElement","validAttr","className","withComponent","previousComponentId","optionsToCopy","newComponentId","defineProperty","_foldedDefaultProps","merge","hoist","styled","constructWithOptions","componentConstructor","isValidElementType","templateFunction","withConfig","config","StyledComponent","domElement","GlobalStyle","createStyles","instance","removeStyles","renderStyles","ServerStyleSheet","_emitSheetCSS","SC_ATTR_VERSION","getStyleTags","sealed","getStyleElement","dangerouslySetInnerHTML","__html","seal","collectStyles","interleaveWithNodeStream","input"],"mappings":"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AAO9Q,aAGxDsT,EDzBO9S,CAAqCiT,GAAiBjT,IDJvD,CACb,IACA,OACA,UACA,OACA,UACA,QACA,QACA,IACA,OACA,MACA,MACA,MACA,aACA,OACA,KACA,SACA,SACA,UACA,OACA,OACA,MACA,WACA,OACA,WACA,KACA,MACA,UACA,MACA,SACA,MACA,KACA,KACA,KACA,QACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,OACA,SACA,SACA,KACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,SACA,QACA,SACA,KACA,OACA,OACA,MACA,OACA,UACA,OACA,WACA,OACA,QACA,MACA,WACA,SACA,KACA,WACA,SACA,SACA,IACA,QACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,SACA,UACA,SACA,QACA,SACA,OACA,SACA,QACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,QACA,KACA,QACA,OACA,QACA,KACA,QACA,IACA,KACA,MACA,QACA,MAGA,SACA,WACA,OACA,UACA,gBACA,IACA,QACA,OACA,iBACA,SACA,OACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,MACA,OACA,WACA,SCnIU4G,SAAQ,YAClB8L,GAAOQ,GAAcR,GAAOQ,OlCLTC,sBAOP3S,EAAgBmH,QACrBnH,MAAQA,OACRmH,YAAcA,OACdG,SAAWN,EAAchH,GAI9BiF,EAAWK,WAAWxF,KAAKqH,YAAc,uBAG3CyL,sBACEC,EACAnL,EACAC,EACAC,OAGM/G,EAAM+G,EADI3K,GAAQ6C,KAAKE,MAAO0H,EAAkBC,EAAYC,GACvCtI,KAAK,IAAK,IAC/BvC,EAAK+C,KAAKqH,YAAc0L,EAG9BlL,EAAW5H,YAAYhD,EAAIA,EAAI8D,MAGjCiS,sBAAaD,EAAkBlL,GAC7BA,EAAW3B,WAAWlG,KAAKqH,YAAc0L,MAG3CE,sBACEF,EACAnL,EACAC,EACAC,GAEIiL,EAAW,GAAG5N,EAAWK,WAAWxF,KAAKqH,YAAc0L,QAGtDC,aAAaD,EAAUlL,QACvBiL,aAAaC,EAAUnL,EAAkBC,EAAYC,IA7CzC+K,ICOAK,wCAYnBC,cAAgB,eACRpS,EAAM2L,EAAKqG,SAASlV,eACrBkD,EAAK,MAAO,OAEX4C,EAAQf,oBACA,CAACe,aAAmBA,MAAa/E,YAAqBwU,+BAC7CpD,OAAO9Q,SAASM,KAAK,SAEfuB,mBAW/BsS,aAAe,kBACT3G,EAAK4G,OACAhT,EAAiB,GAGnBoM,EAAKyG,sBAGdI,gBAAkB,oBACZ7G,EAAK4G,cACAhT,EAAiB,OAGpBmL,UACH7M,GAAU,KRhDc,uBACL8E,UQiDpB8P,wBAAyB,CACvBC,OAAQ/G,EAAKqG,SAASlV,eAIpB8F,EAAQf,WACVe,IACD8H,EAAY9H,MAAQA,GAIhB,CAACvG,+BAAWqO,GAAOkC,IAAI,mBAsDhC+F,KAAO,WACLhH,EAAK4G,WAAS,KAzGTP,SAAW,IAAI5N,EAAW,CAAEF,cAAU,KACtCqO,UAAS,oBAchBK,uBAActH,UACRrM,KAAKsT,OACAhT,EAAiB,GAGnBlD,kBAACoO,IAAkB1J,MAAO9B,KAAK+S,UAAW1G,MAkCnDuH,kCAAyBC,UAEdvT,EAAiB,IAhET4S,GmCwCqB,S","file":"static/js/styled-comp-lib.29b8284e.chunk.js","sourcesContent":["import memoize from '@emotion/memoize';\n\nvar reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|download|draggable|encType|enterKeyHint|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/; // https://esbench.com/bench/5bfee68a4cd7e6009ef61d23\n\nvar isPropValid = /* #__PURE__ */memoize(function (prop) {\n return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111\n /* o */\n && prop.charCodeAt(1) === 110\n /* n */\n && prop.charCodeAt(2) < 91;\n}\n/* Z+1 */\n);\n\nexport default isPropValid;\n","// @flow\n\ndeclare var SC_DISABLE_SPEEDY: ?boolean;\ndeclare var __VERSION__: string;\n\nexport const SC_ATTR: string =\n (typeof process !== 'undefined' && (process.env.REACT_APP_SC_ATTR || process.env.SC_ATTR)) ||\n 'data-styled';\n\nexport const SC_ATTR_ACTIVE = 'active';\nexport const SC_ATTR_VERSION = 'data-styled-version';\nexport const SC_VERSION = __VERSION__;\nexport const SPLITTER = '/*!sc*/\\n';\n\nexport const IS_BROWSER = typeof window !== 'undefined' && 'HTMLElement' in window;\n\nexport const DISABLE_SPEEDY =\n Boolean(typeof SC_DISABLE_SPEEDY === 'boolean'\n ? SC_DISABLE_SPEEDY\n : (typeof process !== 'undefined' && typeof process.env.REACT_APP_SC_DISABLE_SPEEDY !== 'undefined' && process.env.REACT_APP_SC_DISABLE_SPEEDY !== ''\n ? process.env.REACT_APP_SC_DISABLE_SPEEDY === 'false' ? false : process.env.REACT_APP_SC_DISABLE_SPEEDY\n : (typeof process !== 'undefined' && typeof process.env.SC_DISABLE_SPEEDY !== 'undefined' && process.env.SC_DISABLE_SPEEDY !== ''\n ? process.env.SC_DISABLE_SPEEDY === 'false' ? false : process.env.SC_DISABLE_SPEEDY\n : process.env.NODE_ENV !== 'production'\n )\n ));\n\n// Shared empty execution context when generating static styles\nexport const STATIC_EXECUTION_CONTEXT = {};\n","// @flow\n\nimport { SPLITTER, SC_ATTR, SC_ATTR_ACTIVE, SC_ATTR_VERSION, SC_VERSION } from '../constants';\nimport { getIdForGroup, setGroupForId } from './GroupIDAllocator';\nimport type { Sheet } from './types';\n\nconst SELECTOR = `style[${SC_ATTR}][${SC_ATTR_VERSION}=\"${SC_VERSION}\"]`;\nconst MARKER_RE = new RegExp(`^${SC_ATTR}\\\\.g(\\\\d+)\\\\[id=\"([\\\\w\\\\d-]+)\"\\\\].*?\"([^\"]*)`);\n\nexport const outputSheet = (sheet: Sheet) => {\n const tag = sheet.getTag();\n const { length } = tag;\n\n let css = '';\n for (let group = 0; group < length; group++) {\n const id = getIdForGroup(group);\n if (id === undefined) continue;\n\n const names = sheet.names.get(id);\n const rules = tag.getGroup(group);\n if (!names || !rules || !names.size) continue;\n\n const selector = `${SC_ATTR}.g${group}[id=\"${id}\"]`;\n\n let content = '';\n if (names !== undefined) {\n names.forEach(name => {\n if (name.length > 0) {\n content += `${name},`;\n }\n });\n }\n\n // NOTE: It's easier to collect rules and have the marker\n // after the actual rules to simplify the rehydration\n css += `${rules}${selector}{content:\"${content}\"}${SPLITTER}`;\n }\n\n return css;\n};\n\nconst rehydrateNamesFromContent = (sheet: Sheet, id: string, content: string) => {\n const names = content.split(',');\n let name;\n\n for (let i = 0, l = names.length; i < l; i++) {\n // eslint-disable-next-line\n if ((name = names[i])) {\n sheet.registerName(id, name);\n }\n }\n};\n\nconst rehydrateSheetFromTag = (sheet: Sheet, style: HTMLStyleElement) => {\n const parts = (style.textContent || '').split(SPLITTER);\n const rules: string[] = [];\n\n for (let i = 0, l = parts.length; i < l; i++) {\n const part = parts[i].trim();\n if (!part) continue;\n\n const marker = part.match(MARKER_RE);\n\n if (marker) {\n const group = parseInt(marker[1], 10) | 0;\n const id = marker[2];\n\n if (group !== 0) {\n // Rehydrate componentId to group index mapping\n setGroupForId(id, group);\n // Rehydrate names and rules\n // looks like: data-styled.g11[id=\"idA\"]{content:\"nameA,\"}\n rehydrateNamesFromContent(sheet, id, marker[3]);\n sheet.getTag().insertRules(group, rules);\n }\n\n rules.length = 0;\n } else {\n rules.push(part);\n }\n }\n};\n\nexport const rehydrateSheet = (sheet: Sheet) => {\n const nodes = document.querySelectorAll(SELECTOR);\n\n for (let i = 0, l = nodes.length; i < l; i++) {\n const node = ((nodes[i]: any): HTMLStyleElement);\n if (node && node.getAttribute(SC_ATTR) !== SC_ATTR_ACTIVE) {\n rehydrateSheetFromTag(sheet, node);\n\n if (node.parentNode) {\n node.parentNode.removeChild(node);\n }\n }\n }\n};\n","// @flow\n/* eslint-disable no-use-before-define */\n\nimport { makeStyleTag, getSheet } from './dom';\nimport type { SheetOptions, Tag } from './types';\n\n/** Create a CSSStyleSheet-like tag depending on the environment */\nexport const makeTag = ({ isServer, useCSSOMInjection, target }: SheetOptions): Tag => {\n if (isServer) {\n return new VirtualTag(target);\n } else if (useCSSOMInjection) {\n return new CSSOMTag(target);\n } else {\n return new TextTag(target);\n }\n};\n\nexport class CSSOMTag implements Tag {\n element: HTMLStyleElement;\n\n sheet: CSSStyleSheet;\n\n length: number;\n\n constructor(target?: HTMLElement) {\n const element = (this.element = makeStyleTag(target));\n\n // Avoid Edge bug where empty style elements don't create sheets\n element.appendChild(document.createTextNode(''));\n\n this.sheet = getSheet(element);\n this.length = 0;\n }\n\n insertRule(index: number, rule: string): boolean {\n try {\n this.sheet.insertRule(rule, index);\n this.length++;\n return true;\n } catch (_error) {\n return false;\n }\n }\n\n deleteRule(index: number): void {\n this.sheet.deleteRule(index);\n this.length--;\n }\n\n getRule(index: number): string {\n const rule = this.sheet.cssRules[index];\n // Avoid IE11 quirk where cssText is inaccessible on some invalid rules\n if (rule !== undefined && typeof rule.cssText === 'string') {\n return rule.cssText;\n } else {\n return '';\n }\n }\n}\n\n/** A Tag that emulates the CSSStyleSheet API but uses text nodes */\nexport class TextTag implements Tag {\n element: HTMLStyleElement;\n\n nodes: NodeList;\n\n length: number;\n\n constructor(target?: HTMLElement) {\n const element = (this.element = makeStyleTag(target));\n this.nodes = element.childNodes;\n this.length = 0;\n }\n\n insertRule(index: number, rule: string): boolean {\n if (index <= this.length && index >= 0) {\n const node = document.createTextNode(rule);\n const refNode = this.nodes[index];\n this.element.insertBefore(node, refNode || null);\n this.length++;\n return true;\n } else {\n return false;\n }\n }\n\n deleteRule(index: number): void {\n this.element.removeChild(this.nodes[index]);\n this.length--;\n }\n\n getRule(index: number): string {\n if (index < this.length) {\n return this.nodes[index].textContent;\n } else {\n return '';\n }\n }\n}\n\n/** A completely virtual (server-side) Tag that doesn't manipulate the DOM */\nexport class VirtualTag implements Tag {\n rules: string[];\n\n length: number;\n\n constructor(_target?: HTMLElement) {\n this.rules = [];\n this.length = 0;\n }\n\n insertRule(index: number, rule: string): boolean {\n if (index <= this.length) {\n this.rules.splice(index, 0, rule);\n this.length++;\n return true;\n } else {\n return false;\n }\n }\n\n deleteRule(index: number): void {\n this.rules.splice(index, 1);\n this.length--;\n }\n\n getRule(index: number): string {\n if (index < this.length) {\n return this.rules[index];\n } else {\n return '';\n }\n }\n}\n","// @flow\nimport { DISABLE_SPEEDY, IS_BROWSER } from '../constants';\nimport { EMPTY_OBJECT } from '../utils/empties';\nimport { makeGroupedTag } from './GroupedTag';\nimport { getGroupForId } from './GroupIDAllocator';\nimport { outputSheet, rehydrateSheet } from './Rehydration';\nimport { makeTag } from './Tag';\nimport type { GroupedTag, Sheet, SheetOptions } from './types';\n\nlet SHOULD_REHYDRATE = IS_BROWSER;\n\ntype SheetConstructorArgs = {\n isServer?: boolean,\n useCSSOMInjection?: boolean,\n target?: HTMLElement,\n};\n\ntype GlobalStylesAllocationMap = { [key: string]: number };\ntype NamesAllocationMap = Map>;\n\nconst defaultOptions: SheetOptions = {\n isServer: !IS_BROWSER,\n useCSSOMInjection: !DISABLE_SPEEDY,\n};\n\n/** Contains the main stylesheet logic for stringification and caching */\nexport default class StyleSheet implements Sheet {\n gs: GlobalStylesAllocationMap;\n\n names: NamesAllocationMap;\n\n options: SheetOptions;\n\n server: boolean;\n\n tag: void | GroupedTag;\n\n /** Register a group ID to give it an index */\n static registerId(id: string): number {\n return getGroupForId(id);\n }\n\n constructor(\n options: SheetConstructorArgs = EMPTY_OBJECT,\n globalStyles?: GlobalStylesAllocationMap = {},\n names?: NamesAllocationMap\n ) {\n this.options = {\n ...defaultOptions,\n ...options,\n };\n\n this.gs = globalStyles;\n this.names = new Map(names);\n this.server = !!options.isServer;\n\n // We rehydrate only once and use the sheet that is created first\n if (!this.server && IS_BROWSER && SHOULD_REHYDRATE) {\n SHOULD_REHYDRATE = false;\n rehydrateSheet(this);\n }\n }\n\n reconstructWithOptions(options: SheetConstructorArgs, withNames?: boolean = true) {\n return new StyleSheet(\n { ...this.options, ...options },\n this.gs,\n (withNames && this.names) || undefined\n );\n }\n\n allocateGSInstance(id: string) {\n return (this.gs[id] = (this.gs[id] || 0) + 1);\n }\n\n /** Lazily initialises a GroupedTag for when it's actually needed */\n getTag(): GroupedTag {\n return this.tag || (this.tag = makeGroupedTag(makeTag(this.options)));\n }\n\n /** Check whether a name is known for caching */\n hasNameForId(id: string, name: string): boolean {\n return this.names.has(id) && (this.names.get(id): any).has(name);\n }\n\n /** Mark a group's name as known for caching */\n registerName(id: string, name: string) {\n getGroupForId(id);\n\n if (!this.names.has(id)) {\n const groupNames = new Set();\n groupNames.add(name);\n this.names.set(id, groupNames);\n } else {\n (this.names.get(id): any).add(name);\n }\n }\n\n /** Insert new rules which also marks the name as known */\n insertRules(id: string, name: string, rules: string[]) {\n this.registerName(id, name);\n this.getTag().insertRules(getGroupForId(id), rules);\n }\n\n /** Clears all cached names for a given group ID */\n clearNames(id: string) {\n if (this.names.has(id)) {\n (this.names.get(id): any).clear();\n }\n }\n\n /** Clears all rules for a given group ID */\n clearRules(id: string) {\n this.getTag().clearGroup(getGroupForId(id));\n this.clearNames(id);\n }\n\n /** Clears the entire tag which deletes all rules but not its names */\n clearTag() {\n // NOTE: This does not clear the names, since it's only used during SSR\n // so that we can continuously output only new rules\n this.tag = undefined;\n }\n\n /** Outputs the current sheet as a CSS string with markers for SSR */\n toString(): string {\n return outputSheet(this);\n }\n}\n","// @flow\nimport isFunction from './isFunction';\nimport isStyledComponent from './isStyledComponent';\nimport type { RuleSet } from '../types';\n\nexport default function isStaticRules(rules: RuleSet): boolean {\n for (let i = 0; i < rules.length; i += 1) {\n const rule = rules[i];\n\n if (isFunction(rule) && !isStyledComponent(rule)) {\n // functions are allowed to be static if they're just being\n // used to get the classname of a nested styled component\n return false;\n }\n }\n\n return true;\n}\n","// @flow\nimport StyleSheet from '../sheet';\nimport { type Stringifier } from '../types';\nimport throwStyledError from '../utils/error';\nimport { masterStylis } from './StyleSheetManager';\n\nexport default class Keyframes {\n id: string;\n\n name: string;\n\n rules: string;\n\n constructor(name: string, rules: string) {\n this.name = name;\n this.id = `sc-keyframes-${name}`;\n this.rules = rules;\n }\n\n inject = (styleSheet: StyleSheet, stylisInstance: Stringifier = masterStylis) => {\n const resolvedName = this.name + stylisInstance.hash;\n\n if (!styleSheet.hasNameForId(this.id, resolvedName)) {\n styleSheet.insertRules(\n this.id,\n resolvedName,\n stylisInstance(this.rules, resolvedName, '@keyframes')\n );\n }\n };\n\n toString = () => {\n return throwStyledError(12, String(this.name));\n };\n\n getName(stylisInstance: Stringifier = masterStylis) {\n return this.name + stylisInstance.hash;\n }\n}\n","// @flow\nimport validAttr from '@emotion/is-prop-valid';\nimport hoist from 'hoist-non-react-statics';\nimport React, { createElement, type Ref, useContext, useDebugValue } from 'react';\nimport { SC_VERSION } from '../constants';\nimport type {\n Attrs,\n IStyledComponent,\n IStyledStatics,\n RuleSet,\n ShouldForwardProp,\n Target,\n} from '../types';\nimport { checkDynamicCreation } from '../utils/checkDynamicCreation';\nimport createWarnTooManyClasses from '../utils/createWarnTooManyClasses';\nimport determineTheme from '../utils/determineTheme';\nimport { EMPTY_ARRAY, EMPTY_OBJECT } from '../utils/empties';\nimport escape from '../utils/escape';\nimport generateComponentId from '../utils/generateComponentId';\nimport generateDisplayName from '../utils/generateDisplayName';\nimport getComponentName from '../utils/getComponentName';\nimport isFunction from '../utils/isFunction';\nimport isStyledComponent from '../utils/isStyledComponent';\nimport isTag from '../utils/isTag';\nimport joinStrings from '../utils/joinStrings';\nimport merge from '../utils/mixinDeep';\nimport ComponentStyle from './ComponentStyle';\nimport { useStyleSheet, useStylis } from './StyleSheetManager';\nimport { ThemeContext } from './ThemeProvider';\n\nconst identifiers = {};\n\n/* We depend on components having unique IDs */\nfunction generateId(displayName?: string, parentComponentId?: string) {\n const name = typeof displayName !== 'string' ? 'sc' : escape(displayName);\n // Ensure that no displayName can lead to duplicate componentIds\n identifiers[name] = (identifiers[name] || 0) + 1;\n\n const componentId = `${name}-${generateComponentId(\n // SC_VERSION gives us isolation between multiple runtimes on the page at once\n // this is improved further with use of the babel plugin \"namespace\" feature\n SC_VERSION + name + identifiers[name]\n )}`;\n\n return parentComponentId ? `${parentComponentId}-${componentId}` : componentId;\n}\n\nfunction useResolvedAttrs(theme: any = EMPTY_OBJECT, props: Config, attrs: Attrs) {\n // NOTE: can't memoize this\n // returns [context, resolvedAttrs]\n // where resolvedAttrs is only the things injected by the attrs themselves\n const context = { ...props, theme };\n const resolvedAttrs = {};\n\n attrs.forEach(attrDef => {\n let resolvedAttrDef = attrDef;\n let key;\n\n if (isFunction(resolvedAttrDef)) {\n resolvedAttrDef = resolvedAttrDef(context);\n }\n\n /* eslint-disable guard-for-in */\n for (key in resolvedAttrDef) {\n context[key] = resolvedAttrs[key] =\n key === 'className'\n ? joinStrings(resolvedAttrs[key], resolvedAttrDef[key])\n : resolvedAttrDef[key];\n }\n /* eslint-enable guard-for-in */\n });\n\n return [context, resolvedAttrs];\n}\n\nfunction useInjectedStyle(\n componentStyle: ComponentStyle,\n isStatic: boolean,\n resolvedAttrs: T,\n warnTooManyClasses?: $Call\n) {\n const styleSheet = useStyleSheet();\n const stylis = useStylis();\n\n const className = isStatic\n ? componentStyle.generateAndInjectStyles(EMPTY_OBJECT, styleSheet, stylis)\n : componentStyle.generateAndInjectStyles(resolvedAttrs, styleSheet, stylis);\n\n // eslint-disable-next-line react-hooks/rules-of-hooks\n if (process.env.NODE_ENV !== 'production') useDebugValue(className);\n\n if (process.env.NODE_ENV !== 'production' && !isStatic && warnTooManyClasses) {\n warnTooManyClasses(className);\n }\n\n return className;\n}\n\nfunction useStyledComponentImpl(\n forwardedComponent: IStyledComponent,\n props: Object,\n forwardedRef: Ref,\n isStatic: boolean\n) {\n const {\n attrs: componentAttrs,\n componentStyle,\n defaultProps,\n foldedComponentIds,\n shouldForwardProp,\n styledComponentId,\n target,\n } = forwardedComponent;\n\n // eslint-disable-next-line react-hooks/rules-of-hooks\n if (process.env.NODE_ENV !== 'production') useDebugValue(styledComponentId);\n\n // NOTE: the non-hooks version only subscribes to this when !componentStyle.isStatic,\n // but that'd be against the rules-of-hooks. We could be naughty and do it anyway as it\n // should be an immutable value, but behave for now.\n const theme = determineTheme(props, useContext(ThemeContext), defaultProps);\n\n const [context, attrs] = useResolvedAttrs(theme || EMPTY_OBJECT, props, componentAttrs);\n\n const generatedClassName = useInjectedStyle(\n componentStyle,\n isStatic,\n context,\n process.env.NODE_ENV !== 'production' ? forwardedComponent.warnTooManyClasses : undefined\n );\n\n const refToForward = forwardedRef;\n\n const elementToBeCreated: Target = attrs.$as || props.$as || attrs.as || props.as || target;\n\n const isTargetTag = isTag(elementToBeCreated);\n const computedProps = attrs !== props ? { ...props, ...attrs } : props;\n const propsForElement = {};\n\n // eslint-disable-next-line guard-for-in\n for (const key in computedProps) {\n if (key[0] === '$' || key === 'as') continue;\n else if (key === 'forwardedAs') {\n propsForElement.as = computedProps[key];\n } else if (\n shouldForwardProp\n ? shouldForwardProp(key, validAttr, elementToBeCreated)\n : isTargetTag\n ? validAttr(key)\n : true\n ) {\n // Don't pass through non HTML tags through to HTML elements\n propsForElement[key] = computedProps[key];\n }\n }\n\n if (props.style && attrs.style !== props.style) {\n propsForElement.style = { ...props.style, ...attrs.style };\n }\n\n propsForElement.className = Array.prototype\n .concat(\n foldedComponentIds,\n styledComponentId,\n generatedClassName !== styledComponentId ? generatedClassName : null,\n props.className,\n attrs.className\n )\n .filter(Boolean)\n .join(' ');\n\n propsForElement.ref = refToForward;\n\n return createElement(elementToBeCreated, propsForElement);\n}\n\nexport default function createStyledComponent(\n target: $PropertyType,\n options: {\n attrs?: Attrs,\n componentId: string,\n displayName?: string,\n parentComponentId?: string,\n shouldForwardProp?: ShouldForwardProp,\n },\n rules: RuleSet\n) {\n const isTargetStyledComp = isStyledComponent(target);\n const isCompositeComponent = !isTag(target);\n\n const {\n attrs = EMPTY_ARRAY,\n componentId = generateId(options.displayName, options.parentComponentId),\n displayName = generateDisplayName(target),\n } = options;\n\n const styledComponentId =\n options.displayName && options.componentId\n ? `${escape(options.displayName)}-${options.componentId}`\n : options.componentId || componentId;\n\n // fold the underlying StyledComponent attrs up (implicit extend)\n const finalAttrs =\n isTargetStyledComp && ((target: any): IStyledComponent).attrs\n ? Array.prototype.concat(((target: any): IStyledComponent).attrs, attrs).filter(Boolean)\n : attrs;\n\n // eslint-disable-next-line prefer-destructuring\n let shouldForwardProp = options.shouldForwardProp;\n\n if (isTargetStyledComp && target.shouldForwardProp) {\n if (options.shouldForwardProp) {\n // compose nested shouldForwardProp calls\n shouldForwardProp = (prop, filterFn, elementToBeCreated) =>\n ((((target: any): IStyledComponent).shouldForwardProp: any): ShouldForwardProp)(\n prop,\n filterFn,\n elementToBeCreated\n ) &&\n ((options.shouldForwardProp: any): ShouldForwardProp)(prop, filterFn, elementToBeCreated);\n } else {\n // eslint-disable-next-line prefer-destructuring\n shouldForwardProp = ((target: any): IStyledComponent).shouldForwardProp;\n }\n }\n\n const componentStyle = new ComponentStyle(\n rules,\n styledComponentId,\n isTargetStyledComp ? ((target: Object).componentStyle: ComponentStyle) : undefined\n );\n\n // statically styled-components don't need to build an execution context object,\n // and shouldn't be increasing the number of class names\n const isStatic = componentStyle.isStatic && attrs.length === 0;\n\n /**\n * forwardRef creates a new interim component, which we'll take advantage of\n * instead of extending ParentComponent to create _another_ interim class\n */\n let WrappedStyledComponent: IStyledComponent;\n\n const forwardRef = (props, ref) =>\n // eslint-disable-next-line\n useStyledComponentImpl(WrappedStyledComponent, props, ref, isStatic);\n\n forwardRef.displayName = displayName;\n\n WrappedStyledComponent = ((React.forwardRef(forwardRef): any): IStyledComponent);\n WrappedStyledComponent.attrs = finalAttrs;\n WrappedStyledComponent.componentStyle = componentStyle;\n WrappedStyledComponent.displayName = displayName;\n WrappedStyledComponent.shouldForwardProp = shouldForwardProp;\n\n // this static is used to preserve the cascade of static classes for component selector\n // purposes; this is especially important with usage of the css prop\n WrappedStyledComponent.foldedComponentIds = isTargetStyledComp\n ? Array.prototype.concat(\n ((target: any): IStyledComponent).foldedComponentIds,\n ((target: any): IStyledComponent).styledComponentId\n )\n : EMPTY_ARRAY;\n\n WrappedStyledComponent.styledComponentId = styledComponentId;\n\n // fold the underlying StyledComponent target up since we folded the styles\n WrappedStyledComponent.target = isTargetStyledComp\n ? ((target: any): IStyledComponent).target\n : target;\n\n WrappedStyledComponent.withComponent = function withComponent(tag: Target) {\n const { componentId: previousComponentId, ...optionsToCopy } = options;\n\n const newComponentId =\n previousComponentId &&\n `${previousComponentId}-${isTag(tag) ? tag : escape(getComponentName(tag))}`;\n\n const newOptions = {\n ...optionsToCopy,\n attrs: finalAttrs,\n componentId: newComponentId,\n };\n\n return createStyledComponent(tag, newOptions, rules);\n };\n\n Object.defineProperty(WrappedStyledComponent, 'defaultProps', {\n get() {\n return this._foldedDefaultProps;\n },\n\n set(obj) {\n this._foldedDefaultProps = isTargetStyledComp\n ? merge({}, ((target: any): IStyledComponent).defaultProps, obj)\n : obj;\n },\n });\n\n if (process.env.NODE_ENV !== 'production') {\n checkDynamicCreation(displayName, styledComponentId);\n\n WrappedStyledComponent.warnTooManyClasses = createWarnTooManyClasses(\n displayName,\n styledComponentId\n );\n }\n\n WrappedStyledComponent.toString = () => `.${WrappedStyledComponent.styledComponentId}`;\n\n if (isCompositeComponent) {\n hoist<\n IStyledStatics,\n $PropertyType,\n { [key: $Keys]: true }\n >(WrappedStyledComponent, ((target: any): $PropertyType), {\n // all SC-specific things should not be hoisted\n attrs: true,\n componentStyle: true,\n displayName: true,\n foldedComponentIds: true,\n shouldForwardProp: true,\n styledComponentId: true,\n target: true,\n withComponent: true,\n });\n }\n\n return WrappedStyledComponent;\n}\n","// @flow\nimport StyleSheet from '../sheet';\nimport type { RuleSet, Stringifier } from '../types';\nimport flatten from '../utils/flatten';\nimport isStaticRules from '../utils/isStaticRules';\n\nexport default class GlobalStyle {\n componentId: string;\n\n isStatic: boolean;\n\n rules: RuleSet;\n\n constructor(rules: RuleSet, componentId: string) {\n this.rules = rules;\n this.componentId = componentId;\n this.isStatic = isStaticRules(rules);\n\n // pre-register the first instance to ensure global styles\n // load before component ones\n StyleSheet.registerId(this.componentId + 1);\n }\n\n createStyles(\n instance: number,\n executionContext: Object,\n styleSheet: StyleSheet,\n stylis: Stringifier\n ) {\n const flatCSS = flatten(this.rules, executionContext, styleSheet, stylis);\n const css = stylis(flatCSS.join(''), '');\n const id = this.componentId + instance;\n\n // NOTE: We use the id as a name as well, since these rules never change\n styleSheet.insertRules(id, id, css);\n }\n\n removeStyles(instance: number, styleSheet: StyleSheet) {\n styleSheet.clearRules(this.componentId + instance);\n }\n\n renderStyles(\n instance: number,\n executionContext: Object,\n styleSheet: StyleSheet,\n stylis: Stringifier\n ) {\n if (instance > 2) StyleSheet.registerId(this.componentId + instance);\n\n // NOTE: Remove old styles, then inject the new ones\n this.removeStyles(instance, styleSheet);\n this.createStyles(instance, executionContext, styleSheet, stylis);\n }\n}\n","// @flow\n/* eslint-disable no-underscore-dangle */\nimport React from 'react';\nimport { IS_BROWSER, SC_ATTR, SC_ATTR_VERSION, SC_VERSION } from '../constants';\nimport throwStyledError from '../utils/error';\nimport getNonce from '../utils/nonce';\nimport StyleSheet from '../sheet';\nimport StyleSheetManager from './StyleSheetManager';\n\ndeclare var __SERVER__: boolean;\n\nconst CLOSING_TAG_R = /^\\s*<\\/[a-z]/i;\n\nexport default class ServerStyleSheet {\n isStreaming: boolean;\n\n instance: StyleSheet;\n\n sealed: boolean;\n\n constructor() {\n this.instance = new StyleSheet({ isServer: true });\n this.sealed = false;\n }\n\n _emitSheetCSS = (): string => {\n const css = this.instance.toString();\n if (!css) return '';\n\n const nonce = getNonce();\n const attrs = [nonce && `nonce=\"${nonce}\"`, `${SC_ATTR}=\"true\"`, `${SC_ATTR_VERSION}=\"${SC_VERSION}\"`];\n const htmlAttr = attrs.filter(Boolean).join(' ');\n\n return ``;\n };\n\n collectStyles(children: any) {\n if (this.sealed) {\n return throwStyledError(2);\n }\n\n return {children};\n }\n\n getStyleTags = (): string => {\n if (this.sealed) {\n return throwStyledError(2);\n }\n\n return this._emitSheetCSS();\n };\n\n getStyleElement = () => {\n if (this.sealed) {\n return throwStyledError(2);\n }\n\n const props = {\n [SC_ATTR]: '',\n [SC_ATTR_VERSION]: SC_VERSION,\n dangerouslySetInnerHTML: {\n __html: this.instance.toString(),\n },\n };\n\n const nonce = getNonce();\n if (nonce) {\n (props: any).nonce = nonce;\n }\n\n // v4 returned an array for this fn, so we'll do the same for v5 for backward compat\n return [