{"version":3,"sources":["webpack:///./src/img/help/recording-elements2.png","webpack:///./src/components/help/helpImage/styled.js","webpack:///./src/components/help/helpImage/index.js","webpack:///./src/components/ui/image-modal.js","webpack:///./src/pages/help/how-to-anonymize-sensitive-page-content.js","webpack:///./src/img/help/recording-elements1.png","webpack:///./src/img/help/anonymize-data.png","webpack:///./src/img/help/img-mask.png"],"names":["module","exports","Card","styled","div","props","setMarginBottom","media","desktop","CardBody","HelpImage","cardStyle","className","style","defaultProps","Container","Box","Close","span","ImageWrapped","img","Image","ImageModal","escFunction","event","showModal","state","keyCode","closeModal","setState","openModal","window","innerWidth","componentDidMount","document","addEventListener","this","componentWillUnmount","removeEventListener","render","src","imgStyle","imgModalStyle","alt","title","lazy","modal","onClick","loading","React","Component","related","link","description","frontmatter","metaTitle","metaDescription","canonical","Wrapped","Article","role","inline","anonymize","margin","mask","recordingElementsImg1","recordingElementsImg2","section"],"mappings":"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","file":"component---src-pages-help-how-to-anonymize-sensitive-page-content-js-b1b526f2dccd55c96721.js","sourcesContent":["module.exports = __webpack_public_path__ + \"static/recording-elements2-9a6e394d3ce3d29c47450118f282f7db.png\";","import styled from 'styled-components';\nimport { media } from 'theme/breakpoints';\n\nexport const Card = styled.div`\n margin: ${(props) => (props.setMarginBottom ? '2rem 0' : '2rem 0 3rem')};\n border: none;\n\n ${media.desktop} {\n margin: ${(props) => (props.setMarginBottom ? '1.25rem 0' : '1.25rem 0 2rem')};\n }\n`;\n\nexport const CardBody = styled.div`\n box-shadow: 0px 0px 10px #00000029;\n padding: 0;\n`;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ImageModal from 'components/ui/image-modal';\nimport * as Styled from './styled';\n\nconst HelpImage = (props) => {\n const { cardStyle, setMarginBottom } = props;\n return (\n \n \n \n \n \n );\n};\n\nexport default HelpImage;\n\nHelpImage.propTypes = {\n cardStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.array]),\n setMarginBottom: PropTypes.bool,\n};\n\nHelpImage.defaultProps = {\n cardStyle: null,\n setMarginBottom: false,\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\n\nconst Container = styled.div`\n top: 0;\n left: 0;\n position: fixed;\n width: 100%;\n height: 100vh;\n background-color: rgba(0, 0, 0, 0.4);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 99999;\n`;\n\nconst Box = styled.div`\n background-color: transparent;\n position: relative;\n width: 95vw;\n height: 95vh;\n padding: 1.5rem;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1;\n`;\n\nconst Close = styled.span`\n position: absolute;\n font-size: 1.8rem;\n right: 20px;\n top: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n background-color: #fff;\n border-radius: 100px;\n width: 40px;\n height: 40px;\n padding-bottom: 3px;\n filter: drop-shadow(5px 1px 4px rgba(0, 0, 0, 0.2));\n z-index: 10;\n`;\n\nconst ImageWrapped = styled.img`\n max-width: 100%;\n max-height: 100%;\n display: block;\n margin: 0 auto;\n border: none;\n`;\nconst minWidthToShow = 600;\n\nconst Image = styled.img`\n border: 1px solid #eaebec;\n max-width: 100%;\n height: auto;\n\n @media (min-width: ${minWidthToShow}px) {\n cursor: pointer;\n }\n`;\n\nclass ImageModal extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n showModal: false,\n };\n }\n\n componentDidMount() {\n document.addEventListener('keydown', this.escFunction, false);\n }\n\n componentWillUnmount() {\n document.removeEventListener('keydown', this.escFunction, false);\n }\n\n escFunction = (event) => {\n const { showModal } = this.state;\n\n if (event.keyCode === 27 && showModal) {\n this.closeModal();\n }\n };\n\n closeModal = () => {\n this.setState({ showModal: false });\n };\n\n openModal = () => {\n if (window.innerWidth >= minWidthToShow) {\n this.setState({ showModal: true });\n }\n };\n\n render() {\n const { showModal } = this.state;\n const { src, imgStyle, imgModalStyle, alt, title, lazy } = this.props;\n\n const modal = (\n \n ×\n \n \n \n \n );\n\n return (\n <>\n \n {showModal && modal}\n \n );\n }\n}\n\nexport default ImageModal;\n\nImageModal.propTypes = {\n src: PropTypes.string.isRequired,\n imgStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.node]),\n imgModalStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.node]),\n alt: PropTypes.string.isRequired,\n title: PropTypes.string.isRequired,\n lazy: PropTypes.bool,\n};\n\nImageModal.defaultProps = {\n lazy: false,\n imgStyle: null,\n imgModalStyle: null,\n};\n","import React from 'react';\nimport Article, { SubTitle } from 'components/help/helpArticle';\nimport Image from 'components/help/helpImage';\nimport anonymize from 'img/help/anonymize-data.png';\nimport mask from 'img/help/img-mask.png';\nimport recordingElementsImg1 from 'img/help/recording-elements1.png';\nimport recordingElementsImg2 from 'img/help/recording-elements2.png';\nimport Code from 'components/help/codeSnippet';\n\nconst Content = () => {\n return (\n
\n Text masking\n

\n Sensitive data in forms (e.g. passwords and credit card details) is always anonymized in the\n recordings. It’s possible to anonymize static content as well, such as\n surnames and other personal information.\n

\n

\n You can add a data-ls-disabled attribute to an HTML element. This\n attribute will anonymize the tetxt content, e.g. the surname will be replaced with\n asterisks, like in the example below:\n \"Anonymizing\n

\n

\n The attribute is applied to all child elements, too. In the case of regular clicks and rage\n clicks, clicking on an anonymized element won’t reveal the text value.\n

\n\n

\n Anonymize whole text content inside .user-info:\n

\n \n {`\n
\n

Logged as: John Doe

\n
\n `}\n
\n\n

Anonymize only sensitive element:

\n \n {`\n
\n

Logged as: John Doe

\n
\n `}\n
\n\n

\n You can also use data-ls-enabled to make content visible. Useful if some\n child elements could be visible.\n

\n \n {`\n
\n

Lorem ipsum sensitive article.

\n \n
\n `}\n
\n\n Image masking\n

\n It's possible to mask sensitive images as well. To mask image just add{' '}\n data-ls-mask attribute to img HTML element. During the\n playback, image will be displayed as in the example below:{' '}\n

\n \"Anonymizing tags\" />\n\n Anonymize through Web UI\n

\n It's also possible to anonymize data through the LiveSession dashboard, without any\n changes in code. If you are interested, go to website settings and choose the\n 'Recording elements' tab. Choose HTML selector and anonymize type. It is worth\n mentioning that selector must be a valid HTML selector.\n

\n \n \n
\n );\n};\n\nconst related = [\n {\n link: '/help/how-to-install-livesession-script',\n title: 'How to install LiveSession script?',\n description: 'Check how can you install LiveSession on any website.',\n },\n {\n link: '/help/how-to-record-keystrokes/',\n title: \"How to record user's keystrokes?\",\n description:\n \"In this article we'll present how to install our tracking code on WordPress website.\",\n },\n];\n\nexport const frontmatter = {\n metaTitle: 'How to anonymize sensitive page content?',\n metaDescription: 'Learn how to anonymize data',\n canonical: '/help/how-to-anonymize-sensitive-page-content/',\n};\n\nconst Wrapped = Article(Content);\n\nexport default () => (\n \n);\n","module.exports = __webpack_public_path__ + \"static/recording-elements1-c08177a5bbb7889b28490af3df755c37.png\";","module.exports = __webpack_public_path__ + \"static/anonymize-data-f90307aa2e0a960c4b148eed16e40a32.png\";","module.exports = __webpack_public_path__ + \"static/img-mask-05b00f3287116093f1712c543121ffb7.png\";"],"sourceRoot":""}