* 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>
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.
* 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
* feat: use synchronous router design
* feat: function to get router out of dom
* chore: restructure workspace to use renderers as packages, not features