Skip to content

Instantly share code, notes, and snippets.

import React, { memo, useState, useEffect } from 'react'
import memoize from 'memoize-one'
import isEqual from 'lodash.isequal'
const equalFn = (newArg, lastArg) => isEqual(newArg, lastArg)
const range = (start, end) => [...Array(end - start).keys()].map(k => k + start)
const getPager = memoize((totalItems, currentPage, pageSize) => {
@alobato
alobato / Table.js
Last active February 22, 2019 03:13
import styled from 'styled-components'
import { width, height, lineHeight } from 'styled-system'
export const TableContainer = styled.div`
border: none;
@media (min-width: 768px) {
border: 1px solid hsla(216, 20%, 48%, 0.12);
}
`
export const FormatCpf = props => {
let formatedCpf = props.children
if (!formatedCpf) return ''
if (formatedCpf.length === 11)
formatedCpf = `${formatedCpf.substr(0, 3)}.${formatedCpf.substr(3, 3)}.${formatedCpf.substr(6, 3)}-${formatedCpf.substr(9, 2)}`
return formatedCpf
}
export const FormatCnpj = props => {
let formated = props.children
import React, { memo, useState, useEffect } from 'react'
import Input from './Input'
const maskValue = (value = '') => {
value = value.toString()
value = value.replace(/\D/g, '')
if (!value) return ''
@alobato
alobato / Alert.js
Last active February 20, 2019 18:37
import React, { useEffect } from 'react'
import Modal from '../components/StyledModalAlert'
const Alert = ({autoHideDuration = 3000, open, message, onClose}) => {
return (
<>
{open && (
<Modal
hasBackdrop={false}
import React, { useRef } from 'react'
import styled from 'styled-components'
const Checkbox = ({ checked, checkAnimation, uncheckAnimation, ...rest }) => {
const checkboxRef = useRef()
const checkRef = useRef()
const handleClick = () => {
if (checked) {
if (uncheckAnimation) {
@alobato
alobato / iphone-frame-overlay-app.js
Created January 26, 2019 02:44 — forked from vincentriemer/iphone-frame-overlay-app.js
Video iPhone Frame Overlay Web App Prototype
import React, { Component, useCallback, useState, useRef } from "react";
import "./App.css";
const imgUrl = require("./assets/iPhone-XS-Portrait-Space-Gray.png");
const fullSize = {
width: 1325,
height: 2616
};
(function() {
if (window._PagSeguroDirectPayment) {
return;
}
function onDocumentReady(callback) {
var eventName = document.addEventListener ? "DOMContentLoaded" : "onreadystatechange";
if (document.readyState === "complete" || (document.readyState !== "loading" && !document.attachEvent)) {
callback();
return;
@alobato
alobato / backup.sh
Last active December 9, 2018 12:34
#!/bin/sh
# $ crontab -e
# 0 3 * * * /bin/bash -l -c '/home/deployer/.backups/backup.sh' &>/dev/null
DATABASE_NAME=""
DATABASE_PASSWORD=""
USER="deployer"
NOW="$(date +'%Y.%m.%d.%H.%M.%S')"
FILE_NAME="db_backup_$NOW".gz
@alobato
alobato / backup.sh
Last active August 29, 2018 02:02
Backup script
#!/bin/sh
# $ cd && mkdir .backups && cd .backups
# $ wget --no-check-certificate https://gist.githubusercontent.com/.../backup.sh
# $ sed -i -e 's/BACKUP_FOLDER/\/home\/deployer\/.backups/g' backup.sh
# $ sed -i -e 's/DATABASE_PASSWORD/YourPassword/g' backup.sh
# $ sed -i -e 's/DATABASE_NAME/YourDataBaseName/g' backup.sh
# $ sed -i -e 's/USER/deployer/g' backup.sh
# $ sed -i -e 's/PROJECT_NAME/YourProjectName/g' backup.sh
# $ sed -i -e 's/EMAIL/[email protected]/g' backup.sh