{"version":3,"file":"static/chunks/1045.4852350261b2a3a1.js","mappings":"wwBAUA,IAMMA,EAAAA,SAAAA,I,uBACF,WAAYC,GAAO,6BACf,cAAMA,IAoBVC,eAAiB,WACb,IAAMC,EAAgB,EAAKA,cAAcC,QACnCC,EAAO,EAAKA,KAAKD,QAEjBE,EACuB,qBAAlBH,GAAiD,qBAATE,EAEnD,EAAKE,SAAS,CACVC,UAAUF,GAEJH,EAAcM,aAAeJ,EAAKI,aACxCC,QAAQ,KAhCG,EAmCnBC,cAAgBC,GAAAA,CAAS,EAAKV,eAAgB,KAnC3B,EAqCnBW,eAAiB,YACbC,EAAAA,EAAAA,GACI,eACA,OACA,QACA,EAAKC,MAAML,OAAS,OAAS,QAGjC,EAAKH,UAAS,SAACS,GAAD,MAAgB,CAC1BN,QAASM,EAAUN,YA3CvB,EAAKK,MAAQ,CACTP,UAAU,EACVE,QAAQ,GAGZ,EAAKP,cAAgBc,EAAAA,YACrB,EAAKZ,KAAOY,EAAAA,YATG,E,gDAYnB,WACIC,OAAOC,iBAAiB,SAAUC,KAAKT,eAAe,GACtDS,KAAKT,kB,kCAGT,WACIO,OAAOG,oBAAoB,SAAUD,KAAKT,eAAe,K,oBAgC7D,WAAS,MACL,EAA4BS,KAAKnB,MAAzBqB,EAAR,EAAQA,MAAOC,EAAf,EAAeA,SACf,EAA6BH,KAAKL,MAA1BP,EAAR,EAAQA,SAAUE,EAAlB,EAAkBA,OAGZc,EA9DI,SAACC,GAAD,aAAY,eACrBC,EAAAA,EAAAA,MAAeC,MADM,SAErBD,EAAAA,EAAAA,QAAiBE,KAFI,GAGxBH,GA2DiBI,CADDT,KAAKU,SAGnB,OACI,iBACIC,UAAWC,GAAAA,CAAWR,EAAM,cAAP,eAChBA,EAAO,0BAA4BhB,IADnB,SAEhBgB,EAAO,wBAA0Bd,GAFjB,IADzB,UAKKY,IAAS,eAAIS,UAAWP,EAAM,oBAArB,SAA+CF,IACxDC,IACG,gBACIQ,UAAWP,EAAM,gCACjBS,IAAKb,KAAKjB,cAFd,UAGI,gBACI4B,UAAWP,EAAM,uBACjBS,IAAKb,KAAKf,KACV6B,wBAAyB,CAACC,OAAQZ,OAI7Ca,QAAQb,IAAaf,IAClB,gBAAKuB,UAAWP,EAAM,gCAAtB,SACKd,GACG,iBACIqB,UAAS,UAAKP,EAAM,uBAAX,YAAyCA,EAAO,iCACzDa,QAASjB,KAAKP,eAFlB,SAGKyB,EAAAA,EAAAA,EAAO,4BAGZ,iBACIP,UAAS,UAAKP,EAAM,uBAAX,YAAyCA,EAAO,iCACzDa,QAASjB,KAAKP,eAFlB,SAGKyB,EAAAA,EAAAA,EAAO,oC,EAxFlCtC,CAAqBiB,EAAAA,eAuG3BjB,EAAauC,aAAe,GAE5BvC,EAAawC,YAAcC,EAAAA,EAE3B,ICzHA,EDyHA,G,kBE1HAC,EAAOC,QAAU,CAAC,aAAe,2CAA2C,oBAAsB,kDAAkD,gCAAkC,8DAA8D,uBAAuB,mDAAmD,yBAAyB,qDAAqD,uBAAyB,qDAAqD,uBAAyB,qDAAqD,+BAA+B,2DAA2D,+BAA+B,6D,iBCAjqBD,EAAOC,QAAU,CAAC,aAAe,yCAAyC,oBAAsB,gDAAgD,gCAAkC,4DAA4D,uBAAuB,iDAAiD,yBAAyB,mDAAmD,uBAAyB,mDAAmD,gCAAkC,4DAA4D,uBAAyB,mDAAmD,+BAA+B","sources":["webpack://_N_E/./components/EntryProject/EntryProject.js","webpack://_N_E/./components/EntryProject/index.js","webpack://_N_E/./components/EntryProject/EntryProject.folkhem.module.scss","webpack://_N_E/./components/EntryProject/EntryProject.nordr.module.scss"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport debounce from 'debounce';\nimport i18n from '../../i18n';\nimport { trackEvent } from '../../utils/DataLayerHelpers';\nimport { ThemeContext, themes } from '../../themes/ThemeContext';\nimport stylesNordr from './EntryProject.nordr.module.scss';\nimport stylesFolkhem from './EntryProject.folkhem.module.scss';\n\nconst getStyles = (theme) => ({\n [themes.NORDR]: stylesNordr,\n [themes.FOLKHEM]: stylesFolkhem,\n }[theme]\n);\n\nclass EntryProject extends React.PureComponent {\n constructor(props) {\n super(props);\n\n this.state = {\n showMore: false,\n active: false,\n };\n\n this.textContainer = React.createRef();\n this.text = React.createRef();\n }\n\n componentDidMount() {\n window.addEventListener('resize', this.checkOverflow, true);\n this.checkOverflow();\n }\n\n componentWillUnmount() {\n window.removeEventListener('resize', this.checkOverflow, true);\n }\n\n _checkOverflow = () => {\n const textContainer = this.textContainer.current;\n const text = this.text.current;\n\n const refsNotSet =\n typeof textContainer === 'undefined' || typeof text === 'undefined';\n\n this.setState({\n showMore: refsNotSet\n ? false\n : textContainer.offsetHeight < text.offsetHeight,\n active: false,\n });\n };\n checkOverflow = debounce(this._checkOverflow, 300);\n\n toggleShowMore = () => {\n trackEvent(\n 'textShowMore',\n 'show',\n 'click',\n this.state.active ? 'less' : 'more'\n );\n\n this.setState((prevState) => ({\n active: !prevState.active,\n }));\n };\n\n render() {\n const { title, preamble } = this.props;\n const { showMore, active } = this.state;\n\n const theme = this.context;\n const styles = getStyles(theme);\n\n return (\n \n {title &&

{title}

}\n {preamble && (\n \n \n \n )}\n {Boolean(preamble) && showMore && (\n
\n {active ? (\n \n {i18n.t('entryProject.showLess')}\n \n ) : (\n \n {i18n.t('entryProject.showMore')}\n \n )}\n
\n )}\n \n );\n }\n}\n\nEntryProject.propTypes = {\n title: PropTypes.string,\n preamble: PropTypes.string,\n};\n\nEntryProject.defaultProps = {};\n\nEntryProject.contextType = ThemeContext;\n\nexport default EntryProject;\n","import EntryProject from './EntryProject';\n\nexport default EntryProject;\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"EntryProject\":\"EntryProject_folkhem_EntryProject__Xu0vz\",\"EntryProject__Title\":\"EntryProject_folkhem_EntryProject__Title__wGJx8\",\"EntryProject__PreambleContainer\":\"EntryProject_folkhem_EntryProject__PreambleContainer__a9bNb\",\"EntryProject--Active\":\"EntryProject_folkhem_EntryProject--Active__ri6fc\",\"EntryProject--ShowMore\":\"EntryProject_folkhem_EntryProject--ShowMore__ZtByK\",\"EntryProject__Preamble\":\"EntryProject_folkhem_EntryProject__Preamble__UUSL7\",\"EntryProject__ShowMore\":\"EntryProject_folkhem_EntryProject__ShowMore__gXjwq\",\"EntryProject__ShowMore--More\":\"EntryProject_folkhem_EntryProject__ShowMore--More__tX_sy\",\"EntryProject__ShowMore--Less\":\"EntryProject_folkhem_EntryProject__ShowMore--Less__x1Xqk\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"EntryProject\":\"EntryProject_nordr_EntryProject__24_7l\",\"EntryProject__Title\":\"EntryProject_nordr_EntryProject__Title__U_8uf\",\"EntryProject__PreambleContainer\":\"EntryProject_nordr_EntryProject__PreambleContainer__D9IcJ\",\"EntryProject--Active\":\"EntryProject_nordr_EntryProject--Active__YFRpx\",\"EntryProject--ShowMore\":\"EntryProject_nordr_EntryProject--ShowMore__FndM8\",\"EntryProject__Preamble\":\"EntryProject_nordr_EntryProject__Preamble__tDQR6\",\"EntryProject__ShowMoreContainer\":\"EntryProject_nordr_EntryProject__ShowMoreContainer__7WALW\",\"EntryProject__ShowMore\":\"EntryProject_nordr_EntryProject__ShowMore__2Juye\",\"EntryProject__ShowMore--Less\":\"EntryProject_nordr_EntryProject__ShowMore--Less__2_lA6\"};"],"names":["EntryProject","props","_checkOverflow","textContainer","current","text","refsNotSet","setState","showMore","offsetHeight","active","checkOverflow","debounce","toggleShowMore","trackEvent","state","prevState","React","window","addEventListener","this","removeEventListener","title","preamble","styles","theme","themes","stylesNordr","stylesFolkhem","getStyles","context","className","classNames","ref","dangerouslySetInnerHTML","__html","Boolean","onClick","i18n","defaultProps","contextType","ThemeContext","module","exports"],"sourceRoot":""}