Commit graph

3498 commits

Author SHA1 Message Date
Exotik850
fc31876a57
Wasm target check before build (#1689)
* Add `rustup show` check for wasm32 target

* better place for check

* fmt

* clippy fmt
2023-12-07 12:35:16 -06:00
Pascal
29f9d002e2 expose dioxus_desktop::build_default_menu_bar() 2023-12-07 19:03:37 +01:00
Evan Almloff
a1550460ce Fix peek spelling 2023-12-07 11:37:59 -06:00
Jonathan Kelley
424926a8db
Merge pull request #1698 from ealmloff/fix-server-function-early-disconnect 2023-12-07 09:28:54 -08:00
Jonathan Kelley
9a3287e05f
Merge pull request #1681 from ealmloff/warn-windows-gnu 2023-12-07 09:28:38 -08:00
Jonathan Kelley
fe7df0c6a5
Merge pull request #1697 from ealmloff/hot-reload-temp-dir 2023-12-07 09:18:10 -08:00
Pascal
cbfb80d5c6 fixup: improved documentation and refactored naming to be more self-explanatory
Note:
This is the actual correct commit. The previous one contained files touched by cargo fmt which are unrelated. Sorry for that.
2023-12-07 17:23:14 +01:00
Pascal
906c466e78 Revert "improved documentation and refactored naming to be more self-explanatory"
This reverts commit adfbb6c380.
2023-12-07 17:11:56 +01:00
Pascal
adfbb6c380 improved documentation and refactored naming to be more self-explanatory 2023-12-07 16:36:20 +01:00
Evan Almloff
df57cc7d9c fix disconnects that happen while a server function is being resolved 2023-12-07 08:29:14 -06:00
Evan Almloff
1c2a6fa010 fix signals with debug information 2023-12-07 07:19:41 -06:00
ealmloff
c67e0705ea
Merge branch 'master' into signal-read-untracked 2023-12-07 07:12:30 -06:00
Evan Almloff
7d2bbda53d move gnu warning to build script 2023-12-07 07:10:53 -06:00
Evan Almloff
2bab4eb6c3 rename read_untracked to peak 2023-12-07 07:06:43 -06:00
Evan Almloff
9a13df2c73 move hot reload socket into the target directory 2023-12-07 07:00:59 -06:00
ealmloff
6c9c081f5c
Merge branch 'DioxusLabs:master' into fix-native-core-leak 2023-12-07 06:27:00 -06:00
Jonathan Kelley
ad885ec47a
Merge pull request #1650 from ealmloff/effect-cleanup
Add an optional cleanup closure to the use effect hook
2023-12-06 22:13:08 -08:00
Jonathan Kelley
8f1791c039
Merge pull request #1597 from ColonelThirtyTwo/fmt-indent
Use indentation settings in dx fmt and vscode extension
2023-12-06 22:06:16 -08:00
Jonathan Kelley
4444ba0b97
Merge pull request #1576 from ealmloff/fix-lints-release-web
Fix use shared state lint in release mode
2023-12-06 21:39:36 -08:00
Jonathan Kelley
edebe5be4a
Merge pull request #1653 from ealmloff/fix-hot-reload-missing-items
Fix missing items in hot reloading diffing
2023-12-06 21:38:36 -08:00
Jonathan Kelley
f2504cec84
Merge pull request #1674 from ealmloff/better-optional-props
Make optional props accept Nothing, T or Option<T>
2023-12-06 21:37:39 -08:00
Jonathan Kelley
3b63791ec1
Merge pull request #1485 from ealmloff/make-fullstack-layer-public
Make the layer module public in fullstack
2023-12-06 21:34:38 -08:00
Jonathan Kelley
ecb1b61b65
Merge pull request #1664 from ealmloff/fix-svg-hot-reload
Fix hot reloading svg elements
2023-12-06 21:34:05 -08:00
Jonathan Kelley
ea15c6a2eb
Merge branch 'master' into cli-config-library 2023-12-06 21:30:14 -08:00
Jonathan Kelley
07d84fedb7
Merge pull request #1580 from ealmloff/miri-leak
Remove the ignore leaks in flag MIRI
2023-12-06 21:29:32 -08:00
Jonathan Kelley
ccd850edf6
Merge pull request #1383 from ealmloff/debug-signals
Add debug information to borrows and ownership in signals
2023-12-06 21:19:38 -08:00
Jonathan Kelley
ae8eaf80a2
Merge pull request #1612 from ealmloff/ssr-eval
Add a noop evaluator to the ssr renderer
2023-12-06 21:17:36 -08:00
Jonathan Kelley
f52233c095
Merge pull request #1634 from ealmloff/fix-string-memory-leak
Fix string memory leak
2023-12-06 21:16:43 -08:00
Jonathan Kelley
850f2da0c6
Merge pull request #1651 from ealmloff/string-into-attribute
Add into attribute value impl for String
2023-12-06 21:14:31 -08:00
Jonathan Kelley
16982c9f69
Add metadata for signals crate 2023-12-06 20:54:50 -08:00
Jonathan Kelley
d3f6ff703c
Release 0.4.3
dioxus@0.4.3
dioxus-autofmt@0.4.3
dioxus-check@0.4.3
dioxus-cli@0.4.3
dioxus-core@0.4.3
dioxus-core-macro@0.4.3
dioxus-desktop@0.4.3
dioxus-fullstack@0.4.3
dioxus-hooks@0.4.3
dioxus-hot-reload@0.4.3
dioxus-html@0.4.3
dioxus-interpreter-js@0.4.3
dioxus-liveview@0.4.3
dioxus-mobile@0.4.3
dioxus-native-core@0.4.3
dioxus-native-core-macro@0.4.3
dioxus-router@0.4.3
dioxus-router-macro@0.4.3
dioxus-rsx@0.4.3
dioxus-signals@0.4.3
dioxus-ssr@0.4.3
dioxus-tui@0.4.3
dioxus-web@0.4.3
dioxus_server_macro@0.4.3
fermi@0.4.3
generational-box@0.4.3
plasmo@0.4.3
rsx-rosetta@0.4.3

Generated by cargo-workspaces
2023-12-06 16:56:35 -08:00
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 Sully
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 Teixeira
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 Xu
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
zhangzhonglai
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
Exotik850
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 9ca09e595d.

* 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
ealmloff
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
Bunny Bites
a74e6d82c7 rename parse_json to parsed_values 2023-11-12 13:09:51 +05:30
Evan Almloff
a120af33ad Merge branch 'master' into fix-event-bubbling 2023-11-11 17:53:47 -06:00
Bunny Bites
13a82a3705 remove serde and serde_json from serialize dependency. 2023-11-11 21:55:08 +05:30
Bunny Bites
48295b021c remove optional config of serde_json 2023-11-11 21:27:44 +05:30
Bunny Bites
8183935f66 remove unwanted cloning while passing reference. 2023-11-11 09:36:26 +05:30
Evan Almloff
5dc3486c53 Merge branch 'cli-serde-default' into cli-config-library 2023-11-10 16:26:58 -06:00
ealmloff
79e3fe677f
Merge branch 'master' into cli-serde-default 2023-11-10 16:22:53 -06:00
Bunny Bites
2b459e6fc1 1. optimize import.
2. modify post event serialization.
2023-11-10 23:32:41 +05:30
Bunny Bites
6398af1d65 code cleanup 2023-11-10 23:23:26 +05:30
Bunny Bites
c6b39c05b7 1. remove value_types from FormData.
2. modify type of values to accept dynamic type.
2023-11-10 11:44:19 +05:30
tigerros
d4b0451d09
Allow warning in necessary functions (#1626) 2023-11-09 12:31:59 -06:00
Evan Almloff
4b4dcbed6a fix error boundary test 2023-11-09 08:43:38 -06:00
Evan Almloff
1b7017f67b fix formatting 2023-11-09 08:36:14 -06:00
Bunny Bites
9f0e000295 provide proper error message 2023-11-09 11:09:07 +05:30
Bunny Bites
2cbbdc23c6 add impl fn for FormData to get input types 2023-11-09 11:04:47 +05:30
Erithax
c2749b3371 rename IntoDynNode and IntoTemplate traits 2023-11-09 02:00:36 +01:00
Bunny Bites
1a9d1eda19 optimize hashmap insertion 2023-11-09 00:41:50 +05:30
Bunny Bites
f1533781a4 add fn to convert hashmap to json 2023-11-09 00:38:22 +05:30
Evan Almloff
8a2d170d96 pull out the CLI config data into a separate library 2023-11-08 12:48:25 -06:00
Joshua Wolfe
8ea7f076e5
Updated server_fn to 0.5.2 (#1620) 2023-11-08 08:33:41 -06:00
Evan Almloff
6141aeb037 polish the throw trait 2023-11-07 18:24:07 -06:00
Jonathan Kelley
42faecf942
Merge pull request #1581 from ealmloff/drop-any-attribute-later
Drop any attribute after rendering
2023-11-06 16:52:30 -05:00
xTeKc
ca556ea9cb
update readme (#1615)
* Fix wasm-bindgen version mismatch

* fixes #1613
2023-11-06 13:32:42 -06:00
Evan Almloff
b9554fd744 add a noop evaluator to the ssr renderer 2023-11-05 08:32:39 -06:00
Bunny Bites
d54ec57192 1. migrated code to form.rs
2. made get_parsed_values as private fn.
3. handled multi-valued data while parsing
2023-11-05 08:16:09 +05:30
Marc Espín
c18f911429
Update atom_root.rs (#1611) 2023-11-04 14:04:14 -05:00
Lee TaeWoo
be1decf9f2
fix syntax error at derive Props using const generics (#1607) 2023-11-04 13:53:50 -05:00
Marc Espín
bb5738a0ba
fix: Read value from root when calling AtomState::current() (#1609) 2023-11-04 13:22:47 -05:00
Bunny Bites
02e91d8b9a add get_parsed_values function 2023-11-04 21:50:11 +05:30
Evan Almloff
4215e2b247 fix cargo.toml/lock path capitalization for linux 2023-11-03 13:09:33 -05:00
divinerapier
f372144fd7
Bump tauri bundler for using proxy to fetch resources
Signed-off-by: divinerapier <sihao.fang@outlook.com>
2023-11-03 11:01:00 +08:00
Jonathan Kelley
a3e6d0adca
Merge pull request #1602 from ealmloff/fix-scroll-web 2023-11-02 22:35:16 -04:00
Evan Almloff
7590cf822d fix the scroll event on the web renderer 2023-11-02 21:00:43 -05:00
Evan Almloff
0aa4875ec0 fix formating 2023-11-02 13:59:46 -05:00
Evan Almloff
46fec1ae48 fix clippy 2023-11-02 13:46:57 -05:00
Evan Almloff
0f2923a385 fix extension types 2023-11-02 13:17:21 -05:00
Alex Parrill
52fb080193 Use indentation settings in dx fmt and vscode extension
Adds the ability to specify an indent string to public autofmt methods - either
a sequence of spaces or a tab character.

Get the indentation style and size from rustfmt for dx fmt, or from the editor
settings for the vscode extension.

Closes #1595
2023-11-01 17:24:18 -04:00
Evan Almloff
fdec47b90b fix clippy 2023-11-01 08:19:35 -05:00
tigerros
bf36fc6def
Fix #[component] expansion Clippy warning (#1599)
Adds a `#[allow(clippy::inline_always)]` attribute to the generated `__dx_inner_comp` function.
2023-11-01 08:14:07 -05:00
Evan Almloff
8a62e4a987 Merge branch 'master' into debug-signals 2023-10-31 13:55:20 -05:00
Evan Almloff
5fdff4b7ed bump wry to 0.34 2023-10-31 13:49:29 -05:00
ealmloff
856fb1874e
Merge branch 'master' into binary-protocal 2023-10-31 13:40:31 -05:00
ealmloff
c84a13f164
Merge branch 'master' into bump-wry 2023-10-31 13:40:03 -05:00
Evan Almloff
77d53df532 Merge branch 'master' into pr/atty303/1349 2023-10-31 13:39:20 -05:00
Evan Almloff
57dd56c8a4 Merge branch 'miri-leak' into events-2 2023-10-30 16:18:12 -05:00
ealmloff
5bb06b9719
Merge branch 'master' into events-2 2023-10-30 15:37:29 -05:00
Evan Almloff
51f342417a add examples to the default watch path 2023-10-30 14:41:41 -05:00
Evan Almloff
c5e647e97d add read untracked to signals 2023-10-30 08:39:37 -05:00
HKalbasi
720bfdf231
Make window invisible until the first render (#1588) 2023-10-29 13:09:07 -05:00
Falco Hirschenberger
d4e6876ff6
Silence desktop build outputs from cargo (#1584)
Silence additional disturbing output from cargo in desktop builds
2023-10-27 08:29:43 -05:00
Emil Boman
f5bc1a9856
Implement LiveView Router Integration (#1505)
* Fix GoForwardButton calling can_go_back instead of can_go_forward

* Add first draft of LiveviewHistory

* Add external URL redirect

* Lock evaluator channel outside loop

* Add liveview to router examples

* fixup! Add liveview to router examples

* Communicate with liveview server on page load

* Add PopState event to Liveview routing

* Call updater callback from liveview history

* Add rudimentary PopState functionality to liveview router.

* Fix linter errors

* Refactor

* Fix navigator external redirection not working.

* Add go back and go forward buttons to router examples

* Finish functionality for timeline stack in liveview router

* Add docs to LiveviewHistory

* Replace Liveview history context attachment with constructor that takes context

* Fix go forward/backward history/future shuffle

* Support history across entire liveview session, if contiguous page jumps.

* Remove unnecessary bounds

* Add query and hash to location string

* Run rustfmt

* fix: Update server function docs link (#1489)

* liveview: Add `interpreter_glue_relative_uri (#1481)

* liveview: Add `interpreter_glue_relative_uri`

By utilizing `window.location.host` in the client-side JavaScript, we can easily derive the WebSocket URI from a relative path URI. This approach obviates the need for host address retrieval on the server side, unlike the method of serving glue code in liveview using `interpreter_glue`.

* liveview: Merge `.._relative_url` functionality

- Merged `.._relative_url` to current API `interpreter_glue`.
- Edit axum example to work with new feature.

* liveview: Fix clippy warning

* Rename modules to use snake_case (#1498)

* Change Scope into &ScopeState

* Move synchronization of state into router and make it opt-in

---------

Co-authored-by: Marc Espín <mespinsanz@gmail.com>
Co-authored-by: Seungwoo Kang <ki6080@gmail.com>
Co-authored-by: Leonard <tigerros.gh@gmail.com>
Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-10-26 14:19:51 -05:00
Evan Almloff
eea4a02ef5 add comments about the cause of the leak 2023-10-26 13:23:12 -05:00
Evan Almloff
fca9d95519 fix props memory leak 2023-10-26 13:06:42 -05:00
Evan Almloff
370c6cb9d2 fix clippy 2023-10-25 16:47:04 -05:00
Evan Almloff
b99f081c08 drop any attribute after rendering 2023-10-25 16:37:04 -05:00
Jonathan Kelley
035f26d4bf
Merge pull request #1573 from tigerros/fix-props-docs-line-breaks
Fix prop docs line breaks
2023-10-25 17:03:46 -04:00
Stephen Andary
b25fada776
Add Newtype so that Rust-url can be IntoRoutable (#1579)
* add newtype so that rust-url can IntoRoutable

* add doc line

* implement From<Url> directly

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-10-25 15:36:38 -05:00
Evan Almloff
6e85ecea12 fix use shared state lint in release mode 2023-10-25 10:23:23 -05:00
Evan Almloff
3bb6042e42 fix web renderer imports 2023-10-25 10:22:05 -05:00
Evan Almloff
dc306a51ba fix desktop inner html 2023-10-24 13:17:34 -05:00
Evan Almloff
9de56c00f3 fix multiple types of desktop/liveview listeners in the same app 2023-10-24 13:09:10 -05:00
Leonard
613f2f9aca Revert "Fix random clippy warning"
This reverts commit 85839abe56.
2023-10-24 01:41:46 +02:00
Leonard
85839abe56 Fix random clippy warning 2023-10-24 01:35:59 +02:00
Leonard
33d4721fbe Fix 2023-10-24 00:10:56 +02:00
Jonathan Kelley
647815fa6f
Merge pull request #1558 from ealmloff/link-key-props
Add an readable error when you name a prop key
2023-10-23 16:58:53 -04:00
Jonathan Kelley
716130d025
Merge pull request #1570 from ealmloff/clarify-web-gaurd-fullstack
Add error message when overlapping fullstack features are enabled
2023-10-23 16:32:34 -04:00
Jonathan Kelley
1fe8e94063
Deprecate use_window 2023-10-23 16:30:39 -04:00
Jonathan Kelley
dd4547d753
Feat: add global context functions
Add functions like window() and router() to
allow dynamically grabbing global contexts
without have to use the hook variants.

Deprecates the existing hook variants to
discourage folks from adding more noise
to their codebases.
2023-10-23 16:26:10 -04:00
Jonathan Kelley
ea8c5e290d
Merge pull request #1551 from ealmloff/fix-signals-outside-of-runtime
Fix using signals outside of a scope
2023-10-23 15:32:12 -04:00
Evan Almloff
d9b32afd64 add error message when overlapping fullstack features are enabled 2023-10-23 12:45:10 -05:00
Leonard
cea9563e25
Improve prop docs (#1565)
* Do the stuff

* More sanitizing + fix warnings and format
2023-10-23 08:41:26 -05:00
Leonard
74952179db
Append prop documentation to function when using #[inline_props] or #[component] (#1563)
* Do the stuff

* Add deprecated warning and attribute list

Also move out methods that didn't take self as a parameter from `InlinePropsDeserializer`
2023-10-22 09:28:17 -05:00
Evan Almloff
9abc390d04 bench 2023-10-20 13:21:27 -05:00
Evan Almloff
b14aaca7b2 fix desktop renderer on windows 2023-10-20 13:05:13 -05:00
Marc Espín
129d0a68ff
feat: Optional web support for hot-reload crate (#1527)
* feat: Optional web support for hot-reload crate

* rename feature

* tweak

* tweak
2023-10-20 12:59:49 -05:00
Evan Almloff
33f0f0c172 fix clippy 2023-10-20 09:38:10 -05:00
Evan Almloff
1d664c616e restore desktop/liveview minification 2023-10-20 09:18:16 -05:00
Evan Almloff
2404bfeeb3 fix liveview element 2023-10-20 09:06:19 -05:00
Evan Almloff
378cbfabd9 fix desktop mounted event 2023-10-20 08:45:04 -05:00
Evan Almloff
007aacc247 remove liveview logging 2023-10-19 16:41:47 -05:00
Evan Almloff
c9612a085e fix liveview mounted event 2023-10-19 16:40:08 -05:00
Evan Almloff
42eb4b5098 fix clippy 2023-10-19 15:48:06 -05:00
Evan Almloff
ad9c59c2b4 add an readable error when you name a prop key 2023-10-19 13:23:58 -05:00
ealmloff
1cf8f71368
Fix typo in generational box readme 2023-10-19 13:03:26 -05:00
ealmloff
000edc0552
document generational box 2023-10-19 13:01:38 -05:00
Jonathan Kelley
e819702fc5
Add into_vnode temporary logic for more things
This commit adjusts how rsx! works, making it more forgiving with signals.

Notably, we add the temporaries to if chains too.
2023-10-17 15:42:21 -07:00
Jonathan Kelley
55ad41b392
Merge branch 'master' into jk/loop-allocation-strategy 2023-10-17 15:27:20 -07:00
Evan Almloff
06ca8c53d8 gitignore minified.js 2023-10-17 14:47:11 -05:00
Evan Almloff
a4fbeeb932 add stress test for desktop 2023-10-17 14:45:37 -05:00
Evan Almloff
c807808231 remove logging 2023-10-17 14:32:31 -05:00
Evan Almloff
db56962eea basic example working with binary protocol on desktop 2023-10-17 14:31:58 -05:00
Evan Almloff
ce86aabf26 fix clippy 2023-10-17 13:02:51 -05:00
Evan Almloff
050add21d7 effect-outside-of-runtime 2023-10-17 12:56:12 -05:00
Jonathan Kelley
509dca97e6
Merge pull request #1544 from ealmloff/must-use-hooks
Add must use to several hooks
2023-10-17 09:24:39 -07:00
Evan Almloff
6e9aa4dba1 fix clippy 2023-10-16 13:29:32 -05:00
Evan Almloff
87dae6a41f add a test for derefing signals to a closure 2023-10-16 13:08:18 -05:00
Evan Almloff
c65116c173 restore deref<Fn() -> Ref> 2023-10-16 13:03:37 -05:00
Evan Simkowitz
b1d6069363
Fix deref for Write struct in dioxus-signals (#1549) 2023-10-16 10:49:21 -05:00
Evan Almloff
9d19f4d204 fix clippy 2023-10-16 10:44:08 -05:00
Jonathan Kelley
7e2164d6d6
Add toggle 2023-10-15 17:52:01 -07:00
Jonathan Kelley
14b3fa72e4
Change the semantics of exprs/for loops allocations strategy
This commit adjusts how exprs and for loops are handled within
rsx. This is a breaking change in terms of codegen, but has
slight semantic changes as well.

Now, when exprs/for loops are allocated, they are given a temporary.
The temporary is elided to the <'a> lifetime of the bump, to satisfy
the borrow checker. This fixes issues with signals where exprs/for
loops mapping vecs out of RefCells would be caught up without a
temporary lifetime.
2023-10-15 17:40:56 -07:00
Evan Almloff
2645b85533 WIP desktop binary protocol 2023-10-15 09:23:01 -05:00
Evan Almloff
9f729dd6de fix clippy 2023-10-14 14:32:08 -05:00
Evan Almloff
3bf6d2d7cf add must use to several hooks 2023-10-14 12:08:54 -05:00
Evan Almloff
cb148cc881 Merge branch 'bump-wry' into binary-protocal 2023-10-13 09:45:11 -05:00
Evan Almloff
3063d83406 start migrating desktop to sledgehammer 2023-10-13 09:21:57 -05:00
Evan Almloff
1a4741ce04 fix liveview events 2023-10-12 10:21:29 -05:00
ealmloff
a7736284c8
Merge branch 'master' into intigrate-collect-assets 2023-10-12 08:46:27 -05:00
Oak
f3a749538b
feat: initial_checked attribute for inputs (#1540)
Mapped to defaultChecked property of HTMLInputElement.
2023-10-12 08:12:09 -05:00
Evan Almloff
b26985ea6c make debug build of fullstack applications load faster by default 2023-10-10 14:23:58 -05:00
Leonard
2d1234c3d1
Include README and Dioxus logo in package docs (#1536)
* Include README in docs.rs and add Dioxus logo

* Update README.md
2023-10-10 10:52:48 -05:00
Evan Almloff
426a342700 add logs when the desktop or fullstack application is collecting assets 2023-10-10 10:26:16 -05:00
Evan Almloff
b76f129083 Merge branch 'master' into intigrate-collect-assets 2023-10-10 09:57:16 -05:00
Leonard
c65a49fd0f
Remove redundant directories (#1535)
Also fix typo
2023-10-10 09:50:58 -05:00
Evan Almloff
f20b740abe switch liveview to sledgehammer 2023-10-09 14:28:12 -05:00
Marc Espín
c8c4e85e65
feat: Remove unused deps (#1447)
* feat: Reduce dioxus-cli deps

* remove more unused deps
2023-10-09 10:14:46 -05:00
Timothy Mertz
cde1e886d6
cli: Add ability for autofmt to read stdin (#1529)
This change adds the ability for autofmt to read from stdin by using
'-f -' or '--file -'
2023-10-09 08:20:31 -05:00
Sridhar Ratnakumar
0d7bc86250
cli: Log connection errors during dx serve in desktop apps (#1515)
* cli: Log connection errors during `dx serve` in desktop apps

* add a note about the dioxus CLI

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-10-09 07:56:23 -05:00
Leonard
95d8843d9d
Fix clippy (#1532) 2023-10-08 18:24:38 -05:00
Evan Almloff
248d78fbfe fix clippy 2023-10-05 15:45:34 -05:00
Leonard
459f24d5e9
Clarify where serve warnings come from (#1524) 2023-10-05 13:05:14 -05:00
Evan Almloff
7f0fa07757 fix hot reloading 2023-10-04 09:11:21 -05:00
Evan Almloff
ed95ac932d fix double triggering events 2023-10-04 08:58:28 -05:00
Evan Almloff
d5b7a6d15e fix fuzzing test 2023-10-04 08:46:24 -05:00
Leonard
30a3283438
Add use_on_mount and fix some typos (#1497)
* Add `use_on_mount` and fix some typos

* Optimize away UseOnMount struct

* `use_on_mount`, `use_on_unmount` -> `use_on_create`, `use_on_destroy`

* Make `use_on_unmount` deprecated

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-10-04 08:23:21 -05:00
Sridhar Ratnakumar
91752e7220
cli: Fix typo, resouces (#1516) 2023-10-04 08:20:13 -05:00
Evan Almloff
eb15014b9d fix hydration mounted element 2023-10-03 16:42:42 -05:00
Leonard
06814dc17b
Update core-macro README per #1448 (#1510) 2023-10-03 06:59:53 -05:00
ealmloff
072ca3529b
Merge branch 'DioxusLabs:master' into events-2 2023-10-02 19:48:52 -05:00
Oak
5bcb772511
feat: initial_selected attribute for options (#1508) 2023-10-02 14:08:09 -05:00
Evan Almloff
c30dc25293 Merge branch 'master' into fix-event-bubbling 2023-09-28 16:06:13 -05:00
Evan Almloff
c137357094 fix hydration 2023-09-27 10:22:49 -05:00
Evan Almloff
3e55bb8885 fix some clippy lints 2023-09-27 10:21:33 -05:00
Evan Almloff
ee25c03e74 fix some clippy lints 2023-09-27 10:13:45 -05:00
Evan Almloff
b60671e0fe fix non extending attributes 2023-09-27 10:02:49 -05:00
Evan Almloff
7b51bb8060 WIP: add extends to the props macro 2023-09-26 19:23:00 -05:00
Leonard
a2dd926f7f
Rename modules to use snake_case (#1498) 2023-09-26 17:20:29 -05:00
Seungwoo Kang
31780b3ede
liveview: Add `interpreter_glue_relative_uri (#1481)
* liveview: Add `interpreter_glue_relative_uri`

By utilizing `window.location.host` in the client-side JavaScript, we can easily derive the WebSocket URI from a relative path URI. This approach obviates the need for host address retrieval on the server side, unlike the method of serving glue code in liveview using `interpreter_glue`.

* liveview: Merge `.._relative_url` functionality

- Merged `.._relative_url` to current API `interpreter_glue`.
- Edit axum example to work with new feature.

* liveview: Fix clippy warning
2023-09-26 16:35:17 -05:00
Evan Almloff
e5b15f7c31 fix tracing in desktop 2023-09-26 09:07:11 -05:00
Evan Almloff
e48761e11c Merge branch 'master' into intigrate-collect-assets 2023-09-26 09:00:53 -05:00
Evan Almloff
56b1a0aefc add bump to props 2023-09-25 15:42:37 -05:00
Evan Almloff
d2f0f4b4b6 document layer and service 2023-09-25 12:25:21 -05:00
Marc Espín
517a43d765
fix: Update server function docs link (#1489) 2023-09-25 08:31:35 -05:00
Evan Almloff
d994e3e722 make the layer module public in fullstack 2023-09-23 07:57:41 -05:00
Evan Almloff
5b65c4cfb4 implement spreading props in the rsx macro 2023-09-22 10:04:34 -05:00
Evan Almloff
9e167dfdb7 Merge branch 'many_optional_attributes' into pr/atty303/1349 2023-09-22 09:32:05 -05:00
Evan Almloff
5ed116b060 fix bounds on generated element extensions 2023-09-22 09:24:00 -05:00
Evan Almloff
e113562c7c Merge branch 'master' into fix-event-bubbling 2023-09-22 08:26:05 -05:00
Evan Almloff
6fab8963e6 use tracing in new logs 2023-09-22 08:25:38 -05:00
Evan Almloff
78860da006 Merge branch 'master' into debug-signals 2023-09-22 07:59:47 -05:00
Evan Almloff
e2f50cc689 Merge branch 'master' into intigrate-collect-assets 2023-09-22 07:56:00 -05:00
Evan Almloff
7033276c34 Merge branch 'master' into pr/atty303/1349 2023-09-20 16:19:23 -05:00
Evan Almloff
fa494349fe add a lifetime to the properties trait and make the manual spread example work 2023-09-20 16:15:11 -05:00
Evan Almloff
fc8c25280a allow many attributes to be attached to one element 2023-09-20 16:02:04 -05:00
ealmloff
60ee82942c
restore the tray feature in the desktop crate (#1475) 2023-09-19 16:48:01 -05:00
Evan Almloff
dc446b5e5b fix extending an element 2023-09-19 16:38:27 -05:00
Evan Almloff
610401b928 fix repeated class in ssr test 2023-09-19 10:23:36 -05:00
Evan Almloff
561830d814 fix merging static attributes 2023-09-19 10:20:42 -05:00
Evan Almloff
c0f345e775 add if statements to test and rsx usage example 2023-09-19 09:48:56 -05:00
Evan Almloff
ab2b9fb34e fix autoformatting 2023-09-19 09:39:53 -05:00
Evan Almloff
d3eefe4a27 fix clippy 2023-09-19 09:16:58 -05:00
Jonathan Kelley
27a551d63e
Merge pull request #1467 from ealmloff/expose-runtime-gaurd
Make RuntimeGuard public
2023-09-18 23:12:50 -07:00
Calastrophe
98babe1096
partial ord impl (#1473) 2023-09-18 19:50:57 -05:00
Evan Almloff
d297e2baa2 Add optional attributes 2023-09-18 19:50:02 -05:00
Leonard
07613c806b
Fix #1367 (#1471)
* Bump cargo_toml to 1.16.0

* Format
2023-09-18 18:51:04 -05:00
Evan Almloff
ef6e9098fd fix formatting 2023-09-17 20:06:41 -05:00
Evan Almloff
c933bfaed3 fix formatting 2023-09-17 20:04:40 -05:00
Evan Almloff
b9a92a1bd8 fix core exports 2023-09-17 20:03:58 -05:00
Evan Almloff
219c068283 Merge branch 'master' into events-2 2023-09-17 20:01:21 -05:00