Skip to content

Instantly share code, notes, and snippets.

Created June 30, 2015 23:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/01326f1bdf8129c25bff to your computer and use it in GitHub Desktop.
Save anonymous/01326f1bdf8129c25bff to your computer and use it in GitHub Desktop.
update = Action.caseOn do
NextColor: (tile, model) ->
idx = find-index (is tile), model.tiles
flip(evolve) model, tiles: adjust (evolve background-color: cycle-colors), idx
InfiniScroll: (model) ->
evolve tiles: (concat _, model.load-more!), model
# Generate more tiles when resizing to a bigger window
Resize: (model) ->
max = pics-n$!
new-tiles = switch
| model.tiles.length < max => take max, model.tiles ++ model.load-more!
| otherwise => model.tiles
assoc \tiles, new-tiles, model
ChangePage: (page, params, model) ->
merge model, switch page
| \random
load-more = -> get-random-data pics-n$!
load-more : load-more
tiles : load-more!
| \user
request-user params.user, params.tld
tiles: []
| \root
request-whoami!
tiles: []
Update: (flip merge)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment