import React, { useState } from 'react'; import '../common/styles.css'; import '../../styles/base.scss'; import { Box, Button, Flashbar, Grid, HelpPanel, SpaceBetween } from "@cloudscape-design/components"; import { Navigation } from "../common/navigation"; import { CustomAppLayout } from "../common/app-layout"; import Input from "@cloudscape-design/components/input"; import { Auth } from "aws-amplify"; import { useHistory } from "react-router-dom"; import { useDispatch } from "react-redux"; import { v4 as uuid4 } from "uuid"; export default class SignUpView extends React.Component { render() { return ( } navigationOpen={false} content={} contentType="default" tools={} toolsHide={false} // labels={appLayoutNavigationLabels} /> ); } } export const ToolsContent = () => ( ###APP_TITLE###} footer={ <> } >

This solution demonstrates ###APP_TITLE###.

); // The content in the main content area of the App layout export function SignUpContent() { const history = useHistory(); const [user, setUser] = React.useState(""); // const [phone, setPhone] = React.useState(""); const [password, setPassword] = React.useState(""); const [notifications, setNotifications] = useState([]); const approved_participants = ["morganstanley.com", "ms.com", "amazon.com"] const addNotification = (message: string) => { const list = [] for (let notification of notifications) { list.push(notification) } list.push({ type: 'error', content: message, statusIconAriaLabel: 'error', dismissLabel: 'Dismiss all messages', dismissible: true, onDismiss: () => setNotifications([]), id: uuid4(), }); setNotifications(list); }; const signup = () => { try { if (is_approved_participant(approved_participants, user)) { Auth.signUp({ username: user, password: password, attributes: { email: user } } ).then((result) => { history.push("/ConfirmSignup"); }).catch(error => { console.log("Got error in signup function"); console.log(error); addNotification("Error during sign up.") }); } else { addNotification("Not an approved participant.") } } catch (error) { console.log("Got error in signup function"); console.log(error); } } const confirmSignup = () => { history.push("/ConfirmSignUp"); } return (
###APP_TITLE### This solution demonstrates ###APP_TITLE###.
User Email: setUser(detail.value)} value={user} />
Password: setPassword(detail.value)} value={password} />
); } function is_approved_participant(participants: string[], participant: string) { for (let item of participants) { if (participant.endsWith(item)) { return true; } } return false; }