{"version":3,"sources":["assets/fti-logo.png","logo.svg","util.js","Login/index.js","App.js","serviceWorker.js","index.js"],"names":["module","exports","__webpack_require__","p","setCookie","name","value","days","expires","date","Date","setTime","getTime","toUTCString","document","cookie","getCookie","nameEQ","ca","split","i","length","c","charAt","substring","indexOf","FormItem","Form","Item","DOMAIN_COOKIE","USERNAME_COOKIE","AuthType","LOCAL","SAML","OAUTH","hasErrors","fieldsError","Object","keys","some","field","maybeRenderError","message","react_default","a","createElement","className","Footer","href","icon","type","getFullYear","ItemWrapper","_ref","children","UserName","_ref2","getFieldDecorator","form","Login_ItemWrapper","rules","required","input","size","prefix","placeholder","Domain","_ref3","Password","_ref4","UserPreview","_ref5","onChangeClick","domain","username","onClick","style","marginTop","CredentialsForm","state","submitting","render","_this$props","_this","props","getFieldsError","errorMessage","onAcceptEula","showEula","Login_UserPreview","Login_Password","es_form","es_button","htmlType","loading","disabled","Login_Eula","Component","DomainForm","_this2$props","_this2","Login_Domain","Login_UserName","Eula","_ref6","marginBottom","es_checkbox","onChange","target","SamlForm","_this3$props","_this3","Index","showingDomainForm","authType","redirectUrl","loadingDomain","acceptedEula","componentDidMount","_this4","fetchAuthMethod","setState","onTabChange","handleSubmit","e","preventDefault","handleDomainSubmit","validateFields","err","data","getFieldValue","eula","axios","post","then","response","_response$data","redirect","access_token","refresh_token","url","concat","window","location","protocol","console","log","catch","error","reasons","handleSamlSubmit","prepareSamlRequest","handleAcceptEula","checked","get","resp","redirect_url","auth_type","accepted_eula","_this4$props","handleChangeDomainClick","renderForm","_this4$props2","_this4$props2$form","_this4$state","height","paddingTop","spin","Login_DomainForm","Login_SamlForm","Login_CredentialsForm","renderEula","src","frameBorder","border","padding","fontSize","color","renderLoginForm","onSubmit","alt","logo","this","Login_Footer","create","App","src_Login","Boolean","hostname","match","ReactDOM","src_App","getElementById","navigator","serviceWorker","ready","registration","unregister"],"mappings":"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","file":"static/js/main.b5f4c83e.chunk.js","sourcesContent":["module.exports = __webpack_public_path__ + \"static/media/fti-logo.97d9b656.png\";","module.exports = __webpack_public_path__ + \"static/media/logo.5d5d9eef.svg\";","export function setCookie(name,value,days) {\n var expires = \"\";\n if (days) {\n var date = new Date();\n date.setTime(date.getTime() + (days*24*60*60*1000));\n expires = \"; expires=\" + date.toUTCString();\n }\n document.cookie = name + \"=\" + (value || \"\") + expires + \"; path=/\";\n}\n\nexport function getCookie(name) {\n var nameEQ = name + \"=\";\n var ca = document.cookie.split(';');\n for(var i=0;i < ca.length;i++) {\n var c = ca[i];\n while (c.charAt(0)==' ') c = c.substring(1,c.length);\n if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);\n }\n return null;\n}\n\nexport function eraseCookie(name) { \n document.cookie = name+'=; Max-Age=-99999999;'; \n}","import React, { Component } from 'react';\nimport axios from 'axios';\nimport { Form, Input, Icon, Button, Spin, Checkbox } from 'antd';\nimport './index.scss';\nimport logo from \"../assets/fti-logo.png\";\nimport {getCookie, setCookie} from '../util';\n\nconst FormItem = Form.Item;\n\nconst DOMAIN_COOKIE = 'icecloud_auth_domain';\nconst USERNAME_COOKIE = 'icecloud_auth_username';\nconst AUTH_METHOD_COOKIE = 'icecloud_auth_method';\n\nconst AuthType = {\n LOCAL: 0,\n SAML: 1,\n OAUTH: 2,\n}\n\nfunction getParameterByName(name, url) {\n if (!url) url = window.location.href;\n name = name.replace(/[\\[\\]]/g, '\\\\$&');\n var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'),\n results = regex.exec(url);\n if (!results) return null;\n if (!results[2]) return '';\n return decodeURIComponent(results[2].replace(/\\+/g, ' '));\n}\n\n\nconst hasErrors = (fieldsError) => {\n return Object.keys(fieldsError).some(field => fieldsError[field]);\n};\n\n\nconst maybeRenderError = message => {\n if (!message) return null;\n return (\n
\n {message}\n
\n )\n};\n\n\nconst Footer = () => (\n
\n
\n Help\n Privacy\n Terms\n
\n
\n Copyright {new Date().getFullYear()} FinTech Innovations\n
\n
\n);\n\nconst ItemWrapper = ({children}) => (\n \n {children}\n \n);\n\n\nconst UserName = ({form: { getFieldDecorator }}) => (\n \n {getFieldDecorator('username', {rules: [{ required: true, message: 'Please enter your email address' }]})(\n } placeholder=\"email address\" />)}\n \n);\n\nconst Domain = ({form: { getFieldDecorator }}) => (\n \n {getFieldDecorator('domain', {rules: [{ required: true, message: 'Please enter your organization\\'s domain' }]})(\n } placeholder=\"domain\" />)}\n \n);\n\nconst Password = ({form: { getFieldDecorator }}) => (\n \n {getFieldDecorator('password', {rules: [{ required: true, message: 'Please enter your password' }]})(\n } placeholder=\"password\" />)}\n \n);\n\n\nconst UserPreview = ({onChangeClick, domain, username}) => (\n
\n Change\n
\n Domain Id:{domain}\n
\n
\n Username:{username}\n
\n
\n);\n\n\nclass CredentialsForm extends Component {\n \n state = {\n submitting: false,\n }\n \n render = () => {\n const {\n form: { getFieldsError}, form, domain,\n username, onChangeClick, errorMessage, onAcceptEula, showEula\n } = this.props;\n const {submitting} = this.state;\n \n return (\n
\n \n \n {maybeRenderError(errorMessage)}\n \n \n \n Login\n \n \n {showEula && }\n
\n );\n }\n}\n\n\nclass DomainForm extends Component {\n state = {\n submitting: false,\n }\n \n render = () => {\n const { form: { getFieldsError}, form, errorMessage } = this.props;\n const {submitting} = this.state;\n \n return (\n
\n
Enter your domain id and username:
\n \n \n {maybeRenderError(errorMessage)}\n \n \n Submit\n \n \n
\n );\n }\n}\n\nconst Eula = ({onAcceptEula}) => (\n
\n \n I agree to the terms of the{' '}\n End User License Agreement\n \n
\n);\n\nclass SamlForm extends Component {\n state = {\n submitting: false,\n }\n \n render = () => {\n const { \n form: { getFieldsError}, form, errorMessage,\n username, domain, onChangeClick, onAcceptEula, showEula,\n } = this.props;\n const {submitting} = this.state;\n \n return (\n
\n \n {maybeRenderError(errorMessage)}\n \n \n Login with SSO\n \n \n {showEula && }\n
\n );\n }\n}\n\n\nclass Index extends Component {\n state = {\n submitting: false,\n showingDomainForm: true,\n authType: AuthType.LOCAL,\n redirectUrl: null,\n loadingDomain: true,\n showEula: false,\n acceptedEula: false,\n };\n \n componentDidMount = () => {\n const domain = getCookie(DOMAIN_COOKIE);\n const username = getCookie(USERNAME_COOKIE);\n if (domain && username && domain != '' && username != '') {\n this.fetchAuthMethod(domain, username); \n } else {\n this.setState({loadingDomain: false});\n }\n }\n\n onTabChange = type => {\n this.setState({ type });\n };\n\n handleSubmit = (e) => {\n e.preventDefault();\n \n if (this.state.showingDomainForm) {\n this.handleDomainSubmit();\n return;\n } else if (this.state.authType === AuthType.SAML) {\n this.handleSamlSubmit();\n return\n }\n \n this.props.form.validateFields((err, data) => {\n if (!err) {\n this.setState({submitting: true, errorMessage: null});\n \n let domain = this.props.form.getFieldValue('domain');\n if (!domain || domain === '') {\n domain = getCookie(DOMAIN_COOKIE);\n }\n \n let username = this.props.form.getFieldValue('username');\n if (!username || username === '') {\n username = getCookie(USERNAME_COOKIE);\n }\n \n data.domain = domain;\n data.username = username;\n data.eula = this.state.acceptedEula;\n\n axios.post('/login', data)\n .then((response) => {\n // handle success\n this.setState({submitting: false});\n\n const {redirect, access_token, refresh_token} = response.data;\n const url = `${window.location.protocol}//${redirect}/#a=${access_token}&r=${refresh_token}`;\n console.log('Should redirect');\n window.location = url;\n\n\n }).catch(error => {\n console.log('Failed to login');\n console.log(error);\n let message = 'An unknown error ocurred. Please contact support@fintechinnovations.com if this issue continues.';\n if (error.response) {\n console.log(error.response.data);\n message = error.response.data.reasons[0];\n }\n this.setState({submitting: false, errorMessage: message});\n });\n }\n });\n };\n \n handleSamlSubmit = () => {\n console.log('Redirecting to identity provider');\n this.prepareSamlRequest()\n }\n\n handleAcceptEula = e => {\n this.setState({\n acceptedEula: e.target.checked,\n });\n }\n \n prepareSamlRequest = () => {\n let domain = this.props.form.getFieldValue('domain');\n if (!domain || domain === '') {\n domain = getCookie(DOMAIN_COOKIE);\n }\n \n let username = this.props.form.getFieldValue('username');\n if (!username || username === '') {\n username = getCookie(USERNAME_COOKIE);\n }\n \n axios.get(`/saml?domain=${domain}&username=${username}&eula=${this.state.acceptedEula}`)\n .then((resp) => {\n console.log('Redirecting to SAML IDP');\n window.location.href = resp.data.redirect_url;\n }).catch(error => {\n console.log('Failed to prepare saml request');\n console.log(error);\n let message = 'An unknown error ocurred. Please contact support@fintechinnovations.com if this issue continues.';\n if (error.response) {\n console.log(error.response.data);\n message = error.response.data.error;\n }\n this.setState({submitting: false, errorMessage: message});\n });\n }\n \n fetchAuthMethod = (domain, username) => {\n axios.get(`/login/method?domain=${domain}&username=${username}`)\n .then((resp) => {\n // handle success\n console.log(resp);\n \n setCookie(DOMAIN_COOKIE, domain, 365);\n setCookie(USERNAME_COOKIE, username, 365);\n\n this.setState({\n showingDomainForm: false,\n authType: resp.data.auth_type,\n loadingDomain: false,\n showEula: !resp.data.accepted_eula,\n });\n }).catch(error => {\n console.log('Failed to fetch auth method');\n console.log(error);\n let message = 'An unknown error ocurred. Please contact support@fintechinnovations.com if this issue continues.';\n if (error.response) {\n console.log(error.response.data);\n message = error.response.data.message;\n }\n this.setState({submitting: false, errorMessage: message});\n });\n }\n \n handleDomainSubmit = () => {\n const { form: { getFieldValue}, form } = this.props;\n \n const domain = getFieldValue('domain');\n const username = getFieldValue('username');\n console.log(`Should set domain, username to: ${domain}, ${username}`);\n this.fetchAuthMethod(domain, username);\n }\n \n handleChangeDomainClick = () => {\n this.setState({\n showingDomainForm: true,\n });\n }\n \n renderForm = () => {\n const { form: { getFieldsError, getFieldValue}, form } = this.props;\n const {errorMessage, showingDomainForm, authType, loadingDomain, showEula} = this.state;\n \n if (loadingDomain) {\n return
\n }\n \n let domain = getFieldValue('domain');\n if (!domain || domain === '') {\n domain = getCookie(DOMAIN_COOKIE);\n }\n \n let username = getFieldValue('username');\n if (!username || username === '') {\n username = getCookie(USERNAME_COOKIE);\n }\n \n if (showingDomainForm) {\n return \n } else if (authType === AuthType.SAML) {\n return \n }\n return \n }\n \n renderEula = () => {\n return (\n
\n

End User License Agreement

\n