199 Commits

Author SHA1 Message Date
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
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
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
ec7b9acf23 Expose as-component, document current-component 2014-02-21 08:23:16 +01:00
Dan Holmsand
b9c3e106e8 Update React to 0.9.0 2014-02-21 08:04:16 +01:00
Dan Holmsand
b6c20ac863 Compare all maps passed to components the same way 2014-02-17 12:42:08 +01:00
Dan Holmsand
ba18691674 Cleanup 2014-02-15 12:29:16 +01:00
Dan Holmsand
1555fd9c3e Revert ref support for the time being
There might be a more elegant way of supporting refs...
2014-02-15 12:27:46 +01:00
Dan Holmsand
2bb32eb21f Make set-state etc async as well, by using an atom 2014-02-15 11:57:52 +01:00
Dan Holmsand
305fc73d8a First stab at ref support 2014-02-15 11:03:24 +01:00
Dan Holmsand
b2bfc14afb Move test code for partial 2014-02-14 11:27:45 +01:00
Dan Holmsand
effcbe6615 Move props accessors to util, add asserts for accessors in core 2014-02-14 11:13:30 +01:00
Dan Holmsand
695383c9a1 Cleanup template a little 2014-02-14 10:08:57 +01:00
Dan Holmsand
93c3f7194e Introduce dev? macro 2014-02-14 09:38:09 +01:00
Dan Holmsand
7792f493c0 Avoid duplicating :key in both wrapper and child 2014-02-12 07:16:55 +01:00
Dan Holmsand
12ee54b083 Allow "key" to be specified with meta-data
These are now equivalent
[foo {:key 1}] and
(with-meta [foo] {:key 1})
2014-02-11 20:56:48 +01:00
Dan Holmsand
4882b51b64 Move react.js to vendor directory 2014-02-11 17:10:04 +01:00
Dan Holmsand
0b5f8c423e next-tick moved as well 2014-02-11 15:52:16 +01:00
Dan Holmsand
6eb6b482f5 Factor out batching logic into own ns 2014-02-11 15:34:06 +01:00
Dan Holmsand
c18b8c318e Get rid of pesky circular dependency 2014-02-11 15:08:50 +01:00
Dan Holmsand
c1f2f59bbc Make equality checking more consistent 2014-02-11 13:57:56 +01:00
Dan Holmsand
41962bbe18 Reduce is great. Use it more 2014-02-11 12:41:00 +01:00
Dan Holmsand
b041427e94 Allow Hiccup tags to be strings and symbols as well 2014-02-11 12:03:44 +01:00
Dan Holmsand
ed4cf4e389 Allow component functions to be anything that satisfies ifn? 2014-02-11 11:36:58 +01:00
Dan Holmsand
a1ea281fc5 A little cleanup 2014-02-11 00:15:01 +01:00
Dan Holmsand
805264ea61 Warn on deref in seqs instead of silently failing
Use warning to improve color palette demo
Fix page title
Move more code to util.cljs
2014-02-10 23:54:30 +01:00
Dan Holmsand
81da69697e Move update batching to util 2014-02-10 16:33:22 +01:00
Dan Holmsand
2901ab6a32 Make rendering faster by avoiding apply in more places 2014-02-10 15:52:32 +01:00
Dan Holmsand
8f1c02b273 Render without allocating ratom unless necessary 2014-02-10 15:29:38 +01:00
Dan Holmsand
51ac2be955 Avoid allocation in ratom 2014-02-10 12:46:17 +01:00
Dan Holmsand
cff71b0119 Make render function part of prototype 2014-02-10 11:50:11 +01:00
Dan Holmsand
16a41f67e4 Remove replace-args
Probably not very useful, and easy to add back if need be
2014-02-10 09:31:25 +01:00
Dan Holmsand
e76d81f16a Allow e.g dangerously-set-inner-HTML 2014-02-10 09:12:29 +01:00
Dan Holmsand
b09c35457e Improve error message for invalid Hiccup forms 2014-02-09 12:42:51 +01:00
Dan Holmsand
e32c3ad044 Fix bug in the new extract-children, and simplify wrapping 2014-02-09 08:48:55 +01:00
Dan Holmsand
3c2c63402e Breaking change: Allow arbitrary arguments to component functions
Previously, the first argument had to be a map, and the rest of the
arguments where passed as a vector as the second argument.

Now [my-comp foo...] generally behaves as (my-comp foo...).

Since `this` is no longer passed to component functions, add
current-component function.

Also change signatures of React callbacks, to reflect that arbitrary
arguments can be passed.

Remove set-props and replace-props for the same reason.

Add argv accessor and set-args instead.
2014-02-08 13:55:01 +01:00
Dan Holmsand
69384d98c6 Simplify create-class 2014-02-08 10:55:29 +01:00
Dan Holmsand
aca69347b7 Merge branch 'delayed'
Conflicts:
	src/reagent/impl/template.cljs
2014-02-03 14:07:02 +01:00
Dan Holmsand
046912a322 Add some doc strings 2014-02-03 13:59:02 +01:00
Dan Holmsand
e10548f8ba Reduce is great, and fast. Use it more 2014-02-02 11:40:23 +01:00