2117 Commits

Author SHA1 Message Date
WorldSEnder
6992a454e3
Introduce a dedicated use_force_update hook (#2586)
* introduce a dedicated use_force_update hook

* fix doc links
2022-04-09 16:54:39 +05:00
Nano
ae26885589
Impl ImplicitClone for Rc<T> where T: Sized (#2594) 2022-04-09 13:33:16 +02:00
WorldSEnder
e2405298c6
update zxcvbn to 2.2.1 (#2568)
* update zxcvbn to 2.2.1

* fix clippy issues

* Upgrade to wasm_bindgen 0.2.80

* resolve TODO, linked pr now merged
2022-04-08 13:03:45 +05:00
Kaede Hoshikawa
6d07ba3b90
Fix generic with impl trait. (#2589) 2022-04-07 19:45:26 +05:00
Muhammad Hamza
2f3b90ce2c
Fix macro hygine issues (#2585)
* no_implicit_prelude in macro tests

* #[automatically_derived] and #[doc(hidden)]

* Span::call_site() -> Span::mixed_site()
2022-04-07 01:14:00 +05:00
Kai Jellinghaus
8ca7ceb34f
Ignore website/** changes when benchmarking (#2581) 2022-04-06 23:10:04 +05:00
Muhammad Hamza
3ad4dbe837
Format website with prettier (#2536)
* add prettier

* ci

* run prettier

* run prettier in CI

* run prettier --write

* ignore README.md

* specify googleAnalytics

* fmt

* npm run write-translations

* fmt

* ignore i18n json files

they're autogenerated and don't like being formatted

* post merge fixes & some updates

* post merge fixes
2022-04-06 22:52:15 +05:00
Kai Jellinghaus
ec1f43aa24
Fix typo(s) in use_callback docs (#2580)
* Fix typo in use-callback.mdx

* Fix the same typo in two more places 🤔

* Fix rest of typos
2022-04-06 16:48:51 +02:00
WorldSEnder
8978baa45d
Fix casing of dynamic tags (#2578)
* fix casing of dynamic tags
* add test case for unknown tag names
* add lint for non-normalized tags
2022-04-05 19:07:31 +02:00
Muhammad Hamza
4bc61b8da9
Update context docs (#2570)
* update context docs

* fix doc test
2022-04-03 12:52:20 +05:00
Muhammad Hamza
b433074ef5
Add deployment section in docs (#2569)
* Add deployment section in docs

* ignore non-rust code block

* Apply suggestions from code review

Co-authored-by: WorldSEnder <WorldSEnder@users.noreply.github.com>

Co-authored-by: WorldSEnder <WorldSEnder@users.noreply.github.com>
2022-04-03 10:03:19 +05:00
Kaede Hoshikawa
e46ae55cab
SSR Hydration (#2552)
* Bring changes to this branch.

* Add feature hydration.

* Hydrate text.

* Hydrate tag.

* Hydrate node.

* Hydrate List.

* Hydrate Suspense.

* Hydrate component.

* Renderer::hydrate.

* Add example and tests.

* Fix comp_id.

* Move some code away from generics.

* Fix everything.

* trybuild?

* Collectable!

* Phantom component.

* Migrate docs as well.

* Update example.

* Fix docs and improve debug message.

* Minor fixing.

* Add hydration to feature soundness check.

* Fix name in debug.

* Remove Shift.

* Remove comment.

* Adjust readme.

* Update website/docs/advanced-topics/server-side-rendering.md

Co-authored-by: Muhammad Hamza <muhammadhamza1311@gmail.com>

* Update packages/yew/src/dom_bundle/bnode.rs

Co-authored-by: Muhammad Hamza <muhammadhamza1311@gmail.com>

* Update packages/yew/src/dom_bundle/bnode.rs

Co-authored-by: Muhammad Hamza <muhammadhamza1311@gmail.com>

* Once via structopt, now direct clap.

* Fix docs and empty fragment.

* Remove struct component warning.

* Move function router into a separate binary.

* Optimise Code Logic.

* Fix condition.

* Fix rendering behaviour.

* Fix comment.

Co-authored-by: Muhammad Hamza <muhammadhamza1311@gmail.com>
2022-04-03 08:00:16 +09:00
dependabot[bot]
2db42841a1
Bump minimist from 1.2.5 to 1.2.6 in /tools/benchmark-struct (#2548)
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-03 00:47:06 +05:00
dependabot[bot]
20cc54096d
Bump minimist from 1.2.5 to 1.2.6 in /tools/benchmark-hooks (#2547)
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-03 00:46:36 +05:00
Jet Li
421b4e1f60
Add use_callback hook (#2566)
* Add use_callback hook

* Simply use_callback
2022-04-01 13:10:27 +03:00
Finn Bear
ea8a530454
Fix #2553 - automatically convert closure to callback for component properties (#2554)
* Fix #2553 - automatically convert closure to callback for component properties.

* Support F -> Option<Callback<_>> too.

* test stderr.
2022-03-28 00:43:53 +02:00
Kyle Smith
e1f89a8352
Update wording on pure function definition. (#2556)
I was originally going to put a PR to fix "has not side-effects", but I also re-read this sentence and realized it could be interpreted as saying a pure function returns its parameters, not a deterministic value based on its parameters.
2022-03-28 00:29:33 +05:00
dependabot[bot]
2209db7b03
Bump typescript from 4.6.2 to 4.6.3 in /website (#2545)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.6.2 to 4.6.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.6.2...v4.6.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-26 08:59:06 +09:00
dependabot[bot]
1f4ccda256
Bump @types/react from 17.0.41 to 17.0.43 in /website (#2546)
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 17.0.41 to 17.0.43.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-26 08:58:48 +09:00
Kaede Hoshikawa
2e098f4f6c
Introduce additional information in SSR artifact to facilitate Hydration (#2540)
* Bring changes to this branch.

* Child components always render after parents.

* Add hydratable to render_to_string.

* Revert portal example.

* Fix vcomp.

* Prefer debug_assert.

* ServerRenderer now a Builder Pattern.

* Collectable.
2022-03-26 08:57:08 +09:00
WorldSEnder
ee6a67e3ea
Scoped event handlers (#2510)
* implement event handling with multiple subtree roots
* add listeners to all subtree roots
* move host element to Registry
* add BSubtree argument
* surface level internal API for BSubtree
* cache invalidation & document limitations
* Update portal documentation
* Add test case for hierarchical event bubbling
* add shadow dom test case
* add button to portals/shadow dom example
* change ShadowRootMode in example to open

BSubtree controls the element where listeners are registered.
 we have create_root and create_ssr

Async event dispatching is surprisingly complicated.
Make sure to see #2510 for details, comments and discussion

takes care of catching original events in shadow doms
2022-03-25 17:09:15 +01:00
Andreas Atle
bbb7ded83e
Fixed broken tutorial (#2531) (#2542)
* Changed dependency to yew = "0.19"

* Changed edition to 2021
2022-03-23 14:42:51 +05:00
Kaede Hoshikawa
62d78d0641
An ever Increasing Component ID (#2537)
* Bring changes to this branch.

* Child components always render after parents.

* Cleanup residual Portal references.

* Fix after merge.

* Fix trybuild.

* Opt for usize.

* Strip Generics.

* take instead of replace, first instead of front.
2022-03-21 23:47:33 +09:00
dependabot[bot]
39d3b37f4f
Bump @types/react from 17.0.40 to 17.0.41 in /website (#2539)
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 17.0.40 to 17.0.41.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-21 18:27:53 +09:00
Julius Lungys
70c9a71ff3
update HTML concept to use function components (#2511)
* update HTML concept to use function components

* adress comments 1

* fix test

* adress comments 2

* code outside of html
2022-03-20 13:22:55 +02:00
Julius Lungys
5ececa4644
update nested router docs (#2535)
* update nested router docs

* !!!

* fix according to comments

* fix error
2022-03-20 12:12:13 +02:00
Julius Lungys
b9bd18f3f4
add struct component context consumpion doc (#2533)
* add structs example

* Update website/docs/concepts/contexts.mdx

Co-authored-by: Muhammad Hamza <muhammadhamza1311@gmail.com>
2022-03-20 11:49:29 +02:00
Kaede Hoshikawa
b392023686
Prevents Fallback UI from becoming suspended (#2532)
* Bring changes to this branch.

* Add BaseSuspense.

* Create detached parent inside of bundle.

* Fix ctx and opt for html!.

* Make Portals "work" with SSR.

* Update docs.

* Fix feature flags.

* Revert portal design.

* Fix feature flag.
2022-03-20 17:01:40 +09:00
Muhammad Hamza
9c2480b93b
Update edition in docs, add git dependency for master docs (#2534) 2022-03-20 12:53:32 +05:00
Sebastian Klähn
7f0bfde849
Update use-effect.mdx (#2463)
* Update use-effect.mdx

* Update website/docs/concepts/function-components/hooks/use-effect.mdx

Co-authored-by: Julius Lungys <32368314+voidpumpkin@users.noreply.github.com>
2022-03-19 22:38:41 +05:00
Kaede Hoshikawa
8bc2212716
#[cfg(feature = "render")] and yew::Renderer (#2498)
* Bring changes to this branch.

* Bring changes to this branch.

* Add feature render and renderer.

* Bring changes to this branch.

* Migrate examples to Renderer.

* Satisfy no any render.

* Satisfy ssr.

* Satisfy feature render.

* Lint feature soundness.

* Suppress tests.

* Fix pr-flow, update docs.

* Add a notice.

* Adjust visibility.

* Correctly feature gate tests.

* make test scope available under feature render.

* Fix CI.

* Fix CI.

* Restore tests module to its original place as well.

* Make bundles crate private.

* Make most bundle APIs private.

* Adjust docs.

* Adjust debug implementation.

* Replace start_app with Renderer.

* Adjust documentation.

* Remove unused lint.

* Remove start_app from docs.

* DomBundle -> ReconcileTarget.

* Adjust documentation.

* Once render, now csr.

* Fix docs as well.
2022-03-20 00:48:47 +09:00
dependabot[bot]
3ad454011d
Update gloo requirement from 0.4 to 0.6 (#2522)
Updates the requirements on [gloo](https://github.com/rustwasm/gloo) to permit the latest version.
- [Release notes](https://github.com/rustwasm/gloo/releases)
- [Commits](https://github.com/rustwasm/gloo/commits/0.6.1)

---
updated-dependencies:
- dependency-name: gloo
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-19 16:46:15 +02:00
dependabot[bot]
3343289dd0
Bump @tsconfig/docusaurus from 1.0.4 to 1.0.5 in /website (#2514)
Bumps [@tsconfig/docusaurus](https://github.com/tsconfig/bases/tree/HEAD/bases) from 1.0.4 to 1.0.5.
- [Release notes](https://github.com/tsconfig/bases/releases)
- [Commits](https://github.com/tsconfig/bases/commits/HEAD/bases)

---
updated-dependencies:
- dependency-name: "@tsconfig/docusaurus"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-19 16:23:56 +02:00
WorldSEnder
8d16e883aa
workaround upstream issue for password_strength (#2527) 2022-03-18 15:00:19 +01:00
Wanztwurst
a0fa567c1f
Fix dead link in tutorial (#2526) 2022-03-18 18:35:13 +05:00
WorldSEnder
dd5d5b5ccc
pause simulation, instead of resetting (#2502) 2022-03-18 15:30:04 +02:00
Kaede Hoshikawa
ab9fadf2e2
Fix Benchmark Workflow (#2525)
* Fix optimisation flags.

* Add size comparison.

* Set opt-level to z.

* Fix Workflow.

* Fix Workflow.

* Ignore failures.

* Fix comment script.

* Fix github script.

* Separate Post Comments and Size Information Collection.

* Fix workflow.

* Fix Workflow.
2022-03-18 14:00:26 +01:00
Kaede Hoshikawa
605f891a20
Size Comparison on Pull Requests (#2513)
* Fix optimisation flags.

* Add size comparison.

* Set opt-level to z.

* Fix Workflow.

* Fix Workflow.

* Ignore failures.

* Fix comment script.

* Fix github script.

* Separate Post Comments and Size Information Collection.
2022-03-18 21:17:07 +09:00
Muhammad Hamza
cb118377d6
use path and Legit-Labs/action-download-artifact workflow (#2512) 2022-03-11 21:01:24 +01:00
dependabot[bot]
88016dc90b
Bump @types/react from 17.0.39 to 17.0.40 in /website (#2509)
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 17.0.39 to 17.0.40.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-11 13:02:27 +02:00
dependabot[bot]
0102f7fa66
Bump @easyops-cn/docusaurus-search-local in /website (#2508)
Bumps [@easyops-cn/docusaurus-search-local](https://github.com/easyops-cn/docusaurus-search-local) from 0.22.0 to 0.23.0.
- [Release notes](https://github.com/easyops-cn/docusaurus-search-local/releases)
- [Changelog](https://github.com/easyops-cn/docusaurus-search-local/blob/master/CHANGELOG.md)
- [Commits](https://github.com/easyops-cn/docusaurus-search-local/compare/v0.22.0...v0.23.0)

---
updated-dependencies:
- dependency-name: "@easyops-cn/docusaurus-search-local"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-11 13:01:16 +02:00
WorldSEnder
889c6ba74e
Fix #2506 and improve some related documentation (#2507) 2022-03-10 15:37:12 +01:00
Kaede Hoshikawa
51238fb0e3
Better Function Component in docs + Macro-based Hooks (#2478)
* Fix const function component.

* Show Properties on the function definition.

* Filter certain doc attributes to be applied to type alias. More precise warnings.

* Implement macro-based hook.

* Add fail case.

* Function Component no longer a type alias.

* Clippy!

* Force 'static on generics.

* Fix clippy!

* Fix clippy and trybuild.

* Fix clippy and trybuild.

* Fix clippy.

* BaseComponent was not sealed properly.

* Adjust prelude.

* Public API should use IntoComponent for better ergonomics.

* Fix race condition.

* Fix trybuild.
2022-03-08 18:03:40 +05:00
Jet Li
6e425ff38b
Fix broken links in hooks doc (#2504) 2022-03-08 13:54:05 +02:00
Kaede Hoshikawa
839a7965ad
Function Router Example (#2494)
* Move example from #2453.

* Add implementation note.

* Update Implementation Note.
2022-03-07 18:38:22 +05:00
Yuki Kodama
e2b91caabd
Includes query parameters in rendered Link component (#2464)
* Add tests for Link component

* Include query parameters in href of Link component

* Add test cases for HashRouter and basename option

* Fix test name, format, clippy

* Ignore clippy warnings for test helpers
2022-03-07 18:32:01 +05:00
Kaede Hoshikawa
f39afdc5e1
Remove benchmarks for now as it does not work at all. (#2495) 2022-03-07 18:28:58 +05:00
Jet Li
dce04f1a9b
Sync awesome projects added recently. (#2493)
* Sync awesome projects added recently.

* Update website/community/awesome.md

Co-authored-by: Muhammad Hamza <muhammadhamza1311@gmail.com>

Co-authored-by: Muhammad Hamza <muhammadhamza1311@gmail.com>
2022-03-07 14:11:12 +02:00
Julius Lungys
427ac22e09
bump rust dependecies (#2501) 2022-03-06 14:23:36 +01:00
dependabot[bot]
92c4ce434f
Update strum requirement from 0.23 to 0.24 (#2471)
Updates the requirements on [strum](https://github.com/Peternator7/strum) to permit the latest version.
- [Release notes](https://github.com/Peternator7/strum/releases)
- [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Peternator7/strum/commits)

---
updated-dependencies:
- dependency-name: strum
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-06 15:02:16 +02:00