{"version":3,"sources":["webpack:///static/js/app.504dabb18a080322715c.js","webpack:///./src/components/widgets/PageHeader/PageHeader.vue","webpack:///./src/components/widgets/Loading/Loading.vue","webpack:///./src/utils/uiHelper.js","webpack:///./src/utils/appLoginHelper.js","webpack:///./src/utils/errorHelper.js","webpack:///./src/utils/urlHelper.js","webpack:///./src/utils/environment.js","webpack:///./src/components/PasswordInput.vue?025d","webpack:///./src/components/sections/AppConsent/AppConsent.vue","webpack:///./src/components/sections/GDPRConsent/GDPRConsent.vue","webpack:///./src/components/sections/Login/CompanyInfo.vue?f7af","webpack:///./src/assets/images/product-icon-chat.svg","webpack:///./src/assets/images/product-icon-crm.svg","webpack:///./src/assets/images/product-icon-desk.svg","webpack:///./src/assets/images/product-icon-projects.svg","webpack:///./src/assets/images/product-icon-spaces.svg","webpack:///./src/components/sections/PersonaCapture/PersonaCapture.vue?4918","webpack:///./src/components/widgets/AccountList/AccountList.vue","webpack:///./src/components/widgets/ProductList.vue","webpack:///./src/components/widgets/TwSelect.vue?75dc","webpack:///./src/main.js","webpack:///./src/router/index.js","webpack:///./src/store/index.js","webpack:///./src/store/modules/login.js","webpack:///./src/store/modules/site.js","webpack:///./src/utils/cookieHelper.js","webpack:///PasswordInput.vue","webpack:///AccountNotSetup.vue","webpack:///EmailValidation.vue","webpack:///CompanyInfo.vue","webpack:///TfaSetup.vue","webpack:///MarketingContent.vue","webpack:///PersonaCapture.vue","webpack:///ProductList.vue","webpack:///TwSelect.vue","webpack:///./src/components/App.js","webpack:///./src/components/pages/AcceptInvite/AcceptInvite.js","webpack:///./src/components/pages/ForgotPassword/ForgotPassword.js","webpack:///./src/components/pages/Login/Login.js","webpack:///./src/components/pages/Logout/Logout.js","webpack:///./src/components/pages/ResetPassword/ResetPassword.js","webpack:///./src/components/pages/SAMLAuth/SAMLAuth.js","webpack:///./src/components/pages/SelectAccount/SelectAccount.js","webpack:///./src/components/pages/Success/Success.js","webpack:///./src/components/pages/TokenAuth/TokenAuth.js","webpack:///./src/components/pages/Welcome/Welcome.js","webpack:///./src/components/sections/AppConsent/AppConsent.js","webpack:///./src/components/sections/ErrorMessage/ErrorMessage.js","webpack:///./src/components/sections/GDPRConsent/GDPRConsent.js","webpack:///./src/components/sections/Login/SAMLForm/SAMLForm.js","webpack:///./src/components/sections/Login/SAMLStarter/SAMLStarter.js","webpack:///./src/components/sections/Login/StandardForm/StandardForm.js","webpack:///./src/components/sections/SiteNotFound/SiteNotFound.js","webpack:///./src/components/widgets/AccountList/AccountList.js","webpack:///./src/components/widgets/Loading/Loading.js","webpack:///./src/components/widgets/PageHeader/PageHeader.js","webpack:///./src/assets/images/client-persona.png","webpack:///./src/assets/images/contributor-persona.png","webpack:///./src/assets/images/email-expired.png","webpack:///./src/assets/images/email-send.png","webpack:///./src/assets/images/email-verified.png","webpack:///./src/assets/images/eu-flatflag-mini.svg","webpack:///./src/assets/images/google-logo-mini.png","webpack:///./src/assets/images/icon-check.svg","webpack:///./src/assets/images/icon-invisible.svg","webpack:///./src/assets/images/icon-visible.svg","webpack:///./src/assets/images/ops-manager-persona.png","webpack:///./src/assets/images/pm-persona.png","webpack:///./src/assets/images/teamwork-logo.svg","webpack:///./src/components/App.vue","webpack:///./src/components/pages/AcceptInvite/AcceptInvite.vue","webpack:///./src/components/pages/AccountNotSetup.vue?fea3","webpack:///./src/components/pages/ForgotPassword/ForgotPassword.vue","webpack:///./src/components/pages/Login/Login.vue","webpack:///./src/components/pages/Logout/Logout.vue","webpack:///./src/components/pages/ResetPassword/ResetPassword.vue","webpack:///./src/components/pages/SAMLAuth/SAMLAuth.vue","webpack:///./src/components/pages/SelectAccount/SelectAccount.vue?642f","webpack:///./src/components/pages/Success/Success.vue","webpack:///./src/components/pages/TokenAuth/TokenAuth.vue","webpack:///./src/components/pages/Welcome/Welcome.vue","webpack:///./src/components/sections/EmailValidation/EmailValidation.vue?fcf6","webpack:///./src/components/sections/ErrorMessage/ErrorMessage.vue","webpack:///./src/components/sections/Login/SAMLForm/SAMLForm.vue","webpack:///./src/components/sections/Login/SAMLStarter/SAMLStarter.vue","webpack:///./src/components/sections/Login/StandardForm/StandardForm.vue","webpack:///./src/components/sections/Login/TfaSetup.vue?d349","webpack:///./src/components/sections/MarketingContent/MarketingContent.vue?01c9","webpack:///./src/components/sections/SiteNotFound/SiteNotFound.vue","webpack:///./src/components/pages/Welcome/Welcome.vue?02f1","webpack:///./src/components/pages/Logout/Logout.vue?a961","webpack:///./src/components/sections/Login/CompanyInfo.vue?c181","webpack:///./src/components/widgets/PageHeader/PageHeader.vue?e8a3","webpack:///./src/components/pages/AccountNotSetup.vue?6fe8","webpack:///./src/components/widgets/TwSelect.vue?3431","webpack:///./src/components/sections/AppConsent/AppConsent.vue?cd97","webpack:///./src/components/sections/SiteNotFound/SiteNotFound.vue?bbfb","webpack:///./src/components/PasswordInput.vue?6f4c","webpack:///./src/components/widgets/AccountList/AccountList.vue?ece3","webpack:///./src/components/pages/TokenAuth/TokenAuth.vue?855a","webpack:///./src/components/pages/SelectAccount/SelectAccount.vue?a9af","webpack:///./src/components/pages/AcceptInvite/AcceptInvite.vue?7144","webpack:///./src/components/sections/Login/StandardForm/StandardForm.vue?523a","webpack:///./src/components/widgets/ProductList.vue?371c","webpack:///./src/components/widgets/Loading/Loading.vue?d5e9","webpack:///./src/components/sections/GDPRConsent/GDPRConsent.vue?7d30","webpack:///./src/components/sections/EmailValidation/EmailValidation.vue?7acd","webpack:///./src/components/sections/PersonaCapture/PersonaCapture.vue?ae82","webpack:///./src/components/sections/Login/SAMLStarter/SAMLStarter.vue?8f43","webpack:///./src/components/pages/Success/Success.vue?456e","webpack:///./src/components/pages/SAMLAuth/SAMLAuth.vue?e81a","webpack:///./src/components/pages/ResetPassword/ResetPassword.vue?3d70","webpack:///./src/components/sections/Login/TfaSetup.vue?814b","webpack:///./src/components/sections/MarketingContent/MarketingContent.vue?8552","webpack:///./src/components/pages/Login/Login.vue?ffbf","webpack:///./src/components/App.vue?9d02","webpack:///./src/components/pages/ForgotPassword/ForgotPassword.vue?d112","webpack:///./src/components/sections/Login/SAMLForm/SAMLForm.vue?3720","webpack:///./src/components/sections/ErrorMessage/ErrorMessage.vue?8e92"],"names":["webpackJsonp","module","exports","__webpack_require__","Component","__webpack_exports__","smartFocus","__WEBPACK_IMPORTED_MODULE_1_vue__","nextTick","iFlds","document","querySelectorAll","length","f","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_array_from___default","filter","el","value","focus","forEach","parentElement","classList","add","loadThemeColor","color","localStorage","getItem","querySelector","style","background","setThemeColor","hasLocalStorage","setItem","removeItem","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_array_from__","n","redirectToApp","appInfo","code","location","redirect_uri","indexOf","state","encodeURIComponent","client_id","nonce","window","href","redirectToAppWithError","error","description","filterAccounts","accounts","productCode","key","acc","installation","handleAPIError","store","err","defaultMessage","response","data","console","type","ERROR_TYPE","FORM_ERROR","status","commit","message","appError","appErrorExplanation","FATAL_ERROR","TFA_SETUP_REQUIRED","INSTALLATION_VALIDATION_PENDING","TFA_REQUIRED","errors","constructor","Object","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_keys___default","map","join","explanation","INSTALLATION_PROVISIONING","d","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_keys__","isCurrentDomain","url","RegExp","host","test","sanitiseURL","prepend","arguments","undefined","u","replace","fixProtocol","end","navigateExternalURL","isIframe","sessionStorage","open","buildQueryString","params","k","hasOwnProperty","push","isDevelopment","hostname","injectStyle","ssrContext","defineProperty","__WEBPACK_IMPORTED_MODULE_0_vue__","__WEBPACK_IMPORTED_MODULE_1_raven_js__","__WEBPACK_IMPORTED_MODULE_1_raven_js___default","__WEBPACK_IMPORTED_MODULE_2_raven_js_plugins_vue__","__WEBPACK_IMPORTED_MODULE_2_raven_js_plugins_vue___default","__WEBPACK_IMPORTED_MODULE_3__components_App_vue__","__WEBPACK_IMPORTED_MODULE_3__components_App_vue___default","__WEBPACK_IMPORTED_MODULE_4__router__","__WEBPACK_IMPORTED_MODULE_5__store__","__WEBPACK_IMPORTED_MODULE_6__utils_environment__","config","productionTip","a","release","environment","addPlugin","install","context","router","template","components","App","onpageshow","event","persisted","reload","__WEBPACK_IMPORTED_MODULE_1_vue_router__","__WEBPACK_IMPORTED_MODULE_2__components_pages_Login_Login_vue__","__WEBPACK_IMPORTED_MODULE_2__components_pages_Login_Login_vue___default","__WEBPACK_IMPORTED_MODULE_3__components_pages_ForgotPassword_ForgotPassword_vue__","__WEBPACK_IMPORTED_MODULE_3__components_pages_ForgotPassword_ForgotPassword_vue___default","__WEBPACK_IMPORTED_MODULE_4__components_pages_ResetPassword_ResetPassword_vue__","__WEBPACK_IMPORTED_MODULE_4__components_pages_ResetPassword_ResetPassword_vue___default","__WEBPACK_IMPORTED_MODULE_5__components_pages_Logout_Logout_vue__","__WEBPACK_IMPORTED_MODULE_5__components_pages_Logout_Logout_vue___default","__WEBPACK_IMPORTED_MODULE_6__components_pages_AccountNotSetup_vue__","__WEBPACK_IMPORTED_MODULE_6__components_pages_AccountNotSetup_vue___default","__WEBPACK_IMPORTED_MODULE_7__components_pages_TokenAuth_TokenAuth_vue__","__WEBPACK_IMPORTED_MODULE_7__components_pages_TokenAuth_TokenAuth_vue___default","__WEBPACK_IMPORTED_MODULE_8__components_pages_SAMLAuth_SAMLAuth_vue__","__WEBPACK_IMPORTED_MODULE_8__components_pages_SAMLAuth_SAMLAuth_vue___default","__WEBPACK_IMPORTED_MODULE_9__components_pages_AcceptInvite_AcceptInvite_vue__","__WEBPACK_IMPORTED_MODULE_9__components_pages_AcceptInvite_AcceptInvite_vue___default","__WEBPACK_IMPORTED_MODULE_10__components_pages_SelectAccount_SelectAccount_vue__","__WEBPACK_IMPORTED_MODULE_10__components_pages_SelectAccount_SelectAccount_vue___default","__WEBPACK_IMPORTED_MODULE_11__components_pages_Welcome_Welcome_vue__","__WEBPACK_IMPORTED_MODULE_11__components_pages_Welcome_Welcome_vue___default","__WEBPACK_IMPORTED_MODULE_12__components_pages_Success_Success_vue__","__WEBPACK_IMPORTED_MODULE_12__components_pages_Success_Success_vue___default","__WEBPACK_IMPORTED_MODULE_13__components_sections_EmailValidation_EmailValidation_vue__","__WEBPACK_IMPORTED_MODULE_13__components_sections_EmailValidation_EmailValidation_vue___default","use","mode","base","routes","path","name","component","meta","title","hideSiteLogo","__WEBPACK_IMPORTED_MODULE_1_vuex__","__WEBPACK_IMPORTED_MODULE_2_vuex_dist_logger__","__WEBPACK_IMPORTED_MODULE_3__modules_site__","__WEBPACK_IMPORTED_MODULE_4__modules_login__","Store","modules","site","login","strict","plugins","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_assign__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_assign___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_json_stringify__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_json_stringify___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_regenerator__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_regenerator___default","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_core_js_promise__","__WEBPACK_IMPORTED_MODULE_4_babel_runtime_core_js_promise___default","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_asyncToGenerator__","__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_asyncToGenerator___default","__WEBPACK_IMPORTED_MODULE_6__utils_urlHelper__","__WEBPACK_IMPORTED_MODULE_7__utils_uiHelper__","__WEBPACK_IMPORTED_MODULE_8__utils_environment__","__WEBPACK_IMPORTED_MODULE_9_raven_js__","__WEBPACK_IMPORTED_MODULE_9_raven_js___default","getEmptyFatalError","initialState","loginType","loginState","source","product","extra","admin","ignoreInstallations","generic","loggedIn","fatalError","samlBaseURL","afterLoginURL","formState","scope","waf","selectedAccount","apiEndPoint","getters","twAuthBaseURL","rootState","siteInfo","googleSSOURL","retURL","appLoginRedirectURI","appLoginClientID","appLoginScope","i","samlURL","SAMLAfterLoginURL","appAuth","bodyClasses","classes","split","s","allowStandardLogin","sso","hideStandardLoginLink","displayOptions","actions","setupBasicInfo","_ref","_ref2","dispatch","query","gad","continue","ignore_installations","self","top","e","addEventListener","eventInfo","ignoreLS","appendExperimentTracking","_ref3","_ref4","campaign","variation","continueURL","parameter","includes","endsWith","setupIFrame","_ref5","body","parent","postMessage","pageResized","loadAwsWaf","_ref6","_this","this","mark","_callee","wafjs","wrap","_context","prev","next","createElement","src","setAttribute","head","appendChild","onabort","reject","Error","onerror","onload","AwsWafIntegration","resolve","stop","getWafToken","_this2","_callee2","_context2","abrupt","getToken","t0","captureException","fingerprint","mutations","setLoggedIn","_ref7","userId","dateTimeUTC","Date","toISOString","setBasicInfo","_ref8","showFatalError","errorData","resetFatalError","setSAMLBaseURL","setLoginState","setSelectedAccount","_ref9","setFormState","setWAF","waflib","setAfterLoginURL","__WEBPACK_IMPORTED_MODULE_0_axios__","__WEBPACK_IMPORTED_MODULE_0_axios___default","__WEBPACK_IMPORTED_MODULE_1__utils_cookieHelper__","__WEBPACK_IMPORTED_MODULE_2__utils_uiHelper__","__WEBPACK_IMPORTED_MODULE_3__utils_environment__","logo","allowRememberMe","hasTeamworkBranding","showSiteNameOnLoginScreen","themeColor","useBackgroundColorOnLogin","integrations","googleSignIn","enabled","loginStyle","apps","projects","chat","desk","isEnterprise","installationState","siteLoading","siteNotFound","productInfo","getSiteInfo","currentRoute","get","then","info","parts","newHost","toLowerCase","oldHost","substr","pathname","search","root","catch","setPageTitle","pageTitle","setSiteInfo","setSiteNotFound","getCookie","cookie","pop","shift","__WEBPACK_IMPORTED_MODULE_0__assets_images_icon_visible_svg__","__WEBPACK_IMPORTED_MODULE_0__assets_images_icon_visible_svg___default","__WEBPACK_IMPORTED_MODULE_1__assets_images_icon_invisible_svg__","__WEBPACK_IMPORTED_MODULE_1__assets_images_icon_invisible_svg___default","props","label","String","default","required","isVisible","iconVisible","iconInvisible","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue__","__WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue___default","__WEBPACK_IMPORTED_MODULE_3__components_widgets_ProductList_vue__","__WEBPACK_IMPORTED_MODULE_3__components_widgets_ProductList_vue___default","PageHeader","ProductList","_$route","$route","customMessage","computed","productName","find","subTitle","continueItems","productUrl","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__","__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_defineProperty__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_defineProperty___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_extends__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_extends___default","__WEBPACK_IMPORTED_MODULE_4_axios__","__WEBPACK_IMPORTED_MODULE_4_axios___default","__WEBPACK_IMPORTED_MODULE_5_vuex__","__WEBPACK_IMPORTED_MODULE_6__components_widgets_PageHeader_PageHeader_vue__","__WEBPACK_IMPORTED_MODULE_6__components_widgets_PageHeader_PageHeader_vue___default","__WEBPACK_IMPORTED_MODULE_7__components_widgets_Loading_Loading_vue__","__WEBPACK_IMPORTED_MODULE_7__components_widgets_Loading_Loading_vue___default","__WEBPACK_IMPORTED_MODULE_8__assets_images_email_verified_png__","__WEBPACK_IMPORTED_MODULE_8__assets_images_email_verified_png___default","__WEBPACK_IMPORTED_MODULE_9__assets_images_email_expired_png__","__WEBPACK_IMPORTED_MODULE_9__assets_images_email_expired_png___default","__WEBPACK_IMPORTED_MODULE_10__assets_images_email_send_png__","__WEBPACK_IMPORTED_MODULE_10__assets_images_email_send_png___default","__WEBPACK_IMPORTED_MODULE_11__utils_errorHelper__","__WEBPACK_IMPORTED_MODULE_12__utils_urlHelper__","Loading","emailVerified","emailExpired","emailSend","isLoading","isCTALoading","errorMessage","email","token","tokenResponse","loginCode","isAlreadyVerified","siteURL","stateContent","image","headerText","bodyText","footerText","nextText","ctaText","dataIdentifier","ctaAction","continueToApp","resendEmail","continueToOnboarding","methods","redirectToLogin","unvalidatedAccountLoginCode","post","resp","finally","redirectURL","created","_this3","$store","auth","unmounted","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_promise__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_promise___default","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_slicedToArray__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_slicedToArray___default","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_asyncToGenerator__","__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_asyncToGenerator___default","__WEBPACK_IMPORTED_MODULE_5__components_widgets_PageHeader_PageHeader_vue__","__WEBPACK_IMPORTED_MODULE_5__components_widgets_PageHeader_PageHeader_vue___default","__WEBPACK_IMPORTED_MODULE_6__components_widgets_Loading_Loading_vue__","__WEBPACK_IMPORTED_MODULE_6__components_widgets_Loading_Loading_vue___default","__WEBPACK_IMPORTED_MODULE_7__components_widgets_TwSelect_vue__","__WEBPACK_IMPORTED_MODULE_7__components_widgets_TwSelect_vue___default","TwSelect","defaultInfo","industryCategoryId","sizeId","companySizes","industryCategories","model","size","industryCategory","init","sizeOptions","id","industryCategoryOptions","sizesPromise","industryCategoriesPromise","all","sent","companysizes","industrycategories","save","_model","companySizeId","parseInt","$emit","__WEBPACK_IMPORTED_MODULE_2_axios__","__WEBPACK_IMPORTED_MODULE_2_axios___default","__WEBPACK_IMPORTED_MODULE_3__components_widgets_Loading_Loading_vue__","__WEBPACK_IMPORTED_MODULE_3__components_widgets_Loading_Loading_vue___default","forced","Boolean","isSeedShown","isOnBackupCodesScreen","seed","codeModel","backupCodes","backupCodesFormatted","halfSize","slice","index","getSeed","secretKey","setupTfa","put","VerificationCode","codes","display","story","version","content","__WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue__","__WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue___default","__WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue__","__WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue___default","__WEBPACK_IMPORTED_MODULE_5__components_widgets_TwSelect_vue__","__WEBPACK_IMPORTED_MODULE_5__components_widgets_TwSelect_vue___default","__WEBPACK_IMPORTED_MODULE_6__assets_images_contributor_persona_png__","__WEBPACK_IMPORTED_MODULE_6__assets_images_contributor_persona_png___default","__WEBPACK_IMPORTED_MODULE_7__assets_images_pm_persona_png__","__WEBPACK_IMPORTED_MODULE_7__assets_images_pm_persona_png___default","__WEBPACK_IMPORTED_MODULE_8__assets_images_ops_manager_persona_png__","__WEBPACK_IMPORTED_MODULE_8__assets_images_ops_manager_persona_png___default","__WEBPACK_IMPORTED_MODULE_9__assets_images_client_persona_png__","__WEBPACK_IMPORTED_MODULE_9__assets_images_client_persona_png___default","__WEBPACK_IMPORTED_MODULE_10__assets_images_icon_check_svg__","__WEBPACK_IMPORTED_MODULE_10__assets_images_icon_check_svg___default","ContributorPersona","ProjectManagerPersona","OpsManagerPersona","ClientPersona","checkIcon","personasList","icon","selectedPersona","onSelect","onSubmit","patch","userPersona","__WEBPACK_IMPORTED_MODULE_1__assets_images_product_icon_projects_svg__","__WEBPACK_IMPORTED_MODULE_1__assets_images_product_icon_projects_svg___default","__WEBPACK_IMPORTED_MODULE_2__assets_images_product_icon_chat_svg__","__WEBPACK_IMPORTED_MODULE_2__assets_images_product_icon_chat_svg___default","__WEBPACK_IMPORTED_MODULE_3__assets_images_product_icon_desk_svg__","__WEBPACK_IMPORTED_MODULE_3__assets_images_product_icon_desk_svg___default","__WEBPACK_IMPORTED_MODULE_4__assets_images_product_icon_crm_svg__","__WEBPACK_IMPORTED_MODULE_4__assets_images_product_icon_crm_svg___default","__WEBPACK_IMPORTED_MODULE_5__assets_images_product_icon_spaces_svg__","__WEBPACK_IMPORTED_MODULE_5__assets_images_product_icon_spaces_svg___default","logos","crm","spaces","products","Array","productItems","logoUrl","options","innerValue","empty","isRequired","fieldLabel","watch","newVal","blur","$refs","select","__WEBPACK_IMPORTED_MODULE_3__components_sections_SiteNotFound_SiteNotFound_vue__","__WEBPACK_IMPORTED_MODULE_3__components_sections_SiteNotFound_SiteNotFound_vue___default","__WEBPACK_IMPORTED_MODULE_4__components_sections_ErrorMessage_ErrorMessage_vue__","__WEBPACK_IMPORTED_MODULE_4__components_sections_ErrorMessage_ErrorMessage_vue___default","__WEBPACK_IMPORTED_MODULE_5__components_widgets_Loading_Loading_vue__","__WEBPACK_IMPORTED_MODULE_5__components_widgets_Loading_Loading_vue___default","__WEBPACK_IMPORTED_MODULE_6__components_sections_MarketingContent_MarketingContent_vue__","__WEBPACK_IMPORTED_MODULE_6__components_sections_MarketingContent_MarketingContent_vue___default","SiteNotFound","ErrorMessage","MarketingContent","mounted","t","target","closest","remove","allowBranding","siteName","siteLogo","inAppLogin","inGenericLogin","isPersonaCapture","isEmailValidation","showSiteLogo","displayMarketingContent","loadVWO","script","text","vwoOnVariationApplied","VWO","__WEBPACK_IMPORTED_MODULE_1_axios__","__WEBPACK_IMPORTED_MODULE_1_axios___default","__WEBPACK_IMPORTED_MODULE_2_vuex__","__WEBPACK_IMPORTED_MODULE_3__utils_errorHelper__","__WEBPACK_IMPORTED_MODULE_4__components_widgets_PageHeader_PageHeader_vue__","__WEBPACK_IMPORTED_MODULE_4__components_widgets_PageHeader_PageHeader_vue___default","__WEBPACK_IMPORTED_MODULE_6__components_PasswordInput_vue__","__WEBPACK_IMPORTED_MODULE_6__components_PasswordInput_vue___default","PasswordInput","helpDocsLink","user","firstName","lastName","chatHandle","password","expired","formError","nameIsSetInProjects","getValidateInviteCode","canSubmit","isValid","isProductChat","isProductProjects","showNameInputs","loginLink","userHandle","apiError","productHelpDocsLink","userFirstName","userLastName","userChatHandle","userLogin","nameIsSet","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_assign__","__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_assign___default","__WEBPACK_IMPORTED_MODULE_3_vuex__","__WEBPACK_IMPORTED_MODULE_4__utils_uiHelper__","passwordReset","$router","trim","__WEBPACK_IMPORTED_MODULE_3__components_sections_Login_StandardForm_StandardForm_vue__","__WEBPACK_IMPORTED_MODULE_3__components_sections_Login_StandardForm_StandardForm_vue___default","__WEBPACK_IMPORTED_MODULE_4__components_sections_Login_SAMLStarter_SAMLStarter_vue__","__WEBPACK_IMPORTED_MODULE_4__components_sections_Login_SAMLStarter_SAMLStarter_vue___default","__WEBPACK_IMPORTED_MODULE_5__components_sections_Login_SAMLForm_SAMLForm_vue__","__WEBPACK_IMPORTED_MODULE_5__components_sections_Login_SAMLForm_SAMLForm_vue___default","standard","saml-first","saml-email","__WEBPACK_IMPORTED_MODULE_2__utils_urlHelper__","logoutMessage","logoutMessageHTML","onSubmitLogin","route","__WEBPACK_IMPORTED_MODULE_5__components_PasswordInput_vue__","__WEBPACK_IMPORTED_MODULE_5__components_PasswordInput_vue___default","__WEBPACK_IMPORTED_MODULE_6__utils_errorHelper__","validateResetToken","FirstName","onSubmitReset","log","__WEBPACK_IMPORTED_MODULE_3__utils_appLoginHelper__","__WEBPACK_IMPORTED_MODULE_4__utils_errorHelper__","__WEBPACK_IMPORTED_MODULE_5__utils_uiHelper__","__WEBPACK_IMPORTED_MODULE_7__components_sections_AppConsent_AppConsent_vue__","__WEBPACK_IMPORTED_MODULE_7__components_sections_AppConsent_AppConsent_vue___default","__WEBPACK_IMPORTED_MODULE_8__components_sections_GDPRConsent_GDPRConsent_vue__","__WEBPACK_IMPORTED_MODULE_8__components_sections_GDPRConsent_GDPRConsent_vue___default","__WEBPACK_IMPORTED_MODULE_9__components_sections_Login_CompanyInfo_vue__","__WEBPACK_IMPORTED_MODULE_9__components_sections_Login_CompanyInfo_vue___default","__WEBPACK_IMPORTED_MODULE_10__components_widgets_Loading_Loading_vue__","__WEBPACK_IMPORTED_MODULE_10__components_widgets_Loading_Loading_vue___default","AppConsent","gdpr-consent","CompanyInfo","app","gdprSeen","companyInfo","samlauth","iv","postSAMLAuth","baseURL","sa","setupScreenRequired","_response$data","consentRequired","res","opener","close","__WEBPACK_IMPORTED_MODULE_5__components_widgets_AccountList_AccountList_vue__","__WEBPACK_IMPORTED_MODULE_5__components_widgets_AccountList_AccountList_vue___default","__WEBPACK_IMPORTED_MODULE_6__utils_uiHelper__","__WEBPACK_IMPORTED_MODULE_7__utils_urlHelper__","__WEBPACK_IMPORTED_MODULE_8__utils_appLoginHelper__","AccountList","getGoogleAccounts","accs","onAccountSelected","account","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_asyncToGenerator__","__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_asyncToGenerator___default","__WEBPACK_IMPORTED_MODULE_4_vuex__","__WEBPACK_IMPORTED_MODULE_5_axios__","__WEBPACK_IMPORTED_MODULE_5_axios___default","__WEBPACK_IMPORTED_MODULE_6__utils_appLoginHelper__","__WEBPACK_IMPORTED_MODULE_7__utils_errorHelper__","__WEBPACK_IMPORTED_MODULE_8__utils_uiHelper__","__WEBPACK_IMPORTED_MODULE_9__utils_urlHelper__","__WEBPACK_IMPORTED_MODULE_10__components_widgets_PageHeader_PageHeader_vue__","__WEBPACK_IMPORTED_MODULE_10__components_widgets_PageHeader_PageHeader_vue___default","__WEBPACK_IMPORTED_MODULE_11__components_sections_AppConsent_AppConsent_vue__","__WEBPACK_IMPORTED_MODULE_11__components_sections_AppConsent_AppConsent_vue___default","__WEBPACK_IMPORTED_MODULE_12__components_sections_GDPRConsent_GDPRConsent_vue__","__WEBPACK_IMPORTED_MODULE_12__components_sections_GDPRConsent_GDPRConsent_vue___default","__WEBPACK_IMPORTED_MODULE_13__components_sections_Login_CompanyInfo_vue__","__WEBPACK_IMPORTED_MODULE_13__components_sections_Login_CompanyInfo_vue___default","__WEBPACK_IMPORTED_MODULE_14__components_widgets_Loading_Loading_vue__","__WEBPACK_IMPORTED_MODULE_14__components_widgets_Loading_Loading_vue___default","__WEBPACK_IMPORTED_MODULE_15__components_sections_PersonaCapture_PersonaCapture_vue__","__WEBPACK_IMPORTED_MODULE_15__components_sections_PersonaCapture_PersonaCapture_vue___default","PersonaCapture","onCompanyInfoSaved","onPersonaInfoSaved","getAppInfo","loginViaToken","payload","rememberMe","_res$data","companyInfoSavedPromise","personaInfoSavedPromise","_x","apply","setTimeout","isVerifyEmail","__WEBPACK_IMPORTED_MODULE_4__components_widgets_ProductList_vue__","__WEBPACK_IMPORTED_MODULE_4__components_widgets_ProductList_vue___default","utm_content","$nextTick","subtitle","v","__WEBPACK_IMPORTED_MODULE_5__assets_images_product_icon_projects_svg__","__WEBPACK_IMPORTED_MODULE_5__assets_images_product_icon_projects_svg___default","__WEBPACK_IMPORTED_MODULE_6__assets_images_product_icon_chat_svg__","__WEBPACK_IMPORTED_MODULE_6__assets_images_product_icon_chat_svg___default","__WEBPACK_IMPORTED_MODULE_7__assets_images_product_icon_desk_svg__","__WEBPACK_IMPORTED_MODULE_7__assets_images_product_icon_desk_svg___default","__WEBPACK_IMPORTED_MODULE_8__assets_images_product_icon_crm_svg__","__WEBPACK_IMPORTED_MODULE_8__assets_images_product_icon_crm_svg___default","__WEBPACK_IMPORTED_MODULE_9__assets_images_product_icon_spaces_svg__","__WEBPACK_IMPORTED_MODULE_9__assets_images_product_icon_spaces_svg___default","icons","ownerId","clientId","dateCreated","dateUpdated","isValidated","publisher","privacyUrl","termsUrl","requestedScope","showAppDetails","appIsLocal","onAllow","onDeny","getAppName","getAppIcon","explanationHTML","onClickBackToApp","__WEBPACK_IMPORTED_MODULE_0__components_widgets_PageHeader_PageHeader_vue__","__WEBPACK_IMPORTED_MODULE_0__components_widgets_PageHeader_PageHeader_vue___default","baseHref","__WEBPACK_IMPORTED_MODULE_5__utils_appLoginHelper__","__WEBPACK_IMPORTED_MODULE_9__components_sections_AppConsent_AppConsent_vue__","__WEBPACK_IMPORTED_MODULE_9__components_sections_AppConsent_AppConsent_vue___default","__WEBPACK_IMPORTED_MODULE_10__components_widgets_AccountList_AccountList_vue__","__WEBPACK_IMPORTED_MODULE_10__components_widgets_AccountList_AccountList_vue___default","__WEBPACK_IMPORTED_MODULE_11__components_widgets_PageHeader_PageHeader_vue__","__WEBPACK_IMPORTED_MODULE_11__components_widgets_PageHeader_PageHeader_vue___default","__WEBPACK_IMPORTED_MODULE_12__components_sections_Login_CompanyInfo_vue__","__WEBPACK_IMPORTED_MODULE_12__components_sections_Login_CompanyInfo_vue___default","__WEBPACK_IMPORTED_MODULE_13__components_widgets_Loading_Loading_vue__","__WEBPACK_IMPORTED_MODULE_13__components_widgets_Loading_Loading_vue___default","__WEBPACK_IMPORTED_MODULE_14__components_sections_Login_TfaSetup_vue__","__WEBPACK_IMPORTED_MODULE_14__components_sections_Login_TfaSetup_vue___default","__WEBPACK_IMPORTED_MODULE_15__components_PasswordInput_vue__","__WEBPACK_IMPORTED_MODULE_15__components_PasswordInput_vue___default","__WEBPACK_IMPORTED_MODULE_16__components_sections_PersonaCapture_PersonaCapture_vue__","__WEBPACK_IMPORTED_MODULE_16__components_sections_PersonaCapture_PersonaCapture_vue___default","TfaSetup","twoFactorPasscode","passwordEncrypted","automaticSubmit","encrypted","newParams","continueToProduct","showRememberMe","showGoogleSSO","showSAML","startText","isValidationPending","forgotPasswordLink","submitLogin","submitGetAccounts","initSAML","loginTypeTemp","headers","Launchpad-Version","ignoredAccounts","onClickGoogleSSO","preventDefault","reset","siteAddress","onSelectAccount","getBackgroundImage","__WEBPACK_IMPORTED_MODULE_2__utils_appLoginHelper__","showTryAgain","tryAgainTimeout","setupTryAgain","clearTimeout","onCancel","hideable","p","render","_vm","_h","$createElement","_c","_self","staticClass","attrs","staticRenderFns","on","submit","$event","_m","autofocus","_v","is-loading","callback","$$v","$set","expression","class","no-subtitle","domProps","innerHTML","_s","is-invalid","_e","sub-title","textContent","to","_b","directives","rawName","ref","input","change","$$selectedVal","prototype","call","o","selected","_value","multiple","$attrs","disabled","_l","option","textfield__label--filled","for","height","viewBox","width","_target","alt","click","role","backgroundImage","region","default-info","saved","seen","staticStyle","account-selected","composing","autocomplete","w-button--gray","w-button--blue","tag","placehoder","checked","isArray","_i","$$a","$$el","$$c","$$i","concat","_q","assign","inputmode","pattern","maxlength","placeholder","cancel","setup-complete","data-identifier","aria-label","persona","refInFor","persona-view__item--selected","aria-checked","tabindex","keyup","_k","keyCode","persona-view__item-text--selected","marketing-content--loaded","hidden","filename","firstParagraph","bullet1","bullet2","bullet3","secondParagraph","content-persona","content-verify-email"],"mappings":"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CA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACC,CACA,CACA,CACA,CACA,CAEH,SAAUtG,EAAQI,EAAqBF,GAE7C,YOjkBAA,GAAAiF,EAAA/E,EAAA,qBAAAuG,IAEA,IAAMA,IAA4G,IAAnD9D,OAAOP,SAASsE,SAASpE,QAAQ,cPwkBvF,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CAEH,SAAUxC,EAAQC,EAASC,GQnnBjC,QAAA2G,GAAAC,GACA5G,EAAA,KAEA,GAAAC,GAAAD,EAAA,GAEAA,EAAA,KAEAA,EAAA,KAEA2G,EAEA,kBAEA,KAGA7G,GAAAC,QAAAE,EAAAF,SR0nBM,SAAUD,EAAQC,EAASC,GS1oBjC,QAAA2G,GAAAC,GACA5G,EAAA,KAEA,GAAAC,GAAAD,EAAA,GAEAA,EAAA,KAEAA,EAAA,KAEA2G,EAEA,kBAEA,KAGA7G,GAAAC,QAAAE,EAAAF,STipBM,SAAUD,EAAQC,EAASC,GUjqBjC,GAAAC,GAAAD,EAAA,GAEAA,EAAA,KAEAA,EAAA,KAEA,KAEA,KAEA,KAGAF,GAAAC,QAAAE,EAAAF,SVwqBM,SAAUD,EAAQC,EAASC,GWrrBjC,QAAA2G,GAAAC,GACA5G,EAAA,KAEA,GAAAC,GAAAD,EAAA,GAEAA,EAAA,KAEAA,EAAA,KAEA2G,EAEA,kBAEA,KAGA7G,GAAAC,QAAAE,EAAAF,SX2rBS,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,C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iB6Bl8DN9U,G7Bm8DMpD,M6Bt9DN,Q7Bu9DMmY,M6Bl8DN,K7Bm8DM/N,Q6Bl8DN,W7Bm8DMgO,M6Bl8DN,G7Bm8DMC,c6Bl8DN,K7Bm8DMC,U6Bj8DN,OAGAvC,SAAAa,OAAAnZ,EAAAkO,EAAAoL,EAAA,I7Bo8DIwB,kBAAmB,SAA2BvY,GAC5C,M6Bn8DN,W7Bm8DaA,EAAM0I,KAAK2C,SAASyH,mBAE7B0F,QAAS,SAAiBxY,GACxB,MAAOA,GAAM0I,KAAK2C,S6Bp8DxBxI,Q7Bu8DI4V,aAAc,W6Bt8DlB,G7Bw8DUhM,G6Bx8DV8B,EAAAC,IACA,OAAA/B,MAAAiK,IAAAjK,EApCA,Y7B8+DQiM,MAAOlK,K6Bx8DfqJ,c7By8DQc,W6Bx8DR,uC7By8DQC,SAAU,6DAAoEpK,K6Bx8DtF2J,MAAA,0E7By8DQU,W6Bx8DR,qB7By8DQC,S6Bx8DR,0C7By8DQC,Q6Bx8DR,yB7By8DQC,e6Bx8DR,iB7By8DQC,UAAW,WACT,MAAO1K,G6Bx8DjB2K,mBATAxC,IAAAjK,EApCA,S7Bw/DQiM,MAAOlK,K6Bz8DfsJ,a7B08DQa,W6Bz8DR,oC7B08DQC,S6Bz8DR,2G7B08DQC,W6Bz8DR,4B7B08DQC,S6Bz8DR,mD7B08DQC,Q6Bz8DR,e7B08DQC,e6Bz8DR,uB7B08DQC,UAAW,WACT,MAAO1K,G6Bz8DjB4K,iBATAzC,IAAAjK,EA3CA,qB7BggEQiM,MAAOlK,K6B18DfqJ,c7B28DQc,W6B18DR,yB7B28DQC,S6B18DR,kI7B28DQG,Q6B18DR,qB7B28DQC,e6B18DR,Y7B28DQC,UAAW,WACT,MAAO1K,G6B18DjB6K,0BAPA1C,IAAAjK,EAvDA,U7B2gEQiM,MAAOlK,K6B38DfuJ,U7B48DQY,W6B38DR,wC7B48DQC,SAAU,yDAA2DpK,K6B38D7E2J,MAAA,+C7B48DQU,W6B38DR,6B7B48DQC,S6B38DR,wD7B48DQC,Q6B38DR,e7B48DQC,e6B38DR,uB7B48DQC,UAAW,WACT,MAAO1K,G6B38DjB4K,iBATAzC,IAAAjK,EA9DA,a7BqhEQiM,MAAOlK,K6B58DfuJ,U7B68DQY,W6B58DR,mC7B68DQC,SA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QAda,WAeXpL,KAAKoiB,cAAcpiB,KAAKwJ,YAE1BgJ,OACEhJ,UADK,SACKiJ,GACRzS,KAAKoiB,cAAc3P,KAGvB5H,SACEuX,cADO,SACO5Y,GAAW,GAAAzJ,GAAAC,IACnBwJ,GACFxJ,KAAKmiB,gBAAkBpF,WAAW,WAChChd,EAAKmiB,cAAe,GACnB,KAEHG,aAAariB,KAAKmiB,kBAGtBG,SAVO,WAWL,QAAKtiB,KAAKgU,YACH/kB,EAAAkO,EAAA8kB,EAAA,GAAuBjiB,KAAK7O,QAAS,gBAAiB,sCAGjEoW,SAAAV,OACK5X,EAAAkO,EAAAvD,EAAA,IACDzI,QAAS,SAACK,GAAD,MAAWA,GAAM2I,MAAMhJ,SAChC6iB,WAAY,SAACxiB,GAAD,MAAqC,QAA1BA,EAAM2I,MAAMsB,gBvDujLnC,SAAU1M,EAAQI,EAAqBF,GAE7C,YwDrmLA2E,QAAAkC,eAAA3G,EAAA,cAAAY,OAAA,IACAZ,EAAA,SACEoK,KAAM,aACN6M,OACE1M,OACE5G,KAAMwT,OACNC,QAAS,UAEXmB,UACE5U,KAAMwT,OACNC,QAAS,IAEXxU,OACEe,KAAMwT,OACNC,QAAS,IAEXgc,UACEzvB,KAAMob,QACN3H,SAAS,MxD6mLN,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CAEH,SAAUxX,EAAQC,KAMlB,SAAUD,EAAQC,KAMlB,SAAUD,EAAQC,KAMlB,SAAUD,EAAQC,KAMlB,SAAUD,EAAQC,KAMlB,SAAUD,EAAQC,KAMlB,SAAUD,EAAQC,KAMlB,SAAUD,EAAQC,KAMlB,SAAUD,EAAQC,KAMlB,SAAUD,EAAQC,KAMlB,SAAUD,EAAQC,KAKf,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CACA,CAEH,SAAUD,EAAQC,EAASC,GyD78LjCF,EAAAC,QAAAC,EAAAuzB,EAAA,yCzDm9LM,SAAUzzB,EAAQC,EAASC,G0Dn9LjCF,EAAAC,QAAAC,EAAAuzB,EAAA,8C1Dy9LM,SAAUzzB,EAAQC,EAASC,G2Dz9LjCF,EAAAC,QAAAC,EAAAuzB,EAAA,w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","file":"static/js/app.504dabb18a080322715c.js","sourcesContent":["webpackJsonp([1],[\n/* 0 */,\n/* 1 */,\n/* 2 */,\n/* 3 */,\n/* 4 */,\n/* 5 */,\n/* 6 */,\n/* 7 */,\n/* 8 */,\n/* 9 */,\n/* 10 */,\n/* 11 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(273),\n /* template */\n __webpack_require__(588),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 12 */,\n/* 13 */,\n/* 14 */,\n/* 15 */,\n/* 16 */,\n/* 17 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(272),\n /* template */\n __webpack_require__(600),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 18 */,\n/* 19 */,\n/* 20 */,\n/* 21 */,\n/* 22 */,\n/* 23 */,\n/* 24 */,\n/* 25 */,\n/* 26 */,\n/* 27 */,\n/* 28 */,\n/* 29 */,\n/* 30 */,\n/* 31 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = smartFocus;\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = loadThemeColor;\n/* harmony export (immutable) */ __webpack_exports__[\"c\"] = setThemeColor;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_array_from__ = __webpack_require__(275);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_array_from___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_array_from__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue__ = __webpack_require__(81);\n\n\n\nfunction smartFocus() {\n __WEBPACK_IMPORTED_MODULE_1_vue__[\"a\" /* default */].nextTick(function () {\n var iFlds = document.querySelectorAll('.w-input .w-input__input');\n if (!iFlds.length) return;\n\n // eslint-disable-next-line func-names\n var f = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_array_from___default()(iFlds).filter(function (el) {\n return !el.value;\n });\n if (f.length === 0) f = [iFlds[iFlds.length - 1]];\n f[0].focus();\n\n // eslint-disable-next-line func-names\n iFlds.forEach(function (el) {\n if (el.value && el.parentElement) el.parentElement.classList.add('is-moved');\n });\n });\n}\n\nfunction loadThemeColor() {\n var color = localStorage.getItem('launchpad-theme-color');\n var el = document.querySelector('.b-app-structure__secondary');\n if (color && el) el.style.background = color;\n}\n\nfunction setThemeColor(color, hasLocalStorage) {\n var el = document.querySelector('.b-app-structure__secondary');\n\n if (color) {\n if (el) el.style.background = color;\n if (hasLocalStorage) localStorage.setItem('launchpad-theme-color', color);\n } else {\n if (el) el.style.background = '';\n if (hasLocalStorage) localStorage.removeItem('launchpad-theme-color');\n }\n}\n\n/***/ }),\n/* 32 */,\n/* 33 */,\n/* 34 */,\n/* 35 */,\n/* 36 */,\n/* 37 */,\n/* 38 */,\n/* 39 */,\n/* 40 */,\n/* 41 */,\n/* 42 */,\n/* 43 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"c\"] = redirectToApp;\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = redirectToAppWithError;\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = filterAccounts;\nfunction redirectToApp(appInfo, code) {\n var location = appInfo.redirect_uri;\n location += location.indexOf('?') > -1 ? '&code=' + code : '?code=' + code;\n if (appInfo.state) location += '&state=' + encodeURIComponent(appInfo.state);\n if (appInfo.client_id) location += '&client_id=' + appInfo.client_id;\n if (appInfo.nonce) location += '&nonce=' + encodeURIComponent(appInfo.nonce);\n window.location.href = location;\n}\n\nfunction redirectToAppWithError(appInfo, error, description) {\n var location = appInfo.redirect_uri;\n location += location.indexOf('?') > -1 ? '&error=' : '?error=';\n location += error || 'unknown_error';\n if (description) location += '&error_description=' + encodeURIComponent(description);\n if (appInfo.client_id) location += '&client_id=' + appInfo.client_id;\n window.location.href = location;\n}\n\nfunction filterAccounts(accounts, productCode) {\n var key = '';\n switch (productCode) {\n case 'projects':\n key = 'projectsEnabled';\n break;\n case 'desk':\n key = 'deskEnabled';\n break;\n case 'chat':\n key = 'chatEnabled';\n break;\n default:\n return accounts;\n }\n return accounts.filter(function (acc) {\n return acc.installation[key];\n });\n}\n\n/***/ }),\n/* 44 */,\n/* 45 */,\n/* 46 */,\n/* 47 */,\n/* 48 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return ERROR_TYPE; });\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = handleAPIError;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_keys__ = __webpack_require__(280);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_keys___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_keys__);\n\nvar ERROR_TYPE = {\n FORM_ERROR: 1,\n FATAL_ERROR: 2,\n TFA_REQUIRED: 3,\n TFA_SETUP_REQUIRED: 4,\n INSTALLATION_PROVISIONING: 5,\n INSTALLATION_VALIDATION_PENDING: 6\n};\n\nfunction handleAPIError(store, err, defaultMessage) {\n if (!err) return null;\n\n if (!err.response || !err.response.data) {\n // eslint-disable-next-line\n console.error('unknown error', err);\n return { type: ERROR_TYPE.FORM_ERROR, err: defaultMessage };\n }\n\n if (err.response.status === 502) {\n store.commit('showFatalError', {\n error: 'Internal Server Error',\n message: 'An error has occurred, please try again later.',\n appError: 'server_error',\n appErrorExplanation: '502 bad gateway'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: '502 bad gateway' };\n }\n\n var data = err.response.data;\n\n if (err.response.status === 429 && data.status === 'Too many attempts') {\n return { type: ERROR_TYPE.FORM_ERROR, err: data.error };\n }\n\n if (err.response.status === 401 && data.status === 'two factor auth setup required') {\n return { type: ERROR_TYPE.TFA_SETUP_REQUIRED, err: data.error };\n }\n\n if (err.response.status === 401 && data.status === 'Wrong credentials') {\n return { type: ERROR_TYPE.FORM_ERROR, err: data.error };\n }\n\n if (err.response.status === 401 && data.status === 'email verification required') {\n return { type: ERROR_TYPE.INSTALLATION_VALIDATION_PENDING, err: data.error };\n }\n\n if (data.status && data.status.indexOf('twoFactorPasscode') > -1) {\n if (data.status.indexOf('required') > -1) {\n return { type: ERROR_TYPE.TFA_REQUIRED, err: data.status };\n }\n if (data.status.indexOf('incorrect') > -1) {\n return { type: ERROR_TYPE.FORM_ERROR, err: 'Two Factor Authentication code is incorrect.' };\n }\n }\n\n // Try and figure out the error from all the random formats we have :/\n var error = '';\n if (data.error) error = data.error;\n if (data.errors && data.errors.length) error = data.errors[0].message || data.errors[0];\n if (!error && data.message) error = data.message;\n\n // Errors provided by validate lib.\n if (data.errors && data.errors.constructor === Object) {\n error = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_keys___default()(data.errors).map(function (key) {\n return key + ' ' + data.errors[key];\n }).join(',');\n store.commit('showFatalError', {\n error: 'Validation failed',\n message: error,\n appError: 'validation_failed',\n appErrorExplanation: error\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n }\n\n // Hopefully we have something to handle now\n switch (error) {// eslint-disable-line\n case 'Site not found':\n store.commit('setSiteNotFound');\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'Internal server error':\n store.commit('showFatalError', {\n error: 'Internal Server Error',\n message: 'An error has occurred, please try again later.',\n appError: 'server_error',\n appErrorExplanation: 'an internal server error has occurred'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'new user provisioning is disabled':\n store.commit('showFatalError', {\n error: 'Failed to Login',\n explanation: data.explanation,\n appError: 'access_denied',\n appErrorExplanation: 'new saml user was denied access'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'not enough seats':\n store.commit('showFatalError', {\n error: 'Failed to Login',\n explanation: data.explanation,\n appError: 'access_denied',\n appErrorExplanation: 'not enough seats for new saml user'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'Authentication timed out':\n store.commit('showFatalError', {\n error: 'Failed to Login',\n explanation: 'Authentication timed out, please log in again.',\n appError: 'access_denied',\n appErrorExplanation: 'saml login token has expired'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'your IP address is not in the whitelist':\n store.commit('showFatalError', {\n error: 'Access Denied',\n message: 'Access from your IP address is not enabled.',\n explanation: 'Please contact your administrator to give access to your current IP address or log in from an allowed IP.',\n appError: 'access_denied',\n appErrorExplanation: 'user ip is not whitelisted'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'Invite Expired':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'Invite Expired' };\n case 'User not invited':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'User not invited' };\n case 'User not found':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'User not found' };\n case 'Invalid password. Cannot be blank':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'Password cannot be blank.' };\n case 'your password must contain at least 8 characters':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'Password must be at least 8 characters long.' };\n case 'your password must include at least 2 numeric characters':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'Password must contain at least 2 numeric characters.' };\n case 'your password must include at least one letter':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'Password must contain at least one letter.' };\n case 'User handle is not available':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'The handle you have chosen is already in use.' };\n case 'Standard login is not available on your account':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'Standard login is not available on your account.' };\n case 'Installation is being setup':\n return { type: ERROR_TYPE.INSTALLATION_PROVISIONING, err: 'Installation is provisioning' };\n // app login flow errors:\n case 'app has not yet been verified':\n store.commit('showFatalError', {\n error: 'App not yet verified',\n message: 'This app has not yet been verified.',\n explanation: 'Please check your app status in the Developer Portal.',\n appError: 'access_denied',\n appErrorExplanation: 'app has not yet been verified'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'provided redirect_uri is not on the allowed list':\n store.commit('showFatalError', {\n error: 'Invalid redirect_uri',\n message: 'The redirect_uri provided is not on the list of allowed URIs.',\n explanation: 'Please check your parameters and your app settings in the Developer Portal.',\n appError: 'access_denied',\n appErrorExplanation: 'provided redirect_uri is not on the allowed list'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'requested scope does not match app scope':\n store.commit('showFatalError', {\n error: 'Invalid scope',\n message: 'The requested scope is invalid.',\n explanation: 'Please check your parameters and your app settings in the Developer Portal.',\n appError: 'invalid_scope',\n appErrorExplanation: 'requested scope does not match app scope'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'client_id is invalid':\n store.commit('showFatalError', {\n error: 'App not found',\n message: 'The client_id was either not provided or does not match any app.',\n explanation: 'Please update your app or contact the app developer if the issue persists. If you are the developer, please check your parameters and your app settings in the Developer Portal.',\n appError: 'access_denied',\n appErrorExplanation: 'invalid client_id'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'client_secret is invalid':\n store.commit('showFatalError', {\n error: 'Invalid client secret',\n message: 'The client_secret provided is invalid.',\n explanation: 'Please check your parameters and your app settings in the Developer Portal.',\n appError: 'access_denied',\n appErrorExplanation: 'invalid client_secret'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'origin is invalid':\n store.commit('showFatalError', {\n error: 'Invalid origin',\n message: 'The origin provided is invalid.',\n explanation: 'Please check your parameters and your app settings in the Developer Portal.',\n appError: 'access_denied',\n appErrorExplanation: 'invalid origin'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'The token provided is invalid or has expired':\n store.commit('showFatalError', {\n error: 'Invalid token',\n message: 'The token provided is invalid or has expired.',\n explanation: 'Please try again.',\n appError: 'access_denied',\n appErrorExplanation: 'invalid token'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'requested scope requires admin access':\n store.commit('showFatalError', {\n error: 'Access denied',\n message: 'This action requires admin permissions.',\n explanation: 'Please contact a site administrator.',\n appError: 'access_denied',\n appErrorExplanation: 'user requires admin permissions'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'app cannot be authorized':\n store.commit('showFatalError', {\n error: 'App cannot be authorized',\n message: 'The app must be installed.',\n explanation: 'Please contact a site administrator.',\n appError: 'app_cannot_be_authorized',\n appErrorExplanation: 'app must be installed'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'app does not support oauth':\n store.commit('showFatalError', {\n error: 'App does not support OAUTH',\n message: 'This app does not support authorization',\n appError: 'app_does_not_support_oauth',\n appErrorExplanation: 'app does not support oauth'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n }\n\n // SAML auth error\n if (error.indexOf('illegal base64 data at input byte') > -1) {\n store.commit('showFatalError', {\n error: 'Login Failed',\n message: 'Single Sign On failed, we received invalid parameters.',\n appError: 'server_error',\n appErrorExplanation: 'saml authentication failed, invalid iv and samlauth params'\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n }\n\n return { type: ERROR_TYPE.FORM_ERROR, err: defaultMessage };\n}\n\n/***/ }),\n/* 49 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export isCurrentDomain */\n/* harmony export (immutable) */ __webpack_exports__[\"b\"] = sanitiseURL;\n/* harmony export (immutable) */ __webpack_exports__[\"c\"] = fixProtocol;\n/* harmony export (immutable) */ __webpack_exports__[\"d\"] = navigateExternalURL;\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = buildQueryString;\nfunction isCurrentDomain(url) {\n if (!url) return false;\n return new RegExp('^http(s)?://' + window.location.host + '/', 'i').test(url);\n}\n\nfunction sanitiseURL(url) {\n var prepend = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (!url) return null;\n\n var u = url;\n\n // Strip out @'s\n if (url.indexOf('@') !== -1) {\n u = url.replace('@', '');\n }\n\n // Skip the check if URL provided is relative and prepend current domain if needed\n if (u.indexOf('http') !== 0) {\n if (u.indexOf('/') !== 0) u = '/' + u;\n if (prepend) u = window.location.href.replace(/\\/launchpad(.*)/, '') + u;\n return u;\n }\n\n // Prevent XSS and restrict URLs to current domain\n if (isCurrentDomain(u)) {\n return u;\n }\n\n return null;\n}\n\n// fixProtocol changes the url's protocol\n// from http to https, if it ends with\n// \"teamwork.com\" - this is to make sure\n// that secure cookies are set correctly\n// during generic login (we redirect to\n// HTTPS but cookie could be set as secure\n// on the HTTP url)\nfunction fixProtocol(url) {\n var end = '.teamwork.com/';\n if (url.indexOf(end) !== url.length - end.length) return url;\n if (url.indexOf('https://') === 0) return url;\n return url.replace('http://', 'https://');\n}\n\nfunction navigateExternalURL(url, isIframe) {\n if (!url) return;\n if (!isIframe) {\n window.location.href = url;\n return;\n }\n if (sessionStorage) sessionStorage.setItem('shouldCloseOpener', 'true');\n window.open(url, '_blank');\n}\n\nfunction buildQueryString() {\n var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var params = [];\n for (var k in data) {\n // eslint-disable-line\n if (data.hasOwnProperty(k)) {\n // eslint-disable-line\n params.push(encodeURIComponent(k) + '=' + encodeURIComponent(data[k]));\n }\n }\n return params.join('&');\n}\n\n/***/ }),\n/* 50 */,\n/* 51 */,\n/* 52 */,\n/* 53 */,\n/* 54 */,\n/* 55 */,\n/* 56 */,\n/* 57 */,\n/* 58 */,\n/* 59 */,\n/* 60 */,\n/* 61 */,\n/* 62 */,\n/* 63 */,\n/* 64 */,\n/* 65 */,\n/* 66 */,\n/* 67 */,\n/* 68 */,\n/* 69 */,\n/* 70 */,\n/* 71 */,\n/* 72 */,\n/* 73 */,\n/* 74 */,\n/* 75 */,\n/* 76 */,\n/* 77 */,\n/* 78 */,\n/* 79 */,\n/* 80 */,\n/* 81 */,\n/* 82 */,\n/* 83 */,\n/* 84 */,\n/* 85 */,\n/* 86 */,\n/* 87 */,\n/* 88 */,\n/* 89 */,\n/* 90 */,\n/* 91 */,\n/* 92 */,\n/* 93 */,\n/* 94 */,\n/* 95 */,\n/* 96 */,\n/* 97 */,\n/* 98 */,\n/* 99 */,\n/* 100 */,\n/* 101 */,\n/* 102 */,\n/* 103 */,\n/* 104 */,\n/* 105 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return isDevelopment; });\n/* eslint-disable import/prefer-default-export */\n\nvar isDevelopment = \"production\" !== 'production' || window.location.hostname.indexOf('localhost') !== -1;\n\n\n\n/***/ }),\n/* 106 */,\n/* 107 */,\n/* 108 */,\n/* 109 */,\n/* 110 */,\n/* 111 */,\n/* 112 */,\n/* 113 */,\n/* 114 */,\n/* 115 */,\n/* 116 */,\n/* 117 */,\n/* 118 */,\n/* 119 */,\n/* 120 */,\n/* 121 */,\n/* 122 */,\n/* 123 */,\n/* 124 */,\n/* 125 */,\n/* 126 */,\n/* 127 */,\n/* 128 */,\n/* 129 */,\n/* 130 */,\n/* 131 */,\n/* 132 */,\n/* 133 */,\n/* 134 */,\n/* 135 */,\n/* 136 */,\n/* 137 */,\n/* 138 */,\n/* 139 */,\n/* 140 */,\n/* 141 */,\n/* 142 */,\n/* 143 */,\n/* 144 */,\n/* 145 */,\n/* 146 */\n/***/ (function(module, exports, __webpack_require__) {\n\nfunction injectStyle (ssrContext) {\n __webpack_require__(535)\n}\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(244),\n /* template */\n __webpack_require__(593),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-3317b7a0\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 147 */\n/***/ (function(module, exports, __webpack_require__) {\n\nfunction injectStyle (ssrContext) {\n __webpack_require__(534)\n}\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(264),\n /* template */\n __webpack_require__(591),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-239200ad\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 148 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(266),\n /* template */\n __webpack_require__(601),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 149 */\n/***/ (function(module, exports, __webpack_require__) {\n\nfunction injectStyle (ssrContext) {\n __webpack_require__(531)\n}\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(247),\n /* template */\n __webpack_require__(587),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-1a4c85c3\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 150 */,\n/* 151 */,\n/* 152 */,\n/* 153 */,\n/* 154 */,\n/* 155 */,\n/* 156 */,\n/* 157 */,\n/* 158 */,\n/* 159 */,\n/* 160 */,\n/* 161 */,\n/* 162 */,\n/* 163 */,\n/* 164 */,\n/* 165 */,\n/* 166 */,\n/* 167 */,\n/* 168 */,\n/* 169 */,\n/* 170 */,\n/* 171 */,\n/* 172 */,\n/* 173 */,\n/* 174 */,\n/* 175 */,\n/* 176 */,\n/* 177 */,\n/* 178 */,\n/* 179 */,\n/* 180 */,\n/* 181 */,\n/* 182 */,\n/* 183 */,\n/* 184 */,\n/* 185 */,\n/* 186 */,\n/* 187 */,\n/* 188 */,\n/* 189 */,\n/* 190 */,\n/* 191 */,\n/* 192 */,\n/* 193 */,\n/* 194 */,\n/* 195 */,\n/* 196 */,\n/* 197 */,\n/* 198 */,\n/* 199 */,\n/* 200 */,\n/* 201 */,\n/* 202 */,\n/* 203 */,\n/* 204 */,\n/* 205 */,\n/* 206 */,\n/* 207 */,\n/* 208 */,\n/* 209 */,\n/* 210 */,\n/* 211 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAwIDEwMDAiIHdpZHRoPSIxMDAwIiBoZWlnaHQ9IjEwMDAiPgoJPHN0eWxlPgoJCXRzcGFuIHsgd2hpdGUtc3BhY2U6cHJlIH0KCQkuc2hwMCB7IGZpbGw6ICNmZjIyYjEgfSAKCQkuc2hwMSB7IGZpbGw6ICMxZDFjMzkgfSAKCTwvc3R5bGU+Cgk8ZyBpZD0iQ2hhdCI+CgkJPHBhdGggaWQ9InBhdGgyOCIgY2xhc3M9InNocDAiIGQ9Ik0xOTMuNTksNzE2LjM4Yy00OS41OSwwIC04OS45Nyw0MC4zNiAtODkuOTcsODkuOTdjMCw0OS42MSA0MC4zOCw5MCA4OS45Nyw5MGM0OS42MSwwIDg5Ljk3LC00MC4zOSA4OS45NywtOTBjMCwtNDkuNjEgLTQwLjM2LC04OS45NyAtODkuOTcsLTg5Ljk3eiIgLz4KCQk8cGF0aCBpZD0icGF0aDE4IiBjbGFzcz0ic2hwMCIgZD0iTTE5My41OSw4OTYuMzZjNDkuNzEsMCA4OS45NywtNDAuMzEgODkuOTcsLTg5Ljk3YzAsLTQ5LjcxIC00MC4yNiwtODkuOTcgLTg5Ljk3LC04OS45N2MtNDkuNjgsMCAtODkuOTcsNDAuMjYgLTg5Ljk3LDg5Ljk3YzAsNDkuNjYgNDAuMjksODkuOTcgODkuOTcsODkuOTd6IiAvPgoJCTxwYXRoIGlkPSJwYXRoMjAiIGNsYXNzPSJzaHAxIiBkPSJNNzE2LjExLDQ5OS44NGMwLC0yNi41MSAtMjEuNDgsLTQ3Ljk4IC00Ny45OCwtNDcuOThjLTI2LjUxLDAgLTQ4LDIxLjQ3IC00OCw0Ny45OGMwLDI2LjUxIDIxLjQ4LDQ3Ljk3IDQ4LDQ3Ljk3YzI2LjUsMCA0Ny45OCwtMjEuNDYgNDcuOTgsLTQ3Ljk3eiIgLz4KCQk8cGF0aCBpZD0icGF0aDIyIiBjbGFzcz0ic2hwMSIgZD0iTTU0OC4xNSw0OTkuODRjMCwtMjYuNTEgLTIxLjQ3LC00Ny45OCAtNDcuOTgsLTQ3Ljk4Yy0yNi41LDAgLTQ3Ljk4LDIxLjQ3IC00Ny45OCw0Ny45OGMwLDI2LjUxIDIxLjQ4LDQ3Ljk3IDQ3Ljk4LDQ3Ljk3YzI2LjUxLDAgNDcuOTgsLTIxLjQ2IDQ3Ljk4LC00Ny45N3oiIC8+CgkJPHBhdGggaWQ9InBhdGgyNCIgY2xhc3M9InNocDEiIGQ9Ik0zODAuMTksNDk5Ljg0YzAsLTI2LjUxIC0yMS40OCwtNDcuOTggLTQ3Ljk4LC00Ny45OGMtMjYuNTEsMCAtNDcuOTgsMjEuNDcgLTQ3Ljk4LDQ3Ljk4YzAsMjYuNTEgMjEuNDcsNDcuOTcgNDcuOTgsNDcuOTdjMjYuNSwwIDQ3Ljk4LC0yMS40NiA0Ny45OCwtNDcuOTd6IiAvPgoJCTxwYXRoIGlkPSJwYXRoMjYiIGNsYXNzPSJzaHAxIiBkPSJNNTAwLjE2LDIwYy0yNjQuNTgsMCAtNDc5Ljg0LDIxNS4yNiAtNDc5Ljg0LDQ3OS44NGMwLDQwLjc3IDUuMTMsODEuMjQgMTUuMjMsMTIwLjM1YzYuNjUsMjUuNjggMzIuODQsNDEgNTguNDgsMzQuNDZjMjUuNjQsLTYuNjUgNDEuMDcsLTMyLjgyIDM0LjQ2LC01OC40OWMtOC4wOSwtMzEuMjQgLTEyLjE4LC02My42NiAtMTIuMTgsLTk2LjMyYzAsLTIxMS42NiAxNzIuMjEsLTM4My44NiAzODMuODYsLTM4My44NmMyMTEuNjYsMCAzODMuODcsMTcyLjIgMzgzLjg3LDM4My44NmMwLDIxMS42NSAtMTcyLjIxLDM4My44NiAtMzgzLjg3LDM4My44NmMtMzQuMDUsMCAtNjcuNzksLTQuNDQgLTEwMC4zLC0xMy4yYy0yNS42NCwtNi45NyAtNTEuOTMsOC4yNCAtNTguODQsMzMuOGMtNi45MSwyNS42IDguMjQsNTEuOTMgMzMuODIsNTguODNjNDAuNjYsMTAuOTkgODIuODMsMTYuNTUgMTI1LjMyLDE2LjU1YzI2NC41OCwwIDQ3OS44NCwtMjE1LjI2IDQ3OS44NCwtNDc5Ljg0YzAsLTI2NC41OCAtMjE1LjI2LC00NzkuODQgLTQ3OS44NCwtNDc5Ljg0eiIgLz4KCTwvZz4KPC9zdmc+\"\n\n/***/ }),\n/* 212 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAwIDEwMDAiIHdpZHRoPSIxMDAwIiBoZWlnaHQ9IjEwMDAiPgoJPHN0eWxlPgoJCXRzcGFuIHsgd2hpdGUtc3BhY2U6cHJlIH0KCQkuc2hwMCB7IGZpbGw6ICMxZDFjMzkgfSAKCQkuc2hwMSB7IGZpbGw6ICNmZjIyYjEgfSAKCTwvc3R5bGU+Cgk8ZyBpZD0iQ1JNIj4KCQk8cGF0aCBpZD0icGF0aDM2IiBjbGFzcz0ic2hwMCIgZD0iTTg2NC4wNywxNjguNDJjLTI0LjQsLTI0LjM2IC02My44NCwtMjQuMzYgLTg4LjE3LDBsLTYyMi4xNSw2MjIuMTNjLTI0LjMyLDI0LjMzIC0yNC4zMiw2My44IDAsODguMTNjMTIuMTgsMTIuMTkgMjguMTYsMTguMjggNDQuMSwxOC4yOGMxNS45NCwwIDMxLjkyLC02LjA5IDQ0LjA2LC0xOC4yOGw2MjIuMTUsLTYyMi4xMmMyNC4zMiwtMjQuMzMgMjQuMzIsLTYzLjgzIDAsLTg4LjE0IiAvPgoJCTxwYXRoIGlkPSJwYXRoMzAiIGNsYXNzPSJzaHAwIiBkPSJNNjUxLjU4LDYyNC4yNGwtMjQ5LjMxLDI0OS4zNWMtMjQuNCwyNC4zMyAtMjQuNCw2My44IDAsODguMTdjMTIuMTQsMTIuMTYgMjguMDgsMTguMjQgNDQuMDYsMTguMjRjMTUuOTQsMCAzMS44OCwtNi4wNyA0NC4wNiwtMTguMjRsMjQ5LjM1LC0yNDkuMzVjMjQuMzYsLTI0LjMzIDI0LjM2LC02My44IDAsLTg4LjE4Yy0yNC4zMiwtMjQuMzMgLTYzLjg0LC0yNC4zMyAtODguMTcsMHoiIC8+CgkJPHBhdGggaWQ9InBhdGgzMiIgY2xhc3M9InNocDAiIGQ9Ik0xMjIuMjYsMzA5LjQ2YzE1Ljk0LDAgMzEuODgsLTYuMDggNDQuMDYsLTE4LjI0bDExMC4yNiwtMTEwLjIyYzI0LjMyLC0yNC4zNCAyNC4zMiwtNjMuODIgMCwtODguMThjLTI0LjM2LC0yNC4zNCAtNjMuODEsLTI0LjM0IC04OC4xNywtMC4wMmwtMTEwLjIyLDExMC4yMmMtMjQuMzYsMjQuMzcgLTI0LjM2LDYzLjgyIC0wLjA0LDg4LjE4YzEyLjE4LDEyLjE4IDI4LjEyLDE4LjI1IDQ0LjEsMTguMjUiIC8+CgkJPHBhdGggaWQ9InBhdGgzNCIgY2xhc3M9InNocDAiIGQ9Ik02NDIuMDIsNTguOTJjLTI0LjMyLC0yNC4zNCAtNjMuODQsLTI0LjM0IC04OC4xNywwbC01MDkuNTgsNTA5LjZjLTI0LjM2LDI0LjMxIC0yNC4zNiw2My44MSAwLDg4LjE2YzEyLjE0LDEyLjE3IDI4LjEyLDE4LjI0IDQ0LjA2LDE4LjI0YzE1Ljk0LDAgMzEuOTIsLTYuMDggNDQuMDYsLTE4LjI0bDUwOS42MiwtNTA5LjZjMjQuMzYsLTI0LjM0IDI0LjM2LC02My44MyAwLC04OC4xNiIgLz4KCQk8cGF0aCBpZD0icGF0aDM4IiBjbGFzcz0ic2hwMSIgZD0iTTg1OC4wMywzODkuMDZjLTY0LjQzLDAgLTExNi44OCw1Mi40MyAtMTE2Ljg4LDExNi44OWMwLDY0LjQ4IDUyLjQ1LDExNi45MSAxMTYuODgsMTE2LjkxYzY0LjQ3LDAgMTE2LjkyLC01Mi40MyAxMTYuOTIsLTExNi45MWMwLC02NC40NiAtNTIuNDUsLTExNi44OSAtMTE2LjkyLC0xMTYuODl6IiAvPgoJPC9nPgo8L3N2Zz4=\"\n\n/***/ }),\n/* 213 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAwIDEwMDAiIHdpZHRoPSIxMDAwIiBoZWlnaHQ9IjEwMDAiPgoJPHN0eWxlPgoJCXRzcGFuIHsgd2hpdGUtc3BhY2U6cHJlIH0KCQkuc2hwMCB7IGZpbGw6ICMxZDFjMzkgfSAKCQkuc2hwMSB7IGZpbGw6ICNmZjIyYjEgfSAKCTwvc3R5bGU+Cgk8ZyBpZD0iRGVzayI+CgkJPHBhdGggaWQ9InBhdGg1MiIgY2xhc3M9InNocDAiIGQ9Ik01MDAsMjBjLTI2NC42NiwwIC00ODAsMjE1LjMzIC00ODAsNDgwYzAsMjY0LjY3IDIxNS4zNCw0ODAgNDgwLDQ4MGM0MC43NCwwIDgxLjI3LC01LjEzIDEyMC4zOSwtMTUuMjNjMjUuNjUsLTYuNjYgNDEuMSwtMzIuODEgMzQuNDQsLTU4LjQ4Yy02LjYzLC0yNS43IC0zMi44OCwtNDEuMDUgLTU4LjQ3LC0zNC40OGMtMzEuMjYsOC4wOSAtNjMuNjksMTIuMTggLTk2LjM2LDEyLjE4Yy0yMTEuNzQsMCAtMzg0LC0xNzIuMjcgLTM4NCwtMzgzLjk5YzAsLTIxMS43MyAxNzIuMjYsLTM4My45OSAzODQsLTM4My45OWMyMTEuNzQsMCAzODQsMTcyLjI1IDM4NCwzODMuOTljMCwzNC4wNyAtNC40Nyw2Ny44MSAtMTMuMjYsMTAwLjMzYy02LjksMjUuNjEgOC4yNSw1MS45NSAzMy44NCw1OC44NmMyNS42OCw2Ljk3IDUxLjk2LC04LjI0IDU4Ljg2LC0zMy44MWMxMS4wMSwtNDAuNyAxNi41NiwtODIuODggMTYuNTYsLTEyNS4zOWMwLC0yNjQuNjcgLTIxNS4zNCwtNDgwIC00ODAsLTQ4MCIgLz4KCQk8cGF0aCBpZD0icGF0aDQ2IiBjbGFzcz0ic2hwMSIgZD0iTTg5NS43OSw4MDUuODJjMCwtNDkuNjggLTQwLjI2LC05MCAtOTAsLTkwYy00OS42OCwwIC05MCw0MC4zMiAtOTAsOTBjMCw0OS43MiA0MC4zMiw5MCA5MCw5MGM0OS43NCwwIDkwLC00MC4yOCA5MCwtOTB6IiAvPgoJCTxwYXRoIGlkPSJwYXRoNDgiIGNsYXNzPSJzaHAwIiBkPSJNNDA5Ljk3LDUwMC4wMWMwLDQ5LjcgNDAuMzIsOTAuMDIgOTAsOTAuMDJjNDkuNzEsMCA5MCwtNDAuMzMgOTAsLTkwLjAyYzAsLTQ5LjcgLTQwLjI5LC05MCAtOTAsLTkwYy00OS42OCwwIC05MCw0MC4zIC05MCw5MHoiIC8+CgkJPHBhdGggaWQ9InBhdGg1MCIgY2xhc3M9InNocDAiIGQ9Ik03NTkuODksNDA3LjQ3YzAsLTAuMDIgLTAuMDMsLTAuMDMgLTAuMDMsLTAuMDVjLTEzLjg5LC0zOS4xMyAtMzUuNjQsLTczLjY5IC02NC42NSwtMTAyLjY5Yy0xOC43MiwtMTguNzUgLTQ5LjE3LC0xOC43NSAtNjcuODksMGMtMTguNzUsMTguNzUgLTE4Ljc1LDQ5LjE1IDAsNjcuODljMTguODQsMTguODUgMzMuMDMsNDEuMzggNDIuMTIsNjYuOTZjMCwwIDAsMC4wMSAwLDAuMDJjMy40OCw5Ljc5IDUuOTQsMTguNzYgNy41MywyNy40OWMxMC44LDU4LjQ1IC03Ljc3LDExOC4zNCAtNDkuNjUsMTYwLjIzYy00Miw0MS45OSAtMTAyLjA5LDYwLjUzIC0xNjAuNTYsNDkuNjF2MGMtMC4wMywwIC0wLjAzLDAgLTAuMDYsMGMtOC40LC0xLjU2IC0xNy4yNSwtNC4wMiAtMjYuOTcsLTcuNDhjLTI1LjY1LC05LjA4IC00OC4yMSwtMjMuMjYgLTY3LjExLC00Mi4xM2MtNjYuMywtNjYuMzMgLTcwLjIsLTE3My44NSAtOC44NSwtMjQ0Ljg0bDAuMDMsLTAuMDFsMC45NiwtMS4xMmMyLjU1LC0yLjk1IDUuMSwtNS45NCA3LjgzLC04LjY3YzIuNywtMi43MyA1LjYxLC01LjE2IDguNDMsLTcuNjNsMS4zMiwtMS4xM3YwYzMyLjY0LC0yOC4yOCA3NC40NiwtNDMuODggMTE3LjcyLC00My45NGMyNi41MiwtMC4wNCA0Ny45NywtMjEuNTUgNDcuOTQsLTQ4LjA3Yy0wLjAzLC0yNi40OCAtMjEuNTEsLTQ3LjkyIC00OCwtNDcuOTJjLTAuMDMsMCAtMC4wNiwwIC0wLjA2LDBjLTY2LjMzLDAuMDcgLTEzMC40MSwyNCAtMTgwLjQ1LDY3LjM1YzAsMCAtMC4wMywwIC0wLjAzLDAuMDF2MGwtMS4yNiwxLjA5Yy00LjUzLDMuOTQgLTkuMDYsNy45MSAtMTMuNTMsMTIuMzRjLTQuNDEsNC40NSAtOC40OSw5LjExIC0xMi41NCwxMy43OGwtMC45MywxLjA3YzAsMC4wMiAtMC4wMywwLjA2IC0wLjA2LDAuMDhjLTk0LjA4LDEwOC44NCAtODguMTEsMjczLjc2IDEzLjU5LDM3NS40OGMyOS4wNywyOS4wNyA2My42OSw1MC44NCAxMDIuOTYsNjQuNzVjMTQuNTIsNS4xNiAyOC4wOCw4Ljg4IDQxLjQ5LDExLjM0YzAuMDMsMC4wMiAwLjA5LDAuMDIgMC4xMiwwLjAyYzE2Ljg2LDMuMTQgMzMuODcsNC43IDUwLjcsNC43YzcyLjU3LDAgMTQyLjk4LC0yOC41NyAxOTUuMjEsLTgwLjgxYzY0LjIzLC02NC4yMiA5Mi43LC0xNTYgNzYuMTcsLTI0NS41MmMtMi41MiwtMTMuNzggLTYuMywtMjcuNTkgLTExLjQ5LC00Mi4yMSIgLz4KCTwvZz4KPC9zdmc+\"\n\n/***/ }),\n/* 214 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTAwMHB4IiBoZWlnaHQ9IjEwMDBweCIgdmlld0JveD0iMCAwIDEwMDAgMTAwMCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KICAgIDwhLS0gR2VuZXJhdG9yOiBTa2V0Y2ggNjMuMSAoOTI0NTIpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPGcgaWQ9IlRlYW13b3JrLUljb24tMTAwMHgxMDAwIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iSWNvbi9UZWFtd29yayIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTI1LjAwMDAwMCwgMTI1LjAwMDAwMCkiIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik0zMjEuMjkxNTgsMzA2LjQ1MzU5NyBDMzUyLjMxNTcyNSwzMDYuNDUzNTk3IDM3MC4xMDQ1NywyODkuNTUyOTQzIDM3MC4xMDQ1NywyNjAuMDY3NDk2IEMzNzAuMTA0NTcsMjMyLjMyMDkwMSAzNTAuOTc3MTgzLDIxMy42Njg4ODUgMzIyLjUwNTAyNCwyMTMuNjY4ODg1IEwyNTIuMTI1MjUsMjEzLjY2ODg4NSBMMjUyLjEyNTI1LDE2MS41NjU4MzUgQzI1Mi4xMjUyNSwxMjMuOTg2NTg4IDIyNS4xNDE3NDksMTA0LjMwODc3MyAxOTguNDk2MDEyLDEwNC4zMDg3NzMgQzE3MS44Mzc3NjQsMTA0LjMwODc3MyAxNDQuODU0MjY0LDEyMy45ODY1ODggMTQ0Ljg1NDI2NCwxNjEuNTY1ODM1IEwxNDQuODU0MjY0LDUyMC45ODMwNTkgQzE0NC44NTQyNjQsNjA3LjM2Mjc4NiAxNzkuMjY4NTQ3LDY0NS44ODAyNjMgMjU2LjQ2NjEyOCw2NDUuODgwMjYzIEMyOTguMjk4Njg1LDY0NS44ODAyNjMgMzIyLjIxNzMsNjM1LjEzNDQgMzM5Ljk5MzYzNSw2MjQuNjc2MjYgQzM1My41OTE3MTgsNjE3LjEyMDM4IDM1OC40MjA0NzYsNjAxLjA5NTQwOCAzNTguNDIwNDc2LDU4OC42MjMyMDEgQzM1OC40MjA0NzYsNTY1LjUwNTIwOSAzNDIuOTcwOTUzLDUzOS43NjAxNzIgMzIwLjc3ODY4MSw1MzkuNzYwMTcyIEMzMTcuNzEzNzk1LDUzOS43NjAxNzIgMzE0LjYxMTM4MSw1NDAuMjczMDcyIDMxMS4yNzEyODEsNTQxLjM5ODk0OCBDMzEwLjA5NTM2Niw1NDEuODc0MzE4IDMwOC43OTQzNTMsNTQyLjQ2MjI3NiAzMDcuMzU1NzM0LDU0My4xMjUyOTEgQzMwMS41MTM2ODcsNTQ1LjgxNDg4NSAyOTMuNTE5OTY2LDU0OS40ODAyMzcgMjgxLjgzNTg3Myw1NDkuNDgwMjM3IEMyNjguMDAwMTA1LDU0OS40ODAyMzcgMjUyLjEyNTI1LDU0NC42MDE0NCAyNTIuMTI1MjUsNTA2LjQ5Njc4NCBMMjUyLjEyNTI1LDMwNi40NTM1OTcgTDMyMS4yOTE1OCwzMDYuNDUzNTk3IFoiIGlkPSJNYWluIiBmaWxsPSIjMUQxQzM5Ij48L3BhdGg+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik00MjAuNTA3NTQ3LDU1MS45ODcxODkgQzQyMC41MDc1NDcsNjAzLjg3NzU3MyA0NjIuNzE1Mzk2LDY0Ni4wODU0MjMgNTE0LjU5MzI3MSw2NDYuMDg1NDIzIEM1NjYuNDcxMTQ2LDY0Ni4wODU0MjMgNjA4LjY3ODk5NSw2MDMuODc3NTczIDYwOC42Nzg5OTUsNTUxLjk4NzE4OSBDNjA4LjY3ODk5NSw1MDAuMTA5MzE0IDU2Ni40NzExNDYsNDU3LjkwMTQ2NCA1MTQuNTkzMjcxLDQ1Ny45MDE0NjQgQzQ2Mi43MTUzOTYsNDU3LjkwMTQ2NCA0MjAuNTA3NTQ3LDUwMC4xMDkzMTQgNDIwLjUwNzU0Nyw1NTEuOTg3MTg5IFoiIGlkPSJEb3QiIGZpbGw9IiNGRjIyQjEiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPgo=\"\n\n/***/ }),\n/* 215 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAwIDEwMDAiIHdpZHRoPSIxMDAwIiBoZWlnaHQ9IjEwMDAiPgoJPHN0eWxlPgoJCXRzcGFuIHsgd2hpdGUtc3BhY2U6cHJlIH0KCQkuc2hwMCB7IGZpbGw6ICMxZDFjMzkgfSAKCQkuc2hwMSB7IGZpbGw6ICNmZjIyYjEgfSAKCTwvc3R5bGU+Cgk8ZyBpZD0iU3BhY2VzIj4KCQk8cGF0aCBpZD0icGF0aDQyIiBjbGFzcz0ic2hwMCIgZD0iTTk4MCwyODYuNjVjMCwxNDcuMDQgLTExOS42NCwyNjYuNjYgLTI2Ni42NywyNjYuNjZoLTE1OS45OHYxNTkuOThjMCwxNDcuMDcgLTExOS42MSwyNjYuNjkgLTI2Ni42NCwyNjYuNjljLTE0Ny4xLDAgLTI2Ni43MSwtMTE5LjYyIC0yNjYuNzEsLTI2Ni42OWMwLC0xNDcuMDMgMTE5LjYxLC0yNjYuNjUgMjY2LjcxLC0yNjYuNjVoMTU5Ljk1di0xNTkuOTljMCwtMTQ3LjAzIDExOS42MSwtMjY2LjY1IDI2Ni42NywtMjY2LjY1YzE0Ny4wMywwIDI2Ni42NywxMTkuNjIgMjY2LjY3LDI2Ni42NXpNNDQ2LjY2LDU1My4zMWgtMTU5Ljk1Yy04OC4yNSwwIC0xNjAuMDIsNzEuNzYgLTE2MC4wMiwxNTkuOThjMCw4OC4yNSA3MS43NiwxNjAuMDIgMTYwLjAyLDE2MC4wMmM4OC4xOSwwIDE1OS45NSwtNzEuNzYgMTU5Ljk1LC0xNjAuMDJ6TTcxMy4zMyw0NDYuNjRjODguMjUsMCAxNTkuOTgsLTcxLjc2IDE1OS45OCwtMTU5Ljk5YzAsLTg4LjIyIC03MS43MywtMTU5Ljk5IC0xNTkuOTgsLTE1OS45OWMtODguMjIsMCAtMTU5Ljk4LDcxLjc3IC0xNTkuOTgsMTU5Ljk5djE1OS45OXoiIC8+CgkJPHBhdGggaWQ9InBhdGg0MCIgY2xhc3M9InNocDEiIGQ9Ik05MzMuOTEsODMzLjk4YzAsLTU1LjI1IC00NC43NCwtMTAwIC05OS45OCwtMTAwYy01NS4yMSwwIC05OS45OCw0NC43NSAtOTkuOTgsMTAwYzAsNTUuMiA0NC43Nyw5OS45OSA5OS45OCw5OS45OWM1NS4yNCwwIDk5Ljk4LC00NC43OSA5OS45OCwtOTkuOTkiIC8+CgkJPHBhdGggaWQ9InBhdGg0NCIgY2xhc3M9InNocDEiIGQ9Ik04MzMuOTMsNzMzLjk4Yy01NS4xNSwwIC05OS45OCw0NC44NSAtOTkuOTgsMTAwYzAsNTUuMTQgNDQuODQsOTkuOTkgOTkuOTgsOTkuOTljNTUuMTUsMCA5OS45OCwtNDQuODUgOTkuOTgsLTk5Ljk5YzAsLTU1LjE1IC00NC44NCwtMTAwIC05OS45OCwtMTAweiIgLz4KCTwvZz4KPC9zdmc+\"\n\n/***/ }),\n/* 216 */\n/***/ (function(module, exports, __webpack_require__) {\n\nfunction injectStyle (ssrContext) {\n __webpack_require__(538)\n}\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(250),\n /* template */\n __webpack_require__(603),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-67e314e6\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 217 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(271),\n /* template */\n __webpack_require__(594),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 218 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(251),\n /* template */\n __webpack_require__(599),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 219 */\n/***/ (function(module, exports, __webpack_require__) {\n\nfunction injectStyle (ssrContext) {\n __webpack_require__(533)\n}\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(252),\n /* template */\n __webpack_require__(590),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-232e329e\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 220 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue__ = __webpack_require__(81);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_raven_js__ = __webpack_require__(209);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_raven_js___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_raven_js__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_raven_js_plugins_vue__ = __webpack_require__(542);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_raven_js_plugins_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_raven_js_plugins_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_App_vue__ = __webpack_require__(565);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_App_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__components_App_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__router__ = __webpack_require__(239);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__store__ = __webpack_require__(240);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__utils_environment__ = __webpack_require__(105);\n// The Vue build version to load with the `import` command\n// (runtime-only or standalone) has been set in webpack.base.conf with an alias.\n/* eslint-disable */\n\n\n\n\n\n\n\n\n/* eslint-enable */\n\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].config.productionTip = false;\n\n// Don't set up sentry on localhost/sunbeam\nif (!__WEBPACK_IMPORTED_MODULE_6__utils_environment__[\"a\" /* isDevelopment */] && 'https://358121b36c3b4238cf3150daf82f6d65@o7434.ingest.us.sentry.io/266740') {\n // process vars get set by Docker during build\n __WEBPACK_IMPORTED_MODULE_1_raven_js___default.a.config('https://358121b36c3b4238cf3150daf82f6d65@o7434.ingest.us.sentry.io/266740', {\n release: \"v0414149\",\n environment: 'staging'\n }).addPlugin(__WEBPACK_IMPORTED_MODULE_2_raven_js_plugins_vue___default.a, __WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */]).install();\n}\n\n__WEBPACK_IMPORTED_MODULE_1_raven_js___default.a.context(function () {\n /* eslint-disable no-new */\n new __WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */]({\n el: '#app',\n router: __WEBPACK_IMPORTED_MODULE_4__router__[\"a\" /* default */],\n store: __WEBPACK_IMPORTED_MODULE_5__store__[\"a\" /* default */],\n template: '',\n components: { App: __WEBPACK_IMPORTED_MODULE_3__components_App_vue___default.a }\n });\n});\n\n// fix for back-forward cache for Safari, see\n// https://stackoverflow.com/questions/8788802/prevent-safari-loading-from-cache-when-back-button-is-clicked\nwindow.onpageshow = function (event) {\n // eslint-disable-line func-names\n if (event.persisted) {\n window.location.reload();\n }\n};\n\n/***/ }),\n/* 221 */,\n/* 222 */,\n/* 223 */,\n/* 224 */,\n/* 225 */,\n/* 226 */,\n/* 227 */,\n/* 228 */,\n/* 229 */,\n/* 230 */,\n/* 231 */,\n/* 232 */,\n/* 233 */,\n/* 234 */,\n/* 235 */,\n/* 236 */,\n/* 237 */,\n/* 238 */,\n/* 239 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue__ = __webpack_require__(81);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_router__ = __webpack_require__(615);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_pages_Login_Login_vue__ = __webpack_require__(569);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_pages_Login_Login_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__components_pages_Login_Login_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_pages_ForgotPassword_ForgotPassword_vue__ = __webpack_require__(568);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_pages_ForgotPassword_ForgotPassword_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__components_pages_ForgotPassword_ForgotPassword_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_pages_ResetPassword_ResetPassword_vue__ = __webpack_require__(571);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_pages_ResetPassword_ResetPassword_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__components_pages_ResetPassword_ResetPassword_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_pages_Logout_Logout_vue__ = __webpack_require__(570);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_pages_Logout_Logout_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5__components_pages_Logout_Logout_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_pages_AccountNotSetup_vue__ = __webpack_require__(567);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_pages_AccountNotSetup_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6__components_pages_AccountNotSetup_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_pages_TokenAuth_TokenAuth_vue__ = __webpack_require__(575);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_pages_TokenAuth_TokenAuth_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7__components_pages_TokenAuth_TokenAuth_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_pages_SAMLAuth_SAMLAuth_vue__ = __webpack_require__(572);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_pages_SAMLAuth_SAMLAuth_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__components_pages_SAMLAuth_SAMLAuth_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_pages_AcceptInvite_AcceptInvite_vue__ = __webpack_require__(566);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_pages_AcceptInvite_AcceptInvite_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9__components_pages_AcceptInvite_AcceptInvite_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_pages_SelectAccount_SelectAccount_vue__ = __webpack_require__(573);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_pages_SelectAccount_SelectAccount_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10__components_pages_SelectAccount_SelectAccount_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_pages_Welcome_Welcome_vue__ = __webpack_require__(576);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_pages_Welcome_Welcome_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11__components_pages_Welcome_Welcome_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__components_pages_Success_Success_vue__ = __webpack_require__(574);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__components_pages_Success_Success_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12__components_pages_Success_Success_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__components_sections_EmailValidation_EmailValidation_vue__ = __webpack_require__(577);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__components_sections_EmailValidation_EmailValidation_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13__components_sections_EmailValidation_EmailValidation_vue__);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].use(__WEBPACK_IMPORTED_MODULE_1_vue_router__[\"a\" /* default */]);\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (new __WEBPACK_IMPORTED_MODULE_1_vue_router__[\"a\" /* default */]({\n mode: 'history',\n base: '/launchpad/',\n routes: [{\n path: '/login/:productCode?',\n name: 'Login',\n component: __WEBPACK_IMPORTED_MODULE_2__components_pages_Login_Login_vue___default.a,\n meta: {\n title: 'Log in'\n }\n }, {\n path: '/forgotpassword/:productCode?',\n name: 'Recover Password',\n component: __WEBPACK_IMPORTED_MODULE_3__components_pages_ForgotPassword_ForgotPassword_vue___default.a,\n meta: {\n title: 'Recover password'\n }\n }, {\n path: '/resetpassword/:userId/:token',\n name: 'Reset Password',\n component: __WEBPACK_IMPORTED_MODULE_4__components_pages_ResetPassword_ResetPassword_vue___default.a,\n meta: {\n title: 'Reset password'\n }\n }, {\n path: '/logout/:productCode?',\n name: 'Logout',\n component: __WEBPACK_IMPORTED_MODULE_5__components_pages_Logout_Logout_vue___default.a,\n meta: {\n title: 'Log out'\n }\n }, {\n path: '/notsetup/:productCode',\n name: 'Account Not Setup',\n component: __WEBPACK_IMPORTED_MODULE_6__components_pages_AccountNotSetup_vue___default.a,\n meta: {\n title: 'Account not setup'\n }\n }, {\n path: '/saml/auth',\n name: 'Single Sign On',\n component: __WEBPACK_IMPORTED_MODULE_8__components_pages_SAMLAuth_SAMLAuth_vue___default.a,\n meta: {\n title: 'Log in'\n }\n }, {\n path: '/tokenauth',\n name: 'Token Login',\n component: __WEBPACK_IMPORTED_MODULE_7__components_pages_TokenAuth_TokenAuth_vue___default.a,\n meta: {\n title: 'Log in'\n }\n }, {\n path: '/acceptinvite/:productCode?',\n name: 'Accept Invite',\n component: __WEBPACK_IMPORTED_MODULE_9__components_pages_AcceptInvite_AcceptInvite_vue___default.a,\n meta: {\n title: 'Get Started'\n }\n }, {\n path: '/join/:productCode?',\n name: 'Join Teamwork',\n component: __WEBPACK_IMPORTED_MODULE_9__components_pages_AcceptInvite_AcceptInvite_vue___default.a,\n meta: {\n title: 'Get started'\n }\n }, {\n path: '/googleSSO/select-account',\n name: 'Google Sign-In',\n component: __WEBPACK_IMPORTED_MODULE_10__components_pages_SelectAccount_SelectAccount_vue___default.a,\n meta: {\n title: 'Log in'\n }\n }, {\n path: '/welcome',\n name: 'Welcome',\n component: __WEBPACK_IMPORTED_MODULE_11__components_pages_Welcome_Welcome_vue___default.a,\n meta: {\n title: 'Welcome',\n hideSiteLogo: true\n }\n }, {\n path: '/success',\n name: 'Success',\n component: __WEBPACK_IMPORTED_MODULE_12__components_pages_Success_Success_vue___default.a,\n meta: {\n title: 'Log in'\n }\n }, {\n path: '/verifyemail/:productCode/:token',\n name: 'Success',\n component: __WEBPACK_IMPORTED_MODULE_13__components_sections_EmailValidation_EmailValidation_vue___default.a,\n meta: {\n title: 'Verify email'\n }\n }]\n}));\n\n/***/ }),\n/* 240 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue__ = __webpack_require__(81);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vuex_dist_logger__ = __webpack_require__(617);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vuex_dist_logger___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_vuex_dist_logger__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__modules_site__ = __webpack_require__(242);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__modules_login__ = __webpack_require__(241);\n\n\n\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].use(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"c\" /* default */]);\n\nvar debug = \"production\" !== 'production' && \"production\" !== 'test';\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (new __WEBPACK_IMPORTED_MODULE_1_vuex__[\"c\" /* default */].Store({\n modules: {\n site: __WEBPACK_IMPORTED_MODULE_3__modules_site__[\"a\" /* default */],\n login: __WEBPACK_IMPORTED_MODULE_4__modules_login__[\"a\" /* default */]\n },\n strict: debug,\n plugins: debug ? [__WEBPACK_IMPORTED_MODULE_2_vuex_dist_logger___default()()] : []\n}));\n\n/***/ }),\n/* 241 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export mutations */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_assign__ = __webpack_require__(82);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_assign___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_assign__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__ = __webpack_require__(285);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_json_stringify__ = __webpack_require__(278);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_json_stringify___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_json_stringify__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_regenerator__ = __webpack_require__(51);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_regenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_regenerator__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_core_js_promise__ = __webpack_require__(83);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_core_js_promise___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_core_js_promise__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_asyncToGenerator__ = __webpack_require__(50);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_asyncToGenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_asyncToGenerator__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__utils_urlHelper__ = __webpack_require__(49);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__utils_uiHelper__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__utils_environment__ = __webpack_require__(105);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_raven_js__ = __webpack_require__(209);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9_raven_js___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9_raven_js__);\n\n\n\n\n\n\n\n\n\n\n\nvar getEmptyFatalError = function getEmptyFatalError() {\n return {\n error: '', // main message\n message: '', // subtitle\n explanation: '', // HTML content\n\n appError: '', // code for app login\n appErrorExplanation: '' // explanation for app login\n };\n};\n\n// initial state\nvar initialState = {\n // available types: account, generic, app\n loginType: '',\n\n // available types: standard, saml-first, saml-email\n loginState: 'standard',\n\n // meta contains current metadata that may affect rendering\n // or behaviour\n meta: {\n productCode: '',\n hasLocalStorage: true,\n isIframe: false,\n source: '',\n product: '',\n extra: '',\n admin: false,\n ignoreInstallations: '',\n generic: false\n },\n\n loggedIn: false,\n\n fatalError: getEmptyFatalError(),\n\n samlBaseURL: '',\n afterLoginURL: '',\n formState: '',\n\n // appInfo stores app authentication info\n appInfo: {\n redirect_uri: '',\n state: '',\n client_id: '',\n scope: [],\n install: false,\n nonce: ''\n },\n\n waf: null,\n\n selectedAccount: {\n installation: {\n apiEndPoint: ''\n }\n }\n};\n\n// getters\nvar getters = {\n twAuthBaseURL: function twAuthBaseURL(state, getters, rootState) {\n // eslint-disable-line\n if (__WEBPACK_IMPORTED_MODULE_8__utils_environment__[\"a\" /* isDevelopment */]) return 'https://tw-auth-dev.teamwork.com';\n return rootState.site.siteInfo.twAuthBaseURL;\n },\n googleSSOURL: function googleSSOURL(state, getters) {\n // eslint-disable-line\n var url = getters.twAuthBaseURL + '/launchpad/googleSSO/start';\n var params = {};\n\n if (state.afterLoginURL) params.retURL = state.afterLoginURL;\n\n if (state.loginType === 'app') {\n params.appLoginRedirectURI = state.appInfo.redirect_uri;\n if (state.appInfo.state) params.state = state.appInfo.state;\n if (state.appInfo.client_id) params.appLoginClientID = state.appInfo.client_id;\n if (state.appInfo.scope) params.appLoginScope = state.appInfo.scope;\n if (state.appInfo.install) params.install = state.appInfo.install;\n if (state.appInfo.nonce) params.nonce = state.appInfo.nonce;\n if (state.meta.ignoreInstallations) params.ignoreInstallations = state.meta.ignoreInstallations; // eslint-disable-line\n }\n\n if (state.meta.source) params.source = state.meta.source;\n if (state.meta.product) params.product = state.meta.product;\n if (state.meta.extra) params.extra = state.meta.extra;\n\n return url + '?' + __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__utils_urlHelper__[\"a\" /* buildQueryString */])(params);\n },\n samlURL: function samlURL(state) {\n var url = state.samlBaseURL.length ? state.samlBaseURL + 'launchpad/saml/start' : '/launchpad/saml/start';\n var params = {};\n\n switch (state.loginType) {// eslint-disable-line\n case 'account':\n case 'generic':\n if (state.afterLoginURL) params.SAMLAfterLoginURL = state.afterLoginURL;\n break;\n case 'app':\n params.appAuth = true;\n params.redirect_uri = state.appInfo.redirect_uri;\n if (state.appInfo.state) params.state = state.appInfo.state;\n if (state.appInfo.scope) params.scope = state.appInfo.scope;\n if (state.appInfo.client_id) params.client_id = state.appInfo.client_id;\n if (state.appInfo.install) params.install = state.appInfo.install;\n if (state.appInfo.nonce) params.nonce = state.appInfo.nonce;\n if (state.meta.ignoreInstallations) params.ignoreInstallations = state.meta.ignoreInstallations; // eslint-disable-line\n break;\n }\n\n if (state.meta.source) params.source = state.meta.source;\n if (state.meta.product) params.product = state.meta.product;\n if (state.meta.extra) params.extra = state.meta.extra;\n\n return url + '?' + __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__utils_urlHelper__[\"a\" /* buildQueryString */])(params);\n },\n bodyClasses: function bodyClasses(state) {\n var classes = [];\n if (state.meta.isIframe) classes.push('in-iframe');\n if (state.meta.source) classes.push('source-' + state.meta.source);\n if (state.meta.product) classes.push('product-' + state.meta.product);\n if (state.meta.extra && typeof state.meta.extra === 'string') {\n state.meta.extra.split(',').forEach(function (s) {\n classes.push('extra-' + s);\n });\n }\n return classes.join(' ');\n },\n allowStandardLogin: function allowStandardLogin(state, getters, rootState) {\n // eslint-disable-line\n if (state.meta.admin) return true;\n if (state.loginState === 'saml-first') return !rootState.site.siteInfo.sso.hideStandardLoginLink;\n return rootState.site.siteInfo.displayOptions.allowStandardLogin;\n }\n};\n\n// actions\nvar actions = {\n setupBasicInfo: function setupBasicInfo(_ref, _ref2) {\n var commit = _ref.commit,\n dispatch = _ref.dispatch;\n var query = _ref2.query,\n params = _ref2.params;\n\n var host = window.location.host;\n var generic = host === 'www.teamwork.com' || host === 'teamwork.com' || query.generic || query.gad && host.indexOf('tw-auth') > -1 || host === 'staging.teamwork.com' || host === 'www.staging.teamwork.com';\n\n var appInfo = {};\n if (query.redirect_uri) appInfo.redirect_uri = query.redirect_uri;\n if (query.state) appInfo.state = query.state;\n if (query.client_id) appInfo.client_id = query.client_id;\n if (query.install) appInfo.install = !!query.install;\n if (query.scope) appInfo.scope = query.scope.split(/[\\s,]+/);\n if (query.nonce) appInfo.nonce = query.nonce;\n\n var loginType = 'account';\n if (generic) {\n loginType = 'generic';\n dispatch('loadAwsWaf');\n }\n if (appInfo.redirect_uri) loginType = 'app';\n\n var afterLoginURL = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__utils_urlHelper__[\"b\" /* sanitiseURL */])(query.continue, loginType === 'account');\n if (loginType === 'account' && !afterLoginURL) {\n afterLoginURL = window.location.href.replace(/\\/launchpad(.*)/, '');\n if (params.productCode && params.productCode !== 'projects') {\n afterLoginURL += '/' + params.productCode;\n } else {\n afterLoginURL += '/app';\n }\n }\n\n var meta = {\n isIframe: false,\n hasLocalStorage: true,\n generic: generic\n };\n if (params.productCode) meta.productCode = params.productCode;\n if (query.source) meta.source = query.source;\n if (query.product) meta.product = query.product;\n if (query.extra) meta.extra = query.extra;\n if (query.ignore_installations) meta.ignoreInstallations = query.ignore_installations;\n\n // check if in iframe\n try {\n meta.isIframe = window.self !== window.top;\n } catch (e) {\n meta.isIframe = true;\n }\n\n // check if localStorage is supported, as Safari\n // throws errors when in private browsing mode.\n try {\n localStorage.getItem('test');\n } catch (err) {\n meta.hasLocalStorage = false;\n }\n\n if (meta.hasLocalStorage) __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_7__utils_uiHelper__[\"b\" /* loadThemeColor */])();\n if (query.admin) meta.admin = true;\n\n window.addEventListener('storage', function (eventInfo) {\n if (eventInfo.key === 'loggedIn') {\n dispatch('setLoggedIn', {\n loggedIn: true,\n ignoreLS: true\n });\n }\n });\n\n commit('setBasicInfo', { loginType: loginType, appInfo: appInfo, meta: meta, afterLoginURL: afterLoginURL });\n if (meta.isIframe) dispatch('setupIFrame', meta.isIframe);\n },\n appendExperimentTracking: function appendExperimentTracking(_ref3, _ref4) {\n var state = _ref3.state,\n commit = _ref3.commit;\n var campaign = _ref4.campaign,\n variation = _ref4.variation;\n\n var continueURL = state.afterLoginURL || '';\n var parameter = 'utm_content=vwo-' + campaign + '-' + variation;\n var url = void 0;\n\n if (continueURL.includes('?')) url = continueURL + '&' + parameter;else if (continueURL.endsWith('/')) url = continueURL + '?' + parameter;else url = continueURL + '/?' + parameter;\n\n commit('setAfterLoginURL', url);\n },\n setupIFrame: function setupIFrame(_ref5, isIframe) {\n var state = _ref5.state,\n commit = _ref5.commit;\n\n if (!isIframe) return;\n\n document.body.style.background = 'transparent';\n document.body.classList.add('in-iframe');\n\n window.addEventListener('beforeunload', function () {\n window.parent.postMessage('pageChanged', '*');\n });\n\n var pageResized = function pageResized() {\n return window.parent.postMessage('pageResized', '*');\n };\n document.addEventListener('transitionend', pageResized);\n document.addEventListener('webkitTransitionEnd', pageResized);\n document.addEventListener('oTransitionEnd', pageResized);\n },\n loadAwsWaf: function loadAwsWaf(_ref6) {\n var _this = this;\n\n var commit = _ref6.commit;\n return __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_asyncToGenerator___default()( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_3_babel_runtime_regenerator___default.a.mark(function _callee() {\n var wafjs;\n return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_regenerator___default.a.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (true) {\n _context.next = 2;\n break;\n }\n\n return _context.abrupt('return');\n\n case 2:\n wafjs = document.createElement('script');\n\n wafjs.src = 'https://5aebc210bb0c.us-east-1.sdk.awswaf.com/5aebc210bb0c/fcd08fa39311/challenge.js';\n wafjs.setAttribute('defer', '');\n document.head.appendChild(wafjs);\n wafjs.onabort = function () {\n return __WEBPACK_IMPORTED_MODULE_4_babel_runtime_core_js_promise___default.a.reject(new Error(\"Couldn't load WAF\"));\n };\n wafjs.onerror = wafjs.onabort;\n wafjs.onload = function () {\n commit('setWAF', window.AwsWafIntegration);\n return __WEBPACK_IMPORTED_MODULE_4_babel_runtime_core_js_promise___default.a.resolve();\n };\n\n case 9:\n case 'end':\n return _context.stop();\n }\n }\n }, _callee, _this);\n }))();\n },\n getWafToken: function getWafToken() {\n var _this2 = this;\n\n return __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_asyncToGenerator___default()( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_3_babel_runtime_regenerator___default.a.mark(function _callee2() {\n return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_regenerator___default.a.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.prev = 0;\n\n if (true) {\n _context2.next = 3;\n break;\n }\n\n return _context2.abrupt('return', null);\n\n case 3:\n return _context2.abrupt('return', window.AwsWafIntegration.getToken());\n\n case 6:\n _context2.prev = 6;\n _context2.t0 = _context2['catch'](0);\n\n __WEBPACK_IMPORTED_MODULE_9_raven_js___default.a.captureException(_context2.t0, { fingerprint: ['waf library not loaded'] });\n return _context2.abrupt('return', null);\n\n case 10:\n case 'end':\n return _context2.stop();\n }\n }\n }, _callee2, _this2, [[0, 6]]);\n }))();\n }\n};\n\n// export `mutations` as a named export\nvar mutations = {\n setLoggedIn: function setLoggedIn(state, _ref7) {\n var loggedIn = _ref7.loggedIn,\n userId = _ref7.userId,\n ignoreLS = _ref7.ignoreLS;\n\n state.loggedIn = loggedIn;\n if (loggedIn && state.meta.hasLocalStorage && !ignoreLS) {\n localStorage.setItem('loggedIn', __WEBPACK_IMPORTED_MODULE_2_babel_runtime_core_js_json_stringify___default()({\n userId: userId,\n dateTimeUTC: new Date().toISOString()\n }));\n // ensure we wipe any previous stale sessionTimeout keys on fresh login\n localStorage.removeItem('twProjects-sessionTimeout');\n }\n },\n setBasicInfo: function setBasicInfo(state, _ref8) {\n var loginType = _ref8.loginType,\n appInfo = _ref8.appInfo,\n meta = _ref8.meta,\n afterLoginURL = _ref8.afterLoginURL;\n\n if (appInfo && (typeof appInfo === 'undefined' ? 'undefined' : __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default()(appInfo)) === 'object') {\n state.appInfo = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_assign___default()(state.appInfo, appInfo);\n }\n state.meta = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_assign___default()(state.meta, meta);\n state.loginType = loginType;\n state.afterLoginURL = afterLoginURL;\n },\n showFatalError: function showFatalError(state, errorData) {\n state.fatalError = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_assign___default()(state.fatalError, errorData);\n },\n resetFatalError: function resetFatalError(state) {\n state.fatalError = getEmptyFatalError();\n },\n setSAMLBaseURL: function setSAMLBaseURL(state, url) {\n state.samlBaseURL = url;\n },\n setLoginState: function setLoginState(state, loginState) {\n state.loginState = loginState;\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_7__utils_uiHelper__[\"a\" /* smartFocus */])();\n },\n setSelectedAccount: function setSelectedAccount(state, _ref9) {\n var installation = _ref9.installation;\n\n state.selectedAccount.installation = installation;\n },\n setFormState: function setFormState(state, formState) {\n state.formState = formState;\n },\n setWAF: function setWAF(state, waflib) {\n state.waf = waflib;\n },\n setAfterLoginURL: function setAfterLoginURL(state, url) {\n state.afterLoginURL = url;\n }\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n state: initialState,\n getters: getters,\n actions: actions,\n mutations: mutations\n});\n\n/***/ }),\n/* 242 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* unused harmony export mutations */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__utils_cookieHelper__ = __webpack_require__(243);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__utils_uiHelper__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__utils_environment__ = __webpack_require__(105);\n\n\n\n\n\n// initial state\nvar initialState = {\n siteInfo: {\n name: 'Teamwork.com',\n logo: '',\n url: '',\n displayOptions: {\n allowRememberMe: false,\n hasTeamworkBranding: false,\n showSiteNameOnLoginScreen: false,\n themeColor: '',\n useBackgroundColorOnLogin: false,\n allowStandardLogin: true\n },\n integrations: {\n googleSignIn: {\n enabled: true\n }\n },\n sso: {\n enabled: true,\n loginStyle: '',\n hideStandardLoginLink: false\n },\n apps: {\n projects: false,\n chat: false,\n desk: false\n },\n twAuthBaseURL: 'https://tw-auth.teamwork.com',\n isEnterprise: false,\n installationState: ''\n },\n\n siteLoading: true,\n siteNotFound: false,\n\n productInfo: [{\n code: 'projects',\n title: 'Teamwork',\n description: 'The project management app for professionals'\n }, {\n code: 'chat',\n title: 'Teamwork Chat',\n description: 'Instant chat software to keep your team connected'\n }, {\n code: 'desk',\n title: 'Teamwork Desk',\n description: 'The helpdesk that\\'s invisible for your customers'\n }, {\n code: 'crm',\n title: 'Teamwork CRM',\n description: 'Sales pipeline management for small businesses ready to take the next step'\n }, {\n code: 'spaces',\n title: 'Teamwork Spaces',\n description: 'A new kind of collaboration software'\n }, {\n code: 'developer',\n title: 'Teamwork Developer Portal',\n description: 'Create and manage integrations for Teamwork products'\n }]\n};\n\n// getters\nvar getters = {};\n\n// actions\nvar actions = {\n getSiteInfo: function getSiteInfo(_ref, currentRoute) {\n var commit = _ref.commit,\n rootState = _ref.rootState,\n dispatch = _ref.dispatch;\n var isIframe = rootState.login.meta.isIframe;\n\n\n __WEBPACK_IMPORTED_MODULE_0_axios___default.a.get('/launchpad/v1/info.json?isIframe=' + isIframe).then(function (response) {\n var info = response.data.info;\n\n // check if their domain has changed and this is an old url\n var parts = info.url.split('//');\n if (!__WEBPACK_IMPORTED_MODULE_3__utils_environment__[\"a\" /* isDevelopment */] && parts.length > 1) {\n parts = parts[1].split('/');\n var newHost = parts[0].toLowerCase();\n var oldHost = window.location.host.toLowerCase();\n if (newHost.indexOf('sunbeam.teamwork.localhost') === -1 && newHost !== oldHost) {\n // the basehref has changed, redirect to new url\n var base = info.url.substr(0, info.url.length - 1); // remove trailing slash\n var url = '' + base + window.location.pathname + window.location.search.replace(oldHost, newHost);\n window.location.href = url;\n return;\n }\n }\n\n commit('setLoggedIn', {\n loggedIn: response.data.loggedIn,\n userId: response.data.userId\n });\n\n if (info.sso.enabled) {\n if (info.sso.loginStyle === 'SSO automatic-start' && currentRoute.path.indexOf('/login') === 0) {\n if (!isIframe) {\n window.location.href = '/launchpad/saml/start?SAMLAfterLoginURL=' + encodeURIComponent(rootState.login.afterLoginURL);\n return;\n }\n /**\n * We need to show button if we're in iframe because otherwise we\n * get 'popup blocked' browser message.\n */\n commit('setLoginState', 'saml-first', { root: true });\n } else if (info.sso.loginStyle === 'dual-login SSO-first') {\n commit('setLoginState', 'saml-first', { root: true });\n }\n }\n\n commit('setSiteInfo', info);\n\n var color = info.displayOptions.useBackgroundColorOnLogin ? info.displayOptions.themeColor : '';\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__utils_uiHelper__[\"c\" /* setThemeColor */])(color, rootState.login.meta.hasLocalStorage);\n\n dispatch('setPageTitle', currentRoute.meta.title);\n }).catch(function (e) {\n // eslint-disable-next-line\n console.error(e);\n commit('setSiteNotFound');\n });\n },\n setPageTitle: function setPageTitle(_ref2, pageTitle) {\n var state = _ref2.state;\n\n var title = pageTitle + ' - ' + state.siteInfo.name;\n if (state.siteInfo.displayOptions.hasTeamworkBranding) title += ' - Teamwork.com';\n\n var launchpadLB = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__utils_cookieHelper__[\"a\" /* getCookie */])('LAUNCHPADLB');\n if (launchpadLB === 'beta') title = '\\uD83D\\uDD25 BETA - ' + title;\n\n document.title = title;\n }\n};\n\n// export `mutations` as a named export\nvar mutations = {\n setSiteInfo: function setSiteInfo(state, data) {\n state.siteInfo = data;\n state.siteLoading = false;\n },\n setSiteNotFound: function setSiteNotFound(state) {\n state.siteNotFound = true;\n state.siteLoading = false;\n }\n};\n\n/* harmony default export */ __webpack_exports__[\"a\"] = ({\n state: initialState,\n getters: getters,\n actions: actions,\n mutations: mutations\n});\n\n/***/ }),\n/* 243 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = getCookie;\nfunction getCookie(name) {\n // eslint-disable-line\n var value = '; ' + document.cookie;\n var parts = value.split('; ' + name + '=');\n if (parts.length === 2) return parts.pop().split(';').shift();\n return '';\n}\n\n/***/ }),\n/* 244 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__assets_images_icon_visible_svg__ = __webpack_require__(561);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__assets_images_icon_visible_svg___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__assets_images_icon_visible_svg__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__assets_images_icon_invisible_svg__ = __webpack_require__(560);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__assets_images_icon_invisible_svg___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__assets_images_icon_invisible_svg__);\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n/** Password input with 'reveal password' button */\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n props: {\n label: {\n type: String,\n default: undefined\n },\n\n value: {\n type: String,\n required: true\n }\n },\n\n data: function data() {\n return {\n isVisible: false,\n iconVisible: __WEBPACK_IMPORTED_MODULE_0__assets_images_icon_visible_svg___default.a,\n iconInvisible: __WEBPACK_IMPORTED_MODULE_1__assets_images_icon_invisible_svg___default.a\n };\n }\n});\n\n/***/ }),\n/* 245 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_ProductList_vue__ = __webpack_require__(218);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_ProductList_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__components_widgets_ProductList_vue__);\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n// eslint-disable-next-line @teamwork/cfb-rules/component-paths\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n components: { PageHeader: __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue___default.a, ProductList: __WEBPACK_IMPORTED_MODULE_3__components_widgets_ProductList_vue___default.a },\n\n data: function data() {\n var _$route = this.$route,\n params = _$route.params,\n query = _$route.query;\n\n\n return {\n productCode: params.productCode,\n customMessage: query.message || ''\n };\n },\n\n\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* mapState */])({\n siteInfo: function siteInfo(state) {\n return state.site.siteInfo;\n },\n productInfo: function productInfo(state) {\n return state.site.productInfo;\n },\n title: function title(state) {\n return state.site.siteInfo.displayOptions.showSiteNameOnLoginScreen ? state.site.siteInfo.name : '';\n }\n }), {\n productName: function productName() {\n var productCode = this.productCode,\n productInfo = this.productInfo;\n\n var product = productInfo.find(function (_ref) {\n var code = _ref.code;\n return code === productCode;\n });\n\n return product ? product.title : productCode;\n },\n subTitle: function subTitle() {\n return this.title ? this.productName + ' unavailable' : '';\n },\n continueItems: function continueItems() {\n var productCode = this.productCode,\n productInfo = this.productInfo,\n siteInfo = this.siteInfo;\n\n\n return productInfo.filter(function (_ref2) {\n var code = _ref2.code;\n return ![productCode, 'developer'].includes(code);\n }).map(function (_ref3) {\n var code = _ref3.code,\n title = _ref3.title,\n description = _ref3.description;\n\n var productUrl = code === 'projects' ? '' : code;\n\n return { code: code, title: title, description: description, url: '' + siteInfo.url + productUrl };\n });\n }\n })\n});\n\n/***/ }),\n/* 246 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__ = __webpack_require__(51);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator__ = __webpack_require__(50);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_defineProperty__ = __webpack_require__(283);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_defineProperty___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_defineProperty__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_axios__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_widgets_Loading_Loading_vue__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_widgets_Loading_Loading_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7__components_widgets_Loading_Loading_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__assets_images_email_verified_png__ = __webpack_require__(556);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__assets_images_email_verified_png___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__assets_images_email_verified_png__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__assets_images_email_expired_png__ = __webpack_require__(554);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__assets_images_email_expired_png___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9__assets_images_email_expired_png__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__assets_images_email_send_png__ = __webpack_require__(555);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__assets_images_email_send_png___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10__assets_images_email_send_png__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__utils_errorHelper__ = __webpack_require__(48);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__utils_urlHelper__ = __webpack_require__(49);\n\n\n\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n\n\n\n\n\n\n\n\nvar STATE_EMAIL_VERIFIED = 'verified';\nvar STATE_EMAIL_ERROR = 'error';\nvar STATE_EMAIL_RESENT = 'resent';\nvar STATE_EMAIL_INITIAL_SEND = 'firstsend';\nvar STATE_EMAIL_ALREADY_VALIDATED = 'already-validated';\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_6__components_widgets_PageHeader_PageHeader_vue___default.a,\n Loading: __WEBPACK_IMPORTED_MODULE_7__components_widgets_Loading_Loading_vue___default.a\n },\n\n data: function data() {\n return {\n emailVerified: __WEBPACK_IMPORTED_MODULE_8__assets_images_email_verified_png___default.a,\n emailExpired: __WEBPACK_IMPORTED_MODULE_9__assets_images_email_expired_png___default.a,\n emailSend: __WEBPACK_IMPORTED_MODULE_10__assets_images_email_send_png___default.a,\n isLoading: false,\n isCTALoading: false,\n errorMessage: undefined,\n state: STATE_EMAIL_ERROR,\n email: null,\n product: 'projects',\n token: '',\n tokenResponse: null,\n loginCode: null\n };\n },\n\n\n computed: __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_5_vuex__[\"a\" /* mapState */])({\n isAlreadyVerified: function isAlreadyVerified(state) {\n return state.site.siteInfo.installationState === 'active';\n },\n siteURL: function siteURL(state) {\n return state.site.siteInfo.url;\n }\n }), {\n stateContent: function stateContent() {\n var _this = this,\n _ref;\n\n return _ref = {}, __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_defineProperty___default()(_ref, STATE_EMAIL_VERIFIED, {\n image: this.emailVerified,\n headerText: 'Your email address has been verified',\n bodyText: 'We\\u2019ve successfully verified your email address as ' + this.email + '
You\\u2019re one step closer to completing your account setup.',\n footerText: 'Ready to continue?',\n nextText: 'Click below to move on to the next step',\n ctaText: 'Continue account setup',\n dataIdentifier: 'continue-setup',\n ctaAction: function ctaAction() {\n return _this.continueToApp();\n }\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_defineProperty___default()(_ref, STATE_EMAIL_ERROR, {\n image: this.emailExpired,\n headerText: 'Email validation link has expired',\n bodyText: 'It looks like your email validation link has expired.
Click below to resend the verification email.',\n footerText: 'Didn’t receive the email?',\n nextText: 'Check your spam folder or click below to resend.',\n ctaText: 'Resend email',\n dataIdentifier: 'resend-email-expired',\n ctaAction: function ctaAction() {\n return _this.resendEmail();\n }\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_defineProperty___default()(_ref, STATE_EMAIL_ALREADY_VALIDATED, {\n image: this.emailVerified,\n headerText: 'Email already verified',\n bodyText: 'The email address associated with this account has already been validated.
Click below to go to your Teamwork.com account.',\n ctaText: 'Go to your account',\n dataIdentifier: 'go-to-app',\n ctaAction: function ctaAction() {\n return _this.continueToOnboarding();\n }\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_defineProperty___default()(_ref, STATE_EMAIL_RESENT, {\n image: this.emailSend,\n headerText: 'Email validation link has been resent',\n bodyText: 'Your email validation link has been resent to ' + this.email + '.
Click below to send another.',\n footerText: 'Your email has been resent',\n nextText: 'Check your spam folder or click below to send another',\n ctaText: 'Resend email',\n dataIdentifier: 'resend-email-expired',\n ctaAction: function ctaAction() {\n return _this.resendEmail();\n }\n }), __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_defineProperty___default()(_ref, STATE_EMAIL_INITIAL_SEND, {\n image: this.emailSend,\n headerText: 'Please verify your email address',\n bodyText: 'We\\u2019ve sent a verification link to ' + this.email + '
Please check your inbox and click the verification link we\\u2019ve sent to confirm your email address.',\n footerText: 'Didn’t receive the email?',\n nextText: 'Check your spam folder or click below to resend.',\n ctaText: 'Resend email',\n dataIdentifier: 'resend-email-initial',\n ctaAction: function ctaAction() {\n return _this.resendEmail();\n }\n }), _ref;\n }\n }),\n\n methods: {\n resendEmail: function resendEmail() {\n var _this2 = this;\n\n return __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator___default()( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee() {\n var data;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (!_this2.email) {\n _this2.redirectToLogin();\n }\n\n _this2.isCTALoading = true;\n data = {\n email: _this2.email,\n product: _this2.product,\n unvalidatedAccountLoginCode: _this2.loginCode\n };\n _context.next = 5;\n return __WEBPACK_IMPORTED_MODULE_4_axios___default.a.post('/launchpad/v1/emailvalidation.json', data).then(function (resp) {\n _this2.state = STATE_EMAIL_RESENT;\n _this2.errorMessage = '';\n _this2.email = resp.data.email;\n }).catch(function (err) {\n switch (err.response.status) {\n case 401:\n _this2.redirectToLogin();\n break;\n case 409:\n _this2.state = STATE_EMAIL_ALREADY_VALIDATED;\n _this2.errorMessage = 'The email address associated with this account has already been validated';\n break;\n default:\n _this2.state = STATE_EMAIL_ERROR;\n _this2.errorMessage = 'Something went wrong, please try again';\n break;\n }\n }).finally(function () {\n _this2.isCTALoading = false;\n });\n\n case 5:\n case 'end':\n return _context.stop();\n }\n }\n }, _callee, _this2);\n }))();\n },\n continueToApp: function continueToApp() {\n window.location.href = this.tokenResponse.redirectURL;\n },\n continueToOnboarding: function continueToOnboarding() {\n window.location.href = this.siteURL + 'app/getting-started';\n },\n redirectToLogin: function redirectToLogin() {\n var params = {};\n params.continue = '/launchpad/verifyemail/' + this.product + '/' + this.token;\n window.location.href = '/launchpad/login/?' + __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_12__utils_urlHelper__[\"a\" /* buildQueryString */])(params);\n }\n },\n created: function created() {\n var _this3 = this;\n\n return __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator___default()( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee2() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _this3.isLoading = true;\n _this3.$store.commit('setFormState', 'email-validation');\n _this3.token = _this3.$route.params.token;\n _this3.product = _this3.$route.params.productCode;\n _this3.loginCode = _this3.$route.query.auth ? _this3.$route.query.auth : 'none';\n _this3.email = _this3.$route.query.email ? _this3.$route.query.email : null;\n\n if (!_this3.isAlreadyVerified) {\n _context2.next = 10;\n break;\n }\n\n _this3.state = STATE_EMAIL_ALREADY_VALIDATED;\n _this3.isLoading = false;\n return _context2.abrupt('return');\n\n case 10:\n if (!(_this3.token === STATE_EMAIL_INITIAL_SEND)) {\n _context2.next = 14;\n break;\n }\n\n _this3.state = STATE_EMAIL_INITIAL_SEND;\n _this3.isLoading = false;\n return _context2.abrupt('return');\n\n case 14:\n _context2.next = 16;\n return __WEBPACK_IMPORTED_MODULE_4_axios___default.a.get('/launchpad/v1/verifyemailtoken.json?token=' + _this3.token).then(function (resp) {\n _this3.tokenResponse = resp.data;\n _this3.state = STATE_EMAIL_VERIFIED;\n _this3.email = resp.data.email;\n }).catch(function (err) {\n var error = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_11__utils_errorHelper__[\"a\" /* handleAPIError */])(_this3.$store, err, 'Something went wrong, please try again');\n switch (err.response.status) {\n case 409:\n _this3.state = STATE_EMAIL_ALREADY_VALIDATED;\n break;\n default:\n _this3.state = STATE_EMAIL_ERROR;\n _this3.errorMessage = error.err;\n break;\n }\n }).finally(function () {\n _this3.isLoading = false;\n });\n\n case 16:\n case 'end':\n return _context2.stop();\n }\n }\n }, _callee2, _this3);\n }))();\n },\n unmounted: function unmounted() {\n this.$store.commit('setFormState', '');\n }\n});\n\n/***/ }),\n/* 247 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__ = __webpack_require__(51);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_promise__ = __webpack_require__(83);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_promise___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_promise__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_slicedToArray__ = __webpack_require__(284);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_slicedToArray___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_slicedToArray__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_asyncToGenerator__ = __webpack_require__(50);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_asyncToGenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_asyncToGenerator__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_axios__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_widgets_Loading_Loading_vue__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_widgets_Loading_Loading_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6__components_widgets_Loading_Loading_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_widgets_TwSelect_vue__ = __webpack_require__(219);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_widgets_TwSelect_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7__components_widgets_TwSelect_vue__);\n\n\n\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n// eslint-disable-next-line @teamwork/cfb-rules/component-paths\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_5__components_widgets_PageHeader_PageHeader_vue___default.a,\n Loading: __WEBPACK_IMPORTED_MODULE_6__components_widgets_Loading_Loading_vue___default.a,\n TwSelect: __WEBPACK_IMPORTED_MODULE_7__components_widgets_TwSelect_vue___default.a\n },\n\n props: {\n defaultInfo: {\n type: Object,\n default: function _default() {\n return { industryCategoryId: undefined, sizeId: undefined };\n }\n }\n },\n\n data: function data() {\n return {\n isLoading: false,\n errorMessage: undefined,\n\n companySizes: [],\n industryCategories: [],\n\n model: {\n size: this.defaultInfo.sizeId,\n industryCategory: this.defaultInfo.industryCategoryId\n }\n };\n },\n created: function created() {\n this.init();\n },\n\n\n computed: {\n sizeOptions: function sizeOptions() {\n return this.companySizes.map(function (_ref) {\n var id = _ref.id,\n label = _ref.label;\n return { value: id, label: label };\n });\n },\n industryCategoryOptions: function industryCategoryOptions() {\n return this.industryCategories.map(function (_ref2) {\n var id = _ref2.id,\n name = _ref2.name;\n return { value: id, label: name };\n });\n }\n },\n\n methods: {\n init: function init() {\n var _this = this;\n\n return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_asyncToGenerator___default()( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee() {\n var sizesPromise, industryCategoriesPromise, _ref3, _ref4, companySizes, industryCategories;\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _this.isLoading = true;\n\n _context.prev = 1;\n sizesPromise = __WEBPACK_IMPORTED_MODULE_4_axios___default.a.get('/launchpad/v1/companysizes.json');\n industryCategoriesPromise = __WEBPACK_IMPORTED_MODULE_4_axios___default.a.get('/launchpad/v1/industrycategories.json');\n _context.next = 6;\n return __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_promise___default.a.all([sizesPromise, industryCategoriesPromise]);\n\n case 6:\n _ref3 = _context.sent;\n _ref4 = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_slicedToArray___default()(_ref3, 2);\n companySizes = _ref4[0].data.companysizes;\n industryCategories = _ref4[1].data.industrycategories;\n\n\n _this.companySizes = companySizes;\n _this.industryCategories = industryCategories;\n _context.next = 17;\n break;\n\n case 14:\n _context.prev = 14;\n _context.t0 = _context['catch'](1);\n\n _this.errorMessage = 'Something went wrong. Please try again later.';\n\n case 17:\n\n _this.isLoading = false;\n\n case 18:\n case 'end':\n return _context.stop();\n }\n }\n }, _callee, _this, [[1, 14]]);\n }))();\n },\n save: function save() {\n var _this2 = this;\n\n return __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_asyncToGenerator___default()( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee2() {\n var _model, size, industryCategory, industryCategoryId, companySizeId;\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _model = _this2.model, size = _model.size, industryCategory = _model.industryCategory;\n\n if (!(!size || !industryCategory)) {\n _context2.next = 4;\n break;\n }\n\n _this2.errorMessage = 'Please fill in all fields';\n\n return _context2.abrupt('return');\n\n case 4:\n _context2.prev = 4;\n\n _this2.isLoading = true;\n _this2.errorMessage = undefined;\n\n industryCategoryId = parseInt(industryCategory, 10);\n companySizeId = parseInt(size, 10);\n _context2.next = 11;\n return __WEBPACK_IMPORTED_MODULE_4_axios___default.a.post('/launchpad/v1/industry.json', { industryCategoryId: industryCategoryId, companySizeId: companySizeId });\n\n case 11:\n\n _this2.$emit('saved');\n _context2.next = 17;\n break;\n\n case 14:\n _context2.prev = 14;\n _context2.t0 = _context2['catch'](4);\n\n _this2.errorMessage = 'Something went wrong. Please try again later.';\n\n case 17:\n\n _this2.isLoading = false;\n\n case 18:\n case 'end':\n return _context2.stop();\n }\n }\n }, _callee2, _this2, [[4, 14]]);\n }))();\n }\n }\n});\n\n/***/ }),\n/* 248 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__ = __webpack_require__(51);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator__ = __webpack_require__(50);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_Loading_Loading_vue__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_Loading_Loading_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__components_widgets_Loading_Loading_vue__);\n\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n// eslint-disable-next-line @teamwork/cfb-rules/component-paths\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n components: { Loading: __WEBPACK_IMPORTED_MODULE_3__components_widgets_Loading_Loading_vue___default.a },\n\n props: {\n forced: {\n type: Boolean,\n default: false\n }\n },\n\n data: function data() {\n return {\n isLoading: false,\n errorMessage: undefined,\n\n isSeedShown: false,\n isOnBackupCodesScreen: false,\n\n seed: undefined,\n codeModel: undefined,\n backupCodes: undefined\n };\n },\n\n\n computed: {\n backupCodesFormatted: function backupCodesFormatted() {\n var _this = this;\n\n var halfSize = this.backupCodes.length / 2;\n\n return this.backupCodes.slice(0, halfSize).map(function (code, index) {\n return code + ' ' + _this.backupCodes[halfSize + index];\n }).join('\\n');\n }\n },\n\n methods: {\n getSeed: function getSeed() {\n var _this2 = this;\n\n return __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator___default()( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee() {\n var _ref, data;\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _this2.isLoading = true;\n _this2.errorMessage = undefined;\n\n _context.prev = 2;\n _context.next = 5;\n return __WEBPACK_IMPORTED_MODULE_2_axios___default.a.get('/launchpad/2fa/login/setup/secretkey.json');\n\n case 5:\n _ref = _context.sent;\n data = _ref.data;\n\n\n _this2.seed = data.secretKey;\n _context.next = 13;\n break;\n\n case 10:\n _context.prev = 10;\n _context.t0 = _context['catch'](2);\n\n _this2.errorMessage = 'Can\\'t get 2FA seed, please try again later';\n\n case 13:\n\n _this2.isLoading = false;\n\n case 14:\n case 'end':\n return _context.stop();\n }\n }\n }, _callee, _this2, [[2, 10]]);\n }))();\n },\n setupTfa: function setupTfa() {\n var _this3 = this;\n\n return __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator___default()( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee2() {\n var _ref2, data;\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _this3.isLoading = true;\n _this3.errorMessage = undefined;\n\n _context2.prev = 2;\n _context2.next = 5;\n return __WEBPACK_IMPORTED_MODULE_2_axios___default.a.put('/launchpad/2fa/login/setup/complete.json', { VerificationCode: _this3.codeModel });\n\n case 5:\n _ref2 = _context2.sent;\n data = _ref2.data;\n\n\n _this3.backupCodes = data.codes;\n _this3.isOnBackupCodesScreen = true;\n _context2.next = 14;\n break;\n\n case 11:\n _context2.prev = 11;\n _context2.t0 = _context2['catch'](2);\n\n if (_context2.t0.response.data && _context2.t0.response.data.message) {\n _this3.errorMessage = _context2.t0.response.data.message;\n } else {\n _this3.errorMessage = 'Can\\'t setup 2FA, please try again later';\n }\n\n case 14:\n\n _this3.isLoading = false;\n\n case 15:\n case 'end':\n return _context2.stop();\n }\n }\n }, _callee2, _this3, [[2, 11]]);\n }))();\n }\n }\n});\n\n/***/ }),\n/* 249 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__ = __webpack_require__(51);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator__ = __webpack_require__(50);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_axios__);\n\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n props: {\n display: {\n type: Boolean,\n default: true\n }\n },\n data: function data() {\n return {\n story: false\n };\n },\n created: function created() {\n var _this = this;\n\n return __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator___default()( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee() {\n var version, response;\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n version = 'undefined' || 'published';\n _context.next = 3;\n return __WEBPACK_IMPORTED_MODULE_2_axios___default.a.get('https://api.storyblok.com/v2/cdn/stories/launchpad?version=' + version + '&token=yuo9pU1v4JBrDhbERXWmTwtt');\n\n case 3:\n response = _context.sent;\n\n _this.story = response.data.story.content;\n\n case 5:\n case 'end':\n return _context.stop();\n }\n }\n }, _callee, _this);\n }))();\n }\n});\n\n/***/ }),\n/* 250 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__ = __webpack_require__(51);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator__ = __webpack_require__(50);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_widgets_TwSelect_vue__ = __webpack_require__(219);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_widgets_TwSelect_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5__components_widgets_TwSelect_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__assets_images_contributor_persona_png__ = __webpack_require__(553);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__assets_images_contributor_persona_png___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6__assets_images_contributor_persona_png__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__assets_images_pm_persona_png__ = __webpack_require__(563);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__assets_images_pm_persona_png___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7__assets_images_pm_persona_png__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__assets_images_ops_manager_persona_png__ = __webpack_require__(562);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__assets_images_ops_manager_persona_png___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__assets_images_ops_manager_persona_png__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__assets_images_client_persona_png__ = __webpack_require__(552);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__assets_images_client_persona_png___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9__assets_images_client_persona_png__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__assets_images_icon_check_svg__ = __webpack_require__(559);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__assets_images_icon_check_svg___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10__assets_images_icon_check_svg__);\n\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue___default.a,\n Loading: __WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue___default.a,\n TwSelect: __WEBPACK_IMPORTED_MODULE_5__components_widgets_TwSelect_vue___default.a,\n ContributorPersona: __WEBPACK_IMPORTED_MODULE_6__assets_images_contributor_persona_png___default.a,\n ProjectManagerPersona: __WEBPACK_IMPORTED_MODULE_7__assets_images_pm_persona_png___default.a,\n OpsManagerPersona: __WEBPACK_IMPORTED_MODULE_8__assets_images_ops_manager_persona_png___default.a,\n ClientPersona: __WEBPACK_IMPORTED_MODULE_9__assets_images_client_persona_png___default.a\n },\n\n data: function data() {\n return {\n checkIcon: __WEBPACK_IMPORTED_MODULE_10__assets_images_icon_check_svg___default.a,\n isLoading: false,\n errorMessage: undefined,\n personasList: [{\n label: 'Individual contributor',\n value: 'contributor',\n icon: __WEBPACK_IMPORTED_MODULE_6__assets_images_contributor_persona_png___default.a,\n description: 'I deliver work assigned to me'\n }, {\n label: 'Project manager',\n value: 'manager',\n icon: __WEBPACK_IMPORTED_MODULE_7__assets_images_pm_persona_png___default.a,\n description: 'I oversee the work of others'\n }, {\n label: 'Operations Manager',\n value: 'ops-manager',\n icon: __WEBPACK_IMPORTED_MODULE_8__assets_images_ops_manager_persona_png___default.a,\n description: 'I optimize operational workflows'\n }, {\n label: 'Client',\n value: 'client',\n icon: __WEBPACK_IMPORTED_MODULE_9__assets_images_client_persona_png___default.a,\n description: 'I commission the project'\n }],\n selectedPersona: null\n };\n },\n\n\n methods: {\n onSelect: function onSelect(value) {\n this.selectedPersona = value;\n },\n onSubmit: function onSubmit() {\n var _this = this;\n\n return __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_asyncToGenerator___default()( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee() {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (_this.selectedPersona) {\n _context.next = 3;\n break;\n }\n\n _this.errorMessage = 'Please select a role';\n return _context.abrupt('return');\n\n case 3:\n\n _this.isLoading = true;\n _this.errorMessage = undefined;\n\n _context.next = 7;\n return __WEBPACK_IMPORTED_MODULE_2_axios___default.a.patch('/launchpad/v1/user/meta.json', { userPersona: _this.selectedPersona }).then(function () {\n _this.$emit('saved');\n }).catch(function (error) {\n _this.errorMessage = 'Something went wrong. Please try again later. \\n Details: ' + error;\n }).finally(function () {\n _this.isLoading = false;\n });\n\n case 7:\n case 'end':\n return _context.stop();\n }\n }\n }, _callee, _this);\n }))();\n }\n },\n unmounted: function unmounted() {\n this.$store.commit('setFormState', '');\n }\n});\n\n/***/ }),\n/* 251 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__assets_images_product_icon_projects_svg__ = __webpack_require__(214);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__assets_images_product_icon_projects_svg___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__assets_images_product_icon_projects_svg__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__assets_images_product_icon_chat_svg__ = __webpack_require__(211);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__assets_images_product_icon_chat_svg___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__assets_images_product_icon_chat_svg__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__assets_images_product_icon_desk_svg__ = __webpack_require__(213);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__assets_images_product_icon_desk_svg___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__assets_images_product_icon_desk_svg__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__assets_images_product_icon_crm_svg__ = __webpack_require__(212);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__assets_images_product_icon_crm_svg___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__assets_images_product_icon_crm_svg__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__assets_images_product_icon_spaces_svg__ = __webpack_require__(215);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__assets_images_product_icon_spaces_svg___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5__assets_images_product_icon_spaces_svg__);\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n// eslint-disable-next-line @teamwork/cfb-rules/component-paths\n\n\n\n\n\n\nvar logos = {\n projects: __WEBPACK_IMPORTED_MODULE_1__assets_images_product_icon_projects_svg___default.a,\n chat: __WEBPACK_IMPORTED_MODULE_2__assets_images_product_icon_chat_svg___default.a,\n desk: __WEBPACK_IMPORTED_MODULE_3__assets_images_product_icon_desk_svg___default.a,\n crm: __WEBPACK_IMPORTED_MODULE_4__assets_images_product_icon_crm_svg___default.a,\n spaces: __WEBPACK_IMPORTED_MODULE_5__assets_images_product_icon_spaces_svg___default.a\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n props: {\n /** @type {{ code, url, title, description }} */\n products: {\n type: Array,\n default: function _default() {\n return [];\n }\n }\n },\n\n computed: {\n productItems: function productItems() {\n return this.products.map(function (product) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, product, { logoUrl: logos[product.code] });\n });\n }\n }\n});\n\n/***/ }),\n/* 252 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n// eslint-disable-next-line @teamwork/cfb-rules/component-paths\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n props: {\n value: {\n type: null,\n required: true\n },\n\n name: {\n type: String,\n required: true\n },\n\n label: {\n type: String,\n default: ''\n },\n\n /** @type {{ label: string; value: string }} */\n options: {\n type: Array,\n required: true\n }\n },\n data: function data() {\n return {\n innerValue: ''\n };\n },\n\n computed: {\n empty: function empty() {\n return this.innerValue.length === 0;\n },\n isRequired: function isRequired() {\n return true;\n },\n fieldLabel: function fieldLabel() {\n var label = this.label || this.name;\n return this.isRequired ? label + ' *' : label;\n }\n },\n watch: {\n value: function value(newVal) {\n this.innerValue = newVal;\n }\n },\n created: function created() {\n if (this.value) {\n this.innerValue = this.value;\n }\n },\n\n methods: {\n blur: function blur() {\n this.$refs.select.blur();\n this.$emit('item-selected');\n }\n }\n});\n\n/***/ }),\n/* 253 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__utils_uiHelper__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_sections_SiteNotFound_SiteNotFound_vue__ = __webpack_require__(584);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_sections_SiteNotFound_SiteNotFound_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__components_sections_SiteNotFound_SiteNotFound_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_sections_ErrorMessage_ErrorMessage_vue__ = __webpack_require__(578);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_sections_ErrorMessage_ErrorMessage_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__components_sections_ErrorMessage_ErrorMessage_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_widgets_Loading_Loading_vue__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_widgets_Loading_Loading_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5__components_widgets_Loading_Loading_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_sections_MarketingContent_MarketingContent_vue__ = __webpack_require__(583);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_sections_MarketingContent_MarketingContent_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6__components_sections_MarketingContent_MarketingContent_vue__);\n\n\n\n\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'Launchpad',\n components: {\n SiteNotFound: __WEBPACK_IMPORTED_MODULE_3__components_sections_SiteNotFound_SiteNotFound_vue___default.a,\n ErrorMessage: __WEBPACK_IMPORTED_MODULE_4__components_sections_ErrorMessage_ErrorMessage_vue___default.a,\n Loading: __WEBPACK_IMPORTED_MODULE_5__components_widgets_Loading_Loading_vue___default.a,\n MarketingContent: __WEBPACK_IMPORTED_MODULE_6__components_sections_MarketingContent_MarketingContent_vue___default.a\n },\n mounted: function mounted() {\n var _this = this;\n\n this.$store.dispatch('setupBasicInfo', {\n query: this.$route.query,\n params: this.$route.params\n }).then(function () {\n if (_this.loginType === 'account') {\n _this.$store.dispatch('getSiteInfo', _this.$route);\n } else {\n _this.$store.commit('setSiteInfo', _this.$store.state.site.siteInfo);\n _this.$store.dispatch('setPageTitle', _this.$route.meta.title);\n }\n });\n\n document.body.addEventListener('focus', function (e) {\n var t = e.target.closest('.w-input');\n if (t) {\n var i = t.querySelector('.w-input__input');\n if (i && i.value === '') t.classList.add('is-moved');\n }\n }, true);\n\n document.body.addEventListener('blur', function (e) {\n var t = e.target.closest('.w-input');\n if (t) {\n var i = t.querySelector('.w-input__input');\n if (i && i.value === '') t.classList.remove('is-moved');\n }\n }, true);\n\n document.querySelectorAll('.w-input .w-input__input').forEach(function (el) {\n if (el.value !== '') {\n el.parentElement.classList.add('is-moved');\n }\n });\n\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__utils_uiHelper__[\"a\" /* smartFocus */])();\n },\n\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* mapState */])({\n siteNotFound: function siteNotFound(state) {\n return state.site.siteNotFound;\n },\n siteLoading: function siteLoading(state) {\n if (state.login.loginType === 'generic' && !state.login.waf) return true;\n return state.site.siteLoading;\n },\n fatalError: function fatalError(state) {\n return state.login.fatalError.error;\n },\n allowBranding: function allowBranding(state) {\n return state.site.siteInfo.displayOptions.hasTeamworkBranding;\n },\n loginType: function loginType(state) {\n return state.login.loginType;\n },\n siteName: function siteName(state) {\n return state.site.siteInfo.name;\n },\n siteLogo: function siteLogo(state) {\n return state.login.meta.isIframe ? '' : state.site.siteInfo.logo;\n }, // eslint-disable-line\n isIframe: function isIframe(state) {\n return state.login.meta.isIframe;\n },\n inAppLogin: function inAppLogin(state) {\n return state.login.loginType === 'app';\n },\n inGenericLogin: function inGenericLogin(state) {\n return state.login.loginType === 'generic';\n },\n isPersonaCapture: function isPersonaCapture(state) {\n return state.login.formState === 'persona-capture';\n },\n isEmailValidation: function isEmailValidation(state) {\n return state.login.formState === 'email-validation';\n }\n }), __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"b\" /* mapGetters */])({\n bodyClasses: 'bodyClasses'\n }), {\n showSiteLogo: function showSiteLogo() {\n return !this.siteNotFound && this.siteLogo && !this.$route.meta.hideSiteLogo;\n },\n displayMarketingContent: function displayMarketingContent() {\n return !this.siteLoading && !this.siteNotFound && !this.isIframe && !this.inAppLogin && this.inGenericLogin && this.$route.name === 'Login';\n }\n }),\n watch: {\n $route: function $route() {\n this.$store.dispatch('setPageTitle', this.$route.meta.title);\n },\n displayMarketingContent: function displayMarketingContent(value) {\n if (value) this.loadVWO();\n }\n },\n methods: {\n reload: function reload() {\n window.location.reload();\n },\n loadVWO: function loadVWO() {\n var _this2 = this;\n\n var script = document.createElement('script');\n script.type = 'text/javascript';\n script.id = 'vwoCode';\n script.text = '\\n window._vwo_code || (function() {\\n var account_id=720001,\\n version=2.1,\\n settings_tolerance=2000,\\n hide_element=\\'body\\',\\n hide_element_style = \\'opacity:0 !important;filter:alpha(opacity=0) !important;background:none !important;transition:none !important;\\',\\n /* DO NOT EDIT BELOW THIS LINE */\\n f=false,w=window,d=document,v=d.querySelector(\\'#vwoCode\\'),cK=\\'_vwo_\\'+account_id+\\'_settings\\',cc={};try{var c=JSON.parse(localStorage.getItem(\\'_vwo_\\'+account_id+\\'_config\\'));cc=c&&typeof c===\\'object\\'?c:{}}catch(e){}var stT=cc.stT===\\'session\\'?w.sessionStorage:w.localStorage;code={nonce:v&&v.nonce,use_existing_jquery:function(){return typeof use_existing_jquery!==\\'undefined\\'?use_existing_jquery:undefined},library_tolerance:function(){return typeof library_tolerance!==\\'undefined\\'?library_tolerance:undefined},settings_tolerance:function(){return cc.sT||settings_tolerance},hide_element_style:function(){return\\'{\\'+(cc.hES||hide_element_style)+\\'}\\'},hide_element:function(){if(performance.getEntriesByName(\\'first-contentful-paint\\')[0]){return\\'\\'}return typeof cc.hE===\\'string\\'?cc.hE:hide_element},getVersion:function(){return version},finish:function(e){if(!f){f=true;var t=d.getElementById(\\'_vis_opt_path_hides\\');if(t)t.parentNode.removeChild(t);if(e)(new Image).src=\\'https://dev.visualwebsiteoptimizer.com/ee.gif?a=\\'+account_id+e}},finished:function(){return f},addScript:function(e){var t=d.createElement(\\'script\\');t.type=\\'text/javascript\\';if(e.src){t.src=e.src}else{t.text=e.text}v&&t.setAttribute(\\'nonce\\',v.nonce);d.getElementsByTagName(\\'head\\')[0].appendChild(t)},load:function(e,t){var n=this.getSettings(),i=d.createElement(\\'script\\'),r=this;t=t||{};if(n){i.textContent=n;d.getElementsByTagName(\\'head\\')[0].appendChild(i);if(!w.VWO||VWO.caE){stT.removeItem(cK);r.load(e)}}else{var o=new XMLHttpRequest;o.open(\\'GET\\',e,true);o.withCredentials=!t.dSC;o.responseType=t.responseType||\\'text\\';o.onload=function(){if(t.onloadCb){return t.onloadCb(o,e)}if(o.status===200||o.status===304){_vwo_code.addScript({text:o.responseText})}else{_vwo_code.finish(\\'&e=loading_failure:\\'+e)}};o.onerror=function(){if(t.onerrorCb){return t.onerrorCb(e)}_vwo_code.finish(\\'&e=loading_failure:\\'+e)};o.send()}},getSettings:function(){try{var e=stT.getItem(cK);if(!e){return}e=JSON.parse(e);if(Date.now()>e.e){stT.removeItem(cK);return}return e.s}catch(e){return}},init:function(){if(d.URL.indexOf(\\'__vwo_disable__\\')>-1)return;var e=this.settings_tolerance();w._vwo_settings_timer=setTimeout(function(){_vwo_code.finish();stT.removeItem(cK)},e);var t;if(this.hide_element()!==\\'body\\'){t=d.createElement(\\'style\\');var n=this.hide_element(),i=n?n+this.hide_element_style():\\'\\',r=d.getElementsByTagName(\\'head\\')[0];t.setAttribute(\\'id\\',\\'_vis_opt_path_hides\\');v&&t.setAttribute(\\'nonce\\',v.nonce);t.setAttribute(\\'type\\',\\'text/css\\');if(t.styleSheet)t.styleSheet.cssText=i;else t.appendChild(d.createTextNode(i));r.appendChild(t)}else{t=d.getElementsByTagName(\\'head\\')[0];var i=d.createElement(\\'div\\');i.style.cssText=\\'z-index: 2147483647 !important;position: fixed !important;left: 0 !important;top: 0 !important;width: 100% !important;height: 100% !important;background: white !important;display: block !important;\\';i.setAttribute(\\'id\\',\\'_vis_opt_path_hides\\');i.classList.add(\\'_vis_hide_layer\\');t.parentNode.insertBefore(i,t.nextSibling)}var o=window._vis_opt_url||d.URL,s=\\'https://dev.visualwebsiteoptimizer.com/j.php?a=\\'+account_id+\\'&u=\\'+encodeURIComponent(o)+\\'&vn=\\'+version;if(w.location.search.indexOf(\\'_vwo_xhr\\')!==-1){this.addScript({src:s})}else{this.load(s+\\'&x=true\\')}}};w._vwo_code=code;code.init();})();\\n ';\n document.head.appendChild(script);\n\n var vwoOnVariationApplied = function vwoOnVariationApplied(data) {\n if (!data) return;\n var campaign = data[1],\n variation = data[2];\n\n _this2.$store.dispatch('appendExperimentTracking', { campaign: campaign, variation: variation });\n };\n\n window.VWO = window.VWO || [];\n window.VWO.push(['onVariationApplied', vwoOnVariationApplied]);\n }\n }\n});\n\n/***/ }),\n/* 254 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_axios__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__utils_errorHelper__ = __webpack_require__(48);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_widgets_Loading_Loading_vue__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_widgets_Loading_Loading_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5__components_widgets_Loading_Loading_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_PasswordInput_vue__ = __webpack_require__(146);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_PasswordInput_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6__components_PasswordInput_vue__);\n\n\n\n\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'AcceptInvite',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_4__components_widgets_PageHeader_PageHeader_vue___default.a,\n Loading: __WEBPACK_IMPORTED_MODULE_5__components_widgets_Loading_Loading_vue___default.a,\n PasswordInput: __WEBPACK_IMPORTED_MODULE_6__components_PasswordInput_vue___default.a\n },\n data: function data() {\n return {\n product: {\n name: 'Teamwork.com',\n code: '',\n url: '',\n helpDocsLink: 'https://www.teamwork.com/support'\n },\n\n user: {\n id: 0,\n userId: '',\n firstName: '',\n lastName: '',\n chatHandle: '',\n password: ''\n },\n\n expired: false,\n formError: '',\n isLoading: true,\n nameIsSetInProjects: false\n };\n },\n created: function created() {\n this.code = this.$route.query.code;\n this.product.code = this.$route.params.productCode ? this.$route.params.productCode : 'chat';\n this.getValidateInviteCode();\n },\n\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2_vuex__[\"a\" /* mapState */])({\n siteInfo: function siteInfo(state) {\n return state.site.siteInfo;\n }\n }), {\n title: function title() {\n if (this.expired) return 'Invalid Code';\n if (!this.siteInfo.displayOptions.showSiteNameOnLoginScreen) {\n if (this.nameIsSetInProjects) return 'Welcome ' + this.user.firstName + '!';\n return 'Welcome!';\n } else if (!this.nameIsSetInProjects) return 'Hi, welcome to ' + this.siteInfo.name + '!';\n return 'Hi ' + this.user.firstName + ', welcome to ' + this.siteInfo.name + '!';\n },\n canSubmit: function canSubmit() {\n var isValid = this.user && this.user.firstName.length && this.user.lastName.length && this.user.password.length;\n\n if (this.isProductChat) {\n return isValid && this.user.chatHandle.length;\n }\n\n return isValid;\n },\n isProductChat: function isProductChat() {\n return this.product.code === 'chat';\n },\n isProductProjects: function isProductProjects() {\n return this.product.code === 'projects';\n },\n showNameInputs: function showNameInputs() {\n return !this.isProductProjects || !this.nameIsSetInProjects;\n },\n subTitle: function subTitle() {\n if (this.isProductProjects && !this.showNameInputs) {\n return 'Please choose a password to get started.';\n }\n return 'Fill out your details below to get started.';\n },\n loginLink: function loginLink() {\n var url = '/login';\n if (this.$route.params.productCode) url += '/' + this.$route.params.productCode;\n return url;\n }\n }),\n methods: {\n onSubmit: function onSubmit() {\n var _this = this;\n\n if (!this.canSubmit || this.isLoading) return;\n this.isLoading = true;\n\n var data = {\n firstName: this.user.firstName,\n lastName: this.user.lastName,\n password: this.user.password\n };\n\n var url = '/launchpad/v1/join.json?code=' + this.code;\n\n if (this.isProductChat) data.userHandle = this.user.chatHandle;else if (this.isProductProjects) {\n data.code = this.code;\n data.userId = this.user.userId;\n url = '/acceptinviteprojects.json';\n }\n\n __WEBPACK_IMPORTED_MODULE_1_axios___default.a.post(url, data).then(function (response) {\n if (_this.isProductProjects && response.data.error) {\n _this.formError = response.data.message;\n _this.isLoading = false;\n } else {\n window.location.href = response.data.redirectURL;\n }\n }).catch(function (e) {\n var apiError = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__utils_errorHelper__[\"a\" /* handleAPIError */])(_this.$store, e, 'An error has occurred');\n if (apiError && apiError.type === __WEBPACK_IMPORTED_MODULE_3__utils_errorHelper__[\"b\" /* ERROR_TYPE */].FORM_ERROR && (apiError.err === 'User not invited' || apiError.err === 'User not found')) {\n _this.$store.commit('showFatalError', {\n error: 'Invalid Invite Code',\n message: 'The code may have expired, please request another invitation.'\n });\n } else if (apiError && apiError.type === __WEBPACK_IMPORTED_MODULE_3__utils_errorHelper__[\"b\" /* ERROR_TYPE */].FORM_ERROR) {\n _this.formError = apiError.err;\n }\n _this.isLoading = false;\n });\n },\n getValidateInviteCode: function getValidateInviteCode() {\n var _this2 = this;\n\n var url = '/launchpad/v1/join.json?code=' + this.code;\n if (this.isProductProjects) {\n url = '/validateuserinvitecode.json?code=' + this.code;\n }\n\n __WEBPACK_IMPORTED_MODULE_1_axios___default.a.get(url).then(function (response) {\n if (response.data.error) {\n var err = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__utils_errorHelper__[\"a\" /* handleAPIError */])(_this2.$store, { response: response }, 'Invalid invite code.');\n if (err.type === __WEBPACK_IMPORTED_MODULE_3__utils_errorHelper__[\"b\" /* ERROR_TYPE */].FORM_ERROR) {\n _this2.expired = true;\n } else {\n _this2.$store.commit('showFatalError', {\n error: response.data.error,\n message: response.data.message\n });\n }\n\n _this2.isLoading = false;\n }\n\n if (!_this2.isProductProjects) {\n // Save product info\n _this2.product.name = response.data.productName;\n _this2.product.code = response.data.productCode;\n _this2.product.url = response.data.productUrl;\n _this2.product.helpDocsLink = response.data.productHelpDocsLink;\n }\n\n // not yet accepted, show form to update details\n if (response.data.userId) {\n _this2.user.id = response.data.userId;\n _this2.user.firstName = response.data.userFirstName;\n _this2.user.lastName = response.data.userLastName;\n _this2.user.chatHandle = response.data.userChatHandle;\n\n // if invited without name, clear out placeholders\n if (_this2.user.firstName === 'Unknown') {\n _this2.user.firstName = '';\n _this2.user.chatHandle = '';\n }\n if (_this2.user.lastName === 'Unknown') {\n _this2.user.lastName = '';\n _this2.user.chatHandle = '';\n }\n } else if (response.data.userLogin) {\n _this2.nameIsSetInProjects = response.data.nameIsSet;\n _this2.user.userId = response.data.userLogin;\n if (_this2.nameIsSetInProjects) {\n _this2.user.firstName = response.data.firstName;\n _this2.user.lastName = response.data.lastName;\n }\n }\n\n _this2.isLoading = false;\n }).catch(function (e) {\n var err = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__utils_errorHelper__[\"a\" /* handleAPIError */])(_this2.$store, e, 'Invalid invite code.');\n // most likely, the invite code has expired, show fatal anyway\n if (err) {\n if (err.type === __WEBPACK_IMPORTED_MODULE_3__utils_errorHelper__[\"b\" /* ERROR_TYPE */].FORM_ERROR) {\n _this2.expired = true;\n } else {\n _this2.$store.commit('showFatalError', {\n error: 'Invalid Invite Code',\n message: 'The code may have expired or has already been used, please request another invitation or try to log in.'\n });\n }\n }\n\n _this2.isLoading = false;\n });\n },\n reload: function reload() {\n window.location.reload();\n }\n }\n});\n\n/***/ }),\n/* 255 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_assign__ = __webpack_require__(82);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_assign___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_assign__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__utils_uiHelper__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_widgets_Loading_Loading_vue__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_widgets_Loading_Loading_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6__components_widgets_Loading_Loading_vue__);\n\n\n\n\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'ForgotPassword',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_5__components_widgets_PageHeader_PageHeader_vue___default.a,\n Loading: __WEBPACK_IMPORTED_MODULE_6__components_widgets_Loading_Loading_vue___default.a\n },\n data: function data() {\n return {\n email: '',\n\n passwordReset: false,\n isLoading: false,\n formError: ''\n };\n },\n created: function created() {\n if (this.$route.query.email) {\n this.email = this.$route.query.email;\n var query = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_assign___default()({}, this.$route.query);\n delete query.email;\n this.$router.replace({ query: query });\n }\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_4__utils_uiHelper__[\"a\" /* smartFocus */])();\n },\n\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3_vuex__[\"a\" /* mapState */])({\n loginType: function loginType(state) {\n return state.login.loginType;\n }\n }), {\n canSubmit: function canSubmit() {\n return this.email.trim().length;\n },\n loginLink: function loginLink() {\n var url = '/login';\n if (this.$route.params.productCode) url += '/' + this.$route.params.productCode;\n return url;\n }\n }),\n methods: {\n onSubmit: function onSubmit() {\n var _this = this;\n\n if (!this.canSubmit || this.isLoading) return;\n this.isLoading = true;\n this.formError = '';\n\n var url = '/launchpad/v1/forgotpassword.json';\n if (this.loginType !== 'account') url += '?generic=true';\n\n __WEBPACK_IMPORTED_MODULE_2_axios___default.a.post(url, { email: this.email.trim() }).then(function () {\n _this.passwordReset = true;\n _this.isLoading = false;\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_4__utils_uiHelper__[\"a\" /* smartFocus */])();\n }).catch(function () {\n _this.formError = 'Failed to reset your password, please double-check your email address.';\n _this.isLoading = false;\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_4__utils_uiHelper__[\"a\" /* smartFocus */])();\n });\n },\n reload: function reload() {\n window.location.reload();\n }\n }\n});\n\n/***/ }),\n/* 256 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_sections_Login_StandardForm_StandardForm_vue__ = __webpack_require__(581);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_sections_Login_StandardForm_StandardForm_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__components_sections_Login_StandardForm_StandardForm_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_sections_Login_SAMLStarter_SAMLStarter_vue__ = __webpack_require__(580);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_sections_Login_SAMLStarter_SAMLStarter_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__components_sections_Login_SAMLStarter_SAMLStarter_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_sections_Login_SAMLForm_SAMLForm_vue__ = __webpack_require__(579);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_sections_Login_SAMLForm_SAMLForm_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5__components_sections_Login_SAMLForm_SAMLForm_vue__);\n\n\n\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'Login',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue___default.a,\n standard: __WEBPACK_IMPORTED_MODULE_3__components_sections_Login_StandardForm_StandardForm_vue___default.a,\n 'saml-first': __WEBPACK_IMPORTED_MODULE_4__components_sections_Login_SAMLStarter_SAMLStarter_vue___default.a,\n 'saml-email': __WEBPACK_IMPORTED_MODULE_5__components_sections_Login_SAMLForm_SAMLForm_vue___default.a\n },\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"b\" /* mapGetters */])({\n samlURL: 'samlURL',\n googleSSOURL: 'googleSSOURL'\n }), __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* mapState */])({\n loginType: function loginType(state) {\n return state.login.loginType;\n },\n loginState: function loginState(state) {\n return state.login.loginState;\n }\n }))\n});\n\n/***/ }),\n/* 257 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__utils_urlHelper__ = __webpack_require__(49);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue__);\n\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'Logout',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue___default.a\n },\n data: function data() {\n return {\n logoutMessage: 'You are now signed out. Have a great day!'\n };\n },\n created: function created() {\n if (this.$route.query.message) this.logoutMessage = this.$route.query.message;\n },\n\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* mapState */])({\n loggedIn: function loggedIn(state) {\n return state.login.loggedIn;\n },\n loginType: function loginType(state) {\n return state.login.loginType;\n },\n appInfo: function appInfo(state) {\n return state.login.appInfo;\n },\n siteInfo: function siteInfo(state) {\n return state.site.siteInfo;\n },\n afterLoginURL: function afterLoginURL(state) {\n return state.login.afterLoginURL;\n },\n // eslint-disable-next-line\n title: function title(state) {\n return state.site.siteInfo.displayOptions.showSiteNameOnLoginScreen ? state.site.siteInfo.name : 'Log in';\n },\n inAppLogin: function inAppLogin(state) {\n return state.login.loginType === 'app';\n }\n }), {\n logoutMessageHTML: function logoutMessageHTML() {\n return this.logoutMessage.replace(/>/g, '>').replace(/');\n }\n }),\n methods: {\n onSubmitLogin: function onSubmitLogin() {\n var route = '/login';\n var query = {};\n\n if (this.$route.params.productCode) route += '/' + this.$route.params.productCode;\n\n if (this.inAppLogin) {\n query.generic = true;\n query.redirect_uri = this.appInfo.redirect_uri;\n if (this.appInfo.state) query.state = this.appInfo.state;\n if (this.appInfo.client_id) query.client_id = this.appInfo.client_id;\n if (this.appInfo.scope) query.scope = this.appInfo.scope;\n }\n\n route += '?' + __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__utils_urlHelper__[\"a\" /* buildQueryString */])(query);\n\n if (this.siteInfo.sso.enabled && this.siteInfo.sso.loginStyle === 'SSO automatic-start') {\n window.location.href = '/launchpad/saml/start?SAMLAfterLoginURL=' + encodeURIComponent(this.afterLoginURL);\n return;\n }\n\n this.$router.push(route);\n }\n },\n watch: {\n loggedIn: function loggedIn(_loggedIn) {\n if (this.loginType === 'account' && _loggedIn) this.onSubmitLogin();\n }\n }\n});\n\n/***/ }),\n/* 258 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_axios__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_PasswordInput_vue__ = __webpack_require__(146);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_PasswordInput_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5__components_PasswordInput_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__utils_errorHelper__ = __webpack_require__(48);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__utils_uiHelper__ = __webpack_require__(31);\n\n\n\n\n\n\n\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'ForgotPassword',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue___default.a,\n Loading: __WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue___default.a,\n PasswordInput: __WEBPACK_IMPORTED_MODULE_5__components_PasswordInput_vue___default.a\n },\n data: function data() {\n return {\n userId: 0,\n token: '',\n\n password: '',\n\n state: 'normal',\n formError: '',\n isLoading: false\n };\n },\n created: function created() {\n this.userId = this.$route.params.userId;\n this.token = this.$route.params.token;\n\n this.validateResetToken();\n },\n mounted: function mounted() {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_7__utils_uiHelper__[\"a\" /* smartFocus */])();\n },\n\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2_vuex__[\"a\" /* mapState */])({\n apps: function apps(state) {\n return state.site.siteInfo.apps;\n },\n siteURL: function siteURL(state) {\n return state.site.siteInfo.url;\n }\n }), {\n canSubmit: function canSubmit() {\n return this.password.length;\n },\n title: function title() {\n if (this.state === 'success') return 'Password updated';\n return 'Reset password';\n },\n subTitle: function subTitle() {\n if (this.state === 'success' && this.user) {\n return this.user.FirstName + ', your password has been changed.';\n }\n return 'Please enter the desired password for your account below.';\n }\n }),\n watch: {\n isLoading: function isLoading() {\n window.parent.postMessage('pageResized', '*');\n }\n },\n methods: {\n validateResetToken: function validateResetToken() {\n var _this = this;\n\n __WEBPACK_IMPORTED_MODULE_1_axios___default.a.get('/launchpad/v1/validatereset/' + this.userId + '/' + this.token).then(function (response) {\n _this.user = response.data.user;\n _this.isLoading = false;\n }).catch(function () {\n _this.$store.commit('showFatalError', {\n error: 'Token Expired',\n // eslint-disable-next-line\n explanation: 'Sorry we couldn\\'t authorise this request. It\\'s most likely that the link has expired.',\n appError: 'access_denied',\n appErrorExplanation: 'reset token has expired'\n });\n _this.isLoading = false;\n });\n },\n onSubmitReset: function onSubmitReset() {\n var _this2 = this;\n\n if (this.isLoading || !this.canSubmit) return false;\n this.isLoading = true;\n this.formError = '';\n return __WEBPACK_IMPORTED_MODULE_1_axios___default.a.post('/launchpad/resetpassword/' + this.userId + '/' + this.token, 'password=' + encodeURIComponent(this.password)).then(function () {\n _this2.state = 'success';\n _this2.isLoading = false;\n }).catch(function (e) {\n var err = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__utils_errorHelper__[\"a\" /* handleAPIError */])(_this2.$store, e, 'unknown error');\n console.log(err, err.type, err.err);\n if (err && err.type === __WEBPACK_IMPORTED_MODULE_6__utils_errorHelper__[\"b\" /* ERROR_TYPE */].FORM_ERROR && err.err !== 'unknown error') {\n _this2.formError = err.err;\n } else {\n _this2.$store.commit('showFatalError', {\n error: 'Token Expired',\n // eslint-disable-next-line\n explanation: 'Sorry we couldn\\'t authorise this request. It\\'s most likely that the link has expired.',\n appError: 'access_denied',\n appErrorExplanation: 'reset token has expired'\n });\n }\n _this2.isLoading = false;\n });\n },\n reload: function reload() {\n window.location.reload();\n }\n }\n});\n\n/***/ }),\n/* 259 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__utils_appLoginHelper__ = __webpack_require__(43);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__utils_errorHelper__ = __webpack_require__(48);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__utils_uiHelper__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_sections_AppConsent_AppConsent_vue__ = __webpack_require__(147);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_sections_AppConsent_AppConsent_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7__components_sections_AppConsent_AppConsent_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_sections_GDPRConsent_GDPRConsent_vue__ = __webpack_require__(148);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_sections_GDPRConsent_GDPRConsent_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__components_sections_GDPRConsent_GDPRConsent_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_sections_Login_CompanyInfo_vue__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_sections_Login_CompanyInfo_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9__components_sections_Login_CompanyInfo_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_widgets_Loading_Loading_vue__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_widgets_Loading_Loading_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10__components_widgets_Loading_Loading_vue__);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'Login',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_6__components_widgets_PageHeader_PageHeader_vue___default.a,\n Loading: __WEBPACK_IMPORTED_MODULE_10__components_widgets_Loading_Loading_vue___default.a,\n AppConsent: __WEBPACK_IMPORTED_MODULE_7__components_sections_AppConsent_AppConsent_vue___default.a,\n 'gdpr-consent': __WEBPACK_IMPORTED_MODULE_8__components_sections_GDPRConsent_GDPRConsent_vue___default.a,\n CompanyInfo: __WEBPACK_IMPORTED_MODULE_9__components_sections_Login_CompanyInfo_vue___default.a\n },\n data: function data() {\n return {\n code: '',\n app: {},\n gdprSeen: false,\n companyInfo: undefined,\n\n state: 'normal',\n isLoading: true\n };\n },\n created: function created() {\n if (!this.$route.query.samlauth || !this.$route.query.iv) {\n this.$store.commit('showFatalError', {\n error: 'Login Failed',\n message: 'Invalid parameters',\n explanation: 'Missing required parameters. Please try again.',\n\n appError: 'server_error',\n appErrorExplanation: 'saml authentication failed, invalid parameters'\n });\n return;\n }\n this.postSAMLAuth();\n },\n\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* mapState */])({\n afterLoginURL: function afterLoginURL(state) {\n var baseURL = '';\n if (state.login.loginType === 'account') {\n baseURL = window.location.href.replace(/(\\/launchpad\\/saml\\/auth)\\/?/, '/');\n }\n return state.login.afterLoginURL || baseURL;\n },\n // eslint-disable-next-line\n title: function title(state) {\n return state.site.siteInfo.displayOptions.showSiteNameOnLoginScreen ? state.site.siteInfo.name : 'Log in';\n },\n loginType: function loginType(state) {\n return state.login.loginType;\n },\n loginState: function loginState(state) {\n return state.login.loginState;\n },\n appInfo: function appInfo(state) {\n return state.login.appInfo;\n },\n inAppLogin: function inAppLogin(state) {\n return state.login.loginType === 'app';\n }\n })),\n methods: {\n postSAMLAuth: function postSAMLAuth() {\n var _this = this;\n\n var sa = this.$route.query.samlauth;\n var iv = this.$route.query.iv;\n var data = {\n samlauth: sa.replace(/ /g, '+'),\n iv: iv.replace(/ /g, '+'),\n SAMLAfterLoginURL: this.$route.query.SAMLAfterLoginURL\n };\n\n var url = '/launchpad/v1/saml/auth.json';\n var appAuth = !!this.$route.query.appAuth;\n if (appAuth) {\n url += '?appAuth=true';\n data.redirect_uri = this.appInfo.redirect_uri;\n data.state = this.appInfo.state;\n data.client_id = this.appInfo.client_id;\n data.scope = this.appInfo.scope;\n data.install = this.appInfo.install;\n if (this.appInfo.nonce) data.nonce = this.appInfo.nonce;\n }\n\n if (this.gdprSeen) data.gdprSeen = true;\n\n __WEBPACK_IMPORTED_MODULE_2_axios___default.a.post(url, data).then(function (response) {\n if (response.data.setupScreenRequired) {\n var _response$data = response.data,\n industryCategoryId = _response$data.industryCategoryId,\n companySizeId = _response$data.companySizeId;\n\n\n _this.companyInfo = {\n industryCategoryId: industryCategoryId || undefined,\n sizeId: companySizeId || undefined\n };\n\n _this.state = 'company-info';\n _this.isLoading = false;\n\n return;\n }\n\n if (!response.data.gdprSeen) {\n _this.state = 'gdpr-consent';\n _this.gdprSeen = true;\n _this.isLoading = false;\n return;\n }\n\n _this.code = response.data.code;\n\n if (_this.inAppLogin) {\n _this.app = response.data.app;\n\n if (_this.app.consentRequired === false) {\n // allow skipping screen for our own apps\n __WEBPACK_IMPORTED_MODULE_2_axios___default.a.post('/launchpad/v1/token/consent.json', { code: _this.code }).then(function (res) {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__utils_appLoginHelper__[\"c\" /* redirectToApp */])(_this.appInfo, res.data.code);\n }).catch(function () {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__utils_appLoginHelper__[\"a\" /* redirectToAppWithError */])(_this.appInfo, 'failed_to_consent', 'impossible to consent');\n });\n } else {\n _this.state = 'app-consent';\n }\n\n _this.isLoading = false;\n return;\n }\n\n _this.$store.commit('setLoggedIn', {\n loggedIn: true,\n userId: response.data.userId\n });\n\n if (window.opener && _this.$store.state.login.meta.hasLocalStorage && sessionStorage.getItem('shouldCloseOpener') === 'true') {\n sessionStorage.setItem('shouldCloseOpener', 'false');\n window.close();\n }\n\n var location = response.data.redirectURL || _this.afterLoginURL;\n window.location.href = location;\n }).catch(function (e) {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_4__utils_errorHelper__[\"a\" /* handleAPIError */])(_this.$store, e, 'Sorry, something went wrong and we could not log you in.');\n _this.isLoading = false;\n\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_5__utils_uiHelper__[\"a\" /* smartFocus */])();\n });\n },\n reload: function reload() {\n window.location.reload();\n }\n }\n});\n\n/***/ }),\n/* 260 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_axios__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_widgets_AccountList_AccountList_vue__ = __webpack_require__(217);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_widgets_AccountList_AccountList_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5__components_widgets_AccountList_AccountList_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__utils_uiHelper__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__utils_urlHelper__ = __webpack_require__(49);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__utils_appLoginHelper__ = __webpack_require__(43);\n\n\n\n\n\n\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'SelectAccount',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue___default.a,\n AccountList: __WEBPACK_IMPORTED_MODULE_5__components_widgets_AccountList_AccountList_vue___default.a,\n Loading: __WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue___default.a\n },\n data: function data() {\n return {\n accounts: [],\n gad: '',\n\n isLoading: false\n };\n },\n created: function created() {\n this.gad = this.$route.query.gad;\n\n if (!this.gad) {\n this.$store.commit('showFatalError', {\n error: 'Login Failed',\n explanation: 'Invalid parameters, Google token is missing.',\n appError: 'access_denied',\n appErrorExplanation: 'google sso failed, gad token missing'\n });\n return;\n }\n\n this.getGoogleAccounts();\n },\n\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2_vuex__[\"a\" /* mapState */])({\n appInfo: function appInfo(state) {\n return state.login.appInfo;\n },\n loginType: function loginType(state) {\n return state.login.loginType;\n },\n meta: function meta(state) {\n return state.login.meta;\n },\n afterLoginURL: function afterLoginURL(state) {\n return state.login.afterLoginURL;\n },\n // eslint-disable-next-line\n title: function title(state) {\n return state.site.siteInfo.displayOptions.showSiteNameOnLoginScreen ? state.site.siteInfo.name : 'Log in';\n },\n inAppLogin: function inAppLogin(state) {\n return state.login.loginType === 'app';\n }\n }), {\n canSubmit: function canSubmit() {\n return this.email.length && this.password.length;\n }\n }),\n methods: {\n getGoogleAccounts: function getGoogleAccounts() {\n var _this = this;\n\n this.isLoading = true;\n\n var data = {\n gad: this.gad\n };\n\n // For app login flow, we want to allow apps to hide some accounts,\n // for example if they are already authenticated.\n if (this.inAppLogin && this.meta.ignoreInstallations) {\n data.ignoreInstallations = this.meta.ignoreInstallations;\n }\n\n if (this.appInfo.redirect_uri) data.redirect_uri = this.appInfo.redirect_uri;\n if (this.appInfo.client_id) data.client_id = this.appInfo.client_id;\n if (this.appInfo.scope) data.scope = this.appInfo.scope;\n if (this.appInfo.install) data.install = this.appInfo.install;\n if (this.appInfo.nonce) data.nonce = this.appInfo.nonce;\n\n __WEBPACK_IMPORTED_MODULE_1_axios___default.a.post('/launchpad/v1/googleSSO/accounts.json', data).then(function (response) {\n // filter out accounts where provided product is disabled\n // note: we will do this on the backend after global data\n // for all products\n var accs = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__utils_appLoginHelper__[\"b\" /* filterAccounts */])(response.data.accounts, _this.meta.product);\n\n // If no accounts found, we redirect user to signup,\n // unless they're in app login flow\n if (accs.length === 0) {\n if (_this.inAppLogin) {\n _this.$store.commit('showFatalError', {\n error: 'Login Failed',\n // eslint-disable-next-line\n explanation: 'We did not find any Teamwork accounts associated with this Google account.',\n appError: 'access_denied',\n appErrorExplanation: 'google sso failed, no teamwork accounts found'\n });\n } else {\n window.location.href = 'https://www.teamwork.com/signup?from=launchpad_google';\n }\n return;\n }\n\n // If we only have one account, skip selection step\n if (accs.length === 1) {\n return _this.onAccountSelected(accs[0]); // eslint-disable-line\n }\n\n _this.accounts = accs;\n _this.isLoading = false;\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__utils_uiHelper__[\"a\" /* smartFocus */])();\n }).catch(function () {\n _this.$store.commit('showFatalError', {\n error: 'Login Failed',\n explanation: 'Failed to load your Teamwork accounts, please try again.',\n appError: 'access_denied',\n appErrorExplanation: 'google sso failed, failed to load teamwork accounts'\n });\n _this.isLoading = false;\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__utils_uiHelper__[\"a\" /* smartFocus */])();\n });\n },\n onAccountSelected: function onAccountSelected(account) {\n this.isLoading = true;\n var url = account.installation.url + 'launchpad/tokenauth';\n var params = {\n code: account.token\n };\n\n if (this.afterLoginURL) params.continue = this.afterLoginURL;\n if (this.appInfo.redirect_uri) params.redirect_uri = this.appInfo.redirect_uri;\n if (this.appInfo.state) params.state = this.appInfo.state;\n if (this.appInfo.client_id) params.client_id = this.appInfo.client_id;\n if (this.appInfo.scope) params.scope = this.appInfo.scope;\n if (this.appInfo.install) params.install = this.appInfo.install;\n if (this.appInfo.nonce) params.nonce = this.appInfo.nonce;\n\n if (this.meta.source) params.source = this.meta.source;\n if (this.meta.product) params.product = this.meta.product;\n if (this.meta.extra) params.extra = this.meta.extra;\n\n window.location.href = url + '?' + __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_7__utils_urlHelper__[\"a\" /* buildQueryString */])(params);\n },\n reload: function reload() {\n window.location.reload();\n },\n filterAccounts: function filterAccounts(accounts) {\n var key = '';\n switch (this.meta.product) {\n case 'projects':\n key = 'projectsEnabled';\n break;\n case 'desk':\n key = 'deskEnabled';\n break;\n case 'chat':\n key = 'chatEnabled';\n break;\n default:\n return accounts;\n }\n return accounts.filter(function (acc) {\n return acc.installation[key];\n });\n }\n }\n});\n\n/***/ }),\n/* 261 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue__);\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'Success',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue___default.a\n },\n data: function data() {\n return {\n code: ''\n };\n },\n created: function created() {\n this.code = this.$route.query.code;\n },\n\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* mapState */])({\n // eslint-disable-next-line\n title: function title(state) {\n return state.site.siteInfo.displayOptions.showSiteNameOnLoginScreen ? state.site.siteInfo.name : 'Log in';\n }\n }))\n});\n\n/***/ }),\n/* 262 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__ = __webpack_require__(51);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_promise__ = __webpack_require__(83);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_promise___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_promise__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_asyncToGenerator__ = __webpack_require__(50);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_asyncToGenerator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_asyncToGenerator__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_axios__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__utils_appLoginHelper__ = __webpack_require__(43);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__utils_errorHelper__ = __webpack_require__(48);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__utils_uiHelper__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__utils_urlHelper__ = __webpack_require__(49);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_sections_AppConsent_AppConsent_vue__ = __webpack_require__(147);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_sections_AppConsent_AppConsent_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11__components_sections_AppConsent_AppConsent_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__components_sections_GDPRConsent_GDPRConsent_vue__ = __webpack_require__(148);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__components_sections_GDPRConsent_GDPRConsent_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12__components_sections_GDPRConsent_GDPRConsent_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__components_sections_Login_CompanyInfo_vue__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__components_sections_Login_CompanyInfo_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13__components_sections_Login_CompanyInfo_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__components_widgets_Loading_Loading_vue__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__components_widgets_Loading_Loading_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_14__components_widgets_Loading_Loading_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__components_sections_PersonaCapture_PersonaCapture_vue__ = __webpack_require__(216);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__components_sections_PersonaCapture_PersonaCapture_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15__components_sections_PersonaCapture_PersonaCapture_vue__);\n\n\n\n\n\n\n\n// @vue/component\n\n\n\n\n\n\n\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'TokenAuth',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_10__components_widgets_PageHeader_PageHeader_vue___default.a,\n Loading: __WEBPACK_IMPORTED_MODULE_14__components_widgets_Loading_Loading_vue___default.a,\n AppConsent: __WEBPACK_IMPORTED_MODULE_11__components_sections_AppConsent_AppConsent_vue___default.a,\n 'gdpr-consent': __WEBPACK_IMPORTED_MODULE_12__components_sections_GDPRConsent_GDPRConsent_vue___default.a,\n CompanyInfo: __WEBPACK_IMPORTED_MODULE_13__components_sections_Login_CompanyInfo_vue___default.a,\n PersonaCapture: __WEBPACK_IMPORTED_MODULE_15__components_sections_PersonaCapture_PersonaCapture_vue___default.a\n },\n data: function data() {\n return {\n code: '',\n app: {},\n gdprSeen: false,\n companyInfo: undefined,\n onCompanyInfoSaved: undefined,\n onPersonaInfoSaved: undefined,\n\n state: 'normal',\n isLoading: true\n };\n },\n created: function created() {\n this.code = this.$route.query.code;\n\n if (this.inAppLogin) {\n this.getAppInfo();\n } else {\n // token login\n this.loginViaToken();\n }\n },\n\n computed: __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_4_vuex__[\"a\" /* mapState */])({\n afterLoginURL: function afterLoginURL(state) {\n var baseURL = '';\n if (state.login.loginType === 'account') {\n baseURL = window.location.href.replace(/(\\/launchpad\\/tokenauth)\\/?/, '/');\n }\n return state.login.afterLoginURL || baseURL;\n },\n // eslint-disable-next-line\n title: function title(state) {\n return state.site.siteInfo.displayOptions.showSiteNameOnLoginScreen ? state.site.siteInfo.name : 'Log in';\n },\n loginType: function loginType(state) {\n return state.login.loginType;\n },\n loginState: function loginState(state) {\n return state.login.loginState;\n },\n appInfo: function appInfo(state) {\n return state.login.appInfo;\n },\n inAppLogin: function inAppLogin(state) {\n return state.login.loginType === 'app';\n }\n })),\n methods: {\n getAppInfo: function getAppInfo() {\n var _this = this;\n\n this.isLoading = true;\n var payload = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_extends___default()({}, this.appInfo, {\n code: this.code\n });\n\n __WEBPACK_IMPORTED_MODULE_5_axios___default.a.post('/launchpad/v1/apps/validate.json', payload).then(function (response) {\n _this.app = response.data.app;\n\n if (_this.app.consentRequired === false) {\n // allow skipping screen for our own apps\n __WEBPACK_IMPORTED_MODULE_5_axios___default.a.post('/launchpad/v1/token/consent.json', { code: _this.code }).then(function (res) {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__utils_appLoginHelper__[\"c\" /* redirectToApp */])(_this.appInfo, res.data.code);\n }).catch(function () {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__utils_appLoginHelper__[\"a\" /* redirectToAppWithError */])(_this.appInfo, 'failed_to_consent', 'impossible to consent');\n });\n } else {\n _this.state = 'app-consent';\n }\n\n _this.isLoading = false;\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__utils_uiHelper__[\"a\" /* smartFocus */])();\n }).catch(function (e) {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_7__utils_errorHelper__[\"a\" /* handleAPIError */])(_this.$store, e, 'Failed to log in.');\n _this.isLoading = false;\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__utils_uiHelper__[\"a\" /* smartFocus */])();\n });\n },\n loginViaToken: function loginViaToken() {\n var _this2 = this;\n\n this.isLoading = true;\n\n __WEBPACK_IMPORTED_MODULE_5_axios___default.a.post('/launchpad/v1/token/consent.json', { code: this.code }).then(function (response) {\n var data = {\n code: response.data.code,\n rememberMe: !!_this2.$route.query.rememberMe\n };\n if (_this2.gdprSeen) data.gdprSeen = true;\n\n return __WEBPACK_IMPORTED_MODULE_5_axios___default.a.post('/launchpad/v1/token/login.json', data).then(function () {\n var _ref = __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_asyncToGenerator___default()( /*#__PURE__*/__WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.mark(function _callee(res) {\n var _res$data, industryCategoryId, companySizeId, companyInfoSavedPromise, personaInfoSavedPromise;\n\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_regenerator___default.a.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (res.data.gdprSeen) {\n _context.next = 5;\n break;\n }\n\n _this2.state = 'gdpr-consent';\n _this2.gdprSeen = true;\n _this2.isLoading = false;\n return _context.abrupt('return');\n\n case 5:\n if (!res.data.setupScreenRequired) {\n _context.next = 15;\n break;\n }\n\n _res$data = res.data, industryCategoryId = _res$data.industryCategoryId, companySizeId = _res$data.companySizeId;\n\n\n _this2.companyInfo = {\n industryCategoryId: industryCategoryId || undefined,\n sizeId: companySizeId || undefined\n };\n\n companyInfoSavedPromise = new __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_promise___default.a(function (resolve) {\n _this2.onCompanyInfoSaved = resolve;\n });\n\n\n _this2.state = 'company-info';\n _this2.isLoading = false;\n\n _context.next = 13;\n return companyInfoSavedPromise;\n\n case 13:\n\n _this2.isLoading = true;\n _this2.state = 'normal';\n\n case 15:\n if (!(res.data.userPersona !== undefined && !res.data.userPersona)) {\n _context.next = 24;\n break;\n }\n\n personaInfoSavedPromise = new __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_promise___default.a(function (resolve) {\n _this2.onPersonaInfoSaved = resolve;\n });\n\n _this2.state = 'persona-capture';\n _this2.$store.commit('setFormState', _this2.state);\n _this2.isLoading = false;\n\n _context.next = 22;\n return personaInfoSavedPromise;\n\n case 22:\n\n _this2.isLoading = true;\n _this2.state = 'normal';\n\n case 24:\n\n _this2.$store.commit('setLoggedIn', {\n loggedIn: true,\n userId: res.data.userId\n });\n\n if (window.opener && _this2.$store.state.login.meta.hasLocalStorage && sessionStorage.getItem('shouldCloseOpener') === 'true') {\n sessionStorage.setItem('shouldCloseOpener', 'false');\n window.close();\n }\n\n // eslint-disable-next-line\n window.location.href = _this2.afterLoginURL || window.location.href.replace(/(\\/launchpad\\/tokenauth)\\/?/, '/');\n\n case 27:\n case 'end':\n return _context.stop();\n }\n }\n }, _callee, _this2);\n }));\n\n return function (_x) {\n return _ref.apply(this, arguments);\n };\n }());\n }).catch(function (e) {\n var err = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_7__utils_errorHelper__[\"a\" /* handleAPIError */])(_this2.$store, e, 'Failed to log in.');\n\n if (err && err.type === __WEBPACK_IMPORTED_MODULE_7__utils_errorHelper__[\"b\" /* ERROR_TYPE */].INSTALLATION_PROVISIONING) {\n _this2.$store.commit('showFatalError', {\n error: 'Please Wait',\n message: 'Your account is being set up, we\\'re just wrapping up a few bits...',\n explanation: 'This should only take a moment. ' + 'Once everything is set up, you will be logged in automatically. ' + 'If the installation is not active after 5 minutes, please contact support.'\n });\n\n // This would call 'loginViaToken' in 'created' because component appears again\n setTimeout(function () {\n return _this2.$store.commit('resetFatalError');\n }, 3000);\n\n return;\n }\n\n if (err && err.type === __WEBPACK_IMPORTED_MODULE_7__utils_errorHelper__[\"b\" /* ERROR_TYPE */].INSTALLATION_VALIDATION_PENDING) {\n var isVerifyEmail = _this2.$route.query.continue && _this2.$route.query.continue.includes('verifyemail');\n\n if (isVerifyEmail) {\n window.location.href = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_9__utils_urlHelper__[\"c\" /* fixProtocol */])(_this2.$route.query.continue + '?auth=' + e.response.data.unvalidatedAccountLoginCode + '&email=' + encodeURIComponent(_this2.email));\n } else {\n window.location.href = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_9__utils_urlHelper__[\"c\" /* fixProtocol */])('/launchpad/verifyemail/' + (_this2.$route.params.productCode ? _this2.$route.params.productCode : 'projects') + '/firstsend?auth=' + e.response.data.unvalidatedAccountLoginCode + '&email=' + encodeURIComponent(_this2.email));\n }\n }\n\n // most likely, the token has expired, show fatal anyway\n if (err && err.type === __WEBPACK_IMPORTED_MODULE_7__utils_errorHelper__[\"b\" /* ERROR_TYPE */].FORM_ERROR) {\n _this2.$store.commit('showFatalError', {\n error: 'Login Failed',\n message: 'Login token has expired, please try again.',\n appError: 'access_denied',\n appErrorExplanation: 'google sso access token expired'\n });\n }\n\n _this2.isLoading = false;\n });\n },\n reload: function reload() {\n window.location.reload();\n }\n }\n});\n\n/***/ }),\n/* 263 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_Loading_Loading_vue__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_Loading_Loading_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__components_widgets_Loading_Loading_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_widgets_ProductList_vue__ = __webpack_require__(218);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_widgets_ProductList_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__components_widgets_ProductList_vue__);\n\n\n\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'Welcome',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue___default.a,\n Loading: __WEBPACK_IMPORTED_MODULE_3__components_widgets_Loading_Loading_vue___default.a,\n ProductList: __WEBPACK_IMPORTED_MODULE_4__components_widgets_ProductList_vue___default.a\n },\n data: function data() {\n return {\n utm_content: ''\n };\n },\n mounted: function mounted() {\n var _this = this;\n\n if (this.$route.query.utm_content) this.utm_content = this.$route.query.utm_content;\n this.$nextTick(function () {\n if (_this.products.length === 1) {\n window.location.href = (_this.loggedIn ? '/' : '/launchpad/login/') + _this.products[0].code;\n }\n });\n },\n\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* mapState */])({\n loggedIn: function loggedIn(state) {\n return state.login.loggedIn;\n },\n siteInfo: function siteInfo(state) {\n return state.site.siteInfo;\n },\n productInfo: function productInfo(state) {\n return state.site.productInfo;\n }\n }), {\n title: function title() {\n if (this.siteInfo.displayOptions.showSiteNameOnLoginScreen) {\n return 'Welcome to ' + this.siteInfo.name;\n }\n return 'Welcome';\n },\n subtitle: function subtitle() {\n return 'Select the app you want to start with.
Use them together for greater team productivity.';\n },\n products: function products() {\n var _this2 = this;\n\n return this.productInfo.filter(function (v) {\n return _this2.siteInfo.apps[v.code];\n }).map(function (v) {\n return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, v, {\n\n url: (_this2.loggedIn ? '/' : '/launchpad/login/') + (v.code === 'projects' ? 'app' : v.code) + (_this2.utm_content ? '/?utm_content=' + _this2.utm_content : '')\n });\n });\n }\n })\n});\n\n/***/ }),\n/* 264 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_axios__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__utils_appLoginHelper__ = __webpack_require__(43);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__assets_images_product_icon_projects_svg__ = __webpack_require__(214);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__assets_images_product_icon_projects_svg___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5__assets_images_product_icon_projects_svg__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__assets_images_product_icon_chat_svg__ = __webpack_require__(211);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__assets_images_product_icon_chat_svg___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6__assets_images_product_icon_chat_svg__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__assets_images_product_icon_desk_svg__ = __webpack_require__(213);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__assets_images_product_icon_desk_svg___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7__assets_images_product_icon_desk_svg__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__assets_images_product_icon_crm_svg__ = __webpack_require__(212);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__assets_images_product_icon_crm_svg___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__assets_images_product_icon_crm_svg__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__assets_images_product_icon_spaces_svg__ = __webpack_require__(215);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__assets_images_product_icon_spaces_svg___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9__assets_images_product_icon_spaces_svg__);\n\n\n\n\n\n\n\n\n\n\n\n\nvar icons = {\n projects: __WEBPACK_IMPORTED_MODULE_5__assets_images_product_icon_projects_svg___default.a,\n chat: __WEBPACK_IMPORTED_MODULE_6__assets_images_product_icon_chat_svg___default.a,\n desk: __WEBPACK_IMPORTED_MODULE_7__assets_images_product_icon_desk_svg___default.a,\n crm: __WEBPACK_IMPORTED_MODULE_8__assets_images_product_icon_crm_svg___default.a,\n spaces: __WEBPACK_IMPORTED_MODULE_9__assets_images_product_icon_spaces_svg___default.a\n};\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'AppConsent',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_4__components_widgets_PageHeader_PageHeader_vue___default.a\n },\n props: {\n code: {\n type: String,\n required: true\n },\n app: {\n type: Object,\n default: function _default() {\n return {\n id: 0,\n ownerId: 0,\n code: '',\n clientId: '',\n scope: [],\n name: '',\n logo: '',\n url: '',\n dateCreated: null,\n dateUpdated: null,\n isValidated: true,\n description: '',\n publisher: { // could be null\n name: '',\n url: '',\n privacyUrl: '',\n termsUrl: '',\n logoUrl: ''\n }\n };\n }\n }\n },\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2_vuex__[\"a\" /* mapState */])({\n appInfo: function appInfo(state) {\n return state.login.appInfo;\n },\n selectedAccount: function selectedAccount(state) {\n return state.login.selectedAccount;\n }\n }), {\n requestedScope: function requestedScope() {\n if (this.appInfo.scope.length) {\n // openid is a scope, but not an app scope, so we filter it out if it's in the list\n return this.appInfo.scope.filter(function (scope) {\n return scope.toLowerCase() !== 'openid';\n });\n }\n // default to full app scope if none requested\n if (this.app.scope.length) {\n return this.app.scope;\n }\n return [];\n },\n showAppDetails: function showAppDetails() {\n return this.app.clientId; // we know it's a devportal app with a name\n },\n appIsLocal: function appIsLocal() {\n return this.app.name !== 'localhost' && this.app.name !== '127.0.0.1';\n },\n logoUrl: function logoUrl() {\n if (this.app.logo) return this.app.logo;\n if (this.app.publisher && this.app.publisher.logoUrl) return this.app.publisher.logoUrl;\n return '';\n }\n }),\n methods: {\n onAllow: function onAllow() {\n var _this = this;\n\n var url = (this.selectedAccount.installation.apiEndPoint || '/') + 'launchpad/v1/token/consent.json';\n __WEBPACK_IMPORTED_MODULE_1_axios___default.a.post(url, { code: this.code }).then(function (response) {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__utils_appLoginHelper__[\"c\" /* redirectToApp */])(_this.appInfo, response.data.code);\n }).catch(function () {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__utils_appLoginHelper__[\"a\" /* redirectToAppWithError */])(_this.appInfo, 'failed_to_consent', 'impossible to consent');\n });\n },\n onDeny: function onDeny() {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__utils_appLoginHelper__[\"a\" /* redirectToAppWithError */])(this.appInfo, 'access_denied', 'user did not consent');\n },\n getAppName: function getAppName(productCode) {\n switch (productCode) {// eslint-disable-line\n case 'projects':\n return 'Teamwork';\n case 'desk':\n return 'Teamwork Desk';\n case 'chat':\n return 'Teamwork Chat';\n case 'crm':\n return 'Teamwork CRM';\n case 'spaces':\n return 'Teamwork Spaces';\n }\n return productCode;\n },\n getAppIcon: function getAppIcon(code) {\n if (!icons[code]) return '';\n return icons[code];\n }\n }\n});\n\n/***/ }),\n/* 265 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__utils_appLoginHelper__ = __webpack_require__(43);\n\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'ErrorMessage',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue___default.a\n },\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* mapState */])({\n error: function error(state) {\n return state.login.fatalError.error;\n },\n message: function message(state) {\n return state.login.fatalError.message;\n },\n explanation: function explanation(state) {\n return state.login.fatalError.explanation;\n },\n\n inAppLogin: function inAppLogin(state) {\n return state.login.loginType === 'app';\n },\n appInfo: function appInfo(state) {\n return state.login.appInfo;\n },\n appError: function appError(state) {\n return state.login.fatalError.appError;\n },\n appErrorExplanation: function appErrorExplanation(state) {\n return state.login.fatalError.appErrorExplanation;\n }\n }), {\n explanationHTML: function explanationHTML() {\n return this.explanation.replace(/>/g, '>').replace(/');\n }\n }),\n methods: {\n onClickBackToApp: function onClickBackToApp() {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__utils_appLoginHelper__[\"a\" /* redirectToAppWithError */])(this.appInfo, this.appError, this.appErrorExplanation);\n }\n }\n});\n\n/***/ }),\n/* 266 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__components_widgets_PageHeader_PageHeader_vue__);\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'GDPRConsent',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_0__components_widgets_PageHeader_PageHeader_vue___default.a\n }\n});\n\n/***/ }),\n/* 267 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue__ = __webpack_require__(81);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__utils_errorHelper__ = __webpack_require__(48);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__utils_uiHelper__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_widgets_Loading_Loading_vue__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_widgets_Loading_Loading_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7__components_widgets_Loading_Loading_vue__);\n\n\n\n\n\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'SAMLForm',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_6__components_widgets_PageHeader_PageHeader_vue___default.a,\n Loading: __WEBPACK_IMPORTED_MODULE_7__components_widgets_Loading_Loading_vue___default.a\n },\n data: function data() {\n return {\n email: '',\n\n formError: '',\n isLoading: false\n };\n },\n\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3_vuex__[\"b\" /* mapGetters */])({\n samlURL: 'samlURL'\n }), {\n canSubmit: function canSubmit() {\n return this.email.length > 0;\n }\n }),\n methods: {\n onSubmit: function onSubmit() {\n var _this = this;\n\n if (!this.canSubmit) return;\n\n this.formError = '';\n this.isLoading = true;\n\n __WEBPACK_IMPORTED_MODULE_2_axios___default.a.get('/launchpad/saml/account.json?userEmail=' + this.email).then(function (response) {\n _this.$store.commit('setSAMLBaseURL', response.data.baseHref);\n __WEBPACK_IMPORTED_MODULE_1_vue__[\"a\" /* default */].nextTick(function () {\n window.location.href = _this.samlURL;\n });\n }).catch(function (e) {\n var err = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_4__utils_errorHelper__[\"a\" /* handleAPIError */])(_this.$store, e, 'No associated accounts found, please double-check your email address.');\n if (err && err.type === __WEBPACK_IMPORTED_MODULE_4__utils_errorHelper__[\"b\" /* ERROR_TYPE */].FORM_ERROR) _this.formError = err.err;\n _this.isLoading = false;\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_5__utils_uiHelper__[\"a\" /* smartFocus */])();\n });\n },\n reload: function reload() {\n window.location.reload();\n }\n }\n});\n\n/***/ }),\n/* 268 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__utils_urlHelper__ = __webpack_require__(49);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue__);\n\n\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'SAMLForm',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_3__components_widgets_PageHeader_PageHeader_vue___default.a,\n Loading: __WEBPACK_IMPORTED_MODULE_4__components_widgets_Loading_Loading_vue___default.a\n },\n data: function data() {\n return {\n email: '',\n\n formError: '',\n isLoading: false\n };\n },\n\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* mapState */])({\n // eslint-disable-next-line\n title: function title(state) {\n return state.site.siteInfo.displayOptions.showSiteNameOnLoginScreen ? state.site.siteInfo.name : 'Log in';\n },\n isIframe: function isIframe(state) {\n return state.login.meta.isIframe;\n }\n }), __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"b\" /* mapGetters */])({\n samlURL: 'samlURL',\n allowStandardLogin: 'allowStandardLogin'\n })),\n mounted: function mounted() {\n if (this.isIframe) {\n window.parent.postMessage('pageResized', '*');\n }\n },\n\n methods: {\n onSubmit: function onSubmit() {\n if (this.isLoading) return false;\n this.isLoading = true;\n return __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__utils_urlHelper__[\"d\" /* navigateExternalURL */])(this.samlURL, this.isIframe);\n },\n reload: function reload() {\n window.location.reload();\n }\n }\n});\n\n/***/ }),\n/* 269 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_assign__ = __webpack_require__(82);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_assign___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_assign__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_axios__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__utils_errorHelper__ = __webpack_require__(48);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__utils_appLoginHelper__ = __webpack_require__(43);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__utils_urlHelper__ = __webpack_require__(49);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__utils_uiHelper__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_sections_GDPRConsent_GDPRConsent_vue__ = __webpack_require__(148);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_sections_GDPRConsent_GDPRConsent_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__components_sections_GDPRConsent_GDPRConsent_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_sections_AppConsent_AppConsent_vue__ = __webpack_require__(147);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_sections_AppConsent_AppConsent_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_9__components_sections_AppConsent_AppConsent_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_widgets_AccountList_AccountList_vue__ = __webpack_require__(217);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_widgets_AccountList_AccountList_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_10__components_widgets_AccountList_AccountList_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_11__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__components_sections_Login_CompanyInfo_vue__ = __webpack_require__(149);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__components_sections_Login_CompanyInfo_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12__components_sections_Login_CompanyInfo_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__components_widgets_Loading_Loading_vue__ = __webpack_require__(17);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__components_widgets_Loading_Loading_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_13__components_widgets_Loading_Loading_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__components_sections_Login_TfaSetup_vue__ = __webpack_require__(582);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__components_sections_Login_TfaSetup_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_14__components_sections_Login_TfaSetup_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__components_PasswordInput_vue__ = __webpack_require__(146);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__components_PasswordInput_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_15__components_PasswordInput_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__components_sections_PersonaCapture_PersonaCapture_vue__ = __webpack_require__(216);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__components_sections_PersonaCapture_PersonaCapture_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_16__components_sections_PersonaCapture_PersonaCapture_vue__);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'Login',\n components: {\n 'gdpr-consent': __WEBPACK_IMPORTED_MODULE_8__components_sections_GDPRConsent_GDPRConsent_vue___default.a,\n AppConsent: __WEBPACK_IMPORTED_MODULE_9__components_sections_AppConsent_AppConsent_vue___default.a,\n CompanyInfo: __WEBPACK_IMPORTED_MODULE_12__components_sections_Login_CompanyInfo_vue___default.a,\n AccountList: __WEBPACK_IMPORTED_MODULE_10__components_widgets_AccountList_AccountList_vue___default.a,\n PageHeader: __WEBPACK_IMPORTED_MODULE_11__components_widgets_PageHeader_PageHeader_vue___default.a,\n Loading: __WEBPACK_IMPORTED_MODULE_13__components_widgets_Loading_Loading_vue___default.a,\n TfaSetup: __WEBPACK_IMPORTED_MODULE_14__components_sections_Login_TfaSetup_vue___default.a,\n PasswordInput: __WEBPACK_IMPORTED_MODULE_15__components_PasswordInput_vue___default.a,\n PersonaCapture: __WEBPACK_IMPORTED_MODULE_16__components_sections_PersonaCapture_PersonaCapture_vue___default.a\n },\n data: function data() {\n return {\n rememberMe: false,\n twoFactorPasscode: '',\n gdprSeen: false,\n companyInfo: undefined,\n\n passwordEncrypted: false, // for legacy form support\n\n code: '',\n accounts: [],\n selectedAccount: '',\n\n state: 'normal',\n formError: '',\n isLoading: false,\n\n email: undefined,\n password: undefined,\n forced: false\n };\n },\n created: function created() {\n // Get query params submitted via legacy forms\n if (this.$route.query.email) this.email = this.$route.query.email;\n if (this.$route.query.password) this.password = this.$route.query.password;\n if (this.$route.query.automaticSubmit) this.automaticSubmit = true;\n if (this.$route.query.product) this.product = this.$route.query.product;\n this.passwordEncrypted = !!this.$route.query.encrypted;\n\n // hide legacy params\n var newParams = __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_assign___default()({}, this.$route.query);\n delete newParams.email;\n delete newParams.password;\n delete newParams.automaticSubmit;\n delete newParams.encrypted;\n delete newParams.product;\n this.$router.replace({ query: newParams });\n\n if (this.automaticSubmit) {\n this.$nextTick(function () {\n // eslint-disable-line func-names\n this.onSubmit();\n });\n }\n },\n mounted: function mounted() {\n window.parent.postMessage('pageResized', '*');\n if (this.loggedIn) this.continueToProduct();\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_7__utils_uiHelper__[\"a\" /* smartFocus */])();\n },\n\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3_vuex__[\"b\" /* mapGetters */])({\n samlURL: 'samlURL',\n googleSSOURL: 'googleSSOURL',\n allowStandardLogin: 'allowStandardLogin'\n }), __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3_vuex__[\"a\" /* mapState */])({\n loginType: function loginType(state) {\n return state.login.loginType;\n },\n appInfo: function appInfo(state) {\n return state.login.appInfo;\n },\n meta: function meta(state) {\n return state.login.meta;\n },\n loggedIn: function loggedIn(state) {\n return state.login.loggedIn;\n },\n ignoreInstallations: function ignoreInstallations(state) {\n return state.login.meta.ignoreInstallations;\n },\n /* eslint-disable */\n afterLoginURL: function afterLoginURL(state) {\n var baseURL = state.login.loginType === 'account' ? window.location.href.replace(/(\\/launchpad\\/login)\\/?/, '/') : '';\n return state.login.afterLoginURL || baseURL;\n },\n showRememberMe: function showRememberMe(state) {\n return state.site.siteInfo.displayOptions.allowRememberMe || state.login.loginType === 'generic';\n },\n showGoogleSSO: function showGoogleSSO(state) {\n return state.site.siteInfo.integrations.googleSignIn.enabled || state.login.loginType !== 'account';\n },\n showSAML: function showSAML(state) {\n return state.site.siteInfo.sso.enabled || state.login.loginType !== 'account';\n },\n startText: function startText(state) {\n return state.site.siteInfo.displayOptions.startText || '';\n },\n title: function title(state) {\n return state.site.siteInfo.displayOptions.showSiteNameOnLoginScreen ? state.site.siteInfo.name : 'Log in';\n },\n isEnterprise: function isEnterprise(state) {\n return state.site.siteInfo.isEnterprise;\n },\n inAppLogin: function inAppLogin(state) {\n return state.login.loginType === 'app';\n },\n isValidationPending: function isValidationPending(state) {\n return state.site.siteInfo.installationState === 'validation-pending';\n }\n /* eslint-enable */\n }), {\n forgotPasswordLink: function forgotPasswordLink() {\n var url = '/forgotpassword';\n if (this.$route.params.productCode) url += '/' + this.$route.params.productCode;\n return url;\n }\n }),\n methods: {\n onSubmit: function onSubmit() {\n this.isLoading = true;\n this.formError = '';\n\n var data = {\n email: this.email,\n password: this.password,\n rememberMe: this.rememberMe,\n product: this.product\n };\n\n // For app login flow, we want to allow apps to hide some accounts,\n // for example if they are already authenticated.\n if (this.inAppLogin && this.ignoreInstallations) {\n data.ignoreInstallations = this.ignoreInstallations;\n }\n\n if (this.gdprSeen) data.gdprSeen = true;\n if (this.inAppLogin) {\n data.redirect_uri = this.appInfo.redirect_uri;\n data.state = this.appInfo.state;\n data.client_id = this.appInfo.client_id;\n data.scope = this.appInfo.scope;\n data.install = this.appInfo.install;\n data.nonce = this.appInfo.nonce;\n }\n if (this.passwordEncrypted) data.passwordEncrypted = true;\n\n if (this.loginType === 'account') {\n this.submitLogin('', data);\n } else if (this.selectedAccount) {\n this.onAccountSelected(this.selectedAccount);\n } else if (this.password === 'xxx' && this.email.indexOf('@') === -1) {\n // logging in via API old key on generic login\n this.submitLogin('', data);\n } else if (this.loginType === 'app' && !this.meta.generic) {\n this.submitLogin('', data);\n } else {\n this.submitGetAccounts(data);\n }\n },\n initSAML: function initSAML() {\n if (this.loginType === 'account') {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__utils_urlHelper__[\"d\" /* navigateExternalURL */])(this.samlURL, this.$store.state.login.meta.isIframe);\n } else {\n this.$store.commit('setLoginState', 'saml-email');\n }\n },\n submitLogin: function submitLogin(baseURL, data) {\n var _this = this;\n\n var url = baseURL + '/launchpad/v1/login.json';\n if (this.loginType !== 'account') url += '?appAuth=true';\n\n /* eslint-disable */\n if (this.twoFactorPasscode) data.twoFactorPasscode = this.twoFactorPasscode;\n if (this.gdprSeen) data.gdprSeen = this.gdprSeen;\n if (this.inAppLogin) {\n data.redirect_uri = this.appInfo.redirect_uri;\n data.state = this.appInfo.state;\n data.client_id = this.appInfo.client_id;\n data.scope = this.appInfo.scope;\n data.install = this.appInfo.install;\n data.nonce = this.appInfo.nonce;\n }\n /* eslint-enable */\n var loginTypeTemp = this.loginType;\n\n __WEBPACK_IMPORTED_MODULE_2_axios___default.a.post(url, data).then(function (response) {\n _this.code = response.data.code;\n\n if (response.data.setupScreenRequired) {\n var _response$data = response.data,\n industryCategoryId = _response$data.industryCategoryId,\n companySizeId = _response$data.companySizeId;\n\n\n _this.companyInfo = {\n industryCategoryId: industryCategoryId || undefined,\n sizeId: companySizeId || undefined\n };\n\n _this.state = 'company-info';\n _this.isLoading = false;\n\n return;\n }\n\n if (!response.data.gdprSeen) {\n _this.state = 'gdpr-consent';\n _this.gdprSeen = true;\n _this.isLoading = false;\n return;\n }\n\n if (response.data.userPersona !== undefined && !response.data.userPersona && loginTypeTemp !== 'generic') {\n _this.state = 'persona-capture';\n _this.$store.commit('setFormState', _this.state);\n _this.isLoading = false;\n return;\n }\n\n switch (_this.loginType) {// eslint-disable-line\n case 'app':\n _this.app = response.data.app;\n if (_this.app.consentRequired === false) {\n // allow skipping screen for our own apps\n _this.state = 'app-success';\n __WEBPACK_IMPORTED_MODULE_2_axios___default.a.post(baseURL + '/launchpad/v1/token/consent.json', { code: _this.code }).then(function (resp) {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_5__utils_appLoginHelper__[\"c\" /* redirectToApp */])(_this.appInfo, resp.data.code);\n }).catch(function () {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_5__utils_appLoginHelper__[\"a\" /* redirectToAppWithError */])(_this.appInfo, 'failed_to_consent', 'impossible to consent');\n });\n } else {\n _this.state = 'app-consent';\n }\n _this.isLoading = false;\n return;\n case 'generic':\n // eslint-disable-line\n // baseURL in this case is account URL without trailing slash\n var _continueURL = '';\n if (_this.$route.params.productCode) _continueURL += baseURL + '/' + _this.$route.params.productCode;\n\n var params = {\n code: _this.code,\n continue: _this.afterLoginURL || data.continue || _continueURL\n };\n\n window.location.href = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__utils_urlHelper__[\"c\" /* fixProtocol */])(baseURL + '/launchpad/tokenauth?' + __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__utils_urlHelper__[\"a\" /* buildQueryString */])(params));\n return;\n }\n\n _this.$store.commit('setLoggedIn', {\n loggedIn: true,\n userId: response.data.userId\n });\n\n // eslint-disable-next-line\n var continueURL = _this.afterLoginURL || data.continue || window.location.href.replace(/(\\/launchpad\\/login)\\/?/, '/');\n window.location.href = continueURL;\n }).catch(function (e) {\n var err = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_4__utils_errorHelper__[\"a\" /* handleAPIError */])(_this.$store, e, 'Please make sure you have the correct email or password.');\n\n if (err && err.type === __WEBPACK_IMPORTED_MODULE_4__utils_errorHelper__[\"b\" /* ERROR_TYPE */].FORM_ERROR) _this.formError = err.err;\n if (err && err.type === __WEBPACK_IMPORTED_MODULE_4__utils_errorHelper__[\"b\" /* ERROR_TYPE */].TFA_REQUIRED) _this.state = '2fa';\n if (err && err.type === __WEBPACK_IMPORTED_MODULE_4__utils_errorHelper__[\"b\" /* ERROR_TYPE */].TFA_SETUP_REQUIRED) {\n _this.state = '2fa-setup';\n _this.forced = true;\n }\n if (err && err.type === __WEBPACK_IMPORTED_MODULE_4__utils_errorHelper__[\"b\" /* ERROR_TYPE */].INSTALLATION_VALIDATION_PENDING) {\n var isVerifyEmail = _this.$route.query.continue && _this.$route.query.continue.includes('verifyemail');\n\n if (isVerifyEmail) {\n window.location.href = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__utils_urlHelper__[\"c\" /* fixProtocol */])('' + baseURL + _this.$route.query.continue + '?auth=' + e.response.data.unvalidatedAccountLoginCode + '&email=' + encodeURIComponent(_this.email));\n } else {\n window.location.href = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__utils_urlHelper__[\"c\" /* fixProtocol */])(baseURL + '/launchpad/verifyemail/' + (_this.$route.params.productCode ? _this.$route.params.productCode : 'projects') + '/firstsend?auth=' + e.response.data.unvalidatedAccountLoginCode + '&email=' + encodeURIComponent(_this.email));\n }\n }\n\n _this.isLoading = false;\n _this.passwordEncrypted = false;\n if (_this.state === 'select-account') _this.state = 'normal';\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_7__utils_uiHelper__[\"a\" /* smartFocus */])();\n });\n },\n submitGetAccounts: function submitGetAccounts(data) {\n var _this2 = this;\n\n this.$store.dispatch('getWafToken').then(function (token) {\n var headers = { 'Launchpad-Version': \"v0414149\" };\n if (token !== null) headers['x-aws-waf-token'] = token;\n return __WEBPACK_IMPORTED_MODULE_2_axios___default.a.post('/launchpad/v1/accounts.json?generic=true', data, { headers: headers });\n }).then(function (response) {\n // filter out accounts where provided product is disabled\n // note: we will do this on the backend after global data\n // for all products\n var accs = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_5__utils_appLoginHelper__[\"b\" /* filterAccounts */])(response.data.accounts, _this2.meta.product);\n\n // If no accounts found, we either have wrong details or ignoring all accounts\n if (accs.length === 0) {\n _this2.formError = 'Please make sure you have the correct email or password.';\n if (response.data.ignoredAccounts === data.ignoreInstallations) {\n _this2.formError = 'You have already authenticated with all available Teamwork accounts.';\n }\n _this2.isLoading = false;\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_7__utils_uiHelper__[\"a\" /* smartFocus */])();\n return;\n }\n\n // If we only have one account, skip selection step\n if (accs.length === 1) {\n _this2.onAccountSelected(accs[0]);\n return;\n }\n\n _this2.accounts = accs;\n _this2.state = 'select-account';\n _this2.isLoading = false;\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_7__utils_uiHelper__[\"a\" /* smartFocus */])();\n }).catch(function (e) {\n var err = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_4__utils_errorHelper__[\"a\" /* handleAPIError */])(_this2.$store, e, 'Please make sure you have the correct email or password.');\n if (err.type === __WEBPACK_IMPORTED_MODULE_4__utils_errorHelper__[\"b\" /* ERROR_TYPE */].FORM_ERROR) _this2.formError = err.err;\n _this2.isLoading = false;\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_7__utils_uiHelper__[\"a\" /* smartFocus */])();\n });\n },\n onAccountSelected: function onAccountSelected(account) {\n var url = account.installation.apiEndPoint;\n // eslint-disable-next-line\n if (\"production\" === 'development' || window.location.href.indexOf('sunbeam.teamwork.localhost') > -1) {\n url = account.installation.url.replace('https://', 'http://');\n }\n\n // remove trailing slash\n if (url[url.length - 1] === '/') url = url.substr(0, url.length - 1);\n\n this.selectedAccount = account;\n this.$store.commit('setSelectedAccount', account);\n\n this.submitLogin(url, {\n email: this.email,\n password: this.password,\n rememberMe: this.rememberMe\n });\n },\n onClickGoogleSSO: function onClickGoogleSSO(e) {\n this.isLoading = true;\n var isIframe = this.$store.state.login.meta.isIframe;\n if (isIframe) e.preventDefault();\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__utils_urlHelper__[\"d\" /* navigateExternalURL */])(this.googleSSOURL, isIframe);\n },\n reset: function reset() {\n this.formError = '';\n this.state = 'normal';\n this.twoFactorPasscode = '';\n this.selectedAccount = null;\n this.isLoading = false;\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_7__utils_uiHelper__[\"a\" /* smartFocus */])();\n },\n continueToProduct: function continueToProduct() {\n // eslint-disable-next-line\n if (this.loginType !== 'account' || !this.loggedIn || !this.$route.params.productCode || this.isValidationPending) return;\n this.isLoading = true;\n window.location.href = this.afterLoginURL;\n }\n },\n watch: {\n isLoading: function isLoading() {\n window.parent.postMessage('pageResized', '*');\n },\n loggedIn: function loggedIn(_loggedIn) {\n if (_loggedIn) this.continueToProduct();\n }\n }\n});\n\n/***/ }),\n/* 270 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__utils_appLoginHelper__ = __webpack_require__(43);\n\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'SiteNotFound',\n components: {\n PageHeader: __WEBPACK_IMPORTED_MODULE_2__components_widgets_PageHeader_PageHeader_vue___default.a\n },\n data: function data() {\n return {\n siteAddress: window.location.hostname\n };\n },\n\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* mapState */])({\n inAppLogin: function inAppLogin(state) {\n return state.login.loginType === 'app';\n },\n appInfo: function appInfo(state) {\n return state.login.appInfo;\n }\n })),\n methods: {\n onClickBackToApp: function onClickBackToApp() {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__utils_appLoginHelper__[\"a\" /* redirectToAppWithError */])(this.appInfo, 'server_error', 'users installation could not be found');\n }\n }\n});\n\n/***/ }),\n/* 271 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'AccountList',\n props: {\n accounts: {\n type: Array,\n default: function _default() {\n return [];\n }\n }\n },\n methods: {\n onSelectAccount: function onSelectAccount(account) {\n this.$emit('account-selected', account);\n },\n getBackgroundImage: function getBackgroundImage(account) {\n return account.installation.logo ? 'url(\\'' + account.installation.logo + '\\')' : '';\n }\n }\n});\n\n/***/ }),\n/* 272 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vuex__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__utils_appLoginHelper__ = __webpack_require__(43);\n\n\n\n\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'Loading',\n props: {\n isLoading: {\n type: Boolean,\n required: true\n }\n },\n data: function data() {\n return {\n showTryAgain: false,\n tryAgainTimeout: null\n };\n },\n created: function created() {\n this.setupTryAgain(this.isLoading);\n },\n\n watch: {\n isLoading: function isLoading(newVal) {\n this.setupTryAgain(newVal);\n }\n },\n methods: {\n setupTryAgain: function setupTryAgain(isLoading) {\n var _this = this;\n\n if (isLoading) {\n this.tryAgainTimeout = setTimeout(function () {\n _this.showTryAgain = true;\n }, 8000);\n } else {\n clearTimeout(this.tryAgainTimeout);\n }\n },\n onCancel: function onCancel() {\n if (!this.inAppLogin) return false;\n return __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__utils_appLoginHelper__[\"a\" /* redirectToAppWithError */])(this.appInfo, 'access_denied', 'user cancelled the login process');\n }\n },\n computed: __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1_vuex__[\"a\" /* mapState */])({\n appInfo: function appInfo(state) {\n return state.login.appInfo;\n },\n inAppLogin: function inAppLogin(state) {\n return state.login.loginType === 'app';\n }\n }))\n});\n\n/***/ }),\n/* 273 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n// @vue/component\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n name: 'PageHeader',\n props: {\n title: {\n type: String,\n default: 'Log in'\n },\n subTitle: {\n type: String,\n default: ''\n },\n error: {\n type: String,\n default: ''\n },\n hideable: { // can be hidden by `hide-title` extra property\n type: Boolean,\n default: true\n }\n }\n});\n\n/***/ }),\n/* 274 */,\n/* 275 */,\n/* 276 */,\n/* 277 */,\n/* 278 */,\n/* 279 */,\n/* 280 */,\n/* 281 */,\n/* 282 */,\n/* 283 */,\n/* 284 */,\n/* 285 */,\n/* 286 */,\n/* 287 */,\n/* 288 */,\n/* 289 */,\n/* 290 */,\n/* 291 */,\n/* 292 */,\n/* 293 */,\n/* 294 */,\n/* 295 */,\n/* 296 */,\n/* 297 */,\n/* 298 */,\n/* 299 */,\n/* 300 */,\n/* 301 */,\n/* 302 */,\n/* 303 */,\n/* 304 */,\n/* 305 */,\n/* 306 */,\n/* 307 */,\n/* 308 */,\n/* 309 */,\n/* 310 */,\n/* 311 */,\n/* 312 */,\n/* 313 */,\n/* 314 */,\n/* 315 */,\n/* 316 */,\n/* 317 */,\n/* 318 */,\n/* 319 */,\n/* 320 */,\n/* 321 */,\n/* 322 */,\n/* 323 */,\n/* 324 */,\n/* 325 */,\n/* 326 */,\n/* 327 */,\n/* 328 */,\n/* 329 */,\n/* 330 */,\n/* 331 */,\n/* 332 */,\n/* 333 */,\n/* 334 */,\n/* 335 */,\n/* 336 */,\n/* 337 */,\n/* 338 */,\n/* 339 */,\n/* 340 */,\n/* 341 */,\n/* 342 */,\n/* 343 */,\n/* 344 */,\n/* 345 */,\n/* 346 */,\n/* 347 */,\n/* 348 */,\n/* 349 */,\n/* 350 */,\n/* 351 */,\n/* 352 */,\n/* 353 */,\n/* 354 */,\n/* 355 */,\n/* 356 */,\n/* 357 */,\n/* 358 */,\n/* 359 */,\n/* 360 */,\n/* 361 */,\n/* 362 */,\n/* 363 */,\n/* 364 */,\n/* 365 */,\n/* 366 */,\n/* 367 */,\n/* 368 */,\n/* 369 */,\n/* 370 */,\n/* 371 */,\n/* 372 */,\n/* 373 */,\n/* 374 */,\n/* 375 */,\n/* 376 */,\n/* 377 */,\n/* 378 */,\n/* 379 */,\n/* 380 */,\n/* 381 */,\n/* 382 */,\n/* 383 */,\n/* 384 */,\n/* 385 */,\n/* 386 */,\n/* 387 */,\n/* 388 */,\n/* 389 */,\n/* 390 */,\n/* 391 */,\n/* 392 */,\n/* 393 */,\n/* 394 */,\n/* 395 */,\n/* 396 */,\n/* 397 */,\n/* 398 */,\n/* 399 */,\n/* 400 */,\n/* 401 */,\n/* 402 */,\n/* 403 */,\n/* 404 */,\n/* 405 */,\n/* 406 */,\n/* 407 */,\n/* 408 */,\n/* 409 */,\n/* 410 */,\n/* 411 */,\n/* 412 */,\n/* 413 */,\n/* 414 */,\n/* 415 */,\n/* 416 */,\n/* 417 */,\n/* 418 */,\n/* 419 */,\n/* 420 */,\n/* 421 */,\n/* 422 */,\n/* 423 */,\n/* 424 */,\n/* 425 */,\n/* 426 */,\n/* 427 */,\n/* 428 */,\n/* 429 */,\n/* 430 */,\n/* 431 */,\n/* 432 */,\n/* 433 */,\n/* 434 */,\n/* 435 */,\n/* 436 */,\n/* 437 */,\n/* 438 */,\n/* 439 */,\n/* 440 */,\n/* 441 */,\n/* 442 */,\n/* 443 */,\n/* 444 */,\n/* 445 */,\n/* 446 */,\n/* 447 */,\n/* 448 */,\n/* 449 */,\n/* 450 */,\n/* 451 */,\n/* 452 */,\n/* 453 */,\n/* 454 */,\n/* 455 */,\n/* 456 */,\n/* 457 */,\n/* 458 */,\n/* 459 */,\n/* 460 */,\n/* 461 */,\n/* 462 */,\n/* 463 */,\n/* 464 */,\n/* 465 */,\n/* 466 */,\n/* 467 */,\n/* 468 */,\n/* 469 */,\n/* 470 */,\n/* 471 */,\n/* 472 */,\n/* 473 */,\n/* 474 */,\n/* 475 */,\n/* 476 */,\n/* 477 */,\n/* 478 */,\n/* 479 */,\n/* 480 */,\n/* 481 */,\n/* 482 */,\n/* 483 */,\n/* 484 */,\n/* 485 */,\n/* 486 */,\n/* 487 */,\n/* 488 */,\n/* 489 */,\n/* 490 */,\n/* 491 */,\n/* 492 */,\n/* 493 */,\n/* 494 */,\n/* 495 */,\n/* 496 */,\n/* 497 */,\n/* 498 */,\n/* 499 */,\n/* 500 */,\n/* 501 */,\n/* 502 */,\n/* 503 */,\n/* 504 */,\n/* 505 */,\n/* 506 */,\n/* 507 */,\n/* 508 */,\n/* 509 */,\n/* 510 */,\n/* 511 */,\n/* 512 */,\n/* 513 */,\n/* 514 */,\n/* 515 */,\n/* 516 */,\n/* 517 */,\n/* 518 */,\n/* 519 */,\n/* 520 */,\n/* 521 */,\n/* 522 */,\n/* 523 */,\n/* 524 */,\n/* 525 */,\n/* 526 */,\n/* 527 */,\n/* 528 */,\n/* 529 */,\n/* 530 */,\n/* 531 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 532 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 533 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 534 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 535 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 536 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 537 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 538 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 539 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 540 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 541 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 542 */,\n/* 543 */,\n/* 544 */,\n/* 545 */,\n/* 546 */,\n/* 547 */,\n/* 548 */,\n/* 549 */,\n/* 550 */,\n/* 551 */,\n/* 552 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__.p + \"static/img/client-persona.cfaa813.png\";\n\n/***/ }),\n/* 553 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__.p + \"static/img/contributor-persona.a9ff0be.png\";\n\n/***/ }),\n/* 554 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__.p + \"static/img/email-expired.7e71ad6.png\";\n\n/***/ }),\n/* 555 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__.p + \"static/img/email-send.1977181.png\";\n\n/***/ }),\n/* 556 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__.p + \"static/img/email-verified.22eff19.png\";\n\n/***/ }),\n/* 557 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjBweCIgaGVpZ2h0PSIyMHB4IiB2aWV3Qm94PSIwIDAgMjAgMjAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDUwLjIgKDU1MDQ3KSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5Hcm91cCAyPC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+PC9kZWZzPgogICAgPGcgaWQ9Ik5hdGl2ZS1TaWduLWluLWlPUyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9ImlwaG9uZVgvY2hvb3NlX3NpdGUvZGVmYXVsdC8iIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0zMzAuMDAwMDAwLCAtMjUzLjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0iR3JvdXAtNS1Db3B5LTE3IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjAwMDAwMCwgMjIwLjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg4LjAwMDAwMCwgMTYuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwLTIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMyMi4wMDAwMDAsIDE3LjAwMDAwMCkiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZyBpZD0iR3JvdXAtNCIgZmlsbD0iIzUxOUZGOCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNC40NDQyMDg3LDE5Ljk5ODkzOTEgQzEuOTg4NzgzMzksMTkuOTk4OTM5MSAwLDE4LjAwOTA0NDcgMCwxNS41NTQ3MzA0IEwwLDQuNDQ0MjA4NyBDMCwxLjk4OTg5NDQ0IDEuOTg4NzgzMzksMCA0LjQ0NDIwODcsMCBMMTUuNTU0NzMwNCwwIEMxOC4wMDkwNDQ3LDAgMTkuOTk4OTM5MSwxLjk4OTg5NDQ0IDE5Ljk5ODkzOTEsNC40NDQyMDg3IEwxOS45OTg5MzkxLDE1LjU1NDczMDQgQzE5Ljk5ODkzOTEsMTguMDA5MDQ0NyAxOC4wMDkwNDQ3LDE5Ljk5ODkzOTEgMTUuNTU0NzMwNCwxOS45OTg5MzkxIEw0LjQ0NDIwODcsMTkuOTk4OTM5MSBaIiBpZD0iRmlsbC0yIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwLTIxIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzLjAwMDAwMCwgMy4wMDAwMDApIiBmaWxsPSIjRkZGRkZGIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik01LjYzMjcxMjU4LDEuMTI2NTQyNTIgQzUuNjMyNzEyNTgsMC41MDQ2OTEwNDcgNi4xMzYyNzcwOSwwIDYuNzU5MjU1MSwwIEM3LjM4MjIzMzExLDAgNy44ODU3OTc2MSwwLjUwNDY5MTA0NyA3Ljg4NTc5NzYxLDEuMTI2NTQyNTIgQzcuODg1Nzk3NjEsMS43NDgzOTM5OSA3LjM4MjIzMzExLDIuMjUzMDg1MDMgNi43NTkyNTUxLDIuMjUzMDg1MDMgQzYuMTM2Mjc3MDksMi4yNTMwODUwMyA1LjYzMjcxMjU4LDEuNzQ4MzkzOTkgNS42MzI3MTI1OCwxLjEyNjU0MjUyIiBpZD0iRmlsbC01Ij48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNS42MzI3MTI1OCwxMi4zOTE5Njc3IEM1LjYzMjcxMjU4LDExLjc3MDExNjIgNi4xMzYyNzcwOSwxMS4yNjU0MjUyIDYuNzU5MjU1MSwxMS4yNjU0MjUyIEM3LjM4MjIzMzExLDExLjI2NTQyNTIgNy44ODU3OTc2MSwxMS43NzAxMTYyIDcuODg1Nzk3NjEsMTIuMzkxOTY3NyBDNy44ODU3OTc2MSwxMy4wMTM4MTkxIDcuMzgyMjMzMTEsMTMuNTE4NTEwMiA2Ljc1OTI1NTEsMTMuNTE4NTEwMiBDNi4xMzYyNzcwOSwxMy41MTg1MTAyIDUuNjMyNzEyNTgsMTMuMDEzODE5MSA1LjYzMjcxMjU4LDEyLjM5MTk2NzciIGlkPSJGaWxsLTciPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xMi4zOTE5Njc3LDUuNjMyNzEyNTggQzEzLjAxNDk0NTcsNS42MzI3MTI1OCAxMy41MTg1MTAyLDYuMTM3NDAzNjMgMTMuNTE4NTEwMiw2Ljc1OTI1NTEgQzEzLjUxODUxMDIsNy4zODExMDY1NyAxMy4wMTQ5NDU3LDcuODg1Nzk3NjEgMTIuMzkxOTY3Nyw3Ljg4NTc5NzYxIEMxMS43Njg5ODk3LDcuODg1Nzk3NjEgMTEuMjY1NDI1Miw3LjM4MTEwNjU3IDExLjI2NTQyNTIsNi43NTkyNTUxIEMxMS4yNjU0MjUyLDYuMTM3NDAzNjMgMTEuNzY4OTg5Nyw1LjYzMjcxMjU4IDEyLjM5MTk2NzcsNS42MzI3MTI1OCIgaWQ9IkZpbGwtOSI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTEuMTI2NTQyNTIsNS42MzI3MTI1OCBDMS43NDk1MjA1Myw1LjYzMjcxMjU4IDIuMjUzMDg1MDMsNi4xMzc0MDM2MyAyLjI1MzA4NTAzLDYuNzU5MjU1MSBDMi4yNTMwODUwMyw3LjM4MTEwNjU3IDEuNzQ5NTIwNTMsNy44ODU3OTc2MSAxLjEyNjU0MjUyLDcuODg1Nzk3NjEgQzAuNTAzNTY0NTA1LDcuODg1Nzk3NjEgMCw3LjM4MTEwNjU3IDAsNi43NTkyNTUxIEMwLDYuMTM3NDAzNjMgMC41MDM1NjQ1MDUsNS42MzI3MTI1OCAxLjEyNjU0MjUyLDUuNjMyNzEyNTgiIGlkPSJGaWxsLTExIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTEuNTM4MjczOCw5Ljk0NTc5MzI2IEMxMS45Nzg3NTE5LDEwLjM4NTE0NDggMTEuOTc4NzUxOSwxMS4wOTgyNDYzIDExLjUzODI3MzgsMTEuNTM4NzI0NCBDMTEuMDk4OTIyMiwxMS45NzkyMDI1IDEwLjM4NTgyMDgsMTEuOTc5MjAyNSA5Ljk0NTM0MjY0LDExLjUzODcyNDQgQzkuNTA0ODY0NTIsMTEuMDk4MjQ2MyA5LjUwNDg2NDUyLDEwLjM4NTE0NDggOS45NDUzNDI2NCw5Ljk0NTc5MzI2IEMxMC4zODU4MjA4LDkuNTA1MzE1MTMgMTEuMDk4OTIyMiw5LjUwNTMxNTEzIDExLjUzODI3MzgsOS45NDU3OTMyNiIgaWQ9IkZpbGwtMTMiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0zLjU3MzI4MDIxLDEuOTc5NjczMTYgQzQuMDEzNzU4MzMsMi40MjAxNTEyOSA0LjAxMzc1ODMzLDMuMTMzMjUyNyAzLjU3MzI4MDIxLDMuNTcyNjA0MjggQzMuMTMyODAyMDgsNC4wMTMwODI0MSAyLjQxOTcwMDY3LDQuMDEzMDgyNDEgMS45ODAzNDkwOSwzLjU3MjYwNDI4IEMxLjUzOTg3MDk3LDMuMTMzMjUyNyAxLjUzOTg3MDk3LDIuNDIwMTUxMjkgMS45ODAzNDkwOSwxLjk3OTY3MzE2IEMyLjQxOTcwMDY3LDEuNTM5MTk1MDQgMy4xMzI4MDIwOCwxLjUzOTE5NTA0IDMuNTczMjgwMjEsMS45Nzk2NzMxNiIgaWQ9IkZpbGwtMTUiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik05Ljk0NTIyOTk5LDEuOTc5NjczMTYgQzEwLjM4NTcwODEsMS41MzkxOTUwNCAxMS4wOTg4MDk1LDEuNTM5MTk1MDQgMTEuNTM4MTYxMSwxLjk3OTY3MzE2IEMxMS45Nzg2MzkyLDIuNDIwMTUxMjkgMTEuOTc4NjM5MiwzLjEzMzI1MjcgMTEuNTM4MTYxMSwzLjU3MjYwNDI4IEMxMS4wOTg4MDk1LDQuMDEzMDgyNDEgMTAuMzg1NzA4MSw0LjAxMzA4MjQxIDkuOTQ1MjI5OTksMy41NzI2MDQyOCBDOS41MDQ3NTE4NiwzLjEzMzI1MjcgOS41MDQ3NTE4NiwyLjQyMDE1MTI5IDkuOTQ1MjI5OTksMS45Nzk2NzMxNiIgaWQ9IkZpbGwtMTciPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xLjk4MDIzNjQzLDkuOTQ1NzkzMjYgQzIuNDE5NTg4MDIsOS41MDUzMTUxMyAzLjEzMjY4OTQzLDkuNTA1MzE1MTMgMy41NzMxNjc1NSw5Ljk0NTc5MzI2IEM0LjAxMzY0NTY4LDEwLjM4NTE0NDggNC4wMTM2NDU2OCwxMS4wOTgyNDYzIDMuNTczMTY3NTUsMTEuNTM4NzI0NCBDMy4xMzI2ODk0MywxMS45NzkyMDI1IDIuNDE5NTg4MDIsMTEuOTc5MjAyNSAxLjk4MDIzNjQzLDExLjUzODcyNDQgQzEuNTM5NzU4MzEsMTEuMDk4MjQ2MyAxLjUzOTc1ODMxLDEwLjM4NTE0NDggMS45ODAyMzY0Myw5Ljk0NTc5MzI2IiBpZD0iRmlsbC0xOSI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=\"\n\n/***/ }),\n/* 558 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAABwRJREFUWAnFV3lsXMUZ/76Z9/by2o7xKWoEhiYYIlAp5fgDiClJhEEBiogbFZBcytFKUJoiDgkERhWHFFKIAAESAYQCiFgorVRqcihdUqhTUloaYkUoITgkgTgbfNu7772Z+frN27zau/YGg4QYafXezPuO33fPAnzPC7+p/qHOa+bB8MQpOpg8FTQ1EVJKGpEXiAPKlf1OZXpv9etvj7BgMxfZcwKw54474jV7/nWRMNhBqNtIUUtMomuZIwFEAD6QJsKDAmGbFvJN8mLvNmQy48cDEvGXpcm2X7xIGn8lK79MAKUVGdBMbRWWLitMMCRXIhCQr4zYSsKsGvNT/2jJZPKl9HZfFsCR5W1pGPHvdEDfjkRNbBqYWZTOJjQSHBOCX+moR+IplMFL9Rs//LKU3lLMWF8sW1Ynx7zVSdB3gzFNAWsup7ycBRZr3hjrkTpHwM0KnFZavlyWKnNKD/Zc317lZrOPugA/942p0iVWW4UxFGCNC/ibYc9IRHD4A/G74l/EE2c6JbDfoLxLVZrt2N1to1e0igBQV5c40rvxdwmAq32ji5RHijXCeCCwl1BuJkf2SekMB0alQekF7KkljlaLODuruSrAIOwDR64cm3A3tbwzhxwY+OklS+OOv0YZ3Trd5Va5wwJJineEk1g9lvLeP6m7N1dkCm+sAYP/2XYhTk48SAJPMhLvraN5m7GnxyuljfZWdriorz49sqbxRb0/ebUJMMH1HZ4XlAttXPE0efBE3dbeQ8dYyj6+bG+vV9KLNScHstjd55cl5A9TALZVXUnG/2NuR+2C3HsNYEY5CwSBy3Fky58nUo/Wbtpx4HjCvs23sAo4eTAI9BIUuiF+3gBUXPM5OM0T4DI+g2KHMvjCd6HcAi6U4QfNJyDps7WPlZy24LSMQPra/RD70aCmKrXOIe+zb2PdXHjCKggmgmbXwTqtQXIVQQii1gNxxcHP3PyRf7pXjo6WE7b0sdGbUMYv18pUQtgjy1FOnQtHWkVrHakyIQAErw6ESYTjo5B7TI0gHNqt4t4QJ8r/T6fEFN6IxEJAZzE4VAPEeTOHhQxAa38XotgZAqDkyQvI/3QeUFDEzqmRJUZXdFi6QQiM4UatFTeiOQ1AlpCwjasOtEqFACQg2TIvlf1d7S3QZJyaEq5JhwD8XP+ehKNG2OsN02EwYQM3hPjxgHB4uN3z+OOSBXZX6Qq9EibW1BfkPj7hm/1+EB8OAQgnngXj53mcT1HxIFHktg4LtwbAs5Jn9ZAQcognwCFDZhxnhMAOMa4shCrGMDX4eIOARw3kciGAWPyEQ3p8LMsWcKvntoMGDvhpWJs/s+XfqvEnP1yX2r33htdmrYSmhsSTwsAz3gTLLFkV8SHcN+SuIoqt4NKqjC4RZALSKA6JZPVoCAB6VgzRoic+lqjPRWOqe/0meG78DNgNNZJNuLE2Yf6+F2Bnifxw+8ov0V40Zr1sLH4sfyo77kwgVREpR8ETmfQgt7hPAQ6Mhm7Bri7jQGKLJ+MDr+fmQ9foObBLVTMfz3NBFzDDbResu7Z5NgDlzmx3FUbfREK2cklPuV84wBN0J4/xgz2/ne9NfRg9/d3ff3Xhf5+dXJg/auIcMBsnjiEPdwN0KybkynPeuOrEcgqnn5/LDWHJ494tRro3gg5qi8rT5gnRJieRPmx5iuL24/Wdl0uZe5KUbo1cFgpmmNw0bLH+lblXsxN7ezu6Z4xjS3v++mUtscnFv44NXsfBqa3nBsGnhfxFGeNiMbuE8H618d6qHSy1uG66qEts7v7kgcAxtxul60vvYcJlJARj7JL32cVb+I7QZ4wY5otniivgFEXiYiHMZVyVJ4rJFpnIdoDIncEA2E5uNFwxgRD6LmOSr265D0cs4CIP2IPF62+tHhfDq0jACh1wfy+pYVtMQrIPmJM0B4cNRLuVhWgazpuwpaMPQtdAfOhnEBtZxN26irt1sNYPcn/Y+kDNfqvLLmYtXvu6P/TO6jx/u+/rRnDFfLY0fsyDBULbb/i6xP8AIs+GT7svOmPRJHKgUx8DJvPgBtUbHL/64U33V+6brnGGB6KPV/35nsqj6vM7teFwIDUWhM/aiyKWGU/k6zB73uer/auxlHkk0/6n/lKisgAiwrYNN7T5Sq1UHFt2e4VhtxembhkwUYg4dFKIj1DJNSkINmzp6A5jHsmNnl8LwBJ2/q0zsXfQXGQw6ODkvJQjfzI4gi9M7HbGgWymfeG+wXdRzEqUH/A/t7fS2nm7p+PlbKRstuecAExn/MVfflPzBXqnQaBOk8b8wJUVNYGaHAuQDjtS9rv8L9Lb/lE205VR0/nKvX9jALbDXZp5WNZn+8R4ugkbk7U4kPuK0uOHKVu/0LS1gXkIHuLxfuxaXU7zsfP/AcVdOIL39WLnAAAAAElFTkSuQmCC\"\n\n/***/ }),\n/* 559 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yMC44MDAzIDYuMjQwNTNDMjEuMDgxNyA2LjU0NDUxIDIxLjA2MzQgNy4wMTkwMyAyMC43NTk0IDcuMzAwNEw5LjQxNTcyIDE3LjgwMDNDOS4xMjgyIDE4LjA2NjYgOC42ODQyOSAxOC4wNjY2IDguMzk2NzggMTcuODAwM0wzLjI0MDUzIDEzLjAyNzdDMi45MzY1NiAxMi43NDYzIDIuOTE4MjMgMTIuMjcxOCAzLjE5OTYgMTEuOTY3OEMzLjQ4MDk3IDExLjY2MzggMy45NTU0OCAxMS42NDU1IDQuMjU5NDcgMTEuOTI2OUw4LjkwNjI0IDE2LjIyOEwxOS43NDA2IDYuMTk5NkMyMC4wNDQ1IDUuOTE4MjMgMjAuNTE5MSA1LjkzNjU2IDIwLjgwMDMgNi4yNDA1M1oiIGZpbGw9IiM0NDYxRDciLz4KPC9zdmc+Cg==\"\n\n/***/ }),\n/* 560 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+CiAgPHBhdGggZD0iTTEyIDdjMi43NiAwIDUgMi4yNCA1IDUgMCAuNjUtLjEzIDEuMjYtLjM2IDEuODNsMi45MiAyLjkyYzEuNTEtMS4yNiAyLjctMi44OSAzLjQzLTQuNzUtMS43My00LjM5LTYtNy41LTExLTcuNS0xLjQgMC0yLjc0LjI1LTMuOTguN2wyLjE2IDIuMTZDMTAuNzQgNy4xMyAxMS4zNSA3IDEyIDd6TTIgNC4yN2wyLjI4IDIuMjguNDYuNDZDMy4wOCA4LjMgMS43OCAxMC4wMiAxIDEyYzEuNzMgNC4zOSA2IDcuNSAxMSA3LjUgMS41NSAwIDMuMDMtLjMgNC4zOC0uODRsLjQyLjQyTDE5LjczIDIyIDIxIDIwLjczIDMuMjcgMyAyIDQuMjd6TTcuNTMgOS44bDEuNTUgMS41NWMtLjA1LjIxLS4wOC40My0uMDguNjUgMCAxLjY2IDEuMzQgMyAzIDMgLjIyIDAgLjQ0LS4wMy42NS0uMDhsMS41NSAxLjU1Yy0uNjcuMzMtMS40MS41My0yLjIuNTMtMi43NiAwLTUtMi4yNC01LTUgMC0uNzkuMi0xLjUzLjUzLTIuMnptNC4zMS0uNzggMy4xNSAzLjE1LjAyLS4xNmMwLTEuNjYtMS4zNC0zLTMtM2wtLjE3LjAxeiIgLz4KPC9zdmc+Cg==\"\n\n/***/ }),\n/* 561 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+CiAgPHBhdGggZD0iTTEyIDQuNUM3IDQuNSAyLjczIDcuNjEgMSAxMmMxLjczIDQuMzkgNiA3LjUgMTEgNy41czkuMjctMy4xMSAxMS03LjVjLTEuNzMtNC4zOS02LTcuNS0xMS03LjV6TTEyIDE3Yy0yLjc2IDAtNS0yLjI0LTUtNXMyLjI0LTUgNS01IDUgMi4yNCA1IDUtMi4yNCA1LTUgNXptMC04Yy0xLjY2IDAtMyAxLjM0LTMgM3MxLjM0IDMgMyAzIDMtMS4zNCAzLTMtMS4zNC0zLTMtM3oiIC8+Cjwvc3ZnPgo=\"\n\n/***/ }),\n/* 562 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__.p + \"static/img/ops-manager-persona.2c7f148.png\";\n\n/***/ }),\n/* 563 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__.p + \"static/img/pm-persona.458a377.png\";\n\n/***/ }),\n/* 564 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgMTkyMCAyNDcuMzMiPjxkZWZzPjxzdHlsZT4uY2xzLTF7bWFzazp1cmwoI21hc2spO30uY2xzLTJ7ZmlsbDojZmZmO30uY2xzLTMsLmNscy00e2ZpbGw6IzFkMWMzOTt9LmNscy00LC5jbHMtNXtmaWxsLXJ1bGU6ZXZlbm9kZDt9LmNscy01e2ZpbGw6I2ZmMjJiMTt9LmNscy02e2lzb2xhdGlvbjppc29sYXRlO30uY2xzLTd7bWFzazp1cmwoI21hc2stMSk7fTwvc3R5bGU+PG1hc2sgaWQ9Im1hc2siIHg9IjMwLjA2IiB5PSIxOS40IiB3aWR0aD0iODUuNTkiIGhlaWdodD0iMjA1Ljc5IiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cmVjdCB4PSIzMC4wNiIgeT0iMTkuNCIgd2lkdGg9Ijg1LjU5IiBoZWlnaHQ9IjIwNS43OSIvPjxnIGNsYXNzPSJjbHMtNiI+PHJlY3QgY2xhc3M9ImNscy0yIiB4PSIzMC4wNiIgeT0iMTkuNCIgd2lkdGg9Ijg1LjU5IiBoZWlnaHQ9IjIwNS43OSIvPjwvZz48L21hc2s+PG1hc2sgaWQ9Im1hc2stMSIgeD0iMTQ4Ny4xMyIgeT0iMTcyLjMiIHdpZHRoPSI1Mi45NyIgaGVpZ2h0PSI1Mi45NyIgbWFza1VuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHJlY3QgeD0iMTQ4Ny4xMyIgeT0iMTcyLjMiIHdpZHRoPSI1Mi45NyIgaGVpZ2h0PSI1Mi45NyIvPjxnIGNsYXNzPSJjbHMtNiI+PHJlY3QgY2xhc3M9ImNscy0yIiB4PSIxNDg3LjEzIiB5PSIxNzIuMyIgd2lkdGg9IjUyLjk3IiBoZWlnaHQ9IjUyLjk3Ii8+PC9nPjwvbWFzaz48L2RlZnM+PGcgaWQ9InRlYW13b3JrLWxvZ28iPjxnIGNsYXNzPSJjbHMtMSI+PHBhdGggY2xhc3M9ImNscy00IiBkPSJtOTcuMSw5Ni4yMWMxMS43OSwwLDE4LjU1LTYuNDMsMTguNTUtMTcuNjMsMC0xMC41NC03LjI3LTE3LjYzLTE4LjA5LTE3LjYzaC0yNi43NHYtMTkuOGMwLTE0LjI4LTEwLjI1LTIxLjc1LTIwLjM4LTIxLjc1cy0yMC4zOCw3LjQ3LTIwLjM4LDIxLjc1djEzNi41N2MwLDMyLjgyLDEzLjA4LDQ3LjQ2LDQyLjQxLDQ3LjQ2LDE1LjksMCwyNC45OC00LjA4LDMxLjc0LTguMDYsNS4xNi0yLjg3LDctOC45Niw3LTEzLjcsMC04Ljc4LTUuODctMTguNTYtMTQuMy0xOC41Ni0xLjE3LDAtMi4zNS4yLTMuNjIuNjItLjQ0LjE4LS45NC40LTEuNDkuNjYtMi4yMiwxLjAyLTUuMjUsMi40MS05LjcsMi40MS01LjI2LDAtMTEuMjktMS44Ni0xMS4yOS0xNi4zNHYtNzYuMDFoMjYuMjhaIi8+PC9nPjxwYXRoIGNsYXNzPSJjbHMtNCIgZD0ibTE5MS4zNiw5MC42OWM1LjE2LTEuODgsMTAuMjktMi44MywxNS4yNS0yLjgzLDE2Ljk2LDAsMjguODIsMTAuOTYsMzQuNjksMjEuODdsLTc1Ljk1LDI3LjY0Yy0zLjQ3LTE2LjQyLDEuMy0zNy42OSwyNi4wMS00Ni42OW04MS41OCw3NS44MmMtNC4wMywwLTguMDMsMS40OC0xMS41NSw0LjI3bC0uNTcuNTFjLTcuMTIsNi4zNS0xNS4zLDExLjE1LTI1LDE0LjY4LTcuMjUsMi42NC0xNC4zNSwzLjk4LTIxLjExLDMuOTgtMTcuNjEsMC0zMi40Mi05LjQxLTQwLjAxLTI1LjNsOTMuNzEtMzQuMWMxNC43NS01LjM3LDE2Ljc0LTE2LjI5LDEzLjY3LTI0LjcxLTExLjQ0LTMxLjQyLTM4LjM5LTUwLjk0LTcwLjMzLTUwLjk0LTEwLjQyLDAtMjEuMjUsMi4wMi0zMi4xOSw2LTI0LjAyLDguNzQtNDEuMTMsMjQuNTEtNDkuNDksNDUuNi03LjU3LDE5LjExLTcuMzksNDEuNTguNTEsNjMuMjgsMTIuNzgsMzUuMTEsMzkuOTUsNTUuMjQsNzQuNTcsNTUuMjQsNi41NSwwLDEzLjQxLS43MywyMC4zOS0yLjE4LDYuMzItMS4zMSwxMi4yLTIuOTcsMTcuOTYtNS4wNywxNS42OC01LjcsMjkuOTUtMTMuOTQsNDEuMjktMjMuODJsLjEtLjA5LjA5LS4xYzMuNzYtNC4yNyw1LjI2LTkuMzQsNC4yMi0xNC4zLTEuNTUtNy4zOS04LjUyLTEyLjk2LTE2LjIzLTEyLjk2Ii8+PHBhdGggY2xhc3M9ImNscy00IiBkPSJtNDMwLjE5LDE0MC41NWMwLDIzLjktMTMuNTcsNDguMDEtNDMuODgsNDguMDEtMjUuOTcsMC00My40Mi0xOS4xMS00My40Mi00Ny41NXMxNy42NC00OC40Niw0My44OC00OC40NmMyMS42MSwwLDQzLjQyLDE0Ljg1LDQzLjQyLDQ4LjAxbTIxLjMtODQuNjRjLTEyLjA4LDAtMjAuODQsOC41Ny0yMC44NCwyMC4zOHYuNjVjLTEyLTEzLjYxLTI5Ljc5LTIxLjAzLTUwLjc2LTIxLjAzLTQ3LjMzLDAtNzkuMTMsMzQuMDEtNzkuMTMsODQuNjRzMzEuMjUsODQuNjQsNzcuNzYsODQuNjRjMjIuOCwwLDQxLjM4LTguMjgsNTMuMDYtMjMuNDZ2My4wOGMwLDE1LjAyLDEwLjI5LDIwLjM4LDE5LjkyLDIwLjM4LDEyLjAxLDAsMTkuNDctNy44MSwxOS40Ny0yMC4zOFY3Ni4yOWMwLTEyLjM4LTcuNjQtMjAuMzgtMTkuNDctMjAuMzgiLz48cGF0aCBjbGFzcz0iY2xzLTQiIGQ9Im02ODUuNzMsNTUuOTFjLTIzLjk0LDAtNDIuNDUsMTAuNi01MS40OSwyOS4yNi05LjkxLTE5LjE3LTI3LjcyLTI5LjI2LTUxLjc5LTI5LjI2LTE3LjkyLDAtMzMuOTQsNy4xLTQzLjQzLDE4Ljg4LS4yOS0xMC45OC04Ljc3LTE4Ljg4LTIwLjM4LTE4Ljg4LTEwLjM3LDAtMjAuODQsNi41OS0yMC44NCwyMS4zdjEyNy42YzAsMTMuMTUsNy4yNCwyMC4zOCwyMC4zOCwyMC4zOHMyMC44NC03LjYyLDIwLjg0LTIwLjM4di03Ni4yYzAtMjUuMTUsMTEuMjEtMzcuOTEsMzMuMzEtMzcuOTFzMzAuNTgsMTIuMDUsMzAuNTgsNDEuNTl2NzIuMDZjMCwxMy40NCw3LjI0LDIwLjg0LDIwLjM4LDIwLjg0czIwLjg0LTcuNiwyMC44NC0yMC44NHYtNzEuMTVjMC0yOC42LDExLjA1LTQyLjUsMzMuNzktNDIuNSwyMS40MiwwLDMwLjU3LDEyLjcxLDMwLjU3LDQyLjV2NzEuMTVjMCwxMy40NCw3LjI0LDIwLjg0LDIwLjM4LDIwLjg0czIwLjg0LTcuNiwyMC44NC0yMC44NHYtNzEuMTVjMC01MS4yOS0yMS41My03Ny4zLTYzLjk5LTc3LjMiLz48cGF0aCBjbGFzcz0iY2xzLTQiIGQ9Im05OTguNDYsNTUuOTFjLTkuMDUsMC0xNi42NCw2LjUyLTIwLjI2LDE3LjQxbC0zNC44MSw5OC4zMy0zNC4zNi05Ny44NmMtMy43My0xMC43My04LjQ1LTE3Ljg4LTE5LjM1LTE3Ljg4LTExLjY1LDAtMTUuOTUsNi4yOS0xOS44LDE3Ljg3bC0zNC4zNyw5Ny44Ny0zNC43OS05OC4yOWMtMy42NC0xMC45Mi0xMS4yMi0xNy40NS0yMC4yNy0xNy40NXMtMTcuNjMsNy4xMS0xNy42MywxOWMwLDMuODEuODcsNy42MSwyLjksMTIuNjdsNDYuODIsMTE5LjM2YzQuNDgsMTAuOTUsMTAuMSwxOC4yNCwyMi45OCwxOC4yNCwxNC4xLDAsMTkuNDYtOS43OSwyMi41Ni0xOC4zMWwzMS41OC04Ni4wOSwzMC42OSw4Ni4wNGM0LjA2LDEyLjE5LDExLjgxLDE4LjM3LDIzLjAzLDE4LjM3czE4LjYtNi4xNCwyMy40Ni0xOC4yOGw0Ni4zMS0xMTkuNzFjMi00LjUsMi45NC04LjQxLDIuOTQtMTIuMywwLTEwLjgzLTcuNTgtMTktMTcuNjQtMTkiLz48cGF0aCBjbGFzcz0iY2xzLTQiIGQ9Im0xMTAzLjI4LDE5Mi42OWMtMjcuMDcsMC00My44OC0xOS45OC00My44OC01Mi4xNHMxNy4yMi01MS4yMiw0My44OC01MS4yMiw0My44OCwyMC4xMSw0My44OCw1MS4yMi0xNy4yMiw1Mi4xNC00My44OCw1Mi4xNG0wLTEzNi4zMmMtMjYuNzMsMC00OC44OCw4Ljc4LTY0LjAzLDI1LjM5LTEzLjU4LDE0Ljg5LTIxLjA3LDM1Ljc3LTIxLjA3LDU4Ljc5czcuNDgsNDQuMDIsMjEuMDYsNTkuMDJjMTUuMTgsMTYuNzYsMzcuMzIsMjUuNjIsNjQuMDQsMjUuNjIsNjIuODEsMCw4NS4xLTQ1LjYsODUuMS04NC42NHMtMjIuMjktODQuMTgtODUuMS04NC4xOCIvPjxwYXRoIGNsYXNzPSJjbHMtNCIgZD0ibTEyODcuOTUsNTUuOTFjLTE2LjA3LDAtMzAuNzksNi43Ni00MS4xOSwxOC43NC0uODQtMTAuNDctOS42My0xOC43NC0yMC4zMS0xOC43NC0xMS40MywwLTIwLjM5LDguOTUtMjAuMzksMjAuMzh2MTI4LjUyYzAsMTMuMzgsMTAuMjUsMjAuMzgsMjAuMzksMjAuMzhzMjAuMzgtNywyMC4zOC0yMC4zOHYtNjEuMDVjMC0zNi44NywxMC4xLTUyLjYsMzMuNzgtNTIuNiwzLjc4LDAsNS45Ny41MSw4LjA4LDEsMS44Ny40MywzLjY0Ljg0LDYuMTYuODQsOS43MiwwLDE2LjI1LTcuMjcsMTYuMjUtMTguMDksMC0xMS41NS05LjA4LTE5LTIzLjEzLTE5Ii8+PHBhdGggY2xhc3M9ImNscy00IiBkPSJtMTQwNS4wNywxNDAuOThsNDQuNTMtNDYuMzFjNi4xOS02LjIsMTIuMDQtMTIuMDUsMTIuMDQtMjAuMjIsMC0xMC41Ny03Ljk3LTE4LjU1LTE4LjU0LTE4LjU1LTguMjgsMC0xNC4xNiw2LjM2LTE5Ljg0LDEyLjUxbC01My44Nyw1NS42N1YzOS43N2MwLTExLjI0LTkuMTQtMjAuMzgtMjAuMzgtMjAuMzhzLTIwLjM5LDkuMTQtMjAuMzksMjAuMzh2MTY1LjA0YzAsMTEuMjQsOS4xNSwyMC4zOCwyMC4zOSwyMC4zOHMyMC4zOC05LjE0LDIwLjM4LTIwLjM4di01MC4wNmw1My45Miw1Ni4wOGMuOTUuOTUsMS44OCwxLjkyLDIuODEsMi44OSw1LjQxLDUuNjQsMTEsMTEuNDgsMTkuMjgsMTEuNDgsOS44LDAsMTguMDktOC4yOCwxOC4wOS0xOC4wOSwwLTcuMTItNC44My0xMi41NS05Ljc3LTE3LjQ5bC00OC42My00OC42M1oiLz48ZyBjbGFzcz0iY2xzLTciPjxwYXRoIGNsYXNzPSJjbHMtNSIgZD0ibTE1MTMuNjEsMTcyLjNjLTE0LjYsMC0yNi40OCwxMS44OC0yNi40OCwyNi40OXMxMS44OCwyNi40OSwyNi40OCwyNi40OSwyNi40OS0xMS44OCwyNi40OS0yNi40OS0xMS44OC0yNi40OS0yNi40OS0yNi40OSIvPjwvZz48cGF0aCBjbGFzcz0iY2xzLTMiIGQ9Im0xNTY3LjQ0LDE4MS42MmMwLTYuODksMS4wNi0xMy4yLDMuMTctMTguOTQsMi4xMS01LjczLDQuOTgtMTAuNiw4LjYxLTE0LjU5LDMuNjItMy45OSw3Ljk0LTcuMDksMTIuOTUtOS4zMyw1LjAxLTIuMjMsMTAuNDItMy4zNSwxNi4yMi0zLjM1LDkuMDYsMCwxNi42NywyLjMsMjIuODMsNi44OSw2LjE2LDQuNTksMTAuMzksMTAuNTEsMTIuNjgsMTcuNzYuNiwxLjU3LjY2LDMuMDUuMTgsNC40NC0uNDgsMS4zOS0xLjc1LDIuMDgtMy44MSwyLjA4aC0yLjU0Yy0xLjMzLDAtMi40NS0uMy0zLjM1LS45MS0uOTEtLjYtMS42Ni0xLjY5LTIuMjYtMy4yNi0xLjU3LTQuNzEtNC4zMi04LjYxLTguMjUtMTEuNjktMy45My0zLjA4LTguOTctNC42Mi0xNS4xMy00LjYyLTcuODUsMC0xNC41NiwzLjI5LTIwLjExLDkuODgtNS41Niw2LjU5LTguMzQsMTUuMTMtOC4zNCwyNS42NHMyLjc1LDE5LjA2LDguMjUsMjUuNjRjNS40OSw2LjU4LDEyLjIzLDkuODcsMjAuMiw5Ljg3LDYuNCwwLDExLjUxLTEuNTQsMTUuMzEtNC42MiwzLjgtMy4wOCw2LjQ5LTYuOTgsOC4wNi0xMS42OS42LTEuNTcsMS4zNi0yLjY2LDIuMjYtMy4yNi45MS0uNiwyLjAyLS45MSwzLjM1LS45MWgyLjU0YzIuMDUsMCwzLjMyLjcsMy44MSwyLjA4LjQ4LDEuMzkuNDIsMi44Ny0uMTgsNC40NC0yLjMsNy4yNS02LjUyLDEzLjE3LTEyLjY4LDE3Ljc2LTYuMTYsNC41OS0xMy43Nyw2Ljg4LTIyLjgzLDYuODgtMTIuNTYsMC0yMi41My00LjIzLTI5LjktMTIuNjgtNy4zNy04LjQ1LTExLjA1LTE5LjYzLTExLjA1LTMzLjUyWiIvPjxwYXRoIGNsYXNzPSJjbHMtMyIgZD0ibTE2NTguNCwxODEuNjJjMC02Ljg5LDEuMDYtMTMuMiwzLjE3LTE4Ljk0LDIuMTEtNS43Myw1LjA0LTEwLjYsOC43OS0xNC41OSwzLjc0LTMuOTksOC4xOC03LjA5LDEzLjMyLTkuMzMsNS4xMy0yLjIzLDEwLjcyLTMuMzUsMTYuNzYtMy4zNSwxMi42OCwwLDIyLjg2LDQuMjMsMzAuNTMsMTIuNjgsNy42Nyw4LjQ2LDExLjUsMTkuNjMsMTEuNSwzMy41MiwwLDYuODktMS4wNiwxMy4yLTMuMTcsMTguOTQtMi4xMSw1Ljc0LTUuMDQsMTAuNi04Ljc5LDE0LjU5LTMuNzUsMy45OS04LjE4LDcuMS0xMy4zMiw5LjMzLTUuMTQsMi4yMy0xMC43MiwzLjM1LTE2Ljc2LDMuMzUtMTIuNjgsMC0yMi44Ni00LjIzLTMwLjUzLTEyLjY4LTcuNjctOC40NS0xMS41MS0xOS42My0xMS41MS0zMy41MlptMTIuODYsMGMwLDEwLjUxLDIuNzIsMTkuMDYsOC4xNSwyNS42NCw1LjQ0LDYuNTgsMTIuNDQsOS44NywyMS4wMiw5Ljg3czE1LjI4LTMuMjksMjAuODQtOS44N2M1LjU2LTYuNTgsOC4zNC0xNS4xMyw4LjM0LTI1LjY0cy0yLjcyLTE5LjUxLTguMTUtMjUuOTFjLTUuNDQtNi40LTEyLjQ0LTkuNi0yMS4wMi05LjZzLTE1LjI4LDMuMjktMjAuODQsOS44OGMtNS41Niw2LjU5LTguMzQsMTUuMTMtOC4zNCwyNS42NFoiLz48cGF0aCBjbGFzcz0iY2xzLTMiIGQ9Im0xNzYxLjEzLDIyMC43NnYtNzguNDZjMC0xLjU3LjM5LTIuNzgsMS4xOC0zLjYyLjc4LS44NCwxLjk2LTEuMjcsMy41My0xLjI3aDIuMTdjMS41NywwLDIuNzguNDMsMy42MiwxLjI3Ljg0Ljg1LDEuMjcsMi4wNiwxLjI3LDMuNjJ2MTAuNjloLjU0YzIuNTQtNS45Miw2LjMxLTEwLjMzLDExLjMyLTEzLjIzLDUuMDEtMi45LDEwLjYtNC4zNSwxNi43Ni00LjM1czExLjkzLDEuNTcsMTYuOTQsNC43MWM1LjAxLDMuMTQsOC42Nyw4LjE1LDEwLjk2LDE1LjA0LDMuMDItNyw3LjE2LTEyLjA1LDEyLjQxLTE1LjEzLDUuMjYtMy4wOCwxMS4yLTQuNjIsMTcuODUtNC42Miw0LjExLDAsOCwuNjMsMTEuNjksMS45LDMuNjgsMS4yNyw2Ljg4LDMuMjksOS42LDYuMDcsMi43MiwyLjc4LDQuODYsNi40LDYuNDMsMTAuODcsMS41Nyw0LjQ3LDIuMzYsOS45MSwyLjM2LDE2LjMxdjUwLjE5YzAsMS41Ny0uNDUsMi44MS0xLjM2LDMuNzItLjkxLjkxLTIuMTUsMS4zNi0zLjcyLDEuMzZoLTIuMTdjLTEuNjksMC0yLjk2LS40NS0zLjgxLTEuMzYtLjg1LS45MS0xLjI3LTIuMTQtMS4yNy0zLjcydi00OC41NmMwLTkuNDItMS43OC0xNi4xMy01LjM0LTIwLjExLTMuNTYtMy45OS04LjU1LTUuOTgtMTQuOTUtNS45OC02Ljg5LDAtMTIuODYsMi45LTE3Ljk0LDguNy01LjA3LDUuOC03LjYxLDEzLjk1LTcuNjEsMjQuNDZ2NDEuNDljMCwxLjU3LS40NSwyLjgxLTEuMzYsMy43Mi0uOTEuOTEtMi4xNSwxLjM2LTMuNzEsMS4zNmgtMi4xN2MtMS42OSwwLTIuOTYtLjQ1LTMuOC0xLjM2LS44NS0uOTEtMS4yNy0yLjE0LTEuMjctMy43MnYtNDguNTZjMC05LjQyLTEuODQtMTYuMTMtNS41My0yMC4xMS0zLjY5LTMuOTktOC42MS01Ljk4LTE0Ljc3LTUuOTgtNi44OSwwLTEyLjg2LDIuOS0xNy45NCw4LjctNS4wNyw1LjgtNy42MSwxNC4wMi03LjYxLDI0LjY0djQxLjMxYzAsMS41Ny0uNDUsMi44MS0xLjM2LDMuNzJzLTIuMTUsMS4zNi0zLjcxLDEuMzZoLTIuMTdjLTEuNjksMC0yLjk2LS40NS0zLjgxLTEuMzYtLjg1LS45MS0xLjI3LTIuMTQtMS4yNy0zLjcyWiIvPjwvZz48L3N2Zz4=\"\n\n/***/ }),\n/* 565 */\n/***/ (function(module, exports, __webpack_require__) {\n\nfunction injectStyle (ssrContext) {\n __webpack_require__(541)\n}\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(253),\n /* template */\n __webpack_require__(611),\n /* styles */\n injectStyle,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 566 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(254),\n /* template */\n __webpack_require__(597),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 567 */\n/***/ (function(module, exports, __webpack_require__) {\n\nfunction injectStyle (ssrContext) {\n __webpack_require__(532)\n}\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(245),\n /* template */\n __webpack_require__(589),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-218b5a9d\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 568 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(255),\n /* template */\n __webpack_require__(612),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 569 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(256),\n /* template */\n __webpack_require__(610),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 570 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(257),\n /* template */\n __webpack_require__(586),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 571 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(258),\n /* template */\n __webpack_require__(607),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 572 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(259),\n /* template */\n __webpack_require__(606),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 573 */\n/***/ (function(module, exports, __webpack_require__) {\n\nfunction injectStyle (ssrContext) {\n __webpack_require__(536)\n}\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(260),\n /* template */\n __webpack_require__(596),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-3e3ad059\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 574 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(261),\n /* template */\n __webpack_require__(605),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 575 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(262),\n /* template */\n __webpack_require__(595),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 576 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(263),\n /* template */\n __webpack_require__(585),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 577 */\n/***/ (function(module, exports, __webpack_require__) {\n\nfunction injectStyle (ssrContext) {\n __webpack_require__(537)\n}\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(246),\n /* template */\n __webpack_require__(602),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-6513d779\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 578 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(265),\n /* template */\n __webpack_require__(614),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 579 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(267),\n /* template */\n __webpack_require__(613),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 580 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(268),\n /* template */\n __webpack_require__(604),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 581 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(269),\n /* template */\n __webpack_require__(598),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 582 */\n/***/ (function(module, exports, __webpack_require__) {\n\nfunction injectStyle (ssrContext) {\n __webpack_require__(539)\n}\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(248),\n /* template */\n __webpack_require__(608),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-81519574\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 583 */\n/***/ (function(module, exports, __webpack_require__) {\n\nfunction injectStyle (ssrContext) {\n __webpack_require__(540)\n}\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(249),\n /* template */\n __webpack_require__(609),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-8e143b26\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 584 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Component = __webpack_require__(4)(\n /* script */\n __webpack_require__(270),\n /* template */\n __webpack_require__(592),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n/***/ }),\n/* 585 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-welcome\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title,\n \"subTitle\": _vm.subtitle\n }\n }), _c('div', {\n staticClass: \"content\"\n }, [_c('product-list', {\n attrs: {\n \"products\": _vm.products\n }\n })], 1)], 1)\n},staticRenderFns: []}\n\n/***/ }),\n/* 586 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-logout\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title,\n \"subTitle\": _vm.logoutMessageHTML\n }\n }), _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmitLogin.apply(null, arguments)\n }\n }\n }, [_vm._m(0)])], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"submit\",\n \"autofocus\": \"autofocus\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Log in again\")])])])\n}]}\n\n/***/ }),\n/* 587 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', [(_vm.isLoading) ? _c('loading', {\n attrs: {\n \"is-loading\": \"is-loading\"\n }\n }) : [_c('page-header', {\n attrs: {\n \"title\": \"We'd love to know a bit more about you\",\n \"error\": _vm.errorMessage\n }\n }), _c('form', {\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.save.apply(null, arguments)\n }\n }\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"Heya! We're working on improving some key areas of Teamwork and to ensure we offer the best version for your team, we'd love to know a few things about your \\norganization. As you are an Administrator we thought you may be the best to help us.\")])]), _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('TwSelect', {\n attrs: {\n \"label\": \"Industry category\",\n \"name\": \"industry-category\",\n \"options\": _vm.industryCategoryOptions\n },\n model: {\n value: (_vm.model.industryCategory),\n callback: function($$v) {\n _vm.$set(_vm.model, \"industryCategory\", $$v)\n },\n expression: \"model.industryCategory\"\n }\n }), _c('TwSelect', {\n attrs: {\n \"label\": \"Company size\",\n \"name\": \"company-size\",\n \"options\": _vm.sizeOptions\n },\n model: {\n value: (_vm.model.size),\n callback: function($$v) {\n _vm.$set(_vm.model, \"size\", $$v)\n },\n expression: \"model.size\"\n }\n })], 1), _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"We appreciate your help on this,\"), _c('br'), _vm._v(\"Dan & Peter.\")])]), _c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"submit\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Save\")])])])]], 2)\n},staticRenderFns: []}\n\n/***/ }),\n/* 588 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-page-header\",\n class: {\n 'no-subtitle': _vm.subTitle.length === 0, 'hideable': _vm.hideable\n }\n }, [_c('h1', {\n staticClass: \"w-page-header__title\",\n domProps: {\n \"innerHTML\": _vm._s(_vm.title)\n }\n }), _c('p', {\n staticClass: \"w-page-header__description\",\n class: {\n 'is-invalid': _vm.error\n }\n }, [(!_vm.error) ? _c('span', {\n domProps: {\n \"innerHTML\": _vm._s(_vm.subTitle)\n }\n }) : _vm._e(), (_vm.error) ? _c('span', [_vm._v(_vm._s(_vm.error))]) : _vm._e()])])\n},staticRenderFns: []}\n\n/***/ }),\n/* 589 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-account-not-set-up\"\n }, [_c('PageHeader', {\n attrs: {\n \"title\": _vm.title,\n \"sub-title\": _vm.subTitle\n }\n }), _vm._v(\" \"), _c('form', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [(_vm.customMessage) ? _c('p', {\n domProps: {\n \"textContent\": _vm._s(_vm.customMessage)\n }\n }) : _c('p', [_vm._v(\"\\n Your account is not set up to use \" + _vm._s(_vm.productName) + \".\\n Please contact your site administrator.\\n \")])]), _vm._v(\" \"), _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('ProductList', {\n attrs: {\n \"products\": _vm.continueItems\n }\n })], 1), _vm._v(\" \"), _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('router-link', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"to\": \"/login\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"\\n Back to login\\n \")])])], 1)])], 1)\n},staticRenderFns: []}\n\n/***/ }),\n/* 590 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"textfield\"\n }, [_c('select', _vm._b({\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.innerValue),\n expression: \"innerValue\"\n }],\n ref: \"select\",\n staticClass: \"textfield__input\",\n on: {\n \"input\": function($event) {\n return _vm.$emit('input', $event.target.value)\n },\n \"change\": [function($event) {\n var $$selectedVal = Array.prototype.filter.call($event.target.options, function(o) {\n return o.selected\n }).map(function(o) {\n var val = \"_value\" in o ? o._value : o.value;\n return val\n });\n _vm.innerValue = $event.target.multiple ? $$selectedVal : $$selectedVal[0]\n }, _vm.blur]\n }\n }, 'select', _vm.$attrs, false), [_c('option', {\n attrs: {\n \"disabled\": \"\",\n \"selected\": \"\",\n \"value\": \"\"\n }\n }), _vm._v(\" \"), _vm._l((_vm.options), function(option, key) {\n return _c('option', {\n key: key,\n domProps: {\n \"value\": option.value\n }\n }, [_vm._v(\"\\n \" + _vm._s(option.label) + \"\\n \")])\n })], 2), _vm._v(\" \"), _c('label', {\n staticClass: \"textfield__label\",\n class: {\n 'textfield__label--filled': !_vm.empty\n },\n attrs: {\n \"for\": _vm.name\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm.fieldLabel) + \"\\n \")]), _vm._v(\" \"), _c('svg', {\n staticClass: \"textfield__icon\",\n attrs: {\n \"height\": \"24px\",\n \"viewBox\": \"0 0 24 24\",\n \"width\": \"24px\"\n }\n }, [_c('path', {\n attrs: {\n \"d\": \"M7 10l5 5 5-5H7z\"\n }\n })])])\n},staticRenderFns: []}\n\n/***/ }),\n/* 591 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"app-consent\"\n }, [_c('page-header', {\n staticClass: \"compressed\"\n }, [(_vm.showAppDetails) ? [(_vm.app.url) ? [_vm._v(\"Log in to \"), _c('a', {\n attrs: {\n \"href\": _vm.app.url,\n \"_target\": \"blank\"\n }\n }, [_vm._v(_vm._s(_vm.app.name))])] : [_vm._v(\"Log in to \" + _vm._s(_vm.app.name))]] : (_vm.appIsLocal) ? [_vm._v(\"Log in to \" + _vm._s(_vm.app.name))] : [_vm._v(\"Log in\")]], 2), (_vm.showAppDetails && _vm.app.publisher) ? _c('div', {\n staticClass: \"app-consent__publisher\"\n }, [(_vm.logoUrl) ? _c('div', {\n staticClass: \"app-consent__publisher-logo\"\n }, [_c('img', {\n attrs: {\n \"src\": _vm.logoUrl,\n \"alt\": \"Logo\"\n }\n })]) : _vm._e(), _c('div', {\n staticClass: \"app-consent__publisher-details\"\n }, [_c('div', [_vm._v(_vm._s(_vm.app.publisher.name))]), (_vm.app.publisher.url) ? _c('div', [_c('a', {\n attrs: {\n \"href\": _vm.app.publisher.url\n }\n }, [_vm._v(_vm._s(_vm.app.publisher.url))])]) : _vm._e(), _c('div', {\n staticClass: \"app-consent__publisher-links\"\n }, [(_vm.app.publisher.privacyUrl) ? _c('small', [_c('a', {\n attrs: {\n \"href\": _vm.app.publisher.privacyUrl,\n \"target\": \"_blank\"\n }\n }, [_vm._v(\"Privacy\")])]) : _vm._e(), (_vm.app.publisher.termsUrl) ? _c('small', [_c('a', {\n attrs: {\n \"href\": _vm.app.publisher.termsUrl,\n \"target\": \"_blank\"\n }\n }, [_vm._v(\"Terms\")])]) : _vm._e()])])]) : _vm._e(), _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onAllow.apply(null, arguments)\n }\n }\n }, [(_vm.showAppDetails) ? _c('div', {\n staticClass: \"w-login-form__app-details\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [(_vm.app.description) ? _c('p', [_vm._v(_vm._s(_vm.app.description))]) : _vm._e()]), _c('div', {\n staticClass: \"w-login-form__row access\"\n }, [_c('p', [_c('strong', [_vm._v(_vm._s(_vm.app.name) + \" requires access to:\")])])])]) : _c('div', {\n staticClass: \"w-login-form__app-details\"\n }, [_vm._m(0)]), _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('ul', {\n staticClass: \"scope-list\"\n }, _vm._l((_vm.requestedScope), function(productCode) {\n return _c('li', [_c('span', {\n staticClass: \"app-icon\"\n }, [_c('img', {\n attrs: {\n \"src\": _vm.getAppIcon(productCode)\n }\n })]), _c('span', [_vm._v(\"Read and write your \" + _vm._s(_vm.getAppName(productCode)) + \" data\")])])\n }), 0)]), _vm._m(1)]), _c('div', {\n staticClass: \"w-page-footer\"\n }, [_c('button', {\n staticClass: \"w-button\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function($event) {\n $event.preventDefault();\n return _vm.onDeny.apply(null, arguments)\n }\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Deny\")])])])], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row access\"\n }, [_c('p', [_c('strong', [_vm._v(\"A third-party application requires access to:\")])])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"submit\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Allow\")])])])\n}]}\n\n/***/ }),\n/* 592 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"site-not-found\"\n }, [_c('page-header', {\n attrs: {\n \"title\": \"Oops - We didn't find your site.\",\n \"subTitle\": \"But don't panic, we're here to help!\"\n }\n }), _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmitLogin.apply(null, arguments)\n }\n }\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"1. Most likely, you have probably just slightly misspelt the address\"), _c('strong', [_vm._v(\" \" + _vm._s(_vm.siteAddress) + \" \")]), _vm._v(\"so before we go any further please check that.\")])]), _vm._m(0), _vm._m(1), _vm._m(2), _vm._m(3)]), (_vm.inAppLogin) ? _c('div', {\n staticClass: \"w-page-footer\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function($event) {\n $event.preventDefault();\n return _vm.onClickBackToApp.apply(null, arguments)\n }\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Back to app\")])])]) : _vm._e()], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"2. Still here? Hmmm, perhaps you can't think of the correct address for the site you want;\\n that's no problem, \"), _c('a', {\n attrs: {\n \"href\": \"https://teamwork.com/launchpad/login\"\n }\n }, [_vm._v(\"you can use our generic login page\")]), _vm._v(\".\")])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"3. Oh dear, you're still here... OK, there is also the slim possibility that\\n the account may have been cancelled, in which case we can restore it if there\\n has been a mistake.\")])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"4. Custom domain?: If you've added a custom domain to your account,\\n you may have missed the last step... \"), _c('a', {\n attrs: {\n \"href\": \"https://support.teamwork.com/projects/general-settings/using-a-custom-domain-name\"\n }\n }, [_vm._v(\"Setting up your custom domain\")])])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"5. Contact Us: If something has gone wrong, just \"), _c('a', {\n attrs: {\n \"href\": \"https://www.teamwork.com/contact\"\n }\n }, [_vm._v(\"drop us a quick note\")]), _vm._v(\" and we'll do our best to help.\")])])\n}]}\n\n/***/ }),\n/* 593 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"password-input w-input\"\n }, [(_vm.label) ? _c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"loginpassword\"\n }\n }, [_vm._v(_vm._s(_vm.label))]) : _vm._e(), _c('input', _vm._b({\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"loginpassword\",\n \"type\": _vm.isVisible ? 'text' : 'password'\n },\n domProps: {\n \"value\": _vm.value\n },\n on: {\n \"input\": function($event) {\n return _vm.$emit('input', $event.target.value)\n }\n }\n }, 'input', _vm.$attrs, false)), _c('div', {\n staticClass: \"w-input__right-block\"\n }, [(_vm.isVisible) ? _c('img', {\n staticClass: \"icon\",\n attrs: {\n \"role\": \"button\",\n \"title\": \"Hide password\",\n \"src\": _vm.iconInvisible\n },\n on: {\n \"click\": function($event) {\n _vm.isVisible = false\n }\n }\n }) : _c('img', {\n staticClass: \"icon\",\n attrs: {\n \"role\": \"button\",\n \"title\": \"Show password\",\n \"src\": _vm.iconVisible\n },\n on: {\n \"click\": function($event) {\n _vm.isVisible = true\n }\n }\n })])])\n},staticRenderFns: []}\n\n/***/ }),\n/* 594 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-select-account\"\n }, _vm._l((_vm.accounts), function(account) {\n return _c('a', {\n staticClass: \"w-select-account__row\",\n attrs: {\n \"href\": \"javascript:;\"\n },\n on: {\n \"click\": function($event) {\n return _vm.onSelectAccount(account)\n }\n }\n }, [_c('span', {\n staticClass: \"w-select-account__image\",\n style: ({\n backgroundImage: _vm.getBackgroundImage(account)\n })\n }), _c('span', {\n staticClass: \"w-select-account__row-content\"\n }, [_c('strong', {\n staticClass: \"w-select-account__name\"\n }, [_vm._v(_vm._s(account.installation.name))]), _c('span', {\n staticClass: \"w-select-account__owner\"\n }, [_vm._v(_vm._s(account.user.firstName + ' ' + account.user.lastName))]), _c('span', {\n staticClass: \"w-select-account__url\"\n }, [_vm._v(_vm._s(account.installation.url))])]), (account.installation.region === 'EU') ? _c('span', {\n staticClass: \"w-select-account__eu-flag\"\n }, [_c('img', {\n attrs: {\n \"src\": __webpack_require__(557),\n \"alt\": \"EU\"\n }\n })]) : _vm._e(), (account.installation.region === 'AU') ? _c('span', {\n staticClass: \"w-select-account__au-flag\"\n }, [_vm._v(\"AU\")]) : _vm._e()])\n }), 0)\n},staticRenderFns: []}\n\n/***/ }),\n/* 595 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-token-auth\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [(_vm.state === 'company-info') ? _c('company-info', {\n attrs: {\n \"default-info\": _vm.companyInfo\n },\n on: {\n \"saved\": _vm.onCompanyInfoSaved\n }\n }) : _vm._e(), (_vm.state === 'gdpr-consent') ? _c('gdpr-consent', {\n on: {\n \"seen\": _vm.loginViaToken\n }\n }) : _vm._e(), (_vm.state === 'app-consent') ? _c('app-consent', {\n attrs: {\n \"code\": _vm.code,\n \"app\": _vm.app\n }\n }) : _vm._e(), (_vm.state === 'persona-capture') ? _c('persona-capture', {\n attrs: {\n \"code\": _vm.code,\n \"app\": _vm.app\n },\n on: {\n \"saved\": _vm.onPersonaInfoSaved\n }\n }) : _vm._e(), (_vm.state === 'normal') ? _c('div', {\n staticClass: \"content\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title\n }\n }), _c('form', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"Login successful\")]), _c('div', {\n staticClass: \"auth-token\",\n staticStyle: {\n \"display\": \"none\"\n }\n }, [_vm._v(_vm._s(_vm.code))])])])], 1) : _vm._e()], 1) : _vm._e()], 1)\n},staticRenderFns: []}\n\n/***/ }),\n/* 596 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-select-account\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title\n }\n }), _c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [_c('account-list', {\n attrs: {\n \"accounts\": _vm.accounts\n },\n on: {\n \"account-selected\": _vm.onAccountSelected\n }\n })], 1) : _vm._e()], 1)\n},staticRenderFns: []}\n\n/***/ }),\n/* 597 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-accept-invite\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title,\n \"subTitle\": _vm.subTitle,\n \"error\": _vm.formError\n }\n }), (!_vm.expired) ? _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmit.apply(null, arguments)\n }\n }\n }, [(_vm.showNameInputs) ? _c('div', [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('div', {\n staticClass: \"w-input\"\n }, [_c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"firstName\"\n }\n }, [_vm._v(\"First Name\")]), _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.user.firstName),\n expression: \"user.firstName\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"firstName\",\n \"type\": \"text\",\n \"required\": \"required\"\n },\n domProps: {\n \"value\": (_vm.user.firstName)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.$set(_vm.user, \"firstName\", $event.target.value)\n }\n }\n })])]), _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('div', {\n staticClass: \"w-input\"\n }, [_c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"lastName\"\n }\n }, [_vm._v(\"Last Name\")]), _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.user.lastName),\n expression: \"user.lastName\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"lastName\",\n \"type\": \"text\",\n \"required\": \"required\"\n },\n domProps: {\n \"value\": (_vm.user.lastName)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.$set(_vm.user, \"lastName\", $event.target.value)\n }\n }\n })])])]) : _vm._e(), (_vm.isProductChat) ? _c('div', [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('div', {\n staticClass: \"w-input\"\n }, [_c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"chatHandle\"\n }\n }, [_vm._v(\"Chat Handle\")]), _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.user.chatHandle),\n expression: \"user.chatHandle\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"chatHandle\",\n \"type\": \"text\",\n \"required\": \"required\"\n },\n domProps: {\n \"value\": (_vm.user.chatHandle)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.$set(_vm.user, \"chatHandle\", $event.target.value)\n }\n }\n })])])]) : _vm._e(), _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--password\"\n }, [_c('password-input', {\n attrs: {\n \"label\": \"Password\",\n \"autocomplete\": \"new-password\",\n \"required\": \"required\"\n },\n model: {\n value: (_vm.user.password),\n callback: function($$v) {\n _vm.$set(_vm.user, \"password\", $$v)\n },\n expression: \"user.password\"\n }\n })], 1), _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button\",\n class: {\n 'w-button--gray': !_vm.canSubmit, 'w-button--blue': _vm.canSubmit\n },\n attrs: {\n \"type\": \"submit\",\n \"disabled\": !_vm.canSubmit\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Get started\")])])])]) : _vm._e(), (_vm.expired) ? _c('form', {\n staticClass: \"w-login-form\"\n }, [_vm._m(0), _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('router-link', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"to\": {\n path: _vm.loginLink,\n query: _vm.$route.query\n },\n \"tag\": \"button\",\n \"type\": \"button\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Log in\")])])], 1)]) : _vm._e()], 1) : _vm._e()], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"Invite code is not valid, it may have expired or has already been used.\\nPlease request a new invitation or try to log in.\")])])\n}]}\n\n/***/ }),\n/* 598 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"standard-form\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reset\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [(_vm.state === 'company-info') ? _c('company-info', {\n attrs: {\n \"default-info\": _vm.companyInfo\n },\n on: {\n \"saved\": _vm.onSubmit\n }\n }) : _vm._e(), (_vm.state === 'gdpr-consent') ? _c('gdpr-consent', {\n on: {\n \"seen\": _vm.onSubmit\n }\n }) : _vm._e(), (_vm.state === 'app-consent') ? _c('app-consent', {\n attrs: {\n \"code\": _vm.code,\n \"app\": _vm.app\n }\n }) : _vm._e(), (_vm.state === 'persona-capture') ? _c('persona-capture', {\n attrs: {\n \"code\": _vm.code,\n \"app\": _vm.app\n },\n on: {\n \"saved\": _vm.onSubmit\n }\n }) : _vm._e(), (_vm.state === 'select-account') ? _c('div', {\n staticClass: \"login-form\"\n }, [_c('account-list', {\n attrs: {\n \"accounts\": _vm.accounts\n },\n on: {\n \"account-selected\": _vm.onAccountSelected\n }\n }), _c('div', {\n staticClass: \"w-page-footer w-page-footer--mb\"\n }, [_c('button', {\n staticClass: \"w-button w-button--link\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": _vm.reset\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Return to login\")])])])], 1) : _vm._e(), (_vm.state === 'app-success') ? _c('div', {\n staticClass: \"app-success\"\n }, [_c('form', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"Login successful\")]), _c('div', {\n staticClass: \"auth-token\",\n staticStyle: {\n \"display\": \"none\"\n }\n }, [_vm._v(_vm._s(_vm.code))])])])]) : _vm._e(), (_vm.state === 'normal') ? _c('div', {\n staticClass: \"login-form\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title,\n \"error\": _vm.formError\n }\n }), (_vm.allowStandardLogin) ? _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmit.apply(null, arguments)\n }\n }\n }, [(_vm.state === 'normal') ? _c('div', {\n staticClass: \"login-fields\"\n }, [_c('div', {\n staticClass: \"w-login-form__row w-login-form__row--email\"\n }, [_c('div', {\n staticClass: \"w-input\"\n }, [_c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"loginemail\"\n }\n }, [_vm._v(\"Email address\")]), ((_vm.loginType === 'account' || _vm.password === 'xxx' ? 'text' : 'email') === 'checkbox') ? _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.email),\n expression: \"email\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"loginemail\",\n \"placehoder\": \"\",\n \"autocomplete\": _vm.isEnterprise ? 'off' : 'username',\n \"required\": \"required\",\n \"type\": \"checkbox\"\n },\n domProps: {\n \"checked\": Array.isArray(_vm.email) ? _vm._i(_vm.email, null) > -1 : (_vm.email)\n },\n on: {\n \"change\": function($event) {\n var $$a = _vm.email,\n $$el = $event.target,\n $$c = $$el.checked ? (true) : (false);\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v);\n if ($$el.checked) {\n $$i < 0 && (_vm.email = $$a.concat([$$v]))\n } else {\n $$i > -1 && (_vm.email = $$a.slice(0, $$i).concat($$a.slice($$i + 1)))\n }\n } else {\n _vm.email = $$c\n }\n }\n }\n }) : ((_vm.loginType === 'account' || _vm.password === 'xxx' ? 'text' : 'email') === 'radio') ? _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.email),\n expression: \"email\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"loginemail\",\n \"placehoder\": \"\",\n \"autocomplete\": _vm.isEnterprise ? 'off' : 'username',\n \"required\": \"required\",\n \"type\": \"radio\"\n },\n domProps: {\n \"checked\": _vm._q(_vm.email, null)\n },\n on: {\n \"change\": function($event) {\n _vm.email = null\n }\n }\n }) : _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.email),\n expression: \"email\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"loginemail\",\n \"placehoder\": \"\",\n \"autocomplete\": _vm.isEnterprise ? 'off' : 'username',\n \"required\": \"required\",\n \"type\": _vm.loginType === 'account' || _vm.password === 'xxx' ? 'text' : 'email'\n },\n domProps: {\n \"value\": (_vm.email)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.email = $event.target.value\n }\n }\n })])]), _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--password\"\n }, [_c('password-input', {\n attrs: {\n \"label\": \"Password\",\n \"autocomplete\": _vm.isEnterprise ? 'off' : 'current-password',\n \"required\": \"required\"\n },\n model: {\n value: (_vm.password),\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })], 1), (_vm.showRememberMe || !_vm.inAppLogin) ? _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--remember\"\n }, [(_vm.showRememberMe) ? _c('label', {\n staticClass: \"w-checkbox\",\n attrs: {\n \"for\": \"rememberMe\"\n }\n }, [_c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.rememberMe),\n expression: \"rememberMe\"\n }],\n staticClass: \"w-checkbox__input\",\n attrs: {\n \"id\": \"rememberMe\",\n \"type\": \"checkbox\"\n },\n domProps: {\n \"checked\": Array.isArray(_vm.rememberMe) ? _vm._i(_vm.rememberMe, null) > -1 : (_vm.rememberMe)\n },\n on: {\n \"change\": function($event) {\n var $$a = _vm.rememberMe,\n $$el = $event.target,\n $$c = $$el.checked ? (true) : (false);\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v);\n if ($$el.checked) {\n $$i < 0 && (_vm.rememberMe = $$a.concat([$$v]))\n } else {\n $$i > -1 && (_vm.rememberMe = $$a.slice(0, $$i).concat($$a.slice($$i + 1)))\n }\n } else {\n _vm.rememberMe = $$c\n }\n }\n }\n }), _c('span', {\n staticClass: \"w-checkbox__label\"\n }, [_vm._v(\"Remember me\")])]) : _vm._e(), (!_vm.inAppLogin) ? _c('router-link', {\n attrs: {\n \"to\": {\n path: _vm.forgotPasswordLink,\n query: Object.assign(_vm.$route.query, {\n email: _vm.email\n })\n }\n }\n }, [_vm._v(\"Forgot password?\")]) : _vm._e()], 1) : _vm._e()]) : _vm._e(), _vm._m(0)]) : _vm._e(), _c('div', {\n staticClass: \"w-page-footer\"\n }, [(_vm.showGoogleSSO) ? _c('a', {\n staticClass: \"w-button\",\n attrs: {\n \"href\": _vm.googleSSOURL\n },\n on: {\n \"click\": _vm.onClickGoogleSSO\n }\n }, [_vm._m(1), _c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Log in with Google\")])]) : _vm._e(), (_vm.showSAML) ? _c('a', {\n staticClass: \"w-button w-button--link\",\n on: {\n \"click\": _vm.initSAML\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Single Sign On (SSO)\")])]) : _vm._e(), (_vm.startText) ? _c('div', {\n staticClass: \"w-page-footer__start-text\",\n domProps: {\n \"innerHTML\": _vm._s(_vm.startText)\n }\n }) : _vm._e()])], 1) : _vm._e(), (_vm.state === '2fa') ? _c('div', {\n staticClass: \"login-form__two-factor-auth\"\n }, [_c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmit.apply(null, arguments)\n }\n }\n }, [_c('page-header', {\n attrs: {\n \"title\": \"Two Factor Authentication\",\n \"subTitle\": \"Please enter your six-digit number from your authenticator app.\",\n \"error\": _vm.formError,\n \"hideable\": false\n }\n }), _c('div', {\n staticClass: \"w-auth-code w-input\"\n }, [_c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.twoFactorPasscode),\n expression: \"twoFactorPasscode\"\n }],\n staticClass: \"w-auth-code__input w-input__input\",\n attrs: {\n \"type\": \"text\",\n \"inputmode\": \"numeric\",\n \"pattern\": \"[0-9]*\",\n \"maxlength\": \"8\",\n \"placeholder\": \"Authentication Passcode\",\n \"autocomplete\": \"off\",\n \"required\": \"required\"\n },\n domProps: {\n \"value\": (_vm.twoFactorPasscode)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.twoFactorPasscode = $event.target.value\n }\n }\n })]), _vm._m(2), _c('div', {\n staticClass: \"w-page-footer\"\n }, [_c('button', {\n staticClass: \"w-button w-button--link\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": _vm.reset\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Cancel\")])])])], 1)]) : _vm._e(), (_vm.state === '2fa-setup') ? _c('tfa-setup', {\n attrs: {\n \"forced\": _vm.forced\n },\n on: {\n \"cancel\": _vm.reset,\n \"setup-complete\": _vm.onSubmit\n }\n }) : _vm._e()], 1) : _vm._e()], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"submit\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Log in\")])])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('span', {\n staticClass: \"w-button__icon\"\n }, [_c('img', {\n attrs: {\n \"src\": __webpack_require__(558),\n \"alt\": \"Google\",\n \"width\": \"16\",\n \"height\": \"16\"\n }\n })])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"submit\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Log in\")])])])])\n}]}\n\n/***/ }),\n/* 599 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-product-list\"\n }, _vm._l((_vm.productItems), function(product) {\n return _c('a', {\n key: product.code,\n staticClass: \"w-product-list__item\",\n attrs: {\n \"href\": product.url\n }\n }, [_c('img', {\n staticClass: \"w-product-list__item-image\",\n attrs: {\n \"src\": product.logoUrl\n }\n }), _vm._v(\" \"), _c('div', {\n staticClass: \"w-product-list__item-content\"\n }, [_c('h5', {\n staticClass: \"w-product-list__item--title\"\n }, [_vm._v(_vm._s(product.title))]), _vm._v(\" \"), _c('div', {\n staticClass: \"w-product-list__item--description\"\n }, [_vm._v(_vm._s(product.description))])])])\n }), 0)\n},staticRenderFns: []}\n\n/***/ }),\n/* 600 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return (_vm.isLoading) ? _c('div', {\n staticClass: \"loading\"\n }, [_vm._m(0), (_vm.showTryAgain) ? _c('div', {\n staticClass: \"try-again\"\n }, [_c('div', {\n staticClass: \"try-again__link\"\n }, [_c('button', {\n staticClass: \"w-button w-button--link\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function($event) {\n return _vm.$emit('reset')\n }\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Try again\")])])]), (_vm.inAppLogin) ? _c('div', {\n staticClass: \"try-again__link\"\n }, [_c('button', {\n staticClass: \"w-button w-button--link\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": _vm.onCancel\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Cancel\")])])]) : _vm._e()]) : _vm._e()]) : _vm._e()\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-preloader\"\n }, [_c('div', {\n staticClass: \"w-preloader__spinner--large\"\n })])\n}]}\n\n/***/ }),\n/* 601 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"gdpr-consent\"\n }, [_c('page-header', {\n attrs: {\n \"title\": \"We're Updating How We Manage Data\"\n }\n }), _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.$emit('seen')\n }\n }\n }, [_vm._m(0), _vm._m(1), _vm._m(2), _vm._m(3)])], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"We really appreciate you using our Teamwork.com collaboration\\n products to power your business. Your success is important to us\\n and we are constantly striving to improve our products performance\\n and enable better productivity for all our customers.\\n As part of this improvement we have made some important changes to\\n how we protect data within Teamwork.com and we want to share these with you.\")])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"We would like to share with you our updated \"), _c('a', {\n attrs: {\n \"href\": \"https://www.teamwork.com/privacy-statement\",\n \"target\": \"_blank\"\n }\n }, [_vm._v(\"Privacy Statement\")]), _vm._v(\". We are committed to the highest standards of data security\\n & management and all our processes and systems have been\\n updated to include the new provisions of GDPR.\")])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"The new practices came into effect on \"), _c('strong', [_vm._v(\"May 25, 2018\")]), _vm._v(\". If you have any questions about these changes please reach out to us at \"), _c('a', {\n attrs: {\n \"href\": \"mailto:privacy@teamwork.com\"\n }\n }, [_vm._v(\"privacy@teamwork.com\")]), _vm._v(\".\")])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"submit\",\n \"autofocus\": \"autofocus\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"OK\")])])])\n}]}\n\n/***/ }),\n/* 602 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', [(_vm.isLoading) ? _c('Loading', {\n attrs: {\n \"is-loading\": \"\"\n }\n }) : [_c('div', {\n staticClass: \"content\"\n }, [_c('img', {\n staticClass: \"image\",\n attrs: {\n \"src\": _vm.stateContent[_vm.state].image\n }\n }), _vm._v(\" \"), _c('h1', {\n staticClass: \"header\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.stateContent[_vm.state].headerText) + \"\\n \")]), _vm._v(\" \"), _c('p', {\n staticClass: \"body-text\",\n domProps: {\n \"innerHTML\": _vm._s(_vm.stateContent[_vm.state].bodyText)\n }\n }), _vm._v(\" \"), (_vm.stateContent[_vm.state].footerText) ? _c('strong', {\n staticClass: \"footer-text\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.stateContent[_vm.state].footerText) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), (_vm.stateContent[_vm.state].nextText) ? _c('p', {\n staticClass: \"body-text\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.stateContent[_vm.state].nextText) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), _c('div', {\n staticClass: \"actions\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue continue-cta\",\n class: {\n 'w-button--gray': _vm.isCTALoading\n },\n attrs: {\n \"disabled\": _vm.isCTALoading,\n \"data-identifier\": _vm.stateContent[_vm.state].dataIdentifier\n },\n on: {\n \"click\": _vm.stateContent[_vm.state].ctaAction\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(_vm._s(_vm.stateContent[_vm.state].ctaText))])])]), _vm._v(\" \"), (_vm.errorMessage) ? _c('div', {\n staticClass: \"error-message\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.errorMessage) + \"\\n \")]) : _vm._e()])]], 2)\n},staticRenderFns: []}\n\n/***/ }),\n/* 603 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', [(_vm.isLoading) ? _c('Loading', {\n attrs: {\n \"is-loading\": \"\"\n }\n }) : [_c('h1', {\n staticClass: \"persona-view-header\"\n }, [_vm._v(\"\\n Excuse us for jumping in... we have a quick question. Don’t worry, we won’t ask again.\\n \")]), _vm._v(\" \"), _c('h3', [_vm._v(\"How would you best describe your role?\")]), _vm._v(\" \"), _c('div', {\n staticClass: \"persona-view-radio-group\",\n attrs: {\n \"role\": \"radiogroup\",\n \"aria-label\": 'Select your default project view'\n }\n }, _vm._l((_vm.personasList), function(persona, index) {\n return _c('div', {\n key: (\"persona-view-option-\" + index),\n ref: (\"persona-view-option-\" + index),\n refInFor: true,\n staticClass: \"persona-view__item\",\n class: {\n 'persona-view__item--selected': persona.value === _vm.selectedPersona\n },\n attrs: {\n \"role\": \"radio\",\n \"aria-checked\": persona.value === _vm.selectedPersona,\n \"tabindex\": \"0\",\n \"aria-label\": persona.description,\n \"data-identifier\": persona.value\n },\n on: {\n \"click\": function($event) {\n return _vm.onSelect(persona.value)\n },\n \"keyup\": function($event) {\n if (!$event.type.indexOf('key') && _vm._k($event.keyCode, \"enter\", 13, $event.key, \"Enter\")) { return null; }\n return _vm.onSelect(persona.value)\n }\n }\n }, [_c('div', {\n staticClass: \"persona-view-icon-wrapper\",\n class: {\n 'persona-view__item-text--selected': persona.value === _vm.selectedPersona\n }\n }, [(persona.value === _vm.selectedPersona) ? _c('img', {\n staticClass: \"persona-view__item-check\",\n attrs: {\n \"src\": _vm.checkIcon\n }\n }) : _vm._e(), _vm._v(\" \"), _c('img', {\n staticClass: \"persona-view__item-icon\",\n attrs: {\n \"src\": persona.icon\n }\n }), _vm._v(\" \"), _c('label', {\n staticClass: \"persona-view__item-text\"\n }, [_vm._v(_vm._s(persona.label))]), _vm._v(\" \"), _c('label', {\n staticClass: \"persona-view__item-text-description\"\n }, [_vm._v(_vm._s(persona.description))])])])\n }), 0), _vm._v(\" \"), (_vm.errorMessage) ? _c('div', {\n staticClass: \"error-message\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.errorMessage) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), _c('p', {\n staticClass: \"persona-view-info\"\n }, [_vm._v(\"\\n We use this information to personalize your\\n experience, tailoring it to suit your needs perfectly.\\n \")]), _vm._v(\" \"), _c('div', {\n staticClass: \"persona-view__actions\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue persona-view__submit\",\n attrs: {\n \"data-identifier\": \"persona-submit\"\n },\n on: {\n \"click\": _vm.onSubmit\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Next\")])])])]], 2)\n},staticRenderFns: []}\n\n/***/ }),\n/* 604 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"saml-starter\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title\n }\n }), _c('form', {\n staticClass: \"w-login-form w-login-form--sso\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmit.apply(null, arguments)\n }\n }\n }, [_vm._m(0)]), _c('div', {\n staticClass: \"w-page-footer\"\n }, [(_vm.allowStandardLogin) ? _c('button', {\n staticClass: \"w-button w-button--link\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function($event) {\n return _vm.$store.commit('setLoginState', 'standard')\n }\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Standard login\")])]) : _vm._e()])], 1) : _vm._e()], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"submit\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Single Sign On\")])])])\n}]}\n\n/***/ }),\n/* 605 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-success\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title\n }\n }), _c('div', {\n staticClass: \"content\"\n }, [_c('form', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"Login successful\")]), _c('div', {\n staticClass: \"auth-token\",\n staticStyle: {\n \"display\": \"none\"\n }\n }, [_vm._v(_vm._s(_vm.code))])])])])], 1)\n},staticRenderFns: []}\n\n/***/ }),\n/* 606 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-token-auth\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [(_vm.state === 'company-info') ? _c('company-info', {\n attrs: {\n \"default-info\": _vm.companyInfo\n },\n on: {\n \"saved\": _vm.postSAMLAuth\n }\n }) : _vm._e(), (_vm.state === 'gdpr-consent') ? _c('gdpr-consent', {\n on: {\n \"seen\": _vm.postSAMLAuth\n }\n }) : _vm._e(), (_vm.state === 'app-consent') ? _c('app-consent', {\n attrs: {\n \"code\": _vm.code,\n \"app\": _vm.app\n }\n }) : _vm._e(), (_vm.state === 'normal') ? _c('div', {\n staticClass: \"content\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title\n }\n }), _c('form', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"Login successful\")]), _c('div', {\n staticClass: \"auth-token\",\n staticStyle: {\n \"display\": \"none\"\n }\n }, [_vm._v(_vm._s(_vm.code))])])])], 1) : _vm._e()], 1) : _vm._e()], 1)\n},staticRenderFns: []}\n\n/***/ }),\n/* 607 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-reset-password\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title,\n \"subTitle\": _vm.subTitle,\n \"error\": _vm.formError\n }\n }), _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmitReset.apply(null, arguments)\n }\n }\n }, [(_vm.state === 'normal') ? _c('div', {\n staticClass: \"password-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row w-login-form__row--email\"\n }, [_c('password-input', {\n attrs: {\n \"label\": \"New password\",\n \"autocomplete\": \"new-password\",\n \"required\": \"required\"\n },\n model: {\n value: (_vm.password),\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })], 1), _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button\",\n class: {\n 'w-button--gray': !_vm.canSubmit, 'w-button--blue': _vm.canSubmit\n },\n attrs: {\n \"type\": \"submit\",\n \"disabled\": !_vm.canSubmit\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Set new password\")])])])]) : _vm._e(), (_vm.state === 'success') ? _c('div', {\n staticClass: \"reset-success\"\n }, [_c('ul', [(_vm.apps.projects) ? _c('li', [_c('a', {\n attrs: {\n \"href\": _vm.siteURL\n }\n }, [_vm._v(\"Continue to Teamwork\")])]) : _vm._e(), (_vm.apps.desk) ? _c('li', [_c('a', {\n attrs: {\n \"href\": _vm.siteURL + 'desk/'\n }\n }, [_vm._v(\"Continue to Teamwork Desk\")])]) : _vm._e(), (_vm.apps.chat) ? _c('li', [_c('a', {\n attrs: {\n \"href\": _vm.siteURL + 'chat/'\n }\n }, [_vm._v(\"Continue to Teamwork Chat\")])]) : _vm._e(), (_vm.apps.spaces) ? _c('li', [_c('a', {\n attrs: {\n \"href\": _vm.siteURL + 'spaces/'\n }\n }, [_vm._v(\"Continue to Teamwork Spaces\")])]) : _vm._e(), (_vm.apps.crm) ? _c('li', [_c('a', {\n attrs: {\n \"href\": _vm.siteURL + 'crm/'\n }\n }, [_vm._v(\"Continue to Teamwork CRM\")])]) : _vm._e()])]) : _vm._e()])], 1) : _vm._e()], 1)\n},staticRenderFns: []}\n\n/***/ }),\n/* 608 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', [(_vm.isLoading) ? _c('loading', {\n attrs: {\n \"is-loading\": \"is-loading\"\n }\n }) : (_vm.isOnBackupCodesScreen) ? [_c('p', {\n staticClass: \"section\"\n }, [_vm._v(\"Setup complete!\")]), _c('p', {\n staticClass: \"section\"\n }, [_vm._v(\"Please write down these backup codes. They allow you to restore access to your account if you \\nlose access to your two-factor authentication codes. You \\ncan then enter one of these instead. Note that eaach of these \\ncodes can only be used once.\")]), _c('pre', {\n staticClass: \"section backup-codes\"\n }, [_vm._v(_vm._s(_vm.backupCodesFormatted))]), _c('button', {\n staticClass: \"w-button w-button--blue\",\n on: {\n \"click\": function($event) {\n return _vm.$emit('setup-complete')\n }\n }\n }, [_vm._v(\"Ok\")])] : [(_vm.forced) ? _c('div', {\n staticClass: \"section\"\n }, [_c('p', [_vm._v(\"An administrator has enforced two factor authentication on this site. \")])]) : _vm._e(), _c('p', {\n staticClass: \"section\"\n }, [_vm._v(\"Two-factor authentication setup is required to proceed. Please download \"), _c('b', [_vm._v(\"Google Authenticator\")]), _vm._v(\" app for \"), _c('a', {\n attrs: {\n \"href\": \"https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2&hl=en\"\n }\n }, [_vm._v(\"Android \")]), _vm._v(\"or \"), _c('a', {\n attrs: {\n \"href\": \"https://itunes.apple.com/us/app/google-authenticator/id388497605\"\n }\n }, [_vm._v(\"iPhone\")]), _vm._v(\".\")]), (_vm.seed) ? _c('div', {\n staticClass: \"section\"\n }, [_c('p', [_vm._v(\"Enter the provided key into the app: \"), _c('b', {\n domProps: {\n \"textContent\": _vm._s(_vm.seed)\n }\n })])]) : _c('div', {\n staticClass: \"section\"\n }, [_c('p', [_vm._v(\"Scan the barcode with the app:\")]), _c('img', {\n staticClass: \"qr\",\n attrs: {\n \"src\": \"/launchpad/2fa/login/setup/qr\"\n }\n }), _c('p', [_vm._v(\"If you're unable to scan the barcode, you can \"), _c('a', {\n staticClass: \"seed-button\",\n on: {\n \"click\": _vm.getSeed\n }\n }, [_vm._v(\"enter the key manually\")]), _vm._v(\".\")])]), _c('p', {\n staticClass: \"section\"\n }, [_vm._v(\"After that, enter the 6-digit code that is shown in the app below:\")]), _c('div', {\n staticClass: \"w-input code-input\"\n }, [_c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"tfa-code\"\n }\n }, [_vm._v(\"Authentication code\")]), _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.codeModel),\n expression: \"codeModel\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"tfa-code\",\n \"autocomplete\": \"one-time-code\"\n },\n domProps: {\n \"value\": (_vm.codeModel)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.codeModel = $event.target.value\n }\n }\n })]), (_vm.errorMessage) ? _c('p', {\n staticClass: \"error is-invalid\"\n }, [_vm._v(\"Error: \" + _vm._s(_vm.errorMessage))]) : _vm._e(), _c('button', {\n staticClass: \"w-button w-button--blue\",\n on: {\n \"click\": _vm.setupTfa\n }\n }, [_vm._v(\"Verify\")]), _c('button', {\n staticClass: \"w-button w-button--link\",\n on: {\n \"click\": function($event) {\n return _vm.$emit('cancel')\n }\n }\n }, [_vm._v(\"Cancel\")])]], 2)\n},staticRenderFns: []}\n\n/***/ }),\n/* 609 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"marketing-content\",\n class: {\n 'marketing-content--loaded': _vm.story && !_vm.story.hidden && _vm.display\n }\n }, [_c('div', {\n staticClass: \"marketing-content__bg\"\n }), _vm._v(\" \"), (_vm.story) ? _c('div', {\n staticClass: \"marketing-content__wrap\"\n }, [(_vm.story.title) ? _c('h3', {\n staticClass: \"marketing-content__title\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.story.title) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), (_vm.story.image && _vm.story.image.filename) ? _c('img', {\n staticClass: \"marketing-content__picture\",\n attrs: {\n \"width\": \"500\",\n \"height\": \"347\",\n \"alt\": \"\",\n \"src\": ((_vm.story.image.filename) + \"/m/fit-in/1000x694/filters:format(webm):quality(90)\")\n }\n }) : _vm._e(), _vm._v(\" \"), _c('div', {\n staticClass: \"marketing-content__text\"\n }, [(_vm.story.firstParagraph) ? _c('p', [_vm._v(\"\\n \" + _vm._s(_vm.story.firstParagraph) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), _c('ul', [(_vm.story.bullet1) ? _c('li', [_vm._v(\"\\n \" + _vm._s(_vm.story.bullet1) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), (_vm.story.bullet2) ? _c('li', [_vm._v(\"\\n \" + _vm._s(_vm.story.bullet2) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), (_vm.story.bullet3) ? _c('li', [_vm._v(\"\\n \" + _vm._s(_vm.story.bullet3) + \"\\n \")]) : _vm._e()]), _vm._v(\" \"), (_vm.story.secondParagraph) ? _c('p', [_vm._v(\"\\n \" + _vm._s(_vm.story.secondParagraph) + \"\\n \")]) : _vm._e()])]) : _vm._e()])\n},staticRenderFns: []}\n\n/***/ }),\n/* 610 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-login\"\n }, [_c(_vm.loginState, {\n tag: \"component\"\n })], 1)\n},staticRenderFns: []}\n\n/***/ }),\n/* 611 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"b-app-structure\",\n class: [_vm.bodyClasses],\n attrs: {\n \"id\": \"app\"\n }\n }, [_c('div', {\n staticClass: \"b-app-structure__main\"\n }, [_c('section', {\n staticClass: \"b-login-holder\"\n }, [_c('div', {\n staticClass: \"w-app-login-logo\"\n }, [(_vm.loginType !== 'account' || _vm.allowBranding) ? _c('img', {\n staticClass: \"w-app-login-logo__image\",\n attrs: {\n \"src\": __webpack_require__(564),\n \"alt\": \"Teamwork.com\"\n }\n }) : _vm._e()]), _c('loading', {\n attrs: {\n \"isLoading\": _vm.siteLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.siteLoading) ? _c('div', {\n staticClass: \"content\",\n class: {\n 'content-persona': _vm.isPersonaCapture, 'content-verify-email': _vm.isEmailValidation\n }\n }, [(_vm.siteNotFound && !_vm.fatalError) ? _c('site-not-found') : _vm._e(), (_vm.showSiteLogo) ? _c('div', {\n staticClass: \"w-app-login-site-logo\"\n }, [_c('img', {\n staticClass: \"w-app-login-site-logo__image\",\n attrs: {\n \"src\": _vm.siteLogo,\n \"alt\": _vm.siteName\n }\n })]) : _vm._e(), (!_vm.siteNotFound && _vm.fatalError) ? _c('error-message') : _vm._e(), (!_vm.siteNotFound && !_vm.fatalError) ? _c('router-view') : _vm._e()], 1) : _vm._e()], 1)]), (!_vm.isEmailValidation) ? _c('div', {\n staticClass: \"b-app-structure__secondary\"\n }, [(_vm.inGenericLogin) ? _c('div', {\n staticClass: \"b-app-structure__secondary-content\"\n }, [_c('p', [_vm._v(_vm._s(\"Don't have an account yet?\"))]), _vm._m(0)]) : _vm._e(), _c('MarketingContent', {\n attrs: {\n \"display\": _vm.displayMarketingContent\n }\n })], 1) : _vm._e()])\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('a', {\n staticClass: \"w-button\",\n attrs: {\n \"href\": \"https://www.teamwork.com/signup\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Sign up\")])])\n}]}\n\n/***/ }),\n/* 612 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-forgot-password\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [_c('page-header', {\n attrs: {\n \"title\": \"Recover password\",\n \"error\": _vm.formError\n }\n }), (!_vm.passwordReset) ? _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmit.apply(null, arguments)\n }\n }\n }, [_c('div', {\n staticClass: \"w-login-form__row w-login-form__row--email\"\n }, [_c('div', {\n staticClass: \"w-input\"\n }, [_c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"loginemail\"\n }\n }, [_vm._v(\"Email address\")]), _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.email),\n expression: \"email\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"loginemail\",\n \"type\": \"email\",\n \"placehoder\": \"\",\n \"autocomplete\": \"username\",\n \"required\": \"required\"\n },\n domProps: {\n \"value\": (_vm.email)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.email = $event.target.value\n }\n }\n })])]), _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button\",\n class: {\n 'w-button--gray': !_vm.canSubmit, 'w-button--blue': _vm.canSubmit\n },\n attrs: {\n \"type\": \"submit\",\n \"disabled\": !_vm.canSubmit\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Recover password\")])])])]) : _vm._e(), (_vm.passwordReset) ? _c('form', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [(_vm.loginType === 'account') ? _c('p', [_vm._v(\"Please check your email inbox and follow the instructions to reset your password.\")]) : _c('p', [_vm._v(\"If you have a Teamwork account you should receive an email from us.\\nPlease check your email inbox and follow the instructions to reset your password.\")])])]) : _vm._e(), _c('div', {\n staticClass: \"w-page-footer\"\n }, [_c('router-link', {\n staticClass: \"w-button w-button--link\",\n attrs: {\n \"to\": {\n path: _vm.loginLink,\n query: Object.assign(_vm.$route.query, {\n email: _vm.email\n })\n },\n \"tag\": \"button\",\n \"type\": \"button\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Return to login\")])])], 1)], 1) : _vm._e()], 1)\n},staticRenderFns: []}\n\n/***/ }),\n/* 613 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"saml-form\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [_c('page-header', {\n attrs: {\n \"title\": \"Single Sign On\",\n \"subTitle\": \"Log in and let's get productive!\",\n \"error\": _vm.formError\n }\n }), _c('form', {\n staticClass: \"w-login-form w-login-form--sso\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmit.apply(null, arguments)\n }\n }\n }, [_c('div', {\n staticClass: \"w-login-form__row w-login-form__row--email\"\n }, [_c('div', {\n staticClass: \"w-input\"\n }, [_c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"loginemail\"\n }\n }, [_vm._v(\"Email address\")]), _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.email),\n expression: \"email\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"loginemail\",\n \"type\": \"email\",\n \"placehoder\": \"\",\n \"autocomplete\": \"username\",\n \"required\": \"required\"\n },\n domProps: {\n \"value\": (_vm.email)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.email = $event.target.value\n }\n }\n })])]), _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button\",\n class: {\n 'w-button--gray': !_vm.canSubmit, 'w-button--blue': _vm.canSubmit\n },\n attrs: {\n \"type\": \"submit\",\n \"disabled\": !_vm.canSubmit\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Log in\")])])])]), _c('div', {\n staticClass: \"w-page-footer\"\n }, [_c('button', {\n staticClass: \"w-button w-button--link\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function($event) {\n return _vm.$store.commit('setLoginState', 'standard')\n }\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Return to login\")])])])], 1) : _vm._e()], 1)\n},staticRenderFns: []}\n\n/***/ }),\n/* 614 */\n/***/ (function(module, exports) {\n\nmodule.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"error-message\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.error,\n \"subTitle\": _vm.message\n }\n }), _c('form', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [(_vm.explanation) ? _c('div', {\n staticClass: \"explanation\"\n }, [_c('p', [_vm._v(_vm._s(_vm.explanationHTML))])]) : _vm._e(), (!_vm.explanation.length) ? _c('div', {\n staticClass: \"default-explanation\"\n }, [_c('p', [_vm._v(\"But don't panic, we are here to help...\")]), _vm._m(0)]) : _vm._e()])]), (_vm.inAppLogin) ? _c('div', {\n staticClass: \"w-page-footer\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function($event) {\n $event.preventDefault();\n return _vm.onClickBackToApp.apply(null, arguments)\n }\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Back to app\")])])]) : _vm._e()], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('p', [_vm._v(\"If something has gone wrong and you're not sure why, just \"), _c('a', {\n attrs: {\n \"href\": \"https://www.teamwork.com/contact\",\n \"target\": \"_blank\"\n }\n }, [_vm._v(\"drop us a quick note\")]), _vm._v(\" and we will do our best to help.\")])\n}]}\n\n/***/ }),\n/* 615 */,\n/* 616 */,\n/* 617 */,\n/* 618 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(221);\nmodule.exports = __webpack_require__(220);\n\n\n/***/ })\n],[618]);\n\n\n// WEBPACK FOOTER //\n// static/js/app.504dabb18a080322715c.js","var Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./PageHeader.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-1e47c740\\\",\\\"hasScoped\\\":false}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./PageHeader.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/widgets/PageHeader/PageHeader.vue\n// module id = 11\n// module chunks = 1","var Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./Loading.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-6080515a\\\",\\\"hasScoped\\\":false}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./Loading.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/widgets/Loading/Loading.vue\n// module id = 17\n// module chunks = 1","import Vue from 'vue';\n\nexport function smartFocus() {\n Vue.nextTick(() => {\n const iFlds = document.querySelectorAll('.w-input .w-input__input');\n if (!iFlds.length) return;\n\n // eslint-disable-next-line func-names\n let f = Array.from(iFlds).filter((el) => !el.value);\n if (f.length === 0) f = [iFlds[iFlds.length - 1]];\n f[0].focus();\n\n // eslint-disable-next-line func-names\n iFlds.forEach((el) => {\n if (el.value && el.parentElement) el.parentElement.classList.add('is-moved');\n });\n });\n}\n\nexport function loadThemeColor() {\n const color = localStorage.getItem('launchpad-theme-color');\n const el = document.querySelector('.b-app-structure__secondary');\n if (color && el) el.style.background = color;\n}\n\nexport function setThemeColor(color, hasLocalStorage) {\n const el = document.querySelector('.b-app-structure__secondary');\n\n if (color) {\n if (el) el.style.background = color;\n if (hasLocalStorage) localStorage.setItem('launchpad-theme-color', color);\n } else {\n if (el) el.style.background = '';\n if (hasLocalStorage) localStorage.removeItem('launchpad-theme-color');\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/uiHelper.js","export function redirectToApp(appInfo, code) {\n let location = appInfo.redirect_uri;\n location += location.indexOf('?') > -1 ? `&code=${code}` : `?code=${code}`;\n if (appInfo.state) location += `&state=${encodeURIComponent(appInfo.state)}`;\n if (appInfo.client_id) location += `&client_id=${appInfo.client_id}`;\n if (appInfo.nonce) location += `&nonce=${encodeURIComponent(appInfo.nonce)}`;\n window.location.href = location;\n}\n\nexport function redirectToAppWithError(appInfo, error, description) {\n let location = appInfo.redirect_uri;\n location += location.indexOf('?') > -1 ? '&error=' : '?error=';\n location += error || 'unknown_error';\n if (description) location += `&error_description=${encodeURIComponent(description)}`;\n if (appInfo.client_id) location += `&client_id=${appInfo.client_id}`;\n window.location.href = location;\n}\n\nexport function filterAccounts(accounts, productCode) {\n let key = '';\n switch (productCode) {\n case 'projects':\n key = 'projectsEnabled';\n break;\n case 'desk':\n key = 'deskEnabled';\n break;\n case 'chat':\n key = 'chatEnabled';\n break;\n default:\n return accounts;\n }\n return accounts.filter((acc) => acc.installation[key]);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/appLoginHelper.js","export const ERROR_TYPE = {\n FORM_ERROR: 1,\n FATAL_ERROR: 2,\n TFA_REQUIRED: 3,\n TFA_SETUP_REQUIRED: 4,\n INSTALLATION_PROVISIONING: 5,\n INSTALLATION_VALIDATION_PENDING: 6,\n};\n\nexport function handleAPIError(store, err, defaultMessage) {\n if (!err) return null;\n\n if (!err.response || !err.response.data) {\n // eslint-disable-next-line\n console.error('unknown error', err);\n return { type: ERROR_TYPE.FORM_ERROR, err: defaultMessage };\n }\n\n if (err.response.status === 502) {\n store.commit('showFatalError', {\n error: 'Internal Server Error',\n message: 'An error has occurred, please try again later.',\n appError: 'server_error',\n appErrorExplanation: '502 bad gateway',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: '502 bad gateway' };\n }\n\n const data = err.response.data;\n\n if (err.response.status === 429 && data.status === 'Too many attempts') {\n return { type: ERROR_TYPE.FORM_ERROR, err: data.error };\n }\n\n if (err.response.status === 401 && data.status === 'two factor auth setup required') {\n return { type: ERROR_TYPE.TFA_SETUP_REQUIRED, err: data.error };\n }\n\n if (err.response.status === 401 && data.status === 'Wrong credentials') {\n return { type: ERROR_TYPE.FORM_ERROR, err: data.error };\n }\n\n if (err.response.status === 401 && data.status === 'email verification required') {\n return { type: ERROR_TYPE.INSTALLATION_VALIDATION_PENDING, err: data.error };\n }\n\n if (data.status && data.status.indexOf('twoFactorPasscode') > -1) {\n if (data.status.indexOf('required') > -1) {\n return { type: ERROR_TYPE.TFA_REQUIRED, err: data.status };\n }\n if (data.status.indexOf('incorrect') > -1) {\n return { type: ERROR_TYPE.FORM_ERROR, err: 'Two Factor Authentication code is incorrect.' };\n }\n }\n\n // Try and figure out the error from all the random formats we have :/\n let error = '';\n if (data.error) error = data.error;\n if (data.errors && data.errors.length) error = data.errors[0].message || data.errors[0];\n if (!error && data.message) error = data.message;\n\n // Errors provided by validate lib.\n if (data.errors && data.errors.constructor === Object) {\n error = Object.keys(data.errors).map((key) => `${key} ${data.errors[key]}`).join(',');\n store.commit('showFatalError', {\n error: 'Validation failed',\n message: error,\n appError: 'validation_failed',\n appErrorExplanation: error,\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n }\n\n // Hopefully we have something to handle now\n switch (error) { // eslint-disable-line\n case 'Site not found':\n store.commit('setSiteNotFound');\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'Internal server error':\n store.commit('showFatalError', {\n error: 'Internal Server Error',\n message: 'An error has occurred, please try again later.',\n appError: 'server_error',\n appErrorExplanation: 'an internal server error has occurred',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'new user provisioning is disabled':\n store.commit('showFatalError', {\n error: 'Failed to Login',\n explanation: data.explanation,\n appError: 'access_denied',\n appErrorExplanation: 'new saml user was denied access',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'not enough seats':\n store.commit('showFatalError', {\n error: 'Failed to Login',\n explanation: data.explanation,\n appError: 'access_denied',\n appErrorExplanation: 'not enough seats for new saml user',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'Authentication timed out':\n store.commit('showFatalError', {\n error: 'Failed to Login',\n explanation: 'Authentication timed out, please log in again.',\n appError: 'access_denied',\n appErrorExplanation: 'saml login token has expired',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'your IP address is not in the whitelist':\n store.commit('showFatalError', {\n error: 'Access Denied',\n message: 'Access from your IP address is not enabled.',\n explanation: 'Please contact your administrator to give access to your current IP address or log in from an allowed IP.',\n appError: 'access_denied',\n appErrorExplanation: 'user ip is not whitelisted',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'Invite Expired':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'Invite Expired' };\n case 'User not invited':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'User not invited' };\n case 'User not found':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'User not found' };\n case 'Invalid password. Cannot be blank':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'Password cannot be blank.' };\n case 'your password must contain at least 8 characters':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'Password must be at least 8 characters long.' };\n case 'your password must include at least 2 numeric characters':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'Password must contain at least 2 numeric characters.' };\n case 'your password must include at least one letter':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'Password must contain at least one letter.' };\n case 'User handle is not available':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'The handle you have chosen is already in use.' };\n case 'Standard login is not available on your account':\n return { type: ERROR_TYPE.FORM_ERROR, err: 'Standard login is not available on your account.' };\n case 'Installation is being setup':\n return { type: ERROR_TYPE.INSTALLATION_PROVISIONING, err: 'Installation is provisioning' };\n // app login flow errors:\n case 'app has not yet been verified':\n store.commit('showFatalError', {\n error: 'App not yet verified',\n message: 'This app has not yet been verified.',\n explanation: 'Please check your app status in the Developer Portal.',\n appError: 'access_denied',\n appErrorExplanation: 'app has not yet been verified',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'provided redirect_uri is not on the allowed list':\n store.commit('showFatalError', {\n error: 'Invalid redirect_uri',\n message: 'The redirect_uri provided is not on the list of allowed URIs.',\n explanation: 'Please check your parameters and your app settings in the Developer Portal.',\n appError: 'access_denied',\n appErrorExplanation: 'provided redirect_uri is not on the allowed list',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'requested scope does not match app scope':\n store.commit('showFatalError', {\n error: 'Invalid scope',\n message: 'The requested scope is invalid.',\n explanation: 'Please check your parameters and your app settings in the Developer Portal.',\n appError: 'invalid_scope',\n appErrorExplanation: 'requested scope does not match app scope',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'client_id is invalid':\n store.commit('showFatalError', {\n error: 'App not found',\n message: 'The client_id was either not provided or does not match any app.',\n explanation: 'Please update your app or contact the app developer if the issue persists. If you are the developer, please check your parameters and your app settings in the Developer Portal.',\n appError: 'access_denied',\n appErrorExplanation: 'invalid client_id',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'client_secret is invalid':\n store.commit('showFatalError', {\n error: 'Invalid client secret',\n message: 'The client_secret provided is invalid.',\n explanation: 'Please check your parameters and your app settings in the Developer Portal.',\n appError: 'access_denied',\n appErrorExplanation: 'invalid client_secret',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'origin is invalid':\n store.commit('showFatalError', {\n error: 'Invalid origin',\n message: 'The origin provided is invalid.',\n explanation: 'Please check your parameters and your app settings in the Developer Portal.',\n appError: 'access_denied',\n appErrorExplanation: 'invalid origin',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'The token provided is invalid or has expired':\n store.commit('showFatalError', {\n error: 'Invalid token',\n message: 'The token provided is invalid or has expired.',\n explanation: 'Please try again.',\n appError: 'access_denied',\n appErrorExplanation: 'invalid token',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'requested scope requires admin access':\n store.commit('showFatalError', {\n error: 'Access denied',\n message: 'This action requires admin permissions.',\n explanation: 'Please contact a site administrator.',\n appError: 'access_denied',\n appErrorExplanation: 'user requires admin permissions',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'app cannot be authorized':\n store.commit('showFatalError', {\n error: 'App cannot be authorized',\n message: 'The app must be installed.',\n explanation: 'Please contact a site administrator.',\n appError: 'app_cannot_be_authorized',\n appErrorExplanation: 'app must be installed',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n case 'app does not support oauth':\n store.commit('showFatalError', {\n error: 'App does not support OAUTH',\n message: 'This app does not support authorization',\n appError: 'app_does_not_support_oauth',\n appErrorExplanation: 'app does not support oauth',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n }\n\n // SAML auth error\n if (error.indexOf('illegal base64 data at input byte') > -1) {\n store.commit('showFatalError', {\n error: 'Login Failed',\n message: 'Single Sign On failed, we received invalid parameters.',\n appError: 'server_error',\n appErrorExplanation: 'saml authentication failed, invalid iv and samlauth params',\n });\n return { type: ERROR_TYPE.FATAL_ERROR, err: error };\n }\n\n return { type: ERROR_TYPE.FORM_ERROR, err: defaultMessage };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/errorHelper.js","export function isCurrentDomain(url) {\n if (!url) return false;\n return new RegExp(`^http(s)?://${window.location.host}/`, 'i').test(url);\n}\n\nexport function sanitiseURL(url, prepend = true) {\n if (!url) return null;\n\n let u = url;\n\n // Strip out @'s\n if (url.indexOf('@') !== -1) {\n u = url.replace('@', '');\n }\n\n // Skip the check if URL provided is relative and prepend current domain if needed\n if (u.indexOf('http') !== 0) {\n if (u.indexOf('/') !== 0) u = `/${u}`;\n if (prepend) u = window.location.href.replace(/\\/launchpad(.*)/, '') + u;\n return u;\n }\n\n // Prevent XSS and restrict URLs to current domain\n if (isCurrentDomain(u)) {\n return u;\n }\n\n return null;\n}\n\n// fixProtocol changes the url's protocol\n// from http to https, if it ends with\n// \"teamwork.com\" - this is to make sure\n// that secure cookies are set correctly\n// during generic login (we redirect to\n// HTTPS but cookie could be set as secure\n// on the HTTP url)\nexport function fixProtocol(url) {\n const end = '.teamwork.com/';\n if (url.indexOf(end) !== url.length - end.length) return url;\n if (url.indexOf('https://') === 0) return url;\n return url.replace('http://', 'https://');\n}\n\nexport function navigateExternalURL(url, isIframe) {\n if (!url) return;\n if (!isIframe) {\n window.location.href = url;\n return;\n }\n if (sessionStorage) sessionStorage.setItem('shouldCloseOpener', 'true');\n window.open(url, '_blank');\n}\n\nexport function buildQueryString(data = {}) {\n const params = [];\n for (const k in data) { // eslint-disable-line\n if (data.hasOwnProperty(k)) { // eslint-disable-line\n params.push(`${encodeURIComponent(k)}=${encodeURIComponent(data[k])}`);\n }\n }\n return params.join('&');\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/urlHelper.js","/* eslint-disable import/prefer-default-export */\n\nconst isDevelopment = process.env.NODE_ENV !== 'production' || window.location.hostname.indexOf('localhost') !== -1;\n\nexport {\n isDevelopment,\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/environment.js","function injectStyle (ssrContext) {\n require(\"!!../../node_modules/extract-text-webpack-plugin/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"minimize\\\":true,\\\"sourceMap\\\":true}!../../node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-3317b7a0\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!../../node_modules/vue-loader/lib/selector?type=styles&index=0!./PasswordInput.vue\")\n}\nvar Component = require(\"!../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!../../node_modules/vue-loader/lib/selector?type=script&index=0!./PasswordInput.vue\"),\n /* template */\n require(\"!!../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-3317b7a0\\\",\\\"hasScoped\\\":true}!../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../node_modules/vue-loader/lib/selector?type=template&index=0!./PasswordInput.vue\"),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-3317b7a0\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/PasswordInput.vue\n// module id = 146\n// module chunks = 1","function injectStyle (ssrContext) {\n require(\"!!../../../../node_modules/extract-text-webpack-plugin/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"minimize\\\":true,\\\"sourceMap\\\":true}!../../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-239200ad\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!./AppConsent.scss\")\n}\nvar Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./AppConsent.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-239200ad\\\",\\\"hasScoped\\\":true}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./AppConsent.vue\"),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-239200ad\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/sections/AppConsent/AppConsent.vue\n// module id = 147\n// module chunks = 1","var Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./GDPRConsent.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-64aeb376\\\",\\\"hasScoped\\\":false}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./GDPRConsent.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/sections/GDPRConsent/GDPRConsent.vue\n// module id = 148\n// module chunks = 1","function injectStyle (ssrContext) {\n require(\"!!../../../../node_modules/extract-text-webpack-plugin/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"minimize\\\":true,\\\"sourceMap\\\":true}!../../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-1a4c85c3\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!../../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./CompanyInfo.vue\")\n}\nvar Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!../../../../node_modules/vue-loader/lib/selector?type=script&index=0!./CompanyInfo.vue\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-1a4c85c3\\\",\\\"hasScoped\\\":true}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./CompanyInfo.vue\"),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-1a4c85c3\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/sections/Login/CompanyInfo.vue\n// module id = 149\n// module chunks = 1","module.exports = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAwIDEwMDAiIHdpZHRoPSIxMDAwIiBoZWlnaHQ9IjEwMDAiPgoJPHN0eWxlPgoJCXRzcGFuIHsgd2hpdGUtc3BhY2U6cHJlIH0KCQkuc2hwMCB7IGZpbGw6ICNmZjIyYjEgfSAKCQkuc2hwMSB7IGZpbGw6ICMxZDFjMzkgfSAKCTwvc3R5bGU+Cgk8ZyBpZD0iQ2hhdCI+CgkJPHBhdGggaWQ9InBhdGgyOCIgY2xhc3M9InNocDAiIGQ9Ik0xOTMuNTksNzE2LjM4Yy00OS41OSwwIC04OS45Nyw0MC4zNiAtODkuOTcsODkuOTdjMCw0OS42MSA0MC4zOCw5MCA4OS45Nyw5MGM0OS42MSwwIDg5Ljk3LC00MC4zOSA4OS45NywtOTBjMCwtNDkuNjEgLTQwLjM2LC04OS45NyAtODkuOTcsLTg5Ljk3eiIgLz4KCQk8cGF0aCBpZD0icGF0aDE4IiBjbGFzcz0ic2hwMCIgZD0iTTE5My41OSw4OTYuMzZjNDkuNzEsMCA4OS45NywtNDAuMzEgODkuOTcsLTg5Ljk3YzAsLTQ5LjcxIC00MC4yNiwtODkuOTcgLTg5Ljk3LC04OS45N2MtNDkuNjgsMCAtODkuOTcsNDAuMjYgLTg5Ljk3LDg5Ljk3YzAsNDkuNjYgNDAuMjksODkuOTcgODkuOTcsODkuOTd6IiAvPgoJCTxwYXRoIGlkPSJwYXRoMjAiIGNsYXNzPSJzaHAxIiBkPSJNNzE2LjExLDQ5OS44NGMwLC0yNi41MSAtMjEuNDgsLTQ3Ljk4IC00Ny45OCwtNDcuOThjLTI2LjUxLDAgLTQ4LDIxLjQ3IC00OCw0Ny45OGMwLDI2LjUxIDIxLjQ4LDQ3Ljk3IDQ4LDQ3Ljk3YzI2LjUsMCA0Ny45OCwtMjEuNDYgNDcuOTgsLTQ3Ljk3eiIgLz4KCQk8cGF0aCBpZD0icGF0aDIyIiBjbGFzcz0ic2hwMSIgZD0iTTU0OC4xNSw0OTkuODRjMCwtMjYuNTEgLTIxLjQ3LC00Ny45OCAtNDcuOTgsLTQ3Ljk4Yy0yNi41LDAgLTQ3Ljk4LDIxLjQ3IC00Ny45OCw0Ny45OGMwLDI2LjUxIDIxLjQ4LDQ3Ljk3IDQ3Ljk4LDQ3Ljk3YzI2LjUxLDAgNDcuOTgsLTIxLjQ2IDQ3Ljk4LC00Ny45N3oiIC8+CgkJPHBhdGggaWQ9InBhdGgyNCIgY2xhc3M9InNocDEiIGQ9Ik0zODAuMTksNDk5Ljg0YzAsLTI2LjUxIC0yMS40OCwtNDcuOTggLTQ3Ljk4LC00Ny45OGMtMjYuNTEsMCAtNDcuOTgsMjEuNDcgLTQ3Ljk4LDQ3Ljk4YzAsMjYuNTEgMjEuNDcsNDcuOTcgNDcuOTgsNDcuOTdjMjYuNSwwIDQ3Ljk4LC0yMS40NiA0Ny45OCwtNDcuOTd6IiAvPgoJCTxwYXRoIGlkPSJwYXRoMjYiIGNsYXNzPSJzaHAxIiBkPSJNNTAwLjE2LDIwYy0yNjQuNTgsMCAtNDc5Ljg0LDIxNS4yNiAtNDc5Ljg0LDQ3OS44NGMwLDQwLjc3IDUuMTMsODEuMjQgMTUuMjMsMTIwLjM1YzYuNjUsMjUuNjggMzIuODQsNDEgNTguNDgsMzQuNDZjMjUuNjQsLTYuNjUgNDEuMDcsLTMyLjgyIDM0LjQ2LC01OC40OWMtOC4wOSwtMzEuMjQgLTEyLjE4LC02My42NiAtMTIuMTgsLTk2LjMyYzAsLTIxMS42NiAxNzIuMjEsLTM4My44NiAzODMuODYsLTM4My44NmMyMTEuNjYsMCAzODMuODcsMTcyLjIgMzgzLjg3LDM4My44NmMwLDIxMS42NSAtMTcyLjIxLDM4My44NiAtMzgzLjg3LDM4My44NmMtMzQuMDUsMCAtNjcuNzksLTQuNDQgLTEwMC4zLC0xMy4yYy0yNS42NCwtNi45NyAtNTEuOTMsOC4yNCAtNTguODQsMzMuOGMtNi45MSwyNS42IDguMjQsNTEuOTMgMzMuODIsNTguODNjNDAuNjYsMTAuOTkgODIuODMsMTYuNTUgMTI1LjMyLDE2LjU1YzI2NC41OCwwIDQ3OS44NCwtMjE1LjI2IDQ3OS44NCwtNDc5Ljg0YzAsLTI2NC41OCAtMjE1LjI2LC00NzkuODQgLTQ3OS44NCwtNDc5Ljg0eiIgLz4KCTwvZz4KPC9zdmc+\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/product-icon-chat.svg\n// module id = 211\n// module chunks = 1","module.exports = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAwIDEwMDAiIHdpZHRoPSIxMDAwIiBoZWlnaHQ9IjEwMDAiPgoJPHN0eWxlPgoJCXRzcGFuIHsgd2hpdGUtc3BhY2U6cHJlIH0KCQkuc2hwMCB7IGZpbGw6ICMxZDFjMzkgfSAKCQkuc2hwMSB7IGZpbGw6ICNmZjIyYjEgfSAKCTwvc3R5bGU+Cgk8ZyBpZD0iQ1JNIj4KCQk8cGF0aCBpZD0icGF0aDM2IiBjbGFzcz0ic2hwMCIgZD0iTTg2NC4wNywxNjguNDJjLTI0LjQsLTI0LjM2IC02My44NCwtMjQuMzYgLTg4LjE3LDBsLTYyMi4xNSw2MjIuMTNjLTI0LjMyLDI0LjMzIC0yNC4zMiw2My44IDAsODguMTNjMTIuMTgsMTIuMTkgMjguMTYsMTguMjggNDQuMSwxOC4yOGMxNS45NCwwIDMxLjkyLC02LjA5IDQ0LjA2LC0xOC4yOGw2MjIuMTUsLTYyMi4xMmMyNC4zMiwtMjQuMzMgMjQuMzIsLTYzLjgzIDAsLTg4LjE0IiAvPgoJCTxwYXRoIGlkPSJwYXRoMzAiIGNsYXNzPSJzaHAwIiBkPSJNNjUxLjU4LDYyNC4yNGwtMjQ5LjMxLDI0OS4zNWMtMjQuNCwyNC4zMyAtMjQuNCw2My44IDAsODguMTdjMTIuMTQsMTIuMTYgMjguMDgsMTguMjQgNDQuMDYsMTguMjRjMTUuOTQsMCAzMS44OCwtNi4wNyA0NC4wNiwtMTguMjRsMjQ5LjM1LC0yNDkuMzVjMjQuMzYsLTI0LjMzIDI0LjM2LC02My44IDAsLTg4LjE4Yy0yNC4zMiwtMjQuMzMgLTYzLjg0LC0yNC4zMyAtODguMTcsMHoiIC8+CgkJPHBhdGggaWQ9InBhdGgzMiIgY2xhc3M9InNocDAiIGQ9Ik0xMjIuMjYsMzA5LjQ2YzE1Ljk0LDAgMzEuODgsLTYuMDggNDQuMDYsLTE4LjI0bDExMC4yNiwtMTEwLjIyYzI0LjMyLC0yNC4zNCAyNC4zMiwtNjMuODIgMCwtODguMThjLTI0LjM2LC0yNC4zNCAtNjMuODEsLTI0LjM0IC04OC4xNywtMC4wMmwtMTEwLjIyLDExMC4yMmMtMjQuMzYsMjQuMzcgLTI0LjM2LDYzLjgyIC0wLjA0LDg4LjE4YzEyLjE4LDEyLjE4IDI4LjEyLDE4LjI1IDQ0LjEsMTguMjUiIC8+CgkJPHBhdGggaWQ9InBhdGgzNCIgY2xhc3M9InNocDAiIGQ9Ik02NDIuMDIsNTguOTJjLTI0LjMyLC0yNC4zNCAtNjMuODQsLTI0LjM0IC04OC4xNywwbC01MDkuNTgsNTA5LjZjLTI0LjM2LDI0LjMxIC0yNC4zNiw2My44MSAwLDg4LjE2YzEyLjE0LDEyLjE3IDI4LjEyLDE4LjI0IDQ0LjA2LDE4LjI0YzE1Ljk0LDAgMzEuOTIsLTYuMDggNDQuMDYsLTE4LjI0bDUwOS42MiwtNTA5LjZjMjQuMzYsLTI0LjM0IDI0LjM2LC02My44MyAwLC04OC4xNiIgLz4KCQk8cGF0aCBpZD0icGF0aDM4IiBjbGFzcz0ic2hwMSIgZD0iTTg1OC4wMywzODkuMDZjLTY0LjQzLDAgLTExNi44OCw1Mi40MyAtMTE2Ljg4LDExNi44OWMwLDY0LjQ4IDUyLjQ1LDExNi45MSAxMTYuODgsMTE2LjkxYzY0LjQ3LDAgMTE2LjkyLC01Mi40MyAxMTYuOTIsLTExNi45MWMwLC02NC40NiAtNTIuNDUsLTExNi44OSAtMTE2LjkyLC0xMTYuODl6IiAvPgoJPC9nPgo8L3N2Zz4=\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/product-icon-crm.svg\n// module id = 212\n// module chunks = 1","module.exports = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAwIDEwMDAiIHdpZHRoPSIxMDAwIiBoZWlnaHQ9IjEwMDAiPgoJPHN0eWxlPgoJCXRzcGFuIHsgd2hpdGUtc3BhY2U6cHJlIH0KCQkuc2hwMCB7IGZpbGw6ICMxZDFjMzkgfSAKCQkuc2hwMSB7IGZpbGw6ICNmZjIyYjEgfSAKCTwvc3R5bGU+Cgk8ZyBpZD0iRGVzayI+CgkJPHBhdGggaWQ9InBhdGg1MiIgY2xhc3M9InNocDAiIGQ9Ik01MDAsMjBjLTI2NC42NiwwIC00ODAsMjE1LjMzIC00ODAsNDgwYzAsMjY0LjY3IDIxNS4zNCw0ODAgNDgwLDQ4MGM0MC43NCwwIDgxLjI3LC01LjEzIDEyMC4zOSwtMTUuMjNjMjUuNjUsLTYuNjYgNDEuMSwtMzIuODEgMzQuNDQsLTU4LjQ4Yy02LjYzLC0yNS43IC0zMi44OCwtNDEuMDUgLTU4LjQ3LC0zNC40OGMtMzEuMjYsOC4wOSAtNjMuNjksMTIuMTggLTk2LjM2LDEyLjE4Yy0yMTEuNzQsMCAtMzg0LC0xNzIuMjcgLTM4NCwtMzgzLjk5YzAsLTIxMS43MyAxNzIuMjYsLTM4My45OSAzODQsLTM4My45OWMyMTEuNzQsMCAzODQsMTcyLjI1IDM4NCwzODMuOTljMCwzNC4wNyAtNC40Nyw2Ny44MSAtMTMuMjYsMTAwLjMzYy02LjksMjUuNjEgOC4yNSw1MS45NSAzMy44NCw1OC44NmMyNS42OCw2Ljk3IDUxLjk2LC04LjI0IDU4Ljg2LC0zMy44MWMxMS4wMSwtNDAuNyAxNi41NiwtODIuODggMTYuNTYsLTEyNS4zOWMwLC0yNjQuNjcgLTIxNS4zNCwtNDgwIC00ODAsLTQ4MCIgLz4KCQk8cGF0aCBpZD0icGF0aDQ2IiBjbGFzcz0ic2hwMSIgZD0iTTg5NS43OSw4MDUuODJjMCwtNDkuNjggLTQwLjI2LC05MCAtOTAsLTkwYy00OS42OCwwIC05MCw0MC4zMiAtOTAsOTBjMCw0OS43MiA0MC4zMiw5MCA5MCw5MGM0OS43NCwwIDkwLC00MC4yOCA5MCwtOTB6IiAvPgoJCTxwYXRoIGlkPSJwYXRoNDgiIGNsYXNzPSJzaHAwIiBkPSJNNDA5Ljk3LDUwMC4wMWMwLDQ5LjcgNDAuMzIsOTAuMDIgOTAsOTAuMDJjNDkuNzEsMCA5MCwtNDAuMzMgOTAsLTkwLjAyYzAsLTQ5LjcgLTQwLjI5LC05MCAtOTAsLTkwYy00OS42OCwwIC05MCw0MC4zIC05MCw5MHoiIC8+CgkJPHBhdGggaWQ9InBhdGg1MCIgY2xhc3M9InNocDAiIGQ9Ik03NTkuODksNDA3LjQ3YzAsLTAuMDIgLTAuMDMsLTAuMDMgLTAuMDMsLTAuMDVjLTEzLjg5LC0zOS4xMyAtMzUuNjQsLTczLjY5IC02NC42NSwtMTAyLjY5Yy0xOC43MiwtMTguNzUgLTQ5LjE3LC0xOC43NSAtNjcuODksMGMtMTguNzUsMTguNzUgLTE4Ljc1LDQ5LjE1IDAsNjcuODljMTguODQsMTguODUgMzMuMDMsNDEuMzggNDIuMTIsNjYuOTZjMCwwIDAsMC4wMSAwLDAuMDJjMy40OCw5Ljc5IDUuOTQsMTguNzYgNy41MywyNy40OWMxMC44LDU4LjQ1IC03Ljc3LDExOC4zNCAtNDkuNjUsMTYwLjIzYy00Miw0MS45OSAtMTAyLjA5LDYwLjUzIC0xNjAuNTYsNDkuNjF2MGMtMC4wMywwIC0wLjAzLDAgLTAuMDYsMGMtOC40LC0xLjU2IC0xNy4yNSwtNC4wMiAtMjYuOTcsLTcuNDhjLTI1LjY1LC05LjA4IC00OC4yMSwtMjMuMjYgLTY3LjExLC00Mi4xM2MtNjYuMywtNjYuMzMgLTcwLjIsLTE3My44NSAtOC44NSwtMjQ0Ljg0bDAuMDMsLTAuMDFsMC45NiwtMS4xMmMyLjU1LC0yLjk1IDUuMSwtNS45NCA3LjgzLC04LjY3YzIuNywtMi43MyA1LjYxLC01LjE2IDguNDMsLTcuNjNsMS4zMiwtMS4xM3YwYzMyLjY0LC0yOC4yOCA3NC40NiwtNDMuODggMTE3LjcyLC00My45NGMyNi41MiwtMC4wNCA0Ny45NywtMjEuNTUgNDcuOTQsLTQ4LjA3Yy0wLjAzLC0yNi40OCAtMjEuNTEsLTQ3LjkyIC00OCwtNDcuOTJjLTAuMDMsMCAtMC4wNiwwIC0wLjA2LDBjLTY2LjMzLDAuMDcgLTEzMC40MSwyNCAtMTgwLjQ1LDY3LjM1YzAsMCAtMC4wMywwIC0wLjAzLDAuMDF2MGwtMS4yNiwxLjA5Yy00LjUzLDMuOTQgLTkuMDYsNy45MSAtMTMuNTMsMTIuMzRjLTQuNDEsNC40NSAtOC40OSw5LjExIC0xMi41NCwxMy43OGwtMC45MywxLjA3YzAsMC4wMiAtMC4wMywwLjA2IC0wLjA2LDAuMDhjLTk0LjA4LDEwOC44NCAtODguMTEsMjczLjc2IDEzLjU5LDM3NS40OGMyOS4wNywyOS4wNyA2My42OSw1MC44NCAxMDIuOTYsNjQuNzVjMTQuNTIsNS4xNiAyOC4wOCw4Ljg4IDQxLjQ5LDExLjM0YzAuMDMsMC4wMiAwLjA5LDAuMDIgMC4xMiwwLjAyYzE2Ljg2LDMuMTQgMzMuODcsNC43IDUwLjcsNC43YzcyLjU3LDAgMTQyLjk4LC0yOC41NyAxOTUuMjEsLTgwLjgxYzY0LjIzLC02NC4yMiA5Mi43LC0xNTYgNzYuMTcsLTI0NS41MmMtMi41MiwtMTMuNzggLTYuMywtMjcuNTkgLTExLjQ5LC00Mi4yMSIgLz4KCTwvZz4KPC9zdmc+\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/product-icon-desk.svg\n// module id = 213\n// module chunks = 1","module.exports = \"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTAwMHB4IiBoZWlnaHQ9IjEwMDBweCIgdmlld0JveD0iMCAwIDEwMDAgMTAwMCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KICAgIDwhLS0gR2VuZXJhdG9yOiBTa2V0Y2ggNjMuMSAoOTI0NTIpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPGcgaWQ9IlRlYW13b3JrLUljb24tMTAwMHgxMDAwIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iSWNvbi9UZWFtd29yayIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTI1LjAwMDAwMCwgMTI1LjAwMDAwMCkiIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik0zMjEuMjkxNTgsMzA2LjQ1MzU5NyBDMzUyLjMxNTcyNSwzMDYuNDUzNTk3IDM3MC4xMDQ1NywyODkuNTUyOTQzIDM3MC4xMDQ1NywyNjAuMDY3NDk2IEMzNzAuMTA0NTcsMjMyLjMyMDkwMSAzNTAuOTc3MTgzLDIxMy42Njg4ODUgMzIyLjUwNTAyNCwyMTMuNjY4ODg1IEwyNTIuMTI1MjUsMjEzLjY2ODg4NSBMMjUyLjEyNTI1LDE2MS41NjU4MzUgQzI1Mi4xMjUyNSwxMjMuOTg2NTg4IDIyNS4xNDE3NDksMTA0LjMwODc3MyAxOTguNDk2MDEyLDEwNC4zMDg3NzMgQzE3MS44Mzc3NjQsMTA0LjMwODc3MyAxNDQuODU0MjY0LDEyMy45ODY1ODggMTQ0Ljg1NDI2NCwxNjEuNTY1ODM1IEwxNDQuODU0MjY0LDUyMC45ODMwNTkgQzE0NC44NTQyNjQsNjA3LjM2Mjc4NiAxNzkuMjY4NTQ3LDY0NS44ODAyNjMgMjU2LjQ2NjEyOCw2NDUuODgwMjYzIEMyOTguMjk4Njg1LDY0NS44ODAyNjMgMzIyLjIxNzMsNjM1LjEzNDQgMzM5Ljk5MzYzNSw2MjQuNjc2MjYgQzM1My41OTE3MTgsNjE3LjEyMDM4IDM1OC40MjA0NzYsNjAxLjA5NTQwOCAzNTguNDIwNDc2LDU4OC42MjMyMDEgQzM1OC40MjA0NzYsNTY1LjUwNTIwOSAzNDIuOTcwOTUzLDUzOS43NjAxNzIgMzIwLjc3ODY4MSw1MzkuNzYwMTcyIEMzMTcuNzEzNzk1LDUzOS43NjAxNzIgMzE0LjYxMTM4MSw1NDAuMjczMDcyIDMxMS4yNzEyODEsNTQxLjM5ODk0OCBDMzEwLjA5NTM2Niw1NDEuODc0MzE4IDMwOC43OTQzNTMsNTQyLjQ2MjI3NiAzMDcuMzU1NzM0LDU0My4xMjUyOTEgQzMwMS41MTM2ODcsNTQ1LjgxNDg4NSAyOTMuNTE5OTY2LDU0OS40ODAyMzcgMjgxLjgzNTg3Myw1NDkuNDgwMjM3IEMyNjguMDAwMTA1LDU0OS40ODAyMzcgMjUyLjEyNTI1LDU0NC42MDE0NCAyNTIuMTI1MjUsNTA2LjQ5Njc4NCBMMjUyLjEyNTI1LDMwNi40NTM1OTcgTDMyMS4yOTE1OCwzMDYuNDUzNTk3IFoiIGlkPSJNYWluIiBmaWxsPSIjMUQxQzM5Ij48L3BhdGg+CiAgICAgICAgICAgIDxwYXRoIGQ9Ik00MjAuNTA3NTQ3LDU1MS45ODcxODkgQzQyMC41MDc1NDcsNjAzLjg3NzU3MyA0NjIuNzE1Mzk2LDY0Ni4wODU0MjMgNTE0LjU5MzI3MSw2NDYuMDg1NDIzIEM1NjYuNDcxMTQ2LDY0Ni4wODU0MjMgNjA4LjY3ODk5NSw2MDMuODc3NTczIDYwOC42Nzg5OTUsNTUxLjk4NzE4OSBDNjA4LjY3ODk5NSw1MDAuMTA5MzE0IDU2Ni40NzExNDYsNDU3LjkwMTQ2NCA1MTQuNTkzMjcxLDQ1Ny45MDE0NjQgQzQ2Mi43MTUzOTYsNDU3LjkwMTQ2NCA0MjAuNTA3NTQ3LDUwMC4xMDkzMTQgNDIwLjUwNzU0Nyw1NTEuOTg3MTg5IFoiIGlkPSJEb3QiIGZpbGw9IiNGRjIyQjEiPjwvcGF0aD4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPgo=\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/product-icon-projects.svg\n// module id = 214\n// module chunks = 1","module.exports = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAwIDEwMDAiIHdpZHRoPSIxMDAwIiBoZWlnaHQ9IjEwMDAiPgoJPHN0eWxlPgoJCXRzcGFuIHsgd2hpdGUtc3BhY2U6cHJlIH0KCQkuc2hwMCB7IGZpbGw6ICMxZDFjMzkgfSAKCQkuc2hwMSB7IGZpbGw6ICNmZjIyYjEgfSAKCTwvc3R5bGU+Cgk8ZyBpZD0iU3BhY2VzIj4KCQk8cGF0aCBpZD0icGF0aDQyIiBjbGFzcz0ic2hwMCIgZD0iTTk4MCwyODYuNjVjMCwxNDcuMDQgLTExOS42NCwyNjYuNjYgLTI2Ni42NywyNjYuNjZoLTE1OS45OHYxNTkuOThjMCwxNDcuMDcgLTExOS42MSwyNjYuNjkgLTI2Ni42NCwyNjYuNjljLTE0Ny4xLDAgLTI2Ni43MSwtMTE5LjYyIC0yNjYuNzEsLTI2Ni42OWMwLC0xNDcuMDMgMTE5LjYxLC0yNjYuNjUgMjY2LjcxLC0yNjYuNjVoMTU5Ljk1di0xNTkuOTljMCwtMTQ3LjAzIDExOS42MSwtMjY2LjY1IDI2Ni42NywtMjY2LjY1YzE0Ny4wMywwIDI2Ni42NywxMTkuNjIgMjY2LjY3LDI2Ni42NXpNNDQ2LjY2LDU1My4zMWgtMTU5Ljk1Yy04OC4yNSwwIC0xNjAuMDIsNzEuNzYgLTE2MC4wMiwxNTkuOThjMCw4OC4yNSA3MS43NiwxNjAuMDIgMTYwLjAyLDE2MC4wMmM4OC4xOSwwIDE1OS45NSwtNzEuNzYgMTU5Ljk1LC0xNjAuMDJ6TTcxMy4zMyw0NDYuNjRjODguMjUsMCAxNTkuOTgsLTcxLjc2IDE1OS45OCwtMTU5Ljk5YzAsLTg4LjIyIC03MS43MywtMTU5Ljk5IC0xNTkuOTgsLTE1OS45OWMtODguMjIsMCAtMTU5Ljk4LDcxLjc3IC0xNTkuOTgsMTU5Ljk5djE1OS45OXoiIC8+CgkJPHBhdGggaWQ9InBhdGg0MCIgY2xhc3M9InNocDEiIGQ9Ik05MzMuOTEsODMzLjk4YzAsLTU1LjI1IC00NC43NCwtMTAwIC05OS45OCwtMTAwYy01NS4yMSwwIC05OS45OCw0NC43NSAtOTkuOTgsMTAwYzAsNTUuMiA0NC43Nyw5OS45OSA5OS45OCw5OS45OWM1NS4yNCwwIDk5Ljk4LC00NC43OSA5OS45OCwtOTkuOTkiIC8+CgkJPHBhdGggaWQ9InBhdGg0NCIgY2xhc3M9InNocDEiIGQ9Ik04MzMuOTMsNzMzLjk4Yy01NS4xNSwwIC05OS45OCw0NC44NSAtOTkuOTgsMTAwYzAsNTUuMTQgNDQuODQsOTkuOTkgOTkuOTgsOTkuOTljNTUuMTUsMCA5OS45OCwtNDQuODUgOTkuOTgsLTk5Ljk5YzAsLTU1LjE1IC00NC44NCwtMTAwIC05OS45OCwtMTAweiIgLz4KCTwvZz4KPC9zdmc+\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/product-icon-spaces.svg\n// module id = 215\n// module chunks = 1","function injectStyle (ssrContext) {\n require(\"!!../../../../node_modules/extract-text-webpack-plugin/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"minimize\\\":true,\\\"sourceMap\\\":true}!../../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-67e314e6\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!../../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./PersonaCapture.vue\")\n}\nvar Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!../../../../node_modules/vue-loader/lib/selector?type=script&index=0!./PersonaCapture.vue\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-67e314e6\\\",\\\"hasScoped\\\":true}!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./PersonaCapture.vue\"),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-67e314e6\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/sections/PersonaCapture/PersonaCapture.vue\n// module id = 216\n// module chunks = 1","var Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./AccountList.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-37372ab8\\\",\\\"hasScoped\\\":false}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./AccountList.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/widgets/AccountList/AccountList.vue\n// module id = 217\n// module chunks = 1","var Component = require(\"!../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./ProductList.vue\"),\n /* template */\n require(\"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-57946abe\\\",\\\"hasScoped\\\":false}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./ProductList.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/widgets/ProductList.vue\n// module id = 218\n// module chunks = 1","function injectStyle (ssrContext) {\n require(\"!!../../../node_modules/extract-text-webpack-plugin/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"minimize\\\":true,\\\"sourceMap\\\":true}!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-232e329e\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./TwSelect.vue\")\n}\nvar Component = require(\"!../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./TwSelect.vue\"),\n /* template */\n require(\"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-232e329e\\\",\\\"hasScoped\\\":true}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./TwSelect.vue\"),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-232e329e\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/widgets/TwSelect.vue\n// module id = 219\n// module chunks = 1","// The Vue build version to load with the `import` command\n// (runtime-only or standalone) has been set in webpack.base.conf with an alias.\n/* eslint-disable */\nimport Vue from 'vue';\nimport Raven from 'raven-js';\nimport RavenVue from 'raven-js/plugins/vue';\n\nimport App from '@/components/App.vue';\nimport router from './router';\nimport store from './store';\nimport { isDevelopment } from './utils/environment';\n/* eslint-enable */\n\n\nVue.config.productionTip = false;\n\n// Don't set up sentry on localhost/sunbeam\nif (!isDevelopment && process.env.SENTRY_DSN) {\n // process vars get set by Docker during build\n Raven.config(process.env.SENTRY_DSN, {\n release: process.env.VERSION,\n environment: process.env.SENTRY_ENV,\n })\n .addPlugin(RavenVue, Vue)\n .install();\n}\n\nRaven.context(() => {\n /* eslint-disable no-new */\n new Vue({\n el: '#app',\n router,\n store,\n template: '',\n components: { App },\n });\n});\n\n// fix for back-forward cache for Safari, see\n// https://stackoverflow.com/questions/8788802/prevent-safari-loading-from-cache-when-back-button-is-clicked\nwindow.onpageshow = function (event) { // eslint-disable-line func-names\n if (event.persisted) {\n window.location.reload();\n }\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/main.js","import Vue from 'vue';\nimport Router from 'vue-router';\n\nimport Login from '@/components/pages/Login/Login.vue';\nimport ForgotPassword from '@/components/pages/ForgotPassword/ForgotPassword.vue';\nimport ResetPassword from '@/components/pages/ResetPassword/ResetPassword.vue';\nimport Logout from '@/components/pages/Logout/Logout.vue';\nimport AccountNotSetup from '@/components/pages/AccountNotSetup.vue';\nimport TokenAuth from '@/components/pages/TokenAuth/TokenAuth.vue';\nimport SAMLAuth from '@/components/pages/SAMLAuth/SAMLAuth.vue';\nimport AcceptInvite from '@/components/pages/AcceptInvite/AcceptInvite.vue';\nimport SelectAccount from '@/components/pages/SelectAccount/SelectAccount.vue';\nimport Welcome from '@/components/pages/Welcome/Welcome.vue';\nimport Success from '@/components/pages/Success/Success.vue';\nimport EmailValidation from '../components/sections/EmailValidation/EmailValidation.vue';\n\nVue.use(Router);\n\nexport default new Router({\n mode: 'history',\n base: '/launchpad/',\n routes: [\n {\n path: '/login/:productCode?',\n name: 'Login',\n component: Login,\n meta: {\n title: 'Log in',\n },\n },\n {\n path: '/forgotpassword/:productCode?',\n name: 'Recover Password',\n component: ForgotPassword,\n meta: {\n title: 'Recover password',\n },\n },\n {\n path: '/resetpassword/:userId/:token',\n name: 'Reset Password',\n component: ResetPassword,\n meta: {\n title: 'Reset password',\n },\n },\n {\n path: '/logout/:productCode?',\n name: 'Logout',\n component: Logout,\n meta: {\n title: 'Log out',\n },\n },\n {\n path: '/notsetup/:productCode',\n name: 'Account Not Setup',\n component: AccountNotSetup,\n meta: {\n title: 'Account not setup',\n },\n },\n {\n path: '/saml/auth',\n name: 'Single Sign On',\n component: SAMLAuth,\n meta: {\n title: 'Log in',\n },\n },\n {\n path: '/tokenauth',\n name: 'Token Login',\n component: TokenAuth,\n meta: {\n title: 'Log in',\n },\n },\n {\n path: '/acceptinvite/:productCode?',\n name: 'Accept Invite',\n component: AcceptInvite,\n meta: {\n title: 'Get Started',\n },\n },\n {\n path: '/join/:productCode?',\n name: 'Join Teamwork',\n component: AcceptInvite,\n meta: {\n title: 'Get started',\n },\n },\n {\n path: '/googleSSO/select-account',\n name: 'Google Sign-In',\n component: SelectAccount,\n meta: {\n title: 'Log in',\n },\n },\n {\n path: '/welcome',\n name: 'Welcome',\n component: Welcome,\n meta: {\n title: 'Welcome',\n hideSiteLogo: true,\n },\n },\n {\n path: '/success',\n name: 'Success',\n component: Success,\n meta: {\n title: 'Log in',\n },\n },\n {\n path: '/verifyemail/:productCode/:token',\n name: 'Success',\n component: EmailValidation,\n meta: {\n title: 'Verify email',\n },\n },\n ],\n});\n\n\n\n// WEBPACK FOOTER //\n// ./src/router/index.js","import Vue from 'vue';\nimport Vuex from 'vuex';\nimport createLogger from 'vuex/dist/logger';\n\nimport site from './modules/site';\nimport login from './modules/login';\n\nVue.use(Vuex);\n\nconst debug = process.env.NODE_ENV !== 'production' && process.env.NODE_ENV !== 'test';\n\nexport default new Vuex.Store({\n modules: {\n site,\n login,\n },\n strict: debug,\n plugins: debug ? [createLogger()] : [],\n});\n\n\n\n// WEBPACK FOOTER //\n// ./src/store/index.js","import { sanitiseURL, buildQueryString } from '@/utils/urlHelper';\nimport { smartFocus, loadThemeColor } from '@/utils/uiHelper';\nimport { isDevelopment } from '@/utils/environment';\nimport Raven from 'raven-js';\n\nconst getEmptyFatalError = () => ({\n error: '', // main message\n message: '', // subtitle\n explanation: '', // HTML content\n\n appError: '', // code for app login\n appErrorExplanation: '', // explanation for app login\n});\n\n// initial state\nconst initialState = {\n // available types: account, generic, app\n loginType: '',\n\n // available types: standard, saml-first, saml-email\n loginState: 'standard',\n\n // meta contains current metadata that may affect rendering\n // or behaviour\n meta: {\n productCode: '',\n hasLocalStorage: true,\n isIframe: false,\n source: '',\n product: '',\n extra: '',\n admin: false,\n ignoreInstallations: '',\n generic: false,\n },\n\n loggedIn: false,\n\n fatalError: getEmptyFatalError(),\n\n samlBaseURL: '',\n afterLoginURL: '',\n formState: '',\n\n // appInfo stores app authentication info\n appInfo: {\n redirect_uri: '',\n state: '',\n client_id: '',\n scope: [],\n install: false,\n nonce: '',\n },\n\n waf: null,\n\n selectedAccount: {\n installation: {\n apiEndPoint: '',\n },\n },\n};\n\n// getters\nconst getters = {\n twAuthBaseURL: (state, getters, rootState) => { // eslint-disable-line\n if (isDevelopment) return 'https://tw-auth-dev.teamwork.com';\n return rootState.site.siteInfo.twAuthBaseURL;\n },\n googleSSOURL: (state, getters) => { // eslint-disable-line\n const url = `${getters.twAuthBaseURL}/launchpad/googleSSO/start`;\n const params = {};\n\n if (state.afterLoginURL) params.retURL = state.afterLoginURL;\n\n if (state.loginType === 'app') {\n params.appLoginRedirectURI = state.appInfo.redirect_uri;\n if (state.appInfo.state) params.state = state.appInfo.state;\n if (state.appInfo.client_id) params.appLoginClientID = state.appInfo.client_id;\n if (state.appInfo.scope) params.appLoginScope = state.appInfo.scope;\n if (state.appInfo.install) params.install = state.appInfo.install;\n if (state.appInfo.nonce) params.nonce = state.appInfo.nonce;\n if (state.meta.ignoreInstallations) params.ignoreInstallations = state.meta.ignoreInstallations; // eslint-disable-line\n }\n\n if (state.meta.source) params.source = state.meta.source;\n if (state.meta.product) params.product = state.meta.product;\n if (state.meta.extra) params.extra = state.meta.extra;\n\n return `${url}?${buildQueryString(params)}`;\n },\n samlURL: (state) => {\n const url = state.samlBaseURL.length ? `${state.samlBaseURL}launchpad/saml/start` : '/launchpad/saml/start';\n const params = {};\n\n switch (state.loginType) { // eslint-disable-line\n case 'account':\n case 'generic':\n if (state.afterLoginURL) params.SAMLAfterLoginURL = state.afterLoginURL;\n break;\n case 'app':\n params.appAuth = true;\n params.redirect_uri = state.appInfo.redirect_uri;\n if (state.appInfo.state) params.state = state.appInfo.state;\n if (state.appInfo.scope) params.scope = state.appInfo.scope;\n if (state.appInfo.client_id) params.client_id = state.appInfo.client_id;\n if (state.appInfo.install) params.install = state.appInfo.install;\n if (state.appInfo.nonce) params.nonce = state.appInfo.nonce;\n if (state.meta.ignoreInstallations) params.ignoreInstallations = state.meta.ignoreInstallations; // eslint-disable-line\n break;\n }\n\n if (state.meta.source) params.source = state.meta.source;\n if (state.meta.product) params.product = state.meta.product;\n if (state.meta.extra) params.extra = state.meta.extra;\n\n return `${url}?${buildQueryString(params)}`;\n },\n bodyClasses: (state) => {\n const classes = [];\n if (state.meta.isIframe) classes.push('in-iframe');\n if (state.meta.source) classes.push(`source-${state.meta.source}`);\n if (state.meta.product) classes.push(`product-${state.meta.product}`);\n if (state.meta.extra && typeof state.meta.extra === 'string') {\n state.meta.extra.split(',').forEach((s) => {\n classes.push(`extra-${s}`);\n });\n }\n return classes.join(' ');\n },\n allowStandardLogin: (state, getters, rootState) => { // eslint-disable-line\n if (state.meta.admin) return true;\n if (state.loginState === 'saml-first') return !rootState.site.siteInfo.sso.hideStandardLoginLink;\n return rootState.site.siteInfo.displayOptions.allowStandardLogin;\n },\n};\n\n// actions\nconst actions = {\n setupBasicInfo({ commit, dispatch }, { query, params }) {\n const host = window.location.host;\n const generic = host === 'www.teamwork.com' || host === 'teamwork.com' || query.generic\n || (query.gad && host.indexOf('tw-auth') > -1)\n || host === 'staging.teamwork.com' || host === 'www.staging.teamwork.com';\n\n const appInfo = {};\n if (query.redirect_uri) appInfo.redirect_uri = query.redirect_uri;\n if (query.state) appInfo.state = query.state;\n if (query.client_id) appInfo.client_id = query.client_id;\n if (query.install) appInfo.install = !!query.install;\n if (query.scope) appInfo.scope = query.scope.split(/[\\s,]+/);\n if (query.nonce) appInfo.nonce = query.nonce;\n\n let loginType = 'account';\n if (generic) {\n loginType = 'generic';\n dispatch('loadAwsWaf');\n }\n if (appInfo.redirect_uri) loginType = 'app';\n\n let afterLoginURL = sanitiseURL(query.continue, loginType === 'account');\n if (loginType === 'account' && !afterLoginURL) {\n afterLoginURL = window.location.href.replace(/\\/launchpad(.*)/, '');\n if (params.productCode && params.productCode !== 'projects') {\n afterLoginURL += `/${params.productCode}`;\n } else {\n afterLoginURL += '/app';\n }\n }\n\n const meta = {\n isIframe: false,\n hasLocalStorage: true,\n generic,\n };\n if (params.productCode) meta.productCode = params.productCode;\n if (query.source) meta.source = query.source;\n if (query.product) meta.product = query.product;\n if (query.extra) meta.extra = query.extra;\n if (query.ignore_installations) meta.ignoreInstallations = query.ignore_installations;\n\n // check if in iframe\n try {\n meta.isIframe = window.self !== window.top;\n } catch (e) {\n meta.isIframe = true;\n }\n\n // check if localStorage is supported, as Safari\n // throws errors when in private browsing mode.\n try {\n localStorage.getItem('test');\n } catch (err) {\n meta.hasLocalStorage = false;\n }\n\n if (meta.hasLocalStorage) loadThemeColor();\n if (query.admin) meta.admin = true;\n\n window.addEventListener('storage', (eventInfo) => {\n if (eventInfo.key === 'loggedIn') {\n dispatch('setLoggedIn', {\n loggedIn: true,\n ignoreLS: true,\n });\n }\n });\n\n commit('setBasicInfo', { loginType, appInfo, meta, afterLoginURL });\n if (meta.isIframe) dispatch('setupIFrame', meta.isIframe);\n },\n appendExperimentTracking({ state, commit }, { campaign, variation }) {\n const continueURL = state.afterLoginURL || '';\n const parameter = `utm_content=vwo-${campaign}-${variation}`;\n let url;\n\n if (continueURL.includes('?')) url = `${continueURL}&${parameter}`;\n else if (continueURL.endsWith('/')) url = `${continueURL}?${parameter}`;\n else url = `${continueURL}/?${parameter}`;\n\n commit('setAfterLoginURL', url);\n },\n setupIFrame({ state, commit }, isIframe) {\n if (!isIframe) return;\n\n document.body.style.background = 'transparent';\n document.body.classList.add('in-iframe');\n\n window.addEventListener('beforeunload', () => {\n window.parent.postMessage('pageChanged', '*');\n });\n\n const pageResized = () => window.parent.postMessage('pageResized', '*');\n document.addEventListener('transitionend', pageResized);\n document.addEventListener('webkitTransitionEnd', pageResized);\n document.addEventListener('oTransitionEnd', pageResized);\n },\n async loadAwsWaf({ commit }) {\n if (!process.env.WAFJS_URI) return;\n const wafjs = document.createElement('script');\n wafjs.src = process.env.WAFJS_URI;\n wafjs.setAttribute('defer', '');\n document.head.appendChild(wafjs);\n wafjs.onabort = () => Promise.reject(new Error(\"Couldn't load WAF\"));\n wafjs.onerror = wafjs.onabort;\n wafjs.onload = () => {\n commit('setWAF', window.AwsWafIntegration);\n return Promise.resolve();\n };\n },\n async getWafToken() {\n try {\n if (!process.env.WAFJS_URI) return null;\n return window.AwsWafIntegration.getToken();\n } catch (e) {\n Raven.captureException(e, { fingerprint: ['waf library not loaded'] });\n return null;\n }\n },\n};\n\n// export `mutations` as a named export\nexport const mutations = {\n setLoggedIn(state, { loggedIn, userId, ignoreLS }) {\n state.loggedIn = loggedIn;\n if (loggedIn && state.meta.hasLocalStorage && !ignoreLS) {\n localStorage.setItem('loggedIn', JSON.stringify({\n userId,\n dateTimeUTC: new Date().toISOString(),\n }));\n // ensure we wipe any previous stale sessionTimeout keys on fresh login\n localStorage.removeItem('twProjects-sessionTimeout');\n }\n },\n setBasicInfo(state, { loginType, appInfo, meta, afterLoginURL }) {\n if (appInfo && typeof appInfo === 'object') {\n state.appInfo = Object.assign(state.appInfo, appInfo);\n }\n state.meta = Object.assign(state.meta, meta);\n state.loginType = loginType;\n state.afterLoginURL = afterLoginURL;\n },\n showFatalError(state, errorData) {\n state.fatalError = Object.assign(state.fatalError, errorData);\n },\n resetFatalError(state) {\n state.fatalError = getEmptyFatalError();\n },\n setSAMLBaseURL(state, url) {\n state.samlBaseURL = url;\n },\n setLoginState(state, loginState) {\n state.loginState = loginState;\n smartFocus();\n },\n setSelectedAccount(state, { installation }) {\n state.selectedAccount.installation = installation;\n },\n setFormState(state, formState) {\n state.formState = formState;\n },\n setWAF(state, waflib) {\n state.waf = waflib;\n },\n setAfterLoginURL(state, url) {\n state.afterLoginURL = url;\n },\n};\n\nexport default {\n state: initialState,\n getters,\n actions,\n mutations,\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/store/modules/login.js","import axios from 'axios';\nimport { getCookie } from '@/utils/cookieHelper';\nimport { setThemeColor } from '@/utils/uiHelper';\nimport { isDevelopment } from '@/utils/environment';\n\n// initial state\nconst initialState = {\n siteInfo: {\n name: 'Teamwork.com',\n logo: '',\n url: '',\n displayOptions: {\n allowRememberMe: false,\n hasTeamworkBranding: false,\n showSiteNameOnLoginScreen: false,\n themeColor: '',\n useBackgroundColorOnLogin: false,\n allowStandardLogin: true,\n },\n integrations: {\n googleSignIn: {\n enabled: true,\n },\n },\n sso: {\n enabled: true,\n loginStyle: '',\n hideStandardLoginLink: false,\n },\n apps: {\n projects: false,\n chat: false,\n desk: false,\n },\n twAuthBaseURL: 'https://tw-auth.teamwork.com',\n isEnterprise: false,\n installationState: '',\n },\n\n siteLoading: true,\n siteNotFound: false,\n\n productInfo: [\n {\n code: 'projects',\n title: 'Teamwork',\n description: 'The project management app for professionals',\n },\n {\n code: 'chat',\n title: 'Teamwork Chat',\n description: 'Instant chat software to keep your team connected',\n },\n {\n code: 'desk',\n title: 'Teamwork Desk',\n description: 'The helpdesk that\\'s invisible for your customers',\n },\n {\n code: 'crm',\n title: 'Teamwork CRM',\n description: 'Sales pipeline management for small businesses ready to take the next step',\n },\n {\n code: 'spaces',\n title: 'Teamwork Spaces',\n description: 'A new kind of collaboration software',\n },\n {\n code: 'developer',\n title: 'Teamwork Developer Portal',\n description: 'Create and manage integrations for Teamwork products',\n },\n ],\n};\n\n// getters\nconst getters = {\n};\n\n// actions\nconst actions = {\n getSiteInfo({ commit, rootState, dispatch }, currentRoute) {\n const { isIframe } = rootState.login.meta;\n\n axios.get(`/launchpad/v1/info.json?isIframe=${isIframe}`).then((response) => {\n const info = response.data.info;\n\n // check if their domain has changed and this is an old url\n let parts = info.url.split('//');\n if (!isDevelopment && parts.length > 1) {\n parts = parts[1].split('/');\n const newHost = parts[0].toLowerCase();\n const oldHost = window.location.host.toLowerCase();\n if (newHost.indexOf('sunbeam.teamwork.localhost') === -1 && newHost !== oldHost) {\n // the basehref has changed, redirect to new url\n const base = info.url.substr(0, info.url.length - 1); // remove trailing slash\n const url = `${base}${window.location.pathname}${window.location.search.replace(oldHost, newHost)}`;\n window.location.href = url;\n return;\n }\n }\n\n commit('setLoggedIn', {\n loggedIn: response.data.loggedIn,\n userId: response.data.userId,\n });\n\n if (info.sso.enabled) {\n if (info.sso.loginStyle === 'SSO automatic-start' && currentRoute.path.indexOf('/login') === 0) {\n if (!isIframe) {\n window.location.href = `/launchpad/saml/start?SAMLAfterLoginURL=${encodeURIComponent(rootState.login.afterLoginURL)}`;\n return;\n }\n /**\n * We need to show button if we're in iframe because otherwise we\n * get 'popup blocked' browser message.\n */\n commit('setLoginState', 'saml-first', { root: true });\n } else if (info.sso.loginStyle === 'dual-login SSO-first') {\n commit('setLoginState', 'saml-first', { root: true });\n }\n }\n\n commit('setSiteInfo', info);\n\n const color = info.displayOptions.useBackgroundColorOnLogin ? info.displayOptions.themeColor : '';\n setThemeColor(color, rootState.login.meta.hasLocalStorage);\n\n dispatch('setPageTitle', currentRoute.meta.title);\n }).catch((e) => {\n // eslint-disable-next-line\n console.error(e);\n commit('setSiteNotFound');\n });\n },\n\n setPageTitle({ state }, pageTitle) {\n let title = `${pageTitle} - ${state.siteInfo.name}`;\n if (state.siteInfo.displayOptions.hasTeamworkBranding) title += ' - Teamwork.com';\n\n const launchpadLB = getCookie('LAUNCHPADLB');\n if (launchpadLB === 'beta') title = `🔥 BETA - ${title}`;\n\n document.title = title;\n },\n};\n\n// export `mutations` as a named export\nexport const mutations = {\n setSiteInfo(state, data) {\n state.siteInfo = data;\n state.siteLoading = false;\n },\n setSiteNotFound(state) {\n state.siteNotFound = true;\n state.siteLoading = false;\n },\n};\n\nexport default {\n state: initialState,\n getters,\n actions,\n mutations,\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/store/modules/site.js","export function getCookie(name) { // eslint-disable-line\n const value = `; ${document.cookie}`;\n const parts = value.split(`; ${name}=`);\n if (parts.length === 2) return parts.pop().split(';').shift();\n return '';\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/cookieHelper.js","\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// PasswordInput.vue?e5809428","\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// AccountNotSetup.vue?b7af7dbe","\n\n\n\n\n\n// WEBPACK FOOTER //\n// EmailValidation.vue?02319db5","\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// CompanyInfo.vue?120bf5f2","\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// TfaSetup.vue?8adc4358","\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// MarketingContent.vue?508720de","\n\n\n\n\n\n// WEBPACK FOOTER //\n// PersonaCapture.vue?4a77f3f2","\n\n\n\n\n\n// WEBPACK FOOTER //\n// ProductList.vue?2b7fbdc1","\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// TwSelect.vue?7708ed10","import { mapState, mapGetters } from 'vuex';\nimport { smartFocus } from '@/utils/uiHelper';\nimport SiteNotFound from '@/components/sections/SiteNotFound/SiteNotFound.vue';\nimport ErrorMessage from '@/components/sections/ErrorMessage/ErrorMessage.vue';\nimport Loading from '@/components/widgets/Loading/Loading.vue';\nimport MarketingContent from '@/components/sections/MarketingContent/MarketingContent.vue';\n\n// @vue/component\nexport default {\n name: 'Launchpad',\n components: {\n SiteNotFound,\n ErrorMessage,\n Loading,\n MarketingContent,\n },\n mounted() {\n this.$store.dispatch('setupBasicInfo', {\n query: this.$route.query,\n params: this.$route.params,\n }).then(() => {\n if (this.loginType === 'account') {\n this.$store.dispatch('getSiteInfo', this.$route);\n } else {\n this.$store.commit('setSiteInfo', this.$store.state.site.siteInfo);\n this.$store.dispatch('setPageTitle', this.$route.meta.title);\n }\n });\n\n document.body.addEventListener('focus', (e) => {\n const t = e.target.closest('.w-input');\n if (t) {\n const i = t.querySelector('.w-input__input');\n if (i && i.value === '') t.classList.add('is-moved');\n }\n }, true);\n\n document.body.addEventListener('blur', (e) => {\n const t = e.target.closest('.w-input');\n if (t) {\n const i = t.querySelector('.w-input__input');\n if (i && i.value === '') t.classList.remove('is-moved');\n }\n }, true);\n\n document.querySelectorAll('.w-input .w-input__input').forEach((el) => {\n if (el.value !== '') {\n el.parentElement.classList.add('is-moved');\n }\n });\n\n smartFocus();\n },\n computed: {\n ...mapState({\n siteNotFound: (state) => state.site.siteNotFound,\n siteLoading: (state) => {\n if (state.login.loginType === 'generic' && !state.login.waf) return true;\n return state.site.siteLoading;\n },\n fatalError: (state) => state.login.fatalError.error,\n allowBranding: (state) => state.site.siteInfo.displayOptions.hasTeamworkBranding,\n loginType: (state) => state.login.loginType,\n siteName: (state) => state.site.siteInfo.name,\n siteLogo: (state) => state.login.meta.isIframe ? '' : state.site.siteInfo.logo, // eslint-disable-line\n isIframe: (state) => state.login.meta.isIframe,\n inAppLogin: (state) => state.login.loginType === 'app',\n inGenericLogin: (state) => state.login.loginType === 'generic',\n isPersonaCapture: (state) => state.login.formState === 'persona-capture',\n isEmailValidation: (state) => state.login.formState === 'email-validation',\n }),\n ...mapGetters({\n bodyClasses: 'bodyClasses',\n }),\n showSiteLogo() {\n return !this.siteNotFound && this.siteLogo && !this.$route.meta.hideSiteLogo;\n },\n displayMarketingContent() {\n return !this.siteLoading && !this.siteNotFound &&\n !this.isIframe && !this.inAppLogin &&\n this.inGenericLogin && this.$route.name === 'Login';\n },\n },\n watch: {\n $route() {\n this.$store.dispatch('setPageTitle', this.$route.meta.title);\n },\n displayMarketingContent(value) {\n if (value) this.loadVWO();\n },\n },\n methods: {\n reload() {\n window.location.reload();\n },\n loadVWO() {\n const script = document.createElement('script');\n script.type = 'text/javascript';\n script.id = 'vwoCode';\n script.text = `\n window._vwo_code || (function() {\n var account_id=720001,\n version=2.1,\n settings_tolerance=2000,\n hide_element='body',\n hide_element_style = 'opacity:0 !important;filter:alpha(opacity=0) !important;background:none !important;transition:none !important;',\n /* DO NOT EDIT BELOW THIS LINE */\n f=false,w=window,d=document,v=d.querySelector('#vwoCode'),cK='_vwo_'+account_id+'_settings',cc={};try{var c=JSON.parse(localStorage.getItem('_vwo_'+account_id+'_config'));cc=c&&typeof c==='object'?c:{}}catch(e){}var stT=cc.stT==='session'?w.sessionStorage:w.localStorage;code={nonce:v&&v.nonce,use_existing_jquery:function(){return typeof use_existing_jquery!=='undefined'?use_existing_jquery:undefined},library_tolerance:function(){return typeof library_tolerance!=='undefined'?library_tolerance:undefined},settings_tolerance:function(){return cc.sT||settings_tolerance},hide_element_style:function(){return'{'+(cc.hES||hide_element_style)+'}'},hide_element:function(){if(performance.getEntriesByName('first-contentful-paint')[0]){return''}return typeof cc.hE==='string'?cc.hE:hide_element},getVersion:function(){return version},finish:function(e){if(!f){f=true;var t=d.getElementById('_vis_opt_path_hides');if(t)t.parentNode.removeChild(t);if(e)(new Image).src='https://dev.visualwebsiteoptimizer.com/ee.gif?a='+account_id+e}},finished:function(){return f},addScript:function(e){var t=d.createElement('script');t.type='text/javascript';if(e.src){t.src=e.src}else{t.text=e.text}v&&t.setAttribute('nonce',v.nonce);d.getElementsByTagName('head')[0].appendChild(t)},load:function(e,t){var n=this.getSettings(),i=d.createElement('script'),r=this;t=t||{};if(n){i.textContent=n;d.getElementsByTagName('head')[0].appendChild(i);if(!w.VWO||VWO.caE){stT.removeItem(cK);r.load(e)}}else{var o=new XMLHttpRequest;o.open('GET',e,true);o.withCredentials=!t.dSC;o.responseType=t.responseType||'text';o.onload=function(){if(t.onloadCb){return t.onloadCb(o,e)}if(o.status===200||o.status===304){_vwo_code.addScript({text:o.responseText})}else{_vwo_code.finish('&e=loading_failure:'+e)}};o.onerror=function(){if(t.onerrorCb){return t.onerrorCb(e)}_vwo_code.finish('&e=loading_failure:'+e)};o.send()}},getSettings:function(){try{var e=stT.getItem(cK);if(!e){return}e=JSON.parse(e);if(Date.now()>e.e){stT.removeItem(cK);return}return e.s}catch(e){return}},init:function(){if(d.URL.indexOf('__vwo_disable__')>-1)return;var e=this.settings_tolerance();w._vwo_settings_timer=setTimeout(function(){_vwo_code.finish();stT.removeItem(cK)},e);var t;if(this.hide_element()!=='body'){t=d.createElement('style');var n=this.hide_element(),i=n?n+this.hide_element_style():'',r=d.getElementsByTagName('head')[0];t.setAttribute('id','_vis_opt_path_hides');v&&t.setAttribute('nonce',v.nonce);t.setAttribute('type','text/css');if(t.styleSheet)t.styleSheet.cssText=i;else t.appendChild(d.createTextNode(i));r.appendChild(t)}else{t=d.getElementsByTagName('head')[0];var i=d.createElement('div');i.style.cssText='z-index: 2147483647 !important;position: fixed !important;left: 0 !important;top: 0 !important;width: 100% !important;height: 100% !important;background: white !important;display: block !important;';i.setAttribute('id','_vis_opt_path_hides');i.classList.add('_vis_hide_layer');t.parentNode.insertBefore(i,t.nextSibling)}var o=window._vis_opt_url||d.URL,s='https://dev.visualwebsiteoptimizer.com/j.php?a='+account_id+'&u='+encodeURIComponent(o)+'&vn='+version;if(w.location.search.indexOf('_vwo_xhr')!==-1){this.addScript({src:s})}else{this.load(s+'&x=true')}}};w._vwo_code=code;code.init();})();\n `;\n document.head.appendChild(script);\n\n const vwoOnVariationApplied = (data) => {\n if (!data) return;\n const { 1: campaign, 2: variation } = data;\n this.$store.dispatch('appendExperimentTracking', { campaign, variation });\n };\n\n window.VWO = window.VWO || [];\n window.VWO.push(['onVariationApplied', vwoOnVariationApplied]);\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/App.js","import axios from 'axios';\nimport { mapState } from 'vuex';\nimport { handleAPIError, ERROR_TYPE } from '@/utils/errorHelper';\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\nimport Loading from '@/components/widgets/Loading/Loading.vue';\nimport PasswordInput from '@/components/PasswordInput.vue';\n\n// @vue/component\nexport default {\n name: 'AcceptInvite',\n components: {\n PageHeader,\n Loading,\n PasswordInput,\n },\n data() {\n return {\n product: {\n name: 'Teamwork.com',\n code: '',\n url: '',\n helpDocsLink: 'https://www.teamwork.com/support',\n },\n\n user: {\n id: 0,\n userId: '',\n firstName: '',\n lastName: '',\n chatHandle: '',\n password: '',\n },\n\n expired: false,\n formError: '',\n isLoading: true,\n nameIsSetInProjects: false,\n };\n },\n created() {\n this.code = this.$route.query.code;\n this.product.code = this.$route.params.productCode ? this.$route.params.productCode : 'chat';\n this.getValidateInviteCode();\n },\n computed: {\n ...mapState({\n siteInfo: (state) => state.site.siteInfo,\n }),\n title() {\n if (this.expired) return 'Invalid Code';\n if (!this.siteInfo.displayOptions.showSiteNameOnLoginScreen) {\n if (this.nameIsSetInProjects) return `Welcome ${this.user.firstName}!`;\n return 'Welcome!';\n } else if (!this.nameIsSetInProjects) return `Hi, welcome to ${this.siteInfo.name}!`;\n return `Hi ${this.user.firstName}, welcome to ${this.siteInfo.name}!`;\n },\n canSubmit() {\n const isValid = this.user && this.user.firstName.length &&\n this.user.lastName.length && this.user.password.length;\n\n if (this.isProductChat) {\n return isValid && this.user.chatHandle.length;\n }\n\n return isValid;\n },\n isProductChat() {\n return this.product.code === 'chat';\n },\n isProductProjects() {\n return this.product.code === 'projects';\n },\n showNameInputs() {\n return !this.isProductProjects || !this.nameIsSetInProjects;\n },\n subTitle() {\n if (this.isProductProjects && !this.showNameInputs) {\n return 'Please choose a password to get started.';\n }\n return 'Fill out your details below to get started.';\n },\n loginLink() {\n let url = '/login';\n if (this.$route.params.productCode) url += `/${this.$route.params.productCode}`;\n return url;\n },\n },\n methods: {\n onSubmit() {\n if (!this.canSubmit || this.isLoading) return;\n this.isLoading = true;\n\n const data = {\n firstName: this.user.firstName,\n lastName: this.user.lastName,\n password: this.user.password,\n };\n\n let url = `/launchpad/v1/join.json?code=${this.code}`;\n\n if (this.isProductChat) data.userHandle = this.user.chatHandle;\n else if (this.isProductProjects) {\n data.code = this.code;\n data.userId = this.user.userId;\n url = '/acceptinviteprojects.json';\n }\n\n axios.post(url, data).then((response) => {\n if (this.isProductProjects && response.data.error) {\n this.formError = response.data.message;\n this.isLoading = false;\n } else {\n window.location.href = response.data.redirectURL;\n }\n }).catch((e) => {\n const apiError = handleAPIError(this.$store, e, 'An error has occurred');\n if (apiError && apiError.type === ERROR_TYPE.FORM_ERROR && (apiError.err === 'User not invited' || apiError.err === 'User not found')) {\n this.$store.commit('showFatalError', {\n error: 'Invalid Invite Code',\n message: 'The code may have expired, please request another invitation.',\n });\n } else if (apiError && apiError.type === ERROR_TYPE.FORM_ERROR) {\n this.formError = apiError.err;\n }\n this.isLoading = false;\n });\n },\n getValidateInviteCode() {\n let url = `/launchpad/v1/join.json?code=${this.code}`;\n if (this.isProductProjects) {\n url = `/validateuserinvitecode.json?code=${this.code}`;\n }\n\n axios.get(url).then((response) => {\n if (response.data.error) {\n const err = handleAPIError(this.$store, { response }, 'Invalid invite code.');\n if (err.type === ERROR_TYPE.FORM_ERROR) {\n this.expired = true;\n } else {\n this.$store.commit('showFatalError', {\n error: response.data.error,\n message: response.data.message,\n });\n }\n\n this.isLoading = false;\n }\n\n if (!this.isProductProjects) {\n // Save product info\n this.product.name = response.data.productName;\n this.product.code = response.data.productCode;\n this.product.url = response.data.productUrl;\n this.product.helpDocsLink = response.data.productHelpDocsLink;\n }\n\n // not yet accepted, show form to update details\n if (response.data.userId) {\n this.user.id = response.data.userId;\n this.user.firstName = response.data.userFirstName;\n this.user.lastName = response.data.userLastName;\n this.user.chatHandle = response.data.userChatHandle;\n\n // if invited without name, clear out placeholders\n if (this.user.firstName === 'Unknown') {\n this.user.firstName = '';\n this.user.chatHandle = '';\n }\n if (this.user.lastName === 'Unknown') {\n this.user.lastName = '';\n this.user.chatHandle = '';\n }\n } else if (response.data.userLogin) {\n this.nameIsSetInProjects = response.data.nameIsSet;\n this.user.userId = response.data.userLogin;\n if (this.nameIsSetInProjects) {\n this.user.firstName = response.data.firstName;\n this.user.lastName = response.data.lastName;\n }\n }\n\n this.isLoading = false;\n }).catch((e) => {\n const err = handleAPIError(this.$store, e, 'Invalid invite code.');\n // most likely, the invite code has expired, show fatal anyway\n if (err) {\n if (err.type === ERROR_TYPE.FORM_ERROR) {\n this.expired = true;\n } else {\n this.$store.commit('showFatalError', {\n error: 'Invalid Invite Code',\n message: 'The code may have expired or has already been used, please request another invitation or try to log in.',\n });\n }\n }\n\n this.isLoading = false;\n });\n },\n reload() {\n window.location.reload();\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/pages/AcceptInvite/AcceptInvite.js","import axios from 'axios';\nimport { mapState } from 'vuex';\nimport { smartFocus } from '@/utils/uiHelper';\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\nimport Loading from '@/components/widgets/Loading/Loading.vue';\n\n// @vue/component\nexport default {\n name: 'ForgotPassword',\n components: {\n PageHeader,\n Loading,\n },\n data() {\n return {\n email: '',\n\n passwordReset: false,\n isLoading: false,\n formError: '',\n };\n },\n created() {\n if (this.$route.query.email) {\n this.email = this.$route.query.email;\n const query = Object.assign({}, this.$route.query);\n delete query.email;\n this.$router.replace({ query });\n }\n smartFocus();\n },\n computed: {\n ...mapState({\n loginType: (state) => state.login.loginType,\n }),\n canSubmit() {\n return this.email.trim().length;\n },\n loginLink() {\n let url = '/login';\n if (this.$route.params.productCode) url += `/${this.$route.params.productCode}`;\n return url;\n },\n },\n methods: {\n onSubmit() {\n if (!this.canSubmit || this.isLoading) return;\n this.isLoading = true;\n this.formError = '';\n\n let url = '/launchpad/v1/forgotpassword.json';\n if (this.loginType !== 'account') url += '?generic=true';\n\n axios.post(url, { email: this.email.trim() }).then(() => {\n this.passwordReset = true;\n this.isLoading = false;\n smartFocus();\n }).catch(() => {\n this.formError = 'Failed to reset your password, please double-check your email address.';\n this.isLoading = false;\n smartFocus();\n });\n },\n reload() {\n window.location.reload();\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/pages/ForgotPassword/ForgotPassword.js","import { mapGetters, mapState } from 'vuex';\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\nimport StandardForm from '@/components/sections/Login/StandardForm/StandardForm.vue';\nimport SAMLStarter from '@/components/sections/Login/SAMLStarter/SAMLStarter.vue';\nimport SAMLForm from '@/components/sections/Login/SAMLForm/SAMLForm.vue';\n\n// @vue/component\nexport default {\n name: 'Login',\n components: {\n PageHeader,\n standard: StandardForm,\n 'saml-first': SAMLStarter,\n 'saml-email': SAMLForm,\n },\n computed: {\n ...mapGetters({\n samlURL: 'samlURL',\n googleSSOURL: 'googleSSOURL',\n }),\n ...mapState({\n loginType: (state) => state.login.loginType,\n loginState: (state) => state.login.loginState,\n }),\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/pages/Login/Login.js","import { mapState } from 'vuex';\nimport { buildQueryString } from '@/utils/urlHelper';\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\n\n// @vue/component\nexport default {\n name: 'Logout',\n components: {\n PageHeader,\n },\n data() {\n return {\n logoutMessage: 'You are now signed out. Have a great day!',\n };\n },\n created() {\n if (this.$route.query.message) this.logoutMessage = this.$route.query.message;\n },\n computed: {\n ...mapState({\n loggedIn: (state) => state.login.loggedIn,\n loginType: (state) => state.login.loginType,\n appInfo: (state) => state.login.appInfo,\n siteInfo: (state) => state.site.siteInfo,\n afterLoginURL: (state) => state.login.afterLoginURL,\n // eslint-disable-next-line\n title: (state) => state.site.siteInfo.displayOptions.showSiteNameOnLoginScreen ? state.site.siteInfo.name : 'Log in',\n inAppLogin: (state) => state.login.loginType === 'app',\n }),\n logoutMessageHTML() {\n return this.logoutMessage\n .replace(/>/g, '>')\n .replace(/');\n },\n },\n methods: {\n onSubmitLogin() {\n let route = '/login';\n const query = {};\n\n if (this.$route.params.productCode) route += `/${this.$route.params.productCode}`;\n\n if (this.inAppLogin) {\n query.generic = true;\n query.redirect_uri = this.appInfo.redirect_uri;\n if (this.appInfo.state) query.state = this.appInfo.state;\n if (this.appInfo.client_id) query.client_id = this.appInfo.client_id;\n if (this.appInfo.scope) query.scope = this.appInfo.scope;\n }\n\n route += `?${buildQueryString(query)}`;\n\n if (this.siteInfo.sso.enabled && this.siteInfo.sso.loginStyle === 'SSO automatic-start') {\n window.location.href = `/launchpad/saml/start?SAMLAfterLoginURL=${encodeURIComponent(this.afterLoginURL)}`;\n return;\n }\n\n this.$router.push(route);\n },\n },\n watch: {\n loggedIn(loggedIn) {\n if (this.loginType === 'account' && loggedIn) this.onSubmitLogin();\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/pages/Logout/Logout.js","import axios from 'axios';\nimport { mapState } from 'vuex';\n\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\nimport Loading from '@/components/widgets/Loading/Loading.vue';\n\nimport PasswordInput from '@/components/PasswordInput.vue';\nimport { handleAPIError, ERROR_TYPE } from '@/utils/errorHelper';\nimport { smartFocus } from '@/utils/uiHelper';\n\n// @vue/component\nexport default {\n name: 'ForgotPassword',\n components: {\n PageHeader,\n Loading,\n PasswordInput,\n },\n data() {\n return {\n userId: 0,\n token: '',\n\n password: '',\n\n state: 'normal',\n formError: '',\n isLoading: false,\n };\n },\n created() {\n this.userId = this.$route.params.userId;\n this.token = this.$route.params.token;\n\n this.validateResetToken();\n },\n mounted() {\n smartFocus();\n },\n computed: {\n ...mapState({\n apps: (state) => state.site.siteInfo.apps,\n siteURL: (state) => state.site.siteInfo.url,\n }),\n canSubmit() {\n return this.password.length;\n },\n title() {\n if (this.state === 'success') return 'Password updated';\n return 'Reset password';\n },\n subTitle() {\n if (this.state === 'success' && this.user) {\n return `${this.user.FirstName}, your password has been changed.`;\n }\n return 'Please enter the desired password for your account below.';\n },\n },\n watch: {\n isLoading() {\n window.parent.postMessage('pageResized', '*');\n },\n },\n methods: {\n validateResetToken() {\n axios.get(`/launchpad/v1/validatereset/${this.userId}/${this.token}`).then((response) => {\n this.user = response.data.user;\n this.isLoading = false;\n }).catch(() => {\n this.$store.commit('showFatalError', {\n error: 'Token Expired',\n // eslint-disable-next-line\n explanation: 'Sorry we couldn\\'t authorise this request. It\\'s most likely that the link has expired.',\n appError: 'access_denied',\n appErrorExplanation: 'reset token has expired',\n });\n this.isLoading = false;\n });\n },\n\n onSubmitReset() {\n if (this.isLoading || !this.canSubmit) return false;\n this.isLoading = true;\n this.formError = '';\n return axios.post(\n `/launchpad/resetpassword/${this.userId}/${this.token}`,\n `password=${encodeURIComponent(this.password)}`,\n ).then(() => {\n this.state = 'success';\n this.isLoading = false;\n }).catch((e) => {\n const err = handleAPIError(\n this.$store, e,\n 'unknown error',\n );\n console.log(err, err.type, err.err);\n if (err && err.type === ERROR_TYPE.FORM_ERROR && err.err !== 'unknown error') {\n this.formError = err.err;\n } else {\n this.$store.commit('showFatalError', {\n error: 'Token Expired',\n // eslint-disable-next-line\n explanation: 'Sorry we couldn\\'t authorise this request. It\\'s most likely that the link has expired.',\n appError: 'access_denied',\n appErrorExplanation: 'reset token has expired',\n });\n }\n this.isLoading = false;\n });\n },\n reload() {\n window.location.reload();\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/pages/ResetPassword/ResetPassword.js","import { mapState } from 'vuex';\nimport axios from 'axios';\n\nimport { redirectToApp, redirectToAppWithError } from '@/utils/appLoginHelper';\nimport { handleAPIError } from '@/utils/errorHelper';\nimport { smartFocus } from '@/utils/uiHelper';\n\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\nimport AppConsent from '@/components/sections/AppConsent/AppConsent.vue';\nimport GDPRConsent from '@/components/sections/GDPRConsent/GDPRConsent.vue';\nimport CompanyInfo from '@/components/sections/Login/CompanyInfo.vue';\nimport Loading from '@/components/widgets/Loading/Loading.vue';\n\n// @vue/component\nexport default {\n name: 'Login',\n components: {\n PageHeader,\n Loading,\n AppConsent,\n 'gdpr-consent': GDPRConsent,\n CompanyInfo,\n },\n data() {\n return {\n code: '',\n app: {},\n gdprSeen: false,\n companyInfo: undefined,\n\n state: 'normal',\n isLoading: true,\n };\n },\n created() {\n if (!this.$route.query.samlauth || !this.$route.query.iv) {\n this.$store.commit('showFatalError', {\n error: 'Login Failed',\n message: 'Invalid parameters',\n explanation: 'Missing required parameters. Please try again.',\n\n appError: 'server_error',\n appErrorExplanation: 'saml authentication failed, invalid parameters',\n });\n return;\n }\n this.postSAMLAuth();\n },\n computed: {\n ...mapState({\n afterLoginURL: (state) => {\n let baseURL = '';\n if (state.login.loginType === 'account') {\n baseURL = window.location.href.replace(/(\\/launchpad\\/saml\\/auth)\\/?/, '/');\n }\n return state.login.afterLoginURL || baseURL;\n },\n // eslint-disable-next-line\n title: (state) => state.site.siteInfo.displayOptions.showSiteNameOnLoginScreen ? state.site.siteInfo.name : 'Log in',\n loginType: (state) => state.login.loginType,\n loginState: (state) => state.login.loginState,\n appInfo: (state) => state.login.appInfo,\n inAppLogin: (state) => state.login.loginType === 'app',\n }),\n },\n methods: {\n postSAMLAuth() {\n const sa = this.$route.query.samlauth;\n const iv = this.$route.query.iv;\n const data = {\n samlauth: sa.replace(/ /g, '+'),\n iv: iv.replace(/ /g, '+'),\n SAMLAfterLoginURL: this.$route.query.SAMLAfterLoginURL,\n };\n\n let url = '/launchpad/v1/saml/auth.json';\n const appAuth = !!this.$route.query.appAuth;\n if (appAuth) {\n url += '?appAuth=true';\n data.redirect_uri = this.appInfo.redirect_uri;\n data.state = this.appInfo.state;\n data.client_id = this.appInfo.client_id;\n data.scope = this.appInfo.scope;\n data.install = this.appInfo.install;\n if (this.appInfo.nonce) data.nonce = this.appInfo.nonce;\n }\n\n if (this.gdprSeen) data.gdprSeen = true;\n\n axios.post(url, data).then((response) => {\n if (response.data.setupScreenRequired) {\n const { industryCategoryId, companySizeId } = response.data;\n\n this.companyInfo = {\n industryCategoryId: industryCategoryId || undefined,\n sizeId: companySizeId || undefined,\n };\n\n this.state = 'company-info';\n this.isLoading = false;\n\n return;\n }\n\n if (!response.data.gdprSeen) {\n this.state = 'gdpr-consent';\n this.gdprSeen = true;\n this.isLoading = false;\n return;\n }\n\n this.code = response.data.code;\n\n if (this.inAppLogin) {\n this.app = response.data.app;\n\n if (this.app.consentRequired === false) { // allow skipping screen for our own apps\n axios.post('/launchpad/v1/token/consent.json', { code: this.code }).then((res) => {\n redirectToApp(this.appInfo, res.data.code);\n }).catch(() => {\n redirectToAppWithError(this.appInfo, 'failed_to_consent', 'impossible to consent');\n });\n } else {\n this.state = 'app-consent';\n }\n\n this.isLoading = false;\n return;\n }\n\n this.$store.commit('setLoggedIn', {\n loggedIn: true,\n userId: response.data.userId,\n });\n\n if (window.opener &&\n this.$store.state.login.meta.hasLocalStorage &&\n sessionStorage.getItem('shouldCloseOpener') === 'true'\n ) {\n sessionStorage.setItem('shouldCloseOpener', 'false');\n window.close();\n }\n\n const location = response.data.redirectURL || this.afterLoginURL;\n window.location.href = location;\n }).catch((e) => {\n handleAPIError(\n this.$store, e,\n 'Sorry, something went wrong and we could not log you in.',\n );\n this.isLoading = false;\n\n smartFocus();\n });\n },\n reload() {\n window.location.reload();\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/pages/SAMLAuth/SAMLAuth.js","import axios from 'axios';\nimport { mapState } from 'vuex';\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\nimport Loading from '@/components/widgets/Loading/Loading.vue';\nimport AccountList from '@/components/widgets/AccountList/AccountList.vue';\nimport { smartFocus } from '@/utils/uiHelper';\nimport { buildQueryString } from '@/utils/urlHelper';\nimport { filterAccounts } from '@/utils/appLoginHelper';\n\n// @vue/component\nexport default {\n name: 'SelectAccount',\n components: {\n PageHeader,\n AccountList,\n Loading,\n },\n data() {\n return {\n accounts: [],\n gad: '',\n\n isLoading: false,\n };\n },\n created() {\n this.gad = this.$route.query.gad;\n\n if (!this.gad) {\n this.$store.commit('showFatalError', {\n error: 'Login Failed',\n explanation: 'Invalid parameters, Google token is missing.',\n appError: 'access_denied',\n appErrorExplanation: 'google sso failed, gad token missing',\n });\n return;\n }\n\n this.getGoogleAccounts();\n },\n computed: {\n ...mapState({\n appInfo: (state) => state.login.appInfo,\n loginType: (state) => state.login.loginType,\n meta: (state) => state.login.meta,\n afterLoginURL: (state) => state.login.afterLoginURL,\n // eslint-disable-next-line\n title: (state) => state.site.siteInfo.displayOptions.showSiteNameOnLoginScreen ? state.site.siteInfo.name : 'Log in',\n inAppLogin: (state) => state.login.loginType === 'app',\n }),\n canSubmit() {\n return this.email.length && this.password.length;\n },\n },\n methods: {\n getGoogleAccounts() {\n this.isLoading = true;\n\n const data = {\n gad: this.gad,\n };\n\n // For app login flow, we want to allow apps to hide some accounts,\n // for example if they are already authenticated.\n if (this.inAppLogin && this.meta.ignoreInstallations) {\n data.ignoreInstallations = this.meta.ignoreInstallations;\n }\n\n if (this.appInfo.redirect_uri) data.redirect_uri = this.appInfo.redirect_uri;\n if (this.appInfo.client_id) data.client_id = this.appInfo.client_id;\n if (this.appInfo.scope) data.scope = this.appInfo.scope;\n if (this.appInfo.install) data.install = this.appInfo.install;\n if (this.appInfo.nonce) data.nonce = this.appInfo.nonce;\n\n axios.post('/launchpad/v1/googleSSO/accounts.json', data)\n .then((response) => {\n // filter out accounts where provided product is disabled\n // note: we will do this on the backend after global data\n // for all products\n const accs = filterAccounts(response.data.accounts, this.meta.product);\n\n // If no accounts found, we redirect user to signup,\n // unless they're in app login flow\n if (accs.length === 0) {\n if (this.inAppLogin) {\n this.$store.commit('showFatalError', {\n error: 'Login Failed',\n // eslint-disable-next-line\n explanation: 'We did not find any Teamwork accounts associated with this Google account.',\n appError: 'access_denied',\n appErrorExplanation: 'google sso failed, no teamwork accounts found',\n });\n } else {\n window.location.href = 'https://www.teamwork.com/signup?from=launchpad_google';\n }\n return;\n }\n\n // If we only have one account, skip selection step\n if (accs.length === 1) {\n return this.onAccountSelected(accs[0]); // eslint-disable-line\n }\n\n this.accounts = accs;\n this.isLoading = false;\n smartFocus();\n }).catch(() => {\n this.$store.commit('showFatalError', {\n error: 'Login Failed',\n explanation: 'Failed to load your Teamwork accounts, please try again.',\n appError: 'access_denied',\n appErrorExplanation: 'google sso failed, failed to load teamwork accounts',\n });\n this.isLoading = false;\n smartFocus();\n });\n },\n onAccountSelected(account) {\n this.isLoading = true;\n const url = `${account.installation.url}launchpad/tokenauth`;\n const params = {\n code: account.token,\n };\n\n if (this.afterLoginURL) params.continue = this.afterLoginURL;\n if (this.appInfo.redirect_uri) params.redirect_uri = this.appInfo.redirect_uri;\n if (this.appInfo.state) params.state = this.appInfo.state;\n if (this.appInfo.client_id) params.client_id = this.appInfo.client_id;\n if (this.appInfo.scope) params.scope = this.appInfo.scope;\n if (this.appInfo.install) params.install = this.appInfo.install;\n if (this.appInfo.nonce) params.nonce = this.appInfo.nonce;\n\n if (this.meta.source) params.source = this.meta.source;\n if (this.meta.product) params.product = this.meta.product;\n if (this.meta.extra) params.extra = this.meta.extra;\n\n window.location.href = `${url}?${buildQueryString(params)}`;\n },\n reload() {\n window.location.reload();\n },\n filterAccounts(accounts) {\n let key = '';\n switch (this.meta.product) {\n case 'projects':\n key = 'projectsEnabled';\n break;\n case 'desk':\n key = 'deskEnabled';\n break;\n case 'chat':\n key = 'chatEnabled';\n break;\n default:\n return accounts;\n }\n return accounts.filter((acc) => acc.installation[key]);\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/pages/SelectAccount/SelectAccount.js","import { mapState } from 'vuex';\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\n\n// @vue/component\nexport default {\n name: 'Success',\n components: {\n PageHeader,\n },\n data() {\n return {\n code: '',\n };\n },\n created() {\n this.code = this.$route.query.code;\n },\n computed: {\n ...mapState({\n // eslint-disable-next-line\n title: (state) => state.site.siteInfo.displayOptions.showSiteNameOnLoginScreen ? state.site.siteInfo.name : 'Log in',\n }),\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/pages/Success/Success.js","import { mapState } from 'vuex';\nimport axios from 'axios';\n\n// @vue/component\nimport { redirectToApp, redirectToAppWithError } from '@/utils/appLoginHelper';\nimport { handleAPIError, ERROR_TYPE } from '@/utils/errorHelper';\nimport { smartFocus } from '@/utils/uiHelper';\nimport { fixProtocol } from '@/utils/urlHelper';\n\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\nimport AppConsent from '@/components/sections/AppConsent/AppConsent.vue';\nimport GDPRConsent from '@/components/sections/GDPRConsent/GDPRConsent.vue';\nimport CompanyInfo from '@/components/sections/Login/CompanyInfo.vue';\nimport Loading from '@/components/widgets/Loading/Loading.vue';\nimport PersonaCapture from '@/components/sections/PersonaCapture/PersonaCapture.vue';\n\nexport default {\n name: 'TokenAuth',\n components: {\n PageHeader,\n Loading,\n AppConsent,\n 'gdpr-consent': GDPRConsent,\n CompanyInfo,\n PersonaCapture,\n },\n data() {\n return {\n code: '',\n app: {},\n gdprSeen: false,\n companyInfo: undefined,\n onCompanyInfoSaved: undefined,\n onPersonaInfoSaved: undefined,\n\n state: 'normal',\n isLoading: true,\n };\n },\n created() {\n this.code = this.$route.query.code;\n\n if (this.inAppLogin) {\n this.getAppInfo();\n } else {\n // token login\n this.loginViaToken();\n }\n },\n computed: {\n ...mapState({\n afterLoginURL: (state) => {\n let baseURL = '';\n if (state.login.loginType === 'account') {\n baseURL = window.location.href.replace(/(\\/launchpad\\/tokenauth)\\/?/, '/');\n }\n return state.login.afterLoginURL || baseURL;\n },\n // eslint-disable-next-line\n title: (state) => state.site.siteInfo.displayOptions.showSiteNameOnLoginScreen ? state.site.siteInfo.name : 'Log in',\n loginType: (state) => state.login.loginType,\n loginState: (state) => state.login.loginState,\n appInfo: (state) => state.login.appInfo,\n inAppLogin: (state) => state.login.loginType === 'app',\n }),\n },\n methods: {\n getAppInfo() {\n this.isLoading = true;\n const payload = {\n ...this.appInfo,\n code: this.code,\n };\n\n axios.post('/launchpad/v1/apps/validate.json', payload).then((response) => {\n this.app = response.data.app;\n\n if (this.app.consentRequired === false) { // allow skipping screen for our own apps\n axios.post('/launchpad/v1/token/consent.json', { code: this.code }).then((res) => {\n redirectToApp(this.appInfo, res.data.code);\n }).catch(() => {\n redirectToAppWithError(this.appInfo, 'failed_to_consent', 'impossible to consent');\n });\n } else {\n this.state = 'app-consent';\n }\n\n this.isLoading = false;\n smartFocus();\n }).catch((e) => {\n handleAPIError(this.$store, e, 'Failed to log in.');\n this.isLoading = false;\n smartFocus();\n });\n },\n loginViaToken() {\n this.isLoading = true;\n\n axios.post('/launchpad/v1/token/consent.json', { code: this.code }).then((response) => {\n const data = {\n code: response.data.code,\n rememberMe: !!this.$route.query.rememberMe,\n };\n if (this.gdprSeen) data.gdprSeen = true;\n\n return axios.post('/launchpad/v1/token/login.json', data).then(async (res) => {\n if (!res.data.gdprSeen) {\n this.state = 'gdpr-consent';\n this.gdprSeen = true;\n this.isLoading = false;\n return;\n }\n\n if (res.data.setupScreenRequired) {\n const { industryCategoryId, companySizeId } = res.data;\n\n this.companyInfo = {\n industryCategoryId: industryCategoryId || undefined,\n sizeId: companySizeId || undefined,\n };\n\n const companyInfoSavedPromise = new Promise((resolve) => {\n this.onCompanyInfoSaved = resolve;\n });\n\n this.state = 'company-info';\n this.isLoading = false;\n\n await companyInfoSavedPromise;\n\n this.isLoading = true;\n this.state = 'normal';\n }\n\n if (res.data.userPersona !== undefined && !res.data.userPersona) {\n const personaInfoSavedPromise = new Promise((resolve) => {\n this.onPersonaInfoSaved = resolve;\n });\n this.state = 'persona-capture';\n this.$store.commit('setFormState', this.state);\n this.isLoading = false;\n\n await personaInfoSavedPromise;\n\n this.isLoading = true;\n this.state = 'normal';\n }\n\n this.$store.commit('setLoggedIn', {\n loggedIn: true,\n userId: res.data.userId,\n });\n\n if (window.opener &&\n this.$store.state.login.meta.hasLocalStorage &&\n sessionStorage.getItem('shouldCloseOpener') === 'true'\n ) {\n sessionStorage.setItem('shouldCloseOpener', 'false');\n window.close();\n }\n\n // eslint-disable-next-line\n window.location.href = this.afterLoginURL || window.location.href.replace(/(\\/launchpad\\/tokenauth)\\/?/, '/');\n });\n }).catch((e) => {\n const err = handleAPIError(this.$store, e, 'Failed to log in.');\n\n if (err && err.type === ERROR_TYPE.INSTALLATION_PROVISIONING) {\n this.$store.commit('showFatalError', {\n error: 'Please Wait',\n message: 'Your account is being set up, we\\'re just wrapping up a few bits...',\n explanation: 'This should only take a moment. ' +\n 'Once everything is set up, you will be logged in automatically. ' +\n 'If the installation is not active after 5 minutes, please contact support.',\n });\n\n // This would call 'loginViaToken' in 'created' because component appears again\n setTimeout(() => this.$store.commit('resetFatalError'), 3000);\n\n return;\n }\n\n if (err && err.type === ERROR_TYPE.INSTALLATION_VALIDATION_PENDING) {\n const isVerifyEmail = this.$route.query.continue && this.$route.query.continue.includes('verifyemail');\n\n if (isVerifyEmail) {\n window.location.href = fixProtocol(\n `${this.$route.query.continue}?auth=${e.response.data.unvalidatedAccountLoginCode}&email=${encodeURIComponent(this.email)}`,\n );\n } else {\n window.location.href = fixProtocol(\n `/launchpad/verifyemail/${\n this.$route.params.productCode ? this.$route.params.productCode : 'projects'\n }/firstsend?auth=${e.response.data.unvalidatedAccountLoginCode}&email=${encodeURIComponent(this.email)}`,\n );\n }\n }\n\n // most likely, the token has expired, show fatal anyway\n if (err && err.type === ERROR_TYPE.FORM_ERROR) {\n this.$store.commit('showFatalError', {\n error: 'Login Failed',\n message: 'Login token has expired, please try again.',\n appError: 'access_denied',\n appErrorExplanation: 'google sso access token expired',\n });\n }\n\n this.isLoading = false;\n });\n },\n reload() {\n window.location.reload();\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/pages/TokenAuth/TokenAuth.js","import { mapState } from 'vuex';\n\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\nimport Loading from '@/components/widgets/Loading/Loading.vue';\nimport ProductList from '@/components/widgets/ProductList.vue';\n\n// @vue/component\nexport default {\n name: 'Welcome',\n components: {\n PageHeader,\n Loading,\n ProductList,\n },\n data() {\n return {\n utm_content: '',\n };\n },\n mounted() {\n if (this.$route.query.utm_content) this.utm_content = this.$route.query.utm_content;\n this.$nextTick(() => {\n if (this.products.length === 1) {\n window.location.href = (this.loggedIn ? '/' : '/launchpad/login/') + this.products[0].code;\n }\n });\n },\n computed: {\n ...mapState({\n loggedIn: (state) => state.login.loggedIn,\n siteInfo: (state) => state.site.siteInfo,\n productInfo: (state) => state.site.productInfo,\n }),\n title() {\n if (this.siteInfo.displayOptions.showSiteNameOnLoginScreen) {\n return `Welcome to ${this.siteInfo.name}`;\n }\n return 'Welcome';\n },\n subtitle() {\n return 'Select the app you want to start with.
Use them together for greater team productivity.';\n },\n products() {\n return this.productInfo\n .filter((v) => this.siteInfo.apps[v.code])\n .map((v) => ({\n ...v,\n\n url: (this.loggedIn ? '/' : '/launchpad/login/') + (v.code === 'projects' ? 'app' : v.code) + (this.utm_content ? `/?utm_content=${this.utm_content}` : ''),\n }));\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/pages/Welcome/Welcome.js","import axios from 'axios';\nimport { mapState } from 'vuex';\nimport { redirectToApp, redirectToAppWithError } from '@/utils/appLoginHelper';\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\n\nimport iconProjects from '@/assets/images/product-icon-projects.svg';\nimport iconChat from '@/assets/images/product-icon-chat.svg';\nimport iconDesk from '@/assets/images/product-icon-desk.svg';\nimport iconCRM from '@/assets/images/product-icon-crm.svg';\nimport iconSpaces from '@/assets/images/product-icon-spaces.svg';\n\nconst icons = {\n projects: iconProjects,\n chat: iconChat,\n desk: iconDesk,\n crm: iconCRM,\n spaces: iconSpaces,\n};\n\n// @vue/component\nexport default {\n name: 'AppConsent',\n components: {\n PageHeader,\n },\n props: {\n code: {\n type: String,\n required: true,\n },\n app: {\n type: Object,\n default() {\n return {\n id: 0,\n ownerId: 0,\n code: '',\n clientId: '',\n scope: [],\n name: '',\n logo: '',\n url: '',\n dateCreated: null,\n dateUpdated: null,\n isValidated: true,\n description: '',\n publisher: { // could be null\n name: '',\n url: '',\n privacyUrl: '',\n termsUrl: '',\n logoUrl: '',\n },\n };\n },\n },\n },\n computed: {\n ...mapState({\n appInfo: (state) => state.login.appInfo,\n selectedAccount: (state) => state.login.selectedAccount,\n }),\n requestedScope() {\n if (this.appInfo.scope.length) {\n // openid is a scope, but not an app scope, so we filter it out if it's in the list\n return this.appInfo.scope.filter((scope) => scope.toLowerCase() !== 'openid');\n }\n // default to full app scope if none requested\n if (this.app.scope.length) {\n return this.app.scope;\n }\n return [];\n },\n showAppDetails() {\n return this.app.clientId; // we know it's a devportal app with a name\n },\n appIsLocal() {\n return (this.app.name !== 'localhost' && this.app.name !== '127.0.0.1');\n },\n logoUrl() {\n if (this.app.logo) return this.app.logo;\n if (this.app.publisher && this.app.publisher.logoUrl) return this.app.publisher.logoUrl;\n return '';\n },\n },\n methods: {\n onAllow() {\n const url = `${this.selectedAccount.installation.apiEndPoint || '/'}launchpad/v1/token/consent.json`;\n axios.post(url, { code: this.code }).then((response) => {\n redirectToApp(this.appInfo, response.data.code);\n }).catch(() => {\n redirectToAppWithError(this.appInfo, 'failed_to_consent', 'impossible to consent');\n });\n },\n onDeny() {\n redirectToAppWithError(this.appInfo, 'access_denied', 'user did not consent');\n },\n getAppName(productCode) {\n switch (productCode) { // eslint-disable-line\n case 'projects':\n return 'Teamwork';\n case 'desk':\n return 'Teamwork Desk';\n case 'chat':\n return 'Teamwork Chat';\n case 'crm':\n return 'Teamwork CRM';\n case 'spaces':\n return 'Teamwork Spaces';\n }\n return productCode;\n },\n getAppIcon(code) {\n if (!icons[code]) return '';\n return icons[code];\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/sections/AppConsent/AppConsent.js","import { mapState } from 'vuex';\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\nimport { redirectToAppWithError } from '@/utils/appLoginHelper';\n\n// @vue/component\nexport default {\n name: 'ErrorMessage',\n components: {\n PageHeader,\n },\n computed: {\n ...mapState({\n error: (state) => state.login.fatalError.error,\n message: (state) => state.login.fatalError.message,\n explanation: (state) => state.login.fatalError.explanation,\n\n inAppLogin: (state) => state.login.loginType === 'app',\n appInfo: (state) => state.login.appInfo,\n appError: (state) => state.login.fatalError.appError,\n appErrorExplanation: (state) => state.login.fatalError.appErrorExplanation,\n }),\n explanationHTML() {\n return this.explanation.replace(/>/g, '>').replace(/');\n },\n },\n methods: {\n onClickBackToApp() {\n redirectToAppWithError(this.appInfo, this.appError, this.appErrorExplanation);\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/sections/ErrorMessage/ErrorMessage.js","import PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\n\n// @vue/component\nexport default {\n name: 'GDPRConsent',\n components: {\n PageHeader,\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/sections/GDPRConsent/GDPRConsent.js","import Vue from 'vue';\nimport axios from 'axios';\nimport { mapGetters } from 'vuex';\nimport { handleAPIError, ERROR_TYPE } from '@/utils/errorHelper';\nimport { smartFocus } from '@/utils/uiHelper';\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\nimport Loading from '@/components/widgets/Loading/Loading.vue';\n\n// @vue/component\nexport default {\n name: 'SAMLForm',\n components: {\n PageHeader,\n Loading,\n },\n data() {\n return {\n email: '',\n\n formError: '',\n isLoading: false,\n };\n },\n computed: {\n ...mapGetters({\n samlURL: 'samlURL',\n }),\n canSubmit() {\n return this.email.length > 0;\n },\n },\n methods: {\n onSubmit() {\n if (!this.canSubmit) return;\n\n this.formError = '';\n this.isLoading = true;\n\n axios.get(`/launchpad/saml/account.json?userEmail=${this.email}`).then((response) => {\n this.$store.commit('setSAMLBaseURL', response.data.baseHref);\n Vue.nextTick(() => {\n window.location.href = this.samlURL;\n });\n }).catch((e) => {\n const err = handleAPIError(\n this.$store, e,\n 'No associated accounts found, please double-check your email address.',\n );\n if (err && err.type === ERROR_TYPE.FORM_ERROR) this.formError = err.err;\n this.isLoading = false;\n smartFocus();\n });\n },\n reload() {\n window.location.reload();\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/sections/Login/SAMLForm/SAMLForm.js","import { mapGetters, mapState } from 'vuex';\nimport { navigateExternalURL } from '@/utils/urlHelper';\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\nimport Loading from '@/components/widgets/Loading/Loading.vue';\n\n// @vue/component\nexport default {\n name: 'SAMLForm',\n components: {\n PageHeader,\n Loading,\n },\n data() {\n return {\n email: '',\n\n formError: '',\n isLoading: false,\n };\n },\n computed: {\n ...mapState({\n // eslint-disable-next-line\n title: (state) => state.site.siteInfo.displayOptions.showSiteNameOnLoginScreen ? state.site.siteInfo.name : 'Log in',\n isIframe: (state) => state.login.meta.isIframe,\n }),\n ...mapGetters({\n samlURL: 'samlURL',\n allowStandardLogin: 'allowStandardLogin',\n }),\n },\n mounted() {\n if (this.isIframe) {\n window.parent.postMessage('pageResized', '*');\n }\n },\n methods: {\n onSubmit() {\n if (this.isLoading) return false;\n this.isLoading = true;\n return navigateExternalURL(this.samlURL, this.isIframe);\n },\n reload() {\n window.location.reload();\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/sections/Login/SAMLStarter/SAMLStarter.js","import axios from 'axios';\nimport { mapGetters, mapState } from 'vuex';\nimport { handleAPIError, ERROR_TYPE } from '@/utils/errorHelper';\nimport { redirectToApp, redirectToAppWithError, filterAccounts } from '@/utils/appLoginHelper';\nimport { fixProtocol, navigateExternalURL, buildQueryString } from '@/utils/urlHelper';\nimport { smartFocus } from '@/utils/uiHelper';\nimport GDPRConsent from '@/components/sections/GDPRConsent/GDPRConsent.vue';\nimport AppConsent from '@/components/sections/AppConsent/AppConsent.vue';\nimport AccountList from '@/components/widgets/AccountList/AccountList.vue';\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\nimport CompanyInfo from '@/components/sections/Login/CompanyInfo.vue';\nimport Loading from '@/components/widgets/Loading/Loading.vue';\nimport TfaSetup from '@/components/sections/Login/TfaSetup.vue';\nimport PasswordInput from '@/components/PasswordInput.vue';\nimport PersonaCapture from '@/components/sections/PersonaCapture/PersonaCapture.vue';\n\n// @vue/component\nexport default {\n name: 'Login',\n components: {\n 'gdpr-consent': GDPRConsent,\n AppConsent,\n CompanyInfo,\n AccountList,\n PageHeader,\n Loading,\n TfaSetup,\n PasswordInput,\n PersonaCapture,\n },\n data() {\n return {\n rememberMe: false,\n twoFactorPasscode: '',\n gdprSeen: false,\n companyInfo: undefined,\n\n passwordEncrypted: false, // for legacy form support\n\n code: '',\n accounts: [],\n selectedAccount: '',\n\n state: 'normal',\n formError: '',\n isLoading: false,\n\n email: undefined,\n password: undefined,\n forced: false,\n };\n },\n created() {\n // Get query params submitted via legacy forms\n if (this.$route.query.email) this.email = this.$route.query.email;\n if (this.$route.query.password) this.password = this.$route.query.password;\n if (this.$route.query.automaticSubmit) this.automaticSubmit = true;\n if (this.$route.query.product) this.product = this.$route.query.product;\n this.passwordEncrypted = !!this.$route.query.encrypted;\n\n // hide legacy params\n const newParams = Object.assign({}, this.$route.query);\n delete newParams.email;\n delete newParams.password;\n delete newParams.automaticSubmit;\n delete newParams.encrypted;\n delete newParams.product;\n this.$router.replace({ query: newParams });\n\n if (this.automaticSubmit) {\n this.$nextTick(function () { // eslint-disable-line func-names\n this.onSubmit();\n });\n }\n },\n mounted() {\n window.parent.postMessage('pageResized', '*');\n if (this.loggedIn) this.continueToProduct();\n smartFocus();\n },\n computed: {\n ...mapGetters({\n samlURL: 'samlURL',\n googleSSOURL: 'googleSSOURL',\n allowStandardLogin: 'allowStandardLogin',\n }),\n ...mapState({\n loginType: (state) => state.login.loginType,\n appInfo: (state) => state.login.appInfo,\n meta: (state) => state.login.meta,\n loggedIn: (state) => state.login.loggedIn,\n ignoreInstallations: (state) => state.login.meta.ignoreInstallations,\n /* eslint-disable */\n afterLoginURL: (state) => {\n const baseURL = state.login.loginType === 'account' ? window.location.href.replace(/(\\/launchpad\\/login)\\/?/, '/') : '';\n return state.login.afterLoginURL || baseURL;\n },\n showRememberMe: (state) => state.site.siteInfo.displayOptions.allowRememberMe || state.login.loginType === 'generic',\n showGoogleSSO: (state) => state.site.siteInfo.integrations.googleSignIn.enabled || state.login.loginType !== 'account',\n showSAML: (state) => state.site.siteInfo.sso.enabled || state.login.loginType !== 'account',\n startText: (state) => state.site.siteInfo.displayOptions.startText || '',\n title: (state) => state.site.siteInfo.displayOptions.showSiteNameOnLoginScreen ? state.site.siteInfo.name : 'Log in',\n isEnterprise: (state) => state.site.siteInfo.isEnterprise,\n inAppLogin: (state) => state.login.loginType === 'app',\n isValidationPending: (state) => state.site.siteInfo.installationState === 'validation-pending',\n /* eslint-enable */\n }),\n forgotPasswordLink() {\n let url = '/forgotpassword';\n if (this.$route.params.productCode) url += `/${this.$route.params.productCode}`;\n return url;\n },\n },\n methods: {\n onSubmit() {\n this.isLoading = true;\n this.formError = '';\n\n const data = {\n email: this.email,\n password: this.password,\n rememberMe: this.rememberMe,\n product: this.product,\n };\n\n // For app login flow, we want to allow apps to hide some accounts,\n // for example if they are already authenticated.\n if (this.inAppLogin && this.ignoreInstallations) {\n data.ignoreInstallations = this.ignoreInstallations;\n }\n\n if (this.gdprSeen) data.gdprSeen = true;\n if (this.inAppLogin) {\n data.redirect_uri = this.appInfo.redirect_uri;\n data.state = this.appInfo.state;\n data.client_id = this.appInfo.client_id;\n data.scope = this.appInfo.scope;\n data.install = this.appInfo.install;\n data.nonce = this.appInfo.nonce;\n }\n if (this.passwordEncrypted) data.passwordEncrypted = true;\n\n if (this.loginType === 'account') {\n this.submitLogin('', data);\n } else if (this.selectedAccount) {\n this.onAccountSelected(this.selectedAccount);\n } else if (this.password === 'xxx' && this.email.indexOf('@') === -1) {\n // logging in via API old key on generic login\n this.submitLogin('', data);\n } else if (this.loginType === 'app' && !this.meta.generic) {\n this.submitLogin('', data);\n } else {\n this.submitGetAccounts(data);\n }\n },\n initSAML() {\n if (this.loginType === 'account') {\n navigateExternalURL(this.samlURL, this.$store.state.login.meta.isIframe);\n } else {\n this.$store.commit('setLoginState', 'saml-email');\n }\n },\n submitLogin(baseURL, data) {\n let url = `${baseURL}/launchpad/v1/login.json`;\n if (this.loginType !== 'account') url += '?appAuth=true';\n\n /* eslint-disable */\n if (this.twoFactorPasscode) data.twoFactorPasscode = this.twoFactorPasscode;\n if (this.gdprSeen) data.gdprSeen = this.gdprSeen;\n if (this.inAppLogin) {\n data.redirect_uri = this.appInfo.redirect_uri;\n data.state = this.appInfo.state;\n data.client_id = this.appInfo.client_id;\n data.scope = this.appInfo.scope;\n data.install = this.appInfo.install;\n data.nonce = this.appInfo.nonce;\n }\n /* eslint-enable */\n const loginTypeTemp = this.loginType;\n\n axios.post(url, data).then((response) => {\n this.code = response.data.code;\n\n if (response.data.setupScreenRequired) {\n const { industryCategoryId, companySizeId } = response.data;\n\n this.companyInfo = {\n industryCategoryId: industryCategoryId || undefined,\n sizeId: companySizeId || undefined,\n };\n\n this.state = 'company-info';\n this.isLoading = false;\n\n return;\n }\n\n if (!response.data.gdprSeen) {\n this.state = 'gdpr-consent';\n this.gdprSeen = true;\n this.isLoading = false;\n return;\n }\n\n if (response.data.userPersona !== undefined && !response.data.userPersona && loginTypeTemp !== 'generic') {\n this.state = 'persona-capture';\n this.$store.commit('setFormState', this.state);\n this.isLoading = false;\n return;\n }\n\n switch (this.loginType) { // eslint-disable-line\n case 'app':\n this.app = response.data.app;\n if (this.app.consentRequired === false) { // allow skipping screen for our own apps\n this.state = 'app-success';\n axios.post(`${baseURL}/launchpad/v1/token/consent.json`, { code: this.code }).then((resp) => {\n redirectToApp(this.appInfo, resp.data.code);\n }).catch(() => {\n redirectToAppWithError(this.appInfo, 'failed_to_consent', 'impossible to consent');\n });\n } else {\n this.state = 'app-consent';\n }\n this.isLoading = false;\n return;\n case 'generic': // eslint-disable-line\n // baseURL in this case is account URL without trailing slash\n let continueURL = '';\n if (this.$route.params.productCode) continueURL += `${baseURL}/${this.$route.params.productCode}`;\n\n const params = {\n code: this.code,\n continue: this.afterLoginURL || data.continue || continueURL,\n };\n\n window.location.href = fixProtocol(`${baseURL}/launchpad/tokenauth?${buildQueryString(params)}`);\n return;\n }\n\n this.$store.commit('setLoggedIn', {\n loggedIn: true,\n userId: response.data.userId,\n });\n\n // eslint-disable-next-line\n const continueURL = this.afterLoginURL || data.continue || window.location.href.replace(/(\\/launchpad\\/login)\\/?/, '/');\n window.location.href = continueURL;\n }).catch((e) => {\n const err = handleAPIError(\n this.$store, e,\n 'Please make sure you have the correct email or password.',\n );\n\n if (err && err.type === ERROR_TYPE.FORM_ERROR) this.formError = err.err;\n if (err && err.type === ERROR_TYPE.TFA_REQUIRED) this.state = '2fa';\n if (err && err.type === ERROR_TYPE.TFA_SETUP_REQUIRED) {\n this.state = '2fa-setup';\n this.forced = true;\n }\n if (err && err.type === ERROR_TYPE.INSTALLATION_VALIDATION_PENDING) {\n const isVerifyEmail = this.$route.query.continue && this.$route.query.continue.includes('verifyemail');\n\n if (isVerifyEmail) {\n window.location.href = fixProtocol(\n `${baseURL}${this.$route.query.continue}?auth=${e.response.data.unvalidatedAccountLoginCode}&email=${encodeURIComponent(this.email)}`,\n );\n } else {\n window.location.href = fixProtocol(\n `${baseURL}/launchpad/verifyemail/${\n this.$route.params.productCode ? this.$route.params.productCode : 'projects'\n }/firstsend?auth=${e.response.data.unvalidatedAccountLoginCode}&email=${encodeURIComponent(this.email)}`,\n );\n }\n }\n\n this.isLoading = false;\n this.passwordEncrypted = false;\n if (this.state === 'select-account') this.state = 'normal';\n smartFocus();\n });\n },\n submitGetAccounts(data) {\n this.$store.dispatch('getWafToken')\n .then((token) => {\n const headers = { 'Launchpad-Version': process.env.VERSION };\n if (token !== null) headers['x-aws-waf-token'] = token;\n return axios.post('/launchpad/v1/accounts.json?generic=true', data, { headers });\n })\n .then((response) => {\n // filter out accounts where provided product is disabled\n // note: we will do this on the backend after global data\n // for all products\n const accs = filterAccounts(response.data.accounts, this.meta.product);\n\n // If no accounts found, we either have wrong details or ignoring all accounts\n if (accs.length === 0) {\n this.formError = 'Please make sure you have the correct email or password.';\n if (response.data.ignoredAccounts === data.ignoreInstallations) {\n this.formError = 'You have already authenticated with all available Teamwork accounts.';\n }\n this.isLoading = false;\n smartFocus();\n return;\n }\n\n // If we only have one account, skip selection step\n if (accs.length === 1) {\n this.onAccountSelected(accs[0]);\n return;\n }\n\n this.accounts = accs;\n this.state = 'select-account';\n this.isLoading = false;\n smartFocus();\n }).catch((e) => {\n const err = handleAPIError(\n this.$store, e,\n 'Please make sure you have the correct email or password.',\n );\n if (err.type === ERROR_TYPE.FORM_ERROR) this.formError = err.err;\n this.isLoading = false;\n smartFocus();\n });\n },\n onAccountSelected(account) {\n let url = account.installation.apiEndPoint;\n // eslint-disable-next-line\n if (process.env.NODE_ENV === 'development' || window.location.href.indexOf('sunbeam.teamwork.localhost') > -1) {\n url = account.installation.url.replace('https://', 'http://');\n }\n\n // remove trailing slash\n if (url[url.length - 1] === '/') url = url.substr(0, url.length - 1);\n\n this.selectedAccount = account;\n this.$store.commit('setSelectedAccount', account);\n\n this.submitLogin(url, {\n email: this.email,\n password: this.password,\n rememberMe: this.rememberMe,\n });\n },\n onClickGoogleSSO(e) {\n this.isLoading = true;\n const isIframe = this.$store.state.login.meta.isIframe;\n if (isIframe) e.preventDefault();\n navigateExternalURL(this.googleSSOURL, isIframe);\n },\n reset() {\n this.formError = '';\n this.state = 'normal';\n this.twoFactorPasscode = '';\n this.selectedAccount = null;\n this.isLoading = false;\n smartFocus();\n },\n continueToProduct() {\n // eslint-disable-next-line\n if (this.loginType !== 'account' || !this.loggedIn || !this.$route.params.productCode || this.isValidationPending) return;\n this.isLoading = true;\n window.location.href = this.afterLoginURL;\n },\n },\n watch: {\n isLoading() {\n window.parent.postMessage('pageResized', '*');\n },\n loggedIn(loggedIn) {\n if (loggedIn) this.continueToProduct();\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/sections/Login/StandardForm/StandardForm.js","import { mapState } from 'vuex';\nimport PageHeader from '@/components/widgets/PageHeader/PageHeader.vue';\nimport { redirectToAppWithError } from '@/utils/appLoginHelper';\n\n// @vue/component\nexport default {\n name: 'SiteNotFound',\n components: {\n PageHeader,\n },\n data() {\n return {\n siteAddress: window.location.hostname,\n };\n },\n computed: {\n ...mapState({\n inAppLogin: (state) => state.login.loginType === 'app',\n appInfo: (state) => state.login.appInfo,\n }),\n },\n methods: {\n onClickBackToApp() {\n redirectToAppWithError(\n this.appInfo,\n 'server_error',\n 'users installation could not be found',\n );\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/sections/SiteNotFound/SiteNotFound.js","// @vue/component\nexport default {\n name: 'AccountList',\n props: {\n accounts: {\n type: Array,\n default: () => [],\n },\n },\n methods: {\n onSelectAccount(account) {\n this.$emit('account-selected', account);\n },\n getBackgroundImage(account) {\n return account.installation.logo ? `url('${account.installation.logo}')` : '';\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/widgets/AccountList/AccountList.js","import { mapState } from 'vuex';\nimport { redirectToAppWithError } from '@/utils/appLoginHelper';\n\n// @vue/component\nexport default {\n name: 'Loading',\n props: {\n isLoading: {\n type: Boolean,\n required: true,\n },\n },\n data() {\n return {\n showTryAgain: false,\n tryAgainTimeout: null,\n };\n },\n created() {\n this.setupTryAgain(this.isLoading);\n },\n watch: {\n isLoading(newVal) {\n this.setupTryAgain(newVal);\n },\n },\n methods: {\n setupTryAgain(isLoading) {\n if (isLoading) {\n this.tryAgainTimeout = setTimeout(() => {\n this.showTryAgain = true;\n }, 8000);\n } else {\n clearTimeout(this.tryAgainTimeout);\n }\n },\n onCancel() {\n if (!this.inAppLogin) return false;\n return redirectToAppWithError(this.appInfo, 'access_denied', 'user cancelled the login process');\n },\n },\n computed: {\n ...mapState({\n appInfo: (state) => state.login.appInfo,\n inAppLogin: (state) => state.login.loginType === 'app',\n }),\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/widgets/Loading/Loading.js","// @vue/component\nexport default {\n name: 'PageHeader',\n props: {\n title: {\n type: String,\n default: 'Log in',\n },\n subTitle: {\n type: String,\n default: '',\n },\n error: {\n type: String,\n default: '',\n },\n hideable: { // can be hidden by `hide-title` extra property\n type: Boolean,\n default: true,\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/components/widgets/PageHeader/PageHeader.js","module.exports = __webpack_public_path__ + \"static/img/client-persona.cfaa813.png\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/client-persona.png\n// module id = 552\n// module chunks = 1","module.exports = __webpack_public_path__ + \"static/img/contributor-persona.a9ff0be.png\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/contributor-persona.png\n// module id = 553\n// module chunks = 1","module.exports = __webpack_public_path__ + \"static/img/email-expired.7e71ad6.png\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/email-expired.png\n// module id = 554\n// module chunks = 1","module.exports = __webpack_public_path__ + \"static/img/email-send.1977181.png\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/email-send.png\n// module id = 555\n// module chunks = 1","module.exports = __webpack_public_path__ + \"static/img/email-verified.22eff19.png\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/email-verified.png\n// module id = 556\n// module chunks = 1","module.exports = \"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjBweCIgaGVpZ2h0PSIyMHB4IiB2aWV3Qm94PSIwIDAgMjAgMjAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDUwLjIgKDU1MDQ3KSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5Hcm91cCAyPC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+PC9kZWZzPgogICAgPGcgaWQ9Ik5hdGl2ZS1TaWduLWluLWlPUyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9ImlwaG9uZVgvY2hvb3NlX3NpdGUvZGVmYXVsdC8iIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0zMzAuMDAwMDAwLCAtMjUzLjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0iR3JvdXAtNS1Db3B5LTE3IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjAwMDAwMCwgMjIwLjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg4LjAwMDAwMCwgMTYuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwLTIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMyMi4wMDAwMDAsIDE3LjAwMDAwMCkiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZyBpZD0iR3JvdXAtNCIgZmlsbD0iIzUxOUZGOCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNC40NDQyMDg3LDE5Ljk5ODkzOTEgQzEuOTg4NzgzMzksMTkuOTk4OTM5MSAwLDE4LjAwOTA0NDcgMCwxNS41NTQ3MzA0IEwwLDQuNDQ0MjA4NyBDMCwxLjk4OTg5NDQ0IDEuOTg4NzgzMzksMCA0LjQ0NDIwODcsMCBMMTUuNTU0NzMwNCwwIEMxOC4wMDkwNDQ3LDAgMTkuOTk4OTM5MSwxLjk4OTg5NDQ0IDE5Ljk5ODkzOTEsNC40NDQyMDg3IEwxOS45OTg5MzkxLDE1LjU1NDczMDQgQzE5Ljk5ODkzOTEsMTguMDA5MDQ0NyAxOC4wMDkwNDQ3LDE5Ljk5ODkzOTEgMTUuNTU0NzMwNCwxOS45OTg5MzkxIEw0LjQ0NDIwODcsMTkuOTk4OTM5MSBaIiBpZD0iRmlsbC0yIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwLTIxIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzLjAwMDAwMCwgMy4wMDAwMDApIiBmaWxsPSIjRkZGRkZGIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik01LjYzMjcxMjU4LDEuMTI2NTQyNTIgQzUuNjMyNzEyNTgsMC41MDQ2OTEwNDcgNi4xMzYyNzcwOSwwIDYuNzU5MjU1MSwwIEM3LjM4MjIzMzExLDAgNy44ODU3OTc2MSwwLjUwNDY5MTA0NyA3Ljg4NTc5NzYxLDEuMTI2NTQyNTIgQzcuODg1Nzk3NjEsMS43NDgzOTM5OSA3LjM4MjIzMzExLDIuMjUzMDg1MDMgNi43NTkyNTUxLDIuMjUzMDg1MDMgQzYuMTM2Mjc3MDksMi4yNTMwODUwMyA1LjYzMjcxMjU4LDEuNzQ4MzkzOTkgNS42MzI3MTI1OCwxLjEyNjU0MjUyIiBpZD0iRmlsbC01Ij48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNS42MzI3MTI1OCwxMi4zOTE5Njc3IEM1LjYzMjcxMjU4LDExLjc3MDExNjIgNi4xMzYyNzcwOSwxMS4yNjU0MjUyIDYuNzU5MjU1MSwxMS4yNjU0MjUyIEM3LjM4MjIzMzExLDExLjI2NTQyNTIgNy44ODU3OTc2MSwxMS43NzAxMTYyIDcuODg1Nzk3NjEsMTIuMzkxOTY3NyBDNy44ODU3OTc2MSwxMy4wMTM4MTkxIDcuMzgyMjMzMTEsMTMuNTE4NTEwMiA2Ljc1OTI1NTEsMTMuNTE4NTEwMiBDNi4xMzYyNzcwOSwxMy41MTg1MTAyIDUuNjMyNzEyNTgsMTMuMDEzODE5MSA1LjYzMjcxMjU4LDEyLjM5MTk2NzciIGlkPSJGaWxsLTciPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xMi4zOTE5Njc3LDUuNjMyNzEyNTggQzEzLjAxNDk0NTcsNS42MzI3MTI1OCAxMy41MTg1MTAyLDYuMTM3NDAzNjMgMTMuNTE4NTEwMiw2Ljc1OTI1NTEgQzEzLjUxODUxMDIsNy4zODExMDY1NyAxMy4wMTQ5NDU3LDcuODg1Nzk3NjEgMTIuMzkxOTY3Nyw3Ljg4NTc5NzYxIEMxMS43Njg5ODk3LDcuODg1Nzk3NjEgMTEuMjY1NDI1Miw3LjM4MTEwNjU3IDExLjI2NTQyNTIsNi43NTkyNTUxIEMxMS4yNjU0MjUyLDYuMTM3NDAzNjMgMTEuNzY4OTg5Nyw1LjYzMjcxMjU4IDEyLjM5MTk2NzcsNS42MzI3MTI1OCIgaWQ9IkZpbGwtOSI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTEuMTI2NTQyNTIsNS42MzI3MTI1OCBDMS43NDk1MjA1Myw1LjYzMjcxMjU4IDIuMjUzMDg1MDMsNi4xMzc0MDM2MyAyLjI1MzA4NTAzLDYuNzU5MjU1MSBDMi4yNTMwODUwMyw3LjM4MTEwNjU3IDEuNzQ5NTIwNTMsNy44ODU3OTc2MSAxLjEyNjU0MjUyLDcuODg1Nzk3NjEgQzAuNTAzNTY0NTA1LDcuODg1Nzk3NjEgMCw3LjM4MTEwNjU3IDAsNi43NTkyNTUxIEMwLDYuMTM3NDAzNjMgMC41MDM1NjQ1MDUsNS42MzI3MTI1OCAxLjEyNjU0MjUyLDUuNjMyNzEyNTgiIGlkPSJGaWxsLTExIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTEuNTM4MjczOCw5Ljk0NTc5MzI2IEMxMS45Nzg3NTE5LDEwLjM4NTE0NDggMTEuOTc4NzUxOSwxMS4wOTgyNDYzIDExLjUzODI3MzgsMTEuNTM4NzI0NCBDMTEuMDk4OTIyMiwxMS45NzkyMDI1IDEwLjM4NTgyMDgsMTEuOTc5MjAyNSA5Ljk0NTM0MjY0LDExLjUzODcyNDQgQzkuNTA0ODY0NTIsMTEuMDk4MjQ2MyA5LjUwNDg2NDUyLDEwLjM4NTE0NDggOS45NDUzNDI2NCw5Ljk0NTc5MzI2IEMxMC4zODU4MjA4LDkuNTA1MzE1MTMgMTEuMDk4OTIyMiw5LjUwNTMxNTEzIDExLjUzODI3MzgsOS45NDU3OTMyNiIgaWQ9IkZpbGwtMTMiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0zLjU3MzI4MDIxLDEuOTc5NjczMTYgQzQuMDEzNzU4MzMsMi40MjAxNTEyOSA0LjAxMzc1ODMzLDMuMTMzMjUyNyAzLjU3MzI4MDIxLDMuNTcyNjA0MjggQzMuMTMyODAyMDgsNC4wMTMwODI0MSAyLjQxOTcwMDY3LDQuMDEzMDgyNDEgMS45ODAzNDkwOSwzLjU3MjYwNDI4IEMxLjUzOTg3MDk3LDMuMTMzMjUyNyAxLjUzOTg3MDk3LDIuNDIwMTUxMjkgMS45ODAzNDkwOSwxLjk3OTY3MzE2IEMyLjQxOTcwMDY3LDEuNTM5MTk1MDQgMy4xMzI4MDIwOCwxLjUzOTE5NTA0IDMuNTczMjgwMjEsMS45Nzk2NzMxNiIgaWQ9IkZpbGwtMTUiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik05Ljk0NTIyOTk5LDEuOTc5NjczMTYgQzEwLjM4NTcwODEsMS41MzkxOTUwNCAxMS4wOTg4MDk1LDEuNTM5MTk1MDQgMTEuNTM4MTYxMSwxLjk3OTY3MzE2IEMxMS45Nzg2MzkyLDIuNDIwMTUxMjkgMTEuOTc4NjM5MiwzLjEzMzI1MjcgMTEuNTM4MTYxMSwzLjU3MjYwNDI4IEMxMS4wOTg4MDk1LDQuMDEzMDgyNDEgMTAuMzg1NzA4MSw0LjAxMzA4MjQxIDkuOTQ1MjI5OTksMy41NzI2MDQyOCBDOS41MDQ3NTE4NiwzLjEzMzI1MjcgOS41MDQ3NTE4NiwyLjQyMDE1MTI5IDkuOTQ1MjI5OTksMS45Nzk2NzMxNiIgaWQ9IkZpbGwtMTciPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0xLjk4MDIzNjQzLDkuOTQ1NzkzMjYgQzIuNDE5NTg4MDIsOS41MDUzMTUxMyAzLjEzMjY4OTQzLDkuNTA1MzE1MTMgMy41NzMxNjc1NSw5Ljk0NTc5MzI2IEM0LjAxMzY0NTY4LDEwLjM4NTE0NDggNC4wMTM2NDU2OCwxMS4wOTgyNDYzIDMuNTczMTY3NTUsMTEuNTM4NzI0NCBDMy4xMzI2ODk0MywxMS45NzkyMDI1IDIuNDE5NTg4MDIsMTEuOTc5MjAyNSAxLjk4MDIzNjQzLDExLjUzODcyNDQgQzEuNTM5NzU4MzEsMTEuMDk4MjQ2MyAxLjUzOTc1ODMxLDEwLjM4NTE0NDggMS45ODAyMzY0Myw5Ljk0NTc5MzI2IiBpZD0iRmlsbC0xOSI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/eu-flatflag-mini.svg\n// module id = 557\n// module chunks = 1","module.exports = \"data:image/png;base64,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\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/google-logo-mini.png\n// module id = 558\n// module chunks = 1","module.exports = \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yMC44MDAzIDYuMjQwNTNDMjEuMDgxNyA2LjU0NDUxIDIxLjA2MzQgNy4wMTkwMyAyMC43NTk0IDcuMzAwNEw5LjQxNTcyIDE3LjgwMDNDOS4xMjgyIDE4LjA2NjYgOC42ODQyOSAxOC4wNjY2IDguMzk2NzggMTcuODAwM0wzLjI0MDUzIDEzLjAyNzdDMi45MzY1NiAxMi43NDYzIDIuOTE4MjMgMTIuMjcxOCAzLjE5OTYgMTEuOTY3OEMzLjQ4MDk3IDExLjY2MzggMy45NTU0OCAxMS42NDU1IDQuMjU5NDcgMTEuOTI2OUw4LjkwNjI0IDE2LjIyOEwxOS43NDA2IDYuMTk5NkMyMC4wNDQ1IDUuOTE4MjMgMjAuNTE5MSA1LjkzNjU2IDIwLjgwMDMgNi4yNDA1M1oiIGZpbGw9IiM0NDYxRDciLz4KPC9zdmc+Cg==\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/icon-check.svg\n// module id = 559\n// module chunks = 1","module.exports = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+CiAgPHBhdGggZD0iTTEyIDdjMi43NiAwIDUgMi4yNCA1IDUgMCAuNjUtLjEzIDEuMjYtLjM2IDEuODNsMi45MiAyLjkyYzEuNTEtMS4yNiAyLjctMi44OSAzLjQzLTQuNzUtMS43My00LjM5LTYtNy41LTExLTcuNS0xLjQgMC0yLjc0LjI1LTMuOTguN2wyLjE2IDIuMTZDMTAuNzQgNy4xMyAxMS4zNSA3IDEyIDd6TTIgNC4yN2wyLjI4IDIuMjguNDYuNDZDMy4wOCA4LjMgMS43OCAxMC4wMiAxIDEyYzEuNzMgNC4zOSA2IDcuNSAxMSA3LjUgMS41NSAwIDMuMDMtLjMgNC4zOC0uODRsLjQyLjQyTDE5LjczIDIyIDIxIDIwLjczIDMuMjcgMyAyIDQuMjd6TTcuNTMgOS44bDEuNTUgMS41NWMtLjA1LjIxLS4wOC40My0uMDguNjUgMCAxLjY2IDEuMzQgMyAzIDMgLjIyIDAgLjQ0LS4wMy42NS0uMDhsMS41NSAxLjU1Yy0uNjcuMzMtMS40MS41My0yLjIuNTMtMi43NiAwLTUtMi4yNC01LTUgMC0uNzkuMi0xLjUzLjUzLTIuMnptNC4zMS0uNzggMy4xNSAzLjE1LjAyLS4xNmMwLTEuNjYtMS4zNC0zLTMtM2wtLjE3LjAxeiIgLz4KPC9zdmc+Cg==\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/icon-invisible.svg\n// module id = 560\n// module chunks = 1","module.exports = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+CiAgPHBhdGggZD0iTTEyIDQuNUM3IDQuNSAyLjczIDcuNjEgMSAxMmMxLjczIDQuMzkgNiA3LjUgMTEgNy41czkuMjctMy4xMSAxMS03LjVjLTEuNzMtNC4zOS02LTcuNS0xMS03LjV6TTEyIDE3Yy0yLjc2IDAtNS0yLjI0LTUtNXMyLjI0LTUgNS01IDUgMi4yNCA1IDUtMi4yNCA1LTUgNXptMC04Yy0xLjY2IDAtMyAxLjM0LTMgM3MxLjM0IDMgMyAzIDMtMS4zNCAzLTMtMS4zNC0zLTMtM3oiIC8+Cjwvc3ZnPgo=\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/icon-visible.svg\n// module id = 561\n// module chunks = 1","module.exports = __webpack_public_path__ + \"static/img/ops-manager-persona.2c7f148.png\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/ops-manager-persona.png\n// module id = 562\n// module chunks = 1","module.exports = __webpack_public_path__ + \"static/img/pm-persona.458a377.png\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/pm-persona.png\n// module id = 563\n// module chunks = 1","module.exports = \"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgMTkyMCAyNDcuMzMiPjxkZWZzPjxzdHlsZT4uY2xzLTF7bWFzazp1cmwoI21hc2spO30uY2xzLTJ7ZmlsbDojZmZmO30uY2xzLTMsLmNscy00e2ZpbGw6IzFkMWMzOTt9LmNscy00LC5jbHMtNXtmaWxsLXJ1bGU6ZXZlbm9kZDt9LmNscy01e2ZpbGw6I2ZmMjJiMTt9LmNscy02e2lzb2xhdGlvbjppc29sYXRlO30uY2xzLTd7bWFzazp1cmwoI21hc2stMSk7fTwvc3R5bGU+PG1hc2sgaWQ9Im1hc2siIHg9IjMwLjA2IiB5PSIxOS40IiB3aWR0aD0iODUuNTkiIGhlaWdodD0iMjA1Ljc5IiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cmVjdCB4PSIzMC4wNiIgeT0iMTkuNCIgd2lkdGg9Ijg1LjU5IiBoZWlnaHQ9IjIwNS43OSIvPjxnIGNsYXNzPSJjbHMtNiI+PHJlY3QgY2xhc3M9ImNscy0yIiB4PSIzMC4wNiIgeT0iMTkuNCIgd2lkdGg9Ijg1LjU5IiBoZWlnaHQ9IjIwNS43OSIvPjwvZz48L21hc2s+PG1hc2sgaWQ9Im1hc2stMSIgeD0iMTQ4Ny4xMyIgeT0iMTcyLjMiIHdpZHRoPSI1Mi45NyIgaGVpZ2h0PSI1Mi45NyIgbWFza1VuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHJlY3QgeD0iMTQ4Ny4xMyIgeT0iMTcyLjMiIHdpZHRoPSI1Mi45NyIgaGVpZ2h0PSI1Mi45NyIvPjxnIGNsYXNzPSJjbHMtNiI+PHJlY3QgY2xhc3M9ImNscy0yIiB4PSIxNDg3LjEzIiB5PSIxNzIuMyIgd2lkdGg9IjUyLjk3IiBoZWlnaHQ9IjUyLjk3Ii8+PC9nPjwvbWFzaz48L2RlZnM+PGcgaWQ9InRlYW13b3JrLWxvZ28iPjxnIGNsYXNzPSJjbHMtMSI+PHBhdGggY2xhc3M9ImNscy00IiBkPSJtOTcuMSw5Ni4yMWMxMS43OSwwLDE4LjU1LTYuNDMsMTguNTUtMTcuNjMsMC0xMC41NC03LjI3LTE3LjYzLTE4LjA5LTE3LjYzaC0yNi43NHYtMTkuOGMwLTE0LjI4LTEwLjI1LTIxLjc1LTIwLjM4LTIxLjc1cy0yMC4zOCw3LjQ3LTIwLjM4LDIxLjc1djEzNi41N2MwLDMyLjgyLDEzLjA4LDQ3LjQ2LDQyLjQxLDQ3LjQ2LDE1LjksMCwyNC45OC00LjA4LDMxLjc0LTguMDYsNS4xNi0yLjg3LDctOC45Niw3LTEzLjcsMC04Ljc4LTUuODctMTguNTYtMTQuMy0xOC41Ni0xLjE3LDAtMi4zNS4yLTMuNjIuNjItLjQ0LjE4LS45NC40LTEuNDkuNjYtMi4yMiwxLjAyLTUuMjUsMi40MS05LjcsMi40MS01LjI2LDAtMTEuMjktMS44Ni0xMS4yOS0xNi4zNHYtNzYuMDFoMjYuMjhaIi8+PC9nPjxwYXRoIGNsYXNzPSJjbHMtNCIgZD0ibTE5MS4zNiw5MC42OWM1LjE2LTEuODgsMTAuMjktMi44MywxNS4yNS0yLjgzLDE2Ljk2LDAsMjguODIsMTAuOTYsMzQuNjksMjEuODdsLTc1Ljk1LDI3LjY0Yy0zLjQ3LTE2LjQyLDEuMy0zNy42OSwyNi4wMS00Ni42OW04MS41OCw3NS44MmMtNC4wMywwLTguMDMsMS40OC0xMS41NSw0LjI3bC0uNTcuNTFjLTcuMTIsNi4zNS0xNS4zLDExLjE1LTI1LDE0LjY4LTcuMjUsMi42NC0xNC4zNSwzLjk4LTIxLjExLDMuOTgtMTcuNjEsMC0zMi40Mi05LjQxLTQwLjAxLTI1LjNsOTMuNzEtMzQuMWMxNC43NS01LjM3LDE2Ljc0LTE2LjI5LDEzLjY3LTI0LjcxLTExLjQ0LTMxLjQyLTM4LjM5LTUwLjk0LTcwLjMzLTUwLjk0LTEwLjQyLDAtMjEuMjUsMi4wMi0zMi4xOSw2LTI0LjAyLDguNzQtNDEuMTMsMjQuNTEtNDkuNDksNDUuNi03LjU3LDE5LjExLTcuMzksNDEuNTguNTEsNjMuMjgsMTIuNzgsMzUuMTEsMzkuOTUsNTUuMjQsNzQuNTcsNTUuMjQsNi41NSwwLDEzLjQxLS43MywyMC4zOS0yLjE4LDYuMzItMS4zMSwxMi4yLTIuOTcsMTcuOTYtNS4wNywxNS42OC01LjcsMjkuOTUtMTMuOTQsNDEuMjktMjMuODJsLjEtLjA5LjA5LS4xYzMuNzYtNC4yNyw1LjI2LTkuMzQsNC4yMi0xNC4zLTEuNTUtNy4zOS04LjUyLTEyLjk2LTE2LjIzLTEyLjk2Ii8+PHBhdGggY2xhc3M9ImNscy00IiBkPSJtNDMwLjE5LDE0MC41NWMwLDIzLjktMTMuNTcsNDguMDEtNDMuODgsNDguMDEtMjUuOTcsMC00My40Mi0xOS4xMS00My40Mi00Ny41NXMxNy42NC00OC40Niw0My44OC00OC40NmMyMS42MSwwLDQzLjQyLDE0Ljg1LDQzLjQyLDQ4LjAxbTIxLjMtODQuNjRjLTEyLjA4LDAtMjAuODQsOC41Ny0yMC44NCwyMC4zOHYuNjVjLTEyLTEzLjYxLTI5Ljc5LTIxLjAzLTUwLjc2LTIxLjAzLTQ3LjMzLDAtNzkuMTMsMzQuMDEtNzkuMTMsODQuNjRzMzEuMjUsODQuNjQsNzcuNzYsODQuNjRjMjIuOCwwLDQxLjM4LTguMjgsNTMuMDYtMjMuNDZ2My4wOGMwLDE1LjAyLDEwLjI5LDIwLjM4LDE5LjkyLDIwLjM4LDEyLjAxLDAsMTkuNDctNy44MSwxOS40Ny0yMC4zOFY3Ni4yOWMwLTEyLjM4LTcuNjQtMjAuMzgtMTkuNDctMjAuMzgiLz48cGF0aCBjbGFzcz0iY2xzLTQiIGQ9Im02ODUuNzMsNTUuOTFjLTIzLjk0LDAtNDIuNDUsMTAuNi01MS40OSwyOS4yNi05LjkxLTE5LjE3LTI3LjcyLTI5LjI2LTUxLjc5LTI5LjI2LTE3LjkyLDAtMzMuOTQsNy4xLTQzLjQzLDE4Ljg4LS4yOS0xMC45OC04Ljc3LTE4Ljg4LTIwLjM4LTE4Ljg4LTEwLjM3LDAtMjAuODQsNi41OS0yMC44NCwyMS4zdjEyNy42YzAsMTMuMTUsNy4yNCwyMC4zOCwyMC4zOCwyMC4zOHMyMC44NC03LjYyLDIwLjg0LTIwLjM4di03Ni4yYzAtMjUuMTUsMTEuMjEtMzcuOTEsMzMuMzEtMzcuOTFzMzAuNTgsMTIuMDUsMzAuNTgsNDEuNTl2NzIuMDZjMCwxMy40NCw3LjI0LDIwLjg0LDIwLjM4LDIwLjg0czIwLjg0LTcuNiwyMC44NC0yMC44NHYtNzEuMTVjMC0yOC42LDExLjA1LTQyLjUsMzMuNzktNDIuNSwyMS40MiwwLDMwLjU3LDEyLjcxLDMwLjU3LDQyLjV2NzEuMTVjMCwxMy40NCw3LjI0LDIwLjg0LDIwLjM4LDIwLjg0czIwLjg0LTcuNiwyMC44NC0yMC44NHYtNzEuMTVjMC01MS4yOS0yMS41My03Ny4zLTYzLjk5LTc3LjMiLz48cGF0aCBjbGFzcz0iY2xzLTQiIGQ9Im05OTguNDYsNTUuOTFjLTkuMDUsMC0xNi42NCw2LjUyLTIwLjI2LDE3LjQxbC0zNC44MSw5OC4zMy0zNC4zNi05Ny44NmMtMy43My0xMC43My04LjQ1LTE3Ljg4LTE5LjM1LTE3Ljg4LTExLjY1LDAtMTUuOTUsNi4yOS0xOS44LDE3Ljg3bC0zNC4zNyw5Ny44Ny0zNC43OS05OC4yOWMtMy42NC0xMC45Mi0xMS4yMi0xNy40NS0yMC4yNy0xNy40NXMtMTcuNjMsNy4xMS0xNy42MywxOWMwLDMuODEuODcsNy42MSwyLjksMTIuNjdsNDYuODIsMTE5LjM2YzQuNDgsMTAuOTUsMTAuMSwxOC4yNCwyMi45OCwxOC4yNCwxNC4xLDAsMTkuNDYtOS43OSwyMi41Ni0xOC4zMWwzMS41OC04Ni4wOSwzMC42OSw4Ni4wNGM0LjA2LDEyLjE5LDExLjgxLDE4LjM3LDIzLjAzLDE4LjM3czE4LjYtNi4xNCwyMy40Ni0xOC4yOGw0Ni4zMS0xMTkuNzFjMi00LjUsMi45NC04LjQxLDIuOTQtMTIuMywwLTEwLjgzLTcuNTgtMTktMTcuNjQtMTkiLz48cGF0aCBjbGFzcz0iY2xzLTQiIGQ9Im0xMTAzLjI4LDE5Mi42OWMtMjcuMDcsMC00My44OC0xOS45OC00My44OC01Mi4xNHMxNy4yMi01MS4yMiw0My44OC01MS4yMiw0My44OCwyMC4xMSw0My44OCw1MS4yMi0xNy4yMiw1Mi4xNC00My44OCw1Mi4xNG0wLTEzNi4zMmMtMjYuNzMsMC00OC44OCw4Ljc4LTY0LjAzLDI1LjM5LTEzLjU4LDE0Ljg5LTIxLjA3LDM1Ljc3LTIxLjA3LDU4Ljc5czcuNDgsNDQuMDIsMjEuMDYsNTkuMDJjMTUuMTgsMTYuNzYsMzcuMzIsMjUuNjIsNjQuMDQsMjUuNjIsNjIuODEsMCw4NS4xLTQ1LjYsODUuMS04NC42NHMtMjIuMjktODQuMTgtODUuMS04NC4xOCIvPjxwYXRoIGNsYXNzPSJjbHMtNCIgZD0ibTEyODcuOTUsNTUuOTFjLTE2LjA3LDAtMzAuNzksNi43Ni00MS4xOSwxOC43NC0uODQtMTAuNDctOS42My0xOC43NC0yMC4zMS0xOC43NC0xMS40MywwLTIwLjM5LDguOTUtMjAuMzksMjAuMzh2MTI4LjUyYzAsMTMuMzgsMTAuMjUsMjAuMzgsMjAuMzksMjAuMzhzMjAuMzgtNywyMC4zOC0yMC4zOHYtNjEuMDVjMC0zNi44NywxMC4xLTUyLjYsMzMuNzgtNTIuNiwzLjc4LDAsNS45Ny41MSw4LjA4LDEsMS44Ny40MywzLjY0Ljg0LDYuMTYuODQsOS43MiwwLDE2LjI1LTcuMjcsMTYuMjUtMTguMDksMC0xMS41NS05LjA4LTE5LTIzLjEzLTE5Ii8+PHBhdGggY2xhc3M9ImNscy00IiBkPSJtMTQwNS4wNywxNDAuOThsNDQuNTMtNDYuMzFjNi4xOS02LjIsMTIuMDQtMTIuMDUsMTIuMDQtMjAuMjIsMC0xMC41Ny03Ljk3LTE4LjU1LTE4LjU0LTE4LjU1LTguMjgsMC0xNC4xNiw2LjM2LTE5Ljg0LDEyLjUxbC01My44Nyw1NS42N1YzOS43N2MwLTExLjI0LTkuMTQtMjAuMzgtMjAuMzgtMjAuMzhzLTIwLjM5LDkuMTQtMjAuMzksMjAuMzh2MTY1LjA0YzAsMTEuMjQsOS4xNSwyMC4zOCwyMC4zOSwyMC4zOHMyMC4zOC05LjE0LDIwLjM4LTIwLjM4di01MC4wNmw1My45Miw1Ni4wOGMuOTUuOTUsMS44OCwxLjkyLDIuODEsMi44OSw1LjQxLDUuNjQsMTEsMTEuNDgsMTkuMjgsMTEuNDgsOS44LDAsMTguMDktOC4yOCwxOC4wOS0xOC4wOSwwLTcuMTItNC44My0xMi41NS05Ljc3LTE3LjQ5bC00OC42My00OC42M1oiLz48ZyBjbGFzcz0iY2xzLTciPjxwYXRoIGNsYXNzPSJjbHMtNSIgZD0ibTE1MTMuNjEsMTcyLjNjLTE0LjYsMC0yNi40OCwxMS44OC0yNi40OCwyNi40OXMxMS44OCwyNi40OSwyNi40OCwyNi40OSwyNi40OS0xMS44OCwyNi40OS0yNi40OS0xMS44OC0yNi40OS0yNi40OS0yNi40OSIvPjwvZz48cGF0aCBjbGFzcz0iY2xzLTMiIGQ9Im0xNTY3LjQ0LDE4MS42MmMwLTYuODksMS4wNi0xMy4yLDMuMTctMTguOTQsMi4xMS01LjczLDQuOTgtMTAuNiw4LjYxLTE0LjU5LDMuNjItMy45OSw3Ljk0LTcuMDksMTIuOTUtOS4zMyw1LjAxLTIuMjMsMTAuNDItMy4zNSwxNi4yMi0zLjM1LDkuMDYsMCwxNi42NywyLjMsMjIuODMsNi44OSw2LjE2LDQuNTksMTAuMzksMTAuNTEsMTIuNjgsMTcuNzYuNiwxLjU3LjY2LDMuMDUuMTgsNC40NC0uNDgsMS4zOS0xLjc1LDIuMDgtMy44MSwyLjA4aC0yLjU0Yy0xLjMzLDAtMi40NS0uMy0zLjM1LS45MS0uOTEtLjYtMS42Ni0xLjY5LTIuMjYtMy4yNi0xLjU3LTQuNzEtNC4zMi04LjYxLTguMjUtMTEuNjktMy45My0zLjA4LTguOTctNC42Mi0xNS4xMy00LjYyLTcuODUsMC0xNC41NiwzLjI5LTIwLjExLDkuODgtNS41Niw2LjU5LTguMzQsMTUuMTMtOC4zNCwyNS42NHMyLjc1LDE5LjA2LDguMjUsMjUuNjRjNS40OSw2LjU4LDEyLjIzLDkuODcsMjAuMiw5Ljg3LDYuNCwwLDExLjUxLTEuNTQsMTUuMzEtNC42MiwzLjgtMy4wOCw2LjQ5LTYuOTgsOC4wNi0xMS42OS42LTEuNTcsMS4zNi0yLjY2LDIuMjYtMy4yNi45MS0uNiwyLjAyLS45MSwzLjM1LS45MWgyLjU0YzIuMDUsMCwzLjMyLjcsMy44MSwyLjA4LjQ4LDEuMzkuNDIsMi44Ny0uMTgsNC40NC0yLjMsNy4yNS02LjUyLDEzLjE3LTEyLjY4LDE3Ljc2LTYuMTYsNC41OS0xMy43Nyw2Ljg4LTIyLjgzLDYuODgtMTIuNTYsMC0yMi41My00LjIzLTI5LjktMTIuNjgtNy4zNy04LjQ1LTExLjA1LTE5LjYzLTExLjA1LTMzLjUyWiIvPjxwYXRoIGNsYXNzPSJjbHMtMyIgZD0ibTE2NTguNCwxODEuNjJjMC02Ljg5LDEuMDYtMTMuMiwzLjE3LTE4Ljk0LDIuMTEtNS43Myw1LjA0LTEwLjYsOC43OS0xNC41OSwzLjc0LTMuOTksOC4xOC03LjA5LDEzLjMyLTkuMzMsNS4xMy0yLjIzLDEwLjcyLTMuMzUsMTYuNzYtMy4zNSwxMi42OCwwLDIyLjg2LDQuMjMsMzAuNTMsMTIuNjgsNy42Nyw4LjQ2LDExLjUsMTkuNjMsMTEuNSwzMy41MiwwLDYuODktMS4wNiwxMy4yLTMuMTcsMTguOTQtMi4xMSw1Ljc0LTUuMDQsMTAuNi04Ljc5LDE0LjU5LTMuNzUsMy45OS04LjE4LDcuMS0xMy4zMiw5LjMzLTUuMTQsMi4yMy0xMC43MiwzLjM1LTE2Ljc2LDMuMzUtMTIuNjgsMC0yMi44Ni00LjIzLTMwLjUzLTEyLjY4LTcuNjctOC40NS0xMS41MS0xOS42My0xMS41MS0zMy41MlptMTIuODYsMGMwLDEwLjUxLDIuNzIsMTkuMDYsOC4xNSwyNS42NCw1LjQ0LDYuNTgsMTIuNDQsOS44NywyMS4wMiw5Ljg3czE1LjI4LTMuMjksMjAuODQtOS44N2M1LjU2LTYuNTgsOC4zNC0xNS4xMyw4LjM0LTI1LjY0cy0yLjcyLTE5LjUxLTguMTUtMjUuOTFjLTUuNDQtNi40LTEyLjQ0LTkuNi0yMS4wMi05LjZzLTE1LjI4LDMuMjktMjAuODQsOS44OGMtNS41Niw2LjU5LTguMzQsMTUuMTMtOC4zNCwyNS42NFoiLz48cGF0aCBjbGFzcz0iY2xzLTMiIGQ9Im0xNzYxLjEzLDIyMC43NnYtNzguNDZjMC0xLjU3LjM5LTIuNzgsMS4xOC0zLjYyLjc4LS44NCwxLjk2LTEuMjcsMy41My0xLjI3aDIuMTdjMS41NywwLDIuNzguNDMsMy42MiwxLjI3Ljg0Ljg1LDEuMjcsMi4wNiwxLjI3LDMuNjJ2MTAuNjloLjU0YzIuNTQtNS45Miw2LjMxLTEwLjMzLDExLjMyLTEzLjIzLDUuMDEtMi45LDEwLjYtNC4zNSwxNi43Ni00LjM1czExLjkzLDEuNTcsMTYuOTQsNC43MWM1LjAxLDMuMTQsOC42Nyw4LjE1LDEwLjk2LDE1LjA0LDMuMDItNyw3LjE2LTEyLjA1LDEyLjQxLTE1LjEzLDUuMjYtMy4wOCwxMS4yLTQuNjIsMTcuODUtNC42Miw0LjExLDAsOCwuNjMsMTEuNjksMS45LDMuNjgsMS4yNyw2Ljg4LDMuMjksOS42LDYuMDcsMi43MiwyLjc4LDQuODYsNi40LDYuNDMsMTAuODcsMS41Nyw0LjQ3LDIuMzYsOS45MSwyLjM2LDE2LjMxdjUwLjE5YzAsMS41Ny0uNDUsMi44MS0xLjM2LDMuNzItLjkxLjkxLTIuMTUsMS4zNi0zLjcyLDEuMzZoLTIuMTdjLTEuNjksMC0yLjk2LS40NS0zLjgxLTEuMzYtLjg1LS45MS0xLjI3LTIuMTQtMS4yNy0zLjcydi00OC41NmMwLTkuNDItMS43OC0xNi4xMy01LjM0LTIwLjExLTMuNTYtMy45OS04LjU1LTUuOTgtMTQuOTUtNS45OC02Ljg5LDAtMTIuODYsMi45LTE3Ljk0LDguNy01LjA3LDUuOC03LjYxLDEzLjk1LTcuNjEsMjQuNDZ2NDEuNDljMCwxLjU3LS40NSwyLjgxLTEuMzYsMy43Mi0uOTEuOTEtMi4xNSwxLjM2LTMuNzEsMS4zNmgtMi4xN2MtMS42OSwwLTIuOTYtLjQ1LTMuOC0xLjM2LS44NS0uOTEtMS4yNy0yLjE0LTEuMjctMy43MnYtNDguNTZjMC05LjQyLTEuODQtMTYuMTMtNS41My0yMC4xMS0zLjY5LTMuOTktOC42MS01Ljk4LTE0Ljc3LTUuOTgtNi44OSwwLTEyLjg2LDIuOS0xNy45NCw4LjctNS4wNyw1LjgtNy42MSwxNC4wMi03LjYxLDI0LjY0djQxLjMxYzAsMS41Ny0uNDUsMi44MS0xLjM2LDMuNzJzLTIuMTUsMS4zNi0zLjcxLDEuMzZoLTIuMTdjLTEuNjksMC0yLjk2LS40NS0zLjgxLTEuMzYtLjg1LS45MS0xLjI3LTIuMTQtMS4yNy0zLjcyWiIvPjwvZz48L3N2Zz4=\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/images/teamwork-logo.svg\n// module id = 564\n// module chunks = 1","function injectStyle (ssrContext) {\n require(\"!!../../node_modules/extract-text-webpack-plugin/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"minimize\\\":true,\\\"sourceMap\\\":true}!../../node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-a02523dc\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!./App.scss\")\n}\nvar Component = require(\"!../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./App.js\"),\n /* template */\n require(\"!!../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-a02523dc\\\",\\\"hasScoped\\\":false}!../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../node_modules/vue-loader/lib/selector?type=template&index=0!./App.vue\"),\n /* styles */\n injectStyle,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/App.vue\n// module id = 565\n// module chunks = 1","var Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./AcceptInvite.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-46d415d5\\\",\\\"hasScoped\\\":false}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./AcceptInvite.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/pages/AcceptInvite/AcceptInvite.vue\n// module id = 566\n// module chunks = 1","function injectStyle (ssrContext) {\n require(\"!!../../../node_modules/extract-text-webpack-plugin/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"minimize\\\":true,\\\"sourceMap\\\":true}!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-218b5a9d\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./AccountNotSetup.vue\")\n}\nvar Component = require(\"!../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./AccountNotSetup.vue\"),\n /* template */\n require(\"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-218b5a9d\\\",\\\"hasScoped\\\":true}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./AccountNotSetup.vue\"),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-218b5a9d\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/pages/AccountNotSetup.vue\n// module id = 567\n// module chunks = 1","var Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./ForgotPassword.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-b4f03096\\\",\\\"hasScoped\\\":false}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./ForgotPassword.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/pages/ForgotPassword/ForgotPassword.vue\n// module id = 568\n// module chunks = 1","var Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./Login.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-9f627fee\\\",\\\"hasScoped\\\":false}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./Login.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/pages/Login/Login.vue\n// module id = 569\n// module chunks = 1","var Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./Logout.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-10ee2996\\\",\\\"hasScoped\\\":false}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./Logout.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/pages/Logout/Logout.vue\n// module id = 570\n// module chunks = 1","var Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./ResetPassword.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-7f21a68b\\\",\\\"hasScoped\\\":false}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./ResetPassword.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/pages/ResetPassword/ResetPassword.vue\n// module id = 571\n// module chunks = 1","var Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./SAMLAuth.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-74cda355\\\",\\\"hasScoped\\\":false}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./SAMLAuth.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/pages/SAMLAuth/SAMLAuth.vue\n// module id = 572\n// module chunks = 1","function injectStyle (ssrContext) {\n require(\"!!../../../../node_modules/extract-text-webpack-plugin/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"minimize\\\":true,\\\"sourceMap\\\":true}!../../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-3e3ad059\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!../../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./SelectAccount.vue\")\n}\nvar Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./SelectAccount.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-3e3ad059\\\",\\\"hasScoped\\\":true}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./SelectAccount.vue\"),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-3e3ad059\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/pages/SelectAccount/SelectAccount.vue\n// module id = 573\n// module chunks = 1","var Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./Success.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-6ed0e086\\\",\\\"hasScoped\\\":false}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./Success.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/pages/Success/Success.vue\n// module id = 574\n// module chunks = 1","var Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./TokenAuth.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-3786628e\\\",\\\"hasScoped\\\":false}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./TokenAuth.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/pages/TokenAuth/TokenAuth.vue\n// module id = 575\n// module chunks = 1","var Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./Welcome.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-03b0687b\\\",\\\"hasScoped\\\":false}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./Welcome.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/pages/Welcome/Welcome.vue\n// module id = 576\n// module chunks = 1","function injectStyle (ssrContext) {\n require(\"!!../../../../node_modules/extract-text-webpack-plugin/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"minimize\\\":true,\\\"sourceMap\\\":true}!../../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-6513d779\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!../../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./EmailValidation.vue\")\n}\nvar Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!../../../../node_modules/vue-loader/lib/selector?type=script&index=0!./EmailValidation.vue\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-6513d779\\\",\\\"hasScoped\\\":true}!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./EmailValidation.vue\"),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-6513d779\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/sections/EmailValidation/EmailValidation.vue\n// module id = 577\n// module chunks = 1","var Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./ErrorMessage.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-ed0e5426\\\",\\\"hasScoped\\\":false}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./ErrorMessage.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/sections/ErrorMessage/ErrorMessage.vue\n// module id = 578\n// module chunks = 1","var Component = require(\"!../../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./SAMLForm.js\"),\n /* template */\n require(\"!!../../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-c93d4d32\\\",\\\"hasScoped\\\":false}!../../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./SAMLForm.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/sections/Login/SAMLForm/SAMLForm.vue\n// module id = 579\n// module chunks = 1","var Component = require(\"!../../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./SAMLStarter.js\"),\n /* template */\n require(\"!!../../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-69676b66\\\",\\\"hasScoped\\\":false}!../../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./SAMLStarter.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/sections/Login/SAMLStarter/SAMLStarter.vue\n// module id = 580\n// module chunks = 1","var Component = require(\"!../../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./StandardForm.js\"),\n /* template */\n require(\"!!../../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-4a586067\\\",\\\"hasScoped\\\":false}!../../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./StandardForm.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/sections/Login/StandardForm/StandardForm.vue\n// module id = 581\n// module chunks = 1","function injectStyle (ssrContext) {\n require(\"!!../../../../node_modules/extract-text-webpack-plugin/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"minimize\\\":true,\\\"sourceMap\\\":true}!../../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-81519574\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!../../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./TfaSetup.vue\")\n}\nvar Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!../../../../node_modules/vue-loader/lib/selector?type=script&index=0!./TfaSetup.vue\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-81519574\\\",\\\"hasScoped\\\":true}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./TfaSetup.vue\"),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-81519574\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/sections/Login/TfaSetup.vue\n// module id = 582\n// module chunks = 1","function injectStyle (ssrContext) {\n require(\"!!../../../../node_modules/extract-text-webpack-plugin/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"minimize\\\":true,\\\"sourceMap\\\":true}!../../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-8e143b26\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"sourceMap\\\":true}!../../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./MarketingContent.vue\")\n}\nvar Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!../../../../node_modules/vue-loader/lib/selector?type=script&index=0!./MarketingContent.vue\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-8e143b26\\\",\\\"hasScoped\\\":true}!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./MarketingContent.vue\"),\n /* styles */\n injectStyle,\n /* scopeId */\n \"data-v-8e143b26\",\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/sections/MarketingContent/MarketingContent.vue\n// module id = 583\n// module chunks = 1","var Component = require(\"!../../../../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!./SiteNotFound.js\"),\n /* template */\n require(\"!!../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-2ab20f4d\\\",\\\"hasScoped\\\":false}!../../../../node_modules/vue-loader/lib/template-compiler/preprocessor?engine=pug!../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./SiteNotFound.vue\"),\n /* styles */\n null,\n /* scopeId */\n null,\n /* moduleIdentifier (server only) */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/sections/SiteNotFound/SiteNotFound.vue\n// module id = 584\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-welcome\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title,\n \"subTitle\": _vm.subtitle\n }\n }), _c('div', {\n staticClass: \"content\"\n }, [_c('product-list', {\n attrs: {\n \"products\": _vm.products\n }\n })], 1)], 1)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-03b0687b\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/pages/Welcome/Welcome.vue\n// module id = 585\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-logout\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title,\n \"subTitle\": _vm.logoutMessageHTML\n }\n }), _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmitLogin.apply(null, arguments)\n }\n }\n }, [_vm._m(0)])], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"submit\",\n \"autofocus\": \"autofocus\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Log in again\")])])])\n}]}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-10ee2996\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/pages/Logout/Logout.vue\n// module id = 586\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', [(_vm.isLoading) ? _c('loading', {\n attrs: {\n \"is-loading\": \"is-loading\"\n }\n }) : [_c('page-header', {\n attrs: {\n \"title\": \"We'd love to know a bit more about you\",\n \"error\": _vm.errorMessage\n }\n }), _c('form', {\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.save.apply(null, arguments)\n }\n }\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"Heya! We're working on improving some key areas of Teamwork and to ensure we offer the best version for your team, we'd love to know a few things about your \\norganization. As you are an Administrator we thought you may be the best to help us.\")])]), _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('TwSelect', {\n attrs: {\n \"label\": \"Industry category\",\n \"name\": \"industry-category\",\n \"options\": _vm.industryCategoryOptions\n },\n model: {\n value: (_vm.model.industryCategory),\n callback: function($$v) {\n _vm.$set(_vm.model, \"industryCategory\", $$v)\n },\n expression: \"model.industryCategory\"\n }\n }), _c('TwSelect', {\n attrs: {\n \"label\": \"Company size\",\n \"name\": \"company-size\",\n \"options\": _vm.sizeOptions\n },\n model: {\n value: (_vm.model.size),\n callback: function($$v) {\n _vm.$set(_vm.model, \"size\", $$v)\n },\n expression: \"model.size\"\n }\n })], 1), _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"We appreciate your help on this,\"), _c('br'), _vm._v(\"Dan & Peter.\")])]), _c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"submit\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Save\")])])])]], 2)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-1a4c85c3\",\"hasScoped\":true}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/sections/Login/CompanyInfo.vue\n// module id = 587\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-page-header\",\n class: {\n 'no-subtitle': _vm.subTitle.length === 0, 'hideable': _vm.hideable\n }\n }, [_c('h1', {\n staticClass: \"w-page-header__title\",\n domProps: {\n \"innerHTML\": _vm._s(_vm.title)\n }\n }), _c('p', {\n staticClass: \"w-page-header__description\",\n class: {\n 'is-invalid': _vm.error\n }\n }, [(!_vm.error) ? _c('span', {\n domProps: {\n \"innerHTML\": _vm._s(_vm.subTitle)\n }\n }) : _vm._e(), (_vm.error) ? _c('span', [_vm._v(_vm._s(_vm.error))]) : _vm._e()])])\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-1e47c740\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/widgets/PageHeader/PageHeader.vue\n// module id = 588\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-account-not-set-up\"\n }, [_c('PageHeader', {\n attrs: {\n \"title\": _vm.title,\n \"sub-title\": _vm.subTitle\n }\n }), _vm._v(\" \"), _c('form', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [(_vm.customMessage) ? _c('p', {\n domProps: {\n \"textContent\": _vm._s(_vm.customMessage)\n }\n }) : _c('p', [_vm._v(\"\\n Your account is not set up to use \" + _vm._s(_vm.productName) + \".\\n Please contact your site administrator.\\n \")])]), _vm._v(\" \"), _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('ProductList', {\n attrs: {\n \"products\": _vm.continueItems\n }\n })], 1), _vm._v(\" \"), _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('router-link', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"to\": \"/login\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"\\n Back to login\\n \")])])], 1)])], 1)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-218b5a9d\",\"hasScoped\":true}!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/pages/AccountNotSetup.vue\n// module id = 589\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"textfield\"\n }, [_c('select', _vm._b({\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.innerValue),\n expression: \"innerValue\"\n }],\n ref: \"select\",\n staticClass: \"textfield__input\",\n on: {\n \"input\": function($event) {\n return _vm.$emit('input', $event.target.value)\n },\n \"change\": [function($event) {\n var $$selectedVal = Array.prototype.filter.call($event.target.options, function(o) {\n return o.selected\n }).map(function(o) {\n var val = \"_value\" in o ? o._value : o.value;\n return val\n });\n _vm.innerValue = $event.target.multiple ? $$selectedVal : $$selectedVal[0]\n }, _vm.blur]\n }\n }, 'select', _vm.$attrs, false), [_c('option', {\n attrs: {\n \"disabled\": \"\",\n \"selected\": \"\",\n \"value\": \"\"\n }\n }), _vm._v(\" \"), _vm._l((_vm.options), function(option, key) {\n return _c('option', {\n key: key,\n domProps: {\n \"value\": option.value\n }\n }, [_vm._v(\"\\n \" + _vm._s(option.label) + \"\\n \")])\n })], 2), _vm._v(\" \"), _c('label', {\n staticClass: \"textfield__label\",\n class: {\n 'textfield__label--filled': !_vm.empty\n },\n attrs: {\n \"for\": _vm.name\n }\n }, [_vm._v(\"\\n \" + _vm._s(_vm.fieldLabel) + \"\\n \")]), _vm._v(\" \"), _c('svg', {\n staticClass: \"textfield__icon\",\n attrs: {\n \"height\": \"24px\",\n \"viewBox\": \"0 0 24 24\",\n \"width\": \"24px\"\n }\n }, [_c('path', {\n attrs: {\n \"d\": \"M7 10l5 5 5-5H7z\"\n }\n })])])\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-232e329e\",\"hasScoped\":true}!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/widgets/TwSelect.vue\n// module id = 590\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"app-consent\"\n }, [_c('page-header', {\n staticClass: \"compressed\"\n }, [(_vm.showAppDetails) ? [(_vm.app.url) ? [_vm._v(\"Log in to \"), _c('a', {\n attrs: {\n \"href\": _vm.app.url,\n \"_target\": \"blank\"\n }\n }, [_vm._v(_vm._s(_vm.app.name))])] : [_vm._v(\"Log in to \" + _vm._s(_vm.app.name))]] : (_vm.appIsLocal) ? [_vm._v(\"Log in to \" + _vm._s(_vm.app.name))] : [_vm._v(\"Log in\")]], 2), (_vm.showAppDetails && _vm.app.publisher) ? _c('div', {\n staticClass: \"app-consent__publisher\"\n }, [(_vm.logoUrl) ? _c('div', {\n staticClass: \"app-consent__publisher-logo\"\n }, [_c('img', {\n attrs: {\n \"src\": _vm.logoUrl,\n \"alt\": \"Logo\"\n }\n })]) : _vm._e(), _c('div', {\n staticClass: \"app-consent__publisher-details\"\n }, [_c('div', [_vm._v(_vm._s(_vm.app.publisher.name))]), (_vm.app.publisher.url) ? _c('div', [_c('a', {\n attrs: {\n \"href\": _vm.app.publisher.url\n }\n }, [_vm._v(_vm._s(_vm.app.publisher.url))])]) : _vm._e(), _c('div', {\n staticClass: \"app-consent__publisher-links\"\n }, [(_vm.app.publisher.privacyUrl) ? _c('small', [_c('a', {\n attrs: {\n \"href\": _vm.app.publisher.privacyUrl,\n \"target\": \"_blank\"\n }\n }, [_vm._v(\"Privacy\")])]) : _vm._e(), (_vm.app.publisher.termsUrl) ? _c('small', [_c('a', {\n attrs: {\n \"href\": _vm.app.publisher.termsUrl,\n \"target\": \"_blank\"\n }\n }, [_vm._v(\"Terms\")])]) : _vm._e()])])]) : _vm._e(), _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onAllow.apply(null, arguments)\n }\n }\n }, [(_vm.showAppDetails) ? _c('div', {\n staticClass: \"w-login-form__app-details\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [(_vm.app.description) ? _c('p', [_vm._v(_vm._s(_vm.app.description))]) : _vm._e()]), _c('div', {\n staticClass: \"w-login-form__row access\"\n }, [_c('p', [_c('strong', [_vm._v(_vm._s(_vm.app.name) + \" requires access to:\")])])])]) : _c('div', {\n staticClass: \"w-login-form__app-details\"\n }, [_vm._m(0)]), _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('ul', {\n staticClass: \"scope-list\"\n }, _vm._l((_vm.requestedScope), function(productCode) {\n return _c('li', [_c('span', {\n staticClass: \"app-icon\"\n }, [_c('img', {\n attrs: {\n \"src\": _vm.getAppIcon(productCode)\n }\n })]), _c('span', [_vm._v(\"Read and write your \" + _vm._s(_vm.getAppName(productCode)) + \" data\")])])\n }), 0)]), _vm._m(1)]), _c('div', {\n staticClass: \"w-page-footer\"\n }, [_c('button', {\n staticClass: \"w-button\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function($event) {\n $event.preventDefault();\n return _vm.onDeny.apply(null, arguments)\n }\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Deny\")])])])], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row access\"\n }, [_c('p', [_c('strong', [_vm._v(\"A third-party application requires access to:\")])])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"submit\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Allow\")])])])\n}]}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-239200ad\",\"hasScoped\":true}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/sections/AppConsent/AppConsent.vue\n// module id = 591\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"site-not-found\"\n }, [_c('page-header', {\n attrs: {\n \"title\": \"Oops - We didn't find your site.\",\n \"subTitle\": \"But don't panic, we're here to help!\"\n }\n }), _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmitLogin.apply(null, arguments)\n }\n }\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"1. Most likely, you have probably just slightly misspelt the address\"), _c('strong', [_vm._v(\" \" + _vm._s(_vm.siteAddress) + \" \")]), _vm._v(\"so before we go any further please check that.\")])]), _vm._m(0), _vm._m(1), _vm._m(2), _vm._m(3)]), (_vm.inAppLogin) ? _c('div', {\n staticClass: \"w-page-footer\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function($event) {\n $event.preventDefault();\n return _vm.onClickBackToApp.apply(null, arguments)\n }\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Back to app\")])])]) : _vm._e()], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"2. Still here? Hmmm, perhaps you can't think of the correct address for the site you want;\\n that's no problem, \"), _c('a', {\n attrs: {\n \"href\": \"https://teamwork.com/launchpad/login\"\n }\n }, [_vm._v(\"you can use our generic login page\")]), _vm._v(\".\")])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"3. Oh dear, you're still here... OK, there is also the slim possibility that\\n the account may have been cancelled, in which case we can restore it if there\\n has been a mistake.\")])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"4. Custom domain?: If you've added a custom domain to your account,\\n you may have missed the last step... \"), _c('a', {\n attrs: {\n \"href\": \"https://support.teamwork.com/projects/general-settings/using-a-custom-domain-name\"\n }\n }, [_vm._v(\"Setting up your custom domain\")])])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"5. Contact Us: If something has gone wrong, just \"), _c('a', {\n attrs: {\n \"href\": \"https://www.teamwork.com/contact\"\n }\n }, [_vm._v(\"drop us a quick note\")]), _vm._v(\" and we'll do our best to help.\")])])\n}]}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-2ab20f4d\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/sections/SiteNotFound/SiteNotFound.vue\n// module id = 592\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"password-input w-input\"\n }, [(_vm.label) ? _c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"loginpassword\"\n }\n }, [_vm._v(_vm._s(_vm.label))]) : _vm._e(), _c('input', _vm._b({\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"loginpassword\",\n \"type\": _vm.isVisible ? 'text' : 'password'\n },\n domProps: {\n \"value\": _vm.value\n },\n on: {\n \"input\": function($event) {\n return _vm.$emit('input', $event.target.value)\n }\n }\n }, 'input', _vm.$attrs, false)), _c('div', {\n staticClass: \"w-input__right-block\"\n }, [(_vm.isVisible) ? _c('img', {\n staticClass: \"icon\",\n attrs: {\n \"role\": \"button\",\n \"title\": \"Hide password\",\n \"src\": _vm.iconInvisible\n },\n on: {\n \"click\": function($event) {\n _vm.isVisible = false\n }\n }\n }) : _c('img', {\n staticClass: \"icon\",\n attrs: {\n \"role\": \"button\",\n \"title\": \"Show password\",\n \"src\": _vm.iconVisible\n },\n on: {\n \"click\": function($event) {\n _vm.isVisible = true\n }\n }\n })])])\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-3317b7a0\",\"hasScoped\":true}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/PasswordInput.vue\n// module id = 593\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-select-account\"\n }, _vm._l((_vm.accounts), function(account) {\n return _c('a', {\n staticClass: \"w-select-account__row\",\n attrs: {\n \"href\": \"javascript:;\"\n },\n on: {\n \"click\": function($event) {\n return _vm.onSelectAccount(account)\n }\n }\n }, [_c('span', {\n staticClass: \"w-select-account__image\",\n style: ({\n backgroundImage: _vm.getBackgroundImage(account)\n })\n }), _c('span', {\n staticClass: \"w-select-account__row-content\"\n }, [_c('strong', {\n staticClass: \"w-select-account__name\"\n }, [_vm._v(_vm._s(account.installation.name))]), _c('span', {\n staticClass: \"w-select-account__owner\"\n }, [_vm._v(_vm._s(account.user.firstName + ' ' + account.user.lastName))]), _c('span', {\n staticClass: \"w-select-account__url\"\n }, [_vm._v(_vm._s(account.installation.url))])]), (account.installation.region === 'EU') ? _c('span', {\n staticClass: \"w-select-account__eu-flag\"\n }, [_c('img', {\n attrs: {\n \"src\": require(\"../../../assets/images/eu-flatflag-mini.svg\"),\n \"alt\": \"EU\"\n }\n })]) : _vm._e(), (account.installation.region === 'AU') ? _c('span', {\n staticClass: \"w-select-account__au-flag\"\n }, [_vm._v(\"AU\")]) : _vm._e()])\n }), 0)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-37372ab8\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/widgets/AccountList/AccountList.vue\n// module id = 594\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-token-auth\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [(_vm.state === 'company-info') ? _c('company-info', {\n attrs: {\n \"default-info\": _vm.companyInfo\n },\n on: {\n \"saved\": _vm.onCompanyInfoSaved\n }\n }) : _vm._e(), (_vm.state === 'gdpr-consent') ? _c('gdpr-consent', {\n on: {\n \"seen\": _vm.loginViaToken\n }\n }) : _vm._e(), (_vm.state === 'app-consent') ? _c('app-consent', {\n attrs: {\n \"code\": _vm.code,\n \"app\": _vm.app\n }\n }) : _vm._e(), (_vm.state === 'persona-capture') ? _c('persona-capture', {\n attrs: {\n \"code\": _vm.code,\n \"app\": _vm.app\n },\n on: {\n \"saved\": _vm.onPersonaInfoSaved\n }\n }) : _vm._e(), (_vm.state === 'normal') ? _c('div', {\n staticClass: \"content\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title\n }\n }), _c('form', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"Login successful\")]), _c('div', {\n staticClass: \"auth-token\",\n staticStyle: {\n \"display\": \"none\"\n }\n }, [_vm._v(_vm._s(_vm.code))])])])], 1) : _vm._e()], 1) : _vm._e()], 1)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-3786628e\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/pages/TokenAuth/TokenAuth.vue\n// module id = 595\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-select-account\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title\n }\n }), _c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [_c('account-list', {\n attrs: {\n \"accounts\": _vm.accounts\n },\n on: {\n \"account-selected\": _vm.onAccountSelected\n }\n })], 1) : _vm._e()], 1)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-3e3ad059\",\"hasScoped\":true}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/pages/SelectAccount/SelectAccount.vue\n// module id = 596\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-accept-invite\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title,\n \"subTitle\": _vm.subTitle,\n \"error\": _vm.formError\n }\n }), (!_vm.expired) ? _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmit.apply(null, arguments)\n }\n }\n }, [(_vm.showNameInputs) ? _c('div', [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('div', {\n staticClass: \"w-input\"\n }, [_c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"firstName\"\n }\n }, [_vm._v(\"First Name\")]), _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.user.firstName),\n expression: \"user.firstName\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"firstName\",\n \"type\": \"text\",\n \"required\": \"required\"\n },\n domProps: {\n \"value\": (_vm.user.firstName)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.$set(_vm.user, \"firstName\", $event.target.value)\n }\n }\n })])]), _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('div', {\n staticClass: \"w-input\"\n }, [_c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"lastName\"\n }\n }, [_vm._v(\"Last Name\")]), _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.user.lastName),\n expression: \"user.lastName\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"lastName\",\n \"type\": \"text\",\n \"required\": \"required\"\n },\n domProps: {\n \"value\": (_vm.user.lastName)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.$set(_vm.user, \"lastName\", $event.target.value)\n }\n }\n })])])]) : _vm._e(), (_vm.isProductChat) ? _c('div', [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('div', {\n staticClass: \"w-input\"\n }, [_c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"chatHandle\"\n }\n }, [_vm._v(\"Chat Handle\")]), _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.user.chatHandle),\n expression: \"user.chatHandle\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"chatHandle\",\n \"type\": \"text\",\n \"required\": \"required\"\n },\n domProps: {\n \"value\": (_vm.user.chatHandle)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.$set(_vm.user, \"chatHandle\", $event.target.value)\n }\n }\n })])])]) : _vm._e(), _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--password\"\n }, [_c('password-input', {\n attrs: {\n \"label\": \"Password\",\n \"autocomplete\": \"new-password\",\n \"required\": \"required\"\n },\n model: {\n value: (_vm.user.password),\n callback: function($$v) {\n _vm.$set(_vm.user, \"password\", $$v)\n },\n expression: \"user.password\"\n }\n })], 1), _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button\",\n class: {\n 'w-button--gray': !_vm.canSubmit, 'w-button--blue': _vm.canSubmit\n },\n attrs: {\n \"type\": \"submit\",\n \"disabled\": !_vm.canSubmit\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Get started\")])])])]) : _vm._e(), (_vm.expired) ? _c('form', {\n staticClass: \"w-login-form\"\n }, [_vm._m(0), _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('router-link', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"to\": {\n path: _vm.loginLink,\n query: _vm.$route.query\n },\n \"tag\": \"button\",\n \"type\": \"button\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Log in\")])])], 1)]) : _vm._e()], 1) : _vm._e()], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"Invite code is not valid, it may have expired or has already been used.\\nPlease request a new invitation or try to log in.\")])])\n}]}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-46d415d5\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/pages/AcceptInvite/AcceptInvite.vue\n// module id = 597\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"standard-form\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reset\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [(_vm.state === 'company-info') ? _c('company-info', {\n attrs: {\n \"default-info\": _vm.companyInfo\n },\n on: {\n \"saved\": _vm.onSubmit\n }\n }) : _vm._e(), (_vm.state === 'gdpr-consent') ? _c('gdpr-consent', {\n on: {\n \"seen\": _vm.onSubmit\n }\n }) : _vm._e(), (_vm.state === 'app-consent') ? _c('app-consent', {\n attrs: {\n \"code\": _vm.code,\n \"app\": _vm.app\n }\n }) : _vm._e(), (_vm.state === 'persona-capture') ? _c('persona-capture', {\n attrs: {\n \"code\": _vm.code,\n \"app\": _vm.app\n },\n on: {\n \"saved\": _vm.onSubmit\n }\n }) : _vm._e(), (_vm.state === 'select-account') ? _c('div', {\n staticClass: \"login-form\"\n }, [_c('account-list', {\n attrs: {\n \"accounts\": _vm.accounts\n },\n on: {\n \"account-selected\": _vm.onAccountSelected\n }\n }), _c('div', {\n staticClass: \"w-page-footer w-page-footer--mb\"\n }, [_c('button', {\n staticClass: \"w-button w-button--link\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": _vm.reset\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Return to login\")])])])], 1) : _vm._e(), (_vm.state === 'app-success') ? _c('div', {\n staticClass: \"app-success\"\n }, [_c('form', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"Login successful\")]), _c('div', {\n staticClass: \"auth-token\",\n staticStyle: {\n \"display\": \"none\"\n }\n }, [_vm._v(_vm._s(_vm.code))])])])]) : _vm._e(), (_vm.state === 'normal') ? _c('div', {\n staticClass: \"login-form\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title,\n \"error\": _vm.formError\n }\n }), (_vm.allowStandardLogin) ? _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmit.apply(null, arguments)\n }\n }\n }, [(_vm.state === 'normal') ? _c('div', {\n staticClass: \"login-fields\"\n }, [_c('div', {\n staticClass: \"w-login-form__row w-login-form__row--email\"\n }, [_c('div', {\n staticClass: \"w-input\"\n }, [_c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"loginemail\"\n }\n }, [_vm._v(\"Email address\")]), ((_vm.loginType === 'account' || _vm.password === 'xxx' ? 'text' : 'email') === 'checkbox') ? _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.email),\n expression: \"email\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"loginemail\",\n \"placehoder\": \"\",\n \"autocomplete\": _vm.isEnterprise ? 'off' : 'username',\n \"required\": \"required\",\n \"type\": \"checkbox\"\n },\n domProps: {\n \"checked\": Array.isArray(_vm.email) ? _vm._i(_vm.email, null) > -1 : (_vm.email)\n },\n on: {\n \"change\": function($event) {\n var $$a = _vm.email,\n $$el = $event.target,\n $$c = $$el.checked ? (true) : (false);\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v);\n if ($$el.checked) {\n $$i < 0 && (_vm.email = $$a.concat([$$v]))\n } else {\n $$i > -1 && (_vm.email = $$a.slice(0, $$i).concat($$a.slice($$i + 1)))\n }\n } else {\n _vm.email = $$c\n }\n }\n }\n }) : ((_vm.loginType === 'account' || _vm.password === 'xxx' ? 'text' : 'email') === 'radio') ? _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.email),\n expression: \"email\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"loginemail\",\n \"placehoder\": \"\",\n \"autocomplete\": _vm.isEnterprise ? 'off' : 'username',\n \"required\": \"required\",\n \"type\": \"radio\"\n },\n domProps: {\n \"checked\": _vm._q(_vm.email, null)\n },\n on: {\n \"change\": function($event) {\n _vm.email = null\n }\n }\n }) : _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.email),\n expression: \"email\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"loginemail\",\n \"placehoder\": \"\",\n \"autocomplete\": _vm.isEnterprise ? 'off' : 'username',\n \"required\": \"required\",\n \"type\": _vm.loginType === 'account' || _vm.password === 'xxx' ? 'text' : 'email'\n },\n domProps: {\n \"value\": (_vm.email)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.email = $event.target.value\n }\n }\n })])]), _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--password\"\n }, [_c('password-input', {\n attrs: {\n \"label\": \"Password\",\n \"autocomplete\": _vm.isEnterprise ? 'off' : 'current-password',\n \"required\": \"required\"\n },\n model: {\n value: (_vm.password),\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })], 1), (_vm.showRememberMe || !_vm.inAppLogin) ? _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--remember\"\n }, [(_vm.showRememberMe) ? _c('label', {\n staticClass: \"w-checkbox\",\n attrs: {\n \"for\": \"rememberMe\"\n }\n }, [_c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.rememberMe),\n expression: \"rememberMe\"\n }],\n staticClass: \"w-checkbox__input\",\n attrs: {\n \"id\": \"rememberMe\",\n \"type\": \"checkbox\"\n },\n domProps: {\n \"checked\": Array.isArray(_vm.rememberMe) ? _vm._i(_vm.rememberMe, null) > -1 : (_vm.rememberMe)\n },\n on: {\n \"change\": function($event) {\n var $$a = _vm.rememberMe,\n $$el = $event.target,\n $$c = $$el.checked ? (true) : (false);\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v);\n if ($$el.checked) {\n $$i < 0 && (_vm.rememberMe = $$a.concat([$$v]))\n } else {\n $$i > -1 && (_vm.rememberMe = $$a.slice(0, $$i).concat($$a.slice($$i + 1)))\n }\n } else {\n _vm.rememberMe = $$c\n }\n }\n }\n }), _c('span', {\n staticClass: \"w-checkbox__label\"\n }, [_vm._v(\"Remember me\")])]) : _vm._e(), (!_vm.inAppLogin) ? _c('router-link', {\n attrs: {\n \"to\": {\n path: _vm.forgotPasswordLink,\n query: Object.assign(_vm.$route.query, {\n email: _vm.email\n })\n }\n }\n }, [_vm._v(\"Forgot password?\")]) : _vm._e()], 1) : _vm._e()]) : _vm._e(), _vm._m(0)]) : _vm._e(), _c('div', {\n staticClass: \"w-page-footer\"\n }, [(_vm.showGoogleSSO) ? _c('a', {\n staticClass: \"w-button\",\n attrs: {\n \"href\": _vm.googleSSOURL\n },\n on: {\n \"click\": _vm.onClickGoogleSSO\n }\n }, [_vm._m(1), _c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Log in with Google\")])]) : _vm._e(), (_vm.showSAML) ? _c('a', {\n staticClass: \"w-button w-button--link\",\n on: {\n \"click\": _vm.initSAML\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Single Sign On (SSO)\")])]) : _vm._e(), (_vm.startText) ? _c('div', {\n staticClass: \"w-page-footer__start-text\",\n domProps: {\n \"innerHTML\": _vm._s(_vm.startText)\n }\n }) : _vm._e()])], 1) : _vm._e(), (_vm.state === '2fa') ? _c('div', {\n staticClass: \"login-form__two-factor-auth\"\n }, [_c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmit.apply(null, arguments)\n }\n }\n }, [_c('page-header', {\n attrs: {\n \"title\": \"Two Factor Authentication\",\n \"subTitle\": \"Please enter your six-digit number from your authenticator app.\",\n \"error\": _vm.formError,\n \"hideable\": false\n }\n }), _c('div', {\n staticClass: \"w-auth-code w-input\"\n }, [_c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.twoFactorPasscode),\n expression: \"twoFactorPasscode\"\n }],\n staticClass: \"w-auth-code__input w-input__input\",\n attrs: {\n \"type\": \"text\",\n \"inputmode\": \"numeric\",\n \"pattern\": \"[0-9]*\",\n \"maxlength\": \"8\",\n \"placeholder\": \"Authentication Passcode\",\n \"autocomplete\": \"off\",\n \"required\": \"required\"\n },\n domProps: {\n \"value\": (_vm.twoFactorPasscode)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.twoFactorPasscode = $event.target.value\n }\n }\n })]), _vm._m(2), _c('div', {\n staticClass: \"w-page-footer\"\n }, [_c('button', {\n staticClass: \"w-button w-button--link\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": _vm.reset\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Cancel\")])])])], 1)]) : _vm._e(), (_vm.state === '2fa-setup') ? _c('tfa-setup', {\n attrs: {\n \"forced\": _vm.forced\n },\n on: {\n \"cancel\": _vm.reset,\n \"setup-complete\": _vm.onSubmit\n }\n }) : _vm._e()], 1) : _vm._e()], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"submit\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Log in\")])])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('span', {\n staticClass: \"w-button__icon\"\n }, [_c('img', {\n attrs: {\n \"src\": require(\"../../../../assets/images/google-logo-mini.png\"),\n \"alt\": \"Google\",\n \"width\": \"16\",\n \"height\": \"16\"\n }\n })])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"submit\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Log in\")])])])])\n}]}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-4a586067\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/sections/Login/StandardForm/StandardForm.vue\n// module id = 598\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-product-list\"\n }, _vm._l((_vm.productItems), function(product) {\n return _c('a', {\n key: product.code,\n staticClass: \"w-product-list__item\",\n attrs: {\n \"href\": product.url\n }\n }, [_c('img', {\n staticClass: \"w-product-list__item-image\",\n attrs: {\n \"src\": product.logoUrl\n }\n }), _vm._v(\" \"), _c('div', {\n staticClass: \"w-product-list__item-content\"\n }, [_c('h5', {\n staticClass: \"w-product-list__item--title\"\n }, [_vm._v(_vm._s(product.title))]), _vm._v(\" \"), _c('div', {\n staticClass: \"w-product-list__item--description\"\n }, [_vm._v(_vm._s(product.description))])])])\n }), 0)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-57946abe\",\"hasScoped\":false}!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/widgets/ProductList.vue\n// module id = 599\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return (_vm.isLoading) ? _c('div', {\n staticClass: \"loading\"\n }, [_vm._m(0), (_vm.showTryAgain) ? _c('div', {\n staticClass: \"try-again\"\n }, [_c('div', {\n staticClass: \"try-again__link\"\n }, [_c('button', {\n staticClass: \"w-button w-button--link\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function($event) {\n return _vm.$emit('reset')\n }\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Try again\")])])]), (_vm.inAppLogin) ? _c('div', {\n staticClass: \"try-again__link\"\n }, [_c('button', {\n staticClass: \"w-button w-button--link\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": _vm.onCancel\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Cancel\")])])]) : _vm._e()]) : _vm._e()]) : _vm._e()\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-preloader\"\n }, [_c('div', {\n staticClass: \"w-preloader__spinner--large\"\n })])\n}]}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-6080515a\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/widgets/Loading/Loading.vue\n// module id = 600\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"gdpr-consent\"\n }, [_c('page-header', {\n attrs: {\n \"title\": \"We're Updating How We Manage Data\"\n }\n }), _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.$emit('seen')\n }\n }\n }, [_vm._m(0), _vm._m(1), _vm._m(2), _vm._m(3)])], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"We really appreciate you using our Teamwork.com collaboration\\n products to power your business. Your success is important to us\\n and we are constantly striving to improve our products performance\\n and enable better productivity for all our customers.\\n As part of this improvement we have made some important changes to\\n how we protect data within Teamwork.com and we want to share these with you.\")])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"We would like to share with you our updated \"), _c('a', {\n attrs: {\n \"href\": \"https://www.teamwork.com/privacy-statement\",\n \"target\": \"_blank\"\n }\n }, [_vm._v(\"Privacy Statement\")]), _vm._v(\". We are committed to the highest standards of data security\\n & management and all our processes and systems have been\\n updated to include the new provisions of GDPR.\")])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"The new practices came into effect on \"), _c('strong', [_vm._v(\"May 25, 2018\")]), _vm._v(\". If you have any questions about these changes please reach out to us at \"), _c('a', {\n attrs: {\n \"href\": \"mailto:privacy@teamwork.com\"\n }\n }, [_vm._v(\"privacy@teamwork.com\")]), _vm._v(\".\")])])\n},function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"submit\",\n \"autofocus\": \"autofocus\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"OK\")])])])\n}]}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-64aeb376\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/sections/GDPRConsent/GDPRConsent.vue\n// module id = 601\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', [(_vm.isLoading) ? _c('Loading', {\n attrs: {\n \"is-loading\": \"\"\n }\n }) : [_c('div', {\n staticClass: \"content\"\n }, [_c('img', {\n staticClass: \"image\",\n attrs: {\n \"src\": _vm.stateContent[_vm.state].image\n }\n }), _vm._v(\" \"), _c('h1', {\n staticClass: \"header\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.stateContent[_vm.state].headerText) + \"\\n \")]), _vm._v(\" \"), _c('p', {\n staticClass: \"body-text\",\n domProps: {\n \"innerHTML\": _vm._s(_vm.stateContent[_vm.state].bodyText)\n }\n }), _vm._v(\" \"), (_vm.stateContent[_vm.state].footerText) ? _c('strong', {\n staticClass: \"footer-text\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.stateContent[_vm.state].footerText) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), (_vm.stateContent[_vm.state].nextText) ? _c('p', {\n staticClass: \"body-text\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.stateContent[_vm.state].nextText) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), _c('div', {\n staticClass: \"actions\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue continue-cta\",\n class: {\n 'w-button--gray': _vm.isCTALoading\n },\n attrs: {\n \"disabled\": _vm.isCTALoading,\n \"data-identifier\": _vm.stateContent[_vm.state].dataIdentifier\n },\n on: {\n \"click\": _vm.stateContent[_vm.state].ctaAction\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(_vm._s(_vm.stateContent[_vm.state].ctaText))])])]), _vm._v(\" \"), (_vm.errorMessage) ? _c('div', {\n staticClass: \"error-message\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.errorMessage) + \"\\n \")]) : _vm._e()])]], 2)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-6513d779\",\"hasScoped\":true}!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/sections/EmailValidation/EmailValidation.vue\n// module id = 602\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', [(_vm.isLoading) ? _c('Loading', {\n attrs: {\n \"is-loading\": \"\"\n }\n }) : [_c('h1', {\n staticClass: \"persona-view-header\"\n }, [_vm._v(\"\\n Excuse us for jumping in... we have a quick question. Don’t worry, we won’t ask again.\\n \")]), _vm._v(\" \"), _c('h3', [_vm._v(\"How would you best describe your role?\")]), _vm._v(\" \"), _c('div', {\n staticClass: \"persona-view-radio-group\",\n attrs: {\n \"role\": \"radiogroup\",\n \"aria-label\": 'Select your default project view'\n }\n }, _vm._l((_vm.personasList), function(persona, index) {\n return _c('div', {\n key: (\"persona-view-option-\" + index),\n ref: (\"persona-view-option-\" + index),\n refInFor: true,\n staticClass: \"persona-view__item\",\n class: {\n 'persona-view__item--selected': persona.value === _vm.selectedPersona\n },\n attrs: {\n \"role\": \"radio\",\n \"aria-checked\": persona.value === _vm.selectedPersona,\n \"tabindex\": \"0\",\n \"aria-label\": persona.description,\n \"data-identifier\": persona.value\n },\n on: {\n \"click\": function($event) {\n return _vm.onSelect(persona.value)\n },\n \"keyup\": function($event) {\n if (!$event.type.indexOf('key') && _vm._k($event.keyCode, \"enter\", 13, $event.key, \"Enter\")) { return null; }\n return _vm.onSelect(persona.value)\n }\n }\n }, [_c('div', {\n staticClass: \"persona-view-icon-wrapper\",\n class: {\n 'persona-view__item-text--selected': persona.value === _vm.selectedPersona\n }\n }, [(persona.value === _vm.selectedPersona) ? _c('img', {\n staticClass: \"persona-view__item-check\",\n attrs: {\n \"src\": _vm.checkIcon\n }\n }) : _vm._e(), _vm._v(\" \"), _c('img', {\n staticClass: \"persona-view__item-icon\",\n attrs: {\n \"src\": persona.icon\n }\n }), _vm._v(\" \"), _c('label', {\n staticClass: \"persona-view__item-text\"\n }, [_vm._v(_vm._s(persona.label))]), _vm._v(\" \"), _c('label', {\n staticClass: \"persona-view__item-text-description\"\n }, [_vm._v(_vm._s(persona.description))])])])\n }), 0), _vm._v(\" \"), (_vm.errorMessage) ? _c('div', {\n staticClass: \"error-message\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.errorMessage) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), _c('p', {\n staticClass: \"persona-view-info\"\n }, [_vm._v(\"\\n We use this information to personalize your\\n experience, tailoring it to suit your needs perfectly.\\n \")]), _vm._v(\" \"), _c('div', {\n staticClass: \"persona-view__actions\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue persona-view__submit\",\n attrs: {\n \"data-identifier\": \"persona-submit\"\n },\n on: {\n \"click\": _vm.onSubmit\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Next\")])])])]], 2)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-67e314e6\",\"hasScoped\":true}!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/sections/PersonaCapture/PersonaCapture.vue\n// module id = 603\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"saml-starter\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title\n }\n }), _c('form', {\n staticClass: \"w-login-form w-login-form--sso\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmit.apply(null, arguments)\n }\n }\n }, [_vm._m(0)]), _c('div', {\n staticClass: \"w-page-footer\"\n }, [(_vm.allowStandardLogin) ? _c('button', {\n staticClass: \"w-button w-button--link\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function($event) {\n return _vm.$store.commit('setLoginState', 'standard')\n }\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Standard login\")])]) : _vm._e()])], 1) : _vm._e()], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"submit\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Single Sign On\")])])])\n}]}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-69676b66\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/sections/Login/SAMLStarter/SAMLStarter.vue\n// module id = 604\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-success\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title\n }\n }), _c('div', {\n staticClass: \"content\"\n }, [_c('form', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"Login successful\")]), _c('div', {\n staticClass: \"auth-token\",\n staticStyle: {\n \"display\": \"none\"\n }\n }, [_vm._v(_vm._s(_vm.code))])])])])], 1)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-6ed0e086\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/pages/Success/Success.vue\n// module id = 605\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-token-auth\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [(_vm.state === 'company-info') ? _c('company-info', {\n attrs: {\n \"default-info\": _vm.companyInfo\n },\n on: {\n \"saved\": _vm.postSAMLAuth\n }\n }) : _vm._e(), (_vm.state === 'gdpr-consent') ? _c('gdpr-consent', {\n on: {\n \"seen\": _vm.postSAMLAuth\n }\n }) : _vm._e(), (_vm.state === 'app-consent') ? _c('app-consent', {\n attrs: {\n \"code\": _vm.code,\n \"app\": _vm.app\n }\n }) : _vm._e(), (_vm.state === 'normal') ? _c('div', {\n staticClass: \"content\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title\n }\n }), _c('form', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [_c('p', [_vm._v(\"Login successful\")]), _c('div', {\n staticClass: \"auth-token\",\n staticStyle: {\n \"display\": \"none\"\n }\n }, [_vm._v(_vm._s(_vm.code))])])])], 1) : _vm._e()], 1) : _vm._e()], 1)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-74cda355\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/pages/SAMLAuth/SAMLAuth.vue\n// module id = 606\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-reset-password\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.title,\n \"subTitle\": _vm.subTitle,\n \"error\": _vm.formError\n }\n }), _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmitReset.apply(null, arguments)\n }\n }\n }, [(_vm.state === 'normal') ? _c('div', {\n staticClass: \"password-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row w-login-form__row--email\"\n }, [_c('password-input', {\n attrs: {\n \"label\": \"New password\",\n \"autocomplete\": \"new-password\",\n \"required\": \"required\"\n },\n model: {\n value: (_vm.password),\n callback: function($$v) {\n _vm.password = $$v\n },\n expression: \"password\"\n }\n })], 1), _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button\",\n class: {\n 'w-button--gray': !_vm.canSubmit, 'w-button--blue': _vm.canSubmit\n },\n attrs: {\n \"type\": \"submit\",\n \"disabled\": !_vm.canSubmit\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Set new password\")])])])]) : _vm._e(), (_vm.state === 'success') ? _c('div', {\n staticClass: \"reset-success\"\n }, [_c('ul', [(_vm.apps.projects) ? _c('li', [_c('a', {\n attrs: {\n \"href\": _vm.siteURL\n }\n }, [_vm._v(\"Continue to Teamwork\")])]) : _vm._e(), (_vm.apps.desk) ? _c('li', [_c('a', {\n attrs: {\n \"href\": _vm.siteURL + 'desk/'\n }\n }, [_vm._v(\"Continue to Teamwork Desk\")])]) : _vm._e(), (_vm.apps.chat) ? _c('li', [_c('a', {\n attrs: {\n \"href\": _vm.siteURL + 'chat/'\n }\n }, [_vm._v(\"Continue to Teamwork Chat\")])]) : _vm._e(), (_vm.apps.spaces) ? _c('li', [_c('a', {\n attrs: {\n \"href\": _vm.siteURL + 'spaces/'\n }\n }, [_vm._v(\"Continue to Teamwork Spaces\")])]) : _vm._e(), (_vm.apps.crm) ? _c('li', [_c('a', {\n attrs: {\n \"href\": _vm.siteURL + 'crm/'\n }\n }, [_vm._v(\"Continue to Teamwork CRM\")])]) : _vm._e()])]) : _vm._e()])], 1) : _vm._e()], 1)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-7f21a68b\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/pages/ResetPassword/ResetPassword.vue\n// module id = 607\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', [(_vm.isLoading) ? _c('loading', {\n attrs: {\n \"is-loading\": \"is-loading\"\n }\n }) : (_vm.isOnBackupCodesScreen) ? [_c('p', {\n staticClass: \"section\"\n }, [_vm._v(\"Setup complete!\")]), _c('p', {\n staticClass: \"section\"\n }, [_vm._v(\"Please write down these backup codes. They allow you to restore access to your account if you \\nlose access to your two-factor authentication codes. You \\ncan then enter one of these instead. Note that eaach of these \\ncodes can only be used once.\")]), _c('pre', {\n staticClass: \"section backup-codes\"\n }, [_vm._v(_vm._s(_vm.backupCodesFormatted))]), _c('button', {\n staticClass: \"w-button w-button--blue\",\n on: {\n \"click\": function($event) {\n return _vm.$emit('setup-complete')\n }\n }\n }, [_vm._v(\"Ok\")])] : [(_vm.forced) ? _c('div', {\n staticClass: \"section\"\n }, [_c('p', [_vm._v(\"An administrator has enforced two factor authentication on this site. \")])]) : _vm._e(), _c('p', {\n staticClass: \"section\"\n }, [_vm._v(\"Two-factor authentication setup is required to proceed. Please download \"), _c('b', [_vm._v(\"Google Authenticator\")]), _vm._v(\" app for \"), _c('a', {\n attrs: {\n \"href\": \"https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2&hl=en\"\n }\n }, [_vm._v(\"Android \")]), _vm._v(\"or \"), _c('a', {\n attrs: {\n \"href\": \"https://itunes.apple.com/us/app/google-authenticator/id388497605\"\n }\n }, [_vm._v(\"iPhone\")]), _vm._v(\".\")]), (_vm.seed) ? _c('div', {\n staticClass: \"section\"\n }, [_c('p', [_vm._v(\"Enter the provided key into the app: \"), _c('b', {\n domProps: {\n \"textContent\": _vm._s(_vm.seed)\n }\n })])]) : _c('div', {\n staticClass: \"section\"\n }, [_c('p', [_vm._v(\"Scan the barcode with the app:\")]), _c('img', {\n staticClass: \"qr\",\n attrs: {\n \"src\": \"/launchpad/2fa/login/setup/qr\"\n }\n }), _c('p', [_vm._v(\"If you're unable to scan the barcode, you can \"), _c('a', {\n staticClass: \"seed-button\",\n on: {\n \"click\": _vm.getSeed\n }\n }, [_vm._v(\"enter the key manually\")]), _vm._v(\".\")])]), _c('p', {\n staticClass: \"section\"\n }, [_vm._v(\"After that, enter the 6-digit code that is shown in the app below:\")]), _c('div', {\n staticClass: \"w-input code-input\"\n }, [_c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"tfa-code\"\n }\n }, [_vm._v(\"Authentication code\")]), _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.codeModel),\n expression: \"codeModel\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"tfa-code\",\n \"autocomplete\": \"one-time-code\"\n },\n domProps: {\n \"value\": (_vm.codeModel)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.codeModel = $event.target.value\n }\n }\n })]), (_vm.errorMessage) ? _c('p', {\n staticClass: \"error is-invalid\"\n }, [_vm._v(\"Error: \" + _vm._s(_vm.errorMessage))]) : _vm._e(), _c('button', {\n staticClass: \"w-button w-button--blue\",\n on: {\n \"click\": _vm.setupTfa\n }\n }, [_vm._v(\"Verify\")]), _c('button', {\n staticClass: \"w-button w-button--link\",\n on: {\n \"click\": function($event) {\n return _vm.$emit('cancel')\n }\n }\n }, [_vm._v(\"Cancel\")])]], 2)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-81519574\",\"hasScoped\":true}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/sections/Login/TfaSetup.vue\n// module id = 608\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"marketing-content\",\n class: {\n 'marketing-content--loaded': _vm.story && !_vm.story.hidden && _vm.display\n }\n }, [_c('div', {\n staticClass: \"marketing-content__bg\"\n }), _vm._v(\" \"), (_vm.story) ? _c('div', {\n staticClass: \"marketing-content__wrap\"\n }, [(_vm.story.title) ? _c('h3', {\n staticClass: \"marketing-content__title\"\n }, [_vm._v(\"\\n \" + _vm._s(_vm.story.title) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), (_vm.story.image && _vm.story.image.filename) ? _c('img', {\n staticClass: \"marketing-content__picture\",\n attrs: {\n \"width\": \"500\",\n \"height\": \"347\",\n \"alt\": \"\",\n \"src\": ((_vm.story.image.filename) + \"/m/fit-in/1000x694/filters:format(webm):quality(90)\")\n }\n }) : _vm._e(), _vm._v(\" \"), _c('div', {\n staticClass: \"marketing-content__text\"\n }, [(_vm.story.firstParagraph) ? _c('p', [_vm._v(\"\\n \" + _vm._s(_vm.story.firstParagraph) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), _c('ul', [(_vm.story.bullet1) ? _c('li', [_vm._v(\"\\n \" + _vm._s(_vm.story.bullet1) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), (_vm.story.bullet2) ? _c('li', [_vm._v(\"\\n \" + _vm._s(_vm.story.bullet2) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), (_vm.story.bullet3) ? _c('li', [_vm._v(\"\\n \" + _vm._s(_vm.story.bullet3) + \"\\n \")]) : _vm._e()]), _vm._v(\" \"), (_vm.story.secondParagraph) ? _c('p', [_vm._v(\"\\n \" + _vm._s(_vm.story.secondParagraph) + \"\\n \")]) : _vm._e()])]) : _vm._e()])\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-8e143b26\",\"hasScoped\":true}!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/sections/MarketingContent/MarketingContent.vue\n// module id = 609\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-login\"\n }, [_c(_vm.loginState, {\n tag: \"component\"\n })], 1)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-9f627fee\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/pages/Login/Login.vue\n// module id = 610\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"b-app-structure\",\n class: [_vm.bodyClasses],\n attrs: {\n \"id\": \"app\"\n }\n }, [_c('div', {\n staticClass: \"b-app-structure__main\"\n }, [_c('section', {\n staticClass: \"b-login-holder\"\n }, [_c('div', {\n staticClass: \"w-app-login-logo\"\n }, [(_vm.loginType !== 'account' || _vm.allowBranding) ? _c('img', {\n staticClass: \"w-app-login-logo__image\",\n attrs: {\n \"src\": require(\"../assets/images/teamwork-logo.svg\"),\n \"alt\": \"Teamwork.com\"\n }\n }) : _vm._e()]), _c('loading', {\n attrs: {\n \"isLoading\": _vm.siteLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.siteLoading) ? _c('div', {\n staticClass: \"content\",\n class: {\n 'content-persona': _vm.isPersonaCapture, 'content-verify-email': _vm.isEmailValidation\n }\n }, [(_vm.siteNotFound && !_vm.fatalError) ? _c('site-not-found') : _vm._e(), (_vm.showSiteLogo) ? _c('div', {\n staticClass: \"w-app-login-site-logo\"\n }, [_c('img', {\n staticClass: \"w-app-login-site-logo__image\",\n attrs: {\n \"src\": _vm.siteLogo,\n \"alt\": _vm.siteName\n }\n })]) : _vm._e(), (!_vm.siteNotFound && _vm.fatalError) ? _c('error-message') : _vm._e(), (!_vm.siteNotFound && !_vm.fatalError) ? _c('router-view') : _vm._e()], 1) : _vm._e()], 1)]), (!_vm.isEmailValidation) ? _c('div', {\n staticClass: \"b-app-structure__secondary\"\n }, [(_vm.inGenericLogin) ? _c('div', {\n staticClass: \"b-app-structure__secondary-content\"\n }, [_c('p', [_vm._v(_vm._s(\"Don't have an account yet?\"))]), _vm._m(0)]) : _vm._e(), _c('MarketingContent', {\n attrs: {\n \"display\": _vm.displayMarketingContent\n }\n })], 1) : _vm._e()])\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('a', {\n staticClass: \"w-button\",\n attrs: {\n \"href\": \"https://www.teamwork.com/signup\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Sign up\")])])\n}]}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-a02523dc\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/App.vue\n// module id = 611\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"page-forgot-password\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [_c('page-header', {\n attrs: {\n \"title\": \"Recover password\",\n \"error\": _vm.formError\n }\n }), (!_vm.passwordReset) ? _c('form', {\n staticClass: \"w-login-form\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmit.apply(null, arguments)\n }\n }\n }, [_c('div', {\n staticClass: \"w-login-form__row w-login-form__row--email\"\n }, [_c('div', {\n staticClass: \"w-input\"\n }, [_c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"loginemail\"\n }\n }, [_vm._v(\"Email address\")]), _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.email),\n expression: \"email\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"loginemail\",\n \"type\": \"email\",\n \"placehoder\": \"\",\n \"autocomplete\": \"username\",\n \"required\": \"required\"\n },\n domProps: {\n \"value\": (_vm.email)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.email = $event.target.value\n }\n }\n })])]), _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button\",\n class: {\n 'w-button--gray': !_vm.canSubmit, 'w-button--blue': _vm.canSubmit\n },\n attrs: {\n \"type\": \"submit\",\n \"disabled\": !_vm.canSubmit\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Recover password\")])])])]) : _vm._e(), (_vm.passwordReset) ? _c('form', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [(_vm.loginType === 'account') ? _c('p', [_vm._v(\"Please check your email inbox and follow the instructions to reset your password.\")]) : _c('p', [_vm._v(\"If you have a Teamwork account you should receive an email from us.\\nPlease check your email inbox and follow the instructions to reset your password.\")])])]) : _vm._e(), _c('div', {\n staticClass: \"w-page-footer\"\n }, [_c('router-link', {\n staticClass: \"w-button w-button--link\",\n attrs: {\n \"to\": {\n path: _vm.loginLink,\n query: Object.assign(_vm.$route.query, {\n email: _vm.email\n })\n },\n \"tag\": \"button\",\n \"type\": \"button\"\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Return to login\")])])], 1)], 1) : _vm._e()], 1)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-b4f03096\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/pages/ForgotPassword/ForgotPassword.vue\n// module id = 612\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"saml-form\"\n }, [_c('loading', {\n attrs: {\n \"isLoading\": _vm.isLoading\n },\n on: {\n \"reset\": _vm.reload\n }\n }), (!_vm.isLoading) ? _c('div', {\n staticClass: \"content\"\n }, [_c('page-header', {\n attrs: {\n \"title\": \"Single Sign On\",\n \"subTitle\": \"Log in and let's get productive!\",\n \"error\": _vm.formError\n }\n }), _c('form', {\n staticClass: \"w-login-form w-login-form--sso\",\n on: {\n \"submit\": function($event) {\n $event.preventDefault();\n return _vm.onSubmit.apply(null, arguments)\n }\n }\n }, [_c('div', {\n staticClass: \"w-login-form__row w-login-form__row--email\"\n }, [_c('div', {\n staticClass: \"w-input\"\n }, [_c('label', {\n staticClass: \"w-input__label\",\n attrs: {\n \"for\": \"loginemail\"\n }\n }, [_vm._v(\"Email address\")]), _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: (_vm.email),\n expression: \"email\"\n }],\n staticClass: \"w-input__input\",\n attrs: {\n \"id\": \"loginemail\",\n \"type\": \"email\",\n \"placehoder\": \"\",\n \"autocomplete\": \"username\",\n \"required\": \"required\"\n },\n domProps: {\n \"value\": (_vm.email)\n },\n on: {\n \"input\": function($event) {\n if ($event.target.composing) { return; }\n _vm.email = $event.target.value\n }\n }\n })])]), _c('div', {\n staticClass: \"w-login-form__row w-login-form__row--action\"\n }, [_c('button', {\n staticClass: \"w-button\",\n class: {\n 'w-button--gray': !_vm.canSubmit, 'w-button--blue': _vm.canSubmit\n },\n attrs: {\n \"type\": \"submit\",\n \"disabled\": !_vm.canSubmit\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Log in\")])])])]), _c('div', {\n staticClass: \"w-page-footer\"\n }, [_c('button', {\n staticClass: \"w-button w-button--link\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function($event) {\n return _vm.$store.commit('setLoginState', 'standard')\n }\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Return to login\")])])])], 1) : _vm._e()], 1)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-c93d4d32\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/sections/Login/SAMLForm/SAMLForm.vue\n// module id = 613\n// module chunks = 1","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"error-message\"\n }, [_c('page-header', {\n attrs: {\n \"title\": _vm.error,\n \"subTitle\": _vm.message\n }\n }), _c('form', {\n staticClass: \"w-login-form\"\n }, [_c('div', {\n staticClass: \"w-login-form__row\"\n }, [(_vm.explanation) ? _c('div', {\n staticClass: \"explanation\"\n }, [_c('p', [_vm._v(_vm._s(_vm.explanationHTML))])]) : _vm._e(), (!_vm.explanation.length) ? _c('div', {\n staticClass: \"default-explanation\"\n }, [_c('p', [_vm._v(\"But don't panic, we are here to help...\")]), _vm._m(0)]) : _vm._e()])]), (_vm.inAppLogin) ? _c('div', {\n staticClass: \"w-page-footer\"\n }, [_c('button', {\n staticClass: \"w-button w-button--blue\",\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function($event) {\n $event.preventDefault();\n return _vm.onClickBackToApp.apply(null, arguments)\n }\n }\n }, [_c('span', {\n staticClass: \"w-button__label\"\n }, [_vm._v(\"Back to app\")])])]) : _vm._e()], 1)\n},staticRenderFns: [function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('p', [_vm._v(\"If something has gone wrong and you're not sure why, just \"), _c('a', {\n attrs: {\n \"href\": \"https://www.teamwork.com/contact\",\n \"target\": \"_blank\"\n }\n }, [_vm._v(\"drop us a quick note\")]), _vm._v(\" and we will do our best to help.\")])\n}]}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-ed0e5426\",\"hasScoped\":false}!./~/vue-loader/lib/template-compiler/preprocessor.js?engine=pug!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/sections/ErrorMessage/ErrorMessage.vue\n// module id = 614\n// module chunks = 1"],"sourceRoot":""}