{"version":3,"file":"FieldGroup.cjs","sources":["../../../../src/components/input-group/FieldGroup.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { type FC } from \"react\";\nimport { useId } from \"../../hooks/useId/useId.js\";\nimport { Label } from \"./Label.js\";\nimport { SupportLabel } from \"./SupportLabel.js\";\nimport type { FieldGroupProps } from \"./types.js\";\n\nexport const FieldGroup: FC<FieldGroupProps> = (props) => {\n    const {\n        id,\n        legend,\n        labelProps,\n        supportLabelProps,\n        tooltip,\n        className,\n        children,\n        helpLabel,\n        errorLabel,\n        description,\n        \"data-testautoid\": testAutoId,\n        ...rest\n    } = props;\n\n    const uid = useId(id || \"jkl-field-group\", { generateSuffix: !id });\n    const supportId = `${uid}_support-label`;\n\n    const supportText = errorLabel || helpLabel;\n    const supportTextType = errorLabel\n        ? \"error\"\n        : helpLabel\n          ? \"help\"\n          : undefined;\n\n    const describedBy = supportText ? supportId : undefined;\n\n    return (\n        <fieldset\n            id={uid}\n            className={clsx(\"jkl-field-group\", className)}\n            data-testautoid={testAutoId}\n            {...rest}\n            aria-describedby={describedBy}\n        >\n            <legend className=\"jkl-field-group__legend\">\n                <Label {...labelProps}>\n                    {tooltip ? (\n                        <>\n                            <span style={{ whiteSpace: \"normal\" }}>\n                                {legend}\n                            </span>\n                            {\"\\u00A0\"}\n                            {tooltip}\n                        </>\n                    ) : (\n                        legend\n                    )}\n                </Label>\n            </legend>\n            {description && (\n                <p className=\"jkl-input-group-description\">{description}</p>\n            )}\n            {children}\n            {(helpLabel || errorLabel) && (\n                <SupportLabel\n                    {...supportLabelProps}\n                    label={supportText}\n                    labelType={supportTextType}\n                    id={supportId}\n                />\n            )}\n        </fieldset>\n    );\n};\n"],"names":["props","id","legend","labelProps","supportLabelProps","tooltip","className","children","helpLabel","errorLabel","description","testAutoId","rest","uid","useId","generateSuffix","supportId","supportText","supportTextType","describedBy","jsxs","clsx","jsx","Label","Fragment","style","whiteSpace","SupportLabel","label","labelType"],"mappings":"ySAOgDA,IAC5C,MACIC,GAAAA,EACAC,OAAAA,EACAC,WAAAA,EACAC,kBAAAA,EACAC,QAAAA,EACAC,UAAAA,EACAC,SAAAA,EACAC,UAAAA,EACAC,WAAAA,EACAC,YAAAA,EACA,kBAAmBC,KAChBC,GACHZ,EAEEa,EAAMC,EAAAA,MAAMb,GAAM,kBAAmB,CAAEc,gBAAiBd,IACxDe,EAAY,GAAGH,kBAEfI,EAAcR,GAAcD,EAC5BU,EAAkBT,EAClB,QACAD,EACE,YACA,EAEFW,EAAcF,EAAcD,OAAY,EAE9C,OACII,EAAAA,KAAC,WAAA,CACGnB,GAAIY,EACJP,UAAWe,EAAAA,KAAK,kBAAmBf,GACnC,kBAAiBK,KACbC,EACJ,mBAAkBO,EAElBZ,SAAA,CAAAe,EAAAA,IAAC,SAAA,CAAOhB,UAAU,0BACdC,SAAAe,EAAAA,IAACC,EAAAA,UAAUpB,EACNI,WACGa,EAAAA,KAAAI,EAAAA,SAAA,CACIjB,SAAA,CAAAe,MAAC,QAAKG,MAAO,CAAEC,WAAY,UACtBnB,SAAAL,IAEJ,IACAG,KAGLH,MAIXQ,GACGY,EAAAA,IAAC,IAAA,CAAEhB,UAAU,8BAA+BC,SAAAG,IAE/CH,GACCC,GAAaC,IACXa,EAAAA,IAACK,EAAAA,aAAA,IACOvB,EACJwB,MAAOX,EACPY,UAAWX,EACXjB,GAAIe"}