{"version":3,"file":"index-BW20NcoO.js","sources":["../../Client/legacy/Components/BackToTop/index.tsx"],"sourcesContent":["import { useClassName } from '@shared/Hooks/ClassName';\r\nimport Portal from '@webkit/components/portal';\r\nimport { FunctionComponent, useEffect, useState } from 'react';\r\nimport './style.scss';\r\n\r\ntype Props = {\r\n    /** Optional token to set the pixel depth to trigger the back to top button appearance. Default is 1500. */\r\n    scrollDepth?: number;\r\n\r\n    /** Optional token to add a class to change styles for custom applications */\r\n    addClass?: string;\r\n};\r\n\r\nexport const BackToTop: FunctionComponent<Props> = props => {\r\n    const [isTop, setIsTop] = useState<boolean>(true),\r\n        className = useClassName('back-to-top', [isTop ? '' : 'visible', props.addClass ?? '']);\r\n\r\n    useEffect(() => {\r\n        document.addEventListener('scroll', onScroll);\r\n        return () => document.removeEventListener('scroll', onScroll);\r\n    }, []);\r\n\r\n    return (\r\n        <Portal>\r\n            <div\r\n                className={className}\r\n                onClick={() =>\r\n                    window.scrollTo({\r\n                        top: 700,\r\n                        left: 0,\r\n                        behavior: 'smooth',\r\n                    })\r\n                }\r\n            >\r\n                <i className='chevron-cp' />\r\n            </div>\r\n        </Portal>\r\n    );\r\n\r\n    function onScroll() {\r\n        setIsTop(window.scrollY < (props.scrollDepth ? props.scrollDepth : 1500));\r\n    }\r\n};\r\n"],"names":["BackToTop","props","isTop","setIsTop","useState","className","useClassName","useEffect","onScroll","Portal","jsx"],"mappings":"mIAaO,MAAMA,EAA+CC,GAAA,CACxD,KAAM,CAACC,EAAOC,CAAQ,EAAIC,EAAAA,SAAkB,EAAI,EAC5CC,EAAYC,EAAa,cAAe,CAACJ,EAAQ,GAAK,UAAWD,EAAM,UAAY,EAAE,CAAC,EAE1FM,OAAAA,EAAAA,UAAU,KACG,SAAA,iBAAiB,SAAUC,CAAQ,EACrC,IAAM,SAAS,oBAAoB,SAAUA,CAAQ,GAC7D,EAAE,QAGAC,EACG,CAAA,SAAAC,EAAA,IAAC,MAAA,CACG,UAAAL,EACA,QAAS,IACL,OAAO,SAAS,CACZ,IAAK,IACL,KAAM,EACN,SAAU,QAAA,CACb,EAGL,SAAAK,EAAAA,IAAC,IAAE,CAAA,UAAU,YAAa,CAAA,CAAA,CAAA,EAElC,EAGJ,SAASF,GAAW,CAChBL,EAAS,OAAO,SAAWF,EAAM,YAAcA,EAAM,YAAc,KAAK,CAAA,CAEhF"}