{ "version": 3, "sources": ["../javascripts/styled-components/components/Modal/index.tsx", "../javascripts/styled-components/components/Portal/PortalNamespace.ts", "../javascripts/styled-components/components/Portal/PortalElement.tsx", "../javascripts/styled-components/components/Portal/wrapper.tsx", "../javascripts/styled-components/components/Portal/Portal.tsx"], "sourcesContent": ["import React from 'react';\nimport { useTranslation } from 'react-i18next';\n\nimport { IconClose } from '../Icon';\nimport { Portal, PortalNamespace } from '../Portal';\nimport { SrOnly } from '../SrOnly';\nimport {\n Backdrop,\n Center,\n CloseBtn,\n Dialog,\n Footer,\n FooterItem,\n Heading,\n Illustration,\n Wrapper,\n} from './wrapper';\n\ninterface ModalIllustrationProps {\n src: string;\n srcSet?: string;\n alt: string;\n}\n\ninterface ModalProps {\n heading?: string;\n illustration?: ModalIllustrationProps;\n disableCloseBtnShapeOutside?: boolean; // Disabled css property shape-outside on CloseBtn\n children: React.ReactNode;\n footerActions?: React.ReactNode[];\n disableBackdropClose?: boolean;\n onClose: (e: React.MouseEvent) => void;\n}\n\nconst Modal = ({\n heading,\n illustration,\n disableCloseBtnShapeOutside,\n children,\n footerActions,\n disableBackdropClose,\n onClose,\n}: ModalProps) => {\n const { t } = useTranslation(['common']);\n\n return (\n \n \n \n
\n e.stopPropagation()}>\n \n {t('closeModal', { ns: 'common' })}\n \n \n {illustration && (\n \n )}\n {heading && {heading}}\n {children}\n {footerActions && (\n
\n {footerActions.map((action, i) => (\n {action}\n ))}\n
\n )}\n
\n
\n \n
\n
\n );\n};\n\nexport default Modal;\n", "export const DefaultPortal = 'DEFAULT_PORTAL';\n", "import React from 'react';\n\nimport { Wrapper } from './wrapper';\n\nexport interface PortalElementProps {\n id: string;\n}\n\nconst PortalElement = ({ id }: PortalElementProps) => ;\n\nexport default PortalElement;\n", "import styled from 'styled-components';\n\nexport const Wrapper = styled.div.withConfig({ componentId: 'sc-67b64l-0' })`\n display: contents;\n`;\n", "import React, { useRef, useState, useEffect, memo } from 'react';\nimport { createPortal } from 'react-dom';\n\nexport interface PortalProps {\n id: string;\n children: React.ReactNode;\n}\n\nconst Portal = ({ id, children }: PortalProps) => {\n const el = useRef(document.getElementById(id) || document.createElement('div'));\n if (!el.current) {\n return null;\n }\n\n const { current } = el;\n\n const [dynamic] = useState(!current.parentElement);\n\n useEffect(() => {\n if (dynamic) {\n current.id = id;\n if (document.body) {\n document.body.appendChild(current);\n }\n }\n return () => {\n if (dynamic && current.parentElement) {\n current.parentElement.removeChild(current);\n }\n };\n }, [id]);\n\n return createPortal(children, current);\n};\n\nexport default memo(Portal);\n"], "mappings": "+YAAA,IAAAA,EAAkB,SCAlB,IAAAC,EAAA,GAAAC,EAAAD,EAAA,mBAAAE,IAAO,IAAMA,EAAgB,iBCA7B,IAAAC,EAAkB,SCEX,IAAMC,EAAUC,EAAO,IAAI,WAAW,CAAE,YAAa,aAAc,CAAC;AAAA;EDM3E,IAAMC,EAAgB,CAAC,CAAE,GAAAC,CAAG,IAA0B,EAAAC,QAAA,cAACC,EAAA,CAAQ,GAAIF,EAAI,EAEhEG,EAAQJ,EEVf,IAAAK,EAAyD,SACzDC,EAA6B,SAOvBC,EAAS,CAAC,CAAE,GAAAC,EAAI,SAAAC,CAAS,IAAmB,CAChD,IAAMC,KAAK,UAAO,SAAS,eAAeF,CAAE,GAAK,SAAS,cAAc,KAAK,CAAC,EAC9E,GAAI,CAACE,EAAG,QACN,OAAO,KAGT,GAAM,CAAE,QAAAC,CAAQ,EAAID,EAEd,CAACE,CAAO,KAAI,YAAS,CAACD,EAAQ,aAAa,EAEjD,sBAAU,KACJC,IACFD,EAAQ,GAAKH,EACT,SAAS,MACX,SAAS,KAAK,YAAYG,CAAO,GAG9B,IAAM,CACPC,GAAWD,EAAQ,eACrBA,EAAQ,cAAc,YAAYA,CAAO,CAE7C,GACC,CAACH,CAAE,CAAC,KAEA,gBAAaC,EAAUE,CAAO,CACvC,EAEOE,KAAQ,QAAKN,CAAM,EJD1B,IAAMO,EAAQ,CAAC,CACb,QAAAC,EACA,aAAAC,EACA,4BAAAC,EACA,SAAAC,EACA,cAAAC,EACA,qBAAAC,EACA,QAAAC,CACF,IAAkB,CAChB,GAAM,CAAE,EAAAC,CAAE,EAAIC,EAAe,CAAC,QAAQ,CAAC,EAEvC,OACE,EAAAC,QAAA,cAACC,EAAA,CAAO,GAAIC,EAAgB,eAC1B,EAAAF,QAAA,cAACG,EAAA,KACC,EAAAH,QAAA,cAACI,EAAA,CACC,QAASR,EAAuB,OAAYC,EAC5C,aAAYC,EAAE,aAAc,CAAE,GAAI,QAAS,CAAC,GAE5C,EAAAE,QAAA,cAACK,EAAA,KACC,EAAAL,QAAA,cAACM,EAAA,CAAO,QAAUC,GAAMA,EAAE,gBAAgB,GACxC,EAAAP,QAAA,cAACQ,EAAA,CACC,QAASX,EACT,MAAOC,EAAE,aAAc,CAAE,GAAI,QAAS,CAAC,EACvC,kBAAmB,CAAC,CAACN,EACrB,sBAAuBC,EACvB,cAAY,sBAEZ,EAAAO,QAAA,cAACS,EAAA,KAAQX,EAAE,aAAc,CAAE,GAAI,QAAS,CAAC,CAAE,EAC3C,EAAAE,QAAA,cAACU,EAAA,CAAU,cAAY,OAAO,CAChC,EACClB,GACC,EAAAQ,QAAA,cAACW,EAAA,CACC,IAAKnB,EAAa,IAClB,OAAQA,EAAa,OACrB,IAAKA,EAAa,IAClB,cAAY,OACd,EAEDD,GAAW,EAAAS,QAAA,cAACY,EAAA,KAASrB,CAAQ,EAC7BG,EACAC,GACC,EAAAK,QAAA,cAACa,EAAA,KACElB,EAAc,IAAI,CAACmB,EAAQC,IAC1B,EAAAf,QAAA,cAACgB,EAAA,CAAW,IAAK,qBAAqBD,CAAC,IAAKD,CAAO,CACpD,CACH,CAEJ,CACF,CACF,CACF,CACF,CAEJ,EAEOG,EAAQ3B", "names": ["import_react", "PortalNamespace_exports", "__export", "DefaultPortal", "import_react", "Wrapper", "dt", "PortalElement", "id", "React", "Wrapper", "PortalElement_default", "import_react", "import_react_dom", "Portal", "id", "children", "el", "current", "dynamic", "Portal_default", "Modal", "heading", "illustration", "disableCloseBtnShapeOutside", "children", "footerActions", "disableBackdropClose", "onClose", "t", "useTranslation", "React", "Portal_default", "PortalNamespace_exports", "Wrapper", "Backdrop", "Center", "Dialog", "e", "CloseBtn", "SrOnly", "IconClose", "Illustration", "Heading", "Footer", "action", "i", "FooterItem", "Modal_default"] }