Commit Graph
4938 Commits
Author SHA1 Message Date
Evan Almloff b965fc23e9 use a temp directory for the hot reloading pipe on desktop, fullstack and liveview 2023-12-06 17:01:51 -06:00
Pascal e4d60c8dfc add default menu bar in dioxus-desktop to resolve #1691
fixup naming and expose disable_default_menu_bar with builder function
2023-12-06 23:00:01 +01:00
JMS55 8530f53692 Fix typo (#1695)
* Fix typo

* Fix typo again
2023-12-06 06:55:07 -06:00
Jonathan Kelley 0c92486883 publish generational box 2023-12-05 22:57:20 -08:00
Ben SullyandEvan Almloff 04fd2487b3 feat(fullstack): add render_handler_with_state (#1687)
* feat(fullstack): add `render_handler_with_state`

When using server functions, the current pattern to access state such as
database connections is to use `register_server_fns_with_handler` on an
Axum router and 'inject' the state into the context provided to the
server function. However, this only affects function calls which go via
the Axum router; SSR renders bypass this, and therefore don't have
access to any state.

This commit adds an alternative `render_handler` which accepts some
additional state. That state is injected into the context in a
similar manner to `register_server_fns_with_handler`. SSR renders can
then proceed to run in the same way as HTTP calls.

* Change state object to 'inject_state' callback

Also add a compiling doctest example.

* remove the explicit for<'a> lifetime

* remove unused assets_path from render_handler_with_context example

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-12-05 14:10:18 -06:00
Evan Almloff 71f7481ded use requestAnimationFrame on desktop 2023-12-04 20:45:26 -06:00
Raul Cesar TeixeiraandRaul Cesar 8149868ebc Fixed conflict of "--verbose" and "--quiet" flags (#1686)
Co-authored-by: Raul Cesar <raul@zideco.dev>
2023-12-04 18:11:02 -06:00
Felix F Xuandealmloff d404ddfccf fix false notification/rebuild for dx hot-reload (#1684)
* fix false notification/rebuild for dx hot-reload

* Make sure we have permissions and the changed file exists before reading the metadata

---------

Co-authored-by: ealmloff <evanalmloff@gmail.com>
2023-12-03 20:02:30 -06:00
Felix F Xu a2ca1760c9 Set local_socket_stream to blocking (default) (#1682) 2023-12-02 19:25:27 -06:00
Evan Almloff a4600294c5 allow users to disable the warning in a feature 2023-12-01 22:17:51 -06:00
Evan Almloff 0a3b794a1c add a warning about wry gnu support to dioxus desktop 2023-12-01 15:56:14 -06:00
Evan Almloff 8a44fe8d03 derive query parsing in the router macro 2023-12-01 15:31:45 -06:00
zhangzhonglaiandealmloff c8a9a7b1d5 docs(desktop): fix wrong example code (#1678)
* docs(desktop): fix wrong example code

* stop ignoring doctests in dioxus desktop

---------

Co-authored-by: ealmloff <evanalmloff@gmail.com>
2023-12-01 07:52:20 -06:00
Evan Almloff a840e012d8 fix clippy 2023-11-29 11:46:18 -06:00
Evan Almloff be94c69f11 make optional props accept T or Option<T> 2023-11-29 11:38:28 -06:00
Exotik850 e0fbed7eea Switch outdated tui crate for ratatui (#1671)
* Switch outdated tui crate for ratatui

* fix query docs whoops
2023-11-28 16:54:17 -06:00
Exotik850 694989e826 Add use_const hook (#1667)
* Add use_const hook

* cargo fmt

* clippy allow

* pub fn on get_rc
2023-11-28 09:51:09 -06:00
Evan Almloff b3c7ebfdba fix merged changes 2023-11-27 16:12:48 -06:00
Exotik850andEvan Almloff 8e4debb226 remove #[doc(hidden)] from EventHandler (#1665)
* remove #[doc(hidden)] from EventHandler

* Make UseFuture Clone, factor out dependencies field

* Revert "Make UseFuture Clone, factor out dependencies field"

This reverts commit 9ca09e595d1cda3f2047750a923a5bdc49a8fa76.

* fix formatting

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-11-27 15:45:29 -06:00
Exotik850 18fa1e4831 Make UseFuture Clone, factor out dependencies field (#1666) 2023-11-27 15:42:48 -06:00
Evan Almloff 141554a786 remove logging 2023-11-26 09:23:27 -06:00
Evan Almloff 1c0b33cef4 fix hot reloading svg elements 2023-11-26 09:21:27 -06:00
tigerros d9220d4e42 Add it (#1660) 2023-11-23 16:44:39 -06:00
ealmloffandMarc Espín 7a459e15d8 Update packages/hooks/src/use_effect.rs
Co-authored-by: Marc Espín <mespinsanz@gmail.com>
2023-11-21 16:28:06 -06:00
Evan Almloff 23090cb56b optimize fullstack compile times 2023-11-21 14:46:47 -06:00
Evan Almloff 4ff86d9763 make some extra dependencies only enabled for the CLI 2023-11-21 13:11:49 -06:00
Evan Almloff 355cd9b19e Merge branch 'master' into pr/atty303/1349 2023-11-20 18:37:33 -06:00
Evan Almloff 532ffaa614 fix merge 2023-11-20 18:36:18 -06:00
Evan Almloff 557630c419 Merge branch 'master' into cli-config-library 2023-11-20 18:35:24 -06:00
Exotik850 f8ce72c605 Fix outdated lazynode documentation (#1648)
* Fix outdated lazynode documentation

* Use expanded rsx! instead of just rsx macro
2023-11-20 09:49:18 -06:00
Evan Almloff 8cf8f66c27 add more logging to desktop hot reloading 2023-11-20 09:47:03 -06:00
Evan Almloff 0ee21dff1e fix missing item in hot reloading diffing 2023-11-20 09:33:39 -06:00
XiaoZhang aa284d7e93 Fix grammar typo in comment (#1652) 2023-11-20 08:24:16 -06:00
HJin.me ff6c7efb41 fix: tailwind.css use absolute path (#1649) 2023-11-19 11:22:54 -06:00
Evan Almloff d51e9b60df make WebDevResourceConfig optional 2023-11-19 11:16:15 -06:00
Evan Almloff 3c115bbef7 add into attribute value impl for String 2023-11-19 10:03:18 -06:00
Evan Almloff 83f7ef9a44 add an optional cleanup closure to the use effect hook 2023-11-19 09:58:00 -06:00
Raman Hafiyatulin 098689083d Related to #1547: use dioxus-cli within a workspace (wildcard-members, real package names) (#1642)
* Related to #1547: use `dioxus-cli` within a workspace

Although the `dx` CLI allows to specify a package name to chose from workspace members,
it does not support workspace members specified as glob-wildcards.
Neither it respects the effective package name, specified in the crate's `Cargo.toml`.

This PR addresses that issue:
- upon `dx build ...`, if the `--bin` CLI-argument is provided, treat the current dir as a workspace;
- search through the workspace's `members`: resolve each of them with `glob`;
- assume that any workspace member has a `Cargo.toml` in it (cargo does it, so it's okay);
- read said manifest, and check the package name in it;
- if found — there we have our sought package.

* Use cargo-metadata to find out the workspace structure

* glob is unused
2023-11-15 15:14:16 -06:00
Evan Almloff e11f3fdc48 fix clippy 2023-11-15 09:30:15 -06:00
Evan Almloff 9bb464dd7d fix cli tests 2023-11-15 09:29:15 -06:00
Evan Almloff cd48b3b7f9 allow base_path in the CLI 2023-11-15 08:23:12 -06:00
Evan Almloff 109e10e406 use a default base path for the web router from the config 2023-11-14 16:49:06 -06:00
Evan Almloff 15984b78db use the name in the dioxus.toml in desktop if no name was set in the desktop config 2023-11-14 15:53:11 -06:00
Evan Almloff 1ed66a54cc fix cli configuration environment variable 2023-11-14 15:50:04 -06:00
Evan Almloff 06be18a591 export lazy current config 2023-11-14 15:34:06 -06:00
Bunny Bites cf77325f67 fix code format issues (pipeline) 2023-11-14 23:27:50 +05:30
ealmloff 4631050a04 fix FormValue 2023-11-14 10:52:39 -06:00
ealmloff 20bbf95979 document parsed_values and FormValue 2023-11-14 10:45:53 -06:00
Bunny Bites 67670875bb fix parsing issue for desktop platform 2023-11-14 01:13:47 +05:30
Evan Almloff 7f4e2af0c4 fix string memory leak 2023-11-13 08:17:08 -06:00