petyosi / react-virtuoso

The most powerful virtual list component for React
https://virtuoso.dev
MIT License
5.25k stars 301 forks source link

[Docs] Replace react-beautiful-dnd with @hello-pangea/dnd #732

Closed Xhale1 closed 2 years ago

Xhale1 commented 2 years ago

react-beautiful-dnd is no longer maintained and will not support React 18.

I'm maintaining a fork @hello-pangea/dnd which supports React 18 and React strict mode, amongst other improvements.

@hello-pangea/dnd is a drop in replacement for react-beautiful-dnd, basically requiring a find-and-replace for imports.

Would you be open to a PR which migrated react-beautiful-dnd to @hello-pangea/dnd?

Also: just wanted to say that I use this library every day and absolutely love it. Thank you so much for your work :)

petyosi commented 2 years ago

Hi @Xhale1 - massive respect for stepping up to fix react-beautiful-dnd. I am happy to accept the following:

This way, traffic to the previous example won't be lost, and people will have clear visibility of the recommendation.

I am also happy to discuss virtualization integration in the library, as (just like in your case) both react-virtualized and react-window are no longer maintained. The integration could be much more streamlined.

Xhale1 commented 2 years ago

Sounds like a plan.

I'll submit a PR here with those changes, and I'll make a PR over at @hello-pangea/dnd which does the same for react virtuoso:

I'll ping you here when those are done.

Xhale1 commented 2 years ago

@petyosi I added some react-virtuoso examples to Pangea dnd in this PR: https://github.com/hello-pangea/dnd/pull/415

Feel free to check it out to make sure we're utilizing your lib as effectively as possible. Working on a PR for this lib now

petyosi commented 2 years ago

Thanks, that works for me, left a couple of comments.

petyosi commented 2 years ago

@Xhale1 let me know once you get to that.

nika-sukhorukova commented 7 months ago

Is there any plans for fixing type conflicts in this integrations? There are some type erros in those examples. You've done great job. Everything works, but my linter is getting crazy) For example scrollRef in Virtuoso component doesn't accept DroppableProvided innerRef

TS2322: Type (a?: HTMLElement | null | undefined) => void is not assignable to type (ref: HTMLElement | Window | null) => any