gitextract_gxaqlxdv/ ├── .cargo/ │ └── config.toml ├── .firebaserc ├── .gitattributes ├── .github/ │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.md │ │ ├── config.yml │ │ └── documentation.md │ ├── PULL_REQUEST_TEMPLATE.md │ ├── dependabot.yml │ └── workflows/ │ ├── auto-approve-maintainer-pr.yml │ ├── benchmark-core.yml │ ├── benchmark-ssr.yml │ ├── benchmark.yml │ ├── build-api-docs.yml │ ├── build-website.yml │ ├── clippy.yml │ ├── fmt.yml │ ├── inspect-next-changelogs.yml │ ├── main-checks.yml │ ├── post-benchmark-core.yml │ ├── post-benchmark-ssr.yml │ ├── post-benchmark.yml │ ├── post-size-cmp.yml │ ├── publish-api-docs.yml │ ├── publish-examples.yml │ ├── publish-website.yml │ ├── publish.yml │ ├── size-cmp.yml │ └── test-website.yml ├── .gitignore ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── Cargo.toml ├── LICENSE-APACHE ├── LICENSE-MIT ├── Makefile.toml ├── README.md ├── SECURITY.md ├── _typos.toml ├── api-docs/ │ ├── .gitignore │ ├── before-content.html │ └── styles.css ├── ci/ │ ├── collect_sizes.py │ ├── install-wasm-bindgen-cli.sh │ ├── make_benchmark_ssr_cmt.py │ ├── make_example_size_cmt.py │ └── write-min-size-flags.sh ├── examples/ │ ├── .cargo/ │ │ ├── config.toml │ │ ├── dummy-min-size-config.toml │ │ └── min-size-config.toml │ ├── .gitignore │ ├── README.md │ ├── async_clock/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── index.scss │ │ └── src/ │ │ ├── main.rs │ │ └── services.rs │ ├── boids/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── index.scss │ │ └── src/ │ │ ├── boid.rs │ │ ├── main.rs │ │ ├── math.rs │ │ ├── settings.rs │ │ ├── simulation.rs │ │ └── slider.rs │ ├── communication_child_to_parent/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── index.scss │ │ └── src/ │ │ ├── child.rs │ │ ├── main.rs │ │ └── parent.rs │ ├── communication_grandchild_with_grandparent/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── index.scss │ │ └── src/ │ │ ├── child.rs │ │ ├── grandparent.rs │ │ ├── main.rs │ │ └── parent.rs │ ├── communication_grandparent_to_grandchild/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── index.scss │ │ └── src/ │ │ ├── child.rs │ │ ├── grandparent.rs │ │ ├── main.rs │ │ └── parent.rs │ ├── communication_parent_to_child/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── index.scss │ │ └── src/ │ │ ├── child.rs │ │ ├── main.rs │ │ └── parent.rs │ ├── contexts/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ └── src/ │ │ ├── main.rs │ │ ├── msg_ctx.rs │ │ ├── producer.rs │ │ ├── struct_component_producer.rs │ │ ├── struct_component_subscriber.rs │ │ └── subscriber.rs │ ├── counter/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── index.scss │ │ └── src/ │ │ └── main.rs │ ├── counter_functional/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ └── src/ │ │ └── main.rs │ ├── dyn_create_destroy_apps/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── index.scss │ │ └── src/ │ │ ├── counter.rs │ │ └── main.rs │ ├── file_upload/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── src/ │ │ │ └── main.rs │ │ └── styles.css │ ├── function_delayed_input/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ └── src/ │ │ └── main.rs │ ├── function_memory_game/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── scss/ │ │ │ ├── chess_board.scss │ │ │ ├── chess_board_card.scss │ │ │ ├── game_progress.scss │ │ │ ├── game_status_board.scss │ │ │ ├── index.scss │ │ │ ├── score_board.scss │ │ │ └── score_board_best_score.scss │ │ └── src/ │ │ ├── components/ │ │ │ ├── app.rs │ │ │ ├── chessboard.rs │ │ │ ├── chessboard_card.rs │ │ │ ├── game_status_board.rs │ │ │ ├── score_board.rs │ │ │ ├── score_board_best_score.rs │ │ │ ├── score_board_logo.rs │ │ │ └── score_board_progress.rs │ │ ├── components.rs │ │ ├── constant.rs │ │ ├── helper.rs │ │ ├── main.rs │ │ └── state.rs │ ├── function_router/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── data/ │ │ │ ├── keywords.txt │ │ │ ├── syllables.txt │ │ │ └── yew.txt │ │ ├── index.html │ │ ├── index.scss │ │ └── src/ │ │ ├── app.rs │ │ ├── bin/ │ │ │ └── function_router.rs │ │ ├── components/ │ │ │ ├── author_card.rs │ │ │ ├── mod.rs │ │ │ ├── nav.rs │ │ │ ├── pagination.rs │ │ │ ├── post_card.rs │ │ │ └── progress_delay.rs │ │ ├── content.rs │ │ ├── generator.rs │ │ ├── imagegen.rs │ │ ├── lib.rs │ │ └── pages/ │ │ ├── author.rs │ │ ├── author_list.rs │ │ ├── home.rs │ │ ├── mod.rs │ │ ├── page_not_found.rs │ │ ├── post.rs │ │ └── post_list.rs │ ├── function_todomvc/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ └── src/ │ │ ├── components/ │ │ │ ├── entry.rs │ │ │ ├── filter.rs │ │ │ ├── header_input.rs │ │ │ └── info_footer.rs │ │ ├── components.rs │ │ ├── hooks/ │ │ │ └── use_bool_toggle.rs │ │ ├── hooks.rs │ │ ├── main.rs │ │ └── state.rs │ ├── futures/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ └── src/ │ │ ├── main.rs │ │ └── markdown.rs │ ├── game_of_life/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── src/ │ │ │ ├── conway.rs │ │ │ └── main.rs │ │ └── styles.css │ ├── immutable/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── index.scss │ │ └── src/ │ │ ├── array.rs │ │ ├── main.rs │ │ ├── map.rs │ │ └── string.rs │ ├── inner_html/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ └── src/ │ │ ├── document.html │ │ └── main.rs │ ├── js_callback/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── js/ │ │ │ ├── imp.js │ │ │ └── unimp.js │ │ ├── src/ │ │ │ ├── bindings.rs │ │ │ └── main.rs │ │ └── trunk_post_build.rs │ ├── keyed_list/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── src/ │ │ │ ├── main.rs │ │ │ ├── person.rs │ │ │ └── random.rs │ │ └── styles.css │ ├── mount_point/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ └── src/ │ │ └── main.rs │ ├── nested_list/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── src/ │ │ │ ├── app.rs │ │ │ ├── header.rs │ │ │ ├── item.rs │ │ │ ├── list.rs │ │ │ └── main.rs │ │ └── styles.scss │ ├── node_refs/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── src/ │ │ │ ├── input.rs │ │ │ └── main.rs │ │ └── styles.css │ ├── password_strength/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── index.scss │ │ └── src/ │ │ ├── app.rs │ │ ├── main.rs │ │ ├── password.rs │ │ └── text_input.rs │ ├── portals/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ └── src/ │ │ └── main.rs │ ├── router/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── data/ │ │ │ ├── keywords.txt │ │ │ ├── syllables.txt │ │ │ └── yew.txt │ │ ├── index.html │ │ ├── index.scss │ │ └── src/ │ │ ├── components/ │ │ │ ├── author_card.rs │ │ │ ├── mod.rs │ │ │ ├── pagination.rs │ │ │ ├── post_card.rs │ │ │ └── progress_delay.rs │ │ ├── content.rs │ │ ├── generator.rs │ │ ├── lib.rs │ │ ├── main.rs │ │ └── pages/ │ │ ├── author.rs │ │ ├── author_list.rs │ │ ├── home.rs │ │ ├── mod.rs │ │ ├── page_not_found.rs │ │ ├── post.rs │ │ └── post_list.rs │ ├── simple_ssr/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── index.html │ │ ├── src/ │ │ │ ├── bin/ │ │ │ │ ├── simple_ssr_hydrate.rs │ │ │ │ └── simple_ssr_server.rs │ │ │ └── lib.rs │ │ └── tests/ │ │ └── e2e.rs │ ├── ssr_router/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── index.html │ │ ├── src/ │ │ │ ├── bin/ │ │ │ │ ├── ssr_router_hydrate.rs │ │ │ │ └── ssr_router_server.rs │ │ │ └── lib.rs │ │ └── tests/ │ │ └── e2e.rs │ ├── suspense/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── index.scss │ │ └── src/ │ │ ├── main.rs │ │ ├── struct_consumer.rs │ │ └── use_sleep.rs │ ├── timer/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── index.scss │ │ └── src/ │ │ └── main.rs │ ├── timer_functional/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ ├── index.scss │ │ └── src/ │ │ └── main.rs │ ├── todomvc/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ └── src/ │ │ ├── main.rs │ │ └── state.rs │ ├── two_apps/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ └── src/ │ │ └── main.rs │ ├── wasi_ssr_module/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ └── src/ │ │ ├── main.rs │ │ └── router.rs │ ├── web_worker_fib/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ └── src/ │ │ ├── agent.rs │ │ ├── bin/ │ │ │ ├── app.rs │ │ │ └── worker.rs │ │ └── lib.rs │ ├── web_worker_prime/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ ├── Trunk.toml │ │ ├── index.html │ │ └── src/ │ │ ├── agent.rs │ │ ├── bin/ │ │ │ ├── app.rs │ │ │ └── worker.rs │ │ └── lib.rs │ └── webgl/ │ ├── Cargo.toml │ ├── README.md │ ├── Trunk.toml │ ├── index.html │ └── src/ │ ├── basic.frag │ ├── basic.vert │ └── main.rs ├── firebase.json ├── packages/ │ ├── yew/ │ │ ├── Cargo.toml │ │ ├── Makefile.toml │ │ ├── src/ │ │ │ ├── app_handle.rs │ │ │ ├── callback.rs │ │ │ ├── context.rs │ │ │ ├── dom_bundle/ │ │ │ │ ├── bcomp.rs │ │ │ │ ├── blist.rs │ │ │ │ ├── bnode.rs │ │ │ │ ├── bportal.rs │ │ │ │ ├── braw.rs │ │ │ │ ├── bsuspense.rs │ │ │ │ ├── btag/ │ │ │ │ │ ├── attributes.rs │ │ │ │ │ ├── listeners.rs │ │ │ │ │ └── mod.rs │ │ │ │ ├── btext.rs │ │ │ │ ├── fragment.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── position.rs │ │ │ │ ├── subtree_root.rs │ │ │ │ ├── traits.rs │ │ │ │ └── utils.rs │ │ │ ├── functional/ │ │ │ │ ├── hooks/ │ │ │ │ │ ├── mod.rs │ │ │ │ │ ├── use_callback.rs │ │ │ │ │ ├── use_context.rs │ │ │ │ │ ├── use_effect.rs │ │ │ │ │ ├── use_force_update.rs │ │ │ │ │ ├── use_memo.rs │ │ │ │ │ ├── use_prepared_state/ │ │ │ │ │ │ ├── feat_hydration.rs │ │ │ │ │ │ ├── feat_hydration_ssr.rs │ │ │ │ │ │ ├── feat_none.rs │ │ │ │ │ │ ├── feat_ssr.rs │ │ │ │ │ │ └── mod.rs │ │ │ │ │ ├── use_reducer.rs │ │ │ │ │ ├── use_ref.rs │ │ │ │ │ ├── use_state.rs │ │ │ │ │ └── use_transitive_state/ │ │ │ │ │ ├── feat_hydration.rs │ │ │ │ │ ├── feat_hydration_ssr.rs │ │ │ │ │ ├── feat_none.rs │ │ │ │ │ ├── feat_ssr.rs │ │ │ │ │ └── mod.rs │ │ │ │ └── mod.rs │ │ │ ├── html/ │ │ │ │ ├── classes.rs │ │ │ │ ├── component/ │ │ │ │ │ ├── children.rs │ │ │ │ │ ├── lifecycle.rs │ │ │ │ │ ├── marker.rs │ │ │ │ │ ├── mod.rs │ │ │ │ │ ├── properties.rs │ │ │ │ │ └── scope.rs │ │ │ │ ├── conversion/ │ │ │ │ │ ├── into_prop_value.rs │ │ │ │ │ └── mod.rs │ │ │ │ ├── error.rs │ │ │ │ ├── listener/ │ │ │ │ │ ├── events.rs │ │ │ │ │ └── mod.rs │ │ │ │ └── mod.rs │ │ │ ├── lib.rs │ │ │ ├── platform.rs │ │ │ ├── renderer.rs │ │ │ ├── scheduler.rs │ │ │ ├── sealed.rs │ │ │ ├── server_renderer.rs │ │ │ ├── suspense/ │ │ │ │ ├── component.rs │ │ │ │ ├── hooks.rs │ │ │ │ ├── mod.rs │ │ │ │ └── suspension.rs │ │ │ ├── tests/ │ │ │ │ ├── layout_tests.rs │ │ │ │ └── mod.rs │ │ │ ├── utils/ │ │ │ │ └── mod.rs │ │ │ └── virtual_dom/ │ │ │ ├── key.rs │ │ │ ├── listeners.rs │ │ │ ├── mod.rs │ │ │ ├── vcomp.rs │ │ │ ├── vlist.rs │ │ │ ├── vnode.rs │ │ │ ├── vportal.rs │ │ │ ├── vraw.rs │ │ │ ├── vsuspense.rs │ │ │ ├── vtag.rs │ │ │ └── vtext.rs │ │ └── tests/ │ │ ├── common/ │ │ │ └── mod.rs │ │ ├── hydration.rs │ │ ├── layout.rs │ │ ├── mod.rs │ │ ├── raw_html.rs │ │ ├── suspense.rs │ │ ├── use_callback.rs │ │ ├── use_context.rs │ │ ├── use_effect.rs │ │ ├── use_memo.rs │ │ ├── use_prepared_state.rs │ │ ├── use_reducer.rs │ │ ├── use_ref.rs │ │ ├── use_state.rs │ │ └── use_transitive_state.rs │ ├── yew-agent/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ └── src/ │ │ ├── codec.rs │ │ ├── lib.rs │ │ ├── oneshot/ │ │ │ ├── bridge.rs │ │ │ ├── hooks.rs │ │ │ ├── mod.rs │ │ │ ├── provider.rs │ │ │ ├── registrar.rs │ │ │ ├── spawner.rs │ │ │ ├── traits.rs │ │ │ └── worker.rs │ │ ├── reach.rs │ │ ├── reactor/ │ │ │ ├── bridge.rs │ │ │ ├── hooks.rs │ │ │ ├── messages.rs │ │ │ ├── mod.rs │ │ │ ├── provider.rs │ │ │ ├── registrar.rs │ │ │ ├── scope.rs │ │ │ ├── spawner.rs │ │ │ ├── traits.rs │ │ │ └── worker.rs │ │ ├── scope_ext.rs │ │ ├── traits.rs │ │ ├── utils.rs │ │ └── worker/ │ │ ├── bridge.rs │ │ ├── handler_id.rs │ │ ├── hooks.rs │ │ ├── lifecycle.rs │ │ ├── messages.rs │ │ ├── mod.rs │ │ ├── native_worker.rs │ │ ├── provider.rs │ │ ├── registrar.rs │ │ ├── scope.rs │ │ ├── spawner.rs │ │ └── traits.rs │ ├── yew-agent-macro/ │ │ ├── Cargo.toml │ │ ├── release.toml │ │ └── src/ │ │ ├── agent_fn.rs │ │ ├── lib.rs │ │ ├── oneshot.rs │ │ └── reactor.rs │ ├── yew-macro/ │ │ ├── Cargo.toml │ │ ├── Makefile.toml │ │ ├── release.toml │ │ ├── src/ │ │ │ ├── classes/ │ │ │ │ └── mod.rs │ │ │ ├── derive_props/ │ │ │ │ ├── builder.rs │ │ │ │ ├── field.rs │ │ │ │ ├── generics.rs │ │ │ │ ├── mod.rs │ │ │ │ └── wrapper.rs │ │ │ ├── function_component.rs │ │ │ ├── hook/ │ │ │ │ ├── body.rs │ │ │ │ ├── lifetime.rs │ │ │ │ ├── mod.rs │ │ │ │ └── signature.rs │ │ │ ├── html_tree/ │ │ │ │ ├── html_block.rs │ │ │ │ ├── html_component.rs │ │ │ │ ├── html_dashed_name.rs │ │ │ │ ├── html_element.rs │ │ │ │ ├── html_for.rs │ │ │ │ ├── html_if.rs │ │ │ │ ├── html_iterable.rs │ │ │ │ ├── html_list.rs │ │ │ │ ├── html_node.rs │ │ │ │ ├── lint/ │ │ │ │ │ └── mod.rs │ │ │ │ ├── mod.rs │ │ │ │ └── tag.rs │ │ │ ├── lib.rs │ │ │ ├── props/ │ │ │ │ ├── component.rs │ │ │ │ ├── element.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── prop.rs │ │ │ │ └── prop_macro.rs │ │ │ ├── stringify.rs │ │ │ ├── use_prepared_state.rs │ │ │ └── use_transitive_state.rs │ │ └── tests/ │ │ ├── classes_macro/ │ │ │ ├── classes-fail.rs │ │ │ ├── classes-fail.stderr │ │ │ └── classes-pass.rs │ │ ├── classes_macro_test.rs │ │ ├── derive_props/ │ │ │ ├── fail.rs │ │ │ ├── fail.stderr │ │ │ └── pass.rs │ │ ├── derive_props_test.rs │ │ ├── function_attr_test.rs │ │ ├── function_component_attr/ │ │ │ ├── applied-to-non-fn-fail.rs │ │ │ ├── applied-to-non-fn-fail.stderr │ │ │ ├── async-fail.rs │ │ │ ├── async-fail.stderr │ │ │ ├── bad-name-fail.rs │ │ │ ├── bad-name-fail.stderr │ │ │ ├── bad-props-param-fail.rs │ │ │ ├── bad-props-param-fail.stderr │ │ │ ├── bad-return-type-fail.rs │ │ │ ├── bad-return-type-fail.stderr │ │ │ ├── const-fail.rs │ │ │ ├── const-fail.stderr │ │ │ ├── extern-fail.rs │ │ │ ├── extern-fail.stderr │ │ │ ├── generic-lifetime-fail.rs │ │ │ ├── generic-lifetime-fail.stderr │ │ │ ├── generic-pass.rs │ │ │ ├── generic-props-fail.rs │ │ │ ├── generic-props-fail.stderr │ │ │ ├── hook_location-fail.rs │ │ │ ├── hook_location-fail.stderr │ │ │ ├── hook_location-pass.rs │ │ │ ├── lifetime-props-param-fail.rs │ │ │ ├── lifetime-props-param-fail.stderr │ │ │ ├── multiple-param-fail.rs │ │ │ ├── multiple-param-fail.stderr │ │ │ ├── mut-ref-props-param-fail.rs │ │ │ ├── mut-ref-props-param-fail.stderr │ │ │ ├── no-name-default-pass.rs │ │ │ ├── with-defaulted-type-param-pass.rs │ │ │ ├── with-props-pass.rs │ │ │ ├── with-receiver-fail.rs │ │ │ ├── with-receiver-fail.stderr │ │ │ └── without-props-pass.rs │ │ ├── hook_attr/ │ │ │ ├── hook-call-generics-pass.rs │ │ │ ├── hook-const-generic-pass.rs │ │ │ ├── hook-dynamic-dispatch-pass.rs │ │ │ ├── hook-impl-trait-pass.rs │ │ │ ├── hook-lifetime-pass.rs │ │ │ ├── hook-must-use-fail.rs │ │ │ ├── hook-must-use-fail.stderr │ │ │ ├── hook-must-use-pass.rs │ │ │ ├── hook-return-impl-trait-pass.rs │ │ │ ├── hook-return-ref-pass.rs │ │ │ ├── hook-trait-item-pass.rs │ │ │ ├── hook_location-fail.rs │ │ │ ├── hook_location-fail.stderr │ │ │ ├── hook_location-pass.rs │ │ │ ├── hook_macro-fail.rs │ │ │ ├── hook_macro-fail.stderr │ │ │ └── hook_macro-pass.rs │ │ ├── hook_attr_test.rs │ │ ├── hook_macro/ │ │ │ ├── use_prepared_state-fail.rs │ │ │ ├── use_prepared_state-fail.stderr │ │ │ ├── use_transitive_state-fail.rs │ │ │ └── use_transitive_state-fail.stderr │ │ ├── hook_macro_test.rs │ │ ├── html_lints/ │ │ │ ├── fail.rs │ │ │ └── fail.stderr │ │ ├── html_lints_test.rs │ │ ├── html_macro/ │ │ │ ├── as-return-value-pass.rs │ │ │ ├── block-fail.rs │ │ │ ├── block-fail.stderr │ │ │ ├── block-pass.rs │ │ │ ├── component-any-children-pass.rs │ │ │ ├── component-fail.rs │ │ │ ├── component-fail.stderr │ │ │ ├── component-pass.rs │ │ │ ├── component-unimplemented-fail.rs │ │ │ ├── component-unimplemented-fail.stderr │ │ │ ├── dyn-element-pass.rs │ │ │ ├── element-fail.rs │ │ │ ├── element-fail.stderr │ │ │ ├── for-fail.rs │ │ │ ├── for-fail.stderr │ │ │ ├── for-pass.rs │ │ │ ├── generic-component-fail.rs │ │ │ ├── generic-component-fail.stderr │ │ │ ├── generic-component-pass.rs │ │ │ ├── html-component-fail.stderr │ │ │ ├── html-element-pass.rs │ │ │ ├── html-if-fail.rs │ │ │ ├── html-if-fail.stderr │ │ │ ├── html-if-pass.rs │ │ │ ├── html-node-pass.rs │ │ │ ├── iterable-fail.rs │ │ │ ├── iterable-fail.stderr │ │ │ ├── iterable-pass.rs │ │ │ ├── list-fail.rs │ │ │ ├── list-fail.stderr │ │ │ ├── list-pass.rs │ │ │ ├── missing-props-diagnostics-fail.rs │ │ │ ├── missing-props-diagnostics-fail.stderr │ │ │ ├── node-fail.rs │ │ │ ├── node-fail.stderr │ │ │ ├── node-pass.rs │ │ │ └── svg-pass.rs │ │ ├── html_macro_test.rs │ │ ├── props_macro/ │ │ │ ├── props-fail.rs │ │ │ ├── props-fail.stderr │ │ │ ├── props-pass.rs │ │ │ ├── resolve-prop-fail.rs │ │ │ ├── resolve-prop-fail.stderr │ │ │ └── resolve-prop-pass.rs │ │ └── props_macro_test.rs │ ├── yew-router/ │ │ ├── Cargo.toml │ │ ├── Makefile.toml │ │ ├── README.md │ │ ├── src/ │ │ │ ├── components/ │ │ │ │ ├── link.rs │ │ │ │ ├── mod.rs │ │ │ │ └── redirect.rs │ │ │ ├── hooks.rs │ │ │ ├── lib.rs │ │ │ ├── macro_helpers.rs │ │ │ ├── navigator.rs │ │ │ ├── routable.rs │ │ │ ├── router.rs │ │ │ ├── scope_ext.rs │ │ │ ├── switch.rs │ │ │ └── utils.rs │ │ └── tests/ │ │ ├── basename.rs │ │ ├── browser_router.rs │ │ ├── hash_router.rs │ │ ├── link.rs │ │ ├── router_unit_tests.rs │ │ ├── url_encoded_routes.rs │ │ └── utils.rs │ └── yew-router-macro/ │ ├── Cargo.toml │ ├── Makefile.toml │ ├── release.toml │ ├── src/ │ │ ├── lib.rs │ │ └── routable_derive.rs │ └── tests/ │ ├── routable_derive/ │ │ ├── bad-ats-fail.rs │ │ ├── bad-ats-fail.stderr │ │ ├── invalid-not-found-fail.rs │ │ ├── invalid-not-found-fail.stderr │ │ ├── relative-path-fail.rs │ │ ├── relative-path-fail.stderr │ │ ├── route-with-hash-fail.rs │ │ ├── route-with-hash-fail.stderr │ │ ├── struct-fail.rs │ │ ├── struct-fail.stderr │ │ ├── unnamed-fields-fail.rs │ │ ├── unnamed-fields-fail.stderr │ │ └── valid-pass.rs │ └── routable_derive_test.rs ├── release.toml ├── rustfmt.toml ├── tools/ │ ├── benchmark-core/ │ │ ├── Cargo.toml │ │ └── benches/ │ │ └── vnode.rs │ ├── benchmark-hooks/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ ├── Makefile.toml │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ └── src/ │ │ └── lib.rs │ ├── benchmark-ssr/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── benchmark-struct/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ ├── Makefile.toml │ │ ├── README.md │ │ ├── index.html │ │ ├── package.json │ │ └── src/ │ │ └── lib.rs │ ├── build-examples/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── bin/ │ │ │ └── update-wasm-opt.rs │ │ ├── lib.rs │ │ └── main.rs │ ├── changelog/ │ │ ├── Cargo.toml │ │ ├── Makefile.toml │ │ ├── src/ │ │ │ ├── cli.rs │ │ │ ├── create_log_line.rs │ │ │ ├── create_log_lines.rs │ │ │ ├── get_latest_version.rs │ │ │ ├── github_fetch.rs │ │ │ ├── github_issue_labels_fetcher.rs │ │ │ ├── github_user_fetcher.rs │ │ │ ├── lib.rs │ │ │ ├── log_line.rs │ │ │ ├── main.rs │ │ │ ├── mod.rs │ │ │ ├── new_version_level.rs │ │ │ ├── stdout_tag_description_changelog.rs │ │ │ ├── write_changelog_file.rs │ │ │ ├── write_log_lines.rs │ │ │ ├── write_version_changelog.rs │ │ │ └── yew_package.rs │ │ └── tests/ │ │ ├── generate_yew_changelog_file.rs │ │ ├── test_base.md │ │ └── test_expected.md │ ├── collect-release-info/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── process-benchmark-results/ │ │ ├── Cargo.toml │ │ ├── Makefile.toml │ │ ├── README.md │ │ └── src/ │ │ └── main.rs │ ├── ssr-e2e/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── ssr-e2e-harness/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── lib.rs │ └── website-test/ │ ├── Cargo.toml │ ├── Makefile.toml │ ├── build.rs │ └── src/ │ └── lib.rs └── website/ ├── .gitignore ├── .prettierignore ├── .prettierrc.json ├── README.md ├── babel.config.js ├── blog/ │ ├── 2022-01-20-hello-yew.md │ ├── 2022-11-24-release-0-20.md │ ├── 2023-09-23-release-0-21.md │ ├── 2024-10-14-release-0-22.md │ ├── 2025-11-29-release-0-22.md │ └── authors.yml ├── check-translations.js ├── community/ │ ├── awesome.md │ └── external-libs.mdx ├── docs/ │ ├── advanced-topics/ │ │ ├── children.mdx │ │ ├── how-it-works.mdx │ │ ├── immutable.mdx │ │ ├── optimizations.mdx │ │ ├── portals.mdx │ │ ├── server-side-rendering.mdx │ │ └── struct-components/ │ │ ├── callbacks.mdx │ │ ├── hoc.mdx │ │ ├── introduction.mdx │ │ ├── lifecycle.mdx │ │ ├── properties.mdx │ │ ├── refs.mdx │ │ └── scope.mdx │ ├── concepts/ │ │ ├── agents.mdx │ │ ├── basic-web-technologies/ │ │ │ ├── css.mdx │ │ │ ├── html.mdx │ │ │ ├── js.mdx │ │ │ ├── wasm-bindgen.mdx │ │ │ └── web-sys.mdx │ │ ├── contexts.mdx │ │ ├── function-components/ │ │ │ ├── callbacks.mdx │ │ │ ├── children.mdx │ │ │ ├── communication.mdx │ │ │ ├── generics.mdx │ │ │ ├── hooks/ │ │ │ │ ├── custom-hooks.mdx │ │ │ │ └── introduction.mdx │ │ │ ├── introduction.mdx │ │ │ ├── node-refs.mdx │ │ │ ├── properties.mdx │ │ │ ├── pure-components.mdx │ │ │ └── state.mdx │ │ ├── html/ │ │ │ ├── classes.mdx │ │ │ ├── components.mdx │ │ │ ├── conditional-rendering.mdx │ │ │ ├── elements.mdx │ │ │ ├── events.mdx │ │ │ ├── fragments.mdx │ │ │ ├── introduction.mdx │ │ │ ├── lists.mdx │ │ │ └── literals-and-expressions.mdx │ │ ├── router.mdx │ │ └── suspense.mdx │ ├── getting-started/ │ │ ├── build-a-sample-app.mdx │ │ ├── editor-setup.mdx │ │ ├── examples.mdx │ │ └── introduction.mdx │ ├── migration-guides/ │ │ ├── yew/ │ │ │ ├── from-0_19_0-to-0_20_0.mdx │ │ │ ├── from-0_20_0-to-0_21_0.mdx │ │ │ ├── from-0_21_0-to-0_22_0.mdx │ │ │ └── from-0_22_0-to-0_23_0.mdx │ │ ├── yew-agent/ │ │ │ ├── from-0_0_0-to-0_1_0.mdx │ │ │ ├── from-0_1_0-to-0_2_0.mdx │ │ │ ├── from-0_3_0-to-0_4_0.mdx │ │ │ └── from-0_4_0-to-0_5_0.mdx │ │ └── yew-router/ │ │ ├── from-0_15_0-to-0_16_0.mdx │ │ ├── from-0_16_0-to-0_17_0.mdx │ │ └── from-0_19_0-to-0_20_0.mdx │ ├── more/ │ │ ├── css.mdx │ │ ├── debugging.mdx │ │ ├── deployment.mdx │ │ ├── roadmap.mdx │ │ └── testing.mdx │ └── tutorial/ │ └── index.mdx ├── docusaurus.config.js ├── i18n/ │ ├── ja/ │ │ ├── code.json │ │ ├── docusaurus-plugin-content-blog/ │ │ │ └── options.json │ │ ├── docusaurus-plugin-content-docs/ │ │ │ ├── current/ │ │ │ │ ├── advanced-topics/ │ │ │ │ │ ├── children.mdx │ │ │ │ │ ├── how-it-works.mdx │ │ │ │ │ ├── immutable.mdx │ │ │ │ │ ├── optimizations.mdx │ │ │ │ │ ├── portals.mdx │ │ │ │ │ ├── server-side-rendering.mdx │ │ │ │ │ └── struct-components/ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ ├── hoc.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── lifecycle.mdx │ │ │ │ │ ├── properties.mdx │ │ │ │ │ ├── refs.mdx │ │ │ │ │ └── scope.mdx │ │ │ │ ├── concepts/ │ │ │ │ │ ├── agents.mdx │ │ │ │ │ ├── basic-web-technologies/ │ │ │ │ │ │ ├── css.mdx │ │ │ │ │ │ ├── html.mdx │ │ │ │ │ │ ├── js.mdx │ │ │ │ │ │ ├── wasm-bindgen.mdx │ │ │ │ │ │ └── web-sys.mdx │ │ │ │ │ ├── contexts.mdx │ │ │ │ │ ├── function-components/ │ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ │ ├── children.mdx │ │ │ │ │ │ ├── communication.mdx │ │ │ │ │ │ ├── generics.mdx │ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ │ ├── custom-hooks.mdx │ │ │ │ │ │ │ └── introduction.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── node-refs.mdx │ │ │ │ │ │ ├── properties.mdx │ │ │ │ │ │ ├── pure-components.mdx │ │ │ │ │ │ └── state.mdx │ │ │ │ │ ├── html/ │ │ │ │ │ │ ├── classes.mdx │ │ │ │ │ │ ├── components.mdx │ │ │ │ │ │ ├── conditional-rendering.mdx │ │ │ │ │ │ ├── elements.mdx │ │ │ │ │ │ ├── events.mdx │ │ │ │ │ │ ├── fragments.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── lists.mdx │ │ │ │ │ │ └── literals-and-expressions.mdx │ │ │ │ │ ├── router.mdx │ │ │ │ │ └── suspense.mdx │ │ │ │ ├── getting-started/ │ │ │ │ │ ├── build-a-sample-app.mdx │ │ │ │ │ ├── editor-setup.mdx │ │ │ │ │ ├── examples.mdx │ │ │ │ │ └── introduction.mdx │ │ │ │ ├── migration-guides/ │ │ │ │ │ ├── yew/ │ │ │ │ │ │ └── from-0_22_0-to-0_23_0.mdx │ │ │ │ │ ├── yew-agent/ │ │ │ │ │ │ └── from-0_4_0-to-0_5_0.mdx │ │ │ │ │ └── yew-router/ │ │ │ │ │ └── from-0_19_0-to-0_20_0.mdx │ │ │ │ ├── more/ │ │ │ │ │ ├── css.mdx │ │ │ │ │ ├── debugging.mdx │ │ │ │ │ ├── deployment.mdx │ │ │ │ │ ├── roadmap.mdx │ │ │ │ │ └── testing.mdx │ │ │ │ └── tutorial/ │ │ │ │ └── index.mdx │ │ │ ├── current.json │ │ │ ├── version-0.20/ │ │ │ │ ├── advanced-topics/ │ │ │ │ │ ├── how-it-works.mdx │ │ │ │ │ ├── optimizations.mdx │ │ │ │ │ └── struct-components/ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ ├── lifecycle.mdx │ │ │ │ │ ├── properties.mdx │ │ │ │ │ └── refs.mdx │ │ │ │ ├── concepts/ │ │ │ │ │ ├── agents.mdx │ │ │ │ │ ├── html/ │ │ │ │ │ │ ├── components.mdx │ │ │ │ │ │ ├── elements.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── lists.mdx │ │ │ │ │ │ └── literals-and-expressions.mdx │ │ │ │ │ └── router.mdx │ │ │ │ ├── getting-started/ │ │ │ │ │ ├── build-a-sample-app.mdx │ │ │ │ │ └── examples.mdx │ │ │ │ └── more/ │ │ │ │ ├── css.mdx │ │ │ │ ├── debugging.mdx │ │ │ │ ├── roadmap.mdx │ │ │ │ └── testing.mdx │ │ │ ├── version-0.20.json │ │ │ ├── version-0.21/ │ │ │ │ ├── advanced-topics/ │ │ │ │ │ ├── children.mdx │ │ │ │ │ ├── how-it-works.mdx │ │ │ │ │ ├── immutable.mdx │ │ │ │ │ ├── optimizations.mdx │ │ │ │ │ ├── portals.mdx │ │ │ │ │ ├── server-side-rendering.md │ │ │ │ │ └── struct-components/ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ ├── hoc.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── lifecycle.mdx │ │ │ │ │ ├── properties.mdx │ │ │ │ │ ├── refs.mdx │ │ │ │ │ └── scope.mdx │ │ │ │ ├── concepts/ │ │ │ │ │ ├── agents.mdx │ │ │ │ │ ├── contexts.mdx │ │ │ │ │ ├── function-components/ │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ └── properties.mdx │ │ │ │ │ ├── html/ │ │ │ │ │ │ ├── components.mdx │ │ │ │ │ │ ├── elements.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── lists.mdx │ │ │ │ │ │ └── literals-and-expressions.mdx │ │ │ │ │ └── router.mdx │ │ │ │ ├── getting-started/ │ │ │ │ │ ├── build-a-sample-app.mdx │ │ │ │ │ └── examples.mdx │ │ │ │ └── more/ │ │ │ │ ├── css.mdx │ │ │ │ ├── debugging.mdx │ │ │ │ ├── roadmap.mdx │ │ │ │ └── testing.mdx │ │ │ ├── version-0.21.json │ │ │ ├── version-0.22/ │ │ │ │ ├── advanced-topics/ │ │ │ │ │ ├── children.mdx │ │ │ │ │ ├── how-it-works.mdx │ │ │ │ │ ├── immutable.mdx │ │ │ │ │ ├── optimizations.mdx │ │ │ │ │ ├── portals.mdx │ │ │ │ │ ├── server-side-rendering.mdx │ │ │ │ │ └── struct-components/ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ ├── hoc.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── lifecycle.mdx │ │ │ │ │ ├── properties.mdx │ │ │ │ │ ├── refs.mdx │ │ │ │ │ └── scope.mdx │ │ │ │ ├── concepts/ │ │ │ │ │ ├── agents.mdx │ │ │ │ │ ├── basic-web-technologies/ │ │ │ │ │ │ ├── css.mdx │ │ │ │ │ │ ├── html.mdx │ │ │ │ │ │ ├── js.mdx │ │ │ │ │ │ ├── wasm-bindgen.mdx │ │ │ │ │ │ └── web-sys.mdx │ │ │ │ │ ├── contexts.mdx │ │ │ │ │ ├── function-components/ │ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ │ ├── children.mdx │ │ │ │ │ │ ├── communication.mdx │ │ │ │ │ │ ├── generics.mdx │ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ │ ├── custom-hooks.mdx │ │ │ │ │ │ │ └── introduction.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── node-refs.mdx │ │ │ │ │ │ ├── properties.mdx │ │ │ │ │ │ ├── pure-components.mdx │ │ │ │ │ │ └── state.mdx │ │ │ │ │ ├── html/ │ │ │ │ │ │ ├── classes.mdx │ │ │ │ │ │ ├── components.mdx │ │ │ │ │ │ ├── conditional-rendering.mdx │ │ │ │ │ │ ├── elements.mdx │ │ │ │ │ │ ├── events.mdx │ │ │ │ │ │ ├── fragments.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── lists.mdx │ │ │ │ │ │ └── literals-and-expressions.mdx │ │ │ │ │ ├── router.mdx │ │ │ │ │ └── suspense.mdx │ │ │ │ ├── getting-started/ │ │ │ │ │ ├── build-a-sample-app.mdx │ │ │ │ │ ├── editor-setup.mdx │ │ │ │ │ ├── examples.mdx │ │ │ │ │ └── introduction.mdx │ │ │ │ ├── more/ │ │ │ │ │ ├── css.mdx │ │ │ │ │ ├── debugging.mdx │ │ │ │ │ ├── deployment.mdx │ │ │ │ │ ├── roadmap.mdx │ │ │ │ │ └── testing.mdx │ │ │ │ └── tutorial/ │ │ │ │ └── index.mdx │ │ │ ├── version-0.22.json │ │ │ ├── version-0.23/ │ │ │ │ ├── advanced-topics/ │ │ │ │ │ ├── children.mdx │ │ │ │ │ ├── how-it-works.mdx │ │ │ │ │ ├── immutable.mdx │ │ │ │ │ ├── optimizations.mdx │ │ │ │ │ ├── portals.mdx │ │ │ │ │ ├── server-side-rendering.mdx │ │ │ │ │ └── struct-components/ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ ├── hoc.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── lifecycle.mdx │ │ │ │ │ ├── properties.mdx │ │ │ │ │ ├── refs.mdx │ │ │ │ │ └── scope.mdx │ │ │ │ ├── concepts/ │ │ │ │ │ ├── agents.mdx │ │ │ │ │ ├── basic-web-technologies/ │ │ │ │ │ │ ├── css.mdx │ │ │ │ │ │ ├── html.mdx │ │ │ │ │ │ ├── js.mdx │ │ │ │ │ │ ├── wasm-bindgen.mdx │ │ │ │ │ │ └── web-sys.mdx │ │ │ │ │ ├── contexts.mdx │ │ │ │ │ ├── function-components/ │ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ │ ├── children.mdx │ │ │ │ │ │ ├── communication.mdx │ │ │ │ │ │ ├── generics.mdx │ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ │ ├── custom-hooks.mdx │ │ │ │ │ │ │ └── introduction.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── node-refs.mdx │ │ │ │ │ │ ├── properties.mdx │ │ │ │ │ │ ├── pure-components.mdx │ │ │ │ │ │ └── state.mdx │ │ │ │ │ ├── html/ │ │ │ │ │ │ ├── classes.mdx │ │ │ │ │ │ ├── components.mdx │ │ │ │ │ │ ├── conditional-rendering.mdx │ │ │ │ │ │ ├── elements.mdx │ │ │ │ │ │ ├── events.mdx │ │ │ │ │ │ ├── fragments.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── lists.mdx │ │ │ │ │ │ └── literals-and-expressions.mdx │ │ │ │ │ ├── router.mdx │ │ │ │ │ └── suspense.mdx │ │ │ │ ├── getting-started/ │ │ │ │ │ ├── build-a-sample-app.mdx │ │ │ │ │ ├── editor-setup.mdx │ │ │ │ │ ├── examples.mdx │ │ │ │ │ └── introduction.mdx │ │ │ │ ├── migration-guides/ │ │ │ │ │ ├── yew/ │ │ │ │ │ │ └── from-0_22_0-to-0_23_0.mdx │ │ │ │ │ ├── yew-agent/ │ │ │ │ │ │ └── from-0_4_0-to-0_5_0.mdx │ │ │ │ │ └── yew-router/ │ │ │ │ │ └── from-0_19_0-to-0_20_0.mdx │ │ │ │ ├── more/ │ │ │ │ │ ├── css.mdx │ │ │ │ │ ├── debugging.mdx │ │ │ │ │ ├── deployment.mdx │ │ │ │ │ ├── roadmap.mdx │ │ │ │ │ └── testing.mdx │ │ │ │ └── tutorial/ │ │ │ │ └── index.mdx │ │ │ └── version-0.23.json │ │ ├── docusaurus-plugin-content-docs-community/ │ │ │ └── current.json │ │ ├── docusaurus-plugin-content-docs-router/ │ │ │ └── current.json │ │ ├── docusaurus-plugin-content-pages/ │ │ │ └── index.mdx │ │ └── docusaurus-theme-classic/ │ │ ├── footer.json │ │ └── navbar.json │ ├── zh-Hans/ │ │ ├── code.json │ │ ├── docusaurus-plugin-content-blog/ │ │ │ └── options.json │ │ ├── docusaurus-plugin-content-docs/ │ │ │ ├── current/ │ │ │ │ ├── advanced-topics/ │ │ │ │ │ ├── children.mdx │ │ │ │ │ ├── how-it-works.mdx │ │ │ │ │ ├── immutable.mdx │ │ │ │ │ ├── optimizations.mdx │ │ │ │ │ ├── portals.mdx │ │ │ │ │ ├── server-side-rendering.mdx │ │ │ │ │ └── struct-components/ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ ├── hoc.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── lifecycle.mdx │ │ │ │ │ ├── properties.mdx │ │ │ │ │ ├── refs.mdx │ │ │ │ │ └── scope.mdx │ │ │ │ ├── concepts/ │ │ │ │ │ ├── agents.mdx │ │ │ │ │ ├── basic-web-technologies/ │ │ │ │ │ │ ├── css.mdx │ │ │ │ │ │ ├── html.mdx │ │ │ │ │ │ ├── js.mdx │ │ │ │ │ │ ├── wasm-bindgen.mdx │ │ │ │ │ │ └── web-sys.mdx │ │ │ │ │ ├── contexts.mdx │ │ │ │ │ ├── function-components/ │ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ │ ├── children.mdx │ │ │ │ │ │ ├── communication.mdx │ │ │ │ │ │ ├── generics.mdx │ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ │ ├── custom-hooks.mdx │ │ │ │ │ │ │ └── introduction.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── node-refs.mdx │ │ │ │ │ │ ├── properties.mdx │ │ │ │ │ │ ├── pure-components.mdx │ │ │ │ │ │ └── state.mdx │ │ │ │ │ ├── html/ │ │ │ │ │ │ ├── classes.mdx │ │ │ │ │ │ ├── components.mdx │ │ │ │ │ │ ├── conditional-rendering.mdx │ │ │ │ │ │ ├── elements.mdx │ │ │ │ │ │ ├── events.mdx │ │ │ │ │ │ ├── fragments.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── lists.mdx │ │ │ │ │ │ └── literals-and-expressions.mdx │ │ │ │ │ ├── router.mdx │ │ │ │ │ └── suspense.mdx │ │ │ │ ├── getting-started/ │ │ │ │ │ ├── build-a-sample-app.mdx │ │ │ │ │ ├── editor-setup.mdx │ │ │ │ │ ├── examples.mdx │ │ │ │ │ └── introduction.mdx │ │ │ │ ├── migration-guides/ │ │ │ │ │ ├── yew/ │ │ │ │ │ │ └── from-0_22_0-to-0_23_0.mdx │ │ │ │ │ ├── yew-agent/ │ │ │ │ │ │ └── from-0_4_0-to-0_5_0.mdx │ │ │ │ │ └── yew-router/ │ │ │ │ │ └── from-0_19_0-to-0_20_0.mdx │ │ │ │ ├── more/ │ │ │ │ │ ├── css.mdx │ │ │ │ │ ├── debugging.mdx │ │ │ │ │ ├── deployment.mdx │ │ │ │ │ ├── roadmap.mdx │ │ │ │ │ └── testing.mdx │ │ │ │ └── tutorial/ │ │ │ │ └── index.mdx │ │ │ ├── current.json │ │ │ ├── version-0.20/ │ │ │ │ ├── advanced-topics/ │ │ │ │ │ ├── how-it-works.mdx │ │ │ │ │ ├── optimizations.mdx │ │ │ │ │ └── struct-components/ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ ├── lifecycle.mdx │ │ │ │ │ ├── properties.mdx │ │ │ │ │ └── refs.mdx │ │ │ │ ├── concepts/ │ │ │ │ │ ├── agents.mdx │ │ │ │ │ ├── function-components/ │ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ │ └── custom-hooks.mdx │ │ │ │ │ │ └── introduction.mdx │ │ │ │ │ ├── html/ │ │ │ │ │ │ ├── components.mdx │ │ │ │ │ │ ├── elements.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── lists.mdx │ │ │ │ │ │ └── literals-and-expressions.mdx │ │ │ │ │ └── router.mdx │ │ │ │ ├── getting-started/ │ │ │ │ │ ├── build-a-sample-app.mdx │ │ │ │ │ └── examples.mdx │ │ │ │ └── more/ │ │ │ │ ├── css.mdx │ │ │ │ ├── debugging.mdx │ │ │ │ ├── roadmap.mdx │ │ │ │ └── testing.mdx │ │ │ ├── version-0.20.json │ │ │ ├── version-0.21/ │ │ │ │ ├── advanced-topics/ │ │ │ │ │ ├── children.mdx │ │ │ │ │ ├── how-it-works.mdx │ │ │ │ │ ├── immutable.mdx │ │ │ │ │ ├── optimizations.mdx │ │ │ │ │ ├── portals.mdx │ │ │ │ │ ├── server-side-rendering.md │ │ │ │ │ └── struct-components/ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ ├── hoc.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── lifecycle.mdx │ │ │ │ │ ├── properties.mdx │ │ │ │ │ ├── refs.mdx │ │ │ │ │ └── scope.mdx │ │ │ │ ├── concepts/ │ │ │ │ │ ├── agents.mdx │ │ │ │ │ ├── contexts.mdx │ │ │ │ │ ├── function-components/ │ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ │ └── custom-hooks.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ └── properties.mdx │ │ │ │ │ ├── html/ │ │ │ │ │ │ ├── components.mdx │ │ │ │ │ │ ├── elements.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── lists.mdx │ │ │ │ │ │ └── literals-and-expressions.mdx │ │ │ │ │ └── router.mdx │ │ │ │ ├── getting-started/ │ │ │ │ │ ├── build-a-sample-app.mdx │ │ │ │ │ └── examples.mdx │ │ │ │ └── more/ │ │ │ │ ├── css.mdx │ │ │ │ ├── debugging.mdx │ │ │ │ ├── roadmap.mdx │ │ │ │ └── testing.mdx │ │ │ ├── version-0.21.json │ │ │ ├── version-0.22/ │ │ │ │ ├── advanced-topics/ │ │ │ │ │ ├── children.mdx │ │ │ │ │ ├── how-it-works.mdx │ │ │ │ │ ├── immutable.mdx │ │ │ │ │ ├── optimizations.mdx │ │ │ │ │ ├── portals.mdx │ │ │ │ │ ├── server-side-rendering.mdx │ │ │ │ │ └── struct-components/ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ ├── hoc.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── lifecycle.mdx │ │ │ │ │ ├── properties.mdx │ │ │ │ │ ├── refs.mdx │ │ │ │ │ └── scope.mdx │ │ │ │ ├── concepts/ │ │ │ │ │ ├── agents.mdx │ │ │ │ │ ├── basic-web-technologies/ │ │ │ │ │ │ ├── css.mdx │ │ │ │ │ │ ├── html.mdx │ │ │ │ │ │ ├── js.mdx │ │ │ │ │ │ ├── wasm-bindgen.mdx │ │ │ │ │ │ └── web-sys.mdx │ │ │ │ │ ├── contexts.mdx │ │ │ │ │ ├── function-components/ │ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ │ ├── children.mdx │ │ │ │ │ │ ├── communication.mdx │ │ │ │ │ │ ├── generics.mdx │ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ │ ├── custom-hooks.mdx │ │ │ │ │ │ │ └── introduction.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── node-refs.mdx │ │ │ │ │ │ ├── properties.mdx │ │ │ │ │ │ ├── pure-components.mdx │ │ │ │ │ │ └── state.mdx │ │ │ │ │ ├── html/ │ │ │ │ │ │ ├── classes.mdx │ │ │ │ │ │ ├── components.mdx │ │ │ │ │ │ ├── conditional-rendering.mdx │ │ │ │ │ │ ├── elements.mdx │ │ │ │ │ │ ├── events.mdx │ │ │ │ │ │ ├── fragments.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── lists.mdx │ │ │ │ │ │ └── literals-and-expressions.mdx │ │ │ │ │ ├── router.mdx │ │ │ │ │ └── suspense.mdx │ │ │ │ ├── getting-started/ │ │ │ │ │ ├── build-a-sample-app.mdx │ │ │ │ │ ├── editor-setup.mdx │ │ │ │ │ ├── examples.mdx │ │ │ │ │ └── introduction.mdx │ │ │ │ ├── more/ │ │ │ │ │ ├── css.mdx │ │ │ │ │ ├── debugging.mdx │ │ │ │ │ ├── deployment.mdx │ │ │ │ │ ├── roadmap.mdx │ │ │ │ │ └── testing.mdx │ │ │ │ └── tutorial/ │ │ │ │ └── index.mdx │ │ │ ├── version-0.22.json │ │ │ ├── version-0.23/ │ │ │ │ ├── advanced-topics/ │ │ │ │ │ ├── children.mdx │ │ │ │ │ ├── how-it-works.mdx │ │ │ │ │ ├── immutable.mdx │ │ │ │ │ ├── optimizations.mdx │ │ │ │ │ ├── portals.mdx │ │ │ │ │ ├── server-side-rendering.mdx │ │ │ │ │ └── struct-components/ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ ├── hoc.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── lifecycle.mdx │ │ │ │ │ ├── properties.mdx │ │ │ │ │ ├── refs.mdx │ │ │ │ │ └── scope.mdx │ │ │ │ ├── concepts/ │ │ │ │ │ ├── agents.mdx │ │ │ │ │ ├── basic-web-technologies/ │ │ │ │ │ │ ├── css.mdx │ │ │ │ │ │ ├── html.mdx │ │ │ │ │ │ ├── js.mdx │ │ │ │ │ │ ├── wasm-bindgen.mdx │ │ │ │ │ │ └── web-sys.mdx │ │ │ │ │ ├── contexts.mdx │ │ │ │ │ ├── function-components/ │ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ │ ├── children.mdx │ │ │ │ │ │ ├── communication.mdx │ │ │ │ │ │ ├── generics.mdx │ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ │ ├── custom-hooks.mdx │ │ │ │ │ │ │ └── introduction.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── node-refs.mdx │ │ │ │ │ │ ├── properties.mdx │ │ │ │ │ │ ├── pure-components.mdx │ │ │ │ │ │ └── state.mdx │ │ │ │ │ ├── html/ │ │ │ │ │ │ ├── classes.mdx │ │ │ │ │ │ ├── components.mdx │ │ │ │ │ │ ├── conditional-rendering.mdx │ │ │ │ │ │ ├── elements.mdx │ │ │ │ │ │ ├── events.mdx │ │ │ │ │ │ ├── fragments.mdx │ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ │ ├── lists.mdx │ │ │ │ │ │ └── literals-and-expressions.mdx │ │ │ │ │ ├── router.mdx │ │ │ │ │ └── suspense.mdx │ │ │ │ ├── getting-started/ │ │ │ │ │ ├── build-a-sample-app.mdx │ │ │ │ │ ├── editor-setup.mdx │ │ │ │ │ ├── examples.mdx │ │ │ │ │ └── introduction.mdx │ │ │ │ ├── migration-guides/ │ │ │ │ │ ├── yew/ │ │ │ │ │ │ └── from-0_22_0-to-0_23_0.mdx │ │ │ │ │ ├── yew-agent/ │ │ │ │ │ │ └── from-0_4_0-to-0_5_0.mdx │ │ │ │ │ └── yew-router/ │ │ │ │ │ └── from-0_19_0-to-0_20_0.mdx │ │ │ │ ├── more/ │ │ │ │ │ ├── css.mdx │ │ │ │ │ ├── debugging.mdx │ │ │ │ │ ├── deployment.mdx │ │ │ │ │ ├── roadmap.mdx │ │ │ │ │ └── testing.mdx │ │ │ │ └── tutorial/ │ │ │ │ └── index.mdx │ │ │ └── version-0.23.json │ │ ├── docusaurus-plugin-content-docs-community/ │ │ │ └── current.json │ │ ├── docusaurus-plugin-content-docs-router/ │ │ │ └── current.json │ │ ├── docusaurus-plugin-content-pages/ │ │ │ └── index.mdx │ │ └── docusaurus-theme-classic/ │ │ ├── footer.json │ │ └── navbar.json │ └── zh-Hant/ │ ├── code.json │ ├── docusaurus-plugin-content-blog/ │ │ └── options.json │ ├── docusaurus-plugin-content-docs/ │ │ ├── current/ │ │ │ ├── advanced-topics/ │ │ │ │ ├── children.mdx │ │ │ │ ├── how-it-works.mdx │ │ │ │ ├── immutable.mdx │ │ │ │ ├── optimizations.mdx │ │ │ │ ├── portals.mdx │ │ │ │ ├── server-side-rendering.mdx │ │ │ │ └── struct-components/ │ │ │ │ ├── callbacks.mdx │ │ │ │ ├── hoc.mdx │ │ │ │ ├── introduction.mdx │ │ │ │ ├── lifecycle.mdx │ │ │ │ ├── properties.mdx │ │ │ │ ├── refs.mdx │ │ │ │ └── scope.mdx │ │ │ ├── concepts/ │ │ │ │ ├── agents.mdx │ │ │ │ ├── basic-web-technologies/ │ │ │ │ │ ├── css.mdx │ │ │ │ │ ├── html.mdx │ │ │ │ │ ├── js.mdx │ │ │ │ │ ├── wasm-bindgen.mdx │ │ │ │ │ └── web-sys.mdx │ │ │ │ ├── contexts.mdx │ │ │ │ ├── function-components/ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ ├── children.mdx │ │ │ │ │ ├── communication.mdx │ │ │ │ │ ├── generics.mdx │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── custom-hooks.mdx │ │ │ │ │ │ └── introduction.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── node-refs.mdx │ │ │ │ │ ├── properties.mdx │ │ │ │ │ ├── pure-components.mdx │ │ │ │ │ └── state.mdx │ │ │ │ ├── html/ │ │ │ │ │ ├── classes.mdx │ │ │ │ │ ├── components.mdx │ │ │ │ │ ├── conditional-rendering.mdx │ │ │ │ │ ├── elements.mdx │ │ │ │ │ ├── events.mdx │ │ │ │ │ ├── fragments.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── lists.mdx │ │ │ │ │ └── literals-and-expressions.mdx │ │ │ │ ├── router.mdx │ │ │ │ └── suspense.mdx │ │ │ ├── getting-started/ │ │ │ │ ├── build-a-sample-app.mdx │ │ │ │ ├── editor-setup.mdx │ │ │ │ ├── examples.mdx │ │ │ │ └── introduction.mdx │ │ │ ├── migration-guides/ │ │ │ │ ├── yew/ │ │ │ │ │ └── from-0_22_0-to-0_23_0.mdx │ │ │ │ ├── yew-agent/ │ │ │ │ │ └── from-0_4_0-to-0_5_0.mdx │ │ │ │ └── yew-router/ │ │ │ │ └── from-0_19_0-to-0_20_0.mdx │ │ │ ├── more/ │ │ │ │ ├── css.mdx │ │ │ │ ├── debugging.mdx │ │ │ │ ├── deployment.mdx │ │ │ │ ├── roadmap.mdx │ │ │ │ └── testing.mdx │ │ │ └── tutorial/ │ │ │ └── index.mdx │ │ ├── current.json │ │ ├── version-0.20/ │ │ │ ├── advanced-topics/ │ │ │ │ ├── how-it-works.mdx │ │ │ │ ├── optimizations.mdx │ │ │ │ └── struct-components/ │ │ │ │ ├── callbacks.mdx │ │ │ │ ├── lifecycle.mdx │ │ │ │ ├── properties.mdx │ │ │ │ └── refs.mdx │ │ │ ├── concepts/ │ │ │ │ ├── agents.mdx │ │ │ │ ├── html/ │ │ │ │ │ ├── components.mdx │ │ │ │ │ ├── elements.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── lists.mdx │ │ │ │ │ └── literals-and-expressions.mdx │ │ │ │ └── router.mdx │ │ │ ├── getting-started/ │ │ │ │ ├── build-a-sample-app.mdx │ │ │ │ └── examples.mdx │ │ │ └── more/ │ │ │ ├── css.mdx │ │ │ ├── debugging.mdx │ │ │ ├── roadmap.mdx │ │ │ └── testing.mdx │ │ ├── version-0.20.json │ │ ├── version-0.21/ │ │ │ ├── advanced-topics/ │ │ │ │ ├── children.mdx │ │ │ │ ├── how-it-works.mdx │ │ │ │ ├── immutable.mdx │ │ │ │ ├── optimizations.mdx │ │ │ │ ├── portals.mdx │ │ │ │ ├── server-side-rendering.md │ │ │ │ └── struct-components/ │ │ │ │ ├── callbacks.mdx │ │ │ │ ├── hoc.mdx │ │ │ │ ├── introduction.mdx │ │ │ │ ├── lifecycle.mdx │ │ │ │ ├── properties.mdx │ │ │ │ ├── refs.mdx │ │ │ │ └── scope.mdx │ │ │ ├── concepts/ │ │ │ │ ├── agents.mdx │ │ │ │ ├── contexts.mdx │ │ │ │ ├── function-components/ │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ └── properties.mdx │ │ │ │ ├── html/ │ │ │ │ │ ├── components.mdx │ │ │ │ │ ├── elements.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── lists.mdx │ │ │ │ │ └── literals-and-expressions.mdx │ │ │ │ └── router.mdx │ │ │ ├── getting-started/ │ │ │ │ ├── build-a-sample-app.mdx │ │ │ │ └── examples.mdx │ │ │ └── more/ │ │ │ ├── css.mdx │ │ │ ├── debugging.mdx │ │ │ ├── roadmap.mdx │ │ │ └── testing.mdx │ │ ├── version-0.21.json │ │ ├── version-0.22/ │ │ │ ├── advanced-topics/ │ │ │ │ ├── children.mdx │ │ │ │ ├── how-it-works.mdx │ │ │ │ ├── immutable.mdx │ │ │ │ ├── optimizations.mdx │ │ │ │ ├── portals.mdx │ │ │ │ ├── server-side-rendering.mdx │ │ │ │ └── struct-components/ │ │ │ │ ├── callbacks.mdx │ │ │ │ ├── hoc.mdx │ │ │ │ ├── introduction.mdx │ │ │ │ ├── lifecycle.mdx │ │ │ │ ├── properties.mdx │ │ │ │ ├── refs.mdx │ │ │ │ └── scope.mdx │ │ │ ├── concepts/ │ │ │ │ ├── agents.mdx │ │ │ │ ├── basic-web-technologies/ │ │ │ │ │ ├── css.mdx │ │ │ │ │ ├── html.mdx │ │ │ │ │ ├── js.mdx │ │ │ │ │ ├── wasm-bindgen.mdx │ │ │ │ │ └── web-sys.mdx │ │ │ │ ├── contexts.mdx │ │ │ │ ├── function-components/ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ ├── children.mdx │ │ │ │ │ ├── communication.mdx │ │ │ │ │ ├── generics.mdx │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── custom-hooks.mdx │ │ │ │ │ │ └── introduction.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── node-refs.mdx │ │ │ │ │ ├── properties.mdx │ │ │ │ │ ├── pure-components.mdx │ │ │ │ │ └── state.mdx │ │ │ │ ├── html/ │ │ │ │ │ ├── classes.mdx │ │ │ │ │ ├── components.mdx │ │ │ │ │ ├── conditional-rendering.mdx │ │ │ │ │ ├── elements.mdx │ │ │ │ │ ├── events.mdx │ │ │ │ │ ├── fragments.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── lists.mdx │ │ │ │ │ └── literals-and-expressions.mdx │ │ │ │ ├── router.mdx │ │ │ │ └── suspense.mdx │ │ │ ├── getting-started/ │ │ │ │ ├── build-a-sample-app.mdx │ │ │ │ ├── editor-setup.mdx │ │ │ │ ├── examples.mdx │ │ │ │ └── introduction.mdx │ │ │ ├── more/ │ │ │ │ ├── css.mdx │ │ │ │ ├── debugging.mdx │ │ │ │ ├── deployment.mdx │ │ │ │ ├── roadmap.mdx │ │ │ │ └── testing.mdx │ │ │ └── tutorial/ │ │ │ └── index.mdx │ │ ├── version-0.22.json │ │ ├── version-0.23/ │ │ │ ├── advanced-topics/ │ │ │ │ ├── children.mdx │ │ │ │ ├── how-it-works.mdx │ │ │ │ ├── immutable.mdx │ │ │ │ ├── optimizations.mdx │ │ │ │ ├── portals.mdx │ │ │ │ ├── server-side-rendering.mdx │ │ │ │ └── struct-components/ │ │ │ │ ├── callbacks.mdx │ │ │ │ ├── hoc.mdx │ │ │ │ ├── introduction.mdx │ │ │ │ ├── lifecycle.mdx │ │ │ │ ├── properties.mdx │ │ │ │ ├── refs.mdx │ │ │ │ └── scope.mdx │ │ │ ├── concepts/ │ │ │ │ ├── agents.mdx │ │ │ │ ├── basic-web-technologies/ │ │ │ │ │ ├── css.mdx │ │ │ │ │ ├── html.mdx │ │ │ │ │ ├── js.mdx │ │ │ │ │ ├── wasm-bindgen.mdx │ │ │ │ │ └── web-sys.mdx │ │ │ │ ├── contexts.mdx │ │ │ │ ├── function-components/ │ │ │ │ │ ├── callbacks.mdx │ │ │ │ │ ├── children.mdx │ │ │ │ │ ├── communication.mdx │ │ │ │ │ ├── generics.mdx │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── custom-hooks.mdx │ │ │ │ │ │ └── introduction.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── node-refs.mdx │ │ │ │ │ ├── properties.mdx │ │ │ │ │ ├── pure-components.mdx │ │ │ │ │ └── state.mdx │ │ │ │ ├── html/ │ │ │ │ │ ├── classes.mdx │ │ │ │ │ ├── components.mdx │ │ │ │ │ ├── conditional-rendering.mdx │ │ │ │ │ ├── elements.mdx │ │ │ │ │ ├── events.mdx │ │ │ │ │ ├── fragments.mdx │ │ │ │ │ ├── introduction.mdx │ │ │ │ │ ├── lists.mdx │ │ │ │ │ └── literals-and-expressions.mdx │ │ │ │ ├── router.mdx │ │ │ │ └── suspense.mdx │ │ │ ├── getting-started/ │ │ │ │ ├── build-a-sample-app.mdx │ │ │ │ ├── editor-setup.mdx │ │ │ │ ├── examples.mdx │ │ │ │ └── introduction.mdx │ │ │ ├── migration-guides/ │ │ │ │ ├── yew/ │ │ │ │ │ └── from-0_22_0-to-0_23_0.mdx │ │ │ │ ├── yew-agent/ │ │ │ │ │ └── from-0_4_0-to-0_5_0.mdx │ │ │ │ └── yew-router/ │ │ │ │ └── from-0_19_0-to-0_20_0.mdx │ │ │ ├── more/ │ │ │ │ ├── css.mdx │ │ │ │ ├── debugging.mdx │ │ │ │ ├── deployment.mdx │ │ │ │ ├── roadmap.mdx │ │ │ │ └── testing.mdx │ │ │ └── tutorial/ │ │ │ └── index.mdx │ │ └── version-0.23.json │ ├── docusaurus-plugin-content-docs-community/ │ │ └── current.json │ ├── docusaurus-plugin-content-docs-router/ │ │ └── current.json │ ├── docusaurus-plugin-content-pages/ │ │ └── index.mdx │ └── docusaurus-theme-classic/ │ ├── footer.json │ └── navbar.json ├── package.json ├── sidebars/ │ ├── community.js │ └── docs.js ├── src/ │ ├── constants.js │ ├── css/ │ │ └── custom.css │ ├── pages/ │ │ ├── index.module.scss │ │ └── index.tsx │ └── theme/ │ └── NavbarItem/ │ └── DefaultNavbarItem.tsx ├── static/ │ ├── .nojekyll │ └── tutorial/ │ └── data.json ├── tsconfig.json ├── versioned_docs/ │ ├── version-0.20/ │ │ ├── advanced-topics/ │ │ │ ├── children.mdx │ │ │ ├── how-it-works.mdx │ │ │ ├── immutable.mdx │ │ │ ├── optimizations.mdx │ │ │ ├── portals.mdx │ │ │ ├── server-side-rendering.md │ │ │ └── struct-components/ │ │ │ ├── callbacks.mdx │ │ │ ├── hoc.mdx │ │ │ ├── introduction.mdx │ │ │ ├── lifecycle.mdx │ │ │ ├── properties.mdx │ │ │ ├── refs.mdx │ │ │ └── scope.mdx │ │ ├── concepts/ │ │ │ ├── agents.mdx │ │ │ ├── basic-web-technologies/ │ │ │ │ ├── css.mdx │ │ │ │ ├── html.mdx │ │ │ │ ├── js.mdx │ │ │ │ ├── wasm-bindgen.mdx │ │ │ │ └── web-sys.mdx │ │ │ ├── contexts.mdx │ │ │ ├── function-components/ │ │ │ │ ├── callbacks.mdx │ │ │ │ ├── children.mdx │ │ │ │ ├── communication.mdx │ │ │ │ ├── generics.mdx │ │ │ │ ├── hooks/ │ │ │ │ │ ├── custom-hooks.mdx │ │ │ │ │ └── introduction.mdx │ │ │ │ ├── introduction.mdx │ │ │ │ ├── node-refs.mdx │ │ │ │ ├── properties.mdx │ │ │ │ ├── pure-components.mdx │ │ │ │ └── state.mdx │ │ │ ├── html/ │ │ │ │ ├── classes.mdx │ │ │ │ ├── components.mdx │ │ │ │ ├── conditional-rendering.mdx │ │ │ │ ├── elements.mdx │ │ │ │ ├── events.mdx │ │ │ │ ├── fragments.mdx │ │ │ │ ├── introduction.mdx │ │ │ │ ├── lists.mdx │ │ │ │ └── literals-and-expressions.mdx │ │ │ ├── router.mdx │ │ │ └── suspense.mdx │ │ ├── getting-started/ │ │ │ ├── build-a-sample-app.mdx │ │ │ ├── editor-setup.mdx │ │ │ ├── examples.mdx │ │ │ └── introduction.mdx │ │ ├── migration-guides/ │ │ │ ├── yew/ │ │ │ │ ├── from-0_18_0-to-0_19_0.mdx │ │ │ │ └── from-0_19_0-to-0_20_0.mdx │ │ │ ├── yew-agent/ │ │ │ │ ├── from-0_0_0-to-0_1_0.mdx │ │ │ │ └── from-0_1_0-to-0_2_0.mdx │ │ │ └── yew-router/ │ │ │ ├── from-0_15_0-to-0_16_0.mdx │ │ │ └── from-0_16_0-to-0_17_0.mdx │ │ ├── more/ │ │ │ ├── css.mdx │ │ │ ├── debugging.mdx │ │ │ ├── deployment.mdx │ │ │ ├── roadmap.mdx │ │ │ └── testing.mdx │ │ └── tutorial/ │ │ └── index.mdx │ ├── version-0.21/ │ │ ├── advanced-topics/ │ │ │ ├── children.mdx │ │ │ ├── how-it-works.mdx │ │ │ ├── immutable.mdx │ │ │ ├── optimizations.mdx │ │ │ ├── portals.mdx │ │ │ ├── server-side-rendering.md │ │ │ └── struct-components/ │ │ │ ├── callbacks.mdx │ │ │ ├── hoc.mdx │ │ │ ├── introduction.mdx │ │ │ ├── lifecycle.mdx │ │ │ ├── properties.mdx │ │ │ ├── refs.mdx │ │ │ └── scope.mdx │ │ ├── concepts/ │ │ │ ├── agents.mdx │ │ │ ├── basic-web-technologies/ │ │ │ │ ├── css.mdx │ │ │ │ ├── html.mdx │ │ │ │ ├── js.mdx │ │ │ │ ├── wasm-bindgen.mdx │ │ │ │ └── web-sys.mdx │ │ │ ├── contexts.mdx │ │ │ ├── function-components/ │ │ │ │ ├── callbacks.mdx │ │ │ │ ├── children.mdx │ │ │ │ ├── communication.mdx │ │ │ │ ├── generics.mdx │ │ │ │ ├── hooks/ │ │ │ │ │ ├── custom-hooks.mdx │ │ │ │ │ └── introduction.mdx │ │ │ │ ├── introduction.mdx │ │ │ │ ├── node-refs.mdx │ │ │ │ ├── properties.mdx │ │ │ │ ├── pure-components.mdx │ │ │ │ └── state.mdx │ │ │ ├── html/ │ │ │ │ ├── classes.mdx │ │ │ │ ├── components.mdx │ │ │ │ ├── conditional-rendering.mdx │ │ │ │ ├── elements.mdx │ │ │ │ ├── events.mdx │ │ │ │ ├── fragments.mdx │ │ │ │ ├── introduction.mdx │ │ │ │ ├── lists.mdx │ │ │ │ └── literals-and-expressions.mdx │ │ │ ├── router.mdx │ │ │ └── suspense.mdx │ │ ├── getting-started/ │ │ │ ├── build-a-sample-app.mdx │ │ │ ├── editor-setup.mdx │ │ │ ├── examples.mdx │ │ │ └── introduction.mdx │ │ ├── migration-guides/ │ │ │ ├── yew/ │ │ │ │ ├── from-0_18_0-to-0_19_0.mdx │ │ │ │ ├── from-0_19_0-to-0_20_0.mdx │ │ │ │ ├── from-0_20_0-to-0_21_0.mdx │ │ │ │ └── from-0_20_0-to-next.mdx │ │ │ ├── yew-agent/ │ │ │ │ ├── from-0_0_0-to-0_1_0.mdx │ │ │ │ └── from-0_1_0-to-0_2_0.mdx │ │ │ └── yew-router/ │ │ │ ├── from-0_15_0-to-0_16_0.mdx │ │ │ └── from-0_16_0-to-0_17_0.mdx │ │ ├── more/ │ │ │ ├── css.mdx │ │ │ ├── debugging.mdx │ │ │ ├── deployment.mdx │ │ │ ├── roadmap.mdx │ │ │ └── testing.mdx │ │ └── tutorial/ │ │ └── index.mdx │ ├── version-0.22/ │ │ ├── advanced-topics/ │ │ │ ├── children.mdx │ │ │ ├── how-it-works.mdx │ │ │ ├── immutable.mdx │ │ │ ├── optimizations.mdx │ │ │ ├── portals.mdx │ │ │ ├── server-side-rendering.mdx │ │ │ └── struct-components/ │ │ │ ├── callbacks.mdx │ │ │ ├── hoc.mdx │ │ │ ├── introduction.mdx │ │ │ ├── lifecycle.mdx │ │ │ ├── properties.mdx │ │ │ ├── refs.mdx │ │ │ └── scope.mdx │ │ ├── concepts/ │ │ │ ├── agents.mdx │ │ │ ├── basic-web-technologies/ │ │ │ │ ├── css.mdx │ │ │ │ ├── html.mdx │ │ │ │ ├── js.mdx │ │ │ │ ├── wasm-bindgen.mdx │ │ │ │ └── web-sys.mdx │ │ │ ├── contexts.mdx │ │ │ ├── function-components/ │ │ │ │ ├── callbacks.mdx │ │ │ │ ├── children.mdx │ │ │ │ ├── communication.mdx │ │ │ │ ├── generics.mdx │ │ │ │ ├── hooks/ │ │ │ │ │ ├── custom-hooks.mdx │ │ │ │ │ └── introduction.mdx │ │ │ │ ├── introduction.mdx │ │ │ │ ├── node-refs.mdx │ │ │ │ ├── properties.mdx │ │ │ │ ├── pure-components.mdx │ │ │ │ └── state.mdx │ │ │ ├── html/ │ │ │ │ ├── classes.mdx │ │ │ │ ├── components.mdx │ │ │ │ ├── conditional-rendering.mdx │ │ │ │ ├── elements.mdx │ │ │ │ ├── events.mdx │ │ │ │ ├── fragments.mdx │ │ │ │ ├── introduction.mdx │ │ │ │ ├── lists.mdx │ │ │ │ └── literals-and-expressions.mdx │ │ │ ├── router.mdx │ │ │ └── suspense.mdx │ │ ├── getting-started/ │ │ │ ├── build-a-sample-app.mdx │ │ │ ├── editor-setup.mdx │ │ │ ├── examples.mdx │ │ │ └── introduction.mdx │ │ ├── migration-guides/ │ │ │ ├── yew/ │ │ │ │ ├── from-0_18_0-to-0_19_0.mdx │ │ │ │ ├── from-0_19_0-to-0_20_0.mdx │ │ │ │ ├── from-0_20_0-to-0_21_0.mdx │ │ │ │ └── from-0_21_0-to-0_22_0.mdx │ │ │ ├── yew-agent/ │ │ │ │ ├── from-0_0_0-to-0_1_0.mdx │ │ │ │ ├── from-0_1_0-to-0_2_0.mdx │ │ │ │ └── from-0_3_0-to-0_4_0.mdx │ │ │ └── yew-router/ │ │ │ ├── from-0_15_0-to-0_16_0.mdx │ │ │ └── from-0_16_0-to-0_17_0.mdx │ │ ├── more/ │ │ │ ├── css.mdx │ │ │ ├── debugging.mdx │ │ │ ├── deployment.mdx │ │ │ ├── roadmap.mdx │ │ │ └── testing.mdx │ │ └── tutorial/ │ │ └── index.mdx │ └── version-0.23/ │ ├── advanced-topics/ │ │ ├── children.mdx │ │ ├── how-it-works.mdx │ │ ├── immutable.mdx │ │ ├── optimizations.mdx │ │ ├── portals.mdx │ │ ├── server-side-rendering.mdx │ │ └── struct-components/ │ │ ├── callbacks.mdx │ │ ├── hoc.mdx │ │ ├── introduction.mdx │ │ ├── lifecycle.mdx │ │ ├── properties.mdx │ │ ├── refs.mdx │ │ └── scope.mdx │ ├── concepts/ │ │ ├── agents.mdx │ │ ├── basic-web-technologies/ │ │ │ ├── css.mdx │ │ │ ├── html.mdx │ │ │ ├── js.mdx │ │ │ ├── wasm-bindgen.mdx │ │ │ └── web-sys.mdx │ │ ├── contexts.mdx │ │ ├── function-components/ │ │ │ ├── callbacks.mdx │ │ │ ├── children.mdx │ │ │ ├── communication.mdx │ │ │ ├── generics.mdx │ │ │ ├── hooks/ │ │ │ │ ├── custom-hooks.mdx │ │ │ │ └── introduction.mdx │ │ │ ├── introduction.mdx │ │ │ ├── node-refs.mdx │ │ │ ├── properties.mdx │ │ │ ├── pure-components.mdx │ │ │ └── state.mdx │ │ ├── html/ │ │ │ ├── classes.mdx │ │ │ ├── components.mdx │ │ │ ├── conditional-rendering.mdx │ │ │ ├── elements.mdx │ │ │ ├── events.mdx │ │ │ ├── fragments.mdx │ │ │ ├── introduction.mdx │ │ │ ├── lists.mdx │ │ │ └── literals-and-expressions.mdx │ │ ├── router.mdx │ │ └── suspense.mdx │ ├── getting-started/ │ │ ├── build-a-sample-app.mdx │ │ ├── editor-setup.mdx │ │ ├── examples.mdx │ │ └── introduction.mdx │ ├── migration-guides/ │ │ ├── yew/ │ │ │ ├── from-0_19_0-to-0_20_0.mdx │ │ │ ├── from-0_20_0-to-0_21_0.mdx │ │ │ ├── from-0_21_0-to-0_22_0.mdx │ │ │ └── from-0_22_0-to-0_23_0.mdx │ │ ├── yew-agent/ │ │ │ ├── from-0_0_0-to-0_1_0.mdx │ │ │ ├── from-0_1_0-to-0_2_0.mdx │ │ │ ├── from-0_3_0-to-0_4_0.mdx │ │ │ └── from-0_4_0-to-0_5_0.mdx │ │ └── yew-router/ │ │ ├── from-0_15_0-to-0_16_0.mdx │ │ ├── from-0_16_0-to-0_17_0.mdx │ │ └── from-0_19_0-to-0_20_0.mdx │ ├── more/ │ │ ├── css.mdx │ │ ├── debugging.mdx │ │ ├── deployment.mdx │ │ ├── roadmap.mdx │ │ └── testing.mdx │ └── tutorial/ │ └── index.mdx ├── versioned_sidebars/ │ ├── version-0.20-sidebars.json │ ├── version-0.21-sidebars.json │ ├── version-0.22-sidebars.json │ └── version-0.23-sidebars.json ├── versions.json └── write-translations.js