stream-chat-react-native-core 5.26.1-beta.3 → 5.27.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js +7 -11
- package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerIOSSelectMorePhotos.js +27 -0
- package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerIOSSelectMorePhotos.js.map +1 -0
- package/lib/commonjs/contexts/overlayContext/OverlayProvider.js +15 -11
- package/lib/commonjs/contexts/overlayContext/OverlayProvider.js.map +1 -1
- package/lib/commonjs/i18n/es.json +38 -38
- package/lib/commonjs/i18n/fr.json +38 -38
- package/lib/commonjs/i18n/he.json +38 -38
- package/lib/commonjs/i18n/hi.json +38 -38
- package/lib/commonjs/i18n/it.json +38 -38
- package/lib/commonjs/i18n/ja.json +38 -38
- package/lib/commonjs/i18n/ko.json +38 -38
- package/lib/commonjs/i18n/nl.json +38 -38
- package/lib/commonjs/i18n/pt-BR.json +38 -38
- package/lib/commonjs/i18n/ru.json +38 -38
- package/lib/commonjs/i18n/tr.json +38 -38
- package/lib/commonjs/index.js +7 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/utils/addReactionToLocalState.js +3 -2
- package/lib/commonjs/utils/addReactionToLocalState.js.map +1 -1
- package/lib/commonjs/version.json +1 -1
- package/lib/module/components/AttachmentPicker/AttachmentPicker.js +7 -11
- package/lib/module/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
- package/lib/module/components/AttachmentPicker/components/AttachmentPickerIOSSelectMorePhotos.js +27 -0
- package/lib/module/components/AttachmentPicker/components/AttachmentPickerIOSSelectMorePhotos.js.map +1 -0
- package/lib/module/contexts/overlayContext/OverlayProvider.js +15 -11
- package/lib/module/contexts/overlayContext/OverlayProvider.js.map +1 -1
- package/lib/module/i18n/es.json +38 -38
- package/lib/module/i18n/fr.json +38 -38
- package/lib/module/i18n/he.json +38 -38
- package/lib/module/i18n/hi.json +38 -38
- package/lib/module/i18n/it.json +38 -38
- package/lib/module/i18n/ja.json +38 -38
- package/lib/module/i18n/ko.json +38 -38
- package/lib/module/i18n/nl.json +38 -38
- package/lib/module/i18n/pt-BR.json +38 -38
- package/lib/module/i18n/ru.json +38 -38
- package/lib/module/i18n/tr.json +38 -38
- package/lib/module/index.js +7 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/utils/addReactionToLocalState.js +3 -2
- package/lib/module/utils/addReactionToLocalState.js.map +1 -1
- package/lib/module/version.json +1 -1
- package/lib/typescript/components/AttachmentPicker/AttachmentPicker.d.ts +4 -0
- package/lib/typescript/components/AttachmentPicker/components/AttachmentPickerIOSSelectMorePhotos.d.ts +2 -0
- package/lib/typescript/i18n/es.json +38 -38
- package/lib/typescript/i18n/fr.json +38 -38
- package/lib/typescript/i18n/he.json +38 -38
- package/lib/typescript/i18n/hi.json +38 -38
- package/lib/typescript/i18n/it.json +38 -38
- package/lib/typescript/i18n/ja.json +38 -38
- package/lib/typescript/i18n/ko.json +38 -38
- package/lib/typescript/i18n/nl.json +38 -38
- package/lib/typescript/i18n/pt-BR.json +38 -38
- package/lib/typescript/i18n/ru.json +38 -38
- package/lib/typescript/i18n/tr.json +38 -38
- package/lib/typescript/index.d.ts +1 -1
- package/package.json +1 -1
- package/src/components/AttachmentPicker/AttachmentPicker.tsx +8 -19
- package/src/components/AttachmentPicker/components/AttachmentPickerIOSSelectMorePhotos.tsx +10 -0
- package/src/contexts/overlayContext/OverlayProvider.tsx +3 -0
- package/src/i18n/es.json +38 -38
- package/src/i18n/fr.json +38 -38
- package/src/i18n/he.json +38 -38
- package/src/i18n/hi.json +38 -38
- package/src/i18n/it.json +38 -38
- package/src/i18n/ja.json +38 -38
- package/src/i18n/ko.json +38 -38
- package/src/i18n/nl.json +38 -38
- package/src/i18n/pt-BR.json +38 -38
- package/src/i18n/ru.json +38 -38
- package/src/i18n/tr.json +38 -38
- package/src/index.ts +1 -1
- package/src/utils/addReactionToLocalState.ts +7 -2
- package/src/version.json +1 -1
|
@@ -16,7 +16,6 @@ var _duration = _interopRequireDefault(require("dayjs/plugin/duration"));
|
|
|
16
16
|
var _AttachmentPickerItem = require("./components/AttachmentPickerItem");
|
|
17
17
|
var _AttachmentPickerContext = require("../../contexts/attachmentPickerContext/AttachmentPickerContext");
|
|
18
18
|
var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
|
|
19
|
-
var _TranslationContext = require("../../contexts/translationContext/TranslationContext");
|
|
20
19
|
var _useViewport2 = require("../../hooks/useViewport");
|
|
21
20
|
var _native = require("../../native");
|
|
22
21
|
var _this = this,
|
|
@@ -38,6 +37,7 @@ var AttachmentPicker = _react["default"].forwardRef(function (props, ref) {
|
|
|
38
37
|
attachmentPickerErrorButtonText = props.attachmentPickerErrorButtonText,
|
|
39
38
|
AttachmentPickerErrorImage = props.AttachmentPickerErrorImage,
|
|
40
39
|
attachmentPickerErrorText = props.attachmentPickerErrorText,
|
|
40
|
+
AttachmentPickerIOSSelectMorePhotos = props.AttachmentPickerIOSSelectMorePhotos,
|
|
41
41
|
ImageOverlaySelectedComponent = props.ImageOverlaySelectedComponent,
|
|
42
42
|
numberOfAttachmentImagesToLoadPerCall = props.numberOfAttachmentImagesToLoadPerCall,
|
|
43
43
|
numberOfAttachmentPickerImageColumns = props.numberOfAttachmentPickerImageColumns,
|
|
@@ -82,8 +82,6 @@ var AttachmentPicker = _react["default"].forwardRef(function (props, ref) {
|
|
|
82
82
|
photos = _useState10[0],
|
|
83
83
|
setPhotos = _useState10[1];
|
|
84
84
|
var attemptedToLoadPhotosOnOpenRef = (0, _react.useRef)(false);
|
|
85
|
-
var _useTranslationContex = (0, _TranslationContext.useTranslationContext)(),
|
|
86
|
-
t = _useTranslationContex.t;
|
|
87
85
|
var getMorePhotos = (0, _react.useCallback)((0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee() {
|
|
88
86
|
var endCursor, results;
|
|
89
87
|
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
@@ -251,17 +249,15 @@ var AttachmentPicker = _react["default"].forwardRef(function (props, ref) {
|
|
|
251
249
|
__self: _this,
|
|
252
250
|
__source: {
|
|
253
251
|
fileName: _jsxFileName,
|
|
254
|
-
lineNumber:
|
|
252
|
+
lineNumber: 301,
|
|
255
253
|
columnNumber: 9
|
|
256
254
|
}
|
|
257
|
-
}, iOSLimited && _react["default"].createElement(
|
|
258
|
-
onPress: _native.iOS14RefreshGallerySelection,
|
|
259
|
-
title: t('Select More Photos'),
|
|
255
|
+
}, iOSLimited && _react["default"].createElement(AttachmentPickerIOSSelectMorePhotos, {
|
|
260
256
|
__self: _this,
|
|
261
257
|
__source: {
|
|
262
258
|
fileName: _jsxFileName,
|
|
263
|
-
lineNumber:
|
|
264
|
-
columnNumber:
|
|
259
|
+
lineNumber: 317,
|
|
260
|
+
columnNumber: 26
|
|
265
261
|
}
|
|
266
262
|
}), _react["default"].createElement(_bottomSheet.BottomSheetFlatList, {
|
|
267
263
|
contentContainerStyle: [styles.container, {
|
|
@@ -279,7 +275,7 @@ var AttachmentPicker = _react["default"].forwardRef(function (props, ref) {
|
|
|
279
275
|
__self: _this,
|
|
280
276
|
__source: {
|
|
281
277
|
fileName: _jsxFileName,
|
|
282
|
-
lineNumber:
|
|
278
|
+
lineNumber: 318,
|
|
283
279
|
columnNumber: 11
|
|
284
280
|
}
|
|
285
281
|
})), selectedPicker === 'images' && photoError && _react["default"].createElement(AttachmentPickerError, {
|
|
@@ -290,7 +286,7 @@ var AttachmentPicker = _react["default"].forwardRef(function (props, ref) {
|
|
|
290
286
|
__self: _this,
|
|
291
287
|
__source: {
|
|
292
288
|
fileName: _jsxFileName,
|
|
293
|
-
lineNumber:
|
|
289
|
+
lineNumber: 333,
|
|
294
290
|
columnNumber: 11
|
|
295
291
|
}
|
|
296
292
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_bottomSheet","_dayjs","_interopRequireDefault","_duration","_AttachmentPickerItem","_AttachmentPickerContext","_ThemeContext","_TranslationContext","_useViewport2","_native","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","dayjs","extend","duration","styles","StyleSheet","create","container","flexGrow","fullScreenHeight","Dimensions","height","AttachmentPicker","React","forwardRef","props","ref","AttachmentPickerBottomSheetHandle","attachmentPickerBottomSheetHandleHeight","attachmentPickerBottomSheetHeight","AttachmentPickerError","attachmentPickerErrorButtonText","AttachmentPickerErrorImage","attachmentPickerErrorText","ImageOverlaySelectedComponent","numberOfAttachmentImagesToLoadPerCall","numberOfAttachmentPickerImageColumns","translucentStatusBar","_useTheme","useTheme","_useTheme$theme","theme","bottomSheetContentContainer","attachmentPicker","white","colors","_useAttachmentPickerC","useAttachmentPickerContext","closePicker","maxNumberOfFiles","selectedFiles","selectedImages","selectedPicker","setSelectedFiles","setSelectedImages","setSelectedPicker","topInset","_useViewport","useViewport","vh","screenHeight","_useState","useState","_useState2","_slicedToArray2","currentIndex","setCurrentIndex","endCursorRef","useRef","_useState3","_useState4","photoError","setPhotoError","_useState5","_useState6","iOSLimited","setIosLimited","hasNextPageRef","_useState7","_useState8","loadingPhotos","setLoadingPhotos","_useState9","_useState10","photos","setPhotos","attemptedToLoadPhotosOnOpenRef","_useTranslationContex","useTranslationContext","t","getMorePhotos","useCallback","_asyncToGenerator2","_regenerator","mark","_callee","endCursor","results","wrap","_callee$","_context","prev","next","current","getPhotos","after","first","sent","prevPhotos","concat","_toConsumableArray2","assets","hasNextPage","t0","stop","getMorePhotosRef","useEffect","_oniOS14GalleryLibrar","oniOS14GalleryLibrarySelectionChange","undefined","unsubscribe","backAction","backHandler","BackHandler","addEventListener","remove","onKeyboardOpenHandler","keyboardShowEvent","Platform","OS","keyboardSubscription","Keyboard","addListener","removeListener","selectedPhotos","map","asset","numberOfUploads","length","selected","some","image","id","uri","file","handleHeight","getAndroidBottomBarHeightAdjustment","_StatusBar$currentHei","statusBarHeight","StatusBar","currentHeight","bottomBarHeight","getInitialSnapPoint","initialSnapPoint","finalSnapPoint","snapPoints","useMemo","createElement","Fragment","containerHeight","enablePanDownToClose","handleComponent","index","onChange","__self","__source","fileName","lineNumber","columnNumber","Button","onPress","iOS14RefreshGallerySelection","title","BottomSheetFlatList","contentContainerStyle","backgroundColor","opacity","data","keyExtractor","item","numColumns","onEndReached","renderItem","renderAttachmentPickerItem","exports","displayName"],"sources":["AttachmentPicker.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport {\n BackHandler,\n Button,\n Dimensions,\n Keyboard,\n Platform,\n StatusBar,\n StyleSheet,\n} from 'react-native';\n\nimport BottomSheet, { BottomSheetFlatList, BottomSheetHandleProps } from '@gorhom/bottom-sheet';\nimport dayjs from 'dayjs';\nimport duration from 'dayjs/plugin/duration';\n\nimport type { AttachmentPickerErrorProps } from './components/AttachmentPickerError';\n\nimport { renderAttachmentPickerItem } from './components/AttachmentPickerItem';\n\nimport { useAttachmentPickerContext } from '../../contexts/attachmentPickerContext/AttachmentPickerContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { useTranslationContext } from '../../contexts/translationContext/TranslationContext';\nimport { useViewport } from '../../hooks/useViewport';\nimport {\n getPhotos,\n iOS14RefreshGallerySelection,\n oniOS14GalleryLibrarySelectionChange,\n} from '../../native';\nimport type { Asset } from '../../types/types';\n\ndayjs.extend(duration);\n\nconst styles = StyleSheet.create({\n container: {\n flexGrow: 1,\n },\n});\n\nconst fullScreenHeight = Dimensions.get('window').height;\n\nexport type AttachmentPickerProps = {\n /**\n * Custom UI component to render [draggable handle](https://github.com/GetStream/stream-chat-react-native/blob/main/screenshots/docs/1.png) of attachment picker.\n *\n * **Default** [AttachmentPickerBottomSheetHandle](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/AttachmentPicker/components/AttachmentPickerBottomSheetHandle.tsx)\n */\n AttachmentPickerBottomSheetHandle: React.FC<BottomSheetHandleProps>;\n /**\n * Custom UI component to render error component while opening attachment picker.\n *\n * **Default** [AttachmentPickerError](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/AttachmentPicker/components/AttachmentPickerError.tsx)\n */\n AttachmentPickerError: React.ComponentType<AttachmentPickerErrorProps>;\n /**\n * Custom UI component to render error image for attachment picker\n *\n * **Default** [AttachmentPickerErrorImage](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/AttachmentPicker/components/AttachmentPickerErrorImage.tsx)\n */\n AttachmentPickerErrorImage: React.ComponentType;\n /**\n * Custom UI component to render overlay component, that shows up on top of [selected image](https://github.com/GetStream/stream-chat-react-native/blob/main/screenshots/docs/1.png) (with tick mark)\n *\n * **Default** [ImageOverlaySelectedComponent](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/AttachmentPicker/components/ImageOverlaySelectedComponent.tsx)\n */\n ImageOverlaySelectedComponent: React.ComponentType;\n attachmentPickerBottomSheetHandleHeight?: number;\n attachmentPickerBottomSheetHeight?: number;\n attachmentPickerErrorButtonText?: string;\n attachmentPickerErrorText?: string;\n numberOfAttachmentImagesToLoadPerCall?: number;\n numberOfAttachmentPickerImageColumns?: number;\n translucentStatusBar?: boolean;\n};\n\nexport const AttachmentPicker = React.forwardRef(\n (props: AttachmentPickerProps, ref: React.ForwardedRef<BottomSheet>) => {\n const {\n AttachmentPickerBottomSheetHandle,\n attachmentPickerBottomSheetHandleHeight,\n attachmentPickerBottomSheetHeight,\n AttachmentPickerError,\n attachmentPickerErrorButtonText,\n AttachmentPickerErrorImage,\n attachmentPickerErrorText,\n ImageOverlaySelectedComponent,\n numberOfAttachmentImagesToLoadPerCall,\n numberOfAttachmentPickerImageColumns,\n translucentStatusBar,\n } = props;\n\n const {\n theme: {\n attachmentPicker: { bottomSheetContentContainer },\n colors: { white },\n },\n } = useTheme();\n const {\n closePicker,\n maxNumberOfFiles,\n selectedFiles,\n selectedImages,\n selectedPicker,\n setSelectedFiles,\n setSelectedImages,\n setSelectedPicker,\n topInset,\n } = useAttachmentPickerContext();\n const { vh } = useViewport();\n\n const screenHeight = vh(100);\n\n const [currentIndex, setCurrentIndex] = useState(-1);\n const endCursorRef = useRef<string>();\n const [photoError, setPhotoError] = useState(false);\n const [iOSLimited, setIosLimited] = useState(false);\n const hasNextPageRef = useRef(true);\n const [loadingPhotos, setLoadingPhotos] = useState(false);\n const [photos, setPhotos] = useState<Asset[]>([]);\n const attemptedToLoadPhotosOnOpenRef = useRef(false);\n const { t } = useTranslationContext();\n\n const getMorePhotos = useCallback(async () => {\n if (\n hasNextPageRef.current &&\n !loadingPhotos &&\n currentIndex > -1 &&\n selectedPicker === 'images'\n ) {\n setPhotoError(false);\n setLoadingPhotos(true);\n const endCursor = endCursorRef.current;\n try {\n const results = await getPhotos({\n after: endCursor,\n first: numberOfAttachmentImagesToLoadPerCall ?? 60,\n });\n endCursorRef.current = results.endCursor;\n setPhotos((prevPhotos) =>\n endCursor ? [...prevPhotos, ...results.assets] : results.assets,\n );\n setIosLimited(results.iOSLimited);\n hasNextPageRef.current = !!results.hasNextPage;\n } catch (error) {\n setPhotoError(true);\n }\n setLoadingPhotos(false);\n }\n }, [currentIndex, selectedPicker, loadingPhotos]);\n\n // we need to use ref here to avoid running effect when getMorePhotos changes\n const getMorePhotosRef = useRef(getMorePhotos);\n getMorePhotosRef.current = getMorePhotos;\n\n useEffect(() => {\n if (selectedPicker !== 'images') return;\n // ios 14 library selection change event is fired when user reselects the images that are permitted to be readable by the app\n const { unsubscribe } = oniOS14GalleryLibrarySelectionChange(() => {\n // we reset the cursor and has next page to true to facilitate fetching of the first page of photos again\n hasNextPageRef.current = true;\n endCursorRef.current = undefined;\n // fetch the first page of photos again\n getMorePhotosRef.current();\n });\n return unsubscribe;\n }, [selectedPicker]);\n\n useEffect(() => {\n const backAction = () => {\n if (selectedPicker) {\n setSelectedPicker(undefined);\n closePicker();\n return true;\n }\n\n return false;\n };\n\n const backHandler = BackHandler.addEventListener('hardwareBackPress', backAction);\n\n return () => backHandler.remove();\n }, [selectedPicker, closePicker]);\n\n useEffect(() => {\n const onKeyboardOpenHandler = () => {\n if (selectedPicker) {\n setSelectedPicker(undefined);\n }\n closePicker();\n };\n const keyboardShowEvent = Platform.OS === 'ios' ? 'keyboardWillShow' : 'keyboardDidShow';\n const keyboardSubscription = Keyboard.addListener(keyboardShowEvent, onKeyboardOpenHandler);\n\n return () => {\n if (keyboardSubscription?.remove) {\n keyboardSubscription.remove();\n return;\n }\n\n // To keep compatibility with older versions of React Native, where `remove()` is not available\n Keyboard.removeListener(keyboardShowEvent, onKeyboardOpenHandler);\n };\n }, [closePicker, selectedPicker]);\n\n useEffect(() => {\n if (currentIndex < 0) {\n setSelectedPicker(undefined);\n if (!loadingPhotos) {\n endCursorRef.current = undefined;\n hasNextPageRef.current = true;\n attemptedToLoadPhotosOnOpenRef.current = false;\n setPhotoError(false);\n }\n }\n }, [currentIndex, loadingPhotos]);\n\n useEffect(() => {\n if (\n !attemptedToLoadPhotosOnOpenRef.current &&\n selectedPicker === 'images' &&\n endCursorRef.current === undefined &&\n currentIndex > -1 &&\n !loadingPhotos\n ) {\n getMorePhotos();\n // we do this only once on open for avoiding to request permissions in rationale dialog again and again on Android\n attemptedToLoadPhotosOnOpenRef.current = true;\n }\n }, [currentIndex, selectedPicker, getMorePhotos, loadingPhotos]);\n\n const selectedPhotos = photos.map((asset) => ({\n asset,\n ImageOverlaySelectedComponent,\n maxNumberOfFiles,\n numberOfAttachmentPickerImageColumns,\n numberOfUploads: selectedFiles.length + selectedImages.length,\n // `id` is available for Expo MediaLibrary while Cameraroll doesn't share id therefore we use `uri`\n selected:\n selectedImages.some((image) =>\n image.id ? image.id === asset.id : image.uri === asset.uri,\n ) ||\n selectedFiles.some((file) => (file.id ? file.id === asset.id : file.uri === asset.uri)),\n selectedFiles,\n selectedImages,\n setSelectedFiles,\n setSelectedImages,\n }));\n\n const handleHeight = attachmentPickerBottomSheetHandleHeight || 20;\n\n /**\n * This is to handle issues with Android measurements coming back incorrect.\n * If the StatusBar height is perfectly 1/2 of the difference between the two\n * dimensions for screen and window, it is incorrect and we need to account for\n * this. If you use a translucent header bar more adjustments are needed.\n */\n const getAndroidBottomBarHeightAdjustment = (): number => {\n if (Platform.OS === 'android') {\n const statusBarHeight = StatusBar.currentHeight ?? 0;\n const bottomBarHeight = fullScreenHeight - screenHeight - statusBarHeight;\n if (bottomBarHeight === statusBarHeight) {\n return translucentStatusBar ? 0 : statusBarHeight;\n } else {\n if (translucentStatusBar) {\n if (bottomBarHeight > statusBarHeight) {\n return -bottomBarHeight + statusBarHeight;\n } else {\n return bottomBarHeight > 0 ? -statusBarHeight : 0;\n }\n } else {\n return bottomBarHeight > 0 ? 0 : statusBarHeight;\n }\n }\n }\n return 0;\n };\n\n const getInitialSnapPoint = (): number => {\n if (attachmentPickerBottomSheetHeight !== undefined) {\n return attachmentPickerBottomSheetHeight;\n }\n if (Platform.OS === 'android') {\n return (\n 308 +\n (fullScreenHeight - screenHeight + getAndroidBottomBarHeightAdjustment()) -\n handleHeight\n );\n } else {\n return 308 + (fullScreenHeight - screenHeight);\n }\n };\n\n const initialSnapPoint = getInitialSnapPoint();\n\n const finalSnapPoint =\n Platform.OS === 'android'\n ? fullScreenHeight - topInset - handleHeight\n : fullScreenHeight - topInset;\n\n /**\n * Snap points changing cause a rerender of the position,\n * this is an issue if you are calling close on the bottom sheet.\n */\n const snapPoints = useMemo(\n () => [initialSnapPoint, finalSnapPoint],\n [initialSnapPoint, finalSnapPoint],\n );\n\n return (\n <>\n <BottomSheet\n containerHeight={fullScreenHeight}\n enablePanDownToClose={true}\n handleComponent={\n /**\n * using `null` here instead of `style={{ opacity: photoError ? 0 : 1 }}`\n * as opacity is not an allowed style\n */\n photoError ? null : AttachmentPickerBottomSheetHandle\n }\n handleHeight={handleHeight}\n index={-1}\n onChange={setCurrentIndex}\n ref={ref}\n snapPoints={snapPoints}\n >\n {iOSLimited && (\n <Button onPress={iOS14RefreshGallerySelection} title={t('Select More Photos')} />\n )}\n <BottomSheetFlatList\n contentContainerStyle={[\n styles.container,\n { backgroundColor: white },\n bottomSheetContentContainer,\n { opacity: photoError ? 0 : 1 },\n ]}\n data={selectedPhotos}\n keyExtractor={(item) => item.asset.uri}\n numColumns={numberOfAttachmentPickerImageColumns ?? 3}\n onEndReached={photoError ? undefined : getMorePhotos}\n renderItem={renderAttachmentPickerItem}\n />\n </BottomSheet>\n {selectedPicker === 'images' && photoError && (\n <AttachmentPickerError\n attachmentPickerBottomSheetHeight={initialSnapPoint}\n attachmentPickerErrorButtonText={attachmentPickerErrorButtonText}\n AttachmentPickerErrorImage={AttachmentPickerErrorImage}\n attachmentPickerErrorText={attachmentPickerErrorText}\n />\n )}\n </>\n );\n },\n);\n\nAttachmentPicker.displayName = 'AttachmentPicker';\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_bottomSheet","_dayjs","_interopRequireDefault","_duration","_AttachmentPickerItem","_AttachmentPickerContext","_ThemeContext","_useViewport2","_native","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","dayjs","extend","duration","styles","StyleSheet","create","container","flexGrow","fullScreenHeight","Dimensions","height","AttachmentPicker","React","forwardRef","props","ref","AttachmentPickerBottomSheetHandle","attachmentPickerBottomSheetHandleHeight","attachmentPickerBottomSheetHeight","AttachmentPickerError","attachmentPickerErrorButtonText","AttachmentPickerErrorImage","attachmentPickerErrorText","AttachmentPickerIOSSelectMorePhotos","ImageOverlaySelectedComponent","numberOfAttachmentImagesToLoadPerCall","numberOfAttachmentPickerImageColumns","translucentStatusBar","_useTheme","useTheme","_useTheme$theme","theme","bottomSheetContentContainer","attachmentPicker","white","colors","_useAttachmentPickerC","useAttachmentPickerContext","closePicker","maxNumberOfFiles","selectedFiles","selectedImages","selectedPicker","setSelectedFiles","setSelectedImages","setSelectedPicker","topInset","_useViewport","useViewport","vh","screenHeight","_useState","useState","_useState2","_slicedToArray2","currentIndex","setCurrentIndex","endCursorRef","useRef","_useState3","_useState4","photoError","setPhotoError","_useState5","_useState6","iOSLimited","setIosLimited","hasNextPageRef","_useState7","_useState8","loadingPhotos","setLoadingPhotos","_useState9","_useState10","photos","setPhotos","attemptedToLoadPhotosOnOpenRef","getMorePhotos","useCallback","_asyncToGenerator2","_regenerator","mark","_callee","endCursor","results","wrap","_callee$","_context","prev","next","current","getPhotos","after","first","sent","prevPhotos","concat","_toConsumableArray2","assets","hasNextPage","t0","stop","getMorePhotosRef","useEffect","_oniOS14GalleryLibrar","oniOS14GalleryLibrarySelectionChange","undefined","unsubscribe","backAction","backHandler","BackHandler","addEventListener","remove","onKeyboardOpenHandler","keyboardShowEvent","Platform","OS","keyboardSubscription","Keyboard","addListener","removeListener","selectedPhotos","map","asset","numberOfUploads","length","selected","some","image","id","uri","file","handleHeight","getAndroidBottomBarHeightAdjustment","_StatusBar$currentHei","statusBarHeight","StatusBar","currentHeight","bottomBarHeight","getInitialSnapPoint","initialSnapPoint","finalSnapPoint","snapPoints","useMemo","createElement","Fragment","containerHeight","enablePanDownToClose","handleComponent","index","onChange","__self","__source","fileName","lineNumber","columnNumber","BottomSheetFlatList","contentContainerStyle","backgroundColor","opacity","data","keyExtractor","item","numColumns","onEndReached","renderItem","renderAttachmentPickerItem","exports","displayName"],"sources":["AttachmentPicker.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { BackHandler, Dimensions, Keyboard, Platform, StatusBar, StyleSheet } from 'react-native';\n\nimport BottomSheet, { BottomSheetFlatList, BottomSheetHandleProps } from '@gorhom/bottom-sheet';\nimport dayjs from 'dayjs';\nimport duration from 'dayjs/plugin/duration';\n\nimport type { AttachmentPickerErrorProps } from './components/AttachmentPickerError';\n\nimport { renderAttachmentPickerItem } from './components/AttachmentPickerItem';\n\nimport { useAttachmentPickerContext } from '../../contexts/attachmentPickerContext/AttachmentPickerContext';\nimport { useTheme } from '../../contexts/themeContext/ThemeContext';\nimport { useViewport } from '../../hooks/useViewport';\nimport { getPhotos, oniOS14GalleryLibrarySelectionChange } from '../../native';\nimport type { Asset } from '../../types/types';\n\ndayjs.extend(duration);\n\nconst styles = StyleSheet.create({\n container: {\n flexGrow: 1,\n },\n});\n\nconst fullScreenHeight = Dimensions.get('window').height;\n\nexport type AttachmentPickerProps = {\n /**\n * Custom UI component to render [draggable handle](https://github.com/GetStream/stream-chat-react-native/blob/main/screenshots/docs/1.png) of attachment picker.\n *\n * **Default** [AttachmentPickerBottomSheetHandle](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/AttachmentPicker/components/AttachmentPickerBottomSheetHandle.tsx)\n */\n AttachmentPickerBottomSheetHandle: React.FC<BottomSheetHandleProps>;\n /**\n * Custom UI component to render error component while opening attachment picker.\n *\n * **Default** [AttachmentPickerError](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/AttachmentPicker/components/AttachmentPickerError.tsx)\n */\n AttachmentPickerError: React.ComponentType<AttachmentPickerErrorProps>;\n /**\n * Custom UI component to render error image for attachment picker\n *\n * **Default** [AttachmentPickerErrorImage](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/AttachmentPicker/components/AttachmentPickerErrorImage.tsx)\n */\n AttachmentPickerErrorImage: React.ComponentType;\n /**\n * Custom UI Component to render select more photos for selected gallery access in iOS.\n */\n AttachmentPickerIOSSelectMorePhotos: React.ComponentType;\n /**\n * Custom UI component to render overlay component, that shows up on top of [selected image](https://github.com/GetStream/stream-chat-react-native/blob/main/screenshots/docs/1.png) (with tick mark)\n *\n * **Default** [ImageOverlaySelectedComponent](https://github.com/GetStream/stream-chat-react-native/blob/main/package/src/components/AttachmentPicker/components/ImageOverlaySelectedComponent.tsx)\n */\n ImageOverlaySelectedComponent: React.ComponentType;\n attachmentPickerBottomSheetHandleHeight?: number;\n attachmentPickerBottomSheetHeight?: number;\n attachmentPickerErrorButtonText?: string;\n attachmentPickerErrorText?: string;\n numberOfAttachmentImagesToLoadPerCall?: number;\n numberOfAttachmentPickerImageColumns?: number;\n translucentStatusBar?: boolean;\n};\n\nexport const AttachmentPicker = React.forwardRef(\n (props: AttachmentPickerProps, ref: React.ForwardedRef<BottomSheet>) => {\n const {\n AttachmentPickerBottomSheetHandle,\n attachmentPickerBottomSheetHandleHeight,\n attachmentPickerBottomSheetHeight,\n AttachmentPickerError,\n attachmentPickerErrorButtonText,\n AttachmentPickerErrorImage,\n attachmentPickerErrorText,\n AttachmentPickerIOSSelectMorePhotos,\n ImageOverlaySelectedComponent,\n numberOfAttachmentImagesToLoadPerCall,\n numberOfAttachmentPickerImageColumns,\n translucentStatusBar,\n } = props;\n\n const {\n theme: {\n attachmentPicker: { bottomSheetContentContainer },\n colors: { white },\n },\n } = useTheme();\n const {\n closePicker,\n maxNumberOfFiles,\n selectedFiles,\n selectedImages,\n selectedPicker,\n setSelectedFiles,\n setSelectedImages,\n setSelectedPicker,\n topInset,\n } = useAttachmentPickerContext();\n const { vh } = useViewport();\n\n const screenHeight = vh(100);\n\n const [currentIndex, setCurrentIndex] = useState(-1);\n const endCursorRef = useRef<string>();\n const [photoError, setPhotoError] = useState(false);\n const [iOSLimited, setIosLimited] = useState(false);\n const hasNextPageRef = useRef(true);\n const [loadingPhotos, setLoadingPhotos] = useState(false);\n const [photos, setPhotos] = useState<Asset[]>([]);\n const attemptedToLoadPhotosOnOpenRef = useRef(false);\n\n const getMorePhotos = useCallback(async () => {\n if (\n hasNextPageRef.current &&\n !loadingPhotos &&\n currentIndex > -1 &&\n selectedPicker === 'images'\n ) {\n setPhotoError(false);\n setLoadingPhotos(true);\n const endCursor = endCursorRef.current;\n try {\n const results = await getPhotos({\n after: endCursor,\n first: numberOfAttachmentImagesToLoadPerCall ?? 60,\n });\n endCursorRef.current = results.endCursor;\n setPhotos((prevPhotos) =>\n endCursor ? [...prevPhotos, ...results.assets] : results.assets,\n );\n setIosLimited(results.iOSLimited);\n hasNextPageRef.current = !!results.hasNextPage;\n } catch (error) {\n setPhotoError(true);\n }\n setLoadingPhotos(false);\n }\n }, [currentIndex, selectedPicker, loadingPhotos]);\n\n // we need to use ref here to avoid running effect when getMorePhotos changes\n const getMorePhotosRef = useRef(getMorePhotos);\n getMorePhotosRef.current = getMorePhotos;\n\n useEffect(() => {\n if (selectedPicker !== 'images') return;\n // ios 14 library selection change event is fired when user reselects the images that are permitted to be readable by the app\n const { unsubscribe } = oniOS14GalleryLibrarySelectionChange(() => {\n // we reset the cursor and has next page to true to facilitate fetching of the first page of photos again\n hasNextPageRef.current = true;\n endCursorRef.current = undefined;\n // fetch the first page of photos again\n getMorePhotosRef.current();\n });\n return unsubscribe;\n }, [selectedPicker]);\n\n useEffect(() => {\n const backAction = () => {\n if (selectedPicker) {\n setSelectedPicker(undefined);\n closePicker();\n return true;\n }\n\n return false;\n };\n\n const backHandler = BackHandler.addEventListener('hardwareBackPress', backAction);\n\n return () => backHandler.remove();\n }, [selectedPicker, closePicker]);\n\n useEffect(() => {\n const onKeyboardOpenHandler = () => {\n if (selectedPicker) {\n setSelectedPicker(undefined);\n }\n closePicker();\n };\n const keyboardShowEvent = Platform.OS === 'ios' ? 'keyboardWillShow' : 'keyboardDidShow';\n const keyboardSubscription = Keyboard.addListener(keyboardShowEvent, onKeyboardOpenHandler);\n\n return () => {\n if (keyboardSubscription?.remove) {\n keyboardSubscription.remove();\n return;\n }\n\n // To keep compatibility with older versions of React Native, where `remove()` is not available\n Keyboard.removeListener(keyboardShowEvent, onKeyboardOpenHandler);\n };\n }, [closePicker, selectedPicker]);\n\n useEffect(() => {\n if (currentIndex < 0) {\n setSelectedPicker(undefined);\n if (!loadingPhotos) {\n endCursorRef.current = undefined;\n hasNextPageRef.current = true;\n attemptedToLoadPhotosOnOpenRef.current = false;\n setPhotoError(false);\n }\n }\n }, [currentIndex, loadingPhotos]);\n\n useEffect(() => {\n if (\n !attemptedToLoadPhotosOnOpenRef.current &&\n selectedPicker === 'images' &&\n endCursorRef.current === undefined &&\n currentIndex > -1 &&\n !loadingPhotos\n ) {\n getMorePhotos();\n // we do this only once on open for avoiding to request permissions in rationale dialog again and again on Android\n attemptedToLoadPhotosOnOpenRef.current = true;\n }\n }, [currentIndex, selectedPicker, getMorePhotos, loadingPhotos]);\n\n const selectedPhotos = photos.map((asset) => ({\n asset,\n ImageOverlaySelectedComponent,\n maxNumberOfFiles,\n numberOfAttachmentPickerImageColumns,\n numberOfUploads: selectedFiles.length + selectedImages.length,\n // `id` is available for Expo MediaLibrary while Cameraroll doesn't share id therefore we use `uri`\n selected:\n selectedImages.some((image) =>\n image.id ? image.id === asset.id : image.uri === asset.uri,\n ) ||\n selectedFiles.some((file) => (file.id ? file.id === asset.id : file.uri === asset.uri)),\n selectedFiles,\n selectedImages,\n setSelectedFiles,\n setSelectedImages,\n }));\n\n const handleHeight = attachmentPickerBottomSheetHandleHeight || 20;\n\n /**\n * This is to handle issues with Android measurements coming back incorrect.\n * If the StatusBar height is perfectly 1/2 of the difference between the two\n * dimensions for screen and window, it is incorrect and we need to account for\n * this. If you use a translucent header bar more adjustments are needed.\n */\n const getAndroidBottomBarHeightAdjustment = (): number => {\n if (Platform.OS === 'android') {\n const statusBarHeight = StatusBar.currentHeight ?? 0;\n const bottomBarHeight = fullScreenHeight - screenHeight - statusBarHeight;\n if (bottomBarHeight === statusBarHeight) {\n return translucentStatusBar ? 0 : statusBarHeight;\n } else {\n if (translucentStatusBar) {\n if (bottomBarHeight > statusBarHeight) {\n return -bottomBarHeight + statusBarHeight;\n } else {\n return bottomBarHeight > 0 ? -statusBarHeight : 0;\n }\n } else {\n return bottomBarHeight > 0 ? 0 : statusBarHeight;\n }\n }\n }\n return 0;\n };\n\n const getInitialSnapPoint = (): number => {\n if (attachmentPickerBottomSheetHeight !== undefined) {\n return attachmentPickerBottomSheetHeight;\n }\n if (Platform.OS === 'android') {\n return (\n 308 +\n (fullScreenHeight - screenHeight + getAndroidBottomBarHeightAdjustment()) -\n handleHeight\n );\n } else {\n return 308 + (fullScreenHeight - screenHeight);\n }\n };\n\n const initialSnapPoint = getInitialSnapPoint();\n\n const finalSnapPoint =\n Platform.OS === 'android'\n ? fullScreenHeight - topInset - handleHeight\n : fullScreenHeight - topInset;\n\n /**\n * Snap points changing cause a rerender of the position,\n * this is an issue if you are calling close on the bottom sheet.\n */\n const snapPoints = useMemo(\n () => [initialSnapPoint, finalSnapPoint],\n [initialSnapPoint, finalSnapPoint],\n );\n\n return (\n <>\n <BottomSheet\n containerHeight={fullScreenHeight}\n enablePanDownToClose={true}\n handleComponent={\n /**\n * using `null` here instead of `style={{ opacity: photoError ? 0 : 1 }}`\n * as opacity is not an allowed style\n */\n photoError ? null : AttachmentPickerBottomSheetHandle\n }\n handleHeight={handleHeight}\n index={-1}\n onChange={setCurrentIndex}\n ref={ref}\n snapPoints={snapPoints}\n >\n {iOSLimited && <AttachmentPickerIOSSelectMorePhotos />}\n <BottomSheetFlatList\n contentContainerStyle={[\n styles.container,\n { backgroundColor: white },\n bottomSheetContentContainer,\n { opacity: photoError ? 0 : 1 },\n ]}\n data={selectedPhotos}\n keyExtractor={(item) => item.asset.uri}\n numColumns={numberOfAttachmentPickerImageColumns ?? 3}\n onEndReached={photoError ? undefined : getMorePhotos}\n renderItem={renderAttachmentPickerItem}\n />\n </BottomSheet>\n {selectedPicker === 'images' && photoError && (\n <AttachmentPickerError\n attachmentPickerBottomSheetHeight={initialSnapPoint}\n attachmentPickerErrorButtonText={attachmentPickerErrorButtonText}\n AttachmentPickerErrorImage={AttachmentPickerErrorImage}\n attachmentPickerErrorText={attachmentPickerErrorText}\n />\n )}\n </>\n );\n },\n);\n\nAttachmentPicker.displayName = 'AttachmentPicker';\n"],"mappings":"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"}
|
package/lib/commonjs/components/AttachmentPicker/components/AttachmentPickerIOSSelectMorePhotos.js
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
exports.AttachmentPickerIOSSelectMorePhotos = void 0;
|
|
6
|
+
var _react = _interopRequireDefault(require("react"));
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
var _TranslationContext = require("../../../contexts/translationContext/TranslationContext");
|
|
9
|
+
var _native = require("../../../native");
|
|
10
|
+
var _this = this,
|
|
11
|
+
_jsxFileName = "/home/runner/work/stream-chat-react-native/stream-chat-react-native/package/src/components/AttachmentPicker/components/AttachmentPickerIOSSelectMorePhotos.tsx";
|
|
12
|
+
var AttachmentPickerIOSSelectMorePhotos = function AttachmentPickerIOSSelectMorePhotos() {
|
|
13
|
+
var _useTranslationContex = (0, _TranslationContext.useTranslationContext)(),
|
|
14
|
+
t = _useTranslationContex.t;
|
|
15
|
+
return _react["default"].createElement(_reactNative.Button, {
|
|
16
|
+
onPress: _native.iOS14RefreshGallerySelection,
|
|
17
|
+
title: t('Select More Photos'),
|
|
18
|
+
__self: _this,
|
|
19
|
+
__source: {
|
|
20
|
+
fileName: _jsxFileName,
|
|
21
|
+
lineNumber: 9,
|
|
22
|
+
columnNumber: 10
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
exports.AttachmentPickerIOSSelectMorePhotos = AttachmentPickerIOSSelectMorePhotos;
|
|
27
|
+
//# sourceMappingURL=AttachmentPickerIOSSelectMorePhotos.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_TranslationContext","_native","_this","_jsxFileName","AttachmentPickerIOSSelectMorePhotos","_useTranslationContex","useTranslationContext","t","createElement","Button","onPress","iOS14RefreshGallerySelection","title","__self","__source","fileName","lineNumber","columnNumber","exports"],"sources":["AttachmentPickerIOSSelectMorePhotos.tsx"],"sourcesContent":["import React from 'react';\nimport { Button } from 'react-native';\n\nimport { useTranslationContext } from '../../../contexts/translationContext/TranslationContext';\nimport { iOS14RefreshGallerySelection } from '../../../native';\n\nexport const AttachmentPickerIOSSelectMorePhotos = () => {\n const { t } = useTranslationContext();\n return <Button onPress={iOS14RefreshGallerySelection} title={t('Select More Photos')} />;\n};\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,mBAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAA+D,IAAAI,KAAA;EAAAC,YAAA;AAExD,IAAMC,mCAAmC,GAAG,SAAtCA,mCAAmCA,CAAA,EAAS;EACvD,IAAAC,qBAAA,GAAc,IAAAC,yCAAqB,EAAC,CAAC;IAA7BC,CAAC,GAAAF,qBAAA,CAADE,CAAC;EACT,OAAOX,MAAA,YAAAY,aAAA,CAACT,YAAA,CAAAU,MAAM;IAACC,OAAO,EAAEC,oCAA6B;IAACC,KAAK,EAAEL,CAAC,CAAC,oBAAoB,CAAE;IAAAM,MAAA,EAAAX,KAAA;IAAAY,QAAA;MAAAC,QAAA,EAAAZ,YAAA;MAAAa,UAAA;MAAAC,YAAA;IAAA;EAAA,CAAE,CAAC;AAC1F,CAAC;AAACC,OAAA,CAAAd,mCAAA,GAAAA,mCAAA"}
|
|
@@ -14,6 +14,7 @@ var _AttachmentPicker = require("../../components/AttachmentPicker/AttachmentPic
|
|
|
14
14
|
var _AttachmentPickerBottomSheetHandle = require("../../components/AttachmentPicker/components/AttachmentPickerBottomSheetHandle");
|
|
15
15
|
var _AttachmentPickerError = require("../../components/AttachmentPicker/components/AttachmentPickerError");
|
|
16
16
|
var _AttachmentPickerErrorImage = require("../../components/AttachmentPicker/components/AttachmentPickerErrorImage");
|
|
17
|
+
var _AttachmentPickerIOSSelectMorePhotos = require("../../components/AttachmentPicker/components/AttachmentPickerIOSSelectMorePhotos");
|
|
17
18
|
var _CameraSelectorIcon = require("../../components/AttachmentPicker/components/CameraSelectorIcon");
|
|
18
19
|
var _FileSelectorIcon = require("../../components/AttachmentPicker/components/FileSelectorIcon");
|
|
19
20
|
var _ImageOverlaySelectedComponent = require("../../components/AttachmentPicker/components/ImageOverlaySelectedComponent");
|
|
@@ -45,6 +46,8 @@ var OverlayProvider = function OverlayProvider(props) {
|
|
|
45
46
|
AttachmentPickerErrorImage = _props$AttachmentPick3 === void 0 ? _AttachmentPickerErrorImage.AttachmentPickerErrorImage : _props$AttachmentPick3,
|
|
46
47
|
attachmentPickerErrorText = props.attachmentPickerErrorText,
|
|
47
48
|
attachmentSelectionBarHeight = props.attachmentSelectionBarHeight,
|
|
49
|
+
_props$AttachmentPick4 = props.AttachmentPickerIOSSelectMorePhotos,
|
|
50
|
+
AttachmentPickerIOSSelectMorePhotos = _props$AttachmentPick4 === void 0 ? _AttachmentPickerIOSSelectMorePhotos.AttachmentPickerIOSSelectMorePhotos : _props$AttachmentPick4,
|
|
48
51
|
bottomInset = props.bottomInset,
|
|
49
52
|
_props$CameraSelector = props.CameraSelectorIcon,
|
|
50
53
|
CameraSelectorIcon = _props$CameraSelector === void 0 ? _CameraSelectorIcon.CameraSelectorIcon : _props$CameraSelector,
|
|
@@ -106,6 +109,7 @@ var OverlayProvider = function OverlayProvider(props) {
|
|
|
106
109
|
attachmentPickerErrorButtonText: attachmentPickerErrorButtonText,
|
|
107
110
|
AttachmentPickerErrorImage: AttachmentPickerErrorImage,
|
|
108
111
|
attachmentPickerErrorText: attachmentPickerErrorText,
|
|
112
|
+
AttachmentPickerIOSSelectMorePhotos: AttachmentPickerIOSSelectMorePhotos,
|
|
109
113
|
attachmentSelectionBarHeight: attachmentSelectionBarHeight,
|
|
110
114
|
ImageOverlaySelectedComponent: ImageOverlaySelectedComponent,
|
|
111
115
|
numberOfAttachmentImagesToLoadPerCall: numberOfAttachmentImagesToLoadPerCall,
|
|
@@ -184,7 +188,7 @@ var OverlayProvider = function OverlayProvider(props) {
|
|
|
184
188
|
__self: _this,
|
|
185
189
|
__source: {
|
|
186
190
|
fileName: _jsxFileName,
|
|
187
|
-
lineNumber:
|
|
191
|
+
lineNumber: 218,
|
|
188
192
|
columnNumber: 5
|
|
189
193
|
}
|
|
190
194
|
}, _react["default"].createElement(_OverlayContext.OverlayContext.Provider, {
|
|
@@ -192,14 +196,14 @@ var OverlayProvider = function OverlayProvider(props) {
|
|
|
192
196
|
__self: _this,
|
|
193
197
|
__source: {
|
|
194
198
|
fileName: _jsxFileName,
|
|
195
|
-
lineNumber:
|
|
199
|
+
lineNumber: 219,
|
|
196
200
|
columnNumber: 7
|
|
197
201
|
}
|
|
198
202
|
}, _react["default"].createElement(_MessageOverlayContext.MessageOverlayProvider, {
|
|
199
203
|
__self: _this,
|
|
200
204
|
__source: {
|
|
201
205
|
fileName: _jsxFileName,
|
|
202
|
-
lineNumber:
|
|
206
|
+
lineNumber: 220,
|
|
203
207
|
columnNumber: 9
|
|
204
208
|
}
|
|
205
209
|
}, _react["default"].createElement(_AttachmentPickerContext.AttachmentPickerProvider, {
|
|
@@ -207,14 +211,14 @@ var OverlayProvider = function OverlayProvider(props) {
|
|
|
207
211
|
__self: _this,
|
|
208
212
|
__source: {
|
|
209
213
|
fileName: _jsxFileName,
|
|
210
|
-
lineNumber:
|
|
214
|
+
lineNumber: 221,
|
|
211
215
|
columnNumber: 11
|
|
212
216
|
}
|
|
213
217
|
}, _react["default"].createElement(_ImageGalleryContext.ImageGalleryProvider, {
|
|
214
218
|
__self: _this,
|
|
215
219
|
__source: {
|
|
216
220
|
fileName: _jsxFileName,
|
|
217
|
-
lineNumber:
|
|
221
|
+
lineNumber: 222,
|
|
218
222
|
columnNumber: 13
|
|
219
223
|
}
|
|
220
224
|
}, children, _react["default"].createElement(_ThemeContext.ThemeProvider, {
|
|
@@ -222,7 +226,7 @@ var OverlayProvider = function OverlayProvider(props) {
|
|
|
222
226
|
__self: _this,
|
|
223
227
|
__source: {
|
|
224
228
|
fileName: _jsxFileName,
|
|
225
|
-
lineNumber:
|
|
229
|
+
lineNumber: 224,
|
|
226
230
|
columnNumber: 15
|
|
227
231
|
}
|
|
228
232
|
}, _react["default"].createElement(_reactNativeReanimated["default"].View, {
|
|
@@ -231,7 +235,7 @@ var OverlayProvider = function OverlayProvider(props) {
|
|
|
231
235
|
__self: _this,
|
|
232
236
|
__source: {
|
|
233
237
|
fileName: _jsxFileName,
|
|
234
|
-
lineNumber:
|
|
238
|
+
lineNumber: 225,
|
|
235
239
|
columnNumber: 17
|
|
236
240
|
}
|
|
237
241
|
}, _react["default"].createElement(_OverlayBackdrop.OverlayBackdrop, {
|
|
@@ -242,7 +246,7 @@ var OverlayProvider = function OverlayProvider(props) {
|
|
|
242
246
|
__self: _this,
|
|
243
247
|
__source: {
|
|
244
248
|
fileName: _jsxFileName,
|
|
245
|
-
lineNumber:
|
|
249
|
+
lineNumber: 229,
|
|
246
250
|
columnNumber: 19
|
|
247
251
|
}
|
|
248
252
|
})), overlay === 'message' && _react["default"].createElement(_MessageOverlay.MessageOverlay, {
|
|
@@ -256,7 +260,7 @@ var OverlayProvider = function OverlayProvider(props) {
|
|
|
256
260
|
__self: _this,
|
|
257
261
|
__source: {
|
|
258
262
|
fileName: _jsxFileName,
|
|
259
|
-
lineNumber:
|
|
263
|
+
lineNumber: 232,
|
|
260
264
|
columnNumber: 19
|
|
261
265
|
}
|
|
262
266
|
}), overlay === 'gallery' && _react["default"].createElement(_ImageGallery.ImageGallery, {
|
|
@@ -270,7 +274,7 @@ var OverlayProvider = function OverlayProvider(props) {
|
|
|
270
274
|
__self: _this,
|
|
271
275
|
__source: {
|
|
272
276
|
fileName: _jsxFileName,
|
|
273
|
-
lineNumber:
|
|
277
|
+
lineNumber: 243,
|
|
274
278
|
columnNumber: 19
|
|
275
279
|
}
|
|
276
280
|
}), _react["default"].createElement(_AttachmentPicker.AttachmentPicker, (0, _extends2["default"])({
|
|
@@ -279,7 +283,7 @@ var OverlayProvider = function OverlayProvider(props) {
|
|
|
279
283
|
__self: _this,
|
|
280
284
|
__source: {
|
|
281
285
|
fileName: _jsxFileName,
|
|
282
|
-
lineNumber:
|
|
286
|
+
lineNumber: 253,
|
|
283
287
|
columnNumber: 17
|
|
284
288
|
}
|
|
285
289
|
}))))))));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_OverlayContext","_AttachmentPicker","_AttachmentPickerBottomSheetHandle","_AttachmentPickerError","_AttachmentPickerErrorImage","_CameraSelectorIcon","_FileSelectorIcon","_ImageOverlaySelectedComponent","_ImageSelectorIcon","_ImageGallery","_MessageOverlay","_OverlayBackdrop","_useStreami18n","_AttachmentPickerContext","_ImageGalleryContext","_MessageOverlayContext","_ThemeContext","_TranslationContext","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","OverlayProvider","props","bottomSheetCloseTimeoutRef","useRef","autoPlayVideo","_props$AttachmentPick","AttachmentPickerBottomSheetHandle","DefaultAttachmentPickerBottomSheetHandle","attachmentPickerBottomSheetHandleHeight","attachmentPickerBottomSheetHeight","_props$AttachmentPick2","AttachmentPickerError","DefaultAttachmentPickerError","attachmentPickerErrorButtonText","_props$AttachmentPick3","AttachmentPickerErrorImage","DefaultAttachmentPickerErrorImage","attachmentPickerErrorText","attachmentSelectionBarHeight","bottomInset","_props$CameraSelector","CameraSelectorIcon","DefaultCameraSelectorIcon","children","_props$closePicker","closePicker","ref","_ref$current","current","close","clearTimeout","setTimeout","_ref$current2","_props$FileSelectorIc","FileSelectorIcon","DefaultFileSelectorIcon","giphyVersion","i18nInstance","imageGalleryCustomComponents","imageGalleryGridHandleHeight","imageGalleryGridSnapPoints","_props$ImageOverlaySe","ImageOverlaySelectedComponent","DefaultImageOverlaySelectedComponent","_props$ImageSelectorI","ImageSelectorIcon","DefaultImageSelectorIcon","MessageActionList","MessageActionListItem","messageTextNumberOfLines","numberOfAttachmentImagesToLoadPerCall","numberOfAttachmentPickerImageColumns","numberOfImageGalleryGridColumns","_props$openPicker","openPicker","_ref$current3","snapToIndex","console","warn","topInset","translucentStatusBar","OverlayReactionList","OverlayReactions","OverlayReactionsAvatar","value","attachmentPickerProps","bottomSheetRef","_useState","useState","overlay","_useState2","_slicedToArray2","setOverlay","overlayOpacity","useSharedValue","_Dimensions$get","Dimensions","height","width","translators","useStreami18n","useEffect","backAction","backHandler","BackHandler","addEventListener","remove","cancelAnimation","withTiming","attachmentPickerContext","overlayStyle","useAnimatedStyle","opacity","overlayContext","style","createElement","TranslationProvider","_extends2","userLanguage","DEFAULT_USER_LANGUAGE","__self","__source","fileName","lineNumber","columnNumber","OverlayContext","Provider","MessageOverlayProvider","AttachmentPickerProvider","ImageGalleryProvider","ThemeProvider","View","pointerEvents","StyleSheet","absoluteFill","OverlayBackdrop","MessageOverlay","ImageGallery","AttachmentPicker","exports"],"sources":["OverlayProvider.tsx"],"sourcesContent":["import React, { PropsWithChildren, useEffect, useRef, useState } from 'react';\n\nimport { BackHandler, Dimensions, StyleSheet, ViewStyle } from 'react-native';\n\nimport Animated, {\n cancelAnimation,\n useAnimatedStyle,\n useSharedValue,\n withTiming,\n} from 'react-native-reanimated';\n\nimport type BottomSheet from '@gorhom/bottom-sheet';\n\nimport { OverlayContext, OverlayProviderProps } from './OverlayContext';\n\nimport { AttachmentPicker } from '../../components/AttachmentPicker/AttachmentPicker';\n\nimport { AttachmentPickerBottomSheetHandle as DefaultAttachmentPickerBottomSheetHandle } from '../../components/AttachmentPicker/components/AttachmentPickerBottomSheetHandle';\nimport { AttachmentPickerError as DefaultAttachmentPickerError } from '../../components/AttachmentPicker/components/AttachmentPickerError';\nimport { AttachmentPickerErrorImage as DefaultAttachmentPickerErrorImage } from '../../components/AttachmentPicker/components/AttachmentPickerErrorImage';\nimport { CameraSelectorIcon as DefaultCameraSelectorIcon } from '../../components/AttachmentPicker/components/CameraSelectorIcon';\nimport { FileSelectorIcon as DefaultFileSelectorIcon } from '../../components/AttachmentPicker/components/FileSelectorIcon';\nimport { ImageOverlaySelectedComponent as DefaultImageOverlaySelectedComponent } from '../../components/AttachmentPicker/components/ImageOverlaySelectedComponent';\nimport { ImageSelectorIcon as DefaultImageSelectorIcon } from '../../components/AttachmentPicker/components/ImageSelectorIcon';\nimport { ImageGallery } from '../../components/ImageGallery/ImageGallery';\nimport { MessageOverlay } from '../../components/MessageOverlay/MessageOverlay';\nimport { OverlayBackdrop } from '../../components/MessageOverlay/OverlayBackdrop';\nimport { useStreami18n } from '../../hooks/useStreami18n';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { AttachmentPickerProvider } from '../attachmentPickerContext/AttachmentPickerContext';\nimport { ImageGalleryProvider } from '../imageGalleryContext/ImageGalleryContext';\nimport { MessageOverlayProvider } from '../messageOverlayContext/MessageOverlayContext';\nimport { ThemeProvider } from '../themeContext/ThemeContext';\nimport {\n DEFAULT_USER_LANGUAGE,\n TranslationProvider,\n} from '../translationContext/TranslationContext';\n\n/**\n * - The highest level of these components is the `OverlayProvider`. The `OverlayProvider` allows users to interact with messages on long press above the underlying views, use the full screen image viewer, and use the `AttachmentPicker` as a keyboard-esk view.\n * Because these views must exist above all others `OverlayProvider` should wrap your navigation stack as well. Assuming [`React Navigation`](https://reactnavigation.org/) is being used, your highest level navigation stack should be wrapped in the provider:\n *\n * ```js\n * <NavigationContainer>\n * <OverlayProvider>\n * <Stack.Navigator>\n * <Stack.Screen />\n * </Stack.Navigator>\n * </OverlayProvider>\n * </NavigationContainer>\n * ```\n *\n * - Don't forget to check our cookbook section of [OverlayProvider](https://github.com/GetStream/stream-chat-react-native/wiki/Cookbook-v3.0#overlayprovider)\n *\n * - Also check the [visual component guide](https://github.com/GetStream/stream-chat-react-native/wiki/Cookbook-v3.0#custom-components), to learn about component customizations.\n *\n * @example ./OverlayProvider.md\n */\nexport const OverlayProvider = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: PropsWithChildren<OverlayProviderProps<StreamChatGenerics>>,\n) => {\n const bottomSheetCloseTimeoutRef = useRef<NodeJS.Timeout>();\n const {\n autoPlayVideo,\n AttachmentPickerBottomSheetHandle = DefaultAttachmentPickerBottomSheetHandle,\n attachmentPickerBottomSheetHandleHeight,\n attachmentPickerBottomSheetHeight,\n AttachmentPickerError = DefaultAttachmentPickerError,\n attachmentPickerErrorButtonText,\n AttachmentPickerErrorImage = DefaultAttachmentPickerErrorImage,\n attachmentPickerErrorText,\n attachmentSelectionBarHeight,\n bottomInset,\n CameraSelectorIcon = DefaultCameraSelectorIcon,\n children,\n closePicker = (ref) => {\n if (ref.current?.close) {\n if (bottomSheetCloseTimeoutRef.current) {\n clearTimeout(bottomSheetCloseTimeoutRef.current);\n }\n ref.current.close();\n // Attempt to close the bottomsheet again to circumvent accidental opening on Android.\n // Details: This to prevent a race condition where the close function is called during the point when a internal container layout happens within the bottomsheet due to keyboard affecting the layout\n // If the container layout measures a shorter height than previous but if the close snapped to the previous height's position, the bottom sheet will show up\n // this short delay ensures that close function is always called after a container layout due to keyboard change\n // NOTE: this timeout has to be above 500 as the keyboardAnimationDuration is 500 in the bottomsheet library - see src/hooks/useKeyboard.ts there for more details\n bottomSheetCloseTimeoutRef.current = setTimeout(() => {\n ref.current?.close();\n }, 600);\n }\n },\n FileSelectorIcon = DefaultFileSelectorIcon,\n giphyVersion,\n i18nInstance,\n imageGalleryCustomComponents,\n imageGalleryGridHandleHeight,\n imageGalleryGridSnapPoints,\n ImageOverlaySelectedComponent = DefaultImageOverlaySelectedComponent,\n ImageSelectorIcon = DefaultImageSelectorIcon,\n MessageActionList,\n MessageActionListItem,\n messageTextNumberOfLines,\n numberOfAttachmentImagesToLoadPerCall,\n numberOfAttachmentPickerImageColumns,\n numberOfImageGalleryGridColumns,\n openPicker = (ref) => {\n if (bottomSheetCloseTimeoutRef.current) {\n clearTimeout(bottomSheetCloseTimeoutRef.current);\n }\n if (ref.current?.snapToIndex) {\n ref.current.snapToIndex(0);\n } else {\n console.warn('bottom and top insets must be set for the image picker to work correctly');\n }\n },\n topInset,\n translucentStatusBar,\n OverlayReactionList,\n OverlayReactions,\n OverlayReactionsAvatar,\n value,\n } = props;\n\n const attachmentPickerProps = {\n AttachmentPickerBottomSheetHandle,\n attachmentPickerBottomSheetHandleHeight,\n attachmentPickerBottomSheetHeight,\n AttachmentPickerError,\n attachmentPickerErrorButtonText,\n AttachmentPickerErrorImage,\n attachmentPickerErrorText,\n attachmentSelectionBarHeight,\n ImageOverlaySelectedComponent,\n numberOfAttachmentImagesToLoadPerCall,\n numberOfAttachmentPickerImageColumns,\n translucentStatusBar,\n };\n\n const bottomSheetRef = useRef<BottomSheet>(null);\n\n const [overlay, setOverlay] = useState(value?.overlay || 'none');\n\n const overlayOpacity = useSharedValue(0);\n const { height, width } = Dimensions.get('screen');\n\n // Setup translators\n const translators = useStreami18n(i18nInstance);\n\n useEffect(() => {\n const backAction = () => {\n if (overlay !== 'none') {\n setOverlay('none');\n return true;\n }\n\n return false;\n };\n\n const backHandler = BackHandler.addEventListener('hardwareBackPress', backAction);\n\n return () => backHandler.remove();\n }, [overlay]);\n\n useEffect(\n () =>\n // cleanup the timeout if the component unmounts\n () => {\n if (bottomSheetCloseTimeoutRef.current) {\n clearTimeout(bottomSheetCloseTimeoutRef.current);\n }\n },\n [],\n );\n\n useEffect(() => {\n closePicker(bottomSheetRef);\n cancelAnimation(overlayOpacity);\n if (overlay !== 'none') {\n overlayOpacity.value = withTiming(1);\n } else {\n overlayOpacity.value = withTiming(0);\n }\n }, [overlay]);\n\n const attachmentPickerContext = {\n attachmentPickerBottomSheetHeight,\n attachmentSelectionBarHeight,\n bottomInset,\n CameraSelectorIcon,\n closePicker: () => closePicker(bottomSheetRef),\n FileSelectorIcon,\n ImageSelectorIcon,\n openPicker: () => openPicker(bottomSheetRef),\n topInset,\n };\n\n const overlayStyle = useAnimatedStyle<ViewStyle>(\n () => ({\n opacity: overlayOpacity.value,\n }),\n [],\n );\n\n const overlayContext = {\n overlay,\n setOverlay,\n style: value?.style,\n translucentStatusBar,\n };\n\n return (\n <TranslationProvider value={{ ...translators, userLanguage: DEFAULT_USER_LANGUAGE }}>\n <OverlayContext.Provider value={overlayContext}>\n <MessageOverlayProvider<StreamChatGenerics>>\n <AttachmentPickerProvider value={attachmentPickerContext}>\n <ImageGalleryProvider>\n {children}\n <ThemeProvider style={overlayContext.style}>\n <Animated.View\n pointerEvents={overlay === 'none' ? 'none' : 'auto'}\n style={[StyleSheet.absoluteFill, overlayStyle]}\n >\n <OverlayBackdrop style={[StyleSheet.absoluteFill, { height, width }]} />\n </Animated.View>\n {overlay === 'message' && (\n <MessageOverlay<StreamChatGenerics>\n MessageActionList={MessageActionList}\n MessageActionListItem={MessageActionListItem}\n messageTextNumberOfLines={messageTextNumberOfLines}\n overlayOpacity={overlayOpacity}\n OverlayReactionList={OverlayReactionList}\n OverlayReactions={OverlayReactions}\n OverlayReactionsAvatar={OverlayReactionsAvatar}\n />\n )}\n {overlay === 'gallery' && (\n <ImageGallery<StreamChatGenerics>\n autoPlayVideo={autoPlayVideo}\n giphyVersion={giphyVersion}\n imageGalleryCustomComponents={imageGalleryCustomComponents}\n imageGalleryGridHandleHeight={imageGalleryGridHandleHeight}\n imageGalleryGridSnapPoints={imageGalleryGridSnapPoints}\n numberOfImageGalleryGridColumns={numberOfImageGalleryGridColumns}\n overlayOpacity={overlayOpacity}\n />\n )}\n <AttachmentPicker ref={bottomSheetRef} {...attachmentPickerProps} />\n </ThemeProvider>\n </ImageGalleryProvider>\n </AttachmentPickerProvider>\n </MessageOverlayProvider>\n </OverlayContext.Provider>\n </TranslationProvider>\n );\n};\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,sBAAA,GAAAH,uBAAA,CAAAC,OAAA;AASA,IAAAG,eAAA,GAAAH,OAAA;AAEA,IAAAI,iBAAA,GAAAJ,OAAA;AAEA,IAAAK,kCAAA,GAAAL,OAAA;AACA,IAAAM,sBAAA,GAAAN,OAAA;AACA,IAAAO,2BAAA,GAAAP,OAAA;AACA,IAAAQ,mBAAA,GAAAR,OAAA;AACA,IAAAS,iBAAA,GAAAT,OAAA;AACA,IAAAU,8BAAA,GAAAV,OAAA;AACA,IAAAW,kBAAA,GAAAX,OAAA;AACA,IAAAY,aAAA,GAAAZ,OAAA;AACA,IAAAa,eAAA,GAAAb,OAAA;AACA,IAAAc,gBAAA,GAAAd,OAAA;AACA,IAAAe,cAAA,GAAAf,OAAA;AAGA,IAAAgB,wBAAA,GAAAhB,OAAA;AACA,IAAAiB,oBAAA,GAAAjB,OAAA;AACA,IAAAkB,sBAAA,GAAAlB,OAAA;AACA,IAAAmB,aAAA,GAAAnB,OAAA;AACA,IAAAoB,mBAAA,GAAApB,OAAA;AAGkD,IAAAqB,KAAA;EAAAC,YAAA;AAAA,SAAAC,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAzB,wBAAA6B,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,OAAA,CAAAF,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,cAAAN,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAsB3C,IAAMW,eAAe,GAAG,SAAlBA,eAAeA,CAG1BC,KAAkE,EAC/D;EACH,IAAMC,0BAA0B,GAAG,IAAAC,aAAM,EAAiB,CAAC;EAC3D,IACEC,aAAa,GA0DXH,KAAK,CA1DPG,aAAa;IAAAC,qBAAA,GA0DXJ,KAAK,CAzDPK,iCAAiC;IAAjCA,iCAAiC,GAAAD,qBAAA,cAAGE,oEAAwC,GAAAF,qBAAA;IAC5EG,uCAAuC,GAwDrCP,KAAK,CAxDPO,uCAAuC;IACvCC,iCAAiC,GAuD/BR,KAAK,CAvDPQ,iCAAiC;IAAAC,sBAAA,GAuD/BT,KAAK,CAtDPU,qBAAqB;IAArBA,qBAAqB,GAAAD,sBAAA,cAAGE,4CAA4B,GAAAF,sBAAA;IACpDG,+BAA+B,GAqD7BZ,KAAK,CArDPY,+BAA+B;IAAAC,sBAAA,GAqD7Bb,KAAK,CApDPc,0BAA0B;IAA1BA,0BAA0B,GAAAD,sBAAA,cAAGE,sDAAiC,GAAAF,sBAAA;IAC9DG,yBAAyB,GAmDvBhB,KAAK,CAnDPgB,yBAAyB;IACzBC,4BAA4B,GAkD1BjB,KAAK,CAlDPiB,4BAA4B;IAC5BC,WAAW,GAiDTlB,KAAK,CAjDPkB,WAAW;IAAAC,qBAAA,GAiDTnB,KAAK,CAhDPoB,kBAAkB;IAAlBA,kBAAkB,GAAAD,qBAAA,cAAGE,sCAAyB,GAAAF,qBAAA;IAC9CG,QAAQ,GA+CNtB,KAAK,CA/CPsB,QAAQ;IAAAC,kBAAA,GA+CNvB,KAAK,CA9CPwB,WAAW;IAAXA,YAAW,GAAAD,kBAAA,cAAG,UAACE,GAAG,EAAK;MAAA,IAAAC,YAAA;MACrB,KAAAA,YAAA,GAAID,GAAG,CAACE,OAAO,aAAXD,YAAA,CAAaE,KAAK,EAAE;QACtB,IAAI3B,0BAA0B,CAAC0B,OAAO,EAAE;UACtCE,YAAY,CAAC5B,0BAA0B,CAAC0B,OAAO,CAAC;QAClD;QACAF,GAAG,CAACE,OAAO,CAACC,KAAK,CAAC,CAAC;QAMnB3B,0BAA0B,CAAC0B,OAAO,GAAGG,UAAU,CAAC,YAAM;UAAA,IAAAC,aAAA;UACpD,CAAAA,aAAA,GAAAN,GAAG,CAACE,OAAO,qBAAXI,aAAA,CAAaH,KAAK,CAAC,CAAC;QACtB,CAAC,EAAE,GAAG,CAAC;MACT;IACF,CAAC,GAAAL,kBAAA;IAAAS,qBAAA,GA+BChC,KAAK,CA9BPiC,gBAAgB;IAAhBA,gBAAgB,GAAAD,qBAAA,cAAGE,kCAAuB,GAAAF,qBAAA;IAC1CG,YAAY,GA6BVnC,KAAK,CA7BPmC,YAAY;IACZC,YAAY,GA4BVpC,KAAK,CA5BPoC,YAAY;IACZC,4BAA4B,GA2B1BrC,KAAK,CA3BPqC,4BAA4B;IAC5BC,4BAA4B,GA0B1BtC,KAAK,CA1BPsC,4BAA4B;IAC5BC,0BAA0B,GAyBxBvC,KAAK,CAzBPuC,0BAA0B;IAAAC,qBAAA,GAyBxBxC,KAAK,CAxBPyC,6BAA6B;IAA7BA,6BAA6B,GAAAD,qBAAA,cAAGE,4DAAoC,GAAAF,qBAAA;IAAAG,qBAAA,GAwBlE3C,KAAK,CAvBP4C,iBAAiB;IAAjBA,iBAAiB,GAAAD,qBAAA,cAAGE,oCAAwB,GAAAF,qBAAA;IAC5CG,iBAAiB,GAsBf9C,KAAK,CAtBP8C,iBAAiB;IACjBC,qBAAqB,GAqBnB/C,KAAK,CArBP+C,qBAAqB;IACrBC,wBAAwB,GAoBtBhD,KAAK,CApBPgD,wBAAwB;IACxBC,qCAAqC,GAmBnCjD,KAAK,CAnBPiD,qCAAqC;IACrCC,oCAAoC,GAkBlClD,KAAK,CAlBPkD,oCAAoC;IACpCC,+BAA+B,GAiB7BnD,KAAK,CAjBPmD,+BAA+B;IAAAC,iBAAA,GAiB7BpD,KAAK,CAhBPqD,UAAU;IAAVA,WAAU,GAAAD,iBAAA,cAAG,UAAC3B,GAAG,EAAK;MAAA,IAAA6B,aAAA;MACpB,IAAIrD,0BAA0B,CAAC0B,OAAO,EAAE;QACtCE,YAAY,CAAC5B,0BAA0B,CAAC0B,OAAO,CAAC;MAClD;MACA,KAAA2B,aAAA,GAAI7B,GAAG,CAACE,OAAO,aAAX2B,aAAA,CAAaC,WAAW,EAAE;QAC5B9B,GAAG,CAACE,OAAO,CAAC4B,WAAW,CAAC,CAAC,CAAC;MAC5B,CAAC,MAAM;QACLC,OAAO,CAACC,IAAI,CAAC,0EAA0E,CAAC;MAC1F;IACF,CAAC,GAAAL,iBAAA;IACDM,QAAQ,GAMN1D,KAAK,CANP0D,QAAQ;IACRC,oBAAoB,GAKlB3D,KAAK,CALP2D,oBAAoB;IACpBC,mBAAmB,GAIjB5D,KAAK,CAJP4D,mBAAmB;IACnBC,gBAAgB,GAGd7D,KAAK,CAHP6D,gBAAgB;IAChBC,sBAAsB,GAEpB9D,KAAK,CAFP8D,sBAAsB;IACtBC,KAAK,GACH/D,KAAK,CADP+D,KAAK;EAGP,IAAMC,qBAAqB,GAAG;IAC5B3D,iCAAiC,EAAjCA,iCAAiC;IACjCE,uCAAuC,EAAvCA,uCAAuC;IACvCC,iCAAiC,EAAjCA,iCAAiC;IACjCE,qBAAqB,EAArBA,qBAAqB;IACrBE,+BAA+B,EAA/BA,+BAA+B;IAC/BE,0BAA0B,EAA1BA,0BAA0B;IAC1BE,yBAAyB,EAAzBA,yBAAyB;IACzBC,4BAA4B,EAA5BA,4BAA4B;IAC5BwB,6BAA6B,EAA7BA,6BAA6B;IAC7BQ,qCAAqC,EAArCA,qCAAqC;IACrCC,oCAAoC,EAApCA,oCAAoC;IACpCS,oBAAoB,EAApBA;EACF,CAAC;EAED,IAAMM,cAAc,GAAG,IAAA/D,aAAM,EAAc,IAAI,CAAC;EAEhD,IAAAgE,SAAA,GAA8B,IAAAC,eAAQ,EAAC,CAAAJ,KAAK,oBAALA,KAAK,CAAEK,OAAO,KAAI,MAAM,CAAC;IAAAC,UAAA,OAAAC,eAAA,aAAAJ,SAAA;IAAzDE,OAAO,GAAAC,UAAA;IAAEE,UAAU,GAAAF,UAAA;EAE1B,IAAMG,cAAc,GAAG,IAAAC,qCAAc,EAAC,CAAC,CAAC;EACxC,IAAAC,eAAA,GAA0BC,uBAAU,CAACxF,GAAG,CAAC,QAAQ,CAAC;IAA1CyF,MAAM,GAAAF,eAAA,CAANE,MAAM;IAAEC,KAAK,GAAAH,eAAA,CAALG,KAAK;EAGrB,IAAMC,WAAW,GAAG,IAAAC,4BAAa,EAAC3C,YAAY,CAAC;EAE/C,IAAA4C,gBAAS,EAAC,YAAM;IACd,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAA,EAAS;MACvB,IAAIb,OAAO,KAAK,MAAM,EAAE;QACtBG,UAAU,CAAC,MAAM,CAAC;QAClB,OAAO,IAAI;MACb;MAEA,OAAO,KAAK;IACd,CAAC;IAED,IAAMW,WAAW,GAAGC,wBAAW,CAACC,gBAAgB,CAAC,mBAAmB,EAAEH,UAAU,CAAC;IAEjF,OAAO;MAAA,OAAMC,WAAW,CAACG,MAAM,CAAC,CAAC;IAAA;EACnC,CAAC,EAAE,CAACjB,OAAO,CAAC,CAAC;EAEb,IAAAY,gBAAS,EACP;IAAA,OAEE,YAAM;MACJ,IAAI/E,0BAA0B,CAAC0B,OAAO,EAAE;QACtCE,YAAY,CAAC5B,0BAA0B,CAAC0B,OAAO,CAAC;MAClD;IACF,CAAC;EAAA,GACH,EACF,CAAC;EAED,IAAAqD,gBAAS,EAAC,YAAM;IACdxD,YAAW,CAACyC,cAAc,CAAC;IAC3B,IAAAqB,sCAAe,EAACd,cAAc,CAAC;IAC/B,IAAIJ,OAAO,KAAK,MAAM,EAAE;MACtBI,cAAc,CAACT,KAAK,GAAG,IAAAwB,iCAAU,EAAC,CAAC,CAAC;IACtC,CAAC,MAAM;MACLf,cAAc,CAACT,KAAK,GAAG,IAAAwB,iCAAU,EAAC,CAAC,CAAC;IACtC;EACF,CAAC,EAAE,CAACnB,OAAO,CAAC,CAAC;EAEb,IAAMoB,uBAAuB,GAAG;IAC9BhF,iCAAiC,EAAjCA,iCAAiC;IACjCS,4BAA4B,EAA5BA,4BAA4B;IAC5BC,WAAW,EAAXA,WAAW;IACXE,kBAAkB,EAAlBA,kBAAkB;IAClBI,WAAW,EAAE,SAAAA,YAAA;MAAA,OAAMA,YAAW,CAACyC,cAAc,CAAC;IAAA;IAC9ChC,gBAAgB,EAAhBA,gBAAgB;IAChBW,iBAAiB,EAAjBA,iBAAiB;IACjBS,UAAU,EAAE,SAAAA,WAAA;MAAA,OAAMA,WAAU,CAACY,cAAc,CAAC;IAAA;IAC5CP,QAAQ,EAARA;EACF,CAAC;EAED,IAAM+B,YAAY,GAAG,IAAAC,uCAAgB,EACnC;IAAA,OAAO;MACLC,OAAO,EAAEnB,cAAc,CAACT;IAC1B,CAAC;EAAA,CAAC,EACF,EACF,CAAC;EAED,IAAM6B,cAAc,GAAG;IACrBxB,OAAO,EAAPA,OAAO;IACPG,UAAU,EAAVA,UAAU;IACVsB,KAAK,EAAE9B,KAAK,oBAALA,KAAK,CAAE8B,KAAK;IACnBlC,oBAAoB,EAApBA;EACF,CAAC;EAED,OACE3G,MAAA,YAAA8I,aAAA,CAACxH,mBAAA,CAAAyH,mBAAmB;IAAChC,KAAK,MAAAiC,SAAA,iBAAOlB,WAAW;MAAEmB,YAAY,EAAEC;IAAqB,EAAG;IAAAC,MAAA,EAAA5H,KAAA;IAAA6H,QAAA;MAAAC,QAAA,EAAA7H,YAAA;MAAA8H,UAAA;MAAAC,YAAA;IAAA;EAAA,GAClFvJ,MAAA,YAAA8I,aAAA,CAACzI,eAAA,CAAAmJ,cAAc,CAACC,QAAQ;IAAC1C,KAAK,EAAE6B,cAAe;IAAAO,MAAA,EAAA5H,KAAA;IAAA6H,QAAA;MAAAC,QAAA,EAAA7H,YAAA;MAAA8H,UAAA;MAAAC,YAAA;IAAA;EAAA,GAC7CvJ,MAAA,YAAA8I,aAAA,CAAC1H,sBAAA,CAAAsI,sBAAsB;IAAAP,MAAA,EAAA5H,KAAA;IAAA6H,QAAA;MAAAC,QAAA,EAAA7H,YAAA;MAAA8H,UAAA;MAAAC,YAAA;IAAA;EAAA,GACrBvJ,MAAA,YAAA8I,aAAA,CAAC5H,wBAAA,CAAAyI,wBAAwB;IAAC5C,KAAK,EAAEyB,uBAAwB;IAAAW,MAAA,EAAA5H,KAAA;IAAA6H,QAAA;MAAAC,QAAA,EAAA7H,YAAA;MAAA8H,UAAA;MAAAC,YAAA;IAAA;EAAA,GACvDvJ,MAAA,YAAA8I,aAAA,CAAC3H,oBAAA,CAAAyI,oBAAoB;IAAAT,MAAA,EAAA5H,KAAA;IAAA6H,QAAA;MAAAC,QAAA,EAAA7H,YAAA;MAAA8H,UAAA;MAAAC,YAAA;IAAA;EAAA,GAClBjF,QAAQ,EACTtE,MAAA,YAAA8I,aAAA,CAACzH,aAAA,CAAAwI,aAAa;IAAChB,KAAK,EAAED,cAAc,CAACC,KAAM;IAAAM,MAAA,EAAA5H,KAAA;IAAA6H,QAAA;MAAAC,QAAA,EAAA7H,YAAA;MAAA8H,UAAA;MAAAC,YAAA;IAAA;EAAA,GACzCvJ,MAAA,YAAA8I,aAAA,CAAC1I,sBAAA,WAAQ,CAAC0J,IAAI;IACZC,aAAa,EAAE3C,OAAO,KAAK,MAAM,GAAG,MAAM,GAAG,MAAO;IACpDyB,KAAK,EAAE,CAACmB,uBAAU,CAACC,YAAY,EAAExB,YAAY,CAAE;IAAAU,MAAA,EAAA5H,KAAA;IAAA6H,QAAA;MAAAC,QAAA,EAAA7H,YAAA;MAAA8H,UAAA;MAAAC,YAAA;IAAA;EAAA,GAE/CvJ,MAAA,YAAA8I,aAAA,CAAC9H,gBAAA,CAAAkJ,eAAe;IAACrB,KAAK,EAAE,CAACmB,uBAAU,CAACC,YAAY,EAAE;MAAErC,MAAM,EAANA,MAAM;MAAEC,KAAK,EAALA;IAAM,CAAC,CAAE;IAAAsB,MAAA,EAAA5H,KAAA;IAAA6H,QAAA;MAAAC,QAAA,EAAA7H,YAAA;MAAA8H,UAAA;MAAAC,YAAA;IAAA;EAAA,CAAE,CAC1D,CAAC,EACfnC,OAAO,KAAK,SAAS,IACpBpH,MAAA,YAAA8I,aAAA,CAAC/H,eAAA,CAAAoJ,cAAc;IACbrE,iBAAiB,EAAEA,iBAAkB;IACrCC,qBAAqB,EAAEA,qBAAsB;IAC7CC,wBAAwB,EAAEA,wBAAyB;IACnDwB,cAAc,EAAEA,cAAe;IAC/BZ,mBAAmB,EAAEA,mBAAoB;IACzCC,gBAAgB,EAAEA,gBAAiB;IACnCC,sBAAsB,EAAEA,sBAAuB;IAAAqC,MAAA,EAAA5H,KAAA;IAAA6H,QAAA;MAAAC,QAAA,EAAA7H,YAAA;MAAA8H,UAAA;MAAAC,YAAA;IAAA;EAAA,CAChD,CACF,EACAnC,OAAO,KAAK,SAAS,IACpBpH,MAAA,YAAA8I,aAAA,CAAChI,aAAA,CAAAsJ,YAAY;IACXjH,aAAa,EAAEA,aAAc;IAC7BgC,YAAY,EAAEA,YAAa;IAC3BE,4BAA4B,EAAEA,4BAA6B;IAC3DC,4BAA4B,EAAEA,4BAA6B;IAC3DC,0BAA0B,EAAEA,0BAA2B;IACvDY,+BAA+B,EAAEA,+BAAgC;IACjEqB,cAAc,EAAEA,cAAe;IAAA2B,MAAA,EAAA5H,KAAA;IAAA6H,QAAA;MAAAC,QAAA,EAAA7H,YAAA;MAAA8H,UAAA;MAAAC,YAAA;IAAA;EAAA,CAChC,CACF,EACDvJ,MAAA,YAAA8I,aAAA,CAACxI,iBAAA,CAAA+J,gBAAgB,MAAArB,SAAA;IAACvE,GAAG,EAAEwC;EAAe,GAAKD,qBAAqB;IAAAmC,MAAA,EAAA5H,KAAA;IAAA6H,QAAA;MAAAC,QAAA,EAAA7H,YAAA;MAAA8H,UAAA;MAAAC,YAAA;IAAA;EAAA,EAAG,CACtD,CACK,CACE,CACJ,CACD,CACN,CAAC;AAE1B,CAAC;AAACe,OAAA,CAAAvH,eAAA,GAAAA,eAAA"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeReanimated","_OverlayContext","_AttachmentPicker","_AttachmentPickerBottomSheetHandle","_AttachmentPickerError","_AttachmentPickerErrorImage","_AttachmentPickerIOSSelectMorePhotos","_CameraSelectorIcon","_FileSelectorIcon","_ImageOverlaySelectedComponent","_ImageSelectorIcon","_ImageGallery","_MessageOverlay","_OverlayBackdrop","_useStreami18n","_AttachmentPickerContext","_ImageGalleryContext","_MessageOverlayContext","_ThemeContext","_TranslationContext","_this","_jsxFileName","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","OverlayProvider","props","bottomSheetCloseTimeoutRef","useRef","autoPlayVideo","_props$AttachmentPick","AttachmentPickerBottomSheetHandle","DefaultAttachmentPickerBottomSheetHandle","attachmentPickerBottomSheetHandleHeight","attachmentPickerBottomSheetHeight","_props$AttachmentPick2","AttachmentPickerError","DefaultAttachmentPickerError","attachmentPickerErrorButtonText","_props$AttachmentPick3","AttachmentPickerErrorImage","DefaultAttachmentPickerErrorImage","attachmentPickerErrorText","attachmentSelectionBarHeight","_props$AttachmentPick4","AttachmentPickerIOSSelectMorePhotos","DefaultAttachmentPickerIOSSelectMorePhotos","bottomInset","_props$CameraSelector","CameraSelectorIcon","DefaultCameraSelectorIcon","children","_props$closePicker","closePicker","ref","_ref$current","current","close","clearTimeout","setTimeout","_ref$current2","_props$FileSelectorIc","FileSelectorIcon","DefaultFileSelectorIcon","giphyVersion","i18nInstance","imageGalleryCustomComponents","imageGalleryGridHandleHeight","imageGalleryGridSnapPoints","_props$ImageOverlaySe","ImageOverlaySelectedComponent","DefaultImageOverlaySelectedComponent","_props$ImageSelectorI","ImageSelectorIcon","DefaultImageSelectorIcon","MessageActionList","MessageActionListItem","messageTextNumberOfLines","numberOfAttachmentImagesToLoadPerCall","numberOfAttachmentPickerImageColumns","numberOfImageGalleryGridColumns","_props$openPicker","openPicker","_ref$current3","snapToIndex","console","warn","topInset","translucentStatusBar","OverlayReactionList","OverlayReactions","OverlayReactionsAvatar","value","attachmentPickerProps","bottomSheetRef","_useState","useState","overlay","_useState2","_slicedToArray2","setOverlay","overlayOpacity","useSharedValue","_Dimensions$get","Dimensions","height","width","translators","useStreami18n","useEffect","backAction","backHandler","BackHandler","addEventListener","remove","cancelAnimation","withTiming","attachmentPickerContext","overlayStyle","useAnimatedStyle","opacity","overlayContext","style","createElement","TranslationProvider","_extends2","userLanguage","DEFAULT_USER_LANGUAGE","__self","__source","fileName","lineNumber","columnNumber","OverlayContext","Provider","MessageOverlayProvider","AttachmentPickerProvider","ImageGalleryProvider","ThemeProvider","View","pointerEvents","StyleSheet","absoluteFill","OverlayBackdrop","MessageOverlay","ImageGallery","AttachmentPicker","exports"],"sources":["OverlayProvider.tsx"],"sourcesContent":["import React, { PropsWithChildren, useEffect, useRef, useState } from 'react';\n\nimport { BackHandler, Dimensions, StyleSheet, ViewStyle } from 'react-native';\n\nimport Animated, {\n cancelAnimation,\n useAnimatedStyle,\n useSharedValue,\n withTiming,\n} from 'react-native-reanimated';\n\nimport type BottomSheet from '@gorhom/bottom-sheet';\n\nimport { OverlayContext, OverlayProviderProps } from './OverlayContext';\n\nimport { AttachmentPicker } from '../../components/AttachmentPicker/AttachmentPicker';\n\nimport { AttachmentPickerBottomSheetHandle as DefaultAttachmentPickerBottomSheetHandle } from '../../components/AttachmentPicker/components/AttachmentPickerBottomSheetHandle';\nimport { AttachmentPickerError as DefaultAttachmentPickerError } from '../../components/AttachmentPicker/components/AttachmentPickerError';\nimport { AttachmentPickerErrorImage as DefaultAttachmentPickerErrorImage } from '../../components/AttachmentPicker/components/AttachmentPickerErrorImage';\nimport { AttachmentPickerIOSSelectMorePhotos as DefaultAttachmentPickerIOSSelectMorePhotos } from '../../components/AttachmentPicker/components/AttachmentPickerIOSSelectMorePhotos';\nimport { CameraSelectorIcon as DefaultCameraSelectorIcon } from '../../components/AttachmentPicker/components/CameraSelectorIcon';\nimport { FileSelectorIcon as DefaultFileSelectorIcon } from '../../components/AttachmentPicker/components/FileSelectorIcon';\nimport { ImageOverlaySelectedComponent as DefaultImageOverlaySelectedComponent } from '../../components/AttachmentPicker/components/ImageOverlaySelectedComponent';\nimport { ImageSelectorIcon as DefaultImageSelectorIcon } from '../../components/AttachmentPicker/components/ImageSelectorIcon';\nimport { ImageGallery } from '../../components/ImageGallery/ImageGallery';\nimport { MessageOverlay } from '../../components/MessageOverlay/MessageOverlay';\nimport { OverlayBackdrop } from '../../components/MessageOverlay/OverlayBackdrop';\nimport { useStreami18n } from '../../hooks/useStreami18n';\n\nimport type { DefaultStreamChatGenerics } from '../../types/types';\nimport { AttachmentPickerProvider } from '../attachmentPickerContext/AttachmentPickerContext';\nimport { ImageGalleryProvider } from '../imageGalleryContext/ImageGalleryContext';\nimport { MessageOverlayProvider } from '../messageOverlayContext/MessageOverlayContext';\nimport { ThemeProvider } from '../themeContext/ThemeContext';\nimport {\n DEFAULT_USER_LANGUAGE,\n TranslationProvider,\n} from '../translationContext/TranslationContext';\n\n/**\n * - The highest level of these components is the `OverlayProvider`. The `OverlayProvider` allows users to interact with messages on long press above the underlying views, use the full screen image viewer, and use the `AttachmentPicker` as a keyboard-esk view.\n * Because these views must exist above all others `OverlayProvider` should wrap your navigation stack as well. Assuming [`React Navigation`](https://reactnavigation.org/) is being used, your highest level navigation stack should be wrapped in the provider:\n *\n * ```js\n * <NavigationContainer>\n * <OverlayProvider>\n * <Stack.Navigator>\n * <Stack.Screen />\n * </Stack.Navigator>\n * </OverlayProvider>\n * </NavigationContainer>\n * ```\n *\n * - Don't forget to check our cookbook section of [OverlayProvider](https://github.com/GetStream/stream-chat-react-native/wiki/Cookbook-v3.0#overlayprovider)\n *\n * - Also check the [visual component guide](https://github.com/GetStream/stream-chat-react-native/wiki/Cookbook-v3.0#custom-components), to learn about component customizations.\n *\n * @example ./OverlayProvider.md\n */\nexport const OverlayProvider = <\n StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics,\n>(\n props: PropsWithChildren<OverlayProviderProps<StreamChatGenerics>>,\n) => {\n const bottomSheetCloseTimeoutRef = useRef<NodeJS.Timeout>();\n const {\n autoPlayVideo,\n AttachmentPickerBottomSheetHandle = DefaultAttachmentPickerBottomSheetHandle,\n attachmentPickerBottomSheetHandleHeight,\n attachmentPickerBottomSheetHeight,\n AttachmentPickerError = DefaultAttachmentPickerError,\n attachmentPickerErrorButtonText,\n AttachmentPickerErrorImage = DefaultAttachmentPickerErrorImage,\n attachmentPickerErrorText,\n attachmentSelectionBarHeight,\n AttachmentPickerIOSSelectMorePhotos = DefaultAttachmentPickerIOSSelectMorePhotos,\n bottomInset,\n CameraSelectorIcon = DefaultCameraSelectorIcon,\n children,\n closePicker = (ref) => {\n if (ref.current?.close) {\n if (bottomSheetCloseTimeoutRef.current) {\n clearTimeout(bottomSheetCloseTimeoutRef.current);\n }\n ref.current.close();\n // Attempt to close the bottomsheet again to circumvent accidental opening on Android.\n // Details: This to prevent a race condition where the close function is called during the point when a internal container layout happens within the bottomsheet due to keyboard affecting the layout\n // If the container layout measures a shorter height than previous but if the close snapped to the previous height's position, the bottom sheet will show up\n // this short delay ensures that close function is always called after a container layout due to keyboard change\n // NOTE: this timeout has to be above 500 as the keyboardAnimationDuration is 500 in the bottomsheet library - see src/hooks/useKeyboard.ts there for more details\n bottomSheetCloseTimeoutRef.current = setTimeout(() => {\n ref.current?.close();\n }, 600);\n }\n },\n FileSelectorIcon = DefaultFileSelectorIcon,\n giphyVersion,\n i18nInstance,\n imageGalleryCustomComponents,\n imageGalleryGridHandleHeight,\n imageGalleryGridSnapPoints,\n ImageOverlaySelectedComponent = DefaultImageOverlaySelectedComponent,\n ImageSelectorIcon = DefaultImageSelectorIcon,\n MessageActionList,\n MessageActionListItem,\n messageTextNumberOfLines,\n numberOfAttachmentImagesToLoadPerCall,\n numberOfAttachmentPickerImageColumns,\n numberOfImageGalleryGridColumns,\n openPicker = (ref) => {\n if (bottomSheetCloseTimeoutRef.current) {\n clearTimeout(bottomSheetCloseTimeoutRef.current);\n }\n if (ref.current?.snapToIndex) {\n ref.current.snapToIndex(0);\n } else {\n console.warn('bottom and top insets must be set for the image picker to work correctly');\n }\n },\n topInset,\n translucentStatusBar,\n OverlayReactionList,\n OverlayReactions,\n OverlayReactionsAvatar,\n value,\n } = props;\n\n const attachmentPickerProps = {\n AttachmentPickerBottomSheetHandle,\n attachmentPickerBottomSheetHandleHeight,\n attachmentPickerBottomSheetHeight,\n AttachmentPickerError,\n attachmentPickerErrorButtonText,\n AttachmentPickerErrorImage,\n attachmentPickerErrorText,\n AttachmentPickerIOSSelectMorePhotos,\n attachmentSelectionBarHeight,\n ImageOverlaySelectedComponent,\n numberOfAttachmentImagesToLoadPerCall,\n numberOfAttachmentPickerImageColumns,\n translucentStatusBar,\n };\n\n const bottomSheetRef = useRef<BottomSheet>(null);\n\n const [overlay, setOverlay] = useState(value?.overlay || 'none');\n\n const overlayOpacity = useSharedValue(0);\n const { height, width } = Dimensions.get('screen');\n\n // Setup translators\n const translators = useStreami18n(i18nInstance);\n\n useEffect(() => {\n const backAction = () => {\n if (overlay !== 'none') {\n setOverlay('none');\n return true;\n }\n\n return false;\n };\n\n const backHandler = BackHandler.addEventListener('hardwareBackPress', backAction);\n\n return () => backHandler.remove();\n }, [overlay]);\n\n useEffect(\n () =>\n // cleanup the timeout if the component unmounts\n () => {\n if (bottomSheetCloseTimeoutRef.current) {\n clearTimeout(bottomSheetCloseTimeoutRef.current);\n }\n },\n [],\n );\n\n useEffect(() => {\n closePicker(bottomSheetRef);\n cancelAnimation(overlayOpacity);\n if (overlay !== 'none') {\n overlayOpacity.value = withTiming(1);\n } else {\n overlayOpacity.value = withTiming(0);\n }\n }, [overlay]);\n\n const attachmentPickerContext = {\n attachmentPickerBottomSheetHeight,\n attachmentSelectionBarHeight,\n bottomInset,\n CameraSelectorIcon,\n closePicker: () => closePicker(bottomSheetRef),\n FileSelectorIcon,\n ImageSelectorIcon,\n openPicker: () => openPicker(bottomSheetRef),\n topInset,\n };\n\n const overlayStyle = useAnimatedStyle<ViewStyle>(\n () => ({\n opacity: overlayOpacity.value,\n }),\n [],\n );\n\n const overlayContext = {\n overlay,\n setOverlay,\n style: value?.style,\n translucentStatusBar,\n };\n\n return (\n <TranslationProvider value={{ ...translators, userLanguage: DEFAULT_USER_LANGUAGE }}>\n <OverlayContext.Provider value={overlayContext}>\n <MessageOverlayProvider<StreamChatGenerics>>\n <AttachmentPickerProvider value={attachmentPickerContext}>\n <ImageGalleryProvider>\n {children}\n <ThemeProvider style={overlayContext.style}>\n <Animated.View\n pointerEvents={overlay === 'none' ? 'none' : 'auto'}\n style={[StyleSheet.absoluteFill, overlayStyle]}\n >\n <OverlayBackdrop style={[StyleSheet.absoluteFill, { height, width }]} />\n </Animated.View>\n {overlay === 'message' && (\n <MessageOverlay<StreamChatGenerics>\n MessageActionList={MessageActionList}\n MessageActionListItem={MessageActionListItem}\n messageTextNumberOfLines={messageTextNumberOfLines}\n overlayOpacity={overlayOpacity}\n OverlayReactionList={OverlayReactionList}\n OverlayReactions={OverlayReactions}\n OverlayReactionsAvatar={OverlayReactionsAvatar}\n />\n )}\n {overlay === 'gallery' && (\n <ImageGallery<StreamChatGenerics>\n autoPlayVideo={autoPlayVideo}\n giphyVersion={giphyVersion}\n imageGalleryCustomComponents={imageGalleryCustomComponents}\n imageGalleryGridHandleHeight={imageGalleryGridHandleHeight}\n imageGalleryGridSnapPoints={imageGalleryGridSnapPoints}\n numberOfImageGalleryGridColumns={numberOfImageGalleryGridColumns}\n overlayOpacity={overlayOpacity}\n />\n )}\n <AttachmentPicker ref={bottomSheetRef} {...attachmentPickerProps} />\n </ThemeProvider>\n </ImageGalleryProvider>\n </AttachmentPickerProvider>\n </MessageOverlayProvider>\n </OverlayContext.Provider>\n </TranslationProvider>\n );\n};\n"],"mappings":"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"}
|
|
@@ -1,79 +1,79 @@
|
|
|
1
1
|
{
|
|
2
|
-
"1 Reply": "
|
|
3
|
-
"1 Thread Reply": "
|
|
4
|
-
"Allow access to your Gallery": "
|
|
5
|
-
"Allow camera access in device settings": "
|
|
2
|
+
"1 Reply": "",
|
|
3
|
+
"1 Thread Reply": "",
|
|
4
|
+
"Allow access to your Gallery": "",
|
|
5
|
+
"Allow camera access in device settings": "",
|
|
6
6
|
"Also send to channel": "",
|
|
7
7
|
"Are you sure you want to permanently delete this message?": "¿Estás seguro de que deseas eliminar permanentemente este mensaje?",
|
|
8
|
-
"Are you sure?": "",
|
|
8
|
+
"Are you sure?": "¿Estás seguro?",
|
|
9
9
|
"Block User": "Bloquear usuario",
|
|
10
10
|
"Cancel": "Cancelar",
|
|
11
11
|
"Cannot Flag Message": "No se puede reportar el mensaje",
|
|
12
|
-
"Consider how your comment might make others feel and be sure to follow our Community Guidelines": "",
|
|
12
|
+
"Consider how your comment might make others feel and be sure to follow our Community Guidelines": "Considera cómo tu comentario podría hacer sentir a los demás y asegúrate de seguir nuestras Normas de la Comunidad",
|
|
13
13
|
"Copy Message": "Copiar mensaje",
|
|
14
14
|
"Delete": "Eliminar",
|
|
15
15
|
"Delete Message": "Eliminar mensaje",
|
|
16
|
-
"Device camera is used to take photos or videos.": "
|
|
16
|
+
"Device camera is used to take photos or videos.": "",
|
|
17
17
|
"Do you want to send a copy of this message to a moderator for further investigation?": "¿Deseas enviar una copia de este mensaje a un moderador para una investigación adicional?",
|
|
18
18
|
"Edit Message": "Editar mensaje",
|
|
19
|
-
"Editing Message": "",
|
|
20
|
-
"Emoji matching": "",
|
|
19
|
+
"Editing Message": "Editando mensaje",
|
|
20
|
+
"Emoji matching": "Coincidencia de emoji",
|
|
21
21
|
"Empty message...": "",
|
|
22
22
|
"Error loading": "",
|
|
23
23
|
"Error loading channel list...": "",
|
|
24
|
-
"Error loading messages for this channel...": "",
|
|
24
|
+
"Error loading messages for this channel...": "Error al cargar los mensajes de este canal...",
|
|
25
25
|
"Error while loading, please reload/refresh": "",
|
|
26
|
-
"File type not supported": "
|
|
26
|
+
"File type not supported": "",
|
|
27
27
|
"Flag": "Reportar",
|
|
28
28
|
"Flag Message": "Reportar mensaje",
|
|
29
29
|
"Flag action failed either due to a network issue or the message is already flagged": "El reporte falló debido a un problema de red o el mensaje ya fue reportado.",
|
|
30
30
|
"How about sending your first message to a friend?": "",
|
|
31
|
-
"Instant Commands": "",
|
|
31
|
+
"Instant Commands": "Comandos instantáneos",
|
|
32
32
|
"Let's start chatting!": "",
|
|
33
|
-
"Links are disabled": "",
|
|
33
|
+
"Links are disabled": "Los enlaces están desactivados",
|
|
34
34
|
"Loading channels...": "",
|
|
35
35
|
"Loading messages...": "",
|
|
36
36
|
"Loading...": "",
|
|
37
|
-
"Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "",
|
|
38
|
-
"Message Reactions": "
|
|
39
|
-
"Message deleted": "",
|
|
37
|
+
"Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "El archivo supera el tamaño máximo permitido. Por favor, selecciona un archivo menor a {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.",
|
|
38
|
+
"Message Reactions": "",
|
|
39
|
+
"Message deleted": "Mensaje eliminado",
|
|
40
40
|
"Message flagged": "Mensaje reportado",
|
|
41
41
|
"Mute User": "Silenciar usuario",
|
|
42
|
-
"Not supported": "",
|
|
42
|
+
"Not supported": "No admitido",
|
|
43
43
|
"Nothing yet...": "",
|
|
44
44
|
"Ok": "Aceptar",
|
|
45
45
|
"Only visible to you": "",
|
|
46
|
-
"Open Settings": "
|
|
47
|
-
"Photo": "",
|
|
48
|
-
"Photos and Videos": "
|
|
46
|
+
"Open Settings": "",
|
|
47
|
+
"Photo": "Foto",
|
|
48
|
+
"Photos and Videos": "",
|
|
49
49
|
"Pin to Conversation": "Fijar a la conversación",
|
|
50
50
|
"Pinned by": "",
|
|
51
|
-
"Please enable access to your photos and videos so you can share them.": "
|
|
52
|
-
"Please select a channel first": "",
|
|
53
|
-
"Reconnecting...": "",
|
|
51
|
+
"Please enable access to your photos and videos so you can share them.": "",
|
|
52
|
+
"Please select a channel first": "Por favor, selecciona primero un canal",
|
|
53
|
+
"Reconnecting...": "Reconectando...",
|
|
54
54
|
"Reply": "Responder",
|
|
55
|
-
"Reply to Message": "
|
|
55
|
+
"Reply to Message": "",
|
|
56
56
|
"Resend": "Reenviar",
|
|
57
|
-
"Search GIFs": "
|
|
58
|
-
"Select More Photos": "
|
|
59
|
-
"Send Anyway": "",
|
|
60
|
-
"Send a message": "
|
|
61
|
-
"Sending links is not allowed in this conversation": "",
|
|
62
|
-
"Slow mode ON": "
|
|
57
|
+
"Search GIFs": "",
|
|
58
|
+
"Select More Photos": "",
|
|
59
|
+
"Send Anyway": "Enviar de todos modos",
|
|
60
|
+
"Send a message": "",
|
|
61
|
+
"Sending links is not allowed in this conversation": "No está permitido enviar enlaces en esta conversación",
|
|
62
|
+
"Slow mode ON": "",
|
|
63
63
|
"The message has been reported to a moderator.": "El mensaje ha sido reportado a un moderador.",
|
|
64
64
|
"Thread Reply": "Respuesta de hilo",
|
|
65
65
|
"Unblock User": "Desbloquear usuario",
|
|
66
|
-
"Unknown User": "
|
|
66
|
+
"Unknown User": "",
|
|
67
67
|
"Unmute User": "Activar sonido del usuario",
|
|
68
68
|
"Unpin from Conversation": "Desmarcar de la conversación",
|
|
69
69
|
"Unread Messages": "",
|
|
70
|
-
"Video": "",
|
|
71
|
-
"You": "",
|
|
70
|
+
"Video": "Video",
|
|
71
|
+
"You": "Tú",
|
|
72
72
|
"You can't send messages in this channel": "",
|
|
73
|
-
"{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "",
|
|
74
|
-
"{{ index }} of {{ photoLength }}": "
|
|
75
|
-
"{{ replyCount }} Replies": "
|
|
76
|
-
"{{ replyCount }} Thread Replies": "
|
|
77
|
-
"{{ user }} is typing": "",
|
|
73
|
+
"{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "{{ firstUser }} y {{ nonSelfUserLength }} más están escribiendo",
|
|
74
|
+
"{{ index }} of {{ photoLength }}": "",
|
|
75
|
+
"{{ replyCount }} Replies": "",
|
|
76
|
+
"{{ replyCount }} Thread Replies": "",
|
|
77
|
+
"{{ user }} is typing": "{{ user }} está escribiendo",
|
|
78
78
|
"🏙 Attachment...": ""
|
|
79
79
|
}
|