Skip to content

Instantly share code, notes, and snippets.

View felipeleusin's full-sized avatar

Felipe Leusin felipeleusin

View GitHub Profile
@felipeleusin
felipeleusin / machine.js
Created September 2, 2020 19:36
Generated by XState Viz: https://xstate.js.org/viz
// Available variables:
// - Machine
// - interpret
// - assign
// - send
// - sendParent
// - spawn
// - raise
// - actions
@felipeleusin
felipeleusin / styled-system-to-theme-ui.js
Last active August 5, 2019 15:40
styled-system to theme-ui
/**
MIT License
Copyright (c) 2019 Felipe Leusin
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
@felipeleusin
felipeleusin / code.jsx
Last active May 7, 2019 09:55
Code JSX
import Highlight, { defaultProps } from 'prism-react-renderer';
import prismTheme from 'prism-react-renderer/themes/duotoneDark';
/* Use like
<Code>{`
var foo = "blah";
`}</Code>
or
<Code code={myCodeString} />
*/
@felipeleusin
felipeleusin / formikApollo.js
Created December 4, 2018 17:55 — forked from mwickett/formikApollo.js
Formik + Apollo
import React from 'react'
import { withRouter, Link } from 'react-router-dom'
import { graphql, compose } from 'react-apollo'
import { Formik } from 'formik'
import Yup from 'yup'
import FormWideError from '../elements/form/FormWideError'
import TextInput from '../elements/form/TextInput'
import Button from '../elements/form/Button'
import { H2 } from '../elements/text/Headings'
@felipeleusin
felipeleusin / vpn_psk_bingo.md
Created November 27, 2016 10:08 — forked from kennwhite/vpn_psk_bingo.md
Most VPN Services are Terrible
var Col = require('react-bootstrap/lib/Col')
var PageHeader = require('react-bootstrap/lib/PageHeader')
var React = require('react')
var Row = require('react-bootstrap/lib/Row')
var {connect} = require('react-redux')
var {reduxForm} = require('redux-form')
var DateInput = require('./DateInput')
var FormField = require('./FormField')
var LoadingButton = require('./LoadingButton')
namespace RavenDB.WhereInTest
{
using System;
using System.Collections.Generic;
using System.Linq;
using Raven.Abstractions.Data;
using Raven.Abstractions.Indexing;
using Raven.Client.Document;
using Raven.Client.Embedded;
using Raven.Client.Indexes;
@felipeleusin
felipeleusin / input.js
Created May 17, 2016 16:56
Vanilla-Masker + Input
import React, { Component, PropTypes } from 'react'
import { findDOMNode } from 'react-dom'
import Input from 'react-toolbox/lib/input'
import masker from 'utils/vanilla-masker'
const maskOptions = {
precision: 2,
separator: ',',
delimiter: '.',
unit: 'R$',
@felipeleusin
felipeleusin / Button-arrow-func.jsx
Created April 5, 2016 02:44 — forked from thebuilder/Button-arrow-func.jsx
Stateless Button with arrow binding - But this creates a new instance on every render?
import React from 'react';
function handleClick(label) {
alert('clicked ' + label);
}
function Button({label}) {
return (
<button onClick={(event) => handleClick(label)}>{label}</button>
@felipeleusin
felipeleusin / RavenMetadataListener.cs
Created September 24, 2015 16:21
RavenMetadataListener
public class RavenMetadataToProperyListener : IDocumentConversionListener {
private static readonly ConcurrentDictionary<Type, RavenMetadataReflection[]> Cache = new ConcurrentDictionary<Type, RavenMetadataReflection[]>();
private static readonly MethodInfo JTokenValueMethod = typeof (RavenJToken).GetMethod("Value", new Type[] {});
public void BeforeConversionToDocument(string key, object entity, RavenJObject metadata)
{
}
public void BeforeConversionToEntity(string key, RavenJObject document, RavenJObject metadata)
{