in sample/src/screens/CreateScreen.js [29:103]
export default function CreateScreen({ navigation }) {
const [datetime, setDatetime] = useState();
const [mode, setMode] = useState('datetime');
const [isDatePickerVisible, setDatePickerVisibility] = useState(false);
const showDatePicker = () => {
setDatePickerVisibility(true);
};
const hideDatePicker = () => {
setDatePickerVisibility(false);
};
const handleConfirm = (datetime) => {
setDatetime(datetime);
hideDatePicker();
};
let user = getCognitoUser();
const { attributes } = user;
let title = useFormInput();
let description = useFormInput();
const createNewEvent = async () => {
if (!title.value || !description.value) {
alert('Pls fill up the information');
return;
}
const input = {
input: {
startAt: Date.parse(datetime) / 1000,
title: title.value,
description: description.value,
eventUserId: attributes.sub,
status: 'CREATED',
},
};
let result = null;
try {
result = await API.graphql(graphqlOperation(createEvent, input));
} catch (e) {
console.log(e);
}
navigation.navigate('Home', { refreshList: true });
await Analytics.updateEndpoint({
userAttributes: {
latestEvent: [title.value],
},
}).then(() => {
console.log('createdEvent');
Analytics.record({
name: 'createdEvent',
attributes: {
username: user.username,
userId: user.attributes.sub,
},
});
});
return result.data;
};
return (
<Container>
<Header>
<Left />
<Body>
<Title>Home</Title>
</Body>
<Right>
<Button transparent onPress={() => navigation.goBack()}>