Commit graph

376 commits

Author SHA1 Message Date
Jonathan Kelley
399e20fd47
Merge pull request #1622 from ealmloff/cli-config-library
Pull out CLI configs into a separate library
2024-01-08 13:33:16 -08:00
Jonathan Kelley
6749fd9fe3
Merge pull request #1655 from ealmloff/fullstack-binary-size-compile-times
Optimize fullstack compile times
2024-01-08 13:33:03 -08:00
Evan Almloff
cfbec8240e make the web history a higher priority than the liveview history when compiling to wasm 2024-01-08 13:50:01 -06:00
Evan Almloff
23509ada9f Merge branch 'master' into cli-config-library 2024-01-08 13:24:16 -06:00
Evan Almloff
b180b501f7 Merge branch 'master' into fullstack-binary-size-compile-times 2024-01-08 13:18:05 -06:00
ealmloff
08a679147f
Merge branch 'master' into liveview-history-default 2024-01-08 13:11:55 -06:00
Jonathan Kelley
bc857bf339
Make clippy happy 2024-01-05 12:54:39 -08:00
Jonathan Kelley
8f70509bc3
Merge pull request #1680 from ealmloff/derive-query-parsing
Automatically derive standard query parsing in the router macro
2024-01-05 12:16:37 -08:00
Evan Almloff
0388a5c1f4 fix formatting 2024-01-04 19:21:06 -06:00
Evan Almloff
dccfba12d8 Merge branch 'master' into events-2 2024-01-04 19:02:00 -06:00
Jonathan Kelley
799be5e4e3
Merge branch 'master' into jk/global-window-fun 2024-01-04 10:22:10 -08:00
Evan Almloff
3feee729bc enabled the liveview history by default if the liveview feature is enabled in the router 2023-12-20 09:53:41 -06:00
Evan Almloff
8a44fe8d03 derive query parsing in the router macro 2023-12-01 15:31:45 -06:00
Evan Almloff
23090cb56b optimize fullstack compile times 2023-11-21 14:46:47 -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
ealmloff
5bb06b9719
Merge branch 'master' into events-2 2023-10-30 15:37:29 -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
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
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
Evan Almloff
3bf6d2d7cf add must use to several hooks 2023-10-14 12:08:54 -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
219c068283 Merge branch 'master' into events-2 2023-09-17 20:01:21 -05:00
Jonathan Kelley
9c300ff266
Merge pull request #1324 from ealmloff/bool-attrs-ssr
Fix boolean attribute rendering in SSR
2023-09-16 12:01:52 -07:00
Jonathan Kelley
2f1fbf3ca4
Merge pull request #1406 from DioxusLabs/fix-router-query
Fix web query segments
2023-09-16 11:55:43 -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
Jonathan Kelley
b68a1f57e0
Merge pull request #1436 from ealmloff/tracing 2023-09-13 10:41:23 -07:00
Leonard
ae5dca8f43
Routable improvements (#1461)
* Fix `SegmentType::CatchAll` `Display`

* Rename `display_route_segements` to `display_route_segments` and add dots to docs

* Fix `Routeable::static_routes` and add more route retrieval methods

* Fix Clippy and extract duplication to function

* Return route strings instead of instances

* Remove some methods

* Clippy
2023-09-13 11:55:26 -05:00
ealmloff
f449823d10
Merge branch 'master' into events-2 2023-09-12 09:33:54 -05:00
Evan Almloff
c55c17cb81 switch to tracing for logging 2023-09-06 17:47:33 -05:00
ealmloff
c8127e164b
Url decode routes (#1407)
* fix a few new clippy lints

* url decode routes

* fix catch all segments

* fix clippy
2023-09-06 12:56:43 -05:00
Evan Almloff
baf36ab9ec Merge branch 'master' into events-2 2023-09-02 18:14:36 -05:00
Stygmates
1b977fdce9
Add query segment example and documentation (#1417)
* fix a few new clippy lints

* Add query segment example

* Add trait documentation

* Change core package to root package

The core package contains the virtual dom implementation ([here](https://github.com/DioxusLabs/dioxus/tree/master/packages/core)). Root package might be a more clear way to refer to the main directory

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
2023-09-02 10:24:30 -05:00
Evan Almloff
df222c121a port examples to new events 2023-09-01 15:38:55 -05:00
Evan Almloff
0554a5db5d Merge branch 'fix-new-clippy-lints' into fix-router-query 2023-08-30 09:03:41 -05:00
Evan Almloff
2d916ef628 fix web query segments 2023-08-30 08:21:24 -05:00
Luca
37eb929d69
Explain features necessary for the pre_cache_static_routes function. (#1401) 2023-08-25 14:00:38 -05:00
Evan Almloff
3ac2346e46 fix a few new clippy lints 2023-08-25 07:54:04 -05:00
Evan Almloff
e43bdd815f fix test failures 2023-08-08 11:27:29 -07:00
Evan Almloff
f7eba62a5d Merge branch 'master' into update-scroll-history-lazy 2023-08-01 10:47:04 -07:00
Evan Almloff
549db35de3 update scroll history lazily when you leave a page 2023-08-01 10:45:54 -07:00
Jonathan Kelley
fe1ce3bbe7
Merge pull request #1273 from Demonthos/dedup-history
Deduplicate route history
2023-08-01 10:35:20 -07:00
Evan Almloff
4062e232d9 fix navigator 2023-08-01 10:21:16 -07:00
Evan Almloff
98de423d99 deduplicate route history 2023-08-01 10:16:19 -07:00
Jonathan Kelley
39e89c1fac
Bump crate versions, fix any publish errors 2023-07-31 18:49:54 -07:00
Evan Almloff
3eab363e51 Add authors to all crates 2023-07-31 17:30:18 -07:00
ealmloff
cfd62e274e
Make deprecated use router (#1260)
* make router props expansion better

* fix router data fields

* make a deprecated use_router hook
2023-07-27 10:32:23 -07:00
Jonathan Kelley
5e3451a6f2
Quiet cargo warnings 2023-07-26 21:02:39 -07:00
Evan Almloff
d2ec27e761 fix clippy 2023-07-26 11:29:34 -07:00
Evan Almloff
cc94711d62 rename generic navigator to navigator 2023-07-26 11:09:40 -07:00
Evan Almloff
947a153347 make navigator non-generic 2023-07-26 11:08:45 -07:00
Evan Almloff
0ebcb5f1be remove some logging 2023-07-26 10:28:49 -07:00
Evan Almloff
e7a9161066 fix link component 2023-07-26 10:18:39 -07:00
Evan Almloff
5f0dd3af3e it almost lives? 2023-07-25 18:14:48 -07:00
Jonathan Kelley
7d4361a701
Merge pull request #1244 from Demonthos/is-decendant
Add is_child_of function to Routable
2023-07-24 17:36:30 -07:00
Evan Almloff
61dc549ba1 Make new enum router less breaking 2023-07-24 11:57:56 -07:00
Evan Almloff
1ddda0cc17 fix clippy 2023-07-24 11:30:52 -07:00
Evan Almloff
6760c2f961 add doc example 2023-07-24 11:22:59 -07:00
Evan Almloff
440d2922be add is_child_of function to Routable 2023-07-24 10:33:55 -07:00
Evan Almloff
9e70aae989 fix route prerendering 2023-07-21 11:10:21 -07: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
a49fd81523
fix merge conflict 2023-07-20 10:55:52 -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
dd5d974aeb fix suspense 2023-07-17 16:48:54 -07:00
Evan Almloff
a831c1375a remove web test for router 2023-07-14 13:30:04 -07:00
Evan Almloff
97115f6537 fix nested nest segments 2023-07-14 12:32:46 -07:00
Evan Almloff
d19a33d59c fix reversed nests 2023-07-14 11:40:38 -07:00
Evan Almloff
1dac04ba8a fix with_initial_path 2023-07-14 08:22:31 -07:00
Evan Almloff
8a142bbc95 improve index route parsing error message 2023-07-14 08:13:44 -07:00
Evan Almloff
5f37dcc2ac fix layouts in child routes 2023-07-13 19:56:30 -07:00
Evan Almloff
128f3e4425 fix nested routers 2023-07-13 19:29:43 -07:00
niedzwiedzw
f159779af4 make thiserror a workspace dependency everywhere else 2023-07-11 22:54:24 +02:00
ealmloff
39ec5f498c
Merge branch 'master' into router-typesafe 2023-07-10 19:16:39 -05:00
Evan Almloff
73a45fb113 fix incremental router cache 2023-07-08 12:22:54 -07:00
Marc Espín
32d4472bfd
fix: Remove duplicated doc links and improved some descriptions (#1167) 2023-07-08 11:04:27 -05:00
Evan Almloff
523be82965 fix clippy 2023-07-06 12:14:40 -07:00
Evan Almloff
1110026d54 allow nested routers 2023-07-06 11:52:17 -07:00
Evan Almloff
cbeaa07be0 create static_routes helper 2023-06-30 18:51:33 -07:00
Jon Kelley
6f38c765e5
Merge pull request #877 from Demonthos/fix-component-attribute-formatting
Don't accept raw attributes in components without trailing commas
2023-06-30 12:10:57 -07:00
Evan Almloff
f5c60eeb4c make fullstack helpers compatable with prerendering 2023-06-28 18:48:42 -07:00
Evan Almloff
7b1f0c9412 Merge branch 'master' into router-typesafe 2023-06-28 08:56:07 -07:00
Evan Almloff
0600a1bb49 simpilify static generation example 2023-06-27 16:06:44 -07:00
Evan Almloff
2da1f7faa7 allow nested routes 2023-06-26 16:08:53 -07:00
Evan Almloff
c238c22eb5 add required features to fix tests 2023-06-24 14:07:48 -07:00
Evan Almloff
e83866b986 fix router examples 2023-06-24 13:44:22 -07:00
Evan Almloff
a165e13564 add cache headers 2023-06-24 13:21:12 -07:00
Evan Almloff
99674fcf94 create server launch macro 2023-06-23 18:23:03 -07:00
Evan Almloff
1704ee0068 router/fullstack/ssr intigration 2023-06-22 16:51:48 -07:00
Evan Almloff
28f875857e add timestamps to incremental rendering 2023-06-22 12:13:51 -07:00
Evan Almloff
3d41dd95c9 remove logging 2023-06-21 18:51:40 -07:00
Evan Almloff
3a690877d1 basic incremental renderer 2023-06-21 18:36:32 -07:00
Evan Almloff
5f873511c5 use workspace dependancies 2023-06-19 14:29:11 -05:00
Evan Almloff
bc063c58b7 throttle history updates to 100ms 2023-06-19 12:04:06 -05:00
Evan Almloff
33f0e30369 fix default web history provider 2023-06-18 19:24:31 -05:00
Evan Almloff
a9307e57e6 fix CI 2023-06-02 12:33:47 -05:00
Evan Almloff
577f99e68c link to the router guide in the readme 2023-06-01 17:50:42 -05:00
Evan Almloff
bc99d9b01a fix formatting 2023-06-01 17:48:43 -05:00
Evan Almloff
b5a2f0d6cb finish router refrence 2023-06-01 17:31:13 -05:00