{"version":3,"file":"TextareaEnum.mjs","sources":["../../../admin/src/components/TextareaEnum.tsx"],"sourcesContent":["import { ReactNode, ChangeEvent } from 'react';\n\nimport { Field, Textarea } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport type { IntlLabel } from '../types';\n\ninterface TextareaEnumProps {\n  description?: IntlLabel | null;\n  disabled?: boolean;\n  error?: string;\n  intlLabel: IntlLabel;\n  labelAction?: ReactNode;\n  name: string;\n  onChange: (value: { target: { name: string; value: string | string[] } }) => void;\n  placeholder?: IntlLabel | null;\n  value: string | string[] | undefined;\n}\n\nexport const TextareaEnum = ({\n  description = null,\n  disabled = false,\n  error = '',\n  intlLabel,\n  labelAction,\n  name,\n  onChange,\n  placeholder = null,\n  value = '',\n}: TextareaEnumProps) => {\n  const { formatMessage } = useIntl();\n  const errorMessage = error ? formatMessage({ id: error, defaultMessage: error }) : '';\n  const hint = description\n    ? formatMessage(\n        { id: description.id, defaultMessage: description.defaultMessage },\n        { ...description.values }\n      )\n    : '';\n  const label = formatMessage(intlLabel);\n  const formattedPlaceholder = placeholder\n    ? formatMessage(\n        { id: placeholder.id, defaultMessage: placeholder.defaultMessage },\n        { ...placeholder.values }\n      )\n    : '';\n\n  const inputValue = Array.isArray(value) ? value.join('\\n') : '';\n\n  const handleChange = (e: ChangeEvent<HTMLTextAreaElement>) => {\n    const arrayValue = e.target.value.split('\\n');\n\n    onChange({ target: { name, value: arrayValue } });\n  };\n\n  return (\n    <Field.Root error={errorMessage} hint={hint} name={name}>\n      <Field.Label action={labelAction}>{label}</Field.Label>\n      <Textarea\n        disabled={disabled}\n        onChange={handleChange}\n        placeholder={formattedPlaceholder}\n        value={inputValue}\n      />\n      <Field.Error />\n      <Field.Hint />\n    </Field.Root>\n  );\n};\n"],"names":["TextareaEnum","description","disabled","error","intlLabel","labelAction","name","onChange","placeholder","value","formatMessage","useIntl","errorMessage","id","defaultMessage","hint","values","label","formattedPlaceholder","inputValue","Array","isArray","join","handleChange","e","arrayValue","target","split","_jsxs","Field","Root","_jsx","Label","action","Textarea","Error","Hint"],"mappings":";;;;AAmBO,MAAMA,YAAe,GAAA,CAAC,EAC3BC,WAAAA,GAAc,IAAI,EAClBC,QAAW,GAAA,KAAK,EAChBC,KAAAA,GAAQ,EAAE,EACVC,SAAS,EACTC,WAAW,EACXC,IAAI,EACJC,QAAQ,EACRC,WAAAA,GAAc,IAAI,EAClBC,KAAQ,GAAA,EAAE,EACQ,GAAA;IAClB,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;IAC1B,MAAMC,YAAAA,GAAeT,QAAQO,aAAc,CAAA;QAAEG,EAAIV,EAAAA,KAAAA;QAAOW,cAAgBX,EAAAA;KAAW,CAAA,GAAA,EAAA;IACnF,MAAMY,IAAAA,GAAOd,cACTS,aACE,CAAA;AAAEG,QAAAA,EAAAA,EAAIZ,YAAYY,EAAE;AAAEC,QAAAA,cAAAA,EAAgBb,YAAYa;KAClD,EAAA;AAAE,QAAA,GAAGb,YAAYe;KAEnB,CAAA,GAAA,EAAA;AACJ,IAAA,MAAMC,QAAQP,aAAcN,CAAAA,SAAAA,CAAAA;IAC5B,MAAMc,oBAAAA,GAAuBV,cACzBE,aACE,CAAA;AAAEG,QAAAA,EAAAA,EAAIL,YAAYK,EAAE;AAAEC,QAAAA,cAAAA,EAAgBN,YAAYM;KAClD,EAAA;AAAE,QAAA,GAAGN,YAAYQ;KAEnB,CAAA,GAAA,EAAA;IAEJ,MAAMG,UAAAA,GAAaC,MAAMC,OAAO,CAACZ,SAASA,KAAMa,CAAAA,IAAI,CAAC,IAAQ,CAAA,GAAA,EAAA;AAE7D,IAAA,MAAMC,eAAe,CAACC,CAAAA,GAAAA;AACpB,QAAA,MAAMC,aAAaD,CAAEE,CAAAA,MAAM,CAACjB,KAAK,CAACkB,KAAK,CAAC,IAAA,CAAA;QAExCpB,QAAS,CAAA;YAAEmB,MAAQ,EAAA;AAAEpB,gBAAAA,IAAAA;gBAAMG,KAAOgB,EAAAA;AAAW;AAAE,SAAA,CAAA;AACjD,KAAA;IAEA,qBACEG,IAAA,CAACC,MAAMC,IAAI,EAAA;QAAC3B,KAAOS,EAAAA,YAAAA;QAAcG,IAAMA,EAAAA,IAAAA;QAAMT,IAAMA,EAAAA,IAAAA;;AACjD,0BAAAyB,GAAA,CAACF,MAAMG,KAAK,EAAA;gBAACC,MAAQ5B,EAAAA,WAAAA;AAAcY,gBAAAA,QAAAA,EAAAA;;0BACnCc,GAACG,CAAAA,QAAAA,EAAAA;gBACChC,QAAUA,EAAAA,QAAAA;gBACVK,QAAUgB,EAAAA,YAAAA;gBACVf,WAAaU,EAAAA,oBAAAA;gBACbT,KAAOU,EAAAA;;AAET,0BAAAY,GAAA,CAACF,MAAMM,KAAK,EAAA,EAAA,CAAA;AACZ,0BAAAJ,GAAA,CAACF,MAAMO,IAAI,EAAA,EAAA;;;AAGjB;;;;"}