Skip to content

Instantly share code, notes, and snippets.

import 'package:meta/meta.dart';
import 'package:flutter/material.dart';
abstract class RouteSetting {
List<Route> toInstance();
}
class Route<Arguments> {
final String name;
final bool initial;
import 'dart:async';
import 'package:equatable/equatable.dart';
import 'package:flutter/material.dart';
enum RemoteStatusType {
NotAsked,
Loading,
Succeed,
Failed,
import * as React from 'react';
import { useMemo, useContext, createContext, ReactNode } from 'react';
import { createPortal } from 'react-dom';
type Context = { portalID: string };
const PortalContext = createContext<Context>({} as any);
export function createSplitGate<T>(render: (arg: T) => ReactNode) {
return {
Zone: (props: Context & { children: ReactNode }) => {

unknown

unknown is safe version of any.

We should consider unknowon first then any.

Union types

When would like to take multiple type as argument.

@hachibeeDI
hachibeeDI / listviewthrottle.tsx
Last active November 21, 2018 09:30
sketch list rendering throttle
/*
<ListThrottle<string> items={strs}>
{({renderPrevCreatives, renderNextCreatives, throttledItems}) => (
<SomeAwesomeComponentSupportsScroll
superHandlerCatchOnScrollTop={renderPrevCreatives}
superHandlerCatchOnScrollEnd={renderNextCreatives}
>
<ul>
{throttledItems.map(str => (
<li>{str></li>
@hachibeeDI
hachibeeDI / multi-itertool.py
Created December 1, 2017 06:46
WIP itertool multi
def mmp(f):
def _m(x, prev=None):
if prev:
yield from prev
yield f(x)
return _m
def fft(f):
def _m(x, prev=None):
@hachibeeDI
hachibeeDI / withStateToggleHOC.jsx
Created November 14, 2017 08:58
I guess you should use recompose
const withStateToggle = (name, defaultValue) => ComposedChild => (
class Container extends Component {
constructor (props) {
super(props);
this.state = {
[name]: defaultValue
};
this.toggle = this.toggle.bind(this);
@hachibeeDI
hachibeeDI / modal-pattern-hoc.jsx
Created October 11, 2017 10:01
Considering more readable pattern to implement modal
import {EventEmitter} from 'events';
import React, {Component} from 'react';
import Modal from 'components/modal';
export default function WithModal (id, title, trigger) {
return (TargetComponent, key, descriptor) => class extends Component {
constructor() {
@hachibeeDI
hachibeeDI / debounced-action-call-middleware.js
Created April 28, 2017 08:53
debounced-action-call-middleware.js
import debounce from 'lodash.debounce';
export default function validationDebounceMiddlewareGenerator ({triggerActionTypes, validatorActionType, wait}) {
const createValidateActionDebounced = debounce(
dispatch => dispatch({type: validatorActionType}),
wait
);
@hachibeeDI
hachibeeDI / mutiproc_async.py
Last active February 14, 2018 08:01
play around async and future
import asyncio
from time import sleep, time
def blocker(txt):
sleep(3)
return 'aaa' + txt
def async_sample(loop):