gitextract_h8ekz4ej/ ├── .gitattributes ├── .github/ │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_template.yaml │ │ └── feature_request.md │ ├── PULL_REQUEST_TEMPLATE.md │ └── workflows/ │ ├── auto-close.yml │ ├── label-sponsors.yml │ ├── stale.yml │ └── website.yml ├── .gitignore ├── .huskyrc.json ├── .release-it.json ├── .vscode/ │ └── settings.json ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── babel.config.js ├── biome.json ├── commitlint.config.js ├── example/ │ ├── .gitignore │ ├── App.tsx │ ├── app.json │ ├── babel.config.js │ ├── metro.config.js │ ├── package.json │ ├── src/ │ │ ├── Dev.tsx │ │ ├── Main.tsx │ │ ├── components/ │ │ │ ├── button/ │ │ │ │ ├── Button.tsx │ │ │ │ └── index.ts │ │ │ ├── contactItem/ │ │ │ │ ├── ContactItem.tsx │ │ │ │ └── index.ts │ │ │ ├── contactList/ │ │ │ │ ├── ContactList.tsx │ │ │ │ ├── index.ts │ │ │ │ ├── styles.ts │ │ │ │ └── styles.web.ts │ │ │ ├── customBackground/ │ │ │ │ ├── CustomBackground.tsx │ │ │ │ └── index.ts │ │ │ ├── customFooter/ │ │ │ │ ├── CustomFooter.tsx │ │ │ │ └── index.ts │ │ │ ├── customHandle/ │ │ │ │ ├── CustomHandle.tsx │ │ │ │ └── index.ts │ │ │ ├── headerHandle/ │ │ │ │ ├── HeaderHandle.tsx │ │ │ │ └── index.ts │ │ │ └── searchHandle/ │ │ │ ├── SearchHandle.tsx │ │ │ └── index.ts │ │ ├── screens/ │ │ │ ├── advanced/ │ │ │ │ ├── BackdropExample.tsx │ │ │ │ ├── CustomBackgroundExample.tsx │ │ │ │ ├── CustomHandleExample.tsx │ │ │ │ ├── CustomThemeExample.tsx │ │ │ │ ├── DynamicSizingExample.tsx │ │ │ │ ├── FooterExample.tsx │ │ │ │ ├── KeyboardHandlingExample.tsx │ │ │ │ ├── PullToRefreshExample.tsx │ │ │ │ └── ShadowExample.tsx │ │ │ ├── basic/ │ │ │ │ └── BasicExamples.tsx │ │ │ ├── index.ts │ │ │ ├── integrations/ │ │ │ │ ├── NativeScreensExample.tsx │ │ │ │ ├── ViewPagerExample.tsx │ │ │ │ ├── flashlist/ │ │ │ │ │ ├── FlashListExample.tsx │ │ │ │ │ ├── TweetContent.tsx │ │ │ │ │ ├── data/ │ │ │ │ │ │ └── tweets.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── models/ │ │ │ │ │ ├── Author.ts │ │ │ │ │ └── Tweet.ts │ │ │ │ ├── legendlist/ │ │ │ │ │ ├── LegendListExample.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ └── renderItem.tsx │ │ │ │ ├── map/ │ │ │ │ │ ├── BlurredBackground.tsx │ │ │ │ │ ├── BlurredHandle.tsx │ │ │ │ │ ├── LocationDetails.tsx │ │ │ │ │ ├── LocationDetailsBottomSheet.tsx │ │ │ │ │ ├── LocationItem.tsx │ │ │ │ │ ├── LocationListBottomSheet.tsx │ │ │ │ │ ├── MapExample.tsx │ │ │ │ │ └── Weather.tsx │ │ │ │ └── navigation/ │ │ │ │ ├── DummyScreen.tsx │ │ │ │ └── NavigatorExample.tsx │ │ │ ├── modal/ │ │ │ │ ├── BackdropExample.tsx │ │ │ │ ├── DetachedExample.tsx │ │ │ │ ├── DynamicSizingExample.tsx │ │ │ │ ├── SimpleExample.tsx │ │ │ │ ├── StackExample.tsx │ │ │ │ └── withModalProvider.tsx │ │ │ └── withGestureHandlerRoot.tsx │ │ ├── types.d.ts │ │ └── utilities/ │ │ ├── createMockData.ts │ │ └── transformOrigin.ts │ ├── tsconfig.json │ ├── web/ │ │ └── index.html │ └── webpack.config.js ├── lint-staged.config.js ├── mock.js ├── package.json ├── src/ │ ├── components/ │ │ ├── bottomSheet/ │ │ │ ├── BottomSheet.tsx │ │ │ ├── BottomSheetBody.tsx │ │ │ ├── BottomSheetContent.tsx │ │ │ ├── constants.ts │ │ │ ├── index.ts │ │ │ ├── styles.ts │ │ │ └── types.d.ts │ │ ├── bottomSheetBackdrop/ │ │ │ ├── BottomSheetBackdrop.tsx │ │ │ ├── constants.ts │ │ │ ├── index.ts │ │ │ ├── styles.ts │ │ │ └── types.d.ts │ │ ├── bottomSheetBackground/ │ │ │ ├── BottomSheetBackground.tsx │ │ │ ├── BottomSheetBackgroundContainer.tsx │ │ │ ├── index.ts │ │ │ ├── styles.ts │ │ │ └── types.d.ts │ │ ├── bottomSheetDebugView/ │ │ │ ├── BottomSheetDebugView.tsx │ │ │ ├── ReText.tsx │ │ │ ├── ReText.webx.tsx │ │ │ ├── index.ts │ │ │ ├── styles.ts │ │ │ └── styles.web.ts │ │ ├── bottomSheetDraggableView/ │ │ │ ├── BottomSheetDraggableView.tsx │ │ │ ├── index.ts │ │ │ └── types.d.ts │ │ ├── bottomSheetFooter/ │ │ │ ├── BottomSheetFooter.tsx │ │ │ ├── BottomSheetFooterContainer.tsx │ │ │ ├── index.ts │ │ │ ├── styles.ts │ │ │ └── types.d.ts │ │ ├── bottomSheetGestureHandlersProvider/ │ │ │ ├── BottomSheetGestureHandlersProvider.tsx │ │ │ ├── index.ts │ │ │ └── types.d.ts │ │ ├── bottomSheetHandle/ │ │ │ ├── BottomSheetHandle.tsx │ │ │ ├── BottomSheetHandleContainer.tsx │ │ │ ├── constants.ts │ │ │ ├── index.ts │ │ │ ├── styles.ts │ │ │ └── types.d.ts │ │ ├── bottomSheetHostingContainer/ │ │ │ ├── BottomSheetHostingContainer.tsx │ │ │ ├── index.ts │ │ │ ├── styles.ts │ │ │ ├── styles.web.ts │ │ │ └── types.d.ts │ │ ├── bottomSheetModal/ │ │ │ ├── BottomSheetModal.tsx │ │ │ ├── constants.ts │ │ │ ├── index.ts │ │ │ └── types.d.ts │ │ ├── bottomSheetModalProvider/ │ │ │ ├── BottomSheetModalProvider.tsx │ │ │ ├── index.ts │ │ │ └── types.d.ts │ │ ├── bottomSheetRefreshControl/ │ │ │ ├── BottomSheetRefreshControl.android.tsx │ │ │ ├── BottomSheetRefreshControl.tsx │ │ │ └── index.ts │ │ ├── bottomSheetScrollable/ │ │ │ ├── BottomSheetDraggableScrollable.tsx │ │ │ ├── BottomSheetFlashList.tsx │ │ │ ├── BottomSheetFlashList.web.tsx │ │ │ ├── BottomSheetFlatList.tsx │ │ │ ├── BottomSheetScrollView.tsx │ │ │ ├── BottomSheetSectionList.tsx │ │ │ ├── BottomSheetVirtualizedList.tsx │ │ │ ├── ScrollableContainer.android.tsx │ │ │ ├── ScrollableContainer.tsx │ │ │ ├── ScrollableContainer.web.tsx │ │ │ ├── createBottomSheetScrollableComponent.tsx │ │ │ ├── index.ts │ │ │ ├── styles.ts │ │ │ ├── types.d.ts │ │ │ └── useBottomSheetContentSizeSetter.ts │ │ ├── bottomSheetTextInput/ │ │ │ ├── BottomSheetTextInput.tsx │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── bottomSheetView/ │ │ │ ├── BottomSheetView.tsx │ │ │ ├── index.ts │ │ │ ├── styles.ts │ │ │ └── types.d.ts │ │ └── touchables/ │ │ ├── Touchables.ios.tsx │ │ ├── Touchables.tsx │ │ └── index.ts │ ├── constants.ts │ ├── contexts/ │ │ ├── external.ts │ │ ├── gesture.ts │ │ ├── index.ts │ │ ├── internal.ts │ │ └── modal/ │ │ ├── external.ts │ │ └── internal.ts │ ├── hooks/ │ │ ├── index.ts │ │ ├── useAnimatedDetents.ts │ │ ├── useAnimatedKeyboard.ts │ │ ├── useAnimatedLayout.ts │ │ ├── useBottomSheet.ts │ │ ├── useBottomSheetContentContainerStyle.ts │ │ ├── useBottomSheetGestureHandlers.ts │ │ ├── useBottomSheetInternal.ts │ │ ├── useBottomSheetModal.ts │ │ ├── useBottomSheetModalInternal.ts │ │ ├── useBottomSheetScrollableCreator.tsx │ │ ├── useBottomSheetSpringConfigs.ts │ │ ├── useBottomSheetTimingConfigs.ts │ │ ├── useBoundingClientRect.ts │ │ ├── useGestureEventsHandlersDefault.tsx │ │ ├── useGestureEventsHandlersDefault.web.tsx │ │ ├── useGestureHandler.ts │ │ ├── usePropsValidator.ts │ │ ├── useReactiveSharedValue.ts │ │ ├── useScrollEventsHandlersDefault.ts │ │ ├── useScrollHandler.ts │ │ ├── useScrollHandler.web.ts │ │ ├── useScrollable.ts │ │ ├── useScrollableSetter.ts │ │ └── useStableCallback.ts │ ├── index.ts │ ├── types.d.ts │ └── utilities/ │ ├── animate.ts │ ├── clamp.ts │ ├── easingExp.ts │ ├── findNodeHandle.ts │ ├── findNodeHandle.web.ts │ ├── getKeyboardAnimationConfigs.ts │ ├── getRefNativeTag.web.ts │ ├── id.ts │ ├── index.ts │ ├── isFabricInstalled.ts │ ├── logger.ts │ ├── noop.ts │ ├── normalizeSnapPoint.ts │ ├── snapPoint.ts │ └── validateSnapPoint.ts ├── tsconfig.json └── website/ ├── .gitignore ├── README.md ├── babel.config.js ├── blog/ │ ├── 2021-08-30-bottom-sheet-v4.mdx │ ├── 2024-10-05-bottom-sheet-v5.mdx │ ├── authors.yml │ └── tags.yml ├── docs/ │ ├── components/ │ │ ├── bottomsheetbackdrop.md │ │ ├── bottomsheetflashlist.md │ │ ├── bottomsheetflatlist.md │ │ ├── bottomsheetfooter.md │ │ ├── bottomsheetscrollview.md │ │ ├── bottomsheetsectionlist.md │ │ ├── bottomsheettextinput.md │ │ ├── bottomsheetview.md │ │ └── bottomsheetvirtualizedlist.md │ ├── faq.md │ ├── guides/ │ │ ├── adding-shadow.mdx │ │ ├── custom-backdrop.mdx │ │ ├── custom-background.mdx │ │ ├── custom-footer.mdx │ │ ├── custom-handle.mdx │ │ ├── detach-modal.mdx │ │ ├── dynamic-sizing.mdx │ │ ├── keyboard-handling.mdx │ │ ├── pull-to-refresh.mdx │ │ ├── react-navigation.md │ │ └── web-support.mdx │ ├── hooks.md │ ├── index.md │ ├── methods.md │ ├── modal/ │ │ ├── hooks.md │ │ ├── index.mdx │ │ ├── methods.md │ │ ├── props.md │ │ └── usage.md │ ├── props.md │ ├── scrollables.md │ ├── troubleshooting.md │ └── usage.md ├── docusaurus.config.ts ├── package.json ├── sidebars.ts ├── src/ │ ├── css/ │ │ └── custom.css │ └── pages/ │ └── sponsors.mdx ├── static/ │ ├── .nojekyll │ ├── CNAME │ └── googled4a9e66f4b4d23d7.html ├── tsconfig.json ├── versioned_docs/ │ ├── version-2/ │ │ ├── faq.md │ │ ├── guides/ │ │ │ ├── adding-shadow.mdx │ │ │ ├── custom-backdrop.mdx │ │ │ ├── custom-background.mdx │ │ │ ├── custom-handle.mdx │ │ │ └── react-naigation.md │ │ ├── hooks.md │ │ ├── index.mdx │ │ ├── methods.md │ │ ├── modal/ │ │ │ ├── hooks.md │ │ │ ├── index.mdx │ │ │ ├── methods.md │ │ │ ├── props.md │ │ │ └── usage.md │ │ ├── props.md │ │ ├── scrollables.md │ │ ├── sidebars.ts │ │ ├── troubleshooting.md │ │ └── usage.md │ └── version-4/ │ ├── components/ │ │ ├── bottomsheetbackdrop.md │ │ ├── bottomsheetflatlist.md │ │ ├── bottomsheetfooter.md │ │ ├── bottomsheetscrollview.md │ │ ├── bottomsheetsectionlist.md │ │ ├── bottomsheettextinput.md │ │ ├── bottomsheetview.md │ │ └── bottomsheetvirtualizedlist.md │ ├── faq.md │ ├── guides/ │ │ ├── adding-shadow.mdx │ │ ├── custom-backdrop.mdx │ │ ├── custom-background.mdx │ │ ├── custom-footer.mdx │ │ ├── custom-handle.mdx │ │ ├── detach-modal.mdx │ │ ├── keyboard-handling.mdx │ │ ├── pull-to-refresh.mdx │ │ └── react-navigation.md │ ├── hooks.md │ ├── index.md │ ├── methods.md │ ├── modal/ │ │ ├── hooks.md │ │ ├── index.mdx │ │ ├── methods.md │ │ ├── props.md │ │ └── usage.md │ ├── props.md │ ├── scrollables.md │ ├── sidebars.ts │ ├── troubleshooting.md │ └── usage.md ├── versioned_sidebars/ │ ├── version-2-sidebars.json │ └── version-4-sidebars.json └── versions.json