Commit Graph

266 Commits

Author SHA1 Message Date
Dan Holmsand 6ce5bc16f5 Add test for null component return 2014-09-16 16:31:29 +02:00
Dan Holmsand e19c20d0cc Update React to 0.11.1 2014-09-14 10:59:55 +02:00
Dan Holmsand e1f9ae20c6 Update ClojureScript version 2014-09-14 10:56:12 +02:00
Sean Corfield 5d2fc0254e Add cursor support.
Adds RCursor type: wraps Reagent's RAtom along with a path that provides focus into a specific part of that atom.

Adds reagent.ratom/cursor as a constructor for the RCursor type.

Adds reagent.core/cursor as the public API. This can be called with just a path, and returns a function that accepts a Reagent atom, or with both a path and an atom.

Dereferences of a cursor behave like get-in on the underlying atom with the specified path.

If you reset! a cursor, it behaves like a swap! assoc-in on the underlying atom. If swap! a cursor, it behaves like a swap! update-in on the underlying atom.
2014-09-08 19:31:05 -07:00
Dan Holmsand f8ca11e767 Update clojurescript and cljsbuild 2014-04-09 16:50:49 +02:00
Dan Holmsand 41a687faa7 Add import-react macro 2014-04-09 16:50:15 +02:00
Dan Holmsand 429ed50fab Make demo code more Light Table-friendly 2014-04-01 19:50:28 +02:00
Dan Holmsand 4060bfc6fe Simplify the fvar macro 2014-04-01 15:17:33 +02:00
Dan Holmsand 9fee64b1bf Remove old interop code 2014-03-25 17:51:03 +01:00
Dan Holmsand 2e0e369d93 Use new javascript interop macros 2014-03-25 12:37:28 +01:00
Dan Holmsand 976cf8ef0b Add fvar macro 2014-03-25 11:33:15 +01:00
Dan Holmsand 6389a3889a Add better javascript interop macros 2014-03-25 07:58:22 +01:00
Dan Holmsand 907a85db9c Update React to 0.10.0 2014-03-25 06:23:44 +01:00
Dan Holmsand 0f2136d4b4 Allow render-component to take a function returning a component 2014-03-18 16:43:19 +01:00
Dan Holmsand ba995c2e0d Add force-update-all, to make LightTable integration easier
force-update-all re-mounts all root components, and makes all
their children re-render.
2014-03-18 13:09:55 +01:00
Dan Holmsand 82a1dd73eb Make javascript interop macros more like aset and aget
Drop js-global, probably not worth the trouble
2014-03-17 12:02:26 +01:00
Dan Holmsand f84369a53a Make native components a little faster by optimizing common cases 2014-03-16 08:29:35 +01:00
Dan Holmsand 56e11f99c7 Use interop macros everywhere, delete unnecessary hacks 2014-03-14 13:47:10 +01:00
Dan Holmsand 58dd46f4ae More usage of interop macros 2014-03-14 12:28:10 +01:00
Dan Holmsand e21e58e509 Rename jget to get. etc 2014-03-14 11:45:44 +01:00
Dan Holmsand c3932c9cf1 Start using interop macros 2014-03-14 11:21:05 +01:00
Dan Holmsand 8b59d1509b Add macros for more convenient javascript interop 2014-03-14 10:27:49 +01:00
Dan Holmsand 23ae1661fe Version 0.4.2 2014-03-06 13:27:49 +01:00
Dan Holmsand db71fa1770 Update changelog 2014-03-06 13:15:47 +01:00
Dan Holmsand c4679b204a Use new memoize everywhere 2014-03-06 13:01:33 +01:00
Dan Holmsand a3b04d6cc2 Simplify rendering of wrapped components 2014-03-06 12:29:09 +01:00
Dan Holmsand 5c194e8fe5 Use nth throughout for consistency 2014-03-06 12:26:20 +01:00
Dan Holmsand c189bd4460 core/memoize is very slow, so use our own instead 2014-03-06 12:24:07 +01:00
Jacob Maine 6302c8ecd6 Make multimethods work as component functions.
This is actually a bug in ClojureScript
(http://dev.clojure.org/jira/browse/CLJS-777).  In regular Clojure a
`MultiFn` is `ifn?`, but in ClojureScript it wasn't.  The bug is now
fixed
(525154f2a4)
but not yet released.

This code can be reverted after Reagent's ClojureScript version is
updated.
2014-03-03 17:55:40 +02:00
Dan Holmsand 34083ee872 Make sure inputs are not re-rendered unnecessarily 2014-03-02 09:58:23 +01:00
Dan Holmsand e539069947 Allow on-change on controlled inputs to keep value unchanged 2014-02-28 12:55:20 +01:00
Dan Holmsand 11ce2bbe0d Add link to complete source 2014-02-26 14:17:02 +01:00
Dan Holmsand c39378bb79 Explain binary clock demo 2014-02-26 13:17:18 +01:00
Dan Holmsand b8ffbb8dd2 Tweak clock demo 2014-02-22 17:24:22 +01:00
Dan Holmsand af1d3e6d05 Started fiddling with clock demo 2014-02-22 12:36:34 +01:00
Dan Holmsand e3a67043c9 Version 0.4.1 2014-02-22 08:50:27 +01:00
Dan Holmsand 7236b99cd9 Merge pull request #21 from ptaoussanis/master
Make github.io README links more prominent
2014-02-22 08:39:33 +01:00
Dan Holmsand 18f8ae9d35 Revert scroll change in demo 2014-02-22 08:37:30 +01:00
Dan Holmsand 148e5b4bb0 Update versions 2014-02-22 08:37:14 +01:00
Dan Holmsand b2294b5dea Update clojurescript.test and cljsbuild 2014-02-22 08:23:44 +01:00
Dan Holmsand 0457b2535e Avoid some warnings in demo 2014-02-22 08:21:21 +01:00
Peter Taoussanis 6a25a639b2 Make github.io README links more prominent 2014-02-22 14:14:53 +07:00
Dan Holmsand 908452c126 Be compatible with ClojureScript 0.0-2173: implement IAtom, ISwap,
IReset
2014-02-22 08:04:52 +01:00
Dan Holmsand 7951b43aeb into-array is a tiny bit faster than reduce for seqs 2014-02-21 21:39:43 +01:00
Dan Holmsand 2f63be8823 Update Readme for 0.4.0 2014-02-21 17:16:26 +01:00
Dan Holmsand 432592955f Version 0.4.0 2014-02-21 16:31:30 +01:00
Dan Holmsand 0574a235ed Tweak docs a little. 2014-02-21 16:24:04 +01:00
Dan Holmsand 5243b1bbf1 Add a proper changelog 2014-02-21 16:16:23 +01:00
Dan Holmsand 85e5f8d46a Avoid warning with ClojureScript 2156 2014-02-21 16:12:41 +01:00
Jonas Enlund c783d09b04 default width and height 2014-02-21 14:06:28 +02:00