Skip to content

Instantly share code, notes, and snippets.

// Create an effect to persist data. For native envs, using something similar
// to localStorage
const persistedState = {
set(state) {
localStorage.setItem('state', JSON.stringify(state))
},
get() {
return JSON.parse(localStorage.getItem('state') || '{}')
}
}

Updated packages

package from version to version
betsy 1.0.2 1.0.2-1575903734574
overmind 20.0.0 21.0.0-1575903734575
overmind-angular 20.0.0 21.0.0-1575903734575
overmind-devtools 21.0.0 22.0.0-1575903734575
overmind-devtools-client 3.0.0 4.0.0-1575903734575
overmind-devtools-vscode 2.0.0 3.0.0-1575903734575
/*
Add to package JSON script:
npm run test:pr ${ID}
The ID is the #1234 type of number on the PR
*/
const { spawn } = require('child_process');
const { argv } = require('yargs');
const username = require('username');
const id = argv._[0];
export const createModals = <
T extends {
[name: string]: {
state?: IState;
result?: unknown;
};
}
>(
modals: T
): {
import {
OnCallWithServices,
ResponseError,
OnRequestWithServices,
} from './services'
import * as Stripe from 'stripe'
export const subscribe: OnCallWithServices<{
token: string
plans: string[]

Updated packages

package from version to version
betsy 1.0.2 1.0.2-1561921753905
overmind 18.0.1 19.0.0-1561921753906
overmind-angular 18.0.1 19.0.0-1561921753906
overmind-devtools 19.0.1 20.0.0-1561921753906
overmind-devtools-client 1.0.0 2.0.0-1561921753906
overmind-react 19.0.1 20.0.0-1561921753906
overmind-themes 1.0.2 1.0.2-1561921753906
import 'dart:async';
import 'package:flutter/material.dart';
import 'package:rxdart/rxdart.dart' as rx;
Observer currentObserver;
class Observer {
Map<rx.Observable, StreamSubscription> _subscriptions = Map();
rx.BehaviorSubject _subject = rx.BehaviorSubject();
class Store {
Store([Store parent = null]) {
this.emit = parent == null ? (dynamic action) {
if (_subscribers.containsKey(action)) {
_subscribers[action].forEach((cb) => cb());
}
} : parent.emit;
}
Map<Action, Set<Function>> _subscribers = new Map();
Function subscribe(List<Action> actions, Function callback) {
@christianalfoni
christianalfoni / case.md
Last active April 3, 2019 10:01
The case for action based change detection

The case for action based change detection

There are several approaches to detecting change, for example:

  1. Mobx, Vue js, Overmind JS: Mutation detection using getters/setters or proxies.

  2. Redux: Reference comparison, typically combined with immutability (Is previous value different than current?)

  3. Cerebral JS: Path matching. With single state trees you can match what paths components depend on with what paths are being mutated in the state tree

Updated packages

package from version to version
overmind 17.0.0 17.1.0
overmind-angular 17.0.0 17.1.0
overmind-devtools 18.0.0 18.1.0
overmind-react 18.0.0 18.1.0
overmind-vue 17.0.0 17.1.0