diff --git a/example/storybook-nativewind/.storybook/preview.js b/example/storybook-nativewind/.storybook/preview.js
index 7a6dec70c8..b5bf11faa4 100644
--- a/example/storybook-nativewind/.storybook/preview.js
+++ b/example/storybook-nativewind/.storybook/preview.js
@@ -5,7 +5,7 @@ import { ToastProvider } from '@gluestack-ui/toast';
import { GluestackUIProvider as GluestackUIWithNativewindProvider } from '../src/core-components/nativewind/gluestack-ui-provider';
import { GestureHandlerRootView } from 'react-native-gesture-handler';
-
+import { BottomSheetModalProvider } from '../src/core-components/nativewind/bottomsheet';
// global css getting resolved from babel.config.js
import 'global.css';
@@ -155,27 +155,29 @@ export const decorators = [
return (
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
);
},
@@ -191,9 +193,11 @@ addParameters({
-
- {children}
-
+
+
+ {children}
+
+
diff --git a/example/storybook-nativewind/babel.config.js b/example/storybook-nativewind/babel.config.js
index e1b7980c58..d93a976922 100644
--- a/example/storybook-nativewind/babel.config.js
+++ b/example/storybook-nativewind/babel.config.js
@@ -151,6 +151,7 @@ module.exports = function (api) {
},
],
'@babel/plugin-transform-modules-commonjs',
+ '@babel/plugin-transform-export-namespace-from',
'react-native-reanimated/plugin',
],
};
diff --git a/example/storybook-nativewind/package.json b/example/storybook-nativewind/package.json
index fbb7ec200b..6dcf1d4bb2 100644
--- a/example/storybook-nativewind/package.json
+++ b/example/storybook-nativewind/package.json
@@ -34,7 +34,7 @@
"@gluestack-ui/config": "^1.1.19",
"@gluestack-ui/themed": "^1.1.43",
"@gluestack/design-system": "^0.5.36",
- "@gorhom/bottom-sheet": "^5.0.0-alpha.10",
+ "@gorhom/bottom-sheet": "^5.0.0-alpha.11",
"@legendapp/motion": "^2.2.0",
"@react-aria/button": "^3.7.0",
"@react-aria/focus": "^3.11.0",
@@ -63,7 +63,7 @@
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-native": "0.72.4",
- "react-native-gesture-handler": "~2.14.0",
+ "react-native-gesture-handler": "^2.16.1",
"react-native-reanimated": "~3.6.2",
"react-native-safe-area-context": "^4.4.1",
"react-native-svg": "13.4.0",
diff --git a/example/storybook-nativewind/src/components/BottomSheet/BottomSheet.tsx b/example/storybook-nativewind/src/components/BottomSheet/BottomSheet.tsx
index a4bac2e9de..ba7b7eaa07 100644
--- a/example/storybook-nativewind/src/components/BottomSheet/BottomSheet.tsx
+++ b/example/storybook-nativewind/src/components/BottomSheet/BottomSheet.tsx
@@ -6,25 +6,26 @@ import {
BottomSheetDragIndicator,
BottomSheetItem,
BottomSheetItemText,
- BottomSheetPortal,
- BottomSheetTrigger,
} from '@/components/ui/bottomsheet';
-import { Text } from '@/components/ui/text';
-
-const BottomSheetBasic = ({
- text = 'Open Action Sheet',
- _colorMode,
- ...props
-}: any) => {
+import { Button, ButtonText } from '@/components/ui/button';
+const BottomSheetBasic = ({ ...props }: any) => {
+ const [isOpen, setIsOpen] = React.useState(false);
return (
-
-
- {text}
-
-
+ setIsOpen(true)}>
+ Open Bottom Sheet
+
+ {
+ setIsOpen(false);
+ }}
backdropComponent={BottomSheetBackdrop}
handleComponent={BottomSheetDragIndicator}
+ {...props}
>
@@ -37,8 +38,8 @@ const BottomSheetBasic = ({
Item 3
-
-
+
+ >
);
};
diff --git a/example/storybook-nativewind/src/components/BottomSheet/index.nw.stories.mdx b/example/storybook-nativewind/src/components/BottomSheet/index.nw.stories.mdx
index c51a0f21b5..633faaf10c 100644
--- a/example/storybook-nativewind/src/components/BottomSheet/index.nw.stories.mdx
+++ b/example/storybook-nativewind/src/components/BottomSheet/index.nw.stories.mdx
@@ -23,9 +23,9 @@ import {
BottomSheetDragIndicator,
BottomSheetItem,
BottomSheetItemText,
- BottomSheetPortal,
- BottomSheetTrigger,
- Text
+ Text,
+ Button,
+ ButtonText,
} from '../../core-components/nativewind';
import {
@@ -42,41 +42,77 @@ import { CollapsibleCode } from '@gluestack/design-system';
-## Installation
-
-
-
-
- CLI
-
-
- Manual
-
-
-
-
-<>
-
-### Run the following command:
- ```bash
- npx gluestack-ui add bottomsheet
- ```
+This is an illustration of **Actionsheet** component.
-> Note: you need to install specific versions of `@gorhom/bottom-sheet@5.0.0-alpha.10 (v5)`, `react-native-reanimated` version `~3.6.2` and `react-native-gesture-handler` version `~2.14.0`.
+
+
+ setIsOpen(true)}>
+ Open Bottom Sheet
+
+ {
+ setIsOpen(false);
+ }}
+ backdropComponent={BottomSheetBackdrop}
+ handleComponent={BottomSheetDragIndicator}
+ >
+
+
+ Item 1
+
+
+ Item 2
+
+
+ Item 3
+
+
+
+ >
+ );
+ }
+ `,
+ transformCode: (code) => {
+ return transformedCode(code, 'function', 'App');
+ },
+ scope: {
+ BottomSheet,
+ BottomSheetBackdrop,
+ BottomSheetContent,
+ BottomSheetDragIndicator,
+ BottomSheetItem,
+ BottomSheetItemText,
+ Button,
+ ButtonText,
+ Wrapper,
+ },
+ }}
+ />
+
->
-
-
-<>
+## Installation
+### Run the following command:
### Step 1: Install the following dependencies:
```bash
-npm i @gorhom/bottom-sheet@alpha react-native-reanimated@~3.6.2 react-native-gesture-handler@~2.14.0
+npm i @gorhom/bottom-sheet@alpha react-native-reanimated@3.10.0 react-native-gesture-handler@~2.14.0
```
-> Note: you need to install specific versions of `@gorhom/bottom-sheet@alpha (v5)`, `react-native-reanimated` version `~3.6.2` and `react-native-gesture-handler` version `~2.14.0`.
+> Note: you need to install specific versions of `@gorhom/bottom-sheet@alpha (v5)`, `react-native-reanimated` version `3.10.0` and `react-native-gesture-handler` version `~2.14.0`.
### Step 2: Copy and paste the following code into your project.
@@ -90,7 +126,7 @@ npm i @gorhom/bottom-sheet@alpha react-native-reanimated@~3.6.2 react-native-ges
-### Step 3: Wrap your App or layout with GestureHandlerRootView.
+### Step 3: Wrap your App or layout with GestureHandlerRootView and BottomSheetModalProvider.
```jsx
@@ -99,7 +135,9 @@ import { GestureHandlerRootView } from 'react-native-gesture-handler';
export default function App() {
return (
- {/* content */}
+
+ {/* content */}
+
);
}
@@ -110,11 +148,6 @@ for more info follow their [installation instructions.](https://docs.swmansion.c
### Step 4: Update the import paths to match your project setup.
->
-
-
-
-
## API Reference
To use this component in your project, include the following import statement in your file.
@@ -128,20 +161,20 @@ import {
BottomSheetDragIndicator,
BottomSheetItem,
BottomSheetItemText,
- BottomSheetPortal,
- BottomSheetTrigger,
} from '@/components/ui/bottomsheet';
```
```jsx
export default () => (
-
-
- Open BottomSheet
-
- {
+ setIsOpen(false);
+ }}
backdropComponent={BottomSheetBackdrop}
handleComponent={BottomSheetDragIndicator}
>
@@ -156,8 +189,7 @@ export default () => (
Item 3
-
-
+
);
```
@@ -167,7 +199,7 @@ This section provides a comprehensive reference list for the component props, de
#### BottomSheet
-It is a context provider for entire bottomsheet api.
+it's a gorhom BottomSheet component. inherits all the properties of [gorhom BottomSheetModal](https://ui.gorhom.dev/components/bottom-sheet/modal/props).
### Props
@@ -194,23 +226,23 @@ It is a context provider for entire bottomsheet api.
- snapToIndex
+ isOpen (required)
- number
+ boolean
- 1
+ -
- {`index of snapPoints at which bottomsheet initially opens.`}
+ {`if true, BottomSheet is opens`}
- onOpen
+ onClose (required)
@@ -220,74 +252,39 @@ It is a context provider for entire bottomsheet api.
-
- {`callback function which trigger when bottomsheet is opens.`}
+ {`callback function which trigger when bottomsheet is closed.`}
-
+
- onClose
+ index
- () => void
+ number
- -
+ 0
- {`callback function which trigger when bottomsheet is closed.`}
+ {`Initial snap point index`}
-
-
-
->
-
-
-#### BottomSheetTrigger
-
-It inherits all the properties of React Native's [pressable](https://reactnative.dev/docs/pressable) component.
-
-
-#### BottomSheetPortal
-
-it's a gorhom BottomSheet component. inherits all the properties of [gorhom BottomSheet](https://ui.gorhom.dev/components/bottom-sheet/props#configuration).
-
-<>
-
-
-
-
-
- Prop
-
-
- Type
-
-
- Default
-
-
- Description
-
-
-
-
- snapPoints
+ onOpen
- {`Array`}
+ () => void
-
- {`Points for the bottom sheet to snap to. It accepts array of number, string or mix. String values should be a percentage.`}
+ {`callback function which trigger when bottomsheet is opens.`}
@@ -295,6 +292,7 @@ it's a gorhom BottomSheet component. inherits all the properties of [gorhom Bott
>
+
#### BottomSheetContent
It inherits all the properties of [gorhom BottomSheetView](https://ui.gorhom.dev/components/bottom-sheet/components/bottomsheetview).
diff --git a/example/storybook-nativewind/src/core-components/nativewind/actionsheet/index.tsx b/example/storybook-nativewind/src/core-components/nativewind/actionsheet/index.tsx
index e80735b9dc..cdd653ef11 100644
--- a/example/storybook-nativewind/src/core-components/nativewind/actionsheet/index.tsx
+++ b/example/storybook-nativewind/src/core-components/nativewind/actionsheet/index.tsx
@@ -159,7 +159,7 @@ cssInterop(UIActionsheet.Icon, {
const actionsheetStyle = tva({ base: 'w-full h-full web:pointer-events-none' });
const actionsheetContentStyle = tva({
- base: 'items-center rounded-tl-3xl rounded-tr-3xl p-5 pt-2 bg-background-0 web:pointer-events-auto web:select-none shadow-hard-5 border border-b-0 border-outline-100',
+ base: 'items-center rounded-t-3xl p-5 pt-2 bg-background-0 web:pointer-events-auto web:select-none shadow-hard-5 border border-b-0 border-outline-100',
});
const actionsheetItemStyle = tva({
diff --git a/example/storybook-nativewind/src/core-components/nativewind/bottomsheet/index.tsx b/example/storybook-nativewind/src/core-components/nativewind/bottomsheet/index.tsx
index d627f0eff2..e46b1a281f 100644
--- a/example/storybook-nativewind/src/core-components/nativewind/bottomsheet/index.tsx
+++ b/example/storybook-nativewind/src/core-components/nativewind/bottomsheet/index.tsx
@@ -1,4 +1,4 @@
-import GorhomBottomSheet, {
+import {
BottomSheetBackdrop as GorhomBottomSheetBackdrop,
BottomSheetView as GorhomBottomSheetView,
BottomSheetHandle,
@@ -6,207 +6,165 @@ import GorhomBottomSheet, {
BottomSheetScrollView as GorhomBottomSheetScrollView,
BottomSheetFlatList as GorhomBottomSheetFlatList,
BottomSheetSectionList as GorhomBottomSheetSectionList,
+ BottomSheetModal as GorhomBottomSheetModal,
+ BottomSheetModalProvider,
} from '@gorhom/bottom-sheet';
-import { Platform } from 'react-native';
-import type { PressableProps, TextProps } from 'react-native';
import { FocusScope } from '@react-native-aria/focus';
+import { cssInterop } from 'nativewind';
import React, {
createContext,
- useCallback,
useContext,
+ useEffect,
useMemo,
useRef,
- useState,
} from 'react';
-import { Pressable, Text } from 'react-native';
-import { cssInterop } from 'nativewind';
+import { Platform } from 'react-native';
import { tva } from '@gluestack-ui/nativewind-utils/tva';
+import type { TextProps } from 'react-native';
+import { Pressable, Text } from 'react-native';
+import { createPressable } from '@gluestack-ui/pressable';
+import { VariantProps } from '@gluestack-ui/nativewind-utils';
+
+const ItemPressable = createPressable({ Root: Pressable });
+const BottomSheetContext = createContext({});
const bottomSheetBackdropStyle = tva({
base: 'absolute inset-0 flex-1 touch-none select-none bg-black opacity-0',
});
const bottomSheetContentStyle = tva({
- base: 'mt-2',
-});
-const bottomSheetTriggerStyle = tva({
- base: '',
+ base: 'flex-1 items-center p-5 pt-2 bg-background-0 shadow-hard-5',
});
const bottomSheetIndicatorStyle = tva({
- base: 'py-1 w-full items-center rounded-t-lg ',
+ base: 'w-16 h-1 bg-background-400 rounded-full',
});
const bottomSheetItemStyle = tva({
- base: 'p-3 flex-row items-center rounded-sm w-full disabled:opacity-0.4 web:pointer-events-auto disabled:cursor-not-allowed hover:bg-background-50 active:bg-background-100 focus:bg-background-100 web:focus-visible:bg-background-100',
+ base: 'w-full flex-row items-center p-3 rounded-sm data-[disabled=true]:opacity-40 data-[disabled=true]:web:pointer-events-auto data-[disabled=true]:web:cursor-not-allowed hover:bg-background-50 active:bg-background-100 data-[focus=true]:bg-background-100 web:data-[focus-visible=true]:bg-background-100 web:data-[focus-visible=true]:outline-indicator-primary gap-2',
});
-const BottomSheetContext = createContext<{
- visible: boolean;
- bottomSheetRef: React.RefObject;
- handleClose: () => void;
- handleOpen: () => void;
-}>({
- visible: false,
- bottomSheetRef: { current: null },
- handleClose: () => {},
- handleOpen: () => {},
+const bottomSheetItemTextStyle = tva({
+ base: 'text-typography-700 font-normal font-body',
+ variants: {
+ isTruncated: {
+ true: 'web:truncate',
+ },
+ bold: {
+ true: 'font-bold',
+ },
+ underline: {
+ true: 'underline',
+ },
+ strikeThrough: {
+ true: 'line-through',
+ },
+ size: {
+ '2xs': 'text-2xs',
+ 'xs': 'text-xs',
+ 'sm': 'text-sm',
+ 'md': 'text-md',
+ 'lg': 'text-lg',
+ 'xl': 'text-xl',
+ '2xl': 'text-2xl',
+ '3xl': 'text-3xl',
+ '4xl': 'text-4xl',
+ '5xl': 'text-5xl',
+ '6xl': 'text-6xl',
+ },
+ },
});
-type IBottomSheetProps = React.ComponentProps;
-export const BottomSheet = ({
- snapToIndex = 1,
- onOpen,
- onClose,
- ...props
-}: {
- snapToIndex?: number;
- children?: React.ReactNode;
- onOpen?: () => void;
- onClose?: () => void;
-}) => {
- const bottomSheetRef = useRef(null);
-
- const [visible, setVisible] = useState(false);
-
- const handleOpen = useCallback(() => {
- bottomSheetRef.current?.snapToIndex(snapToIndex);
- setVisible(true);
- onOpen && onOpen();
- }, [onOpen, snapToIndex]);
-
- const handleClose = useCallback(() => {
- bottomSheetRef.current?.close();
- setVisible(false);
- onClose && onClose();
- }, [onClose]);
+cssInterop(GorhomBottomSheetView, { className: 'style' });
+cssInterop(GorhomBottomSheetBackdrop, { className: 'style' });
+cssInterop(BottomSheetHandle, { className: 'style' });
+cssInterop(GorhomBottomSheetInput, { className: 'style' });
+cssInterop(GorhomBottomSheetScrollView, { className: 'style' });
+cssInterop(GorhomBottomSheetFlatList, { className: 'style' });
+cssInterop(GorhomBottomSheetSectionList, { className: 'style' });
+cssInterop(GorhomBottomSheetModal, {
+ className: 'style',
+ dragIndicatorClassName: 'handleIndicatorStyle',
+});
- return (
-
- {props.children}
-
- );
+type IBottomSheetProps = React.ComponentProps & {
+ dragIndicatorClassName?: string;
+ className?: string;
};
-export const BottomSheetPortal = ({
+const BottomSheet = ({
+ onOpen,
+ onClose,
+ isOpen,
+ onChange,
snapPoints,
+ index = 0,
handleComponent: DragIndicator,
backdropComponent: BackDrop,
...props
}: Partial & {
- defaultIsOpen?: boolean;
- snapToIndex?: number;
- snapPoints: string[];
+ onClose: () => void;
+ isOpen: boolean;
+ snapPoints?: string[];
+ children?: React.ReactNode;
+ onOpen?: () => void;
+ onChange?: (isOpen: boolean) => void;
}) => {
- const { bottomSheetRef, handleClose } = useContext(BottomSheetContext);
+ const bottomSheetRef = useRef(null);
- const handleSheetChanges = useCallback(
- (index: number) => {
- if (index === 0 || index === -1) {
- handleClose();
- }
- },
- [handleClose]
- );
+ useEffect(() => {
+ if (isOpen) {
+ bottomSheetRef.current?.present();
+ onOpen && onOpen();
+ } else {
+ bottomSheetRef.current?.close();
+ onClose && onClose();
+ }
+ }, [isOpen, onOpen, onClose]);
- return (
-
- {props.children}
-
- );
-};
+ const handleClose = () => {
+ bottomSheetRef.current?.close();
+ };
-export const BottomSheetTrigger = ({
- className,
- ...props
-}: PressableProps & { className?: string }) => {
- const { handleOpen } = useContext(BottomSheetContext);
return (
- {
- props.onPress && props.onPress(e);
- handleOpen();
+ {
+ onClose && onClose();
+ props.onDismiss && props.onDismiss();
}}
+ onChange={onChange}
+ snapPoints={snapPoints}
+ index={index}
{...props}
- className={bottomSheetTriggerStyle({
- className: className,
- })}
- >
- {props.children}
-
- );
-};
-type IBottomSheetBackdrop = React.ComponentProps<
- typeof GorhomBottomSheetBackdrop
->;
-
-export const BottomSheetBackdrop = ({
- disappearsOnIndex = -1,
- appearsOnIndex = 1,
- className,
- ...props
-}: Partial & { className?: string }) => {
- return (
-
- );
-};
-
-cssInterop(GorhomBottomSheetBackdrop, { className: 'style' });
-
-type IBottomSheetDragIndicator = React.ComponentProps;
-
-export const BottomSheetDragIndicator = ({
- children,
- className,
- ...props
-}: Partial & { className?: string }) => {
- return (
-
- {children}
-
+
+ {props.children}
+
+
);
};
-cssInterop(BottomSheetHandle, { className: 'style' });
-
type IBottomSheetContent = React.ComponentProps;
-export const BottomSheetContent = ({ ...props }: IBottomSheetContent) => {
+const BottomSheetContent = ({ ...props }: IBottomSheetContent) => {
const { handleClose, visible } = useContext(BottomSheetContext);
const keyDownHandlers = useMemo(() => {
return Platform.OS === 'web'
? {
- onKeyDown: (e: React.KeyboardEvent) => {
+ onKeyDown: (e: any) => {
if (e.key === 'Escape') {
e.preventDefault();
handleClose();
@@ -249,22 +207,57 @@ export const BottomSheetContent = ({ ...props }: IBottomSheetContent) => {
);
};
-cssInterop(GorhomBottomSheetView, { className: 'style' });
+type IBottomSheetBackdrop = Partial<
+ React.ComponentProps
+>;
-export const BottomSheetItem = ({
+const BottomSheetBackdrop = ({
+ disappearsOnIndex = -1,
+ appearsOnIndex = 1,
+ className,
+ ...props
+}: IBottomSheetBackdrop & { className?: string }) => {
+ return (
+
+ );
+};
+
+const BottomSheetDragIndicator = ({ children, ...props }: any) => {
+ return (
+
+ {children}
+
+ );
+};
+type IBottomSheetItem = React.ComponentPropsWithRef & {
+ closeOnSelect?: boolean & VariantProps;
+};
+
+const BottomSheetItem = ({
children,
className,
closeOnSelect = true,
...props
-}: PressableProps & {
- closeOnSelect?: boolean;
-}) => {
+}: IBottomSheetItem) => {
const { handleClose } = useContext(BottomSheetContext);
return (
- {
if (closeOnSelect) {
@@ -272,15 +265,38 @@ export const BottomSheetItem = ({
}
props.onPress && props.onPress(e);
}}
- role="button"
>
{children}
-
+
);
};
-export const BottomSheetItemText = ({ ...props }: TextProps) => {
- return ;
+type IBottomSheetItemText = TextProps & {
+ closeOnSelect?: boolean;
+} & VariantProps;
+
+const BottomSheetItemText = ({
+ isTruncated,
+ bold,
+ underline,
+ strikeThrough,
+ size = 'sm',
+ className,
+ ...props
+}: IBottomSheetItemText) => {
+ return (
+
+ );
};
export const BottomSheetScrollView = GorhomBottomSheetScrollView;
@@ -288,7 +304,13 @@ export const BottomSheetFlatList = GorhomBottomSheetFlatList;
export const BottomSheetSectionList = GorhomBottomSheetSectionList;
export const BottomSheetTextInput = GorhomBottomSheetInput;
-cssInterop(GorhomBottomSheetInput, { className: 'style' });
-cssInterop(GorhomBottomSheetScrollView, { className: 'style' });
-cssInterop(GorhomBottomSheetFlatList, { className: 'style' });
-cssInterop(GorhomBottomSheetSectionList, { className: 'style' });
+export {
+ BottomSheetModalProvider,
+ BottomSheet,
+ BottomSheetContent,
+ BottomSheetBackdrop,
+ BottomSheetHandle,
+ BottomSheetDragIndicator,
+ BottomSheetItem,
+ BottomSheetItemText,
+};
diff --git a/example/storybook-v7/package.json b/example/storybook-v7/package.json
index 0cc37c6888..be118e6243 100644
--- a/example/storybook-v7/package.json
+++ b/example/storybook-v7/package.json
@@ -41,7 +41,7 @@
"react-dom": "18.2.0",
"react-native": "0.74.1",
"react-native-gesture-handler": "~2.14.0",
- "react-native-reanimated": "~3.10.1",
+ "react-native-reanimated": "3.10.0",
"react-native-safe-area-context": "4.10.1",
"react-native-svg": "15.2.0",
"react-native-web": "~0.19.10",
@@ -73,7 +73,8 @@
"typescript": "~5.3.3"
},
"resolutions": {
- "react-docgen-typescript": "2.2.2"
+ "react-docgen-typescript": "2.2.2",
+ "react-native-reanimated": "3.10.0"
},
"overrides": {
"react-docgen-typescript": "2.2.2"
diff --git a/example/storybook-v7/yarn.lock b/example/storybook-v7/yarn.lock
index 2802585d98..95c9acb4af 100644
--- a/example/storybook-v7/yarn.lock
+++ b/example/storybook-v7/yarn.lock
@@ -12022,10 +12022,10 @@ react-native-modal-selector@^2.1.1:
dependencies:
prop-types "^15.5.10"
-react-native-reanimated@~3.10.1:
- version "3.10.1"
- resolved "https://registry.yarnpkg.com/react-native-reanimated/-/react-native-reanimated-3.10.1.tgz#3c37d1100bbba0065df39c96aab0c1ff1b50c0fa"
- integrity sha512-sfxg6vYphrDc/g4jf/7iJ7NRi+26z2+BszPmvmk0Vnrz6FL7HYljJqTf531F1x6tFmsf+FEAmuCtTUIXFLVo9w==
+react-native-reanimated@3.10.0:
+ version "3.10.0"
+ resolved "https://registry.yarnpkg.com/react-native-reanimated/-/react-native-reanimated-3.10.0.tgz#7367f0ae9c79193315f4f1ef4d359bfac678a761"
+ integrity sha512-oiQiO+iJ8HTXTli94+Cl5R7nd+TzZf+3MYnMKWtnVDDCxFsqBgpkKO2Xp2ZhZyseXY/JDdH0//E7LlPQRRxpXg==
dependencies:
"@babel/plugin-transform-arrow-functions" "^7.0.0-0"
"@babel/plugin-transform-nullish-coalescing-operator" "^7.0.0-0"
diff --git a/package.json b/package.json
index 4306760072..8dae4f8fa3 100644
--- a/package.json
+++ b/package.json
@@ -53,6 +53,7 @@
"react-native": "0.72.4",
"react-native-web": "0.19.9",
"react-native-css-interop": "0.0.36",
+ "react-native-reanimated": "3.10.0",
"nativewind": "4.0.36"
},
"packageManager": "yarn@1.22.17",
diff --git a/yarn.lock b/yarn.lock
index a198a710ba..e355ca2641 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -199,6 +199,14 @@
"@babel/highlight" "^7.24.2"
picocolors "^1.0.0"
+"@babel/code-frame@^7.24.7":
+ version "7.24.7"
+ resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.7.tgz#882fd9e09e8ee324e496bd040401c6f046ef4465"
+ integrity sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==
+ dependencies:
+ "@babel/highlight" "^7.24.7"
+ picocolors "^1.0.0"
+
"@babel/compat-data@^7.20.5", "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.23.5", "@babel/compat-data@^7.24.4":
version "7.24.4"
resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.4.tgz#6f102372e9094f25d908ca0d34fc74c74606059a"
@@ -288,6 +296,16 @@
"@jridgewell/trace-mapping" "^0.3.25"
jsesc "^2.5.1"
+"@babel/generator@^7.25.0":
+ version "7.25.0"
+ resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.0.tgz#f858ddfa984350bc3d3b7f125073c9af6988f18e"
+ integrity sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==
+ dependencies:
+ "@babel/types" "^7.25.0"
+ "@jridgewell/gen-mapping" "^0.3.5"
+ "@jridgewell/trace-mapping" "^0.3.25"
+ jsesc "^2.5.1"
+
"@babel/helper-annotate-as-pure@^7.18.6", "@babel/helper-annotate-as-pure@^7.22.5":
version "7.22.5"
resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882"
@@ -429,6 +447,11 @@
resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.7.tgz#98c84fe6fe3d0d3ae7bfc3a5e166a46844feb2a0"
integrity sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg==
+"@babel/helper-plugin-utils@^7.24.8":
+ version "7.24.8"
+ resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz#94ee67e8ec0e5d44ea7baeb51e571bd26af07878"
+ integrity sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==
+
"@babel/helper-remap-async-to-generator@^7.18.9", "@babel/helper-remap-async-to-generator@^7.22.20":
version "7.22.20"
resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz#7b68e1cb4fa964d2996fd063723fb48eca8498e0"
@@ -461,6 +484,14 @@
dependencies:
"@babel/types" "^7.22.5"
+"@babel/helper-skip-transparent-expression-wrappers@^7.24.7":
+ version "7.24.7"
+ resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.24.7.tgz#5f8fa83b69ed5c27adc56044f8be2b3ea96669d9"
+ integrity sha512-IO+DLT3LQUElMbpzlatRASEyQtfhSE0+m465v++3jyyXeBTBUjtVZg28/gHeV5mrTJqvEKhKroBGAvhW+qPHiQ==
+ dependencies:
+ "@babel/traverse" "^7.24.7"
+ "@babel/types" "^7.24.7"
+
"@babel/helper-split-export-declaration@^7.24.5":
version "7.24.5"
resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz#b9a67f06a46b0b339323617c8c6213b9055a78b6"
@@ -473,11 +504,21 @@
resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz#f99c36d3593db9540705d0739a1f10b5e20c696e"
integrity sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==
+"@babel/helper-string-parser@^7.24.8":
+ version "7.24.8"
+ resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz#5b3329c9a58803d5df425e5785865881a81ca48d"
+ integrity sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==
+
"@babel/helper-validator-identifier@^7.22.20", "@babel/helper-validator-identifier@^7.24.5":
version "7.24.5"
resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz#918b1a7fa23056603506370089bd990d8720db62"
integrity sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==
+"@babel/helper-validator-identifier@^7.24.7":
+ version "7.24.7"
+ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db"
+ integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==
+
"@babel/helper-validator-option@^7.23.5":
version "7.23.5"
resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307"
@@ -511,11 +552,28 @@
js-tokens "^4.0.0"
picocolors "^1.0.0"
+"@babel/highlight@^7.24.7":
+ version "7.24.7"
+ resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.7.tgz#a05ab1df134b286558aae0ed41e6c5f731bf409d"
+ integrity sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==
+ dependencies:
+ "@babel/helper-validator-identifier" "^7.24.7"
+ chalk "^2.4.2"
+ js-tokens "^4.0.0"
+ picocolors "^1.0.0"
+
"@babel/parser@^7.1.0", "@babel/parser@^7.12.11", "@babel/parser@^7.12.7", "@babel/parser@^7.13.16", "@babel/parser@^7.14.7", "@babel/parser@^7.20.0", "@babel/parser@^7.20.13", "@babel/parser@^7.20.5", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.24.0", "@babel/parser@^7.24.5", "@babel/parser@^7.9.0":
version "7.24.5"
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.5.tgz#4a4d5ab4315579e5398a82dcf636ca80c3392790"
integrity sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==
+"@babel/parser@^7.25.0", "@babel/parser@^7.25.3":
+ version "7.25.3"
+ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.3.tgz#91fb126768d944966263f0657ab222a642b82065"
+ integrity sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==
+ dependencies:
+ "@babel/types" "^7.25.2"
+
"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.24.5":
version "7.24.5"
resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.5.tgz#4c3685eb9cd790bcad2843900fe0250c91ccf895"
@@ -842,6 +900,13 @@
dependencies:
"@babel/helper-plugin-utils" "^7.24.0"
+"@babel/plugin-transform-arrow-functions@^7.0.0-0":
+ version "7.24.7"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.7.tgz#4f6886c11e423bd69f3ce51dbf42424a5f275514"
+ integrity sha512-Dt9LQs6iEY++gXUwY03DNFat5C2NbO48jj+j/bSAz6b3HgPs39qcPiYt77fDObIcFwj3/C2ICX9YMwGflUoSHQ==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.24.7"
+
"@babel/plugin-transform-async-generator-functions@^7.24.3":
version "7.24.3"
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.3.tgz#8fa7ae481b100768cc9842c8617808c5352b8b89"
@@ -1065,6 +1130,14 @@
dependencies:
"@babel/helper-plugin-utils" "^7.24.0"
+"@babel/plugin-transform-nullish-coalescing-operator@^7.0.0-0":
+ version "7.24.7"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.7.tgz#1de4534c590af9596f53d67f52a92f12db984120"
+ integrity sha512-Ts7xQVk1OEocqzm8rHMXHlxvsfZ0cEF2yomUqpKENHWMF4zKk175Y4q8H5knJes6PgYad50uuRmt3UJuhBw8pQ==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.24.7"
+ "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
+
"@babel/plugin-transform-nullish-coalescing-operator@^7.24.1":
version "7.24.1"
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.1.tgz#0cd494bb97cb07d428bd651632cb9d4140513988"
@@ -1081,13 +1154,6 @@
"@babel/helper-plugin-utils" "^7.24.0"
"@babel/plugin-syntax-numeric-separator" "^7.10.4"
-"@babel/plugin-transform-object-assign@^7.16.7":
- version "7.24.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-assign/-/plugin-transform-object-assign-7.24.7.tgz#9d2cc7ee1482bd208fcc51974ca4f7649662c899"
- integrity sha512-DOzAi77P9jSyPijHS7Z8vH0wLRcZH6wWxuIZgLAiy8FWOkcKMJmnyHjy2JM94k6A0QxlA/hlLh+R9T3GEryjNQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.24.7"
-
"@babel/plugin-transform-object-rest-spread@^7.24.5":
version "7.24.5"
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.5.tgz#f91bbcb092ff957c54b4091c86bda8372f0b10ef"
@@ -1114,6 +1180,15 @@
"@babel/helper-plugin-utils" "^7.24.0"
"@babel/plugin-syntax-optional-catch-binding" "^7.8.3"
+"@babel/plugin-transform-optional-chaining@^7.0.0-0":
+ version "7.24.8"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.8.tgz#bb02a67b60ff0406085c13d104c99a835cdf365d"
+ integrity sha512-5cTOLSMs9eypEy8JUVvIKOu6NgvbJMnpG62VpIHrTmROdQ+L5mDAaI40g25k5vXti55JWNX5jCkq3HZxXBQANw==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.24.8"
+ "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7"
+ "@babel/plugin-syntax-optional-chaining" "^7.8.3"
+
"@babel/plugin-transform-optional-chaining@^7.24.1", "@babel/plugin-transform-optional-chaining@^7.24.5":
version "7.24.5"
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.5.tgz#a6334bebd7f9dd3df37447880d0bd64b778e600f"
@@ -1236,6 +1311,13 @@
dependencies:
"@babel/helper-plugin-utils" "^7.24.0"
+"@babel/plugin-transform-shorthand-properties@^7.0.0-0":
+ version "7.24.7"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.7.tgz#85448c6b996e122fa9e289746140aaa99da64e73"
+ integrity sha512-KsDsevZMDsigzbA09+vacnLpmPH4aWjcZjXdyFKGzpplxhbeB4wYtury3vglQkg6KM/xEPKt73eCjPPf1PgXBA==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.24.7"
+
"@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.12.1", "@babel/plugin-transform-spread@^7.24.1":
version "7.24.1"
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.1.tgz#a1acf9152cbf690e4da0ba10790b3ac7d2b2b391"
@@ -1258,6 +1340,13 @@
dependencies:
"@babel/helper-plugin-utils" "^7.24.0"
+"@babel/plugin-transform-template-literals@^7.0.0-0":
+ version "7.24.7"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.7.tgz#a05debb4a9072ae8f985bcf77f3f215434c8f8c8"
+ integrity sha512-AfDTQmClklHCOLxtGoP7HkeMw56k1/bTQjwsfhL6pppo/M4TOBSq+jjBUBLmV/4oeFg4GWMavIl44ZeCtmmZTw==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.24.7"
+
"@babel/plugin-transform-typeof-symbol@^7.24.5":
version "7.24.5"
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.5.tgz#703cace5ef74155fb5eecab63cbfc39bdd25fe12"
@@ -1466,6 +1555,15 @@
"@babel/parser" "^7.24.0"
"@babel/types" "^7.24.0"
+"@babel/template@^7.25.0":
+ version "7.25.0"
+ resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.0.tgz#e733dc3134b4fede528c15bc95e89cb98c52592a"
+ integrity sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==
+ dependencies:
+ "@babel/code-frame" "^7.24.7"
+ "@babel/parser" "^7.25.0"
+ "@babel/types" "^7.25.0"
+
"@babel/traverse@^7.1.6", "@babel/traverse@^7.12.11", "@babel/traverse@^7.12.9", "@babel/traverse@^7.13.0", "@babel/traverse@^7.20.0", "@babel/traverse@^7.20.13", "@babel/traverse@^7.20.5", "@babel/traverse@^7.23.0", "@babel/traverse@^7.24.5", "@babel/traverse@^7.4.5", "@babel/traverse@^7.9.0":
version "7.24.5"
resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.5.tgz#972aa0bc45f16983bf64aa1f877b2dd0eea7e6f8"
@@ -1482,6 +1580,19 @@
debug "^4.3.1"
globals "^11.1.0"
+"@babel/traverse@^7.24.7":
+ version "7.25.3"
+ resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.3.tgz#f1b901951c83eda2f3e29450ce92743783373490"
+ integrity sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ==
+ dependencies:
+ "@babel/code-frame" "^7.24.7"
+ "@babel/generator" "^7.25.0"
+ "@babel/parser" "^7.25.3"
+ "@babel/template" "^7.25.0"
+ "@babel/types" "^7.25.2"
+ debug "^4.3.1"
+ globals "^11.1.0"
+
"@babel/types@^7.0.0", "@babel/types@^7.12.11", "@babel/types@^7.12.7", "@babel/types@^7.2.0", "@babel/types@^7.20.0", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.4", "@babel/types@^7.24.0", "@babel/types@^7.24.5", "@babel/types@^7.3.3", "@babel/types@^7.4.4", "@babel/types@^7.9.0":
version "7.24.5"
resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.5.tgz#7661930afc638a5383eb0c4aee59b74f38db84d7"
@@ -1491,6 +1602,15 @@
"@babel/helper-validator-identifier" "^7.24.5"
to-fast-properties "^2.0.0"
+"@babel/types@^7.24.7", "@babel/types@^7.25.0", "@babel/types@^7.25.2":
+ version "7.25.2"
+ resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.2.tgz#55fb231f7dc958cd69ea141a4c2997e819646125"
+ integrity sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==
+ dependencies:
+ "@babel/helper-string-parser" "^7.24.8"
+ "@babel/helper-validator-identifier" "^7.24.7"
+ to-fast-properties "^2.0.0"
+
"@base2/pretty-print-object@1.0.1":
version "1.0.1"
resolved "https://registry.yarnpkg.com/@base2/pretty-print-object/-/pretty-print-object-1.0.1.tgz#371ba8be66d556812dc7fb169ebc3c08378f69d4"
@@ -2767,10 +2887,10 @@
react-native-svg "13.4.0"
react-native-web "^0.19.9"
-"@gorhom/bottom-sheet@^5.0.0-alpha.10":
- version "5.0.0-alpha.10"
- resolved "https://registry.yarnpkg.com/@gorhom/bottom-sheet/-/bottom-sheet-5.0.0-alpha.10.tgz#e3e828f41fc4d8497eba0b230a36edd3da199c48"
- integrity sha512-FjiNf2VtmCEWC4T6/1CHjNYHlgqq+eQAGp0jCSDm87nEWtzmvg6vhspttpRNqGCxj40//Z03BGw/JZR+AYhP0w==
+"@gorhom/bottom-sheet@^5.0.0-alpha.11":
+ version "5.0.0-alpha.11"
+ resolved "https://registry.yarnpkg.com/@gorhom/bottom-sheet/-/bottom-sheet-5.0.0-alpha.11.tgz#70c1b827c8b5ac95cebe6348ce1bcfe014a8137e"
+ integrity sha512-AQ4hN72NgFrW7EKz9N2CiuOj655csKi74OMO992z2+ds1rJ9c7EDF5HsJRtFpPA+cV9I03nqURMipi1u91OjRQ==
dependencies:
"@gorhom/portal" "1.0.14"
invariant "^2.2.4"
@@ -18629,15 +18749,14 @@ react-native-gesture-handler@^2.12.1:
lodash "^4.17.21"
prop-types "^15.7.2"
-react-native-gesture-handler@~2.14.0:
- version "2.14.1"
- resolved "https://registry.yarnpkg.com/react-native-gesture-handler/-/react-native-gesture-handler-2.14.1.tgz#930640231024b7921435ab476aa501dd4a6b2e01"
- integrity sha512-YiM1BApV4aKeuwsM6O4C2ufwewYEKk6VMXOt0YqEZFMwABBFWhXLySFZYjBSNRU2USGppJbfHP1q1DfFQpKhdA==
+react-native-gesture-handler@^2.16.1:
+ version "2.18.1"
+ resolved "https://registry.yarnpkg.com/react-native-gesture-handler/-/react-native-gesture-handler-2.18.1.tgz#ec9206f34cd2f34a66c0430b2c416d31ee6dff17"
+ integrity sha512-WF2fxQ5kTaxHghlkBM4YxO86SyGWVwrSNgJ1E8z/ZtL2xD5B3bg5agvuVFfOzvceC114yq71s6E9vKPz94ZxRw==
dependencies:
"@egjs/hammerjs" "^2.0.17"
hoist-non-react-statics "^3.3.0"
invariant "^2.2.4"
- lodash "^4.17.21"
prop-types "^15.7.2"
react-native-modal-datetime-picker@^14.0.0:
@@ -18654,12 +18773,16 @@ react-native-modal-selector@^2.1.1:
dependencies:
prop-types "^15.5.10"
-react-native-reanimated@~3.6.2:
- version "3.6.3"
- resolved "https://registry.yarnpkg.com/react-native-reanimated/-/react-native-reanimated-3.6.3.tgz#859cf2320e37c80e3a21e19db24f82c34d6d3ded"
- integrity sha512-2KkkPozoIvDbJcHuf8qeyoLROXQxizSi+2CTCkuNVkVZOxxY4B0Omvgq61aOQhSZUh/649x1YHoAaTyGMGDJUw==
- dependencies:
- "@babel/plugin-transform-object-assign" "^7.16.7"
+react-native-reanimated@3.10.0, react-native-reanimated@~3.6.2:
+ version "3.10.0"
+ resolved "https://registry.yarnpkg.com/react-native-reanimated/-/react-native-reanimated-3.10.0.tgz#7367f0ae9c79193315f4f1ef4d359bfac678a761"
+ integrity sha512-oiQiO+iJ8HTXTli94+Cl5R7nd+TzZf+3MYnMKWtnVDDCxFsqBgpkKO2Xp2ZhZyseXY/JDdH0//E7LlPQRRxpXg==
+ dependencies:
+ "@babel/plugin-transform-arrow-functions" "^7.0.0-0"
+ "@babel/plugin-transform-nullish-coalescing-operator" "^7.0.0-0"
+ "@babel/plugin-transform-optional-chaining" "^7.0.0-0"
+ "@babel/plugin-transform-shorthand-properties" "^7.0.0-0"
+ "@babel/plugin-transform-template-literals" "^7.0.0-0"
"@babel/preset-typescript" "^7.16.7"
convert-source-map "^2.0.0"
invariant "^2.2.4"