Temzasse / react-modal-sheet

Flexible bottom sheet component built with Framer Motion to provide buttery smooth UX while keeping accessibility in mind 🪐
https://temzasse.github.io/react-modal-sheet/
MIT License
791 stars 75 forks source link

is it possible dynamic snap add point ? #46

Open behnam-maqsudi opened 2 years ago

behnam-maqsudi commented 2 years ago

how can i make dynamic size ?

image

image

and I found another issue ! when I set snap points like [0.9, 0.3,0] on Snap method not called correctly and return -1 or not called

please check this issue

Temzasse commented 2 years ago

Hi @benamm👋

Can you describe your use case for the dynamic snap point in more detail? How should it work from your perspective?

I'll try to take a look at the snap point issue you mentioned when I have some free time to work on this project 🙂

shivamragnar commented 2 years ago

Hey @Temzasse, I have a similar dynamic snap points use case. So i have two sets of snap points, which i pass as a prop using conditional operators, but i don't get the same animation as I would have got if the snap points were in same array.

Why I don't want these snap points in same array is because, when on a lower snap point, i do not want the sheet to go to a higher snap point. I wish if there was some way, where i can have the same animation as i get while switching snap points in my case where i am changing snap points array based on a condition. Here is an example

<TheSheet
    isOpen={isOpen || isSending}
    initialSnap={initialSnap}
    onClose={onCloseOfSheet}
    disableDrag={disableDrag}
    snapPoints={ [heighestSnapPoint, 340, 0] }
 >
<TheSheet
    isOpen={isOpen || isSending}
    initialSnap={initialSnap}
    onClose={onCloseOfSheet}
    disableDrag={disableDrag}
    snapPoints={selectedUser.length ? [340, 0] : [heighestSnapPoint, 0]}
 >
Temzasse commented 2 years ago

What would be the expected result when the snap points array is dynamically changed? Should it animate to the snap point that exists in at the current active snap point index 🤔 What if the new array has less snap points than the previous one?

shivamragnar commented 2 years ago

The expected use cases are, say there are two pages in a sheet and both the pages have different set of snap points. For them to be used in the same sheet,