Géry Debongnie
cef12acfe0
[REF] observer: create sub array prototype only once
...
and reuse it whenever necessary. This should speed up the observer.
2019-04-16 15:17:36 +02:00
Géry Debongnie
515b91fe8a
[FIX] examples: add missing t-key attribute in todoapp
2019-04-16 14:59:55 +02:00
Géry Debongnie
0ca4cc1596
[IMP] qweb: make t-key directive dynamic
...
instead of having t-key and t-att-key.
closes #36
2019-04-16 14:38:55 +02:00
Géry Debongnie
7092f5e142
[REF] observer: move observer out of store
2019-04-16 14:24:19 +02:00
Géry Debongnie
6640644d34
[FIX] qweb/component: make widgets work with t-else=""
...
closes #37
2019-04-16 14:17:02 +02:00
Géry Debongnie
7974ce4963
[IMP] qweb: crash if t-on directive is used with no event
...
closes #33
2019-04-16 14:07:51 +02:00
Géry Debongnie
9dd8a36b28
[REF] examples: improve todoapp
2019-04-16 10:09:24 +02:00
Géry Debongnie
ed326d34fd
[FIX] qweb: add t-debug to list of valid directives
...
With a previous commit, qweb crashes when an unknown directive is
encountered. However, t-debug was not on the list of valid directives.
2019-04-16 09:57:58 +02:00
Géry Debongnie
480de10ff3
[FIX] store: properly compare values on store updates
...
Before this commit, we tried to use a hash function for non observable
values, but this was not correct, since some changes could be done that
would compensate each other.
With this commit, we properly compare each non observable value.
2019-04-16 09:47:03 +02:00
Alexandre Kühn
73fb8f8998
[FIX] store: connected component deeply reactive with undefined, null and string props
...
Revision on https://github.com/odoo/owl/commit/9f77344c3a19592d4a37df43b65f9e647fe41f24
Deeply reactive version of fix above.
2019-04-15 16:54:02 +02:00
Géry Debongnie
559c51a717
[FIX] store: change default hash function to better see changes
2019-04-15 16:50:07 +02:00
Alexandre Kühn
9f77344c3a
[FIX] store: connected component with undefined, null and string props
2019-04-15 15:36:18 +02:00
Géry Debongnie
85eb30626d
[FIX] qweb: t-set expressions are evaluated only once
...
closes #23
2019-04-15 14:38:08 +02:00
Géry Debongnie
3d18359dd8
[IMP] store: add 'deep' param to connect options
2019-04-15 11:51:18 +02:00
Alexandre Kühn
e005090296
[IMP] store: return data from committing a mutation
...
closes #29
2019-04-15 10:53:59 +02:00
Alexandre Kühn
7e7226213a
[IMP] store: commit a mutation in a mutation
2019-04-15 10:51:54 +02:00
Géry Debongnie
9ee85e220b
[FIX] store: unobserve detached objects
...
closes #27
2019-04-15 10:43:50 +02:00
Géry Debongnie
7b87470760
[IMP] store: connect function takes hash function in param
...
With this commit, we can now decides precisely if a component should be
rerendered, by using a hash function.
By default, the hash function will deep observe each store element
coming from the result of the mapStateToProps.
closes #24
2019-04-15 10:43:35 +02:00
Géry Debongnie
f5bbf25d4f
[IMP] store: add deep tracking for changes
...
This is only at the level of the store currently. To be useful, we need
to work on the 'connect' function.
2019-04-14 21:24:54 +02:00
Géry Debongnie
4ea0875fd9
[REF] store: namespace rev under __owl__ name
2019-04-14 11:27:02 +02:00
Géry Debongnie
3733734ae5
[REF] component: rename t-keep-alive to t-keepalive
...
This is useful to preserve the following nice property: when we have an
attribute t-something-someotherthing, we can get the directive name by
removing 't-' at the front, and splitting on '-'.
2019-04-14 10:44:29 +02:00
Géry Debongnie
d7bed96667
[IMP] qweb: crashes if unknown directive
...
closes #22
2019-04-14 10:43:27 +02:00
Géry Debongnie
a0f0a24d1d
[REF] component: use __owl__ as metadata key
2019-04-13 14:14:34 +02:00
Géry Debongnie
caed076f2a
[FIX] store: properly handle null values
2019-04-12 21:07:12 +02:00
Géry Debongnie
2ea01455cb
[FIX] qweb: fix issue with expression formatting
...
closes #21
2019-04-12 15:27:44 +02:00
Géry Debongnie
f300e921d6
[REF] qweb: small cleanup
2019-04-12 14:22:42 +02:00
Géry Debongnie
bba9e5fb20
[FIX] examples: update store example
2019-04-12 13:10:23 +02:00
Géry Debongnie
4f1d976206
[FIX] store: properly observe all array methods
2019-04-12 13:03:25 +02:00
Géry Debongnie
8ca806eb28
[IMP] store: make sure set function works with arrays
2019-04-12 12:45:44 +02:00
Géry Debongnie
e0608aa7fd
[IMP] store: propagate 'set' function to commit parameters
2019-04-12 12:42:14 +02:00
Géry Debongnie
111080fdbf
[FIX] store: observer array values recursively
2019-04-12 12:25:22 +02:00
Géry Debongnie
ab12ac8a9f
[IMP] store: properly handle already observed state
2019-04-12 12:17:16 +02:00
Géry Debongnie
63069d96a5
fix: properly observe recursively new values
2019-04-12 12:08:31 +02:00
Géry Debongnie
f1cc32de8f
imp: prevent store state change outside a mutation
2019-04-12 12:05:06 +02:00
Géry Debongnie
03511ce9ea
ref: reorganize store (based on different principles)
2019-04-12 11:57:29 +02:00
Géry Debongnie
d49f5670fe
ref: better store internal organization
2019-04-11 13:02:32 +02:00
Géry Debongnie
afc94c51a8
bump to v0.6.0
v0.6.0
2019-04-11 10:24:37 +02:00
Géry Debongnie
90f6808f57
ref: rename _start to _prepare
2019-04-10 10:45:27 +02:00
Géry Debongnie
f960149ba2
rem: remove destroyed hook
2019-04-10 09:35:20 +02:00
Géry Debongnie
74ce6a671e
fix: properly destroy widget in some cases
...
when widget was (props)updated, then removed from DOM, it was not
destroyed.
closes #19
2019-04-09 15:31:03 +02:00
Géry Debongnie
bc07c49a5f
imp: add willUpdateProps hook to components
2019-04-09 13:55:13 +02:00
Géry Debongnie
816ffe1b44
imp: store dispatch functions can be synchronized
2019-04-09 13:16:22 +02:00
Géry Debongnie
94c33af8e9
ref: rename 'detach' method to 'unmount'
2019-04-09 12:57:34 +02:00
Géry Debongnie
6e0ef0fd5c
ref: rename updated hook to 'patched'
2019-04-09 10:37:53 +02:00
Géry Debongnie
370a92b67e
imp: t-ref directive is now dynamic
...
closes #11
2019-04-09 10:33:08 +02:00
Géry Debongnie
c10b84cd99
ref: move magify function from utils to store
2019-04-09 10:09:29 +02:00
Géry Debongnie
7ea782bd60
fix: prevent issue in store with existing values in array
2019-04-09 10:08:37 +02:00
Géry Debongnie
bf4cbaea33
imp: unskip test, add new test
2019-04-09 09:14:22 +02:00
Alexandre Kühn
cde85269fd
imp: make store reactive (observe state and react to changes)
...
This is a pretty big change, yet still not complete.
2019-04-08 23:11:38 +02:00
Alexandre Kühn
3340401f54
imp: give reference to dispatch function in actions
2019-04-08 23:11:32 +02:00