Skip to content

Instantly share code, notes, and snippets.

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

Stan SARR StanSarr

🏠
Working from home
View GitHub Profile
@StanSarr
StanSarr / authButton.js
Created November 5, 2018 14:02
context API with Hooks - AuthButton
import React, { useContext } from "react";
import { NavItem, Button } from "reactstrap";
import * as Context from "../context";
export default () => {
const Auth = useContext(Context.Auth.AuthContext);
const Language = useContext(Context.Language.LanguageContext);
return (
<NavItem right={"true"}>
{Auth.isLoggedIn ? (
@StanSarr
StanSarr / listEvents1.js
Last active November 4, 2018 02:01
testing useEffect
import React, { useEffect, useState } from "react";
const ShowNumberOfEvents = ({ number = 0 }) => {
useEffect(
() => {
console.log(
"called On mount (componentDidMount) and only number is changed"
);
return () => console.log("--- componentWillUnmount ---");
},
import React, { useState } from "react";
import { Button, Form, FormGroup, Label, Input } from "reactstrap";
export default function securityForm() {
const [credentials, setCredentials] = useState({
email: "",
password: "",
checkMe: false
});
const handleInputChange = event => {
@StanSarr
StanSarr / content.js
Created November 1, 2018 15:33
class component with static contextType
import React, { Component } from "react";
import { Row } from "reactstrap";
import * as context from "../context";
export default class ContentComponent extends Component {
static contextType = context.Language.LanguageContext;
constructor(props) {
super(props);
this.state = {
loading: true
};
@StanSarr
StanSarr / authButton.js
Created October 31, 2018 12:52
authButton
import React from "react";
import { NavItem, Button } from "reactstrap";
import * as Context from "../context";
export default () => (
<Context.Language.Consumer>
{({ locale, translation, switchLocale }) => (
<Context.Auth.Consumer>
{Auth => (
<NavItem right>
@StanSarr
StanSarr / language.js
Created October 31, 2018 11:38
Translation Provider
import React, { Component } from "react";
const LanguageContext = React.createContext();
// could be imported from our translation.json file
const translations = {
en: {
welcome: "Welcome",
greeting: "Hello you're loggedIn!!! Welcome my name is Stan",
login: "Log In",
changeLocale: "Change locale to French",
@StanSarr
StanSarr / header.js
Created October 31, 2018 00:38
Our Component uses multiple consumers
import React from "react";
import * as Context from "./context";
export default () => {
return (
<Context.Language.Consumer>
{({ locale, translation, switchLocale }) => (
<Context.Auth.Consumer>
{Auth => (
<div className={"App-header"}>
@StanSarr
StanSarr / auth.js
Created October 31, 2018 00:30
AuthProvder with the new React context API
import React, { Component } from "react";
const AuthContext = React.createContext();
class AuthProvider extends Component {
constructor(props) {
super(props);
this.state = {
isLoggedIn: false
};
}
@StanSarr
StanSarr / s3-bucket-move
Created July 24, 2018 13:43 — forked from alanwill/s3-bucket-move
Move an S3 bucket to a different region
aws s3 sync s3://oldbucket s3://newbucket --source-region us-west-1 --region us-west-2
@StanSarr
StanSarr / test.js
Created November 8, 2017 14:47 — forked from jmyrland/test.js
Socket-io load test?
/**
* Modify the parts you need to get it working.
*/
var should = require('should');
var request = require('../node_modules/request');
var io = require('socket.io-client');
var serverUrl = 'http://localhost';