Commit graph

81 commits

Author SHA1 Message Date
Jonathan Kelley
9d7ee79826 feat: events work again! 2021-06-23 01:44:48 -04:00
Jonathan Kelley
73047fe956 feat: props memoization is more powerful
This commit solves the memoization , properly memoizing properties that don't have any generic parameters. This is a rough heuristic to prevent non-static lifetimes from creeping into props and breaking our minual lifetime management.

Props that have a generic parameter are opted-out of the `partialeq` requirement and props *without* lifetimes must implement partialeq. We're going to leave manual disabling of memoization for future work.
2021-06-22 17:20:54 -04:00
Jonathan Kelley
91f1b00517 wip: move away from patch machine 2021-06-19 20:34:52 -04:00
Jonathan Kelley
62ae5d3bb9 wip: rethinking stack machine 2021-06-19 20:31:25 -04:00
Jonathan Kelley
70cd46dbb2 docs: move around examples 2021-06-17 18:00:32 -04:00
Jonathan Kelley
fe6938ceb3 wip: pre vnodes instead of vnode 2021-06-08 14:00:29 -04:00
Jonathan Kelley
508c560320 Feat: massive changes to definition of components
This change switches back to the original `ctx<props>` syntax for
commponents. This lets lifetime elision to remove the need to match
exactly which lifetime (props or ctx) gets  carried to the output. As
such, `Props` is currently required to be static. It *is* possible to
loosen this restriction, and will be done in the future, though only
through adding metadata about the props through the Props derive
macro. Implementing the IS_STATIC trait is unsafe, so the derive macro
will do it through some heuristics.

For now, this unlocks sharing vnodes from parents to children, enabling
pass-thru components, fragments, portals, etc.
2021-06-01 18:33:15 -04:00
Jonathan Kelley
c1fd848f89 WIP: move to static props 2021-05-31 18:55:56 -04:00
Jonathan Kelley
c5089ba3c5 wip: more progress on parity docs.
Placeholders in the rsx macro for future features.
2021-05-28 12:56:21 -04:00
Jonathan Kelley
ba975410f9 wip: parity document 2021-05-26 11:22:44 -04:00
Jonathan Kelley
ee67654f58 wip: recoil 2021-05-26 01:40:30 -04:00
Jonathan Kelley
a99147c85b Feat: Clean up repo a bit 2021-05-16 02:55:16 -04:00
Jonathan Kelley
c28697e1fe Feat: some code health 2021-05-16 02:06:02 -04:00
Jonathan Kelley
9810feebf5 Feat: major overhaul to diffing 2021-05-15 12:03:08 -04:00
Jonathan Kelley
8c541f66d5 wip: todos 2021-04-01 21:44:18 -04:00
Jonathan Kelley
cfa0927cdd feat: todomvc 2021-04-01 00:01:42 -04:00
Jonathan Kelley
ce33031519 wip: todomvc 2021-03-29 12:31:47 -04:00
Jonathan Kelley
7856f2b153 wip: livehost bones 2021-03-16 11:03:59 -04:00
Jonathan Kelley
9d0727edab Feat: remove old macro 2021-03-13 19:11:06 -05:00
Jonathan Kelley
55a5541dba WIP: some docs 2021-03-08 14:09:18 -05:00
Jonathan Kelley
808e6570d2 Feat: see if readme works in examples 2021-03-04 13:56:32 -05:00
Jonathan Kelley
bdd6be309e Feat: notes on safety, and inline listeners 2021-03-04 13:49:18 -05:00
Jonathan Kelley
cb74d70f83 wip: broken, but solved 2021-03-03 02:27:26 -05:00
Jonathan Kelley
c8bb392cad Feat: view -> render 2021-02-28 21:21:17 -05:00
Jonathan Kelley
ab655eac97 Feat: update and prep for dioxusweb 2021-02-28 17:22:23 -05:00
Jonathan Kelley
e840f472fa WIP: moving to CbIdx as serializable event system 2021-02-27 11:43:28 -05:00
Jonathan Kelley
4d01455729 Feat: update websys with lifecycle 2021-02-24 02:22:05 -05:00
Jonathan Kelley
7a6aabe4f3 Feat: WIP ctx 2021-02-20 21:59:16 -05:00
Jonathan Kelley
4b4ea1a09c Chore: move old into packages 2021-02-15 14:25:52 -05:00
Jonathan Kelley
f22ff83190 Feat: WIP on deserialize 2021-02-15 14:14:28 -05:00
Jonathan Kelley
c4e8d8bb31 Feat: wire up a very basic dom updater 2021-02-14 23:39:46 -05:00