{"version":3,"file":"Flag.cjs","sources":["../../../../../../src/components/Assets/Flags/system/Flag.tsx"],"sourcesContent":["import { SVGAttributes } from 'react';\nimport { useTheme } from '@/theme/ThemeContext';\nimport { getFallbackThemeName } from '@/theme/theme.utils';\nimport { SvgImageElement } from '@/components/Icon/SvgImageElement';\nimport { FlagName, FlagProps } from './types';\nimport {\n  createAssetResolver,\n  type AssetAlias,\n  type AssetDeprecatedName,\n} from '@/components/Assets/config';\nimport FlagsDark from './FlagsDark';\nimport FlagsLight from './FlagsLight';\n\nconst resolveFlagName = createAssetResolver<FlagName>();\n\nexport { resolveFlagName };\n\nexport interface FlagPropsWithAliases extends Omit<FlagProps, 'name'> {\n  name: FlagName | AssetAlias | AssetDeprecatedName;\n}\n\nconst Flag = ({ name, theme, size, ...props }: FlagPropsWithAliases) => {\n  const { name: themeName } = useTheme();\n  const resolvedName = resolveFlagName(name);\n  const resolvedTheme = getFallbackThemeName(theme ?? themeName);\n  const Component =\n    resolvedTheme === 'light' ? FlagsLight[resolvedName] : FlagsDark[resolvedName];\n\n  if (!Component) {\n    return null;\n  }\n\n  const ThemedFlag = (svgProps: SVGAttributes<SVGElement>) => (\n    <Component\n      theme={resolvedTheme}\n      {...svgProps}\n    />\n  );\n\n  return (\n    <SvgImageElement\n      as={ThemedFlag}\n      size={size}\n      role=\"img\"\n      aria-label={resolvedName}\n      {...props}\n    />\n  );\n};\n\nFlag.displayName = 'Flag';\n\nexport { Flag };\n"],"names":["createAssetResolver","useTheme","getFallbackThemeName","FlagsLight","FlagsDark","jsx","SvgImageElement"],"mappings":";;;;;;;;;;;;AAaA,MAAM,kBAAkBA,0BAAA;AAQxB,MAAM,IAAA,GAAO,CAAC,EAAE,IAAA,EAAM,OAAO,IAAA,EAAM,GAAG,OAAM,KAA4B;AACtE,EAAA,MAAM,EAAE,IAAA,EAAM,SAAA,EAAU,GAAIC,qBAAA,EAAS;AACrC,EAAA,MAAM,YAAA,GAAe,gBAAgB,IAAI,CAAA;AACzC,EAAA,MAAM,aAAA,GAAgBC,gCAAA,CAAqB,KAAA,IAAS,SAAS,CAAA;AAC7D,EAAA,MAAM,YACJ,aAAA,KAAkB,OAAA,GAAUC,mBAAW,YAAY,CAAA,GAAIC,kBAAU,YAAY,CAAA;AAE/E,EAAA,IAAI,CAAC,SAAA,EAAW;AACd,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,MAAM,UAAA,GAAa,CAAC,QAAA,qBAClBC,cAAA;AAAA,IAAC,SAAA;AAAA,IAAA;AAAA,MACC,KAAA,EAAO,aAAA;AAAA,MACN,GAAG;AAAA;AAAA,GACN;AAGF,EAAA,uBACEA,cAAA;AAAA,IAACC,+BAAA;AAAA,IAAA;AAAA,MACC,EAAA,EAAI,UAAA;AAAA,MACJ,IAAA;AAAA,MACA,IAAA,EAAK,KAAA;AAAA,MACL,YAAA,EAAY,YAAA;AAAA,MACX,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,IAAA,CAAK,WAAA,GAAc,MAAA;;;"}