@@ -10,14 +10,14 @@ use std::{
1010 time:: Duration ,
1111} ;
1212
13- use :: warnings:: Warning ;
14- use dioxus_lib:: prelude:: Task ;
15- use dioxus_lib:: prelude:: * ;
16- use dioxus_lib:: signals:: { Readable , Writable } ;
17- use dioxus_lib:: {
13+ use dioxus:: prelude:: * ;
14+ use dioxus:: {
1815 hooks:: { use_memo, use_reactive} ,
1916 signals:: CopyValue ,
2017} ;
18+ use dioxus_core:: {
19+ provide_root_context, spawn_forever, use_drop, ReactiveContext , SuspendedFuture , Task ,
20+ } ;
2121use futures_util:: stream:: { FuturesUnordered , StreamExt } ;
2222use tokio:: sync:: Notify ;
2323#[ cfg( not( target_family = "wasm" ) ) ]
@@ -235,8 +235,7 @@ impl<Q: QueryCapability> QueriesStorage<Q> {
235235 // Run the query
236236 QueriesStorage :: < Q > :: run_queries ( & [ ( & query_clone, & query_data_clone) ] ) . await ;
237237 }
238- } )
239- . expect ( "Failed to spawn interval task." ) ;
238+ } ) ;
240239 * interval_task = Some ( ( interval, task) ) ;
241240 }
242241
@@ -256,14 +255,14 @@ impl<Q: QueryCapability> QueriesStorage<Q> {
256255
257256 // Spawn clean up task if there no more reactive contexts
258257 if query_data. reactive_contexts . lock ( ) . unwrap ( ) . is_empty ( ) {
259- * query_data. clean_task . borrow_mut ( ) = spawn_forever ( async move {
258+ * query_data. clean_task . borrow_mut ( ) = Some ( spawn_forever ( async move {
260259 // Wait as long as the stale time is configured
261260 time:: sleep ( query. clean_time ) . await ;
262261
263262 // Finally clear the query
264263 let mut storage = storage_clone. write ( ) ;
265264 storage. remove ( & query) ;
266- } ) ;
265+ } ) ) ;
267266 }
268267 }
269268
@@ -318,14 +317,14 @@ impl<Q: QueryCapability> QueriesStorage<Q> {
318317
319318 // Spawn clean up task if there no more reactive contexts
320319 if query_data. reactive_contexts . lock ( ) . unwrap ( ) . is_empty ( ) {
321- * query_data. clean_task . borrow_mut ( ) = spawn_forever ( async move {
320+ * query_data. clean_task . borrow_mut ( ) = Some ( spawn_forever ( async move {
322321 // Wait as long as the stale time is configured
323322 time:: sleep ( query. clean_time ) . await ;
324323
325324 // Finally clear the query
326325 let mut storage = storage. storage . write ( ) ;
327326 storage. remove ( & query) ;
328- } ) ;
327+ } ) ) ;
329328 }
330329
331330 QueryReader {
@@ -610,9 +609,6 @@ impl<Q: QueryCapability> UseQuery<Q> {
610609 Q :: Ok : Clone ,
611610 Q :: Err : Clone ,
612611 {
613- let _allow_write_in_component_body =
614- :: warnings:: Allow :: new ( warnings:: signal_write_in_component_body:: ID ) ;
615-
616612 let storage = consume_context :: < QueriesStorage < Q > > ( ) ;
617613 let mut storage = storage. storage . write_unchecked ( ) ;
618614 let query_data = storage. get_mut ( & self . query . peek ( ) ) . unwrap ( ) ;
0 commit comments