{"version":3,"sources":["../../src/Input/InputContainer.tsx"],"sourcesContent":["import React, { FC, HTMLAttributes, ReactNode } from 'react';\n\nexport interface InputContainerProps extends HTMLAttributes<HTMLElement> {\n  wrapperClass: string;\n  activeClass: string;\n  extraLabelClass: string;\n  validationTextClass: string;\n  label: string | ReactNode | undefined;\n  validationText: string | undefined;\n  id: string | undefined;\n  infoId: string | undefined;\n  infoText: string | undefined;\n  /** Indica che il componente ha un bottone a destra rispetto all'input */\n  hasButtonRight?: boolean;\n  /** Componente per il bottone */\n  buttonRight?: ReactNode;\n  /** Indica che il componente ha una icona a sinistra rispetto all'input */\n  hasIconLeft?: boolean;\n  /** Componente per l'icona */\n  iconLeft?: ReactNode;\n  testId?: string;\n}\n\nexport const InputContainer: FC<InputContainerProps> = ({\n  id,\n  infoId,\n  infoText,\n  testId,\n  activeClass,\n  extraLabelClass,\n  label,\n  validationTextClass,\n  validationText,\n  wrapperClass,\n  hasButtonRight,\n  buttonRight,\n  hasIconLeft,\n  iconLeft,\n  children\n}) => {\n  if (hasButtonRight || hasIconLeft) {\n    return (\n      <div className={wrapperClass} data-testid={testId}>\n        <div className='input-group'>\n          {hasIconLeft && <span className='input-group-text'>{iconLeft}</span>}\n          <label htmlFor={id} className={activeClass + ' ' + extraLabelClass}>\n            {label}\n          </label>\n          {children}\n          {infoText && (\n            <small id={infoId} className='form-text'>\n              {infoText}\n            </small>\n          )}\n          <div className={validationTextClass}>{validationText}</div>\n          {hasButtonRight && <div className='input-group-append'>{buttonRight}</div>}\n        </div>\n      </div>\n    );\n  }\n  return (\n    <div className={wrapperClass} data-testid={testId}>\n      <label htmlFor={id} className={activeClass + ' ' + extraLabelClass}>\n        {label}\n      </label>\n      {children}\n      {infoText && (\n        <small id={infoId} className='form-text'>\n          {infoText}\n        </small>\n      )}\n      <div className={validationTextClass}>{validationText}</div>\n    </div>\n  );\n};\n"],"mappings":"0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,oBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAqD,sBAuBxCF,EAA0C,CAAC,CACtD,GAAAG,EACA,OAAAC,EACA,SAAAC,EACA,OAAAC,EACA,YAAAC,EACA,gBAAAC,EACA,MAAAC,EACA,oBAAAC,EACA,eAAAC,EACA,aAAAC,EACA,eAAAC,EACA,YAAAC,EACA,YAAAC,EACA,SAAAC,EACA,SAAAC,CACF,IACMJ,GAAkBE,EAElB,EAAAG,QAAA,cAAC,OAAI,UAAWN,EAAc,cAAaN,GACzC,EAAAY,QAAA,cAAC,OAAI,UAAU,eACZH,GAAe,EAAAG,QAAA,cAAC,QAAK,UAAU,oBAAoBF,CAAS,EAC7D,EAAAE,QAAA,cAAC,SAAM,QAASf,EAAI,UAAWI,EAAc,IAAMC,GAChDC,CACH,EACCQ,EACAZ,GACC,EAAAa,QAAA,cAAC,SAAM,GAAId,EAAQ,UAAU,aAC1BC,CACH,EAEF,EAAAa,QAAA,cAAC,OAAI,UAAWR,GAAsBC,CAAe,EACpDE,GAAkB,EAAAK,QAAA,cAAC,OAAI,UAAU,sBAAsBJ,CAAY,CACtE,CACF,EAIF,EAAAI,QAAA,cAAC,OAAI,UAAWN,EAAc,cAAaN,GACzC,EAAAY,QAAA,cAAC,SAAM,QAASf,EAAI,UAAWI,EAAc,IAAMC,GAChDC,CACH,EACCQ,EACAZ,GACC,EAAAa,QAAA,cAAC,SAAM,GAAId,EAAQ,UAAU,aAC1BC,CACH,EAEF,EAAAa,QAAA,cAAC,OAAI,UAAWR,GAAsBC,CAAe,CACvD","names":["InputContainer_exports","__export","InputContainer","__toCommonJS","import_react","id","infoId","infoText","testId","activeClass","extraLabelClass","label","validationTextClass","validationText","wrapperClass","hasButtonRight","buttonRight","hasIconLeft","iconLeft","children","React"]}