Commit graph

682 commits

Author SHA1 Message Date
Jose Quesada
9d370776d2 printing html as it is being streamed to client 2022-12-18 16:52:12 -06:00
Greg Johnston
a845bf12e6 Clear warnings 2022-12-18 16:27:19 -05:00
Greg Johnston
c0a407b0cd Fix --release builds 2022-12-18 16:15:18 -05:00
Jose Quesada
d79d4c4f86 fixed Fragment::lazy that should take `FnOnce 2022-12-18 13:29:46 -06:00
Greg Johnston
3195ab4ffc Get Suspense/Transition hydration working 2022-12-18 07:38:51 -05:00
Jose Quesada
d071a7c1e0 added HydrationCtx helper methods for forcebly adding leptos-hk, only helpers though, still need to update component lookup logic as well as element and template creation to include these 2022-12-17 12:38:40 -06:00
Jose Quesada
234e1cda4e Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-17 11:57:25 -06:00
Jose Quesada
e140549755 now removing id and leptos-hk from elements 2022-12-17 11:57:14 -06:00
Greg Johnston
df41e4dbc2 FIxes for Suspense/Hydration 2022-12-17 08:46:09 -05:00
Greg Johnston
9c6aaed0a8 Fix issue of <Routes/> mismatch 2022-12-17 08:28:22 -05:00
Jose Quesada
abc117b9bf annotated For with #[component] 2022-12-16 14:13:51 -06:00
Greg Johnston
1826d4bab2 Remove extra logging 2022-12-15 21:56:11 -05:00
Greg Johnston
e6e71cb8e6 Remove extra logging 2022-12-15 21:55:21 -05:00
Greg Johnston
01252b841d Fix <Suspense/> SSR 2022-12-15 21:54:43 -05:00
Greg Johnston
c6d30a710a FIx issues I introduced to SSR while logging this 2022-12-15 21:04:55 -05:00
Greg Johnston
fefca82d16 Minimal tracing to show order of rendering 2022-12-15 20:56:52 -05:00
Ben Wishovich
f9bda65dbe WIP impl of SSR Header/Status setting 2022-12-15 13:14:02 -08:00
Jose Quesada
422233eecf removed some HydrationCtx things and improved tracing for DynChild 2022-12-15 12:05:17 -06:00
Jose Quesada
9eadac9f2c added HydrationCtx helpers and fixed a couple bugs with the hydration example 2022-12-15 10:04:44 -06:00
Greg Johnston
416e1a617b Change start to hydrate in example 2022-12-15 08:39:19 -05:00
Greg Johnston
01013b00e5 Implement classes in SSR macro path 2022-12-15 07:56:31 -05:00
Greg Johnston
3ef64bd372 <Suspense/> streaming and hydration issue 2022-12-14 23:18:54 -05:00
Greg Johnston
6e4448dae6 SSR work with missing node IDs 2022-12-14 10:56:48 -05:00
Greg Johnston
f17c7fdb90 Remove duplicated window_event_listener 2022-12-14 07:00:56 -05:00
Greg Johnston
21178b1682 Correct definitions of is_browser and is_server 2022-12-14 06:57:35 -05:00
Greg Johnston
8efb28826f Properly set hydration key 2022-12-12 21:17:51 -05:00
Greg Johnston
10799c33b7 Properly dispose 2022-12-12 21:17:38 -05:00
Greg Johnston
58d2ce113d Use Scope-based hydration key generation 2022-12-12 20:55:41 -05:00
Jose Quesada
2c9eff3659 impl IntoView for all std types that made sense 2022-12-12 14:45:10 -06:00
Jose Quesada
ce5355d73f impl IntoView for `Vec<impl IntoView> 2022-12-12 13:52:41 -06:00
Jose Quesada
e2ef293d19 added IntoFragment trait for all IntoIterator and also impl FromIterator for Fragment 2022-12-12 13:39:41 -06:00
Jose Quesada
0b11a8dda6 fixed compilation on non-CSR targets 2022-12-12 12:26:11 -06:00
Jose Quesada
5881fb9064 Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-12 12:18:29 -06:00
Jose Quesada
9dbbb26100 made is_server and helpers const fn and added View::into_html_element helper 2022-12-12 12:18:15 -06:00
Greg Johnston
4a1d16b641 Properly reset ID in streaming 2022-12-12 10:24:55 -05:00
Greg Johnston
c4eeb4f39f Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-12 09:49:22 -05:00
Greg Johnston
37ab7b34f9 Fix imports when in SSR mode so we don't run wasm-bindgen code 2022-12-12 09:49:15 -05:00
Greg Johnston
c4cc3e944b Merge in changes from main 2022-12-12 09:26:46 -05:00
Jose Quesada
ff21f38626 Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-12 07:29:51 -06:00
Jose Quesada
9bc8492245 removed impl of IntoView for &str and replaced with &'static str for Cow<'static, str> opt 2022-12-12 07:29:35 -06:00
Greg Johnston
2389cec5f7 Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-11 20:21:35 -05:00
Jose Quesada
811449d664 stopped DynChild from panicking when nested DynChild run within the same signal trigger but the parent runs before this child 2022-12-11 17:36:19 -06:00
Greg Johnston
b9e8777bb1 Update <For/> API 2022-12-11 17:35:46 -05:00
Jose Quesada
ff026ea953 addressed clippy lints in release mode 2022-12-11 13:27:52 -06:00
Jose Quesada
9eb1f2fdf8 addressed clippy lints 2022-12-11 13:22:01 -06:00
Jose Quesada
06538ba021 fixed DynChild when changing from Text to anything else 2022-12-11 13:06:54 -06:00
Jose Quesada
14c6dcf902 now surrounding View::Text with quotes 2022-12-11 12:57:54 -06:00
Jose Quesada
a15dedb82d impl new fmt::Debug repr for View 2022-12-11 12:43:58 -06:00
Greg Johnston
d30de9abce Add Transparent type to pass arbitrary data inside a View 2022-12-10 22:11:39 -05:00
Greg Johnston
f459253cdb Clear warning here and add explanation 2022-12-10 21:05:13 -05:00
Greg Johnston
335c040702 Implement IntoView for same set of primitive types 2022-12-10 19:33:56 -05:00
Greg Johnston
a4e5bf03d8 Start implementing IntoView for primitives 2022-12-10 19:28:28 -05:00
Jose Quesada
315407b866 Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-10 15:32:51 -06:00
Jose Quesada
d22fa3c5e7 removed IntoChild 2022-12-10 15:32:36 -06:00
Greg Johnston
6d24af7748 Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-10 16:22:55 -05:00
Jose Quesada
74ea50a293 fixed Component::new to take anything that impl IntoView 2022-12-10 13:50:05 -06:00
Greg Johnston
4a9f906571 Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-10 14:09:43 -05:00
Greg Johnston
6db086c0a6 Meant to delete this, not comment it out 2022-12-10 14:06:42 -05:00
Greg Johnston
a7da8232a7 I was wrong -- these will be automatically disposed by the parent scope in the correct order, and actually shouldn't be done manually 2022-12-10 14:06:18 -05:00
Jose Quesada
a5f868915a added trait for converting impl AsRef<web_sys::Element> to HtmlElement<AnyElement> 2022-12-10 12:16:08 -06:00
Jose Quesada
237bacc2da addressed all clippy lints 2022-12-10 10:50:01 -06:00
Jose Quesada
11720302a2 addressed all clippy lints for web targets 2022-12-10 09:54:49 -06:00
Jose Quesada
e097ec84c2 started addressing clippy lints and fixed an undiscovered bug 2022-12-10 08:40:24 -06:00
Greg Johnston
a7c16c9b09 Implement PartialEq and Eq for View 2022-12-10 07:37:07 -05:00
Greg Johnston
1b8db4d4f4 "Implement Clone on View and its affiliates. Necessary for <Transition/> and some routing features. No significant changes needed, every type involved could already derive Clone. 2022-12-09 22:17:26 -05:00
Jose Quesada
dd16890021 Component now creating child scope, forgot about this 2022-12-09 18:58:38 -06:00
Jose Quesada
a17651fe02 removed the workspace override 2022-12-09 18:00:06 -06:00
Jose Quesada
094492f076 impl IntoChild for tuples up to 26 in size 2022-12-09 17:13:37 -06:00
Jose Quesada
6d5994f72e removed TopoId 2022-12-09 17:08:11 -06:00
Jose Quesada
641a064200 removed IntoEach until we can come up with a better game plan 2022-12-09 17:04:32 -06:00
Jose Quesada
c83f29be1b fix DynChild saving it's old child, rather than the new one 2022-12-09 16:46:02 -06:00
Jose Quesada
bd3cc0b5ec fix DynChild trying to render old child rather than new one 2022-12-09 16:17:37 -06:00
Jose Quesada
1ee9c2432b impl IntoView for tuples of up to 26 fields as well as for (Scope, T) 2022-12-09 11:29:46 -06:00
Jose Quesada
b0c27c48f6 updated example to work with new Each 2022-12-09 10:49:15 -06:00
Jose Quesada
c74a8274f2 removed child scope creation within Each 2022-12-09 10:44:05 -06:00
Jose Quesada
2ceb7f8934 fixed Fragment which would try mounting it's children while hydrating 2022-12-09 10:03:08 -06:00
Jose Quesada
16af593277 added render_to_string entry point and fixed bug where id counter would not be reset on every server render call 2022-12-09 09:34:25 -06:00
Jose Quesada
51c8d85528 custom user id's on HtmlElement is now supported during hydration 2022-12-09 09:15:37 -06:00
Jose Quesada
4ffc53a1dc not panicking when elements/components cannot be found 2022-12-09 08:47:53 -06:00
Jose Quesada
b7eeba77a0 fixed DynChild on release to prevent it merging with surrounding text 2022-12-09 08:25:39 -06:00
Jose Quesada
a8fb2720b9 removed a sneaky c that was in the SSR id generation for components, as well as fixed an extra id call count that wasn't supposed to be there 2022-12-08 22:40:49 -06:00
Jose Quesada
a50f1c58f7 fixed Each optimizations 2022-12-08 20:38:59 -06:00
Jose Quesada
6528aadb90 removed debug statement 2022-12-08 19:18:23 -06:00
Jose Quesada
dcd9842fca Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-08 18:42:55 -06:00
Jose Quesada
5a976525c0 fixed Each moving items it did not need to move 2022-12-08 18:42:36 -06:00
Greg Johnston
eb40f9f7c7 Remove leptos_dom/ssr dependencies 2022-12-08 19:32:46 -05:00
Greg Johnston
d0fa9b89bf Remove my logs 2022-12-08 19:25:50 -05:00
Jose Quesada
21716ea59d fixed panic on DynChild for double taking an option 2022-12-08 18:15:57 -06:00
Jose Quesada
e641108ed3 fixed error compiling 2022-12-08 18:01:06 -06:00
Jose Quesada
c3b4945c7e removed all cfgs that depend on anything but web and wasm32 2022-12-08 17:56:52 -06:00
Jose Quesada
95c535290d Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-08 17:48:45 -06:00
Jose Quesada
6af0b1a8ed hydration is now determained at runtime startup 2022-12-08 17:48:30 -06:00
Greg Johnston
9928abf36d Fix closing-node creation in Each in release 2022-12-08 18:45:27 -05:00
Greg Johnston
135317b7b8 Method, not a field 2022-12-08 18:26:44 -05:00
Jose Quesada
6b24135070 fixed subtle bug when hydrating from a text node would cause DynChild to not unmount correctly 2022-12-08 17:00:55 -06:00
Jose Quesada
e08808c2ab fixed SSR compilation errors 2022-12-08 16:13:12 -06:00
Jose Quesada
a932f72a4f DynChild now creating child scopes 2022-12-08 16:07:44 -06:00
Jose Quesada
75befde788 now creating child scopes for Each 2022-12-08 15:17:12 -06:00
Jose Quesada
adac34790e now creating child scopes for Each items, still not cleaning them up, however 2022-12-08 11:50:22 -06:00
Jose Quesada
838d0d27c9 fixed DynChild not removing the text generated on SSR 2022-12-08 11:10:34 -06:00
Jose Quesada
d29d29c1d4 fixed .into_view(cx) calling order to match between SSR and CSR 2022-12-08 10:41:28 -06:00
Jose Quesada
61e206c227 corrected DynChild to now mount children on SSR 2022-12-08 09:19:00 -06:00
Greg Johnston
45395fe580 Fix off-by-one issue 2022-12-07 15:46:09 -05:00
Jose Quesada
3a90ed6c21 added debug aids to find the off-by-one error 2022-12-07 12:33:39 -06:00
Jose Quesada
55b691e1b0 marker hydration fixed, but we have an off-by-one error on id generation 2022-12-07 12:05:12 -06:00
Jose Quesada
c9b57ffa85 changed the value to bind to another input while I fix text 2022-12-07 10:43:10 -06:00
Jose Quesada
c239716170 updated the example to work with hydartion 2022-12-07 10:04:54 -06:00
Jose Quesada
46ef1bcf5d initial impl of eager hydration 2022-12-07 09:36:36 -06:00
Jose Quesada
5ac06251d4 Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-07 07:24:53 -06:00
Jose Quesada
395cfe6bf1 fixed SSR and CSR cfg features 2022-12-07 07:24:35 -06:00
Greg Johnston
963ff85a5f Get basic SSR example working 2022-12-06 23:04:48 -05:00
Greg Johnston
dcbdbc8925 <template/> doesn't work as a self-closing tag 2022-12-06 23:03:33 -05:00
Jose Quesada
c290d1e9d6 started impl hydration for HtmlElement 2022-12-06 20:14:35 -06:00
Jose Quesada
51e5c6ba62 fixed TopoId not having a sum field 2022-12-06 11:35:31 -06:00
Jose Quesada
ee470b37bb removed starting_offset when calculating children ids 2022-12-06 10:26:19 -06:00
Jose Quesada
74c716e0f6 fixed attrs that start with an empty value from not having a space 2022-12-06 10:12:14 -06:00
Jose Quesada
00c25b5605 fixed EachItem not getting <template /> markers, as well as Unit 2022-12-06 09:55:02 -06:00
Jose Quesada
280f7a7735 removed cx param from all helper methods 2022-12-06 07:32:49 -06:00
Jose Quesada
f02405b649 fixed IntoProperty from disconnection from overwritten Scope 2022-12-06 07:24:21 -06:00
Jose Quesada
d6ef65daf6 fixed IntoClass from not disconnecting from overwritten Scope 2022-12-06 07:21:14 -06:00
Jose Quesada
98414ac192 removed overzelus use of Scope in Attribute 2022-12-06 07:15:39 -06:00
Jose Quesada
8b7728096a fixed IntoChild to not disconnect from overwritten Scope 2022-12-05 20:51:00 -06:00
Greg Johnston
aec289e384 Get SSR benchmarks running again 2022-12-05 20:34:29 -05:00
Greg Johnston
432eda8d6d Add some often-used helper functions 2022-12-05 20:00:27 -05:00
Greg Johnston
5c45538e9f Make necessary changes for stable support for router and meta 2022-12-05 18:55:03 -05:00
Greg Johnston
2ff5ec21c8 0.0.20 2022-12-05 16:25:16 -05:00
Greg Johnston
aa10ab861a Fix new cx-passing API for Attribute 2022-12-05 16:09:22 -05:00
Greg Johnston
166df8d4c4 Merge changes to remove cx everywhere 2022-12-05 16:05:12 -05:00
Greg Johnston
666269539d Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-05 16:04:54 -05:00
Greg Johnston
0230b1ffa5 Deal w/ merge issues and get SSR working 2022-12-05 16:04:02 -05:00
Jose Quesada
3dd789f0c2 fixed IntoAttribute from disconnecting from it's overwritten Scope 2022-12-05 14:30:21 -06:00
Greg Johnston
dbb0fca1cb Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-05 15:12:09 -05:00
Greg Johnston
b8bd3bef13 Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-05 15:11:17 -05:00
Jose Quesada
59f753cebb impl all the macro helper traits for (Scope, T) 2022-12-05 14:09:39 -06:00
Greg Johnston
d5f91e67a5 First pass at SSR 2022-12-05 15:09:04 -05:00
Greg Johnston
1b854ed787 Warn if you re-set a NodeRef 2022-12-05 14:24:33 -05:00
Jose Quesada
13f8006162 added HtmlElement::node_ref 2022-12-05 13:19:34 -06:00
Jose Quesada
b3d813d0c1 renamed IntoNode to IntoView and Node to View, and fixed broken doc links 2022-12-05 12:39:42 -06:00
Jose Quesada
1fbe8bd790 fixed the example to show undelegated 2022-12-05 12:28:14 -06:00
Jose Quesada
eba8af3b38 fixed event names and removed superfluous debug stmt 2022-12-05 12:23:53 -06:00
Jose Quesada
589f2585cc added small list of events that don't bubble 2022-12-05 11:43:18 -06:00
Jose Quesada
b69119f11f added all events I could find 2022-12-05 11:12:31 -06:00
Greg Johnston
f893dca39b This should handle the disposal correctly, when the parent scope disposes, instead of on Drop (which is immediate.) 2022-12-05 09:24:52 -05:00
Greg Johnston
2ef8032110 The event names shouldn't actually start with "on" — that's the HTML attribute form 2022-12-04 23:03:54 -05:00
Greg Johnston
3992febbfc Restored these events so they can be used, just typed as Event 2022-12-04 23:03:19 -05:00
Jose Quesada
18ff334f70 disabled non-existant web_sys event types 2022-12-04 21:38:23 -06:00
Jose Quesada
d2b4ae30d1 Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-04 21:30:55 -06:00
Jose Quesada
abed797027 added HtmlElement::prop to the builder 2022-12-04 21:30:48 -06:00
Greg Johnston
a4ca863d42 Should insert the actual event type instead of MouseEvent! 2022-12-04 22:26:28 -05:00
Jose Quesada
6737413103 made Undelegated inner field public so users can just wrap any event with it to force it undelegated 2022-12-04 21:23:16 -06:00
Greg Johnston
33c3851d5b Fix fake assignment 2022-12-04 22:13:07 -05:00
Greg Johnston
7c298272d3 Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-04 22:11:00 -05:00
Greg Johnston
71a2a24d09 Working components in view! macro 2022-12-04 22:10:56 -05:00
Jose Quesada
cffdc56062 added Custom event helper type for events not included 2022-12-04 20:45:58 -06:00
Jose Quesada
c29c15e1b7 removed on_delegated, as this can be done through Delegated<E>` type 2022-12-04 20:36:18 -06:00
Jose Quesada
fe417d50af Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-04 17:22:24 -06:00
Jose Quesada
cc538f8427 added more events 2022-12-04 17:22:03 -06:00
Jose Quesada
07db7ae62b started the grooling process of adding typed events 2022-12-04 09:13:20 -06:00
Greg Johnston
09d2a56672 Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-03 21:29:22 -05:00
Greg Johnston
8ea7e20dfb Builder-compatible view! macro 2022-12-03 21:28:39 -05:00
Greg Johnston
02c982c80f Missing cfg causing non-CSR builds to break; I may have removed this accidentally or somethign 2022-12-03 21:27:53 -05:00
Jose Quesada
a5b157f14f uncommented (presumably) accidental comment of components import 2022-12-03 17:58:51 -06:00
Jose Quesada
5d439ceee8 fixed merge conflict 2022-12-03 16:52:57 -06:00
Jose Quesada
282ece2fab fixed Each when moving to take into account backshift 2022-12-03 16:50:29 -06:00
Greg Johnston
205abd4cbc Add _prop macro helper 2022-12-03 14:47:39 -05:00
Greg Johnston
fbb372e618 Add is_server and is_dev helper macros 2022-12-03 14:47:31 -05:00
Greg Johnston
b4679ea688 Fix NodeRef on stable 2022-12-03 14:28:33 -05:00
Greg Johnston
d2f68d8a0a Add helpers for simple logging 2022-12-03 14:22:19 -05:00
Greg Johnston
ebe872ca57 Add NodeRef 2022-12-03 14:21:42 -05:00
Greg Johnston
bce1ed8d67 Add NodeRef 2022-12-03 14:21:36 -05:00
Greg Johnston
a87ffd6d5c Make it possible for macro to specify event types automatically by reducing to one generic 2022-12-03 14:20:18 -05:00
Greg Johnston
c0d2dde53a _class helper for macro 2022-12-03 14:05:59 -05:00
Greg Johnston
cd93ecb5ab Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-03 13:43:14 -05:00
Greg Johnston
4beee7f924 Fix bounds check -- was panicking on remove because added_delta was -1 2022-12-03 13:43:05 -05:00
Jose Quesada
234260a784 Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-03 12:29:45 -06:00
Jose Quesada
e82d4d492b revert EachItem lazy text fill 2022-12-03 12:29:28 -06:00
Greg Johnston
aa0271a493 Add _attr helper for macro 2022-12-03 13:06:15 -05:00
Greg Johnston
29db252411 Remove fill_if_text since eager now 2022-12-03 13:06:06 -05:00
Jose Quesada
aa5caaf4f1 Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-03 10:38:47 -06:00
Jose Quesada
718b5f8ae1 forgot to fill child text nodes of EachItem 2022-12-03 10:34:36 -06:00
Greg Johnston
48e4e01e24 Fast path for Text -> Text. I think this is probably broken at the moment (if you replace Text with something else) but can fix 2022-12-03 11:29:53 -05:00
Greg Johnston
7948a1914a Fill Text node eagerly 2022-12-03 10:54:38 -05:00
Greg Johnston
1fa023ee08 Merge branch 'leptos_dom_v2' of https://github.com/jquesada2016/leptos into leptos_dom_v2 2022-12-03 10:35:58 -05:00
Greg Johnston
cc1c264548 ._child() helper for macro (merges child and dyn_child) 2022-12-03 10:34:27 -05:00
Jose Quesada
11960efb1b impl Deref<Target = web_sys::HtmlElement> for HtmlElement<El>` 2022-12-03 08:45:29 -06:00
Jose Quesada
16706233c7 fixed Each move requiring backshifting all items 2022-12-02 21:17:27 -06:00
Greg Johnston
70e18d2aeb Automatically enable the stable feature if you're on stable Rust 2022-12-02 12:56:05 -05:00
Jose Quesada
c49ed49580 refactored a bit and left the premise for fixing Move in Each 2022-12-01 23:14:30 -06:00
Greg Johnston
a0e0194475 FxHashSet uses a faster hashing algorithm than the default SipHash 2022-12-01 17:22:35 -05:00
Greg Johnston
d266943a8f id isn't necessary in the browser version, right? 2022-12-01 17:22:05 -05:00
Jose Quesada
86acd8a461 now reusing text nodes 2022-12-01 14:31:47 -06:00
Jose Quesada
786b7abcb7 fixed Each opts to handle more edge casses 2022-12-01 07:58:28 -06:00
Jose Quesada
05adbda4ca fixed panic when trying to get parent node 2022-11-30 20:31:09 -06:00
Jose Quesada
6db59d526f fixed panic when dropping components 2022-11-30 20:12:13 -06:00
Jose Quesada
0149ce1be1 removed need for 2 marker nodes 2022-11-30 13:29:51 -06:00
Jose Quesada
b058e68e4e addressed errors and clippy lints 2022-11-30 09:01:16 -06:00
Greg Johnston
0ef0417b5a Separate SSR + browser implementations, with eager creation in browser (+ string interning) 2022-11-29 22:15:27 -05:00
Jose Quesada
649378ffbe now using Range only for potentially large groups of nodes 2022-11-29 20:08:54 -06:00
Jose Quesada
060f8d7a6a usine clone_node on cached nodes 2022-11-29 17:00:42 -06:00
Jose Quesada
b8c125cd14 initial impl of eager builder 2022-11-29 16:50:52 -06:00
Jose Quesada
33afcf6b17 impl eager setting of attr 2022-11-29 15:49:32 -06:00
Jose Quesada
bbb188d2f6 added some more small opts, including using only a single Range obj 2022-11-29 13:44:03 -06:00
Jose Quesada
d8f8673ad3 tuned append opt to include the limit 2022-11-29 13:11:00 -06:00
Jose Quesada
a73c71842a added Each append opt 2022-11-29 12:49:46 -06:00
Jose Quesada
d59ce5aebf fixed replace all items opt 2022-11-29 12:01:19 -06:00
Jose Quesada
5b14aa98e9 Comment markers are now being created by cloning a reference 2022-11-29 11:15:29 -06:00
Jose Quesada
f78400a955 fixed merge conflict 2022-11-29 07:44:47 -06:00
Jose Quesada
488856fdcc removed broken debug assertions 2022-11-29 07:37:33 -06:00
Greg Johnston
42659e20cd Fast path for clearing 2022-11-28 21:51:23 -05:00
Greg Johnston
54b7b780c8 (Some of?) these debug assertions seem to break the release build 2022-11-28 21:37:47 -05:00
Jose Quesada
a638c3d39a removed superfluous console::log 2022-11-28 19:13:46 -06:00
Jose Quesada
ebb50cff6c fixed building on non-browser targets 2022-11-28 19:04:00 -06:00
Jose Quesada
9424c293d7 fixed ops conflicting with each other 2022-11-28 18:49:06 -06:00
Jose Quesada
0b72c5550b fixed Each clear opt 2022-11-28 17:26:48 -06:00
Jose Quesada
698527ddf6 fixed building in release 2022-11-28 15:02:09 -06:00
Jose Quesada
af067361a9 checking to make sure children is not empty before applying replace opt 2022-11-28 14:19:31 -06:00
Jose Quesada
04aa1585fa optimized the case of replacing all items in an Each 2022-11-28 14:04:14 -06:00
Jose Quesada
9e84a2c273 Each now optimized for clearing 2022-11-28 13:30:37 -06:00
Jose Quesada
9050572c68 EachItem is now removing it's direct children 2022-11-28 13:21:13 -06:00
Jose Quesada
40c6081256 DynChild is now responsible for removing it's direct children rather than relying on WebSysNode 2022-11-28 13:12:22 -06:00
Jose Quesada
484e6796c0 Component now creating a child scope` 2022-11-28 08:59:35 -06:00
Greg Johnston
fdef43c2fc Small performance optimizations: wasm-bindgen string interning and cached document() (+ a function to mount to any parent) 2022-11-28 08:45:09 -05:00
Greg Johnston
2b71c07fa9 Guard against fragments that don't actually exist 2022-11-28 07:39:30 -05:00
Greg Johnston
90854e38e6 Add event system 2022-11-27 19:42:37 -05:00
Jose Quesada
8fac1c5b3a greatly improved tracing visibility 2022-11-27 17:17:24 -06:00
Jose Quesada
6439964ef6 made children field of Component pub and added Component example to examples/test-bench 2022-11-27 11:57:35 -06:00
Jose Quesada
5b612d8084 fixed Component not mounting children on into_node calls 2022-11-27 11:46:36 -06:00
Jose Quesada
b2d9bc4aa8 removed duplicate value, as duplicate keys are invalid 2022-11-27 11:34:35 -06:00
Jose Quesada
f615dae87c applied new rustfmt config and added HtmlElement::dyn_attr 2022-11-27 11:32:18 -06:00
Jose Quesada
79058e1535 impl IntoNode for [Node; N] and `[HtmlElement<El>; N] 2022-11-27 09:49:57 -06:00
Jose Quesada
a51c12d152 added HtmlElement::attr_bool helper method 2022-11-27 09:45:38 -06:00
Jose Quesada
8999a24ec3 can now set id and attrs 2022-11-27 09:34:19 -06:00
Greg Johnston
36de06f183 0.0.19 2022-11-27 09:13:21 -05:00
Jose Quesada
da1916e35a renamed Each to EachKey 2022-11-27 07:29:17 -06:00
Jose Quesada
b1987648cf addressed most clippy lints 2022-11-27 07:20:33 -06:00
Jose Quesada
001323c058 fixed compilation on non-browser targets 2022-11-27 07:09:07 -06:00
Jose Quesada
55633560e7 Each is now fully working 2022-11-26 20:59:54 -06:00
Jose Quesada
be60713b13 updated prepare_for_move to use Range 2022-11-26 19:36:25 -06:00
Jose Quesada
000a4bf62d initial (broken move) impl of Each 2022-11-26 18:49:51 -06:00
Greg Johnston
c0709b210d Enable wasm-bindgen string interning for certain types by default 2022-11-26 17:19:11 -05:00
Jose Quesada
68938054ca removed name and rename from DynChild 2022-11-26 09:37:56 -06:00
Jose Quesada
368b96424d refactored components to not render as many comments in prod 2022-11-26 09:33:57 -06:00
Greg Johnston
de524e21b1 Clear warnings 2022-11-26 09:01:05 -05:00
Jose Quesada
c5da652ac1 renamed Fragment representation from <Frgament> to <> 2022-11-26 07:17:12 -06:00
Jose Quesada
38f71a3cc9 impl Default for all HTML tags 2022-11-26 07:16:15 -06:00
Greg Johnston
3f6eeb319a NodeRef should actually track so you can use it in effects 2022-11-26 08:01:19 -05:00
Jose Quesada
2d21146665 basic CSR is working 2022-11-25 17:39:42 -06:00
Greg Johnston
66ecc2ac25 Fix NodeRef doctest 2022-11-25 16:53:48 -05:00
Greg Johnston
a46e92bed8 Clean up Fn implementation issue 2022-11-25 15:48:40 -05:00
Greg Johnston
994debea3f Change _ref attribute to use NodeRef type 2022-11-25 15:38:46 -05:00
Jose Quesada
24b1fc01ca added impl IntoNode for most types IntoChild supported 2022-11-25 14:37:47 -06:00
Jose Quesada
fbfdb9fd15 now collecting Scope only on `IntoNode::into_node 2022-11-25 13:10:51 -06:00
Jose Quesada
54074409ab only std::prelude clashing structs should have a trailing _ 2022-11-25 07:39:15 -06:00
Jose Quesada
e738c5c41f forgot to redirect docs to the builder fn 2022-11-24 21:37:46 -06:00
Jose Quesada
d3ec86ab18 added all HTML elements 2022-11-24 21:35:40 -06:00
Jose Quesada
ce5b8f95e7 forgot to insert opening and closing component marker nodes into the document fragment 2022-11-24 16:57:44 -06:00
Jose Quesada
6bb20aed15 initial API design 2022-11-24 14:45:31 -06:00
Jose Quesada
9b3c9eb90b clean slate 2022-11-24 09:16:57 -06:00
Greg Johnston
19d7b8434b
Merge branch 'main' into typed-event-handlers 2022-11-23 19:03:52 -05:00
Greg Johnston
6949750668 Fixing tests and examples 2022-11-23 18:29:20 -05:00
Greg Johnston
3a65ad9a51 Fix type inference on server 2022-11-23 16:54:41 -05:00
Greg Johnston
7a10ffd150 A couple small DX improvements re: we, and making sure it builds /tests properly 2022-11-23 15:12:21 -05:00
Greg Johnston
6966ef4b39 Fix renderer panic issue on release builds 2022-11-23 11:03:16 -05:00
Greg Johnston
e0c8b827c4 Fix leptos_dom tests 2022-11-23 10:24:50 -05:00
Greg Johnston
ebef5156a5 Final fix to render_to_string tests 2022-11-23 09:59:24 -05:00
safx
f3947abdc2
Merge branch 'main' into typed-event-handlers 2022-11-23 22:51:31 +09:00
Safx
701a12ab46 Add typed event handlers 2022-11-23 22:50:26 +09:00
Greg Johnston
6ddef3018f Better errors on renderer bugs (fixes issue #112) 2022-11-23 07:37:47 -05:00
Greg Johnston
0cbab3ef87 Don't run render_to_string test if csr or hydrate is enabled 2022-11-23 07:21:19 -05:00
Greg Johnston
102fb9d819 Fix render_to_string test 2022-11-22 21:18:28 -05:00
Greg Johnston
19c3186d3f Add a simple render_to_string() helper for synchronous HTML rendering 2022-11-22 19:51:05 -05:00
Greg Johnston
2ce7e71748 0.0.18 2022-11-22 07:37:34 -05:00
Greg Johnston
6c521226e3 Update other packages to handle new thread-local reactives 2022-11-21 21:46:07 -05:00
Greg Johnston
1f1218bbb7 Fix broken links and other issues in docs 2022-11-21 09:25:09 -05:00
Greg Johnston
d0c6319a72 Resolves issue #97 2022-11-21 07:30:13 -05:00
Greg Johnston
ad880efc0d leptos 0.0.17 and leptos_router 0.0.3 2022-11-18 15:45:04 -05:00
Ben Wishovich
971f75b6c5 It mostly works, except for the CSS 2022-11-16 16:09:51 -08:00
Ben Wishovich
fc6a3c0eb2 Getting closer 2022-11-16 13:36:35 -08:00
Greg Johnston
3c3e87f97c
Merge pull request #81 from gbj/send-streaming
Make `render_to_stream()` return a `Stream` that is `Send`
2022-11-16 07:08:54 -05:00
Greg Johnston
fd6c2d3059 Combine resources and suspenses so it's possible for suspenses to resolve first 2022-11-16 07:07:54 -05:00
Greg Johnston
2173bb8a29 Implements render_to_stream() in a way that is Send 2022-11-15 22:20:25 -05:00
Greg Johnston
e74e9a3fc9 Restore logging functions 2022-11-15 12:11:44 -05:00
Greg Johnston
05f635f4ac Don't require specific subminor versions in dev-dependencies 2022-11-13 09:04:25 -05:00
Greg Johnston
ba3156c878 0.0.16 2022-11-13 09:02:04 -05:00
Greg Johnston
a298bc73dd Fix hydration example 2022-11-12 21:57:37 -05:00
Greg Johnston
50cc2f5eac Don't run DOM functions in doctests 2022-11-12 20:16:21 -05:00
Greg Johnston
0b5657564d Restore but hide ssr_event_listener 2022-11-11 22:17:09 -05:00
Greg Johnston
0f89e64eda Hide ssr_event_listener 2022-11-11 22:13:26 -05:00
Greg Johnston
33bbfa6f75
Merge branch 'main' into doc-patrol 2022-11-11 22:02:39 -05:00
Greg Johnston
7832b59cdd Fix pub here 2022-11-11 21:57:51 -05:00
Greg Johnston
0e093d2c23 Complete leptos_dom docs 2022-11-11 21:37:46 -05:00
Greg Johnston
183745f319 Class docs 2022-11-11 17:03:54 -05:00
Greg Johnston
9a59c371fd Docs for all DOM operation wrappers 2022-11-10 22:09:28 -05:00
Greg Johnston
e19dd0a226 Fix tests 2022-11-10 07:45:58 -05:00
Greg Johnston
8e20ab28e0 leptos_dom docs 2022-11-10 07:40:16 -05:00
Greg Johnston
3dfcf99a4c Unused file 2022-11-10 07:31:52 -05:00
Greg Johnston
1e04442f97 Fix broken links in docs 2022-11-10 07:29:22 -05:00
Greg Johnston
7799479364 Begin leptos_dom docs 2022-11-10 07:27:08 -05:00
Greg Johnston
92f4ea5888 Fixes issue #60 2022-11-08 07:15:26 -05:00
Greg Johnston
6b82a37dea
Merge pull request #58 from gbj/fix-component-and-element-order
Fix the out-of-order component/element rendering in #53.
2022-11-06 22:22:47 -05:00
Greg Johnston
49820ccba6 This should fix the out-of-order component/element rendering in #53. 2022-11-06 20:37:09 -05:00
Greg Johnston
36be004ef2 Avoid manual delegation for all the DOM events that don't bubble by default. (This is technically too conservative, as one or two of these only don't bubble on certain elements, but it's simpler than passing in the element name and only a very small deopt in those cases.) 2022-11-06 20:00:35 -05:00
Greg Johnston
a5712d3e17 0.0.12 2022-11-03 20:00:26 -04:00
Greg Johnston
abc1c07053 Work on fixing tests 2022-11-03 08:08:03 -04:00
Greg Johnston
03821b8edb Clear warning when no features enabled 2022-11-02 22:16:23 -04:00
Greg Johnston
db69145fd9 Sorting out all sorts of feature flags etc. so everything will build and test 2022-11-02 21:46:47 -04:00
Greg Johnston
8ea73565de Shift from mutually-exclusive features to a more-gracefully-degrading system of features ordered by preference, clean up some warnings, and use cfg_if for improved readability 2022-11-02 20:41:00 -04:00
Greg Johnston
dbc7fb13fc Fix feature flags here 2022-10-29 17:18:50 -04:00
Greg Johnston
2fbe08f128 0.0.11 2022-10-24 19:30:13 -04:00
Greg Johnston
c77bdb3781 0.0.10 2022-10-22 07:56:33 -04:00
Greg Johnston
fb90108315 Remove leptos_dom profile 2022-10-20 21:51:42 -04:00
Greg Johnston
ac624dd7ac Fix stable feature 2022-10-19 08:50:17 -04:00
Greg Johnston
e909232292 0.0.9 2022-10-18 21:54:05 -04:00
Greg Johnston
42c4aa74a6 Add reconciler attribution 2022-10-18 17:01:54 -04:00
Greg Johnston
e7ac4be5b8 Merge branch 'main' of https://github.com/gbj/leptos 2022-10-18 10:42:58 -04:00
Greg Johnston
1bbbdbf29e Rationalize features and set up defaults so that a) users don't need to specify csr mode by default and b) tests pass without feature flags 2022-10-18 10:42:55 -04:00
Dan Heuckeroth
8c5d5839e1 Remove wee_alloc dependency
This isn't currently used and has a security advisory: RUSTSEC-2022-0054
2022-10-18 08:22:46 -04:00
Greg Johnston
ade1376eec Fix SSR with new run_scope_undisposed 2022-10-17 19:47:01 -04:00
Greg Johnston
2470a91880 Consistency 2022-10-17 13:26:57 -04:00
Greg Johnston
015bfc24fd Feature-flag to enable support for stable Rust instead of nightly 2022-10-17 13:23:20 -04:00
Greg Johnston
7c19dd8039 Clearing some additional warnings in examples 2022-10-17 11:03:43 -04:00
Greg Johnston
3f7e7193ea Clearing up some of the flood of warnings for unused imports etc. that have come up as I've shifted around implementations 2022-10-17 10:45:20 -04:00
Greg Johnston
fc5ef03c30 Remove erroneous default feature flag on leptos_dom — leftover from building docs but causes build errors for actual apps 2022-10-17 10:36:24 -04:00
Greg Johnston
9f95041c2b Fix issue #3 and update view! SSR tests 2022-10-17 08:09:25 -04:00
Greg Johnston
907e9491b9 Escape HTML in SSR (issue #2) 2022-10-16 22:42:52 -04:00
Greg Johnston
9a03fcf2ef Provide helping for streaming SSR 2022-10-16 22:06:13 -04:00
Greg Johnston
fbf4f236bf Remove extra logging 2022-10-15 22:23:29 -04:00
Greg Johnston
899dcb9cd2 Fix inner_html rendering 2022-10-15 22:21:23 -04:00
Greg Johnston
7a04411b64 New reactive system: switching to using SecondaryMaps from slotmap to reduce binary size and creation cost significantly 2022-10-15 19:26:17 -04:00
Greg Johnston
31a64173ee Remove logs 2022-10-15 17:08:35 -04:00
Greg Johnston
9ab08795d9 0.0.7 2022-10-14 15:47:16 -04:00
Greg Johnston
16f084a712 Fix Hacker News SSR/streaming/hydration 2022-10-13 18:53:31 -04:00
Greg Johnston
69b0e40638 Addresses issue #6 2022-10-13 16:29:47 -04:00
Greg Johnston
8a6ee14ff5 Update misleading comment 2022-10-13 16:27:32 -04:00
Greg Johnston
6e903b5ea6 Call out to JS for append_nodes so we don't call out n times for n nodes; need to benchmark 2022-10-13 16:27:08 -04:00
Greg Johnston
a03cee3faf Simply versioning of interrelated packages 2022-10-12 22:30:33 -04:00
Greg Johnston
2d2f2a52a4 Update all libraries and examples to use new set_x API 2022-10-08 20:39:13 -04:00
Greg Johnston
0b76882990 Fix types with no feature enabled 2022-10-08 08:06:59 -04:00
Greg Johnston
ae9304a189 Version 0.0.3 2022-10-08 08:02:07 -04:00
Greg Johnston
4c8707d290 Add create_selector 2022-10-08 07:49:46 -04:00
Greg Johnston
10cc0fbef4 Clean up some dependency issues 2022-10-07 16:28:22 -04:00
Greg Johnston
c0c42fdf59 Clean up features/dependencies 2022-10-07 16:05:28 -04:00
Greg Johnston
a4f36102f1 Roll back leptos_dom 0.0.2 2022-10-07 07:05:05 -04:00
Greg Johnston
3327255440 Make leptos_dom submodules public (to allow use from macro) 2022-10-07 07:00:20 -04:00
Greg Johnston
b23a6b6a26 Add version number for leptos dependencies 2022-10-07 06:53:17 -04:00
Greg Johnston
97d7afec2e Fix authors field 2022-10-07 06:50:21 -04:00
Greg Johnston
0709675702 Remove annoying logs 2022-10-07 06:43:01 -04:00
Greg Johnston
5742cc8bd9 Set versions 2022-10-07 06:41:50 -04:00
Greg Johnston
1d42c1b902 Significant progress on accurate/robust hydration 2022-10-01 21:25:49 -04:00
Greg Johnston
4008240bff Work on hydration 2022-09-28 21:35:21 -04:00