{"version":3,"file":"Footer.cjs","sources":["../../../src/components/Footer/Footer.tsx"],"sourcesContent":["\"use client\";\n\nimport { forwardRef, type ComponentProps } from \"react\";\nimport { get } from \"../../helpers/get\";\nimport { resolveProps } from \"../../helpers/resolve-props\";\nimport { useResolveTheme } from \"../../helpers/resolve-theme\";\nimport { twMerge } from \"../../helpers/tailwind-merge\";\nimport { useThemeProvider } from \"../../theme/provider\";\nimport type { ThemingProps } from \"../../types\";\nimport type { FooterBrandTheme } from \"./FooterBrand\";\nimport type { FooterCopyrightTheme } from \"./FooterCopyright\";\nimport type { FooterDividerTheme } from \"./FooterDivider\";\nimport type { FooterIconTheme } from \"./FooterIcon\";\nimport type { FooterLinkGroupTheme } from \"./FooterLinkGroup\";\nimport type { FooterTitleTheme } from \"./FooterTitle\";\nimport { footerTheme } from \"./theme\";\n\nexport interface FooterTheme {\n  brand: FooterBrandTheme;\n  copyright: FooterCopyrightTheme;\n  divider: FooterDividerTheme;\n  groupLink: FooterLinkGroupTheme;\n  icon: FooterIconTheme;\n  root: FooterRootTheme;\n  title: FooterTitleTheme;\n}\n\nexport interface FooterRootTheme {\n  base: string;\n  bgDark: string;\n  container: string;\n}\n\nexport interface FooterProps extends ComponentProps<\"footer\">, ThemingProps<FooterTheme> {\n  bgDark?: boolean;\n  container?: boolean;\n}\n\nexport const Footer = forwardRef<HTMLElement, FooterProps>((props, ref) => {\n  const provider = useThemeProvider();\n  const theme = useResolveTheme(\n    [footerTheme, provider.theme?.footer, props.theme],\n    [get(provider.clearTheme, \"footer\"), props.clearTheme],\n    [get(provider.applyTheme, \"footer\"), props.applyTheme],\n  );\n\n  const {\n    bgDark = false,\n    children,\n    className,\n    container = false,\n    ...restProps\n  } = resolveProps(props, provider.props?.footer);\n\n  return (\n    <footer\n      ref={ref}\n      data-testid=\"flowbite-footer\"\n      className={twMerge(theme.root.base, bgDark && theme.root.bgDark, container && theme.root.container, className)}\n      {...restProps}\n    >\n      {children}\n    </footer>\n  );\n});\n\nFooter.displayName = \"Footer\";\n"],"names":["forwardRef","provider","useThemeProvider","theme","useResolveTheme","footerTheme","get","resolveProps","jsx","twMerge"],"mappings":";;;;;;;;;;;AAUY,MAAC,MAAM,GAAGA,gBAAU,CAAC,CAAC,KAAK,EAAE,GAAG,KAAK;AACjD,EAAE,MAAMC,UAAQ,GAAGC,yBAAgB,EAAE;AACrC,EAAE,MAAMC,OAAK,GAAGC,4BAAe;AAC/B,IAAI,CAACC,iBAAW,EAAEJ,UAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC;AACtD,IAAI,CAACK,OAAG,CAACL,UAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC;AAC1D,IAAI,CAACK,OAAG,CAACL,UAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,UAAU;AACzD,GAAG;AACH,EAAE,MAAM;AACR,IAAI,MAAM,GAAG,KAAK;AAClB,IAAI,QAAQ;AACZ,IAAI,SAAS;AACb,IAAI,SAAS,GAAG,KAAK;AACrB,IAAI,GAAG;AACP,GAAG,GAAGM,yBAAY,CAAC,KAAK,EAAEN,UAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;AACjD,EAAE,uBAAuBO,cAAG;AAC5B,IAAI,QAAQ;AACZ,IAAI;AACJ,MAAM,GAAG;AACT,MAAM,aAAa,EAAE,iBAAiB;AACtC,MAAM,SAAS,EAAEC,qBAAO,CAACN,OAAK,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,IAAIA,OAAK,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,IAAIA,OAAK,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC;AACpH,MAAM,GAAG,SAAS;AAClB,MAAM;AACN;AACA,GAAG;AACH,CAAC;AACD,MAAM,CAAC,WAAW,GAAG,QAAQ;;;;"}