UNPKG

@transkripid/flowbite-react

Version:

Official React components built for Flowbite and Tailwind CSS - Transkrip.id fork

1 lines 4.3 kB
{"version":3,"file":"ModalHeader.mjs","sources":["../../../src/components/Modal/ModalHeader.tsx"],"sourcesContent":["'use client';\n\nimport { useId, useLayoutEffect, type ComponentProps, type ElementType, type FC } from 'react';\nimport { HiOutlineX } from 'react-icons/hi';\nimport { twMerge } from 'tailwind-merge';\nimport { mergeDeep } from '../../helpers/merge-deep';\nimport type { DeepPartial } from '../../types';\nimport { useModalContext } from './ModalContext';\n\nexport interface FlowbiteModalHeaderTheme {\n base: string;\n popup: string;\n title: string;\n close: {\n base: string;\n icon: string;\n };\n}\n\nexport interface ModalHeaderProps extends ComponentProps<'div'> {\n as?: ElementType;\n theme?: DeepPartial<FlowbiteModalHeaderTheme>;\n}\n\nexport const ModalHeader: FC<ModalHeaderProps> = ({\n as: Component = 'h3',\n children,\n className,\n theme: customTheme = {},\n id,\n ...props\n}) => {\n const innerHeaderId = useId();\n const headerId = id || innerHeaderId;\n\n const { theme: rootTheme, popup, onClose, setHeaderId } = useModalContext();\n\n const theme = mergeDeep(rootTheme.header, customTheme);\n\n useLayoutEffect(() => {\n setHeaderId(headerId);\n\n return () => setHeaderId(undefined);\n }, [headerId, setHeaderId]);\n\n return (\n <div className={twMerge(theme.base, popup && theme.popup, className)} {...props}>\n <Component id={headerId} className={theme.title}>\n {children}\n </Component>\n <button aria-label=\"Close\" className={theme.close.base} type=\"button\" onClick={onClose}>\n <HiOutlineX aria-hidden className={theme.close.icon} />\n </button>\n </div>\n );\n};\n"],"names":["ModalHeader","t0","$","_c","children","className","id","props","t1","t2","as","theme","Component","undefined","t3","customTheme","innerHeaderId","useId","headerId","rootTheme","popup","onClose","setHeaderId","useModalContext","mergeDeep","header","t4","t5","useLayoutEffect","t6","twMerge","base","t7","title","t8","close","icon","HiOutlineX","t9","jsx","t10"],"mappings":"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"}