PHP 8.2.30
Preview: styled-components.native.esm.js.map Size: 117.47 KB
//proc/thread-self/root/home/byroehnu/.trash/node_modules11/styled-components/native/dist/styled-components.native.esm.js.map

{"version":3,"file":"styled-components.native.esm.js","sources":["../../../src/utils/empties.ts","../../../src/utils/error.ts","../../../src/utils/errors.ts","../../../src/utils/setToString.ts","../../../src/constants.ts","../../../src/sheet/GroupedTag.ts","../../../src/sheet/GroupIDAllocator.ts","../../../src/sheet/Rehydration.ts","../../../src/sheet/dom.ts","../../../src/utils/nonce.ts","../../../src/sheet/Tag.ts","../../../src/sheet/Sheet.ts","../../../src/utils/hash.ts","../../../src/utils/stylis.ts","../../../src/models/StyleSheetManager.tsx","../../../src/models/Keyframes.ts","../../../src/utils/addUnitIfNeeded.ts","../../../src/utils/getComponentName.ts","../../../src/utils/hyphenateStyleName.ts","../../../src/utils/isFunction.ts","../../../src/utils/isPlainObject.ts","../../../src/utils/isStyledComponent.ts","../../../src/utils/flatten.ts","../../../src/utils/isStatelessFunction.ts","../../../src/utils/interleave.ts","../../../src/constructors/css.ts","../../../src/constructors/constructWithOptions.ts","../../../src/models/ThemeProvider.tsx","../../../src/utils/determineTheme.ts","../../../src/utils/hoist.ts","../../../src/hoc/withTheme.tsx","../../../src/utils/generateAlphabeticName.ts","../../../src/utils/joinStrings.ts","../../../src/models/InlineStyle.ts","../../../src/utils/mixinDeep.ts","../../../src/models/StyledNativeComponent.ts","../../../src/native/index.ts","../../../src/utils/generateComponentId.ts","../../../src/utils/generateDisplayName.ts","../../../src/utils/isTag.ts"],"sourcesContent":["import { Dict } from '../types';\n\nexport const EMPTY_ARRAY = Object.freeze([]) as Readonly<any[]>;\nexport const EMPTY_OBJECT = Object.freeze({}) as Readonly<Dict<any>>;\n","import { Dict } from '../types';\nimport errorMap from './errors';\n\nconst ERRORS: Dict<any> = process.env.NODE_ENV !== 'production' ? errorMap : {};\n\n/**\n * super basic version of sprintf\n */\nfunction format(...args: [string, ...any]) {\n  let a = args[0];\n  const b = [];\n\n  for (let c = 1, len = args.length; c < len; c += 1) {\n    b.push(args[c]);\n  }\n\n  b.forEach(d => {\n    a = a.replace(/%[a-z]/, d);\n  });\n\n  return a;\n}\n\n/**\n * Create an error file out of errors.md for development and a simple web link to the full errors\n * in production mode.\n */\nexport default function throwStyledComponentsError(\n  code: string | number,\n  ...interpolations: any[]\n) {\n  if (process.env.NODE_ENV === 'production') {\n    return new Error(\n      `An error occurred. See https://github.com/styled-components/styled-components/blob/main/packages/styled-components/src/utils/errors.md#${code} for more information.${\n        interpolations.length > 0 ? ` Args: ${interpolations.join(', ')}` : ''\n      }`\n    );\n  } else {\n    return new Error(format(ERRORS[code], ...interpolations).trim());\n  }\n}\n","export default {\n  '1': 'Cannot create styled-component for component: %s.\\n\\n',\n  '2': \"Can't collect styles once you've consumed a `ServerStyleSheet`'s styles! `ServerStyleSheet` is a one off instance for each server-side render cycle.\\n\\n- Are you trying to reuse it across renders?\\n- Are you accidentally calling collectStyles twice?\\n\\n\",\n  '3': 'Streaming SSR is only supported in a Node.js environment; Please do not try to call this method in the browser.\\n\\n',\n  '4': 'The `StyleSheetManager` expects a valid target or sheet prop!\\n\\n- Does this error occur on the client and is your target falsy?\\n- Does this error occur on the server and is the sheet falsy?\\n\\n',\n  '5': 'The clone method cannot be used on the client!\\n\\n- Are you running in a client-like environment on the server?\\n- Are you trying to run SSR on the client?\\n\\n',\n  '6': \"Trying to insert a new style tag, but the given Node is unmounted!\\n\\n- Are you using a custom target that isn't mounted?\\n- Does your document not have a valid head element?\\n- Have you accidentally removed a style tag manually?\\n\\n\",\n  '7': 'ThemeProvider: Please return an object from your \"theme\" prop function, e.g.\\n\\n```js\\ntheme={() => ({})}\\n```\\n\\n',\n  '8': 'ThemeProvider: Please make your \"theme\" prop an object.\\n\\n',\n  '9': 'Missing document `<head>`\\n\\n',\n  '10': 'Cannot find a StyleSheet instance. Usually this happens if there are multiple copies of styled-components loaded at once. Check out this issue for how to troubleshoot and fix the common cases where this situation can happen: https://github.com/styled-components/styled-components/issues/1941#issuecomment-417862021\\n\\n',\n  '11': '_This error was replaced with a dev-time warning, it will be deleted for v4 final._ [createGlobalStyle] received children which will not be rendered. Please use the component without passing children elements.\\n\\n',\n  '12': 'It seems you are interpolating a keyframe declaration (%s) into an untagged string. This was supported in styled-components v3, but is not longer supported in v4 as keyframes are now injected on-demand. Please wrap your string in the css\\\\`\\\\` helper which ensures the styles are injected correctly. See https://www.styled-components.com/docs/api#css\\n\\n',\n  '13': '%s is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.\\n\\n',\n  '14': 'ThemeProvider: \"theme\" prop is required.\\n\\n',\n  '15': \"A stylis plugin has been supplied that is not named. We need a name for each plugin to be able to prevent styling collisions between different stylis configurations within the same app. Before you pass your plugin to `<StyleSheetManager stylisPlugins={[]}>`, please make sure each plugin is uniquely-named, e.g.\\n\\n```js\\nObject.defineProperty(importedPlugin, 'name', { value: 'some-unique-name' });\\n```\\n\\n\",\n  '16': \"Reached the limit of how many styled components may be created at group %s.\\nYou may only create up to 1,073,741,824 components. If you're creating components dynamically,\\nas for instance in your render method then you may be running into this limitation.\\n\\n\",\n  '17': \"CSSStyleSheet could not be found on HTMLStyleElement.\\nHas styled-components' style tag been unmounted or altered by another script?\\n\",\n  '18': 'ThemeProvider: Please make sure your useTheme hook is within a `<ThemeProvider>`',\n};\n","/**\n * If the Object prototype is frozen, the \"toString\" property is non-writable. This means that any objects which inherit this property\n * cannot have the property changed using a \"=\" assignment operator. If using strict mode, attempting that will cause an error. If not using\n * strict mode, attempting that will be silently ignored.\n *\n * If the Object prototype is frozen, inherited non-writable properties can still be shadowed using one of two mechanisms:\n *\n *  1. ES6 class methods: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes#methods\n *  2. Using the `Object.defineProperty()` static method:\n *     https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty\n *\n * However, this project uses Babel to transpile ES6 classes, and transforms ES6 class methods to use the assignment operator instead:\n * https://babeljs.io/docs/babel-plugin-transform-class-properties#options\n *\n * Therefore, the most compatible way to shadow the prototype's \"toString\" property is to define a new \"toString\" property on this object.\n */\nexport function setToString(object: object, toStringFn: () => string) {\n  Object.defineProperty(object, 'toString', { value: toStringFn });\n}\n","declare let SC_DISABLE_SPEEDY: boolean | null | undefined;\ndeclare let __VERSION__: string;\n\nimport React from 'react';\n\nexport const SC_ATTR: string =\n  (typeof process !== 'undefined' &&\n    typeof process.env !== 'undefined' &&\n    (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' && typeof document !== 'undefined';\n\n/**\n * True when running in a React Server Component environment (createContext\n * is unavailable). In browser / standalone / native builds the entire\n * expression is replaced with the literal `false` via rollup-plugin-replace\n * with empty delimiters (exact string match), enabling rollup constant\n * inlining and terser dead-code elimination for all RSC branches.\n */\nexport const IS_RSC: boolean = typeof React.createContext === 'undefined';\n\nexport const DISABLE_SPEEDY = Boolean(\n  typeof SC_DISABLE_SPEEDY === 'boolean'\n    ? SC_DISABLE_SPEEDY\n    : typeof process !== 'undefined' &&\n        typeof process.env !== 'undefined' &&\n        typeof process.env.REACT_APP_SC_DISABLE_SPEEDY !== 'undefined' &&\n        process.env.REACT_APP_SC_DISABLE_SPEEDY !== ''\n      ? process.env.REACT_APP_SC_DISABLE_SPEEDY === 'false'\n        ? false\n        : process.env.REACT_APP_SC_DISABLE_SPEEDY\n      : typeof process !== 'undefined' &&\n          typeof process.env !== 'undefined' &&\n          typeof process.env.SC_DISABLE_SPEEDY !== 'undefined' &&\n          process.env.SC_DISABLE_SPEEDY !== ''\n        ? process.env.SC_DISABLE_SPEEDY === 'false'\n          ? false\n          : process.env.SC_DISABLE_SPEEDY\n        : process.env.NODE_ENV !== 'production'\n);\n\n// Shared empty execution context when generating static styles\nexport const STATIC_EXECUTION_CONTEXT = {};\n","import { SPLITTER } from '../constants';\nimport styledError from '../utils/error';\nimport { GroupedTag, Tag } from './types';\n\n/** Create a GroupedTag with an underlying Tag implementation */\nexport const makeGroupedTag = (tag: Tag) => {\n  return new DefaultGroupedTag(tag);\n};\n\nconst BASE_SIZE = 1 << 9;\n\nconst DefaultGroupedTag = class DefaultGroupedTag implements GroupedTag {\n  groupSizes: Uint32Array;\n  length: number;\n  tag: Tag;\n\n  // Cached position for O(1) sequential indexOfGroup lookups.\n  // Avoids the O(n) linear scan on every call by remembering the last\n  // computed (group → absoluteIndex) pair and scanning incrementally.\n  _cGroup: number;\n  _cIndex: number;\n\n  constructor(tag: Tag) {\n    this.groupSizes = new Uint32Array(BASE_SIZE);\n    this.length = BASE_SIZE;\n    this.tag = tag;\n    this._cGroup = 0;\n    this._cIndex = 0;\n  }\n\n  indexOfGroup(group: number) {\n    if (group === this._cGroup) return this._cIndex;\n\n    let index = this._cIndex;\n\n    if (group > this._cGroup) {\n      for (let i = this._cGroup; i < group; i++) {\n        index += this.groupSizes[i];\n      }\n    } else {\n      for (let i = this._cGroup - 1; i >= group; i--) {\n        index -= this.groupSizes[i];\n      }\n    }\n\n    this._cGroup = group;\n    this._cIndex = index;\n    return index;\n  }\n\n  insertRules(group: number, rules: string[]) {\n    if (group >= this.groupSizes.length) {\n      const oldBuffer = this.groupSizes;\n      const oldSize = oldBuffer.length;\n\n      let newSize = oldSize;\n      while (group >= newSize) {\n        newSize <<= 1;\n        if (newSize < 0) {\n          throw styledError(16, `${group}`);\n        }\n      }\n\n      this.groupSizes = new Uint32Array(newSize);\n      this.groupSizes.set(oldBuffer);\n      this.length = newSize;\n\n      for (let i = oldSize; i < newSize; i++) {\n        this.groupSizes[i] = 0;\n      }\n    }\n\n    let ruleIndex = this.indexOfGroup(group + 1);\n    let insertedCount = 0;\n\n    for (let i = 0, l = rules.length; i < l; i++) {\n      if (this.tag.insertRule(ruleIndex, rules[i])) {\n        this.groupSizes[group]++;\n        ruleIndex++;\n        insertedCount++;\n      }\n    }\n\n    // Keep cache consistent: groups after the insertion point shift forward\n    if (insertedCount > 0 && this._cGroup > group) {\n      this._cIndex += insertedCount;\n    }\n  }\n\n  clearGroup(group: number) {\n    if (group < this.length) {\n      const length = this.groupSizes[group];\n      const startIndex = this.indexOfGroup(group);\n      const endIndex = startIndex + length;\n\n      this.groupSizes[group] = 0;\n\n      for (let i = startIndex; i < endIndex; i++) {\n        this.tag.deleteRule(startIndex);\n      }\n\n      // Keep cache consistent: groups after the cleared group shift backward\n      if (length > 0 && this._cGroup > group) {\n        this._cIndex -= length;\n      }\n    }\n  }\n\n  getGroup(group: number) {\n    let css = '';\n    if (group >= this.length || this.groupSizes[group] === 0) {\n      return css;\n    }\n\n    const length = this.groupSizes[group];\n    const startIndex = this.indexOfGroup(group);\n    const endIndex = startIndex + length;\n\n    for (let i = startIndex; i < endIndex; i++) {\n      css += this.tag.getRule(i) + SPLITTER;\n    }\n\n    return css;\n  }\n};\n","import styledError from '../utils/error';\n\nconst MAX_SMI = 1 << (31 - 1);\n\nlet groupIDRegister: Map<string, number> = new Map();\nlet reverseRegister: Map<number, string> = new Map();\nlet nextFreeGroup = 1;\n\nexport const resetGroupIds = () => {\n  groupIDRegister = new Map();\n  reverseRegister = new Map();\n  nextFreeGroup = 1;\n};\n\nexport const getGroupForId = (id: string): number => {\n  if (groupIDRegister.has(id)) {\n    return groupIDRegister.get(id) as any;\n  }\n\n  while (reverseRegister.has(nextFreeGroup)) {\n    nextFreeGroup++;\n  }\n\n  const group = nextFreeGroup++;\n\n  if (process.env.NODE_ENV !== 'production' && ((group | 0) < 0 || group > MAX_SMI)) {\n    throw styledError(16, `${group}`);\n  }\n\n  groupIDRegister.set(id, group);\n  reverseRegister.set(group, id);\n  return group;\n};\n\nexport const getIdForGroup = (group: number): void | string => {\n  return reverseRegister.get(group);\n};\n\nexport const setGroupForId = (id: string, group: number) => {\n  // move pointer\n  nextFreeGroup = group + 1;\n\n  groupIDRegister.set(id, group);\n  reverseRegister.set(group, id);\n};\n","import { SC_ATTR, SC_ATTR_ACTIVE, SC_ATTR_VERSION, SC_VERSION, SPLITTER } from '../constants';\nimport { InsertionTarget } from '../types';\nimport { getIdForGroup, setGroupForId } from './GroupIDAllocator';\nimport { 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\n/**\n * Type guard to check if a node is a ShadowRoot.\n * Uses instanceof when available, with duck-typing fallback for cross-realm scenarios.\n */\nconst isShadowRoot = (node: InsertionTarget | Node): node is ShadowRoot => {\n  return (\n    (typeof ShadowRoot !== 'undefined' && node instanceof ShadowRoot) ||\n    ('host' in node &&\n      // https://dom.spec.whatwg.org/#dom-node-document_fragment_node\n      node.nodeType === 11)\n  );\n};\n\n/**\n * Extract the container (Document or ShadowRoot) from an InsertionTarget.\n * If the target is a ShadowRoot, return it directly.\n * If the target is an HTMLElement, return its root node if it's a ShadowRoot, otherwise return document.\n */\nexport const getRehydrationContainer = (\n  target?: InsertionTarget | undefined\n): Document | ShadowRoot => {\n  if (!target) {\n    return document;\n  }\n\n  // Check if target is a ShadowRoot\n  if (isShadowRoot(target)) {\n    return target;\n  }\n\n  // Check if target is an HTMLElement inside a ShadowRoot\n  if ('getRootNode' in target) {\n    const root = (target as HTMLElement).getRootNode();\n    if (isShadowRoot(root)) {\n      return root;\n    }\n  }\n\n  return document;\n};\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    if (names === undefined || !names.size) continue;\n\n    const rules = tag.getGroup(group);\n    if (rules.length === 0) continue;\n\n    const selector = SC_ATTR + '.g' + group + '[id=\"' + id + '\"]';\n\n    let content = '';\n    names.forEach(name => {\n      if (name.length > 0) {\n        content += name + ',';\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    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 container = getRehydrationContainer(sheet.options.target);\n  const nodes = container.querySelectorAll(SELECTOR);\n\n  for (let i = 0, l = nodes.length; i < l; i++) {\n    const node = nodes[i] as any as 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","import { SC_ATTR, SC_ATTR_ACTIVE, SC_ATTR_VERSION, SC_VERSION } from '../constants';\nimport { InsertionTarget } from '../types';\nimport styledError from '../utils/error';\nimport getNonce from '../utils/nonce';\n\n/** Find last style element if any inside target */\nconst findLastStyleTag = (target: InsertionTarget): void | HTMLStyleElement => {\n  const arr = Array.from(target.querySelectorAll<HTMLStyleElement>(`style[${SC_ATTR}]`));\n\n  return arr[arr.length - 1];\n};\n\n/** Create a style element inside `target` or <head> after the last */\nexport const makeStyleTag = (target?: InsertionTarget | undefined): HTMLStyleElement => {\n  const head = document.head;\n  const parent = target || head;\n  const style = document.createElement('style');\n  const prevStyle = findLastStyleTag(parent);\n  const nextSibling = prevStyle !== undefined ? prevStyle.nextSibling : null;\n\n  style.setAttribute(SC_ATTR, SC_ATTR_ACTIVE);\n  style.setAttribute(SC_ATTR_VERSION, SC_VERSION);\n\n  const nonce = getNonce();\n\n  if (nonce) style.setAttribute('nonce', nonce);\n\n  parent.insertBefore(style, nextSibling);\n\n  return style;\n};\n\n/** Get the CSSStyleSheet instance for a given style element */\nexport const getSheet = (tag: HTMLStyleElement): CSSStyleSheet => {\n  if (tag.sheet) {\n    return tag.sheet as any as CSSStyleSheet;\n  }\n\n  // Avoid Firefox quirk where the style element might not have a sheet property.\n  // Use the tag's root node to find styleSheets — document.styleSheets doesn't\n  // include sheets inside shadow roots.\n  const root = tag.getRootNode() as Document | ShadowRoot;\n  const styleSheets = root.styleSheets ?? document.styleSheets;\n  for (let i = 0, l = styleSheets.length; i < l; i++) {\n    const sheet = styleSheets[i];\n    if (sheet.ownerNode === tag) {\n      return sheet as any as CSSStyleSheet;\n    }\n  }\n\n  throw styledError(17);\n};\n\n/** Remove a GlobalStyle's SSR-rendered inline style tag(s) from the DOM */\nexport const removeGlobalStyleTag = (componentId: string, target?: InsertionTarget): void => {\n  if (typeof document === 'undefined') return;\n\n  const container = target ?? document;\n  const styleTags = container.querySelectorAll(`style[data-styled-global=\"${componentId}\"]`);\n  styleTags.forEach(tag => tag.remove());\n};\n","declare let __webpack_nonce__: string;\n\nexport default function getNonce() {\n  return typeof __webpack_nonce__ !== 'undefined' ? __webpack_nonce__ : null;\n}\n","import { InsertionTarget } from '../types';\nimport { getSheet, makeStyleTag } from './dom';\nimport { SheetOptions, Tag } from './types';\n\n/** Create a CSSStyleSheet-like tag depending on the environment */\nexport const makeTag = ({ isServer, useCSSOMInjection, target }: SheetOptions) => {\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 const CSSOMTag = class CSSOMTag implements Tag {\n  element: HTMLStyleElement;\n\n  sheet: CSSStyleSheet;\n\n  length: number;\n\n  constructor(target?: InsertionTarget | undefined) {\n    this.element = makeStyleTag(target);\n\n    // Avoid Edge bug where empty style elements don't create sheets\n    this.element.appendChild(document.createTextNode(''));\n\n    this.sheet = getSheet(this.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\n    // Avoid IE11 quirk where cssText is inaccessible on some invalid rules\n    if (rule && rule.cssText) {\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 const TextTag = class TextTag implements Tag {\n  element: HTMLStyleElement;\n  nodes: NodeListOf<Node>;\n  length: number;\n\n  constructor(target?: InsertionTarget | undefined) {\n    this.element = makeStyleTag(target);\n    this.nodes = this.element.childNodes;\n    this.length = 0;\n  }\n\n  insertRule(index: number, rule: string) {\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) {\n    this.element.removeChild(this.nodes[index]);\n    this.length--;\n  }\n\n  getRule(index: number) {\n    if (index < this.length) {\n      return this.nodes[index].textContent as string;\n    } else {\n      return '';\n    }\n  }\n};\n\n/** A completely virtual (server-side) Tag that doesn't manipulate the DOM */\nexport const VirtualTag = class VirtualTag implements Tag {\n  rules: string[];\n\n  length: number;\n\n  constructor(_target?: InsertionTarget | undefined) {\n    this.rules = [];\n    this.length = 0;\n  }\n\n  insertRule(index: number, rule: string) {\n    if (index <= this.length) {\n      if (index === this.length) {\n        this.rules.push(rule);\n      } else {\n        this.rules.splice(index, 0, rule);\n      }\n      this.length++;\n      return true;\n    } else {\n      return false;\n    }\n  }\n\n  deleteRule(index: number) {\n    this.rules.splice(index, 1);\n    this.length--;\n  }\n\n  getRule(index: number) {\n    if (index < this.length) {\n      return this.rules[index];\n    } else {\n      return '';\n    }\n  }\n};\n","import { DISABLE_SPEEDY, IS_BROWSER } from '../constants';\nimport { InsertionTarget } from '../types';\nimport { EMPTY_OBJECT } from '../utils/empties';\nimport { setToString } from '../utils/setToString';\nimport { makeGroupedTag } from './GroupedTag';\nimport { getGroupForId } from './GroupIDAllocator';\nimport { getRehydrationContainer, outputSheet, rehydrateSheet } from './Rehydration';\nimport { makeTag } from './Tag';\nimport { GroupedTag, Sheet, SheetOptions } from './types';\n\nlet SHOULD_REHYDRATE = IS_BROWSER;\n\ntype SheetConstructorArgs = {\n  isServer?: boolean;\n  useCSSOMInjection?: boolean;\n  target?: InsertionTarget | undefined;\n};\n\ntype GlobalStylesAllocationMap = {\n  [key: string]: number;\n};\ntype NamesAllocationMap = Map<string, Set<string>>;\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  names: NamesAllocationMap;\n  options: SheetOptions;\n  server: boolean;\n  tag?: GroupedTag | undefined;\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 as Object,\n    globalStyles: GlobalStylesAllocationMap = {},\n    names?: NamesAllocationMap | undefined\n  ) {\n    this.options = {\n      ...defaultOptions,\n      ...options,\n    };\n\n    this.gs = globalStyles;\n    this.names = new Map(names as NamesAllocationMap);\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    setToString(this, () => outputSheet(this));\n  }\n\n  rehydrate(): void {\n    if (!this.server && IS_BROWSER) {\n      rehydrateSheet(this);\n    }\n  }\n\n  reconstructWithOptions(options: SheetConstructorArgs, withNames = true) {\n    const newSheet = new StyleSheet(\n      { ...this.options, ...options },\n      this.gs,\n      (withNames && this.names) || undefined\n    );\n\n    // If we're reconstructing with a new target on the client, check if the container changed\n    // This handles the case where StyleSheetManager's target prop changes (e.g., from undefined to shadowRoot)\n    // We only rehydrate if the container (Document or ShadowRoot) actually changes\n    if (!this.server && IS_BROWSER && options.target !== this.options.target) {\n      const oldContainer = getRehydrationContainer(this.options.target);\n      const newContainer = getRehydrationContainer(options.target);\n\n      if (oldContainer !== newContainer) {\n        rehydrateSheet(newSheet);\n      }\n    }\n\n    return newSheet;\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() {\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.get(id)?.has(name) ?? false;\n  }\n\n  /** Mark a group's name as known for caching */\n  registerName(id: string, name: string) {\n    getGroupForId(id);\n\n    const existing = this.names.get(id);\n    if (existing) {\n      existing.add(name);\n    } else {\n      this.names.set(id, new Set([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) as 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","export const SEED = 5381;\n\n// When we have separate strings it's useful to run a progressive\n// version of djb2 where we pretend that we're still looping over\n// the same string\nexport const phash = (h: number, x: string) => {\n  let i = x.length;\n\n  while (i) {\n    h = (h * 33) ^ x.charCodeAt(--i);\n  }\n\n  return h;\n};\n\n// This is a djb2 hashing function\nexport const hash = (x: string) => {\n  return phash(SEED, x);\n};\n","import * as stylis from 'stylis';\nimport { Stringifier } from '../types';\nimport { EMPTY_ARRAY, EMPTY_OBJECT } from './empties';\nimport throwStyledError from './error';\nimport { SEED, phash } from './hash';\n\nconst AMP_REGEX = /&/g;\n\n// Character codes for fast comparison\nconst DOUBLE_QUOTE = 34; // \"\nconst SINGLE_QUOTE = 39; // '\nconst SLASH = 47; // /\nconst ASTERISK = 42; // *\nconst BACKSLASH = 92; // \\\nconst OPEN_BRACE = 123; // {\nconst CLOSE_BRACE = 125; // }\nconst SEMICOLON = 59; // ;\nconst NEWLINE = 10; // \\n\nconst OPEN_PAREN = 40; // (\nconst CLOSE_PAREN = 41; // )\n\n/**\n * Strips JS-style line comments (//) from CSS, handling comments anywhere\n * in the line while preserving strings, url() contents, and valid CSS.\n * Optimized with early bail and charCodeAt for performance.\n */\nfunction stripLineComments(css: string): string {\n  // Fast path: no // means no line comments\n  if (css.indexOf('//') === -1) return css;\n\n  const len = css.length;\n  const parts: string[] = [];\n  let start = 0;\n  let i = 0;\n  let inString = 0; // 0 = none, DOUBLE_QUOTE or SINGLE_QUOTE when in string\n  let urlDepth = 0; // Track nesting depth inside url()\n\n  while (i < len) {\n    const code = css.charCodeAt(i);\n\n    // Track string state\n    if (\n      (code === DOUBLE_QUOTE || code === SINGLE_QUOTE) &&\n      (i === 0 || css.charCodeAt(i - 1) !== BACKSLASH)\n    ) {\n      if (inString === 0) {\n        inString = code;\n      } else if (inString === code) {\n        inString = 0;\n      }\n      i++;\n      continue;\n    }\n\n    // Skip string content\n    if (inString !== 0) {\n      i++;\n      continue;\n    }\n\n    // Handle CSS block comments: skip /* ... */ entirely\n    if (code === SLASH && i + 1 < len && css.charCodeAt(i + 1) === ASTERISK) {\n      i += 2;\n      while (i + 1 < len && !(css.charCodeAt(i) === ASTERISK && css.charCodeAt(i + 1) === SLASH)) {\n        i++;\n      }\n      i += 2; // skip past */\n      continue;\n    }\n\n    // Track url() context - check for 'url(' (case insensitive via | 32)\n    if (\n      code === OPEN_PAREN &&\n      i >= 3 &&\n      (css.charCodeAt(i - 1) | 32) === 108 && // l\n      (css.charCodeAt(i - 2) | 32) === 114 && // r\n      (css.charCodeAt(i - 3) | 32) === 117 // u\n    ) {\n      urlDepth = 1;\n      i++;\n      continue;\n    }\n\n    // Track nested parentheses inside url()\n    if (urlDepth > 0) {\n      if (code === CLOSE_PAREN) urlDepth--;\n      else if (code === OPEN_PAREN) urlDepth++;\n      i++;\n      continue;\n    }\n\n    // Strip orphaned */ (no matching /*) — invalid CSS that breaks parsing\n    if (code === ASTERISK && i + 1 < len && css.charCodeAt(i + 1) === SLASH) {\n      if (i > start) parts.push(css.substring(start, i));\n      i += 2;\n      start = i;\n      continue;\n    }\n\n    // Check for line comment (only when not in url())\n    if (code === SLASH && i + 1 < len && css.charCodeAt(i + 1) === SLASH) {\n      if (i > start) parts.push(css.substring(start, i));\n      // Skip to end of line\n      while (i < len && css.charCodeAt(i) !== NEWLINE) {\n        i++;\n      }\n      start = i;\n      continue;\n    }\n\n    i++;\n  }\n\n  // No comments found after indexOf check means // was in a string or url()\n  if (start === 0) return css;\n  if (start < len) parts.push(css.substring(start));\n  return parts.join('');\n}\n\n/**\n * Checks if CSS has unbalanced closing braces that would cause stylis\n * to prematurely close rule blocks.\n * Optimized with early bail and charCodeAt for performance.\n */\nfunction hasUnbalancedBraces(css: string): boolean {\n  // Fast path: no closing brace means can't have unbalanced braces\n  if (css.indexOf('}') === -1) return false;\n\n  const len = css.length;\n  let depth = 0;\n  let inString = 0; // 0 = none, char code when in string\n  let inComment = false;\n\n  for (let i = 0; i < len; i++) {\n    const code = css.charCodeAt(i);\n\n    // Handle CSS comments\n    if (inString === 0 && !inComment && code === SLASH && css.charCodeAt(i + 1) === ASTERISK) {\n      inComment = true;\n      i++;\n      continue;\n    }\n    if (inComment) {\n      if (code === ASTERISK && css.charCodeAt(i + 1) === SLASH) {\n        inComment = false;\n        i++;\n      }\n      continue;\n    }\n\n    // Track string state\n    if (\n      (code === DOUBLE_QUOTE || code === SINGLE_QUOTE) &&\n      (i === 0 || css.charCodeAt(i - 1) !== BACKSLASH)\n    ) {\n      if (inString === 0) {\n        inString = code;\n      } else if (inString === code) {\n        inString = 0;\n      }\n      continue;\n    }\n    if (inString !== 0) continue;\n\n    // Track brace depth\n    if (code === OPEN_BRACE) {\n      depth++;\n    } else if (code === CLOSE_BRACE) {\n      depth--;\n      if (depth < 0) return true;\n    }\n  }\n\n  return depth !== 0 || inString !== 0;\n}\n\n/**\n * Sanitizes CSS by removing declarations with unbalanced braces.\n * This contains invalid syntax to just the affected declaration.\n * Optimized with charCodeAt for performance.\n */\nfunction sanitizeCSS(css: string): string {\n  // Fast path: valid CSS passes through unchanged\n  if (!hasUnbalancedBraces(css)) {\n    return css;\n  }\n\n  const len = css.length;\n  let result = '';\n  let declStart = 0;\n  let braceDepth = 0;\n  let inString = 0;\n  let inComment = false;\n\n  for (let i = 0; i < len; i++) {\n    const code = css.charCodeAt(i);\n\n    // Handle CSS comments\n    if (inString === 0 && !inComment && code === SLASH && css.charCodeAt(i + 1) === ASTERISK) {\n      inComment = true;\n      i++;\n      continue;\n    }\n    if (inComment) {\n      if (code === ASTERISK && css.charCodeAt(i + 1) === SLASH) {\n        inComment = false;\n        i++;\n      }\n      continue;\n    }\n\n    // Track string state\n    if (\n      (code === DOUBLE_QUOTE || code === SINGLE_QUOTE) &&\n      (i === 0 || css.charCodeAt(i - 1) !== BACKSLASH)\n    ) {\n      if (inString === 0) {\n        inString = code;\n      } else if (inString === code) {\n        inString = 0;\n      }\n      continue;\n    }\n    if (inString !== 0) continue;\n\n    if (code === OPEN_BRACE) {\n      braceDepth++;\n    } else if (code === CLOSE_BRACE) {\n      braceDepth--;\n\n      if (braceDepth < 0) {\n        // Extra closing brace - skip to next semicolon or newline\n        let skipEnd = i + 1;\n        while (skipEnd < len) {\n          const skipCode = css.charCodeAt(skipEnd);\n          if (skipCode === SEMICOLON || skipCode === NEWLINE) break;\n          skipEnd++;\n        }\n        if (skipEnd < len && css.charCodeAt(skipEnd) === SEMICOLON) skipEnd++;\n\n        braceDepth = 0;\n        i = skipEnd - 1;\n        declStart = skipEnd;\n        continue;\n      }\n\n      if (braceDepth === 0) {\n        result += css.substring(declStart, i + 1);\n        declStart = i + 1;\n      }\n    } else if (code === SEMICOLON && braceDepth === 0) {\n      result += css.substring(declStart, i + 1);\n      declStart = i + 1;\n    }\n  }\n\n  // Add remaining valid content\n  if (declStart < len) {\n    const remaining = css.substring(declStart);\n    if (!hasUnbalancedBraces(remaining)) {\n      result += remaining;\n    }\n  }\n\n  return result;\n}\n\nexport type ICreateStylisInstance = {\n  options?: { namespace?: string | undefined; prefix?: boolean | undefined } | undefined;\n  plugins?: stylis.Middleware[] | undefined;\n};\n\n/**\n * Takes an element and recurses through it's rules added the namespace to the start of each selector.\n * Takes into account media queries by recursing through child rules if they are present.\n */\nfunction recursivelySetNamepace(compiled: stylis.Element[], namespace: String): stylis.Element[] {\n  return compiled.map(rule => {\n    if (rule.type === 'rule') {\n      // add the namespace to the start\n      rule.value = `${namespace} ${rule.value}`;\n      // add the namespace after each comma for subsequent selectors.\n      rule.value = rule.value.replaceAll(',', `,${namespace} `);\n      rule.props = (rule.props as string[]).map(prop => {\n        return `${namespace} ${prop}`;\n      });\n    }\n\n    if (Array.isArray(rule.children) && rule.type !== '@keyframes') {\n      rule.children = recursivelySetNamepace(rule.children, namespace);\n    }\n    return rule;\n  });\n}\n\nexport default function createStylisInstance(\n  {\n    options = EMPTY_OBJECT as object,\n    plugins = EMPTY_ARRAY as unknown as stylis.Middleware[],\n  }: ICreateStylisInstance = EMPTY_OBJECT as object\n) {\n  let _componentId: string;\n  let _selector: string;\n  let _selectorRegexp: RegExp | undefined;\n\n  const selfReferenceReplacer = (match: string, offset: number, string: string) => {\n    if (\n      /**\n       * We only want to refer to the static class directly if the selector is part of a\n       * self-reference selector `& + & { color: red; }`\n       */\n      string.startsWith(_selector) &&\n      string.endsWith(_selector) &&\n      string.replaceAll(_selector, '').length > 0\n    ) {\n      return `.${_componentId}`;\n    }\n\n    return match;\n  };\n\n  /**\n   * When writing a style like\n   *\n   * & + & {\n   *   color: red;\n   * }\n   *\n   * The second ampersand should be a reference to the static component class. stylis\n   * has no knowledge of static class so we have to intelligently replace the base selector.\n   *\n   * https://github.com/thysultan/stylis.js/tree/v4.0.2#abstract-syntax-structure\n   */\n  const selfReferenceReplacementPlugin: stylis.Middleware = element => {\n    if (element.type === stylis.RULESET && element.value.includes('&')) {\n      // Lazy RegExp creation: only allocate when self-reference pattern is actually used\n      if (!_selectorRegexp) {\n        _selectorRegexp = new RegExp(`\\\\${_selector}\\\\b`, 'g');\n      }\n\n      (element.props as string[])[0] = element.props[0]\n        // catch any hanging references that stylis missed\n        .replace(AMP_REGEX, _selector)\n        .replace(_selectorRegexp, selfReferenceReplacer);\n    }\n  };\n\n  const middlewares = plugins.slice();\n\n  middlewares.push(selfReferenceReplacementPlugin);\n\n  /**\n   * Enables automatic vendor-prefixing for styles.\n   */\n  if (options.prefix) {\n    middlewares.push(stylis.prefixer);\n  }\n\n  middlewares.push(stylis.stringify);\n\n  // Pre-build the middleware chain once to avoid allocating closures,\n  // arrays, and middleware wrappers on every stringifyRules call.\n  // Safe because JS is single-threaded and _stack is consumed before next call.\n  let _stack: string[] = [];\n  const _middleware = stylis.middleware(\n    middlewares.concat(stylis.rulesheet(value => _stack.push(value)))\n  );\n\n  const stringifyRules: Stringifier = (\n    css: string,\n    selector = '',\n    /**\n     * This \"prefix\" referes to a _selector_ prefix.\n     */\n    prefix = '',\n    componentId = '&'\n  ) => {\n    // stylis has no concept of state to be passed to plugins\n    // but since JS is single-threaded, we can rely on that to ensure\n    // these properties stay in sync with the current stylis run\n    _componentId = componentId;\n    _selector = selector;\n    _selectorRegexp = undefined; // Reset for lazy creation per call\n\n    const flatCSS = sanitizeCSS(stripLineComments(css));\n    let compiled = stylis.compile(\n      prefix || selector ? `${prefix} ${selector} { ${flatCSS} }` : flatCSS\n    );\n\n    if (options.namespace) {\n      compiled = recursivelySetNamepace(compiled, options.namespace);\n    }\n\n    _stack = [];\n    stylis.serialize(compiled, _middleware);\n\n    return _stack;\n  };\n\n  stringifyRules.hash = plugins.length\n    ? plugins\n        .reduce((acc, plugin) => {\n          if (!plugin.name) {\n            throwStyledError(15);\n          }\n\n          return phash(acc, plugin.name);\n        }, SEED)\n        .toString()\n    : '';\n\n  return stringifyRules;\n}\n","import React from 'react';\nimport type stylis from 'stylis';\nimport { IS_RSC } from '../constants';\nimport StyleSheet from '../sheet';\nimport { InsertionTarget, ShouldForwardProp, Stringifier } from '../types';\nimport createStylisInstance from '../utils/stylis';\n\nexport const mainSheet: StyleSheet = new StyleSheet();\nexport const mainStylis: Stringifier = createStylisInstance();\n\nexport type IStyleSheetContext = {\n  shouldForwardProp?: ShouldForwardProp<'web'> | undefined;\n  styleSheet: StyleSheet;\n  stylis: Stringifier;\n};\n\nconst defaultContextValue: IStyleSheetContext = {\n  shouldForwardProp: undefined,\n  styleSheet: mainSheet,\n  stylis: mainStylis,\n};\n\n// Create context only if createContext is available, otherwise create a fallback\nexport const StyleSheetContext = !IS_RSC\n  ? React.createContext<IStyleSheetContext>(defaultContextValue)\n  : ({\n      Provider: ({ children }: { children: React.ReactNode; value?: IStyleSheetContext }) =>\n        children,\n      Consumer: ({ children }: { children: (value: IStyleSheetContext) => React.ReactNode }) =>\n        children(defaultContextValue),\n    } as React.Context<IStyleSheetContext>);\n\nexport const StyleSheetConsumer = StyleSheetContext.Consumer;\n\nexport type IStylisContext = Stringifier | void;\nexport const StylisContext = !IS_RSC\n  ? React.createContext<IStylisContext>(undefined)\n  : ({\n      Provider: ({ children }: { children: React.ReactNode; value?: IStylisContext }) => children,\n      Consumer: ({ children }: { children: (value: IStylisContext) => React.ReactNode }) =>\n        children(undefined),\n    } as React.Context<IStylisContext>);\nexport const StylisConsumer = StylisContext.Consumer;\n\nexport function useStyleSheetContext() {\n  // Skip useContext if we're in an RSC environment without context support\n  return !IS_RSC ? React.useContext(StyleSheetContext) : defaultContextValue;\n}\n\nexport type IStyleSheetManager = React.PropsWithChildren<{\n  /**\n   * If desired, you can pass this prop to disable \"speedy\" insertion mode, which\n   * uses the browser [CSSOM APIs](https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet).\n   * When disabled, rules are inserted as simple text into style blocks.\n   */\n  disableCSSOMInjection?: undefined | boolean;\n  /**\n   * If you are working exclusively with modern browsers, vendor prefixes can often be omitted\n   * to reduce the weight of CSS on the page.\n   */\n  enableVendorPrefixes?: undefined | boolean;\n  /**\n   * Provide an optional selector to be prepended to all generated style rules.\n   */\n  namespace?: undefined | string;\n  /**\n   * Create and provide your own `StyleSheet` if necessary for advanced SSR scenarios.\n   */\n  sheet?: undefined | StyleSheet;\n  /**\n   * Starting in v6, styled-components no longer does its own prop validation\n   * and recommends use of transient props \"$prop\" to pass style-only props to\n   * components. If for some reason you are not able to use transient props, a\n   * prop validation function can be provided via `StyleSheetManager`, such as\n   * `@emotion/is-prop-valid`.\n   *\n   * When the return value is `true`, props will be forwarded to the DOM/underlying\n   * component. If return value is `false`, the prop will be discarded after styles\n   * are calculated.\n   *\n   * Manually composing `styled.{element}.withConfig({shouldForwardProp})` will\n   * override this default.\n   */\n  shouldForwardProp?: undefined | IStyleSheetContext['shouldForwardProp'];\n  /**\n   * An array of plugins to be run by stylis (style processor) during compilation.\n   * Check out [what's available on npm*](https://www.npmjs.com/search?q=keywords%3Astylis).\n   *\n   * \\* The plugin(s) must be compatible with stylis v4 or above.\n   */\n  stylisPlugins?: undefined | stylis.Middleware[];\n  /**\n   * Provide an alternate DOM node to host generated styles; useful for iframes.\n   */\n  target?: undefined | InsertionTarget;\n}>;\n\nexport function StyleSheetManager(props: IStyleSheetManager): React.JSX.Element {\n  // In RSC environments without context support, StyleSheetManager becomes a no-op\n  if (IS_RSC || !React.useMemo) {\n    return props.children as React.JSX.Element;\n  }\n\n  const { styleSheet } = useStyleSheetContext();\n\n  const resolvedStyleSheet = React.useMemo(() => {\n    let sheet = styleSheet;\n\n    if (props.sheet) {\n      sheet = props.sheet;\n    } else if (props.target) {\n      sheet = sheet.reconstructWithOptions({ target: props.target }, false);\n    }\n\n    if (props.disableCSSOMInjection) {\n      sheet = sheet.reconstructWithOptions({ useCSSOMInjection: false });\n    }\n\n    return sheet;\n  }, [props.disableCSSOMInjection, props.sheet, props.target, styleSheet]);\n\n  const stylis = React.useMemo(\n    () =>\n      createStylisInstance({\n        options: { namespace: props.namespace, prefix: props.enableVendorPrefixes },\n        plugins: props.stylisPlugins,\n      }),\n    [props.enableVendorPrefixes, props.namespace, props.stylisPlugins]\n  );\n\n  const styleSheetContextValue = React.useMemo(\n    () => ({\n      shouldForwardProp: props.shouldForwardProp,\n      styleSheet: resolvedStyleSheet,\n      stylis,\n    }),\n    [props.shouldForwardProp, resolvedStyleSheet, stylis]\n  );\n\n  return (\n    <StyleSheetContext.Provider value={styleSheetContextValue}>\n      <StylisContext.Provider value={stylis}>{props.children}</StylisContext.Provider>\n    </StyleSheetContext.Provider>\n  );\n}\n","import StyleSheet from '../sheet';\nimport { Keyframes as KeyframesType, Stringifier } from '../types';\nimport styledError from '../utils/error';\nimport { setToString } from '../utils/setToString';\nimport { mainStylis } from './StyleSheetManager';\n\nexport default class Keyframes implements KeyframesType {\n  id: string;\n  name: string;\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    setToString(this, () => {\n      throw styledError(12, String(this.name));\n    });\n  }\n\n  inject = (styleSheet: StyleSheet, stylisInstance: Stringifier = mainStylis): void => {\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  getName(stylisInstance: Stringifier = mainStylis): string {\n    return this.name + stylisInstance.hash;\n  }\n}\n","import unitless from '@emotion/unitless';\n\n// Taken from https://github.com/facebook/react/blob/b87aabdfe1b7461e7331abb3601d9e6bb27544bc/packages/react-dom/src/shared/dangerousStyleValue.js\nexport default function addUnitIfNeeded(name: string, value: any) {\n  // https://github.com/amilajack/eslint-plugin-flowtype-errors/issues/133\n  if (value == null || typeof value === 'boolean' || value === '') {\n    return '';\n  }\n\n  if (typeof value === 'number' && value !== 0 && !(name in unitless) && !name.startsWith('--')) {\n    return `${value}px`; // Presumes implicit 'px' suffix for unitless numbers except for CSS variables\n  }\n\n  return String(value).trim();\n}\n","import { StyledTarget } from '../types';\n\nexport default function getComponentName(target: StyledTarget<any>) {\n  return (\n    (process.env.NODE_ENV !== 'production' ? typeof target === 'string' && target : false) ||\n    (target as Exclude<StyledTarget<any>, string>).displayName ||\n    (target as Function).name ||\n    'Component'\n  );\n}\n","const isUpper = (c: string) => c >= 'A' && c <= 'Z';\n\n/**\n * Hyphenates a camelcased CSS property name, for example:\n *\n *   > hyphenateStyleName('backgroundColor')\n *   < \"background-color\"\n *   > hyphenateStyleName('MozTransition')\n *   < \"-moz-transition\"\n *   > hyphenateStyleName('msTransition')\n *   < \"-ms-transition\"\n *\n * As Modernizr suggests (http://modernizr.com/docs/#prefixed), an `ms` prefix\n * is converted to `-ms-`.\n */\nexport default function hyphenateStyleName(string: string): string {\n  let output = '';\n\n  for (let i = 0; i < string.length; i++) {\n    const c = string[i];\n    // Check for CSS variable prefix\n    if (i === 1 && c === '-' && string[0] === '-') {\n      return string;\n    }\n\n    if (isUpper(c)) {\n      output += '-' + c.toLowerCase();\n    } else {\n      output += c;\n    }\n  }\n\n  return output.startsWith('ms-') ? '-' + output : output;\n}\n","export default function isFunction(test: any): test is Function {\n  return typeof test === 'function';\n}\n","export default function isPlainObject(x: any): x is Record<any, any> {\n  return (\n    x !== null &&\n    typeof x === 'object' &&\n    x.constructor.name === Object.name &&\n    /* check for reasonable markers that the object isn't an element for react & preact/compat */\n    !('props' in x && x.$$typeof)\n  );\n}\n","import { StyledComponentBrand } from '../types';\n\nexport default function isStyledComponent(target: any): target is StyledComponentBrand {\n  return typeof target === 'object' && 'styledComponentId' in target;\n}\n","import Keyframes from '../models/Keyframes';\nimport StyleSheet from '../sheet';\nimport {\n  AnyComponent,\n  Dict,\n  ExecutionContext,\n  Interpolation,\n  IStyledComponent,\n  RuleSet,\n  Stringifier,\n  StyledObject,\n} from '../types';\nimport addUnitIfNeeded from './addUnitIfNeeded';\nimport getComponentName from './getComponentName';\nimport hyphenate from './hyphenateStyleName';\nimport isFunction from './isFunction';\nimport isPlainObject from './isPlainObject';\nimport isStatelessFunction from './isStatelessFunction';\nimport isStyledComponent from './isStyledComponent';\n\n/**\n * It's falsish not falsy because 0 is allowed.\n */\nconst isFalsish = (chunk: any): chunk is undefined | null | false | '' =>\n  chunk === undefined || chunk === null || chunk === false || chunk === '';\n\nexport const objToCssArray = (obj: Dict<any>): string[] => {\n  const rules = [];\n\n  for (const key in obj) {\n    const val = obj[key];\n    if (!obj.hasOwnProperty(key) || isFalsish(val)) continue;\n\n    // @ts-expect-error Property 'isCss' does not exist on type 'any[]'\n    if ((Array.isArray(val) && val.isCss) || isFunction(val)) {\n      rules.push(`${hyphenate(key)}:`, val, ';');\n    } else if (isPlainObject(val)) {\n      rules.push(`${key} {`, ...objToCssArray(val), '}');\n    } else {\n      rules.push(`${hyphenate(key)}: ${addUnitIfNeeded(key, val)};`);\n    }\n  }\n\n  return rules;\n};\n\nexport default function flatten<Props extends object>(\n  chunk: Interpolation<object>,\n  executionContext?: (ExecutionContext & Props) | undefined,\n  styleSheet?: StyleSheet | undefined,\n  stylisInstance?: Stringifier | undefined,\n  result: RuleSet<Props> = []\n): RuleSet<Props> {\n  if (typeof chunk === 'string') {\n    if (chunk) result.push(chunk);\n    return result;\n  }\n\n  if (isFalsish(chunk)) {\n    return result;\n  }\n\n  /* Handle other components */\n  if (isStyledComponent(chunk)) {\n    result.push(`.${(chunk as unknown as IStyledComponent<'web', any>).styledComponentId}`);\n    return result;\n  }\n\n  /* Either execute or defer the function */\n  if (isFunction(chunk)) {\n    if (isStatelessFunction(chunk) && executionContext) {\n      const fnResult = chunk(executionContext);\n\n      if (\n        process.env.NODE_ENV !== 'production' &&\n        typeof fnResult === 'object' &&\n        !Array.isArray(fnResult) &&\n        !(fnResult instanceof Keyframes) &&\n        !isPlainObject(fnResult) &&\n        fnResult !== null\n      ) {\n        console.error(\n          `${getComponentName(\n            chunk as AnyComponent\n          )} is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.`\n        );\n      }\n\n      return flatten<Props>(fnResult, executionContext, styleSheet, stylisInstance, result);\n    } else {\n      result.push(chunk as unknown as IStyledComponent<'web'>);\n      return result;\n    }\n  }\n\n  if (chunk instanceof Keyframes) {\n    if (styleSheet) {\n      chunk.inject(styleSheet, stylisInstance);\n      result.push(chunk.getName(stylisInstance));\n    } else {\n      result.push(chunk);\n    }\n    return result;\n  }\n\n  /* Handle objects */\n  if (isPlainObject(chunk)) {\n    const cssArr = objToCssArray(chunk as StyledObject<Props>);\n    for (let i = 0; i < cssArr.length; i++) result.push(cssArr[i]);\n    return result;\n  }\n\n  if (!Array.isArray(chunk)) {\n    result.push(chunk.toString());\n    return result;\n  }\n\n  for (let i = 0; i < chunk.length; i++) {\n    flatten<Props>(chunk[i], executionContext, styleSheet, stylisInstance, result);\n  }\n\n  return result;\n}\n","import isFunction from './isFunction';\n\nexport default function isStatelessFunction(test: any): test is Function {\n  return isFunction(test) && !(test.prototype && test.prototype.isReactComponent);\n}\n","import { Interpolation } from '../types';\n\nexport default function interleave<Props extends object>(\n  strings: readonly string[],\n  interpolations: Interpolation<Props>[]\n): Interpolation<Props>[] {\n  const result: Interpolation<Props>[] = [strings[0]];\n\n  for (let i = 0, len = interpolations.length; i < len; i += 1) {\n    result.push(interpolations[i], strings[i + 1]);\n  }\n\n  return result;\n}\n","import {\n  BaseObject,\n  Interpolation,\n  NoInfer,\n  RuleSet,\n  StyledObject,\n  StyleFunction,\n  Styles,\n} from '../types';\nimport { EMPTY_ARRAY } from '../utils/empties';\nimport flatten from '../utils/flatten';\nimport interleave from '../utils/interleave';\nimport isFunction from '../utils/isFunction';\nimport isPlainObject from '../utils/isPlainObject';\n\n/**\n * Used when flattening object styles to determine if we should\n * expand an array of styles.\n */\nconst addTag = <T extends RuleSet<any>>(arg: T): T & { isCss: true } =>\n  Object.assign(arg, { isCss: true } as const);\n\nfunction css(styles: Styles<object>, ...interpolations: Interpolation<object>[]): RuleSet<object>;\nfunction css<Props extends object>(\n  styles: Styles<NoInfer<Props>>,\n  ...interpolations: Interpolation<NoInfer<Props>>[]\n): RuleSet<NoInfer<Props>>;\nfunction css<Props extends object = BaseObject>(\n  styles: Styles<NoInfer<Props>>,\n  ...interpolations: Interpolation<NoInfer<Props>>[]\n): RuleSet<NoInfer<Props>> {\n  if (isFunction(styles) || isPlainObject(styles)) {\n    const styleFunctionOrObject = styles as StyleFunction<Props> | StyledObject<Props>;\n\n    return addTag(\n      flatten<Props>(\n        interleave<Props>(EMPTY_ARRAY, [\n          styleFunctionOrObject,\n          ...interpolations,\n        ]) as Interpolation<object>\n      )\n    );\n  }\n\n  const styleStringArray = styles as TemplateStringsArray;\n\n  if (\n    interpolations.length === 0 &&\n    styleStringArray.length === 1 &&\n    typeof styleStringArray[0] === 'string'\n  ) {\n    return flatten<Props>(styleStringArray);\n  }\n\n  return addTag(\n    flatten<Props>(interleave<Props>(styleStringArray, interpolations) as Interpolation<object>)\n  );\n}\n\nexport default css;\n","import {\n  Attrs,\n  BaseObject,\n  ExecutionProps,\n  Interpolation,\n  IStyledComponent,\n  IStyledComponentFactory,\n  KnownTarget,\n  NoInfer,\n  Runtime,\n  StyledOptions,\n  StyledTarget,\n  Styles,\n  Substitute,\n} from '../types';\nimport { EMPTY_OBJECT } from '../utils/empties';\nimport styledError from '../utils/error';\nimport css from './css';\n\ntype AttrsResult<T extends Attrs<any>> = T extends (...args: any) => infer P\n  ? P extends object\n    ? P\n    : never\n  : T extends object\n    ? T\n    : never;\n\n/**\n * Based on Attrs being a simple object or function that returns\n * a prop object, inspect the attrs result and attempt to extract\n * any \"as\" prop usage to modify the runtime target.\n */\ntype AttrsTarget<\n  R extends Runtime,\n  T extends Attrs<any>,\n  FallbackTarget extends StyledTarget<R>,\n  Result extends ExecutionProps = AttrsResult<T>,\n> = Result extends { as: infer RuntimeTarget }\n  ? RuntimeTarget extends KnownTarget\n    ? RuntimeTarget\n    : FallbackTarget\n  : FallbackTarget;\n\nexport interface Styled<\n  R extends Runtime,\n  Target extends StyledTarget<R>,\n  OuterProps extends object,\n  OuterStatics extends object = BaseObject,\n> {\n  <Props extends object = BaseObject, Statics extends object = BaseObject>(\n    initialStyles: Styles<Substitute<OuterProps, NoInfer<Props>>>,\n    ...interpolations: Interpolation<Substitute<OuterProps, NoInfer<Props>>>[]\n  ): IStyledComponent<R, Substitute<OuterProps, Props>> &\n    OuterStatics &\n    Statics &\n    (R extends 'web'\n      ? Target extends string\n        ? {}\n        : Omit<Target, keyof React.Component<any>>\n      : {});\n\n  attrs: <\n    Props extends object = BaseObject,\n    PrivateMergedProps extends object = Substitute<OuterProps, Props>,\n    PrivateAttrsArg extends Attrs<PrivateMergedProps> = Attrs<PrivateMergedProps>,\n    PrivateResolvedTarget extends StyledTarget<R> = AttrsTarget<R, PrivateAttrsArg, Target>,\n  >(\n    attrs: PrivateAttrsArg\n  ) => Styled<\n    R,\n    PrivateResolvedTarget,\n    PrivateResolvedTarget extends KnownTarget\n      ? Substitute<\n          Substitute<OuterProps, React.ComponentPropsWithRef<PrivateResolvedTarget>>,\n          Props\n        >\n      : PrivateMergedProps,\n    OuterStatics\n  >;\n\n  withConfig: (config: StyledOptions<R, OuterProps>) => Styled<R, Target, OuterProps, OuterStatics>;\n}\n\nexport default function constructWithOptions<\n  R extends Runtime,\n  Target extends StyledTarget<R>,\n  OuterProps extends object = Target extends KnownTarget\n    ? React.ComponentPropsWithRef<Target>\n    : BaseObject,\n  OuterStatics extends object = BaseObject,\n>(\n  componentConstructor: IStyledComponentFactory<R, StyledTarget<R>, object, any>,\n  tag: StyledTarget<R>,\n  options: StyledOptions<R, OuterProps> = EMPTY_OBJECT\n): Styled<R, Target, OuterProps, OuterStatics> {\n  /**\n   * We trust that the tag is a valid component as long as it isn't\n   * falsish. Typically the tag here is a string or function (i.e.\n   * class or pure function component), however a component may also be\n   * an object if it uses another utility, e.g. React.memo. React will\n   * output an appropriate warning however if the `tag` isn't valid.\n   */\n  if (!tag) {\n    throw styledError(1, tag);\n  }\n\n  /* This is callable directly as a template function */\n  const templateFunction = <Props extends object = BaseObject, Statics extends object = BaseObject>(\n    initialStyles: Styles<Substitute<OuterProps, Props>>,\n    ...interpolations: Interpolation<Substitute<OuterProps, Props>>[]\n  ) =>\n    componentConstructor<Substitute<OuterProps, Props>, Statics>(\n      tag,\n      options as StyledOptions<R, Substitute<OuterProps, Props>>,\n      css<Substitute<OuterProps, Props>>(initialStyles, ...interpolations)\n    );\n\n  /**\n   * Attrs allows for accomplishing two goals:\n   *\n   * 1. Backfilling props at runtime more expressively than defaultProps\n   * 2. Amending the prop interface of a wrapped styled component\n   */\n  templateFunction.attrs = <\n    Props extends object = BaseObject,\n    PrivateMergedProps extends object = Substitute<OuterProps, Props>,\n    PrivateAttrsArg extends Attrs<PrivateMergedProps> = Attrs<PrivateMergedProps>,\n    PrivateResolvedTarget extends StyledTarget<R> = AttrsTarget<R, PrivateAttrsArg, Target>,\n  >(\n    attrs: PrivateAttrsArg\n  ) =>\n    constructWithOptions<\n      R,\n      PrivateResolvedTarget,\n      PrivateResolvedTarget extends KnownTarget\n        ? Substitute<\n            Substitute<OuterProps, React.ComponentPropsWithRef<PrivateResolvedTarget>>,\n            Props\n          >\n        : PrivateMergedProps,\n      OuterStatics\n    >(componentConstructor, tag, {\n      ...options,\n      attrs: Array.prototype.concat(options.attrs, attrs).filter(Boolean),\n    });\n\n  /**\n   * If config methods are called, wrap up a new template function\n   * and merge options.\n   */\n  templateFunction.withConfig = (config: StyledOptions<R, OuterProps>) =>\n    constructWithOptions<R, Target, OuterProps, OuterStatics>(componentConstructor, tag, {\n      ...options,\n      ...config,\n    });\n\n  return templateFunction;\n}\n","import React from 'react';\nimport { IS_RSC } from '../constants';\nimport styledError from '../utils/error';\nimport isFunction from '../utils/isFunction';\n\n// Helper type for the `DefaultTheme` interface that enforces an object type & exclusively allows\n// for typed keys.\ntype DefaultThemeAsObject<T = object> = Record<keyof T, any>;\n\n/**\n * Override DefaultTheme to get accurate typings for your project.\n *\n * ```\n * // create styled-components.d.ts in your project source\n * // if it isn't being picked up, check tsconfig compilerOptions.types\n * import type { CSSProp } from \"styled-components\";\n * import Theme from './theme';\n *\n * type ThemeType = typeof Theme;\n *\n * declare module \"styled-components\" {\n *  export interface DefaultTheme extends ThemeType {}\n * }\n *\n * declare module \"react\" {\n *  interface DOMAttributes<T> {\n *    css?: CSSProp;\n *  }\n * }\n * ```\n */\nexport interface DefaultTheme extends DefaultThemeAsObject {}\n\ntype ThemeFn = (outerTheme?: DefaultTheme | undefined) => DefaultTheme;\ntype ThemeArgument = DefaultTheme | ThemeFn;\n\ntype Props = {\n  children?: React.ReactNode;\n  theme: ThemeArgument;\n};\n\n// Create context only if createContext is available, otherwise create a fallback\nexport const ThemeContext = !IS_RSC\n  ? React.createContext<DefaultTheme | undefined>(undefined)\n  : ({\n      Provider: ({ children }: { children: React.ReactNode; value?: DefaultTheme }) => children,\n      Consumer: ({ children }: { children: (theme?: DefaultTheme) => React.ReactNode }) =>\n        children(undefined),\n    } as React.Context<DefaultTheme | undefined>);\n\nexport const ThemeConsumer = ThemeContext.Consumer;\n\nfunction mergeTheme(theme: ThemeArgument, outerTheme?: DefaultTheme | undefined): DefaultTheme {\n  if (!theme) {\n    throw styledError(14);\n  }\n\n  if (isFunction(theme)) {\n    const themeFn = theme as ThemeFn;\n    const mergedTheme = themeFn(outerTheme);\n\n    if (\n      process.env.NODE_ENV !== 'production' &&\n      (mergedTheme === null || Array.isArray(mergedTheme) || typeof mergedTheme !== 'object')\n    ) {\n      throw styledError(7);\n    }\n\n    return mergedTheme;\n  }\n\n  if (Array.isArray(theme) || typeof theme !== 'object') {\n    throw styledError(8);\n  }\n\n  return outerTheme ? { ...outerTheme, ...theme } : theme;\n}\n\n/**\n * Returns the current theme (as provided by the closest ancestor `ThemeProvider`.)\n *\n * If no `ThemeProvider` is found, the function will error. If you need access to the theme in an\n * uncertain composition scenario, `React.useContext(ThemeContext)` will not emit an error if there\n * is no `ThemeProvider` ancestor.\n */\nexport function useTheme(): DefaultTheme {\n  // Skip useContext if we're in an RSC environment without context support\n  const theme = !IS_RSC ? React.useContext(ThemeContext) : undefined;\n\n  if (!theme) {\n    throw styledError(18);\n  }\n\n  return theme;\n}\n\n/**\n * Provide a theme to an entire react component tree via context\n */\nexport default function ThemeProvider(props: Props): React.JSX.Element | null {\n  // In RSC environments without context support, ThemeProvider becomes a no-op\n  if (IS_RSC) {\n    return props.children as React.JSX.Element | null;\n  }\n\n  const outerTheme = React.useContext(ThemeContext);\n  const themeContext = React.useMemo(\n    () => mergeTheme(props.theme, outerTheme),\n    [props.theme, outerTheme]\n  );\n\n  if (!props.children) {\n    return null;\n  }\n\n  return <ThemeContext.Provider value={themeContext}>{props.children}</ThemeContext.Provider>;\n}\n","import { DefaultTheme, ExecutionProps } from '../types';\nimport { EMPTY_OBJECT } from './empties';\n\nexport default function determineTheme(\n  props: ExecutionProps,\n  providedTheme?: DefaultTheme | undefined,\n  defaultProps: { theme?: DefaultTheme | undefined } = EMPTY_OBJECT\n): DefaultTheme | undefined {\n  return (props.theme !== defaultProps.theme && props.theme) || providedTheme || defaultProps.theme;\n}\n","import React from 'react';\nimport { AnyComponent } from '../types';\n\nconst hasSymbol = typeof Symbol === 'function' && Symbol.for;\n\n// copied from react-is\nconst REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nconst REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\n\n/**\n * Adapted from hoist-non-react-statics to avoid the react-is dependency.\n */\nconst REACT_STATICS = {\n  childContextTypes: true,\n  contextType: true,\n  contextTypes: true,\n  defaultProps: true,\n  displayName: true,\n  getDefaultProps: true,\n  getDerivedStateFromError: true,\n  getDerivedStateFromProps: true,\n  mixins: true,\n  propTypes: true,\n  type: true,\n};\n\nconst KNOWN_STATICS = {\n  name: true,\n  length: true,\n  prototype: true,\n  caller: true,\n  callee: true,\n  arguments: true,\n  arity: true,\n};\n\nconst FORWARD_REF_STATICS = {\n  $$typeof: true,\n  render: true,\n  defaultProps: true,\n  displayName: true,\n  propTypes: true,\n};\n\nconst MEMO_STATICS = {\n  $$typeof: true,\n  compare: true,\n  defaultProps: true,\n  displayName: true,\n  propTypes: true,\n  type: true,\n};\n\nconst TYPE_STATICS = {\n  [REACT_FORWARD_REF_TYPE]: FORWARD_REF_STATICS,\n  [REACT_MEMO_TYPE]: MEMO_STATICS,\n};\n\ntype OmniComponent = AnyComponent;\n\n// adapted from react-is\nfunction isMemo(\n  object: OmniComponent | React.MemoExoticComponent<any>\n): object is React.MemoExoticComponent<any> {\n  const $$typeofType = 'type' in object && object.type.$$typeof;\n\n  return $$typeofType === REACT_MEMO_TYPE;\n}\n\nfunction getStatics(component: OmniComponent) {\n  // React v16.11 and below\n  if (isMemo(component)) {\n    return MEMO_STATICS;\n  }\n\n  // React v16.12 and above\n  return '$$typeof' in component\n    ? TYPE_STATICS[component['$$typeof'] as unknown as string]\n    : REACT_STATICS;\n}\n\nconst defineProperty = Object.defineProperty;\nconst getOwnPropertyNames = Object.getOwnPropertyNames;\nconst getOwnPropertySymbols = Object.getOwnPropertySymbols;\nconst getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nconst getPrototypeOf = Object.getPrototypeOf;\nconst objectPrototype = Object.prototype;\n\ntype ExcludeList = {\n  [key: string]: true;\n};\n\nexport type NonReactStatics<S extends OmniComponent, C extends ExcludeList = {}> = {\n  [key in Exclude<\n    keyof S,\n    S extends React.MemoExoticComponent<any>\n      ? keyof typeof MEMO_STATICS | keyof C\n      : S extends React.ForwardRefExoticComponent<any>\n        ? keyof typeof FORWARD_REF_STATICS | keyof C\n        : keyof typeof REACT_STATICS | keyof typeof KNOWN_STATICS | keyof C\n  >]: S[key];\n};\n\nexport default function hoistNonReactStatics<\n  T extends OmniComponent,\n  S extends OmniComponent,\n  C extends ExcludeList = {},\n>(targetComponent: T, sourceComponent: S, excludelist?: C | undefined) {\n  if (typeof sourceComponent !== 'string') {\n    // don't hoist over string (html) components\n\n    if (objectPrototype) {\n      const inheritedComponent = getPrototypeOf(sourceComponent);\n      if (inheritedComponent && inheritedComponent !== objectPrototype) {\n        hoistNonReactStatics(targetComponent, inheritedComponent, excludelist);\n      }\n    }\n\n    let keys: (String | Symbol)[] = getOwnPropertyNames(sourceComponent);\n\n    if (getOwnPropertySymbols) {\n      keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n    }\n\n    const targetStatics = getStatics(targetComponent);\n    const sourceStatics = getStatics(sourceComponent);\n\n    for (let i = 0; i < keys.length; ++i) {\n      const key = keys[i] as unknown as string;\n      if (\n        !(key in KNOWN_STATICS) &&\n        !(excludelist && excludelist[key]) &&\n        !(sourceStatics && key in sourceStatics) &&\n        !(targetStatics && key in targetStatics)\n      ) {\n        const descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n        try {\n          // Avoid failures from read-only properties\n          defineProperty(targetComponent, key, descriptor!);\n        } catch (e) {\n          /* ignore */\n        }\n      }\n    }\n  }\n\n  return targetComponent as T & NonReactStatics<S, C>;\n}\n","import React from 'react';\nimport { IS_RSC } from '../constants';\nimport { ThemeContext } from '../models/ThemeProvider';\nimport { AnyComponent, ExecutionProps } from '../types';\nimport determineTheme from '../utils/determineTheme';\nimport getComponentName from '../utils/getComponentName';\nimport hoist, { NonReactStatics } from '../utils/hoist';\n\ntype WithThemeOuterProps<T extends AnyComponent> = Omit<\n  React.ComponentPropsWithRef<T>,\n  keyof ExecutionProps\n> &\n  ExecutionProps;\n\nexport default function withTheme<T extends AnyComponent>(\n  Component: T\n): React.ForwardRefExoticComponent<\n  React.PropsWithoutRef<WithThemeOuterProps<T>> & React.RefAttributes<any>\n> &\n  NonReactStatics<T> {\n  const WithTheme = React.forwardRef<any, WithThemeOuterProps<T>>((props, ref) => {\n    const theme = !IS_RSC ? React.useContext(ThemeContext) : undefined;\n    const themeProp = determineTheme(props, theme, Component.defaultProps);\n\n    if (process.env.NODE_ENV !== 'production' && themeProp === undefined) {\n      console.warn(\n        `[withTheme] You are not using a ThemeProvider nor passing a theme prop or a theme in defaultProps in component class \"${getComponentName(\n          Component\n        )}\"`\n      );\n    }\n\n    return React.createElement(Component, {\n      ...props,\n      theme: themeProp,\n      ref,\n    } as React.ComponentPropsWithRef<T>);\n  });\n\n  WithTheme.displayName = `WithTheme(${getComponentName(Component)})`;\n\n  return hoist(WithTheme, Component);\n}\n","const AD_REPLACER_R = /(a)(d)/gi;\n\n/* This is the \"capacity\" of our alphabet i.e. 2x26 for all letters plus their capitalised\n * counterparts */\nconst charsLength = 52;\n\n/* start at 75 for 'a' until 'z' (25) and then start at 65 for capitalised letters */\nconst getAlphabeticChar = (code: number) => String.fromCharCode(code + (code > 25 ? 39 : 97));\n\n/* input a number, usually a hash and convert it to base-52 */\nexport default function generateAlphabeticName(code: number) {\n  let name = '';\n  let x;\n\n  /* get a char and divide by alphabet-length */\n  for (x = Math.abs(code); x > charsLength; x = (x / charsLength) | 0) {\n    name = getAlphabeticChar(x % charsLength) + name;\n  }\n\n  return (getAlphabeticChar(x % charsLength) + name).replace(AD_REPLACER_R, '$1-$2');\n}\n","/**\n * Convenience function for joining strings to form className chains\n */\nexport function joinStrings(a?: string | undefined, b?: string | undefined): string {\n  return a && b ? `${a} ${b}` : a || b || '';\n}\n\nexport function joinStringArray(arr: string[], sep?: string | undefined): string {\n  return arr.join(sep || '');\n}\n","import transformDeclPairs from 'css-to-react-native';\nimport { parse } from 'postcss';\nimport {\n  Dict,\n  ExecutionContext,\n  IInlineStyle,\n  IInlineStyleConstructor,\n  RuleSet,\n  StyleSheet,\n} from '../types';\nimport flatten from '../utils/flatten';\nimport generateComponentId from '../utils/generateComponentId';\nimport { joinStringArray } from '../utils/joinStrings';\n\n// List of CSS values not supported by React Native\nexport const RN_UNSUPPORTED_VALUES = ['fit-content', 'min-content', 'max-content'];\n\nlet generated: Dict<any> = {};\n\nexport const resetStyleCache = (): void => {\n  generated = {};\n};\n\n/**\n * InlineStyle takes arbitrary CSS and generates a flat object\n */\nexport default function makeInlineStyleClass<Props extends object>(styleSheet: StyleSheet) {\n  const InlineStyle: IInlineStyleConstructor<Props> = class InlineStyle implements IInlineStyle<Props> {\n    rules: RuleSet<Props>;\n\n    constructor(rules: RuleSet<Props>) {\n      this.rules = rules;\n    }\n\n    generateStyleObject(executionContext: ExecutionContext & Props) {\n      // keyframes, functions, and component selectors are not allowed for React Native\n      const flatCSS = joinStringArray(\n        flatten(this.rules as RuleSet<object>, executionContext) as string[]\n      );\n      const hash = generateComponentId(flatCSS);\n\n      if (!generated[hash]) {\n        const root = parse(flatCSS);\n        const declPairs: [string, string][] = [];\n\n        root.each(node => {\n          if (node.type === 'decl') {\n            if (RN_UNSUPPORTED_VALUES.includes(node.value)) {\n              if (process.env.NODE_ENV !== 'production') {\n                console.warn(\n                  `[styled-components/native] The value \"${node.value}\" for property \"${node.prop}\" is not supported in React Native and will be ignored.`\n                );\n              }\n              return;\n            }\n            declPairs.push([node.prop, node.value]);\n          } else if (process.env.NODE_ENV !== 'production' && node.type !== 'comment') {\n            console.warn(`Node of type ${node.type} not supported as an inline style`);\n          }\n        });\n\n        // RN currently does not support differing values for the border color of Image\n        // components (but does for View). It is almost impossible to tell whether we'll have\n        // support, so we'll just disable multiple values here.\n        // https://github.com/styled-components/styled-components/issues/4181\n\n        const styleObject = transformDeclPairs(declPairs, ['borderWidth', 'borderColor']);\n\n        const styles = styleSheet.create({\n          generated: styleObject,\n        });\n\n        generated[hash] = styles.generated;\n      }\n      return generated[hash];\n    }\n  };\n\n  return InlineStyle;\n}\n","import isPlainObject from './isPlainObject';\n\nfunction mixinRecursively(target: any, source: any, forceMerge = false) {\n  /* only merge into POJOs, Arrays, but for top level objects only\n   * allow to merge into anything by passing forceMerge = true */\n  if (!forceMerge && !isPlainObject(target) && !Array.isArray(target)) {\n    return source;\n  }\n\n  if (Array.isArray(source)) {\n    for (let key = 0; key < source.length; key++) {\n      target[key] = mixinRecursively(target[key], source[key]);\n    }\n  } else if (isPlainObject(source)) {\n    for (const key in source) {\n      target[key] = mixinRecursively(target[key], source[key]);\n    }\n  }\n\n  return target;\n}\n\n/**\n * Arrays & POJOs merged recursively, other objects and value types are overridden\n * If target is not a POJO or an Array, it will get source properties injected via shallow merge\n * Source objects applied left to right.  Mutates & returns target.  Similar to lodash merge.\n */\nexport default function mixinDeep(target: any, ...sources: any[]) {\n  for (const source of sources) {\n    mixinRecursively(target, source, true);\n  }\n\n  return target;\n}\n","import React, { createElement, Ref } from 'react';\nimport type {\n  Attrs,\n  BaseObject,\n  Dict,\n  ExecutionContext,\n  ExecutionProps,\n  IInlineStyleConstructor,\n  IStyledComponent,\n  IStyledComponentFactory,\n  IStyledStatics,\n  NativeTarget,\n  OmitNever,\n  RuleSet,\n  StyledOptions,\n} from '../types';\nimport determineTheme from '../utils/determineTheme';\nimport { EMPTY_ARRAY, EMPTY_OBJECT } from '../utils/empties';\nimport generateDisplayName from '../utils/generateDisplayName';\nimport hoist from '../utils/hoist';\nimport isFunction from '../utils/isFunction';\nimport isStyledComponent from '../utils/isStyledComponent';\nimport merge from '../utils/mixinDeep';\nimport { DefaultTheme, ThemeContext } from './ThemeProvider';\n\nfunction useResolvedAttrs<Props extends object>(\n  theme: DefaultTheme = EMPTY_OBJECT,\n  props: Props,\n  attrs: Attrs<Props>[]\n) {\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: ExecutionContext & Props = { ...props, theme };\n  const resolvedAttrs: Dict<any> = {};\n\n  attrs.forEach(attrDef => {\n    let resolvedAttrDef = isFunction(attrDef) ? attrDef(context) : attrDef;\n    let key;\n\n    for (key in resolvedAttrDef) {\n      // @ts-expect-error bad types\n      context[key] = resolvedAttrs[key] = resolvedAttrDef[key];\n    }\n  });\n\n  return [context, resolvedAttrs] as const;\n}\n\ninterface StyledComponentImplProps extends ExecutionProps {\n  style?: any;\n}\n\nfunction useStyledComponentImpl<Props extends StyledComponentImplProps>(\n  forwardedComponent: IStyledComponent<'native', Props>,\n  props: Props,\n  forwardedRef: Ref<any>\n) {\n  const {\n    attrs: componentAttrs,\n    inlineStyle,\n    defaultProps,\n    shouldForwardProp,\n    target,\n  } = forwardedComponent;\n\n  const contextTheme = React.useContext ? React.useContext(ThemeContext) : undefined;\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, contextTheme, defaultProps);\n\n  const [context, attrs] = useResolvedAttrs<Props>(theme || EMPTY_OBJECT, props, componentAttrs);\n\n  const generatedStyles = inlineStyle.generateStyleObject(context);\n\n  const refToForward = forwardedRef;\n\n  const elementToBeCreated: NativeTarget = attrs.as || props.as || target;\n\n  const computedProps: Dict<any> = attrs !== props ? { ...props, ...attrs } : props;\n  const propsForElement: Dict<any> = {};\n\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 (!shouldForwardProp || shouldForwardProp(key, elementToBeCreated)) {\n      propsForElement[key] = computedProps[key];\n    }\n  }\n\n  propsForElement.style = React.useMemo\n    ? React.useMemo(\n        () =>\n          isFunction(props.style)\n            ? (state: any) => [generatedStyles].concat(props.style(state))\n            : props.style\n              ? [generatedStyles].concat(props.style)\n              : generatedStyles,\n        [props.style, generatedStyles]\n      )\n    : isFunction(props.style)\n      ? (state: any) => [generatedStyles].concat(props.style(state))\n      : props.style\n        ? [generatedStyles].concat(props.style)\n        : generatedStyles;\n  // forwardedRef is coming from React.forwardRef.\n  // But it might not exist. Since React 19 handles `ref` like a prop, it only define it if there is a value.\n  // We don't want to inject an empty ref.\n  if (forwardedRef) {\n    propsForElement.ref = refToForward;\n  }\n\n  return createElement(elementToBeCreated, propsForElement);\n}\n\nexport default (InlineStyle: IInlineStyleConstructor<any>) => {\n  const createStyledNativeComponent = <\n    Target extends NativeTarget,\n    OuterProps extends ExecutionProps,\n    Statics extends object = BaseObject,\n  >(\n    target: Target,\n    options: StyledOptions<'native', OuterProps>,\n    rules: RuleSet<OuterProps>\n  ): ReturnType<IStyledComponentFactory<'native', Target, OuterProps, Statics>> => {\n    const isTargetStyledComp = isStyledComponent(target);\n    const styledComponentTarget = target as IStyledComponent<'native', OuterProps>;\n\n    const { displayName = generateDisplayName(target), attrs = EMPTY_ARRAY } = options;\n\n    // fold the underlying StyledComponent attrs up (implicit extend)\n    const finalAttrs =\n      isTargetStyledComp && styledComponentTarget.attrs\n        ? styledComponentTarget.attrs.concat(attrs).filter(Boolean)\n        : (attrs as Attrs<OuterProps>[]);\n\n    let shouldForwardProp = options.shouldForwardProp;\n\n    if (isTargetStyledComp && styledComponentTarget.shouldForwardProp) {\n      const shouldForwardPropFn = styledComponentTarget.shouldForwardProp;\n\n      if (options.shouldForwardProp) {\n        const passedShouldForwardPropFn = options.shouldForwardProp;\n\n        // compose nested shouldForwardProp calls\n        shouldForwardProp = (prop, elementToBeCreated) =>\n          shouldForwardPropFn(prop, elementToBeCreated) &&\n          passedShouldForwardPropFn(prop, elementToBeCreated);\n      } else {\n        shouldForwardProp = shouldForwardPropFn;\n      }\n    }\n\n    const forwardRefRender = (\n      props: React.PropsWithoutRef<ExecutionProps & OuterProps>,\n      ref: React.Ref<any>\n    ) =>\n      useStyledComponentImpl<OuterProps>(\n        WrappedStyledComponent,\n        props as ExecutionProps & OuterProps,\n        ref\n      );\n\n    forwardRefRender.displayName = displayName;\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 = React.forwardRef(forwardRefRender) as unknown as IStyledComponent<\n      'native',\n      any\n    > &\n      Statics;\n\n    WrappedStyledComponent.attrs = finalAttrs;\n    WrappedStyledComponent.inlineStyle = new InlineStyle(\n      isTargetStyledComp ? styledComponentTarget.inlineStyle.rules.concat(rules) : rules\n    ) as InstanceType<IInlineStyleConstructor<OuterProps>>;\n    WrappedStyledComponent.displayName = displayName;\n    WrappedStyledComponent.shouldForwardProp = shouldForwardProp;\n\n    // @ts-expect-error we don't actually need this for anything other than detection of a styled-component\n    WrappedStyledComponent.styledComponentId = true;\n\n    // fold the underlying StyledComponent target up since we folded the styles\n    WrappedStyledComponent.target = isTargetStyledComp ? styledComponentTarget.target : target;\n\n    Object.defineProperty(WrappedStyledComponent, 'defaultProps', {\n      get() {\n        return this._foldedDefaultProps;\n      },\n\n      set(obj) {\n        this._foldedDefaultProps = isTargetStyledComp\n          ? merge({}, styledComponentTarget.defaultProps, obj)\n          : obj;\n      },\n    });\n\n    hoist<typeof WrappedStyledComponent, typeof target>(WrappedStyledComponent, target, {\n      // all SC-specific things should not be hoisted\n      attrs: true,\n      inlineStyle: true,\n      displayName: true,\n      shouldForwardProp: true,\n      target: true,\n    } as { [key in keyof OmitNever<IStyledStatics<'native', Target>>]: true });\n\n    return WrappedStyledComponent;\n  };\n\n  return createStyledNativeComponent;\n};\n","import transformDeclPairs from 'css-to-react-native';\nimport { parse } from 'postcss';\nimport React from 'react';\nimport constructWithOptions, { Styled } from '../constructors/constructWithOptions';\nimport css from '../constructors/css';\nimport withTheme from '../hoc/withTheme';\nimport _InlineStyle from '../models/InlineStyle';\nimport _StyledNativeComponent from '../models/StyledNativeComponent';\nimport ThemeProvider, { ThemeConsumer, ThemeContext, useTheme } from '../models/ThemeProvider';\nimport { NativeTarget, RuleSet } from '../types';\nimport flatten from '../utils/flatten';\nimport isStyledComponent from '../utils/isStyledComponent';\nimport { joinStringArray } from '../utils/joinStrings';\n\nconst reactNative = require('react-native') as Awaited<typeof import('react-native')>;\n\nconst InlineStyle = _InlineStyle(reactNative.StyleSheet);\nconst StyledNativeComponent = _StyledNativeComponent(InlineStyle);\n\nconst baseStyled = <Target extends NativeTarget>(tag: Target) =>\n  constructWithOptions<'native', Target>(StyledNativeComponent, tag);\n\n/* React native lazy-requires each of these modules for some reason, so let's\n *  assume it's for a good reason and not eagerly load them all */\nconst aliases = [\n  'ActivityIndicator',\n  'Button',\n  'DatePickerIOS',\n  'DrawerLayoutAndroid',\n  'FlatList',\n  'Image',\n  'ImageBackground',\n  'KeyboardAvoidingView',\n  'Modal',\n  'Pressable',\n  'ProgressBarAndroid',\n  'ProgressViewIOS',\n  'RefreshControl',\n  'SafeAreaView',\n  'ScrollView',\n  'SectionList',\n  'Slider',\n  'Switch',\n  'Text',\n  'TextInput',\n  'TouchableHighlight',\n  'TouchableOpacity',\n  'View',\n  'VirtualizedList',\n] as const;\n\ntype KnownComponents = (typeof aliases)[number];\n\n/** Isolates RN-provided components since they don't expose a helper type for this. */\ntype RNComponents = {\n  [K in keyof typeof reactNative]: (typeof reactNative)[K] extends React.ComponentType<any>\n    ? (typeof reactNative)[K]\n    : never;\n};\n\nconst styled = baseStyled as typeof baseStyled & {\n  [E in KnownComponents]: Styled<'native', RNComponents[E], React.ComponentProps<RNComponents[E]>>;\n};\n\n/* Define a getter for each alias which simply gets the reactNative component\n * and passes it to styled */\naliases.forEach(alias =>\n  Object.defineProperty(styled, alias, {\n    enumerable: true,\n    configurable: false,\n    get() {\n      if (alias in reactNative && reactNative[alias]) {\n        return styled(reactNative[alias]);\n      }\n\n      throw new Error(\n        `${alias} is not available in the currently-installed version of react-native`\n      );\n    },\n  })\n);\n\nconst toStyleSheet = (rules: RuleSet<object>) => {\n  const flatCSS = joinStringArray(flatten(rules) as string[]);\n\n  const root = parse(flatCSS);\n  const declPairs: [string, string][] = [];\n\n  root.each(node => {\n    if (node.type === 'decl') {\n      declPairs.push([node.prop, node.value]);\n    } else if (process.env.NODE_ENV !== 'production' && node.type !== 'comment') {\n      console.warn(`Node of type ${node.type} not supported as an inline style`);\n    }\n  });\n\n  const styleObject = transformDeclPairs(declPairs, ['borderWidth', 'borderColor']);\n\n  return reactNative.StyleSheet.create({ style: styleObject }).style;\n};\n\nexport {\n  CSSKeyframes,\n  CSSObject,\n  CSSProperties,\n  CSSPseudos,\n  DefaultTheme,\n  ExecutionContext,\n  ExecutionProps,\n  IStyledComponent,\n  IStyledComponentFactory,\n  IStyledStatics,\n  NativeTarget,\n  PolymorphicComponent,\n  PolymorphicComponentProps,\n  Runtime,\n  StyledObject,\n  StyledOptions,\n} from '../types';\nexport {\n  css,\n  styled as default,\n  isStyledComponent,\n  styled,\n  ThemeConsumer,\n  ThemeContext,\n  ThemeProvider,\n  toStyleSheet,\n  useTheme,\n  withTheme,\n};\n","import generateAlphabeticName from './generateAlphabeticName';\nimport { hash } from './hash';\n\nexport default function generateComponentId(str: string) {\n  return generateAlphabeticName(hash(str) >>> 0);\n}\n","import { StyledTarget } from '../types';\nimport getComponentName from './getComponentName';\nimport isTag from './isTag';\n\nexport default function generateDisplayName(target: StyledTarget<any>) {\n  return isTag(target) ? `styled.${target}` : `Styled(${getComponentName(target)})`;\n}\n","import { StyledTarget } from '../types';\n\nexport default function isTag(target: StyledTarget<'web'>): target is string {\n  return (\n    typeof target === 'string' &&\n    (process.env.NODE_ENV !== 'production'\n      ? target.charAt(0) === target.charAt(0).toLowerCase()\n      : true)\n  );\n}\n"],"names":["EMPTY_ARRAY","Object","freeze","EMPTY_OBJECT","ERRORS","process","env","NODE_ENV","format","args","_i","arguments","length","a","b","c","len","push","forEach","d","replace","throwStyledComponentsError","code","interpolations","Error","concat","join","trim","setToString","object","toStringFn","defineProperty","value","SC_ATTR","REACT_APP_SC_ATTR","SC_ATTR_ACTIVE","SC_ATTR_VERSION","SC_VERSION","SPLITTER","IS_BROWSER","window","document","DISABLE_SPEEDY","Boolean","SC_DISABLE_SPEEDY","REACT_APP_SC_DISABLE_SPEEDY","DefaultGroupedTag","tag","this","groupSizes","Uint32Array","_cGroup","_cIndex","prototype","indexOfGroup","group","index","i","insertRules","rules","oldBuffer","oldSize","newSize","styledError","set","ruleIndex","insertedCount","l","insertRule","clearGroup","length_1","startIndex","endIndex","deleteRule","getGroup","css","getRule","MAX_SMI","groupIDRegister","Map","reverseRegister","nextFreeGroup","getGroupForId","id","has","get","setGroupForId","SELECTOR","MARKER_RE","RegExp","isShadowRoot","node","ShadowRoot","nodeType","getRehydrationContainer","target","root","getRootNode","rehydrateNamesFromContent","sheet","content","name","names","split","registerName","rehydrateSheetFromTag","style","parts","_a","textContent","part","marker","match","parseInt","getTag","rehydrateSheet","nodes","options","querySelectorAll","getAttribute","parentNode","removeChild","makeStyleTag","head","parent","createElement","prevStyle","arr","Array","from","findLastStyleTag","nextSibling","undefined","setAttribute","nonce","__webpack_nonce__","insertBefore","CSSOMTag","element","appendChild","createTextNode","styleSheets","ownerNode","getSheet","rule","_error","cssRules","cssText","TextTag","childNodes","VirtualTag","_target","splice","SHOULD_REHYDRATE","defaultOptions","isServer","useCSSOMInjection","StyleSheet","globalStyles","_this","__assign","gs","server","getIdForGroup","size","selector","outputSheet","registerId","rehydrate","reconstructWithOptions","withNames","newSheet","allocateGSInstance","makeTag","hasNameForId","_b","existing","add","Set","clearNames","clear","clearRules","clearTag","phash","h","x","charCodeAt","AMP_REGEX","SLASH","ASTERISK","hasUnbalancedBraces","indexOf","depth","inString","inComment","recursivelySetNamepace","compiled","namespace","map","type","replaceAll","props","prop","isArray","children","mainSheet","mainStylis","_componentId","_selector","_selectorRegexp","_c","_d","plugins","selfReferenceReplacer","offset","string","startsWith","endsWith","middlewares","slice","stylis","RULESET","includes","prefix","prefixer","stringify","_stack","_middleware","middleware","rulesheet","stringifyRules","componentId","flatCSS","result","declStart","braceDepth","skipEnd","skipCode","substring","remaining","sanitizeCSS","start","urlDepth","stripLineComments","compile","serialize","hash","reduce","acc","plugin","throwStyledError","toString","createStylisInstance","Keyframes","React","createContext","shouldForwardProp","styleSheet","inject","stylisInstance","resolvedName","String","getName","addUnitIfNeeded","unitless","getComponentName","displayName","isUpper","hyphenateStyleName","output","toLowerCase","isFunction","test","isPlainObject","constructor","$$typeof","isStyledComponent","isFalsish","chunk","objToCssArray","obj","key","val","hasOwnProperty","isCss","hyphenate","apply","flatten","executionContext","styledComponentId","isReactComponent","fnResult","console","error","cssArr","interleave","strings","addTag","arg","assign","styles","__spreadArray","styleStringArray","constructWithOptions","componentConstructor","templateFunction","initialStyles","attrs","filter","withConfig","config","ThemeContext","ThemeConsumer","Consumer","useTheme","theme","useContext","ThemeProvider","outerTheme","themeContext","useMemo","mergedTheme","mergeTheme","Provider","determineTheme","providedTheme","defaultProps","hasSymbol","Symbol","for","REACT_MEMO_TYPE","REACT_FORWARD_REF_TYPE","REACT_STATICS","childContextTypes","contextType","contextTypes","getDefaultProps","getDerivedStateFromError","getDerivedStateFromProps","mixins","propTypes","KNOWN_STATICS","caller","callee","arity","MEMO_STATICS","compare","TYPE_STATICS","render","getStatics","component","getOwnPropertyNames","getOwnPropertySymbols","getOwnPropertyDescriptor","getPrototypeOf","objectPrototype","hoistNonReactStatics","targetComponent","sourceComponent","excludelist","inheritedComponent","keys","targetStatics","sourceStatics","descriptor","e","withTheme","Component","WithTheme","forwardRef","ref","themeProp","warn","hoist","AD_REPLACER_R","getAlphabeticChar","fromCharCode","joinStringArray","sep","RN_UNSUPPORTED_VALUES","generated","mixinRecursively","source","forceMerge","InlineStyle","reactNative","require","StyledNativeComponent","generateStyleObject","Math","abs","generateAlphabeticName","parse","declPairs_1","each","styleObject","transformDeclPairs","create","isTargetStyledComp","styledComponentTarget","charAt","isTag","generateDisplayName","finalAttrs","shouldForwardPropFn_1","passedShouldForwardPropFn_1","elementToBeCreated","forwardRefRender","forwardedComponent","forwardedRef","componentAttrs","inlineStyle","contextTheme","context","resolvedAttrs","attrDef","resolvedAttrDef","useResolvedAttrs","generatedStyles","refToForward","as","computedProps","propsForElement","state","useStyledComponentImpl","WrappedStyledComponent","_foldedDefaultProps","sources","sources_1","merge","styled","alias","enumerable","configurable","toStyleSheet","declPairs"],"mappings":"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"}

Directory Contents

Dirs: 7 × Files: 10

Name Size Perms Modified Actions
- drwxr-xr-x 2026-02-28 11:43:04
Edit Download
dist DIR
- drwxr-xr-x 2026-02-28 11:43:06
Edit Download
hoc DIR
- drwxr-xr-x 2026-02-28 11:43:06
Edit Download
models DIR
- drwxr-xr-x 2026-02-28 11:43:04
Edit Download
native DIR
- drwxr-xr-x 2026-02-28 11:42:58
Edit Download
sheet DIR
- drwxr-xr-x 2026-02-28 11:43:04
Edit Download
utils DIR
- drwxr-xr-x 2026-02-28 11:43:04
Edit Download
995 B lrw-r--r-- 2026-02-28 11:42:46
Edit Download
782 B lrw-r--r-- 2026-02-28 11:42:50
Edit Download
67 B lrw-r--r-- 2026-02-28 11:42:58
Edit Download
569 B lrw-r--r-- 2026-02-28 11:42:58
Edit Download
135 B lrw-r--r-- 2026-02-28 11:43:02
Edit Download
23.74 KB lrw-r--r-- 2026-02-28 11:42:30
Edit Download
117.60 KB lrw-r--r-- 2026-02-28 11:42:46
Edit Download
22.93 KB lrw-r--r-- 2026-02-28 11:42:32
Edit Download
117.47 KB lrw-r--r-- 2026-02-28 11:42:46
Edit Download
9.74 KB lrw-r--r-- 2026-02-28 11:43:06
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).