{"version":3,"file":"AddComponentButton.mjs","sources":["../../../../../../../admin/src/pages/EditView/components/FormInputs/DynamicZone/AddComponentButton.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Button, Flex, Typography } from '@strapi/design-system';\nimport { PlusCircle } from '@strapi/icons';\nimport { styled } from 'styled-components';\n\ninterface AddComponentButtonProps {\n  children: React.ReactNode;\n  hasError?: boolean;\n  isDisabled?: boolean;\n  isOpen?: boolean;\n  onClick: React.MouseEventHandler<HTMLButtonElement> & React.MouseEventHandler<HTMLDivElement>;\n}\n\nconst AddComponentButton = ({\n  hasError,\n  isDisabled,\n  isOpen,\n  children,\n  onClick,\n}: AddComponentButtonProps) => {\n  return (\n    <StyledButton\n      type=\"button\"\n      onClick={onClick}\n      disabled={isDisabled}\n      background=\"neutral0\"\n      style={{ cursor: isDisabled ? 'not-allowed' : 'pointer' }}\n      variant=\"tertiary\"\n    >\n      <Flex tag=\"span\" gap={2}>\n        <StyledAddIcon aria-hidden $isOpen={isOpen} $hasError={hasError && !isOpen} />\n        <Typography\n          variant=\"pi\"\n          fontWeight=\"bold\"\n          textColor={hasError && !isOpen ? 'danger600' : 'neutral600'}\n        >\n          {children}\n        </Typography>\n      </Flex>\n    </StyledButton>\n  );\n};\n\nconst StyledAddIcon = styled(PlusCircle)<{ $isOpen?: boolean; $hasError?: boolean }>`\n  height: ${({ theme }) => theme.spaces[6]};\n  width: ${({ theme }) => theme.spaces[6]};\n  transform: ${({ $isOpen }) => ($isOpen ? 'rotate(45deg)' : 'rotate(0deg)')};\n\n  > circle {\n    fill: ${({ theme, $hasError }) =>\n      $hasError ? theme.colors.danger200 : theme.colors.neutral150};\n  }\n  > path {\n    fill: ${({ theme, $hasError }) =>\n      $hasError ? theme.colors.danger600 : theme.colors.neutral500};\n  }\n`;\n\nconst StyledButton = styled(Button)`\n  padding-left: ${({ theme }) => theme.spaces[3]};\n  padding-top: ${({ theme }) => theme.spaces[2]};\n  padding-bottom: ${({ theme }) => theme.spaces[2]};\n  border-radius: 26px;\n  box-shadow: ${({ theme }) => theme.shadows.filterShadow};\n\n  ${({ theme }) => theme.breakpoints.medium} {\n    padding-left: ${({ theme }) => theme.spaces[3]};\n    padding-top: ${({ theme }) => theme.spaces[0]};\n    padding-bottom: ${({ theme }) => theme.spaces[0]};\n    height: 5rem;\n  }\n`;\n\nexport { AddComponentButton };\nexport type { AddComponentButtonProps };\n"],"names":["AddComponentButton","hasError","isDisabled","isOpen","children","onClick","_jsx","StyledButton","type","disabled","background","style","cursor","variant","_jsxs","Flex","tag","gap","StyledAddIcon","aria-hidden","$isOpen","$hasError","Typography","fontWeight","textColor","styled","PlusCircle","theme","spaces","colors","danger200","neutral150","danger600","neutral500","Button","shadows","filterShadow","breakpoints","medium"],"mappings":";;;;;;AAcA,MAAMA,kBAAAA,GAAqB,CAAC,EAC1BC,QAAQ,EACRC,UAAU,EACVC,MAAM,EACNC,QAAQ,EACRC,OAAO,EACiB,GAAA;AACxB,IAAA,qBACEC,GAAA,CAACC,YAAAA,EAAAA;QACCC,IAAAA,EAAK,QAAA;QACLH,OAAAA,EAASA,OAAAA;QACTI,QAAAA,EAAUP,UAAAA;QACVQ,UAAAA,EAAW,UAAA;QACXC,KAAAA,EAAO;AAAEC,YAAAA,MAAAA,EAAQV,aAAa,aAAA,GAAgB;AAAU,SAAA;QACxDW,OAAAA,EAAQ,UAAA;AAER,QAAA,QAAA,gBAAAC,IAAA,CAACC,IAAAA,EAAAA;YAAKC,GAAAA,EAAI,MAAA;YAAOC,GAAAA,EAAK,CAAA;;8BACpBX,GAAA,CAACY,aAAAA,EAAAA;oBAAcC,aAAW,EAAA,IAAA;oBAACC,OAAAA,EAASjB,MAAAA;AAAQkB,oBAAAA,SAAAA,EAAWpB,YAAY,CAACE;;8BACpEG,GAAA,CAACgB,UAAAA,EAAAA;oBACCT,OAAAA,EAAQ,IAAA;oBACRU,UAAAA,EAAW,MAAA;oBACXC,SAAAA,EAAWvB,QAAAA,IAAY,CAACE,MAAAA,GAAS,WAAA,GAAc,YAAA;AAE9CC,oBAAAA,QAAAA,EAAAA;;;;;AAKX;AAEA,MAAMc,aAAAA,GAAgBO,MAAAA,CAAOC,UAAAA,CAAuD;UAC1E,EAAE,CAAC,EAAEC,KAAK,EAAE,GAAKA,KAAAA,CAAMC,MAAM,CAAC,CAAA,CAAE,CAAC;SAClC,EAAE,CAAC,EAAED,KAAK,EAAE,GAAKA,KAAAA,CAAMC,MAAM,CAAC,CAAA,CAAE,CAAC;AAC7B,aAAA,EAAE,CAAC,EAAER,OAAO,EAAE,GAAMA,OAAAA,GAAU,kBAAkB,cAAA,CAAgB;;;AAGnE,UAAA,EAAE,CAAC,EAAEO,KAAK,EAAEN,SAAS,EAAE,GAC3BA,SAAAA,GAAYM,KAAAA,CAAME,MAAM,CAACC,SAAS,GAAGH,MAAME,MAAM,CAACE,UAAU,CAAC;;;AAGzD,UAAA,EAAE,CAAC,EAAEJ,KAAK,EAAEN,SAAS,EAAE,GAC3BA,SAAAA,GAAYM,KAAAA,CAAME,MAAM,CAACG,SAAS,GAAGL,MAAME,MAAM,CAACI,UAAU,CAAC;;AAEnE,CAAC;AAED,MAAM1B,YAAAA,GAAekB,MAAAA,CAAOS,MAAAA,CAAO;gBACnB,EAAE,CAAC,EAAEP,KAAK,EAAE,GAAKA,KAAAA,CAAMC,MAAM,CAAC,CAAA,CAAE,CAAC;eAClC,EAAE,CAAC,EAAED,KAAK,EAAE,GAAKA,KAAAA,CAAMC,MAAM,CAAC,CAAA,CAAE,CAAC;kBAC9B,EAAE,CAAC,EAAED,KAAK,EAAE,GAAKA,KAAAA,CAAMC,MAAM,CAAC,CAAA,CAAE,CAAC;;cAErC,EAAE,CAAC,EAAED,KAAK,EAAE,GAAKA,KAAAA,CAAMQ,OAAO,CAACC,YAAY,CAAC;;EAExD,EAAE,CAAC,EAAET,KAAK,EAAE,GAAKA,KAAAA,CAAMU,WAAW,CAACC,MAAM,CAAC;kBAC1B,EAAE,CAAC,EAAEX,KAAK,EAAE,GAAKA,KAAAA,CAAMC,MAAM,CAAC,CAAA,CAAE,CAAC;iBAClC,EAAE,CAAC,EAAED,KAAK,EAAE,GAAKA,KAAAA,CAAMC,MAAM,CAAC,CAAA,CAAE,CAAC;oBAC9B,EAAE,CAAC,EAAED,KAAK,EAAE,GAAKA,KAAAA,CAAMC,MAAM,CAAC,CAAA,CAAE,CAAC;;;AAGrD,CAAC;;;;"}