* run_example.sh checks example existens
the script exits if without example name parameter
or if example directory doesn't exist
* Update examples/run_example.sh
Co-authored-by: Simon <simon@siku2.io>
* Update examples/run_example.sh
Co-authored-by: Simon <simon@siku2.io>
Co-authored-by: Simon <simon@siku2.io>
* 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>
* New example to showcase keyed elems reordering issue
* Allow building examples in release mode
* Fix ordering issue with keyed virtual nodes
* review comments for build.sh
* review comments for examples/keyed_list
* fix style.css to keyed_list example
* remove ahash
* Add GitHub issue to TODO in key.rs
* Address some review comments in virtual_dom
* New diffing algorithm for keyed vlists
* Add forgotten dependency for yew-stdweb
* Add tests for vlist diffing
* Removed VDiffNodePosition
* Fix usage of next_sibling for vlist
* Fix tests for stdweb
* Mitigate issue with moving VLists when children are all VLists
Note: The new UT is failing, I now. I want to discuss that before
maybe fixing it (moving all VList children?).
* Fix issue with inserting into vlist that is not last child
* Refactor VDiff trait to make way for keyed list fixes
* Fix quote_spanned macro invocations
* Revert some minor changes (style, Debug)
* Revert some minor changes (style, Debug)
* Fix self-referencing NodeRef issue
* All VList tests pass
* Fix algorithm choice in degenerated case
* Remove stdweb and non keyed tests
* Key from finite list of types
* WIP moving VList tests to diff_layouts
* Removed unnecessary Vec
* Fix VComp NodeRef self linking issue
* Add logs to diff_layouts tests
* WIP moving VList tests to diff_layouts
* WIP Failing test moving VComp
* Add VComp move_before
* Fix list component change method
* Fix bad merge
* Add more protection against node ref cycles
* Remove commented tests
* Feedback and clippy
* Failing test
* tests pass
Co-authored-by: Justin Starry <justin.starry@icloud.com>
* Update run instructions
`python3 -m http.server --directory` flag was added in Python 3.7.
Change instructions to cd into static and skip the flag instead -
makes it work with earlier Pythons too.
* Add visual feedback for button click
The minimal example has a button, but clicking it does nothing. This
makes it hard to tell whether the example works or not.
This adds a label that is update when the button is clicked.
* Small improvements to crm example
* Add a heading to each scene to make it more obvious what the page is
for.
* Improve layout of input form by stack the inputs vertically.
* Add a little space between entries when displaying the list.
* Add a hint to the Description input that Markdown can be used.
* Add an explanation to the file_upload example
* Clarify purpose of var in fragments example
* Improve futures_wp example
* Add a second button that demonstrates an unsuccessful fetch.
* Render the markdown document (since we're fetching markdown after
all).
* Remove vague comment that's not really helping.
* Improve inner_html example
* Include a textual explanation of what the example is doing.
* Run cargo fmt
* Remove 'static lifetime for constant
* Improve suggestion in inner_html example
* move markdown.rs to a common crate
* add description to common Cargo.toml
* PR feedback
* PR feedback
* remove static lifetime annotation
* Make methods static.
* Fix a call.
* Fix examples.
* Fix examples.
* Fix rest of examples.
* Fix yew-functional.
* Fix interval service example.
* Fix webgl example.
* Fix dialogue service example.
* Use `Default` trait instead of `new()` in `npm_and_rest` example.
* Use `Default` trait instead of `new()` in `npm_and_rest` example.
* Remove use of the `Option` algebraic data type.
* Fix clippy warnings.
* 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!
* first sketch of a stateful agent
* share the data with listeners only immutably
* rename the stateful agent to Store
* moved stuff around, fixed missing parts
* removed a useless directory
* fmt fixes
* added missing comments
* list all listener attributes
* add handlers for web_sys
* implement for stdweb
* update list of event handlers
* rename doubleclick to dblclick
* add error for unsupported listeners (stdweb)
* remove cfg-if dependency
* conditially require serialize
* we're using a trait alias and a clearer implementation of the constraints
* after merging with separated agent
* no trait aliases :(
* specialized the types for Drop a bit
* added an additional constraint on an agent
* emitted with fmt fixes
* dropped the useless debug constraint on the input
* fix stdweb examples
* dropped unneeded debug constraints
* linter
* Prevent setting empty class string in DOM
* Use the className property for setting classes in DOM
* Update documentation of VTag::diff_classes
* Add test cases for checking if the class_name is not set for empty class attributes
* Add class to SVG g element in the supports_svg test
* Revert "Use the className property for setting classes in DOM"
This reverts commit 41bfbc3218ce17310d7b9fa6ac99cb0049a34911.
* Use patches for the class attribute and remove classes with remove_attribute
* Set classes directly as class attribute
* Fix markdown example
* Remove set_classes and classes from VTag
Add possibility to use different types in the class tuple
Add convertion to Classes from Option<T> where T: AsRef<str>
* Remove mut from variable that does not need to be
Add `::` to create an absolute path to std
* Use helper methods for classes in tests
* Add test case for Option<&'static str> variable
* Remove unnecessary map in test
* Update to version 0.7.0
* Use new Options struct
* Fix rule support
* Fix link tag
* Remove code tag
* Fix code block tag
* Fix image tag
* Fix heading tag
* Add strikethrough tag
* Run cargo fmt
* Use the `Msg::SetOpposite` in `two_apps` example
b4d5227e625640ee2aca548ee06499dfe90c8acf changed the name of
`Msg::SetScope` to `Msg::SetOpposite` but the usages in the `main`
functions of the `two_apps` examples were not updated.
* Use new `TwoModels` struct as the `TwoApps` scene
`TwoModels` is a `Component` that does not respond to changes but which
creates two instances of the `Model` and mounts them as separate
`yew::App<Model>` instances in the body. This is done to mimic the
behavior of `two_apps/src/main.rs` which uses a static `index.html` file
containing the `div.first-app` and `div.second-app` elements.
`TwoModels::mounted` is responsible for replacing the `<div>` nodes it
creates during the initial render with the `Model` components.