Yoshua Wuyts
6bd9a39cee
fix .toString() ( #510 )
...
Closes GH-509. Thanks!
2017-06-02 12:33:51 +02:00
Yoshua Wuyts
8ff7deea3c
add server tests ( #501 )
...
* add server tests
* remove node 4 tests
2017-05-24 13:02:33 +02:00
Kasper Lewau
9708859894
pass through emit args to updateHistory ( #496 )
2017-05-20 18:52:18 +02:00
Emil Bay
736e4b4514
Add hook for replaceState ( #494 )
...
* Add hook for replaceState
* Clarify why replaceState is dangerous
2017-05-19 14:56:45 +02:00
Emil Bay
fe7f3a1695
Allow listeners to attach before rendering ( #493 )
...
* Allow listeners to attach before rendering
* Move rerender listeners down. Subtle sequencing
* Update docs to reflect changes
2017-05-19 14:20:39 +02:00
Yoshua Wuyts
6cf13af5ce
warn on unmount ( #485 )
2017-04-26 13:52:34 +02:00
Yoshua Wuyts
f45e1646ec
expose router ( #482 )
...
In preparation for GH-480, but also because choo 4 exposed the router, and we need it for server rendering
2017-04-25 02:50:58 +02:00
Yoshua Wuyts
305d0a1ce5
run choo event handlers first ( #479 )
2017-04-19 13:02:43 +02:00
Yoshua Wuyts
30429d5970
Unlib ( #477 )
...
* use nanohref
* use nanohistory
2017-04-14 17:10:21 +02:00
Yoshua Wuyts
16d15d0e88
optimize example further ( #462 )
2017-04-02 01:19:59 +02:00
Carl Törnqvist
81216840c9
Add safer check for window properties ( #458 )
2017-03-31 22:01:58 +02:00
Yoshua Wuyts
2bbcb53f4a
restore document-ready dep ( #454 )
2017-03-30 12:20:57 +02:00
Yoshua Wuyts
b7b85261eb
Remove unused variables ( #453 )
...
Closes https://github.com/yoshuawuyts/choo/issues/451
2017-03-30 11:48:21 +02:00
Yoshua Wuyts
4ef1f411b5
add timing API support ( #448 )
...
* add timing API support
* fixup! bump package.json
2017-03-29 10:43:42 +02:00
Yoshua Wuyts
4f8bd24169
fix server render ( #443 )
2017-03-25 10:45:44 +01:00
Seth Vincent
4e410ce50b
hash fix: wait to run scrollIntoView ( #439 )
...
* simplify createLocation and wait to run scrollIntoView
* remove createLocation change
2017-03-25 10:17:43 +01:00
Yoshua Wuyts
c2e4bb4963
fix pushState event ( #434 )
2017-03-22 20:42:53 +01:00
Yoshua Wuyts
8e8e870d45
implement choo v5 API ( #425 )
...
* implement choo v5 API
* fix tests
* 5.0.0-3
* 4kb now
* bump nanomorph
* 5.0.0-4
* fix missing deps stuff
* 5.0.0-5
* fix travis
* fixup! oops standard
* chooexpose
* fix state passing
* fixup! update example
* fixup! incorporate feedback
* fixup! more docs
* fixup! even more docs
2017-03-21 03:00:45 +01:00
Ben Gourley
eed3a41797
feat(stop): expose barracks stop() fn ( #359 )
2017-01-21 18:08:43 +01:00
unaffiliated
6daf2e69f0
ignore state updates when on node
...
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com >
Closes #390
2017-01-21 16:21:48 +01:00
Tim Wisniewski
3b5740c00e
Assert that tree exists, fix tests ( #358 )
...
* assert that tree exists, fix tests
* make assertions more helpful
2016-12-22 06:55:36 -05:00
Tim Wisniewski
9af9b1ad37
fix prev.location.params bug. closes #354 ( #355 )
2016-12-11 15:45:46 -05:00
Yoshua Wuyts
a7916ec3f9
[major] choo v4 ( #352 )
...
* location: change url on location:setLocation
- [ ] don't break hashing
- [ ] allow not changing the url
fixup! move fns around
fixup! add search string
* app.start: clean
* walk: add
* location: update arg calls
* fixup! location: update
* uri-wrap: fix thunking
* router: update to latest sheet-router (#239 )
* router: update to latest sheet-router
* tests: fix for latest version
* tests: fix SSR
* tests: fix history
* tests: spruce up
* docs: update example
* examples: update
* deps: bump sheet-router
* 4.0.0-0
* chore(changelog): 4.0.0 (#211 )
* feat(api:) arg order (#268 )
* s/data, state/state, data/
* feat(api): swap arguments
* fix(href): fix routing (#271 )
* feat(http): remove (#269 )
* feat(router): enable hash routing (#273 )
* deps: fix mount
* 4.0.0-1
* feat(mount): copy {script,link} tags
* 4.0.0-2
* fix(mount): forEach -> for
Lol can't use forEach
* fix(router): use state.location.href (#282 )
* fix(mount): use deep node clone
* 4.0.0-3
* fix(deps): remove hash-match
* 4.0.0-4
* fix(mount): return node
* 4.0.0-5
* fix(router): check if a hash is a valid selector (#339 )
* 4.0.0-6
* fix(router): pass params on newstate (#343 )
* 4.0.0-7
* feat(docs): update for 4.0.0 (#320 )
* feat(docs): update for 4.0.0
* docs: update router example in readme (#337 )
* chore(changelog): update for v4 (#351 )
2016-12-11 19:35:29 +01:00
Tim Wisniewski
e44f9619e9
prev.params should always exist ( #227 )
2016-08-23 05:45:53 -04:00
Yoshua Wuyts
2b7dc1901c
.use: add new api method
2016-07-24 22:01:40 +01:00
Lucas Cherkewski
dd88941d77
Use properly formatted assert() statement for send() on server
2016-07-14 15:10:08 -04:00
Yoshua Wuyts
ea3a6f69e8
Merge branch 'master' into raf
2016-07-12 17:51:44 +02:00
Yoshua Wuyts
3cb9364c3d
onAction: prefix views with view
2016-07-08 12:24:14 +02:00
Yoshua Wuyts
f5f8d01c0b
index: add raf guard
2016-07-06 23:15:54 +02:00
Yoshua Wuyts
4ad3dc9b72
deps: bump to barracks 8
2016-07-05 17:55:17 +02:00
Ben Drucker
c3293b5953
Remove dead check for strict prev/current state equality
...
* Barracks will always return a new object
https://github.com/yoshuawuyts/barracks/blob/11d3c6d1822beadce0251279f9bc8370c569ea5e/index.js#L144
2016-07-04 16:19:17 -07:00
Ben Drucker
e0783320f7
Add tests and fixes for rehydration
...
* Barracks must get an initial state or state.location is undefined
* Replaces document.addEventListener w/ pkg handling existing ready doc
2016-07-04 16:19:12 -07:00
Ben Drucker
cdabc4d85f
Return outerHTML from toString if available, fall back to toString()
2016-07-04 08:07:54 -07:00
timwis
6954bc5084
Rename action param -> data in index.js
2016-07-03 12:37:43 -04:00
Yoshua Wuyts
6407188ee9
router: change order of arguments
...
fixup! freeze state & rename app ns to location
2016-07-02 22:54:35 +02:00
Yoshua Wuyts
9e039ed561
architecture: use barracks
...
Changes
=======
- add hook handlers
- add effect composition
- add noFreeze option
Commits
=======
- fixup! fix toString()
- fixup! use assert instead of throw
- fixup! fix reducers
- fixup! work on done callbacks
- fixup! more callback work
- fixup! woooh fixed effects errs
- fixup! wrap up stuff
2016-07-02 16:00:26 +02:00
Todd Kennedy
8f8df602c5
Extract html into separate module ( #103 )
2016-07-02 12:55:41 +02:00
Yoshua Wuyts
bca9d46f61
router: fix arguments bug
2016-06-23 23:54:02 +02:00
Yoshua Wuyts
bae31831fe
subscriptions: load on DOM ready
2016-06-20 15:11:28 +01:00
Yoshua Wuyts
30726b4277
Merge pull request #53 from toddself/fix-assert-call
...
Fix assert call for subscriptions
2016-06-19 22:16:02 +02:00
Todd Kennedy
02c3c81f37
Fix assert call for subscriptions
2016-06-19 11:38:36 -07:00
Todd Kennedy
1d38ab9f22
Allow for naming the rootId with no options
...
Right now if you want to name your rootId something different, but don't pass
in any options, it doesn't change the name of your rootId (see confusion in
github #49 .
This would allow someone to use
```js
const app = choo()
app.start('myRootNode')
```
Rather than having to use
```js
const app = choo()
app.start('myRootNode', {name: 'myRootNode'})
```
2016-06-19 08:35:41 -07:00
timwis
957f41bea9
use ternary, hash is opt-in
2016-06-04 19:53:05 -04:00
timwis
a5f8093dc0
Merge branch 'master' into hash
2016-06-04 19:25:12 -04:00
timwis
7e837a47eb
use hash history for initial location
2016-06-04 18:43:38 -04:00
timwis
97d7122ff2
listen to hash changes
2016-06-04 18:00:00 -04:00
Emil Bay
3f38810d64
Fix #37 rootId should clear if only opts is passed
...
`rootId` is optional to `start`, but has lower precedence than `opts`. Currently it is not cleared when the value is passed to `opts`
2016-06-04 15:48:27 +02:00
Yoshua Wuyts
3749ffb477
start: throw err for render races
2016-05-31 15:54:46 +02:00
Yoshua Wuyts
3153fcb26c
router: suppress re-render on same state
...
- views will no longer be re-rendered if the state hasn't changed
- `oldState` is passed as the final argument in a view. E.g. `params,
state, send, oldState`. This is mostly because it will usually only be
used for optimizing - changing the order would be a breaking change
:(
2016-05-31 12:30:40 +02:00
Yoshua Wuyts
60665f2a71
toString: support rehydration
2016-05-24 02:10:17 +09:00