{"version":3,"sources":["containers/HomePage/HomePage.js","containers/HomePage/images/HP-Step1-@2x.png","containers/HomePage/images/HP-Step2-@2x.png","containers/HomePage/images/HP-Icon1-@2x.png","containers/HomePage/images/HP-Icon2-@2x.png","containers/HomePage/images/HP-Icon3-@2x.png","containers/HomePage/images/HP-Step3-@2x.png","_platform/src/components/MessageBox/MessageBox.js","../node_modules/memoize-one/dist/memoize-one.esm.js","_platform/src/utils/checkRoles.js","_platform/src/utils/checkPermissions.js","_platform/src/utils/PrivateComponent.js","components/CustomComponents/SvgIcon/IconWrapper.js"],"names":["RewardsProvider","LoadAsync","__webpack_require__","e","then","bind","AlternateContainer","styled","div","_templateObject","StyledRewardsProvider","_templateObject2","lighten","Featured","h3","_templateObject3","withSettings","_ref","settings","react__WEBPACK_IMPORTED_MODULE_1___default","a","createElement","react_helmet__WEBPACK_IMPORTED_MODULE_4___default","_platform_src_utils_PrivateComponent__WEBPACK_IMPORTED_MODULE_10__","redirectOnError","pathname","settingsApp","loginPagePath","_smooth_ui_core_sc__WEBPACK_IMPORTED_MODULE_3__","className","xs","md","_components_CustomComponents_SvgIcon_IconWrapper__WEBPACK_IMPORTED_MODULE_7__","src","Step1","alt","Step2","Step3","justifyContent","imagePoints","react_router_dom__WEBPACK_IMPORTED_MODULE_5__","to","imageRewards","imageStatus","style","borderBottom","sm","_components_CustomComponents_SvgIcon_SvgIcon__WEBPACK_IMPORTED_MODULE_8__","icon","scaleWidth","scaleHeight","width","height","fill","title","showFeatured","rewardLabels","highlightHeading","highlightTagline","module","exports","p","StyledAlert","Alert","Title","Multiline","MessageBox","children","_ref$title","undefined","_ref$variant","variant","defaultProps","areInputsEqual","newInputs","lastInputs","length","i","__webpack_exports__","resultFn","isEqual","lastThis","lastResult","lastArgs","calledOnce","_len","arguments","newArgs","Array","_key","this","apply","memoize_one__WEBPACK_IMPORTED_MODULE_0__","prop_types__WEBPACK_IMPORTED_MODULE_1__","prop_types__WEBPACK_IMPORTED_MODULE_1___default","n","checkRoles","currentUser","requiredRoles","isArray","roles","some","item","indexOf","propTypes","PropTypes","object","isRequired","array","checkRolesMemoized","memoizeOne","checkPermissions","requiredPermissions","permissions","checkPermissionsMemoized","PrivateComponent","_this$props","props","deniedPermissions","deniedRoles","displayError","errorMessage","publicOnly","tempAuthAllowed","user","_this$props2","currentUserTemp","UnauthorisedComponent","react_default","RedirectOnErrorComponent","react_router","push","userObject","token","userId","Component","mapStateToProps","createStructuredSelector","selectCurrentUser","selectCurrentUserTemp","connect","IconWrapper"],"mappings":"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","file":"static/js/homepage.2bde795c.chunk.js","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\n// Style and SEO\nimport { Col, Grid, Row, styled } from '@smooth-ui/core-sc';\nimport Helmet from 'react-helmet';\nimport { Link } from 'react-router-dom';\nimport { lighten } from 'polished';\n//import BgGold from '../../components/CustomComponents/Backgrounds/BgGold';\n//import BgBlack from '../../components/CustomComponents/Backgrounds/BgBlack';\nimport IconWrapper from '../../components/CustomComponents/SvgIcon/IconWrapper';\nimport SvgIcon from '../../components/CustomComponents/SvgIcon/SvgIcon';\n\nimport { withSettings } from '../../containers/WebApp/SettingsContext';\nimport PrivateComponent from '_platform/src/utils/PrivateComponent';\nimport LoadAsync from '_platform/src/utils/LoadAsync';\n//import VideoEmbed from '../../components/VideoEmbed/VideoEmbed';\n\nimport imagePoints from './images/HP-Icon1-@2x.png';\nimport imageRewards from './images/HP-Icon2-@2x.png';\nimport imageStatus from './images/HP-Icon3-@2x.png';\n\nimport Step1 from './images/HP-Step1-@2x.png';\nimport Step2 from './images/HP-Step2-@2x.png';\nimport Step3 from './images/HP-Step3-@2x.png';\n\nconst RewardsProvider = LoadAsync(() =>\n import(\n /* webpackChunkName: \"rewardsProvider\" */ '../RewardsProvider/RewardsProvider'\n )\n);\n\nconst AlternateContainer = styled.div`\n background-color: #231f20;\n color: #fff;\n padding: 2em 0;\n text-align: center;\n\n h1 {\n padding-top: inherit;\n color: #fff;\n }\n p {\n color: #fff;\n line-height: 1.5;\n }\n\n .step-container {\n border: 1px solid #fff;\n min-height: 405px;\n }\n`;\n\nconst StyledRewardsProvider = styled.div`\n background-color: #231f20;\n color: #fff;\n padding-bottom: 40px;\n padding-top: 40px;\n\n .rewards-highlight {\n background-color: transparent;\n }\n\n .rewards-list-item-title {\n padding: 0.5rem 0.25rem 1.5rem 0.25rem;\n }\n .rewards-list-item-inner {\n background-color: #f4f4f4;\n border: none;\n }\n\n .rewards-list-item-points,\n .rewards-list-item-actions {\n padding-bottom: 2rem;\n }\n .points-value {\n font-weight: bold;\n color: #000;\n span {\n color: #00d072;\n }\n }\n\n .rewards-list-item-button {\n font-size: 16px;\n font-weight: normal;\n letter-spacing: 2px;\n padding-top: 0.7rem;\n padding-bottom: 0.7rem;\n text-transform: uppercase;\n background-color: #2b3033;\n color: #fff;\n &:hover {\n background-color: ${lighten(0.1, '#2b3033')} !important;\n color: #fff;\n }\n }\n`;\n\nconst Featured = styled.h3`\n background-color: #000;\n color: #fff;\n font-size: 30px;\n width: 200px;\n height: 50px;\n text-align: center;\n margin-left: 85px;\n`;\n\nconst HomePage = ({ settings }) => {\n return (\n
\n \n {/* */}\n \n\n \n \n \n \n \n

Welcome to HP Platinum Club

\n
\n

\n Welcome to the HP Platinum Club, designed to reward you for\n your sales of selected HP products and for completing\n training. The more selected HP products you sell, the more\n points you earn and the more rewards you receive. Achieve 300\n Points and you can claim a reward.\n

\n

\n You also earn points for completing HP training. HP has\n partnered with EdApp as our innovative training platform\n solution. Through EdApp, you will have access to all of the\n training resources you need to become an expert on HP\n products, how to upsell, cross sell and understand your\n customers needs.\n

\n
\n

\n HP want to partner with you and reward you for selling HP\n products. Plus high achievers receive access to exclusive HP\n events.\n

\n \n
\n \n \n
\n \n \"Step\n \n

Step 1

\n

\n Sell selected HP Products\n
& complete training\n

\n
\n \n \n
\n \n \"Step\n \n

Step 2

\n

\n Earn points\n

\n
\n \n \n
\n \n \"Step\n \n

Step 3

\n

\n Claim your rewards!\n

\n
\n \n
\n
\n
\n {/*\n \n \n \n \n \n \n \n \n */}\n \n \n \n
\n \"Rewards\n
\n Points\n

\n Check out the participating products{' '}\n and the points you can earn for each.\n

\n \n \n
\n \n
\n Rewards\n

\n Use your points to claim rewards. The more points you earn, the\n more or higher value rewards you can claim. Choose a digital\n gift card from top retailers and brands, some HP merchandise or\n a reward delivered directly to you.\n

\n \n \n
\n \"Celebrating\n
\n Status\n

\n Earn more points to move up the status tiers. Your status opens\n up access to exclusive HP events. The higher your status tier\n the more events available for you to attend.\n

\n \n \n \n \n \n \n

Platinum Club Status

\n
\n

\n The amount of points you earn and your rank amongst your\n peers as well as completion of training determines your\n status. There are 3 levels of Platinum Club status with\n increasing benefits. When you first join the program your\n default membership status is SILVER (entry level). From\n there you can be promoted to GOLD or PLATINUM based on your\n performance.\n

\n \n
\n \n \n \n \n \n Silver\n \n \n \n \n \n Gold\n \n \n \n \n \n Platinum\n \n \n
\n \n
\n \n \n \n \n \n \n \n \n \n \n
\n );\n};\n\nHomePage.propTypes = {\n settings: PropTypes.object.isRequired,\n};\n\nexport default withSettings(HomePage);\n","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAegAAAF2CAMAAACS4vsNAAABJlBMVEUAAAD///////////////////////////////////////8cltL///////8cltL///////8cltIcltIcltL///8cltL///8cltIcltIcltIcltL///8cltL///////////////////////8cltIcltIcltL///////////////8cltIcltIcltL///////////////8cltL///8cltL///8cltL///////8cltL///////////8cltL///////////8cltL///////8cltL///////8cltIcltL///////////////////////////8cltL///////////////////////8cltL///////////////////8cltL///8cltIcltL///8cltIVTktvAAAAYHRSTlMAcGDAsJAw4KAPgKD8UPoG9QnyMPgoC9oQZB8Y4sij8OSJQxZvWOx5OejBkIkeFAgE6sOqVjbZvbi3hXR6a2VcP9zVyZmVgklHzI0uKyUjs000KNCdYlFJPxLyp5nf0JQZ/t9VAAAP8klEQVR42uzc3U7iQBjG8RdFXUgNPWh6YkDgQOEA8aCBgAGzRhLWXYi7atQlJM/9X8UmazZM/Vjlo3am7/O7gJ78M512Oh0hIiIiIiIiIiIiIiLKpMfx2W23cwT6y69+y1/d7Z5KppTudy5Ar/C7Zz8kK+qVQ9DbOsWWuC8cfAW9w8s/iNvax5yUP6ZcF4edV0Ef1XN2sp5sg5YQ9NviokEAWs7Fd3FOIQ9aWjAUx0w6oFVclsQlDT5sr6oXijvqPmhV5YK4oh7gdc3t26tijnK5Yq1SPnS9dMPHK/ZG0aOQaXI3818t7cbde3qEF4Jb19f4EtKOtvFSXhwQXuA5v3Yg9JbdPF7oi/1meK7CzP/XuMFz12K7IZ6pOr1a/zlOjz3EVW2fpqc+4nonQu9rVBF3LnbrIe5K6EMOyogZidUixJ0JfVDYhWkmNivN2Xll4bY7IzrH+/YaCjdY2BeLlZow9YSW0jrCPx2r9wEPYaryeXtZDwGe+D/FZjcw8f15hdJ7T+PZ7s4NmCpCyytFo9lo3/LNB5cw+Fz3zKrTJgw1oYyqwxBwQGdWDYZLoaz6BkNDKKNCDwtzoax6gGFHKKsGcGWlltYygsGVDau0vB6naB0u+N1Kh6YzX81pLR4WikKZBUNOKFHt79fng9yahtG4tWZo537ndsp4g4e2+d3jyRqht4QSctKvYsPKEUPbJqz5SMDXfYa2yngPCekdMLQ9akhOs87QlmjnkSRvi6Gt0O4iYQOGtkEeSfMihk5fH8kLdhk6bXV8hk7I0Olqz/EpagydriI+h/eLodNU+I245s715LGwppPdu3yAuBlDp6mImMNBSTakVUGMN2XoFM1hupnKBkUBTH2GTk8j3rkgG1WPlZ4zdHpqMBxOZcMGMP1g6NSUYRgkfX2GTsuph4VqSTbuHoYvDJ2WSeInPTWxUGbotIxhGEsCKlg4Yui0RDC0JAHHWAgYOi1bMISSgCEMDJ2SeGhJwhZD24ChlWBoJRhaCYZWgqGVYGglGFoJhlaCoZVgaCUYWgmGVoKhlWBoJRhaCYZWgqGVYGglGFoJhlaCoZVgaCUYWgmGVoKhlWBoJRhaCYZWgqGVYGglGFoJhlaCoZVgaCUYWgmGVoKhlWBoJRhaCYZWgqGVYGglGFoJhlaCoZVgaCX+sGM3KwmEURzGX4kYs4GwhimJEu1jgoikXYLGBIUEQpmLFgan+7+JNi5eaBGMHufIeZ5b+C0O5w+0k4B2EtBOAtpJQDsJaCcB7SSgnQS0k4B2EtBOAtpJQDsJaCcB7SSgnQS0k4B2EtDrKu+Pei/NWpoP3w+A3kj5eCeTOiu/gNYvb3Wl7rIJ0NpNEjHQ9R7Qug3FRg2gNRuci5EegdasKVb6BFqxQsz0ALReN6mYqQe0WoNnMVM6BVqtsdip4I/WqxQrpS2WMb36f0aLpJa+z3ZnbN2KzSWuW9wFuwG9QolEldNgOaCrdypR2SyYDug1nei3YDugq/ckUR/BdkBXbyRR98F2QFevIVHBeEADDTTQQAMNtM2ABhpooIEGGmibAQ000EADDTTQNgMaaKCBBhpooG0GNNBAAw000EDbDGiggQYa6HqgO4vF7evl1VEb6H/aTuiTJWz78GfZ8X7nAuhf9u61K4koCuP4bmV0GRsEIq6VBloJWUgkmiVKiZRFN+miyd7f/0tUMyr7MDMMyDmsc9bi97J61V/h8DgzDmFg6FimXjkLvUxcs1iYhQ5iXOhsKU50Aq46iexqbRban2Ghs5ZN/zTAUSCvem0W2o9RoWNlJzPlwVUkP1ZhFtrLpNCtPLn2wXVKvuKZWWgPg0KX6VwSHEkKUk3PQg8wJnShSeearHyAVHIWWmRK6GSeLhTBladg8dYsNGdK6FqcLtgFcDRoGHt5FpoxJDTvTB1wWTTc8ix0nxmhk3ExIJ8/g9mtWegLRoQu5ImJs/lzuHhiFvqcEaFXibPA1aFQ+fQs9BkTQpepj82fNoXrmBn6NWhOSegGMeL8GS5jZOhXoDkVoWN5EpTB1aRRxLOmhF7Avi3QnIrQ28Tw+XM0VVNCL2Lfd9CcgtBZmwSn4NqnETUMCd3GvnXQnILQJ8Tx+XNEq4aEnsO+FdCc/NBZm0QFcCUctW4vTucyCa7W2ne/GBpmhF5CRuffXKAmdIlEdRiUPSVXBQbFqvRPx4zQwj8+Ar1JDx2rhO/XSZscvaATe9aI0BFk7oPepIdeJobNn4I6OWrA8CPbvhGhhc9XDzR/2Ln00B0SWcEv7ylwxdL/gavr/I0ZoTeReQFakx06ZpOoBY608+d54WC+LVxHlgVHhv5LGBH6FTIboDXZobvEsLQZYSNL8bRJ4TOV5X4NGBH6ELkI6Ex26BINmz+TfmnLwsRdcY/qRoSGPWTmQGeyQzdJlABH1ucSwQwfUuy08IoQNyP0I+Qeg8Zkh/bMn3z+LvqlbQgDd5VcSSNCP51H5ttz0Jfk0EkSbfM3Zbvgl9YaOLO5ukaEhjk05WeVkkO3SJQFR01447V4ylicb2QZOlM0I/RP5OY1fvGWHDrjP3/2vJcIxoWBpTd4CVLPjNBwD7k/a6AryaH3iWFHae8lguJttDV2ZnNUDQl9gIJ7d0FTkkOXfOfPls8lgjV+HVnKc8lC3ZDQsImCzSjoSXLoHnHiUbrhl7boObO5Vk0JfTiPgo2boCXJoa3w+bMo3EbbFM9s5oWGJRS19fzJtLKXbn6UHnUjK5kY+tlLFK0cgIZUHsZK4Fr1pm0Gz5+ujjGhITKPA65p+PItOfS2//zJLxEM3sha1GeZExqu4KDFHdCN5NDL1JcaMn8WgudPV1lGhl+HkXM5haHhPnrs7Wi2h0oOXQuaP0lI2/HbyNI29WUmz/DjHjLXH0WVhY6uo9eT9x9AI5JDF8LmzxO2kXnmT6YxcYZbOGD9rqrQsLaHfhbvH33R5e1acmjIe87NJZ/5M+Y/fzLpSTO8QI9jZaEh9xKDPNltX52u9stv9yOqQ1eHz59dYf7siPMnk5o4wy56RaSH5t/TetmIqg1dpDN2Onj+bPjPn8zJpBk+oI9b6kLDzQ3Uy57a0EnP/DnqRpYipjtphs/o44bC0BB9i3rZUhaa9xLTVnzTZkr/ZcGRIMZOT5rhAH28lR+aO1pAnfxWG7o8wvwZOp52Js6whj7eqA0NX9uok5zS0EnyOUonhPkz/E6e7uQZ5tDjwU0lobkrOn1TH6gKzdPWQudPUY+YyigZ7sJQT1dw0A6EejPpf0fuBmrjsdrQy8JROvgSQa5gEbc9ymfjHAz3YRcFC0cw3vW7d+BSDo/nUQ8RVaFZzpTlcveTjuWoChtZ0bqwahMXLwSNmsg8hBDRneOrFzYf5cZdrVfgkj69X0EdqA69TB7jPUWwDAG+IrMECixiXxsuLXr7WIM3a9Wh4ZQ8xnmKYCUNAZ7PY9/15yDdQ3l3PEcfbq2PF9u80DUSjfkUwQwEaosflqS7iswVmNjHz1eWvs/NbVydlrb60NwJBWuwIcXXKgR7j8xKDiQ7MujuSH+R6YaOpYgZ7ymC8SwEe6j0IurHC8gsgoGmHBoSdthBq3m5R3YviqVzINGPB8gtgYGmHRoyxIzzFMESDLWFgic7IMvaOxR9BQNNPTSUiRn9KYL1sBwLKNq99XgNJhV9evvGAiKac1u7PqGhSn6KfCPzasYgxBJOx7xWF3zpHBos8lEY+gGsmYYwdxdxKt6Bkf6ydy9MSURRHMAPKtFjE6ztJcGiNSCVUoxhSmo6Wj4ZX6XSNP2//6fI0cB7oeUN7Z5zft+A+QNz9u6554wyaP+k7RbBZm+eU3sPMQqxoPT0hSFo+uxbUn/wPUppL4qhCM2N9gAGTT+M82y7RbDZ5GvqTHwZQxGmwZ5BC5qmG5ao+Bdqzz5Sp56mMGQ5CqtRBm17/cjnGq1l8t1UgBouIxRaow/a7ilo6iOzfXoSoIZL7yGF14iDtj15MGkff75piPkLdW0xiyEpVijERh60bfrrS+sareHR78fUi8stB0OQD20ZFoigr3x5+8ycInjjw4NvU9Sr+W0PA1ZaC/jQ7RAEfWXKOP6cfPbp7Ysn1J/CYjqDQXF2Z44p9AIRdM309KspGpTkxXokd79P5dXFO4EdEBbeoFWdBq00aKVBKw1aCA1aCA1aCA1aCA1aCA1aCA1aCA1aCA1aCA1aCA1aCA1aCA1aCA1aCA1aCA1aCA1aCJFBz90tZU/3grlAsE6D7lsU19zg7RozaNB9W8Ffzjmxkrx46C8iLugD1MWCutK5F3PFAM0CDYI93DoiNsacIA19DYKitQWJizkHAwk6YHsz+1HCrShxsYSegx6DIdR3wC3vXWsBFBOXTu9BHzEZ3tHgnOXHOkbvQVdgyPC4O3olBY7FWJdBn5DJg2GCyZNIFKYkMXHPQRcShRaLwFIMbv1TZQKmTWJjAl1Ik2Udts2f0XBLp3CFYy1GdJBAx6oVsjz1wNwh8XGU6DjnWWowA97COWHdz8lPFx1IpCvU4HsGrDkHxEv88E5bh3FqtA3m3EVSRDnwF+bZnh0JzDj7/8xj8xzds/0AbMocgTQJl4xBhlkSLZ6CECUmJ7s9SkMMPq0HWnC35HI6HdOCu4Ulkmq/ClFEdXcbFqQU3DX5kK6m61O8CNsEQwkOyyb7dBe2LWIoAktYtxD2owzbEqM+31vvT2E6ZfkhWzpyYNm4JJaO2SyoG0zB7YVyyX0ntmGqyrpBWy+4ud42NNzLM+41aV9w81m52dY6wLLBuxNnEgpun8tKMTYXFLovuMd5v9g5dGGaISnOhRTcdfd5dwr6ORBTcNfESzAVSYSFX2IK7rpZWNZIgKaCu0wCpGHKLhB/W7CdkQRJD6a7xF4EtiLvgrtuDZYLYq6x4P4l4U/sWgqmTebf7xMPlqqUJw2ifQemHHF2uSGv4K7bg8nlM5OnWXxcYsFd8zQG0zLxJbPg9mt55XvBUmrB7TP8I8O1U3DHgSUmpuCumRfRKdhUcO+TOGWYHA7Dl9oX3KLev//1fhOmXWJoWXLBXTcHyyqxUwakHfZ28OBRZTcGYT4hvOCuuczzHoOwBUuM3Te5105BZhXpggtTgtnH68o45zOjiI5iqjtxYfAKxElR0Iubtlb4fukLDusCpEuFDRj2iJFjGEq8/qx6sMO2I3RRxzv4NptkiJE1GLg363fZz58gRlZhkHpUYigz3edGY4yPCPo9PvKIkVmZV8z8FPK4VSJG5mFIyGn89BHley8+A0OeffN6S4U9xqdHZ7AUVyJS5bbysPDqMtmB+rcN4qUEdYN5o80a1L9k2c0zOYW6xr1p7I4L1WSc+IlANcqznCIYhbJ5vB6txOwZ7VaW7UjnMRmbzDq0y/J/+0ZlCepGIsd7cPfFsgOF/Ar/m6TJ7+ndLORyM0szs7x/zUoppZRSSimllFJKKaWUUn/GwAAAPbroz4g66HoAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAegAAAF2CAMAAACS4vsNAAABMlBMVEUAAAD///////////////////////////////////////////////////////////////////////8cltL///8cltL///////////////////////////8cltL///////////////////////////////////////////////////////////////////////////////////////////////8cltL///////////////////////////8cltIcltIcltL///8cltL///////////8cltIcltIcltL///8cltIcltIcltL///8cltL///8cltIcltL///8cltIcltIcltIcltIcltIcltIcltL///8cltIcltIcltIcltIcltIcltIcltL///8cltL///8cltLNoAuvAAAAZHRSTlMAEC/AYNCQ8PsFb/2XICQqgAn0gOGQN1zl3ULpsAjtR3cV+PbMfD0ZE6CcC7iIalcdZtm9qISitK3IxI1OMxXotVPzpQ3WVPnecw+YHdPAY6tnSjZKPyxeySQHiHf9cNbu0FD+8tr/pAAAHmhJREFUeNrs2utS2lAUBeAdHIwBGixSvKCiiIqKIkIFRAUU8VIVbW2t1TJUd97/FfpDZzjBBBAJBGd9r7Bm52SvcwgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBOSlJUkhSCD0nai8950jtbQTe/WJiIxFLriZCKzD+Izfh62s/mws4V19JngkGmbqT83I6RbG53jWAQKaHhSX6LcPJUJRgwodVZ7oBzDlkPEDUX5I5lK/iGDwQlPsTvI3scBDZXOvVzFyRDBDYWXZe5S5xxApuSRmXuIucjgQ0prlk254tkchvFJe+yVCIiSVp2TMVduUzEx01klwjsJnRkmnFstKiSGfVxMT3LZlKbBHaymWZD4Zhrj1rzJjIyG1pYRBduIy4fG5BX31BrKks5Pxu5CBDYg7pjNMup3T/0RgHDosU9jCsPW0gYjPPk3Dx1QinG3PzKEQqU/otm+JWh79Q51ePjRmEXQX/t+bnRdIDeJ7ooc6O0RNBHlTA3SAasqV4mvQT9oni4wcUUdYc0PMJ6PnSi/SLFWE92KdQ1apobLBL0w6aT9Q6j1FW7E6y3StB73oYY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\"","module.exports = __webpack_public_path__ + \"static/media/HP-Icon1-@2x.dcfb22a5.png\";","module.exports = __webpack_public_path__ + \"static/media/HP-Icon2-@2x.87907c83.png\";","module.exports = __webpack_public_path__ + \"static/media/HP-Icon3-@2x.54e73476.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAegAAAF2CAMAAACS4vsNAAAApVBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+4/eNVAAAANnRSTlMAsMCA0OBgoHBAMPH7EPYE5doM1FOPFycs66wcicVmQxKXTkkIp3pZIu6ShL24tXbLbF47Npvw5mBmAAAJSklEQVR42uzVS2oCURQE0BcSNcHX/pAGyc9gPhAjIRnc/S/NmdDQomC/Hsg5GyioGlQCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIBrtv67i4O8G1apjPrlJ8fB8/97okcPH5Noyjeb1LnpcpejaTzaTBO9qO7n0Wb+u05dqj8H0Wa1fUwUV39P4pjxbdXdNzwdz8lvpi6satTfNvWil5y8ddYlLWdxyuwrXW64ilMGr4lCFqM4x569O1FSFAbCANzOeBOIgrfjfeuMOqPzv/+j7W7tRQCRkLi7tdXfA4BlF0l3h4TXLpmpj5BFm7Oyx+g2kY1XJQNyLZDNqEPMvtoOmT1tKa/uGZmVusRsm3jQsJtTPhsPGvp1YnbVPOg5SNIn99Cz6xGzqedA15tLuqYj6GpsidnjlqAvGOpne/qKXFBbdESceFtPuq7rdifro0CSRp10XHZI4hWqtaEk2am9FzzEVYjZMkZMMPbpN7ccIIFTo+wWHhKcP8L38T+KiNkQs6PjIKK0oah5E3HehLJqCcQFiwzNuR2X05ZUEDFbUtzyIBAj5pTNRiDGO8lM/blPYjb0oPI2lOzSTIm0fpyLPUo2FlBxNW3FAArvktIMzzl6zwVi9svMw3yBmLmtTuDKHqK8C92zEIhyWpRiAxW3Qi14gWJMqXpN/e7V1UNUsKVUz1DsiZmSDYSt6A73DVGNIaXp9hE18CmdfEKYw10TYxOE9ad5+tWBS7d1Soh6pru2HsLmxAy1swzcqneBiFdJtyzPiBAflMGBKyy7AoSUJGUx9xAxS8vpVc6Espgq9ygRM+Mi7ETZXBxE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\"","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Alert, styled } from '@smooth-ui/core-sc';\n\nconst StyledAlert = styled(Alert)`\n margin-top: 1rem;\n`;\n\nexport const Title = styled.div`\n font-weight: bold;\n`;\n\nexport const Multiline = styled.div`\n white-space: pre-line;\n`;\n\nconst MessageBox = ({ children, title = undefined, variant = 'primary' }) => {\n return (\n \n {title ? {title} : null}\n {children}\n \n );\n};\n\nMessageBox.propTypes = {\n children: PropTypes.node.isRequired,\n title: PropTypes.string,\n variant: PropTypes.string,\n};\n\nMessageBox.defaultProps = {\n title: undefined,\n variant: 'primary',\n};\n\nexport default MessageBox;\n","function areInputsEqual(newInputs, lastInputs) {\n if (newInputs.length !== lastInputs.length) {\n return false;\n }\n\n for (var i = 0; i < newInputs.length; i++) {\n if (newInputs[i] !== lastInputs[i]) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction index(resultFn, isEqual) {\n if (isEqual === void 0) {\n isEqual = areInputsEqual;\n }\n\n var lastThis;\n var lastArgs = [];\n var lastResult;\n var calledOnce = false;\n\n var result = function result() {\n for (var _len = arguments.length, newArgs = new Array(_len), _key = 0; _key < _len; _key++) {\n newArgs[_key] = arguments[_key];\n }\n\n if (calledOnce && lastThis === this && isEqual(newArgs, lastArgs)) {\n return lastResult;\n }\n\n lastResult = resultFn.apply(this, newArgs);\n calledOnce = true;\n lastThis = this;\n lastArgs = newArgs;\n return lastResult;\n };\n\n return result;\n}\n\nexport default index;","/**\n * Check Roles - Check if the user has ANY of the required roles\n *\n * @param {object} currentUser The user object containing the roles property\n * @param {array} requiredRoles The array of required roles\n *\n */\n\nimport memoizeOne from 'memoize-one';\nimport PropTypes from 'prop-types';\n\nconst checkRoles = (currentUser, requiredRoles) => {\n if (\n !requiredRoles ||\n !Array.isArray(requiredRoles) ||\n !currentUser ||\n !currentUser.roles ||\n !Array.isArray(currentUser.roles)\n )\n return false;\n\n return currentUser.roles.some(item => requiredRoles.indexOf(item) >= 0);\n};\n\ncheckRoles.propTypes = {\n currentUser: PropTypes.object.isRequired,\n requiredRoles: PropTypes.array.isRequired,\n};\n\nconst checkRolesMemoized = memoizeOne(checkRoles);\n\nexport default checkRolesMemoized;\n","/**\n * Check Permissions - Check if the user has ANY of the required permissions\n *\n * @param {object} currentUser The user object containing the permissions property\n * @param {array} requiredPermissions The array of required permissions\n *\n */\n\nimport memoizeOne from 'memoize-one';\nimport PropTypes from 'prop-types';\n\nconst checkPermissions = (currentUser, requiredPermissions) => {\n if (\n !requiredPermissions ||\n !Array.isArray(requiredPermissions) ||\n !currentUser ||\n !currentUser.permissions ||\n !Array.isArray(currentUser.permissions)\n )\n return false;\n\n return currentUser.permissions.some(\n item => requiredPermissions.indexOf(item) >= 0\n );\n};\n\ncheckPermissions.propTypes = {\n currentUser: PropTypes.object.isRequired,\n requiredPermissions: PropTypes.array.isRequired,\n};\n\nconst checkPermissionsMemoized = memoizeOne(checkPermissions);\n\nexport default checkPermissionsMemoized;\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { createStructuredSelector } from 'reselect';\nimport { Redirect } from 'react-router-dom';\nimport {\n selectCurrentUser,\n selectCurrentUserTemp,\n} from '../containers/App/selectors'; // _platform\nimport checkPermissions from '../utils/checkPermissions'; // _platform\nimport checkRoles from '../utils/checkRoles'; // _platform\nimport MessageBox from '../components/MessageBox/MessageBox'; // _platform\n\n/**\n * Private Component - HoC to determine whether a component should be displayed\n * based on authentication, permissions and/or roles\n *\n * TODO: Extend with prop to supply function to determine permission `verifyFn` similar to LoadAsync\n *\n * The `user` prop can be either currentUser or currentUserTemp, depending on what the parent component determines is applicable.\n * If the `user` prop is not supplied, then this component will retrieve the user data via the App selectors.\n * The `tempAuthAllowed` prop determines whether currentUserTemp can be used\n *\n * `publicOnly` prop inverts the check so that the child component is only displayed to unauthenticated users (use `PublicComponent`)\n *\n * `deniedPermissions` and `deniedRoles` props take precedence over `requiredPermissions` and `requiredRoles`.\n * For example, if the props are `requiredRoles={['Administrator']} deniedRoles={['Administrator']}`,\n * users with the `Administrator` role will be denied access to the child component.\n *\n * If the checks determine that the access should be denied to the child component:\n * - By default the child component is skipped silently\n * - If the `redirectOnError` prop is supplied, the user will be redirected to the supplied local path\n * - Otherwise, if the `displayError` prop is supplied, the user will be shown an error\n * which can be customised via the `errorMessage` prop\n */\n\nclass PrivateComponent extends Component {\n render() {\n const {\n deniedPermissions,\n deniedRoles,\n displayError,\n errorMessage,\n publicOnly,\n redirectOnError,\n requiredPermissions,\n requiredRoles,\n tempAuthAllowed,\n user,\n } = this.props;\n const { currentUser, currentUserTemp } = this.props;\n\n const UnauthorisedComponent = displayError ? (\n \n {errorMessage || 'Unauthorised'}\n \n ) : null;\n\n const RedirectOnErrorComponent = redirectOnError ? (\n \n ) : null;\n\n // Determine which user object to use\n // 1. Use `user` prop if supplied\n // 2. If `tempAuthAllowed` prop:\n // 1. Is true: use `currentUserTemp` if available, if not use currentUser\n // 3. Is false: use currentUser\n //\n // Check for user.token and currentUserTemp.token to ensure they're not the\n // default empty objects. Cleaner than using Object.keys\n let userObject = {};\n if (user && user.token && user.userId) {\n userObject = user;\n } else if (tempAuthAllowed && currentUserTemp && currentUserTemp.token) {\n userObject = currentUserTemp;\n } else {\n userObject = currentUser;\n }\n\n // Invert the check if the publicOnly prop is supplied - used in PublicComponent\n if (publicOnly) {\n return !userObject.token\n ? this.props.children\n : RedirectOnErrorComponent || UnauthorisedComponent;\n }\n\n // Check granular permissions if supplied\n if (\n !!userObject.token &&\n ((deniedPermissions && checkPermissions(userObject, deniedPermissions)) ||\n (requiredPermissions &&\n !checkPermissions(userObject, requiredPermissions)))\n ) {\n return RedirectOnErrorComponent || UnauthorisedComponent;\n }\n\n // Check granular roles if supplied\n if (\n !!userObject.token &&\n ((deniedRoles && checkRoles(userObject, deniedRoles)) ||\n (requiredRoles && !checkRoles(userObject, requiredRoles)))\n ) {\n return RedirectOnErrorComponent || UnauthorisedComponent;\n }\n\n return !!userObject.token\n ? this.props.children\n : RedirectOnErrorComponent || UnauthorisedComponent;\n }\n}\n\nPrivateComponent.propTypes = {\n children: PropTypes.node.isRequired,\n currentUser: PropTypes.object.isRequired,\n currentUserTemp: PropTypes.object.isRequired,\n deniedPermissions: PropTypes.array,\n deniedRoles: PropTypes.array,\n displayError: PropTypes.bool,\n errorMessage: PropTypes.string,\n publicOnly: PropTypes.bool, // Inverts PrivateComponent - displays component to unauthenticated users only. Used by PublicComponent wrapper\n redirectOnError: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n requiredPermissions: PropTypes.array,\n requiredRoles: PropTypes.array,\n tempAuthAllowed: PropTypes.bool,\n user: PropTypes.object,\n};\n\nPrivateComponent.defaultProps = {\n deniedPermissions: undefined,\n deniedRoles: undefined,\n displayError: false,\n errorMessage: undefined,\n publicOnly: false,\n redirectOnError: undefined,\n requiredPermissions: undefined,\n requiredRoles: undefined,\n tempAuthAllowed: false,\n user: {},\n};\n\nconst mapStateToProps = createStructuredSelector({\n currentUser: selectCurrentUser(),\n currentUserTemp: selectCurrentUserTemp(),\n});\n\nexport default connect(\n mapStateToProps,\n null\n)(PrivateComponent);\n","import { styled } from '@smooth-ui/core-sc';\n\nconst IconWrapper = styled.div`\n align-items: center;\n display: flex;\n height: 190px;\n justify-content: center;\n margin-left: auto;\n margin-right: auto;\n width: 180px;\n`;\n\nexport default IconWrapper;\n"],"sourceRoot":""}