design-react-kit
Version:
Componenti React per Bootstrap 5
1 lines • 2.21 kB
Source Map (JSON)
{"version":3,"sources":["../../src/Accordion/AccordionHeader.tsx"],"sourcesContent":["import classNames from 'classnames';\nimport React, { ElementType, FC, HTMLAttributes, ReactNode } from 'react';\n\nexport interface AccordionHeaderProps extends HTMLAttributes<HTMLElement> {\n /** Utilizzarlo in caso di utilizzo di componenti personalizzati */\n tag?: ElementType;\n /** Classi aggiuntive da usare per il componente AccordionHeader */\n className?: string;\n /** Utilizzare questo attributo per indicare se l'elemento è attivo o no */\n active?: boolean;\n /** Questa funzione verrà chiamata quando avviene un click sul componente AccordionHeader */\n onToggle?: () => void;\n /** Contenuto aggiuntivo all'interno del bottone dell'AccordionHeader */\n append?: ReactNode;\n testId?: string;\n}\n\nexport const AccordionHeader: FC<AccordionHeaderProps> = ({\n className,\n tag = 'button',\n active = false,\n append,\n onToggle,\n testId,\n ...attributes\n}) => {\n const Tag = tag;\n const toggleClasses = classNames(className, 'accordion-button', {\n collapsed: !active\n });\n return (\n <div className='accordion-header' data-testid={testId}>\n <Tag\n data-bs-toggle='collapse'\n aria-expanded={active ? 'true' : 'false'}\n className={toggleClasses}\n onClick={onToggle}\n {...attributes}\n {...(tag === 'button' && { type: 'button' })}\n ></Tag>\n {append}\n </div>\n );\n};\n"],"mappings":"0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,qBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAuB,2BACvBC,EAAkE,sBAgBrDH,EAA4C,CAAC,CACxD,UAAAI,EACA,IAAAC,EAAM,SACN,OAAAC,EAAS,GACT,OAAAC,EACA,SAAAC,EACA,OAAAC,EACA,GAAGC,CACL,IAAM,CACJ,IAAMC,EAAMN,EACNO,KAAgB,EAAAC,SAAWT,EAAW,mBAAoB,CAC9D,UAAW,CAACE,CACd,CAAC,EACD,OACE,EAAAQ,QAAA,cAAC,OAAI,UAAU,mBAAmB,cAAaL,GAC7C,EAAAK,QAAA,cAACH,EAAA,CACC,iBAAe,WACf,gBAAeL,EAAS,OAAS,QACjC,UAAWM,EACX,QAASJ,EACR,GAAGE,EACH,GAAIL,IAAQ,UAAY,CAAE,KAAM,QAAS,EAC3C,EACAE,CACH,CAEJ","names":["AccordionHeader_exports","__export","AccordionHeader","__toCommonJS","import_classnames","import_react","className","tag","active","append","onToggle","testId","attributes","Tag","toggleClasses","classNames","React"]}