Commit graph

233 commits

Author SHA1 Message Date
Leonard
c866ae602b
Add system for creating component attributes + new #[component] attribute (#1448)
* Add `#[component]` attribute + system for creating component attributes + other stuff

* Delete inlineprops.rs

* Update inline_props.rs

* Cargo fmt

* Fix clippy warnings and paths in props/mods.rs

* Include where clause in `#[inline_props]` output

* Allow Clippy type complexity in `LinkProps`

* Allow the type complexity lint for the entire link.rs file

* Remove snake_case -> PascalCase converter, but rather enforce PascalCase

Also:
- Put the second function inside the main one instead of besides it.
- Simplify

* Simplify type check lints so they don't return false positives

They will not always work, but they won't return any false positives, like for aliases. This is likely going to be replaced by a more polished Clippy-backed linting system.

* Fix #583

* Cargo fmt

* Add docs for `deserialize()` and remove useless comment

* Add `#[component]` to prelude

* Merge branch 'master' of https://github.com/tigerros/dioxus

* #[inline_props] is no more. Except in the docs folder, but that's going to be removed

* Remove docs folder

* Remove docs from workspace

* Resolve `DeserializerOutput` conversation
2023-09-15 09:13:36 -05:00
Jonathan Kelley
b68a1f57e0
Merge pull request #1436 from ealmloff/tracing 2023-09-13 10:41:23 -07:00
Daniel Albl
18dca07e4b
Use a gen in PartialEq for UseSharedState (#1389)
* Special case UseFutureDep for UseSharedState

* Add 'gen' to UseSharedState for use in 'PartialEq'

* Update 'gen' in 'UseSharedState::new'

* Don't require PartialEq for T in UseSharedState

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-09-13 12:10:03 -05:00
Evan Almloff
c55c17cb81 switch to tracing for logging 2023-09-06 17:47:33 -05:00
Marc Espín
a0d1e5de3a
fix: Typo on use_on_unmount (#1421) 2023-09-02 17:51:34 -05:00
Daniel Albl
555f4d5834
Add 'with' and 'with_mut' to 'use_shared_state' (#1353) 2023-08-15 13:27:19 -05:00
Evan Almloff
24c626b306 fix clippy 2023-08-08 13:43:57 -07:00
Evan Almloff
4ee4cf23d3 restore a few unneeded breaking changes 2023-08-08 13:37:29 -07:00
Evan Almloff
cfd68bf7d9 document signals crate 2023-08-07 16:56:49 -07:00
Jonathan Kelley
39e89c1fac
Bump crate versions, fix any publish errors 2023-07-31 18:49:54 -07:00
Jonathan Kelley
456b553c93
Merge pull request #1230 from Demonthos/add-computed
Add computed hook
2023-07-31 17:37:47 -07:00
Evan Almloff
d7f7116ce3 clean up the API a bit 2023-07-28 14:17:52 -07:00
Marc Espín
fad3272afb
fix: Update use_coroutine example (#1237) 2023-07-24 11:32:32 -05:00
Miles Murgaw
6210c6fefe
Convert use_eval to use send/recv system (#1080)
* progress: reworked

don't run this, it'll kill your web browser

* feat: use_eval but with comms

* revision: async recv & recv_sync

* revision: use_eval

* revision: standard eval interface

* revision: use serde_json::Value instead of JsValue

* revision: docs

* revision: error message

* create: desktop eval (wip)

* fix: desktop eval

* revision: wrap use_eval in Rc<RefCell<_>>

* fix: fmt, clippy

* fix: desktop tests

* revision: change to channel system

- fixes clippy errors
- fixes playwright tests

* fix: tests

* fix: eval example

* fix: fmt

* fix: tests, desktop stuff

* fix: tests

* feat: drop handler

* fix: tests

* fix: rustfmt

* revision: web promise/callback system

* fix: recv error

* revision: IntoFuture, functionation

* fix: ci

* revision: playwright web

* remove: unescessary code

* remove dioxus-html from public examples

* prototype-patch

* fix web eval

* fix: rustfmt

* fix: CI

* make use_eval more efficient

* implement eval for liveview as well

* fix playwright tests

* fix clippy

* more clippy fixes

* fix clippy

* fix stack overflow

* fix desktop mock

* fix clippy

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-07-21 17:36:25 -05:00
Evan Almloff
8af0f0a76a Fix future value never updating 2023-07-21 12:47:51 -07:00
Evan Almloff
bfc8240438 Fix use_future always spawning a new task 2023-07-21 11:52:41 -07:00
Evan Almloff
33ee0636d6 add computed hook 2023-07-20 11:07:55 -07:00
Jonathan Kelley
91d4207fa7
Merge branch 'master' into feature/use-shared-state-better-diagnostics 2023-07-20 10:51:10 -07:00
Andrea Frigido
dccad58f1d Update license field following SPDX 2.1 license expression standard 2023-07-20 18:00:07 +01:00
Jonathan Kelley
c954a116eb
Fix race condition in use_future 2023-07-19 14:23:34 -07:00
Marc Espín
9cbc086aa1
fix: Update use_ref docs (#1201) 2023-07-17 11:02:02 -05:00
Jonathan Kelley
78d383bf1f
Merge pull request #1128 from marc2332/feat/improved-docs
feat(docs): Improved shared state, use_effect and use_memo docs
2023-07-14 15:20:40 -07:00
Jonathan Kelley
9d2b44aa0f
Merge branch 'master' into feature/use-shared-state-better-diagnostics 2023-07-14 15:07:53 -07:00
Jonathan Kelley
2d8841cf70
Add lazy contexts to signals 2023-07-14 12:52:49 -07:00
niedzwiedzw
337697a886 test with forked version of debug-cell 2023-07-13 20:12:28 +02:00
Jonathan Kelley
b25501af48
Merge pull request #1139 from Demonthos/add-onunmount-hook
Add on unmount hook
2023-07-12 14:26:56 -07:00
niedzwiedzw
60d6137f39 better display for locations in panic messages 2023-07-12 16:36:17 +02:00
niedzwiedzw
9154b0f8ea pass the information on previous caller on clone 2023-07-12 16:24:39 +02:00
niedzwiedzw
af091c5bf8 turns out Result combinators are not marked with #[trace_caller], so it must be written without function nesting in order to work 2023-07-12 16:20:19 +02:00
niedzwiedzw
3fa519563e prevent inlining 2023-07-12 12:27:17 +02:00
niedzwiedzw
760d93716f also track previous caller in the in debug mode to show the conflicting borrow 2023-07-12 02:53:48 +02:00
niedzwiedzw
9da32d5465 oh yeah, tracking itself should also be debug-only 2023-07-12 01:53:00 +02:00
niedzwiedzw
b8c14ce35c make location diagnostics optional (only available in debug mode) 2023-07-12 01:38:50 +02:00
niedzwiedzw
43e3304eaf track caller for easier debugging 2023-07-12 01:19:20 +02:00
niedzwiedzw
f159779af4 make thiserror a workspace dependency everywhere else 2023-07-11 22:54:24 +02:00
niedzwiedzw
469a7ac0af better diagnostics for use_shared_state 2023-07-11 21:41:52 +02:00
Marc Espín
32d4472bfd
fix: Remove duplicated doc links and improved some descriptions (#1167) 2023-07-08 11:04:27 -05:00
traxys
f2c1c05792 Add a helper macro for properties & async
The to_owned macro is helpful to handle hooks with async components, but
when using properties it can be problematic because `cx` will be moved
in the async block, and will result in a compilation error. This adds a
new helper that allows to make either hooks or properties owned.
2023-07-06 15:18:19 +02:00
ealmloff
d1cd4851aa
Merge branch 'DioxusLabs:master' into add-onunmount-hook 2023-07-03 12:09:13 -07:00
marc2332
052ae145bf
updated docs 2023-07-02 23:00:26 +02:00
Evan Almloff
a6e87cf340 fix tests 2023-06-30 12:56:22 -07:00
Jon Kelley
3985bd664b
Merge pull request #1084 from marc2332/patch-6
fix: Properly drop UseFuture's values to avoid leaking memory
2023-06-30 12:12:09 -07:00
Evan Almloff
60b25e9c2f add on unmount hook 2023-06-30 08:54:08 -07:00
Marc Espín
f4e1d78d7a
fix(docs): Fix dioxus-hooks crate description (#1134) 2023-06-29 10:27:54 -05:00
marc2332
8a2f9f3fcb
feat(docs): Improved shared state, use_effect and use_memo docs 2023-06-28 00:15:00 +02:00
Jon Kelley
dfa4d8d989
Merge pull request #1105 from Demonthos/workspace-dependancies
Workspace Dependancies
2023-06-27 10:17:12 -07:00
Marc Espín
a3654fd0b8
Update use_shared_state.rs 2023-06-20 19:13:34 +02:00
Evan Almloff
5f873511c5 use workspace dependancies 2023-06-19 14:29:11 -05:00
Marc Espín
1546fce485
fix: Properly drop UseFuture's values to avoid leaking memory 2023-06-10 18:26:02 +02:00
Jonathan Kelley
c97f43146d bump hooks and web crates 2023-05-18 13:42:15 +02:00