Skip to content

Instantly share code, notes, and snippets.

View SahanAmarsha's full-sized avatar
🏠
Working from home

Sahan Amarsha SahanAmarsha

🏠
Working from home
View GitHub Profile
@SahanAmarsha
SahanAmarsha / submitHandler.js
Created February 28, 2021 20:50
submitHandler.js
const submitHandler = async (event) => {
event.preventDefault();
const currentUser = await Auth.currentAuthenticatedUser();
try {
const result = await API.graphql({
query: createUser,
variables: {
input: {
id: currentUser.attributes.sub,
firstName: firstName,
@SahanAmarsha
SahanAmarsha / getServerSideProps.js
Created February 28, 2021 20:55
getServerSideProps.js
import { getUser } from "../src/graphql/queries";
import {withSSRContext} from "aws-amplify";
export async function getServerSideProps({ req, res }) {
const { Auth, API } = withSSRContext({ req });
try {
const user = await Auth.currentAuthenticatedUser();
const response = await API.graphql({
query: getUser,
variables: { id: user.attributes.sub },
});
@SahanAmarsha
SahanAmarsha / index.js
Created January 23, 2022 10:50
Index.js File after configuring Amplify
import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import App from './App';
import Amplify from 'aws-amplify';
import "@aws-amplify/ui-react/styles.css";
import {AmplifyProvider} from "@aws-amplify/ui-react";
import awsConfig from './aws-exports';
Amplify.configure(awsConfig);
@SahanAmarsha
SahanAmarsha / App.js
Created January 23, 2022 11:48
App.js file after importing Navbar component
import logo from './logo.svg';
import './App.css';
import {NavBar} from "./ui-components";
function App() {
return (
<div className="App">
<NavBar/>
<header className="App-header">
<h1>Car Rental App</h1>
@SahanAmarsha
SahanAmarsha / App.js
Last active January 23, 2022 12:56
App.js after extending the code via override props
import { NavBar } from "./ui-components";
import "./App.css";
function App() {
const navbarOverrides = {
"Flex.Flex[0].Image[0]": {
src: "https://img.icons8.com/color/50/000000/car--v1.png", // app logo
},
"Flex.Flex[2].Image[0]": {
src: "https://www.bootdey.com/app/webroot/img/Content/avatar/avatar1.png", // profile image
@SahanAmarsha
SahanAmarsha / App.js
Created January 23, 2022 18:30
Import NewCars collection to our React app
import { NavBar, NewCars } from "./ui-components";
import "./App.css";
function App() {
const navbarOverrides = {
"Flex.Flex[0].Image[0]": {
src: "https://img.icons8.com/color/50/000000/car--v1.png", // app logo
},
"Flex.Flex[2].Image[0]": {
src: "https://www.bootdey.com/app/webroot/img/Content/avatar/avatar1.png", // profile image
@SahanAmarsha
SahanAmarsha / App.js
Created January 23, 2022 19:15
App.js file after adding withAuthenticator
import { NavBar, NewCars } from "./ui-components";
import {withAuthenticator } from '@aws-amplify/ui-react';
import "./App.css";
function App() {
const navbarOverrides = {
"Flex.Flex[0].Image[0]": {
src: "https://img.icons8.com/color/50/000000/car--v1.png", // app logo
},
"Flex.Flex[2].Image[0]": {
@SahanAmarsha
SahanAmarsha / App.js
Last active January 24, 2022 18:34
App.js after adding signOut functionality
import { NavBar, NewCars } from "./ui-components";
import { withAuthenticator } from "@aws-amplify/ui-react";
import "./App.css";
// retrieving signOut function, and user data
function App({ user, signOut }) {
const navbarOverrides = {
"Flex.Flex[0].Image[0]": {
src: "https://img.icons8.com/color/50/000000/car--v1.png", // app logo
@SahanAmarsha
SahanAmarsha / App.js
Last active January 24, 2022 18:35
App.js after adding AddCar component
import { AddCar, NavBar, NewCars } from "./ui-components";
import { Divider, withAuthenticator } from "@aws-amplify/ui-react";
import "./App.css";
// retrieving signOut function, and user data
function App({ user, signOut }) {
const navbarOverrides = {
"Flex.Flex[0].Image[0]": {
src: "https://img.icons8.com/color/50/000000/car--v1.png", // app logo
const [name, setName] = useState("");
const [price, setPrice] = useState("");
const [description, setDescription] = useState("");
const [imageUrl, setImageUrl] = useState("");
const addCarOverrides = {
"Flex.Flex[0].Flex[1].TextField[0]": {
onChange: (event) => {
setName(event.target.value);