* Use cheap-to-clone types more
* Use IArray in NodeSeq & add IntoPropValue for &AttrValue
* Add function get_mut() on VChild to make things easier
* Use AttrValue in timer_functional example
* fix VList PartialEq
* extract implicit-clone as workspace dep and bump to 0.5.1
* docs: advocate using IArray and IMap instead of Vec and HashMap
* docs: AI translation for lifecycles.mdx in Japanese and simplified Chinese
---------
Co-authored-by: Mattuwu <syan4@ualberta.ca>
* remove ToHtml trait
* re-add display impls
* make Vec::clone expilit
* fix doc
* fix conflicting impls
Into<Html> and Display can't be implemented on the same type
* update docs
* blanket impl won't work here
* bring back `Vec<VNode>: IntoPropValue<VNode>`
* macro tests
* Revert "fix conflicting impls"
This reverts commit 52f3c1fa8174489ba9cc783d708a49cc7b9c90a4.
These impls are fine now
* make examples compile
* .clone() should be before .into()
* Rc VList
* Make use of ImplicitClone and AttrValue in example
(There is more work to do but it's complicated so I will do it in
another PR)
* Impl ImplicitClone on VChild
---------
Co-authored-by: Cecile Tonglet <cecile.tonglet@cecton.com>
* Add `--open` to `boids`
* Added running instructions to `contexts`
* Amended `counter` instructions
- Added `--open` flag
- Removed unnecessary instructions on how to run with `release` profile
* Amended `counter_functional` instructions
- Added `--open` flag
- Removed unnecessary instructions on how to run with `release` profile
* Amended `dyn_create_destroy_apps` instructions
- Added `--open` flag
- Removed unnecessary instructions on how to run with `release` profile
* Added running instructions to `file_upload`
* Added running instructions to `function_memory_game``
* Amended `function_router` instructions
- Amended `release` profile instructions
- Added `--open` flag
* Added running instructions to `function_todomvc`
* Added running instructions to `futures`
* Added running instructions to `game_of_life`
* Added running instructions to `immutable`
* Added running instructions to `inner_html`
* Added running instructions to `js_callback`
* Amended `keyed_list` instructions
- Added `--open` flag
- Amended `release` profile notice
* Added running instructions to `mount_point`
* Added running instructions to `nested_list`
* Added running instructions to `node_refs`
* Amended `password_strength` instructions
- Added `--open` flag
- Amended `release` profile notice
* Added running instructions to `portals`
* Amended `router` instructions
- Added `--open` flag
- Amended `release` profile notice
* Amended `simple_ssr` instructions
- Simplified wording
- Removed unnecessary notes
- Changed commands so that they should be executed from the `examples/simple_ssr` directory like every other example
* Amended `ssr_router` instructions
- Removed unnecessary notes
- Changed commands so that they should be executed from the `examples/ssr_router` directory like every other example
* Added running instructions to `suspense`
* Added running instructions to `timer`
* Added running instructions to `todo_mvc`
* Added running instructions to `two_apps`
* Added running instructions to `web_worker_fib`
* Added running instructions to `webgl`
* Amended various examples
- Simplified running instructions
- Moved running instructions to the bottom of each `README.md`
* Amended `examples/README.md` instructions
- Added `release` profile notice
- Added `--open` flag
- Removed `--release` flag
* Apply grammar suggestions from code review
Co-authored-by: Kaede Hoshikawa <futursolo@users.noreply.github.com>
* Update examples/function_router/README.md Grammar
Co-authored-by: Kaede Hoshikawa <futursolo@users.noreply.github.com>
* Add Grammar Suggestions from Review
* Apply Spelling Suggestion
Co-authored-by: Kaede Hoshikawa <futursolo@users.noreply.github.com>
---------
Co-authored-by: Kaede Hoshikawa <futursolo@users.noreply.github.com>
* don't attach noderef to components, add test case
* remove node_ref from VNode and VComp
* fmt & macro tests
* remove uneeded test & todo
this test is done at compile time. there's no node_ref field so it can't be set
* feature soundness & clippy
* add marker field, in an attempt to reduce bundle size
* Update migration guide
* update rust version for macro test to 1.51
* enable const generic tests
* run integration tests using MSRV
* am blind
* clippy, fmt
* apply suggestion
* remove old files
* update counter
* update crm example
* Add readme for counter
* update custom_components
* update webgl example
* update two_apps
* update todomvc
* mark special case multithread
* update dashboard
* update examples readme
* file_upload example
* fragments example
* futures example
* game_of_life example
* inner_html example
* js_callback example
* keyed_list example
* remove large_table
* remove minimal
* mount_point example
* I can't count apparently
* nested_list example
* node_refs example
* timer example
* store example
* pub_sub example
* rip npm_and_my_sanity
* use a title™️
* clean up multi_thread
* fix format
* boids part 1
* boids part 2
* add workflow
See: <https://github.com/siku2/yew/pull/13>
* remove my little scratchpad again
* add boids to examples table
* runtime-generated list in nested_list example
* update workflow
* first batch of yewtil examples
* clippy "futures"
* remove old yew-router examples
* add a new router example to the main examples
* remove remaining yewtil examples
* more progress
* update for testing purposes
* author list
* improve content generation
* revert this mistake
I thought it would be great to use `unimplemented!()` in case the component doesn't have any properties.
This helps avoid the mistake of forgetting to update the change method when adding props later on.
What I didn't consider is that just because the props are () that doesn't mean that Yew isn't going to call it...
So yeah, it's still a good idea for update, but certainly not for change.
* missed a few
* turn router switch example into test
* seems to be working
* make it possible to host the router example on a sub-path
* create a 404 file for SPA
* remove the three examples and update table
* remove the 404 file because it isn't working anyway
* fix small router issue relating to the sub-path hack
* remove static directory, move script to run_example.sh
* gitignore
* server infra
* Support --build-only
* fix npm_and_rest example
* Fix various static index.html's
* Fix spacing
* newlines at the end
* Cleanup
* tabs -> spaces
* line ending
* remove build_examples.sh
* Apply suggestions from code review
Co-authored-by: Simon <simon@siku2.io>
* format file and improve EXIT trap
Co-authored-by: Simon <simon@siku2.io>
* add test to assert iterators work
* update test
* a few minor adjustments
* remove redundant wrappers around htmltree
* we're going down the rabbit hole
* components are broken but everything else works
* we're getting there
* working prototype
* test vector as children method for all containers
* more appropriate names and some comments
* ChildrenRenderer handling
* update tests to include ChildrenRenderer
* trigger tests to re-run
* improve error messages for invaid iterables
* improve html_nested!
* Properties 2.0
* Fix problem when passing a closure to prop_or_else
* Update test names
* Add support for building with web-sys (#961)
* Enable travis
* `web-sys` general conversion (#826)
* Moved patches from different PRs.
* Add bits & pieces and some services.
* Rename `stdweb` feature to `std_web`.
* Move tests and examples to different PR.
* Revert some `cargo_web` handling removal.
* Missed something.
* Implement `console_error_panic_hook`.
* Update Cargo.toml
Co-authored-by: Justin Starry <justin.m.starry@gmail.com>
* Move document creation to util convenience method (#855)
* `web-sys` listener conversion (#813)
* `web-sys` listener initial try.
* Improve macros?
* Remove generic from `EventListenerHandle`.
* Fix build.
* A cleaner solution?
* Even cleaner.
* Fix `build.rs`.
* Minor improvements.
* Following the yew toml style.
* Fixing visibility.
* Fix `rustfmt`.
* Add `web-sys` re-exports.
* Move general changes to different PR.
* Remove compat.
* Actually remove `compat.rs`.
* Rename `stdweb` feature to `std_web`.
* Move to gloo's `EventListener` and some polish.
* Remove outdated comment.
* Change `EventHandler` to be cancelled on drop.
* `web-sys` html conversion (#817)
* Converting all `html` parts.
* Format.
* Move general changes to different PR.
* Removed compat.
* Rename `stdweb` feature to `std_web`.
* Remove redudant function copy.
* Some polish.
* Move to gloo's `EventListener`.
* Replace `unwrap`s with `expect`s.
* `web-sys` agent conversion (#818)
* Converting `agent`.
* Remove wrong `cfg` in imports.
* Move general changes to different PR.
* Some optimisations.
* Rename `stdweb` feature to `std_web`.
* Fix `ArrayBuffer` to `Uint8Array` conversions.
* Add js module worker.
* Use `cfg-if`` and `cfg-match` to make things clearer.
* Fix `std_web` build.
* Add some polish.
* Add build guards for invalid build configs (#866)
* `web_sys` cfg conversion (#862)
* Use `cfg-if` and `cfg-match` and some polish.
* Mistakes were made.
* Missed line during rebasing.
* Mistakes were undone.
* Remove global.
* Remove part of `global!`.
* `web-sys` services conversion (#827)
* Convert `console`.
* Finish services.
* Some polish.
* Fix `ArrayBuffer` to `Uint8Array` conversions.
* Fix aborting fetch leading to error and some polish.
* Replaced some `unwrap`s with `expect`s.
* Use `cfg_if` and `cfg_match` and do some polish.
* Proper scoping.
* Some fixes.
* Move fetch and reader services to different PR.
* Revert split.
* Fix CI builds (#877)
* Fix derive_props_test
* Move tests (#897) (#898)
* `web-sys` fetch service conversion (#867)
* Split implementation.
* Import global.
* Import global.
* Revert split.
* Make fetch available again.
* Revert "Revert split."
This reverts commit 6e3f101dbedde2142f041467a8ae40ef5e3920c5.
* Re-revert split.
* Some polish.
* Move to `wasm_bindgen_futures`.
* Switch to `thiserror`.
* wip
* Update src/services/fetch/web_sys.rs
Co-Authored-By: daxpedda <daxpedda@gmail.com>
* Some more polish.
Co-authored-by: Justin Starry <justin.m.starry@gmail.com>
* `web-sys` reader service conversion (#868)
* Split reader implementation.
* Revert split.
* Remove leftover files.
* Make reader available again.
* Revert "Revert split."
This reverts commit 8abdc9cf2b014ab61fef2c48d1af8927d9a5a330.
* Revert "Remove leftover files."
This reverts commit 188c6eb9693881c9987061de8deb29c6f4c613a4.
* Re-revert split.
* Polish.
* Forgot some part.
* Some polish.
* Some polish.
* `web-sys` examples/tests conversion (#841)
* Fix examples/tests to work with `web_sys`.
* Update `StorageService` usage.
* Split `stdweb` and `web-sys` examples.
* Fixing the shell script.
* Trying to reset file permissions.
* Update to new reader API.
* Update to new fetch API.
* Update to new fetch API.
* Re-enable examples CI.
* Deleted duplicate example.
* Some fixes.
* Fix rand build.
* Fix spawning workers in combination with `wasm-bindgen`. (#901)
* Fix component rendering process (#913)
* wip
* Fix component rendering process
* Simplify yew-macro a bit (#902)
* yew-macro: Simplify Properties validation
* Fix most clippy warnings
* Fix clippy warnings (#912)
* Import Task trait in dashboard example
* Remove duplicate vtag tests
* Fix prevent_default() by non-passive (#958)
* Fix prevent_default() by non-passive
* Fix cargo fmt
* Remove `Option` from most services.
* Remove `Option` from resize service.
* Apply fetch changes.
* Apply reader service changes.
* Fix `node_refs` example.
* Remove web-sys travis branch
Co-authored-by: daxpedda <daxpedda@gmail.com>
Co-authored-by: Jonas Platte <jplatte@users.noreply.github.com>
Co-authored-by: Jet Li <jing.i.qin@icloud.com>
* Fix vtag test warning (#978)
* Clean up exported apis and doc visibility (#977)
* Clean up exported apis and doc visibility
* Remove unused ScopeHolder
* Change ComponentLink to alias of Scope
* cargo fmt
* update new examples to Properties 2.0
* Fix a mistake when resolving conflicts
* Remove an outdated hack.
Co-authored-by: Justin Starry <justin.m.starry@gmail.com>
Co-authored-by: daxpedda <daxpedda@gmail.com>
Co-authored-by: Jonas Platte <jplatte@users.noreply.github.com>
Co-authored-by: Jet Li <jing.i.qin@icloud.com>
* Add render method to Component and auto implement Renderable
* More cleanup
* Rename Renderable method from view to render
* Doc fixes
* fix
* Update CHANGELOG.md