Skip to content

Instantly share code, notes, and snippets.

View toruticas's full-sized avatar

Rafael Mariano toruticas

View GitHub Profile
import React, { Suspense, ReactNode } from 'react'
import { cache } from 'swr'
import { GITHUB_PROFILE_API } from './api'
import { ProfileData } from './ProfileData'
import { SkeletonLoading } from './SkeletonLoading'
import { ConfusedIcon } from './ConfusedIcon'
import './ErrorBoundary.css'
const ProfileData: FC = () => {
const { data, isValidating, mutate } = useSWR(
'https://api.github.com/users/toruticas',
)
return (
<div className="ProfileData">
...
{isValidating && (
const ProfileContainer: FC = () => (
<Suspense fallback={<SkeletonLoading />}>
<ProfileData />
</Suspense>
)
import React, { FC } from 'react'
import { SWRConfig } from 'swr'
import axios from 'axios'
import { ProfileContainer } from './ProfileContainer'
import './App.css'
const fetcher = (url: string) =>
axios(url).then(
response =>
import SplitFactory from '@splitsoftware/splitio')
const factory = SplitFactory({
core: {
authorizationKey: 'YOUR_API_KEY'
// note que não passamos mais uma key aqui
}
});
const client = factory.client()
import SplitFactory from '@splitsoftware/splitio'
// Instancia a SDK
const factory = SplitFactory({
core: {
authorizationKey: 'YOUR_API_KEY',
// A 'key' pode ser o ID do usuário conectado ou o ID da conta à qual o
// usuário conectado pertence. Em resumo, o ID é a chave que identificado o
// usuário. Dependendo da sua regra de negócio, faz mais sentido usar o
// identificado como um grupo invés do ID do usuário.
import React from 'react'
class Suspense extends React.Component {
state = {
promise: null
};
componentDidCatch(error) {
// Oh my god, this is the desired Promise 😬
if (error instanceof Promise) {
@toruticas
toruticas / .zshrc
Last active September 20, 2022 07:03
export ZSH="/Users/rs0230/.oh-my-zsh"
ZSH_THEME='gnzh'
plugins=(
git
dnf
zsh-autosuggestions
)
@toruticas
toruticas / config.lua
Last active November 14, 2024 19:24
Neovim configs: ~/.config/nvim/*
local iron = require("iron.core")
local view = require("iron.view")
iron.setup {
config = {
-- Whether a repl should be discarded or not
scratch_repl = true,
-- Your repl definitions come here
repl_definition = {
sh = {
@toruticas
toruticas / effects.js
Created May 27, 2019 02:22
Redux Architecture Example (effects)
export const localStorageSync = () => (_, getState) => {
const todos = getState().todos.toJS();
localStorage.setItem('redux-todos', JSON.stringify(todos));
};