Commit graph

118 commits

Author SHA1 Message Date
Evan Almloff
66e2c02bf7 Merge branch 'master' into intigrate-collect-assets 2023-12-08 08:49:17 -06:00
Evan Almloff
df57cc7d9c fix disconnects that happen while a server function is being resolved 2023-12-07 08:29:14 -06: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
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
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
XiaoZhang
aa284d7e93
Fix grammar typo in comment (#1652) 2023-11-20 08:24:16 -06:00
Joshua Wolfe
8ea7f076e5
Updated server_fn to 0.5.2 (#1620) 2023-11-08 08:33:41 -06:00
Evan Almloff
b9554fd744 add a noop evaluator to the ssr renderer 2023-11-05 08:32:39 -06:00
Evan Almloff
d9b32afd64 add error message when overlapping fullstack features are enabled 2023-10-23 12:45:10 -05:00
Evan Almloff
9d19f4d204 fix clippy 2023-10-16 10:44:08 -05:00
Evan Almloff
3bf6d2d7cf add must use to several hooks 2023-10-14 12:08:54 -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
d2f0f4b4b6 document layer and service 2023-09-25 12:25:21 -05:00
Evan Almloff
d994e3e722 make the layer module public in fullstack 2023-09-23 07:57:41 -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
f976e08f71 Merge branch 'master' into intigrate-collect-assets 2023-09-17 19:40:14 -05:00
Jonathan Kelley
a7551d1e63
Merge branch 'master' into log-server-errors 2023-09-16 12:00:54 -07:00
marc2332
7f8c963cd9
fix: Update doc links from v3 to v4 2023-09-16 19:03:27 +02:00
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
Evan Almloff
bdaa284c14 fix formatting 2023-09-12 09:12:32 -05:00
Evan Almloff
6e74d08bf5 remove log from a few examples 2023-09-11 19:42:08 -05:00
Evan Almloff
c55c17cb81 switch to tracing for logging 2023-09-06 17:47:33 -05:00
Dan Lock
92a8669e14
Make launch functions pub (#1288)
* Make launch functions pub

* add docs to web, desktop, and server launch functions

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-08-09 11:26:50 -05:00
gmorenz
2a32271fa0
Set response headers from response, not request, parts (#1328) 2023-08-08 21:04:15 -05:00
Evan Almloff
65102b70c7 return more useful messages when a server function errors 2023-08-07 11:09:51 -07:00
Jonathan Kelley
88cca9c949
Merge pull request #1285 from Demonthos/flexable-server-function-features
Make server function features flexible
2023-08-03 12:16:32 -07:00
Evan Almloff
d33ea087d0 make server function features flexible 2023-08-03 11:13:43 -07:00
Evan Almloff
97eedd22c5 fix fullstack docs building 2023-08-03 10:45:50 -07:00
Jonathan Kelley
39e89c1fac
Bump crate versions, fix any publish errors 2023-07-31 18:49:54 -07:00
Jonathan Kelley
8a875acdd2
Adjust versions, add authors, move server macro to top level 2023-07-31 17:59:36 -07:00
Jonathan Kelley
09cce6bdfb
Merge pull request #1270 from Demonthos/add-authors
Add authors to all crates
2023-07-31 17:38:44 -07:00
Jonathan Kelley
59016007f2
Merge pull request #1251 from DioxusLabs/make-ssr-state-public
Make SsrState public
2023-07-31 17:37:35 -07:00
Evan Almloff
3eab363e51 Add authors to all crates 2023-07-31 17:30:18 -07:00
Jonathan Kelley
e1dcc335c0
Merge pull request #1263 from Demonthos/builder-launch-fullstack
Switch to launch builder instead of macro for fullstack
2023-07-31 11:44:36 -07:00
Evan Almloff
fcb993a2cb don't spawn a new runtime every request 2023-07-28 13:14:26 -07:00
Evan Almloff
cabeacfcee fix formatting 2023-07-28 13:04:56 -07:00
Evan Almloff
9f891f9478 switch to launch builder instead of macro for fullstack 2023-07-28 12:58:34 -07:00
Jonathan Kelley
5e3451a6f2
Quiet cargo warnings 2023-07-26 21:02:39 -07:00
Jonathan Kelley
418c03e2cd
Merge pull request #1252 from Demonthos/non-generic-link
Remove autogenerated functions/components from the routable macro
2023-07-26 18:11:32 -07:00
Evan Almloff
d2ec27e761 fix clippy 2023-07-26 11:29:34 -07:00
Evan Almloff
5f0dd3af3e it almost lives? 2023-07-25 18:14:48 -07:00
Evan Almloff
a4ed9bc0ef make ssrstate public 2023-07-25 15:29:40 -07:00
Evan Almloff
c19420cb29 fix root component suspense 2023-07-25 12:51:12 -07:00
ealmloff
d637ef187c
fix all broken examples (#1248) 2023-07-25 14:30:08 -05:00
Evan Almloff
61dc549ba1 Make new enum router less breaking 2023-07-24 11:57:56 -07: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
Jonathan Kelley
3af0355196
Merge pull request #1199 from Demonthos/use-server-function
Use server function hook
2023-07-20 12:49:47 -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
Evan Almloff
f55375b8ce simplify fullstack hello world examples 2023-07-19 16:57:43 -07:00