From ed20c855d10adccb701427a1cdff47cff3fdb3c9 Mon Sep 17 00:00:00 2001 From: Aviad Pineles Date: Thu, 21 Sep 2023 21:18:01 +0300 Subject: [PATCH 1/3] feat: properly fetch all settings from server (#5177) --- app/lib/methods/getSettings.ts | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/app/lib/methods/getSettings.ts b/app/lib/methods/getSettings.ts index 72c3433dc..c3c9cd9bb 100644 --- a/app/lib/methods/getSettings.ts +++ b/app/lib/methods/getSettings.ts @@ -150,16 +150,31 @@ export async function getSettings(): Promise { const db = database.active; const settingsParams = Object.keys(defaultSettings).filter(key => !loginSettings.includes(key)); // RC 0.60.0 - const result = await fetch( - `${sdk.current.client.host}/api/v1/settings.public?query={"_id":{"$in":${JSON.stringify(settingsParams)}}}&count=${ - settingsParams.length - }` - ).then(response => response.json()); + let offset = 0; + let remaining; + let settings: IData[] = []; - if (!result.success) { - return; - } - const data: IData[] = result.settings || []; + // Iterate over paginated results to retrieve all settings + do { + // TODO: why is no-await-in-loop enforced in the first place? + /* eslint-disable no-await-in-loop */ + const response = await fetch( + `${sdk.current.client.host}/api/v1/settings.public?query={"_id":{"$in":${JSON.stringify(settingsParams)}}} + &offset=${offset}`); + + const result = await response.json(); + + if (!result.success) { + return; + } + + offset += result.settings.length; + settings = [...settings, ...result.settings]; + remaining = result.total - settings.length; + /* eslint-enable no-await-in-loop */ + } while(remaining > 0); + + const data: IData[] = settings; const filteredSettings: IPreparedSettings[] = _prepareSettings(data); const filteredSettingsIds = filteredSettings.map(s => s._id); const parsedSettings = parseSettings(filteredSettings); From 043f48ae548a8ace37b0e280264822d88230662c Mon Sep 17 00:00:00 2001 From: Diego Mello Date: Thu, 21 Sep 2023 15:32:47 -0300 Subject: [PATCH 2/3] chore: Migrate RoomView/List to Hooks (#5207) --- app/views/RoomView/List/List.tsx | 49 -- app/views/RoomView/List/NavBottomFAB.tsx | 75 ---- .../{ => List/components}/EmptyRoom.tsx | 8 +- app/views/RoomView/List/components/List.tsx | 60 +++ .../RoomView/List/components/NavBottomFAB.tsx | 68 +++ .../List/{ => components}/RefreshControl.tsx | 8 +- app/views/RoomView/List/components/index.ts | 4 + app/views/RoomView/List/constants.ts | 7 + app/views/RoomView/List/definitions.ts | 31 ++ app/views/RoomView/List/hooks/index.ts | 3 + app/views/RoomView/List/hooks/useMessages.ts | 111 +++++ app/views/RoomView/List/hooks/useRefresh.ts | 27 ++ app/views/RoomView/List/hooks/useScroll.ts | 102 +++++ app/views/RoomView/List/index.tsx | 419 +++--------------- app/views/RoomView/index.tsx | 70 +-- 15 files changed, 493 insertions(+), 549 deletions(-) delete mode 100644 app/views/RoomView/List/List.tsx delete mode 100644 app/views/RoomView/List/NavBottomFAB.tsx rename app/views/RoomView/{ => List/components}/EmptyRoom.tsx (61%) create mode 100644 app/views/RoomView/List/components/List.tsx create mode 100644 app/views/RoomView/List/components/NavBottomFAB.tsx rename app/views/RoomView/List/{ => components}/RefreshControl.tsx (76%) create mode 100644 app/views/RoomView/List/components/index.ts create mode 100644 app/views/RoomView/List/constants.ts create mode 100644 app/views/RoomView/List/definitions.ts create mode 100644 app/views/RoomView/List/hooks/index.ts create mode 100644 app/views/RoomView/List/hooks/useMessages.ts create mode 100644 app/views/RoomView/List/hooks/useRefresh.ts create mode 100644 app/views/RoomView/List/hooks/useScroll.ts diff --git a/app/views/RoomView/List/List.tsx b/app/views/RoomView/List/List.tsx deleted file mode 100644 index cf235ee8d..000000000 --- a/app/views/RoomView/List/List.tsx +++ /dev/null @@ -1,49 +0,0 @@ -import PropTypes from 'prop-types'; -import React from 'react'; -import { FlatListProps, StyleSheet } from 'react-native'; -import { FlatList } from 'react-native-gesture-handler'; -import Animated from 'react-native-reanimated'; - -import { isIOS } from '../../../lib/methods/helpers'; -import scrollPersistTaps from '../../../lib/methods/helpers/scrollPersistTaps'; - -const AnimatedFlatList = Animated.createAnimatedComponent(FlatList); - -const styles = StyleSheet.create({ - list: { - flex: 1 - }, - contentContainer: { - paddingTop: 10 - } -}); - -export type TListRef = React.RefObject FlatList }>; - -export interface IListProps extends FlatListProps { - listRef: TListRef; -} - -const List = ({ listRef, ...props }: IListProps) => ( - item.id} - contentContainerStyle={styles.contentContainer} - style={styles.list} - inverted={isIOS} - removeClippedSubviews={isIOS} - initialNumToRender={7} - onEndReachedThreshold={0.5} - maxToRenderPerBatch={5} - windowSize={10} - {...props} - {...scrollPersistTaps} - /> -); - -List.propTypes = { - listRef: PropTypes.object -}; - -export default List; diff --git a/app/views/RoomView/List/NavBottomFAB.tsx b/app/views/RoomView/List/NavBottomFAB.tsx deleted file mode 100644 index 695c4ba38..000000000 --- a/app/views/RoomView/List/NavBottomFAB.tsx +++ /dev/null @@ -1,75 +0,0 @@ -import React, { useState } from 'react'; -import { StyleSheet, View } from 'react-native'; -import Animated, { call, cond, greaterOrEq, useCode } from 'react-native-reanimated'; - -import { themes } from '../../../lib/constants'; -import { CustomIcon } from '../../../containers/CustomIcon'; -import { useTheme } from '../../../theme'; -import Touch from '../../../containers/Touch'; -import { hasNotch } from '../../../lib/methods/helpers'; - -const SCROLL_LIMIT = 200; -const SEND_TO_CHANNEL_HEIGHT = 40; - -const styles = StyleSheet.create({ - container: { - position: 'absolute', - right: 15 - }, - button: { - borderRadius: 25 - }, - content: { - width: 50, - height: 50, - borderRadius: 25, - borderWidth: 1, - alignItems: 'center', - justifyContent: 'center' - } -}); - -const NavBottomFAB = ({ - y, - onPress, - isThread -}: { - y: Animated.Value; - onPress: Function; - isThread: boolean; -}): React.ReactElement | null => { - const { theme } = useTheme(); - const [show, setShow] = useState(false); - const handleOnPress = () => onPress(); - const toggle = (v: boolean) => setShow(v); - - useCode( - () => - cond( - greaterOrEq(y, SCROLL_LIMIT), - call([y], () => toggle(true)), - call([y], () => toggle(false)) - ), - [y] - ); - - if (!show) { - return null; - } - - let bottom = hasNotch ? 100 : 60; - if (isThread) { - bottom += SEND_TO_CHANNEL_HEIGHT; - } - return ( - - - - - - - - ); -}; - -export default NavBottomFAB; diff --git a/app/views/RoomView/EmptyRoom.tsx b/app/views/RoomView/List/components/EmptyRoom.tsx similarity index 61% rename from app/views/RoomView/EmptyRoom.tsx rename to app/views/RoomView/List/components/EmptyRoom.tsx index 99ac35e45..a5dab0779 100644 --- a/app/views/RoomView/EmptyRoom.tsx +++ b/app/views/RoomView/List/components/EmptyRoom.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { ImageBackground, StyleSheet } from 'react-native'; -import { useTheme } from '../../theme'; +import { useTheme } from '../../../../theme'; const styles = StyleSheet.create({ image: { @@ -11,12 +11,10 @@ const styles = StyleSheet.create({ } }); -const EmptyRoom = React.memo(({ length, mounted, rid }: { length: number; mounted: boolean; rid: string }) => { +export const EmptyRoom = React.memo(({ length, rid }: { length: number; rid: string }) => { const { theme } = useTheme(); - if ((length === 0 && mounted) || !rid) { + if (length === 0 || !rid) { return ; } return null; }); - -export default EmptyRoom; diff --git a/app/views/RoomView/List/components/List.tsx b/app/views/RoomView/List/components/List.tsx new file mode 100644 index 000000000..22c07570f --- /dev/null +++ b/app/views/RoomView/List/components/List.tsx @@ -0,0 +1,60 @@ +import React, { useState } from 'react'; +import { FlatListProps, StyleSheet } from 'react-native'; +import { FlatList } from 'react-native-gesture-handler'; +import Animated, { runOnJS, useAnimatedScrollHandler } from 'react-native-reanimated'; + +import { isIOS } from '../../../../lib/methods/helpers'; +import scrollPersistTaps from '../../../../lib/methods/helpers/scrollPersistTaps'; +import NavBottomFAB from './NavBottomFAB'; +import { IListProps } from '../definitions'; +import { SCROLL_LIMIT } from '../constants'; +import { TAnyMessageModel } from '../../../../definitions'; + +const AnimatedFlatList = Animated.createAnimatedComponent>(FlatList); + +const styles = StyleSheet.create({ + list: { + flex: 1 + }, + contentContainer: { + paddingTop: 10 + } +}); + +export const List = ({ listRef, jumpToBottom, isThread, ...props }: IListProps) => { + const [visible, setVisible] = useState(false); + + const scrollHandler = useAnimatedScrollHandler({ + onScroll: event => { + if (event.contentOffset.y > SCROLL_LIMIT) { + runOnJS(setVisible)(true); + } else { + runOnJS(setVisible)(false); + } + } + }); + + return ( + <> + item.id} + contentContainerStyle={styles.contentContainer} + style={styles.list} + inverted={isIOS} + removeClippedSubviews={isIOS} + initialNumToRender={7} + onEndReachedThreshold={0.5} + maxToRenderPerBatch={5} + windowSize={10} + scrollEventThrottle={16} + onScroll={scrollHandler} + {...props} + {...scrollPersistTaps} + /> + + + ); +}; diff --git a/app/views/RoomView/List/components/NavBottomFAB.tsx b/app/views/RoomView/List/components/NavBottomFAB.tsx new file mode 100644 index 000000000..a0d9a65c6 --- /dev/null +++ b/app/views/RoomView/List/components/NavBottomFAB.tsx @@ -0,0 +1,68 @@ +import React from 'react'; +import { StyleSheet, View, Platform } from 'react-native'; + +import { CustomIcon } from '../../../../containers/CustomIcon'; +import { useTheme } from '../../../../theme'; +import Touch from '../../../../containers/Touch'; + +const styles = StyleSheet.create({ + container: { + position: 'absolute', + right: 15 + }, + button: { + borderRadius: 25 + }, + content: { + width: 50, + height: 50, + borderRadius: 25, + borderWidth: 1, + alignItems: 'center', + justifyContent: 'center' + } +}); + +const NavBottomFAB = ({ + visible, + onPress, + isThread +}: { + visible: boolean; + onPress: Function; + isThread: boolean; +}): React.ReactElement | null => { + const { colors } = useTheme(); + + if (!visible) { + return null; + } + + return ( + + onPress()} style={[styles.button, { backgroundColor: colors.backgroundColor }]}> + + + + + + ); +}; + +export default NavBottomFAB; diff --git a/app/views/RoomView/List/RefreshControl.tsx b/app/views/RoomView/List/components/RefreshControl.tsx similarity index 76% rename from app/views/RoomView/List/RefreshControl.tsx rename to app/views/RoomView/List/components/RefreshControl.tsx index 2f6b28f35..ef72298ab 100644 --- a/app/views/RoomView/List/RefreshControl.tsx +++ b/app/views/RoomView/List/components/RefreshControl.tsx @@ -1,8 +1,8 @@ import React from 'react'; import { RefreshControl as RNRefreshControl, RefreshControlProps, StyleSheet } from 'react-native'; -import { useTheme } from '../../../theme'; -import { isAndroid } from '../../../lib/methods/helpers'; +import { useTheme } from '../../../../theme'; +import { isAndroid } from '../../../../lib/methods/helpers'; const style = StyleSheet.create({ container: { @@ -17,7 +17,7 @@ interface IRefreshControl extends RefreshControlProps { children: React.ReactElement; } -const RefreshControl = ({ children, onRefresh, refreshing }: IRefreshControl): React.ReactElement => { +export const RefreshControl = ({ children, onRefresh, refreshing }: IRefreshControl): React.ReactElement => { const { colors } = useTheme(); if (isAndroid) { return ( @@ -36,5 +36,3 @@ const RefreshControl = ({ children, onRefresh, refreshing }: IRefreshControl): R return React.cloneElement(children, { refreshControl }); }; - -export default RefreshControl; diff --git a/app/views/RoomView/List/components/index.ts b/app/views/RoomView/List/components/index.ts new file mode 100644 index 000000000..7f17ff1d9 --- /dev/null +++ b/app/views/RoomView/List/components/index.ts @@ -0,0 +1,4 @@ +export * from './NavBottomFAB'; +export * from './RefreshControl'; +export * from './EmptyRoom'; +export * from './List'; diff --git a/app/views/RoomView/List/constants.ts b/app/views/RoomView/List/constants.ts new file mode 100644 index 000000000..30aafb545 --- /dev/null +++ b/app/views/RoomView/List/constants.ts @@ -0,0 +1,7 @@ +export const QUERY_SIZE = 50; + +export const VIEWABILITY_CONFIG = { + itemVisiblePercentThreshold: 10 +}; + +export const SCROLL_LIMIT = 200; diff --git a/app/views/RoomView/List/definitions.ts b/app/views/RoomView/List/definitions.ts new file mode 100644 index 000000000..127ec702e --- /dev/null +++ b/app/views/RoomView/List/definitions.ts @@ -0,0 +1,31 @@ +import { RefObject } from 'react'; +import { FlatListProps } from 'react-native'; +import { FlatList } from 'react-native-gesture-handler'; + +import { TAnyMessageModel } from '../../../definitions'; + +export type TListRef = RefObject>; + +export type TMessagesIdsRef = RefObject; + +export interface IListProps extends FlatListProps { + listRef: TListRef; + jumpToBottom: () => void; + isThread: boolean; +} + +export interface IListContainerRef { + jumpToMessage: (messageId: string) => Promise; + cancelJumpToMessage: () => void; +} + +export interface IListContainerProps { + renderRow: Function; + rid: string; + tmid?: string; + loading: boolean; + listRef: TListRef; + hideSystemMessages: string[]; + showMessageInMainThread: boolean; + serverVersion: string | null; +} diff --git a/app/views/RoomView/List/hooks/index.ts b/app/views/RoomView/List/hooks/index.ts new file mode 100644 index 000000000..12e970eca --- /dev/null +++ b/app/views/RoomView/List/hooks/index.ts @@ -0,0 +1,3 @@ +export * from './useMessages'; +export * from './useRefresh'; +export * from './useScroll'; diff --git a/app/views/RoomView/List/hooks/useMessages.ts b/app/views/RoomView/List/hooks/useMessages.ts new file mode 100644 index 000000000..0f5fa0c15 --- /dev/null +++ b/app/views/RoomView/List/hooks/useMessages.ts @@ -0,0 +1,111 @@ +import { useCallback, useLayoutEffect, useRef, useState } from 'react'; +import { Q } from '@nozbe/watermelondb'; +import { Subscription } from 'rxjs'; + +import { TAnyMessageModel, TThreadModel } from '../../../../definitions'; +import database from '../../../../lib/database'; +import { getThreadById } from '../../../../lib/database/services/Thread'; +import { animateNextTransition, compareServerVersion, isIOS, useDebounce } from '../../../../lib/methods/helpers'; +import { Services } from '../../../../lib/services'; +import { QUERY_SIZE } from '../constants'; + +export const useMessages = ({ + rid, + tmid, + showMessageInMainThread, + serverVersion, + hideSystemMessages +}: { + rid: string; + tmid?: string; + showMessageInMainThread: boolean; + serverVersion: string | null; + hideSystemMessages: string[]; +}) => { + const [messages, setMessages] = useState([]); + const thread = useRef(null); + const count = useRef(0); + const subscription = useRef(null); + const messagesIds = useRef([]); + + const fetchMessages = useCallback(async () => { + unsubscribe(); + count.current += QUERY_SIZE; + + if (!rid) { + return; + } + + const db = database.active; + let observable; + if (tmid) { + if (!thread.current) { + thread.current = await getThreadById(tmid); + } + observable = db + .get('thread_messages') + .query(Q.where('rid', tmid), Q.experimentalSortBy('ts', Q.desc), Q.experimentalSkip(0), Q.experimentalTake(count.current)) + .observe(); + } else { + const whereClause = [ + Q.where('rid', rid), + Q.experimentalSortBy('ts', Q.desc), + Q.experimentalSkip(0), + Q.experimentalTake(count.current) + ] as (Q.WhereDescription | Q.Or)[]; + if (!showMessageInMainThread) { + whereClause.push(Q.or(Q.where('tmid', null), Q.where('tshow', Q.eq(true)))); + } + observable = db + .get('messages') + .query(...whereClause) + .observe(); + } + + subscription.current = observable.subscribe(result => { + let newMessages: TAnyMessageModel[] = result; + if (tmid && thread.current) { + newMessages.push(thread.current); + } + + /** + * Since 3.16.0 server version, the backend don't response with messages if + * hide system message is enabled + */ + if (compareServerVersion(serverVersion, 'lowerThan', '3.16.0') || hideSystemMessages.length) { + newMessages = newMessages.filter(m => !m.t || !hideSystemMessages?.includes(m.t)); + } + + readThread(); + if (isIOS) { + animateNextTransition(); + } + setMessages(newMessages); + messagesIds.current = newMessages.map(m => m.id); + }); + }, [rid, tmid, showMessageInMainThread, serverVersion, hideSystemMessages]); + + const readThread = useDebounce(async () => { + if (tmid) { + try { + await Services.readThreads(tmid); + } catch { + // Do nothing + } + } + }, 1000); + + useLayoutEffect(() => { + fetchMessages(); + + return () => { + unsubscribe(); + }; + }, [rid, tmid, showMessageInMainThread, serverVersion, hideSystemMessages, fetchMessages]); + + const unsubscribe = () => { + subscription.current?.unsubscribe(); + }; + + return [messages, messagesIds, fetchMessages] as const; +}; diff --git a/app/views/RoomView/List/hooks/useRefresh.ts b/app/views/RoomView/List/hooks/useRefresh.ts new file mode 100644 index 000000000..79b744d13 --- /dev/null +++ b/app/views/RoomView/List/hooks/useRefresh.ts @@ -0,0 +1,27 @@ +import moment from 'moment'; +import { useState } from 'react'; + +import log from '../../../../lib/methods/helpers/log'; +import { loadMissedMessages, loadThreadMessages } from '../../../../lib/methods'; + +export const useRefresh = ({ rid, tmid, messagesLength }: { rid: string; tmid?: string; messagesLength: number }) => { + const [refreshing, setRefreshing] = useState(false); + + const refresh = async () => { + if (messagesLength) { + setRefreshing(true); + try { + if (tmid) { + await loadThreadMessages({ tmid, rid }); + } else { + await loadMissedMessages({ rid, lastOpen: moment().subtract(7, 'days').toDate() }); + } + } catch (e) { + log(e); + } + setRefreshing(false); + } + }; + + return [refreshing, refresh] as const; +}; diff --git a/app/views/RoomView/List/hooks/useScroll.ts b/app/views/RoomView/List/hooks/useScroll.ts new file mode 100644 index 000000000..68a24446a --- /dev/null +++ b/app/views/RoomView/List/hooks/useScroll.ts @@ -0,0 +1,102 @@ +import { useEffect, useRef, useState } from 'react'; +import { ViewToken, ViewabilityConfigCallbackPairs } from 'react-native'; + +import { IListContainerRef, IListProps, TListRef, TMessagesIdsRef } from '../definitions'; +import { VIEWABILITY_CONFIG } from '../constants'; + +export const useScroll = ({ listRef, messagesIds }: { listRef: TListRef; messagesIds: TMessagesIdsRef }) => { + const [highlightedMessageId, setHighlightedMessageId] = useState(null); + const cancelJump = useRef(false); + const jumping = useRef(false); + const viewableItems = useRef(null); + const highlightTimeout = useRef | null>(null); + + useEffect(() => () => { + if (highlightTimeout.current) { + clearTimeout(highlightTimeout.current); + } + }); + + const jumpToBottom = () => { + listRef.current?.scrollToOffset({ offset: -100 }); + }; + + const onViewableItemsChanged: IListProps['onViewableItemsChanged'] = ({ viewableItems: vi }) => { + viewableItems.current = vi; + }; + + const viewabilityConfigCallbackPairs = useRef([ + { onViewableItemsChanged, viewabilityConfig: VIEWABILITY_CONFIG } + ]); + + const handleScrollToIndexFailed: IListProps['onScrollToIndexFailed'] = params => { + listRef.current?.scrollToIndex({ index: params.highestMeasuredFrameIndex, animated: false }); + }; + + const setHighlightTimeout = () => { + if (highlightTimeout.current) { + clearTimeout(highlightTimeout.current); + } + highlightTimeout.current = setTimeout(() => { + setHighlightedMessageId(null); + }, 5000); + }; + + const jumpToMessage: IListContainerRef['jumpToMessage'] = messageId => + new Promise(async resolve => { + // if jump to message was cancelled, reset variables and stop + if (cancelJump.current) { + resetJumpToMessage(); + return resolve(); + } + jumping.current = true; + + // look for the message on the state + const index = messagesIds.current?.findIndex(item => item === messageId); + + // if found message, scroll to it + if (index && index > -1) { + listRef.current?.scrollToIndex({ index, viewPosition: 0.5, viewOffset: 100 }); + + // wait for scroll animation to finish + await new Promise(res => setTimeout(res, 300)); + + // if message is not visible + if (!viewableItems.current?.map(vi => vi.key).includes(messageId)) { + await setTimeout(() => resolve(jumpToMessage(messageId)), 300); + return; + } + // if message is visible, highlight it + setHighlightedMessageId(messageId); + setHighlightTimeout(); + resetJumpToMessage(); + resolve(); + } else { + // if message not on state yet, scroll to top, so it triggers onEndReached and try again + listRef.current?.scrollToEnd(); + await setTimeout(() => resolve(jumpToMessage(messageId)), 600); + } + }); + + const resetJumpToMessage = () => { + cancelJump.current = false; + jumping.current = false; + }; + + const cancelJumpToMessage: IListContainerRef['cancelJumpToMessage'] = () => { + if (jumping.current) { + cancelJump.current = true; + return; + } + resetJumpToMessage(); + }; + + return { + jumpToBottom, + jumpToMessage, + cancelJumpToMessage, + viewabilityConfigCallbackPairs, + handleScrollToIndexFailed, + highlightedMessageId + }; +}; diff --git a/app/views/RoomView/List/index.tsx b/app/views/RoomView/List/index.tsx index 42c666ed9..6846f208f 100644 --- a/app/views/RoomView/List/index.tsx +++ b/app/views/RoomView/List/index.tsx @@ -1,25 +1,11 @@ -import { Q } from '@nozbe/watermelondb'; -import { dequal } from 'dequal'; -import moment from 'moment'; -import React from 'react'; -import { FlatListProps, View, ViewToken, StyleSheet, Platform } from 'react-native'; -import { event, Value } from 'react-native-reanimated'; -import { Observable, Subscription } from 'rxjs'; +import React, { forwardRef, useImperativeHandle } from 'react'; +import { View, Platform, StyleSheet } from 'react-native'; import ActivityIndicator from '../../../containers/ActivityIndicator'; -import { TAnyMessageModel, TMessageModel, TThreadMessageModel, TThreadModel } from '../../../definitions'; -import database from '../../../lib/database'; -import { compareServerVersion, debounce } from '../../../lib/methods/helpers'; -import { animateNextTransition } from '../../../lib/methods/helpers/layoutAnimation'; -import log from '../../../lib/methods/helpers/log'; -import EmptyRoom from '../EmptyRoom'; -import List, { IListProps, TListRef } from './List'; -import NavBottomFAB from './NavBottomFAB'; -import { loadMissedMessages, loadThreadMessages } from '../../../lib/methods'; -import { Services } from '../../../lib/services'; -import RefreshControl from './RefreshControl'; - -const QUERY_SIZE = 50; +import { useMessages, useRefresh, useScroll } from './hooks'; +import { useDebounce } from '../../../lib/methods/helpers'; +import { RefreshControl, EmptyRoom, List } from './components'; +import { IListContainerProps, IListContainerRef, IListProps } from './definitions'; const styles = StyleSheet.create({ inverted: { @@ -31,367 +17,64 @@ const styles = StyleSheet.create({ } }); -const onScroll = ({ y }: { y: Value }) => - event( - [ - { - nativeEvent: { - contentOffset: { y } - } +const ListContainer = forwardRef( + ({ rid, tmid, renderRow, showMessageInMainThread, serverVersion, hideSystemMessages, listRef, loading }, ref) => { + const [messages, messagesIds, fetchMessages] = useMessages({ + rid, + tmid, + showMessageInMainThread, + serverVersion, + hideSystemMessages + }); + const [refreshing, refresh] = useRefresh({ rid, tmid, messagesLength: messages.length }); + const { + jumpToBottom, + jumpToMessage, + cancelJumpToMessage, + viewabilityConfigCallbackPairs, + handleScrollToIndexFailed, + highlightedMessageId + } = useScroll({ listRef, messagesIds }); + + const onEndReached = useDebounce(() => { + fetchMessages(); + }, 300); + + useImperativeHandle(ref, () => ({ + jumpToMessage, + cancelJumpToMessage + })); + + const renderFooter = () => { + if (loading && rid) { + return ; } - ], - { useNativeDriver: true } - ); - -export { IListProps }; - -export interface IListContainerProps { - renderRow: Function; - rid: string; - tmid?: string; - loading: boolean; - listRef: TListRef; - hideSystemMessages?: string[]; - tunread?: string[]; - ignored?: string[]; - navigation: any; // TODO: type me - showMessageInMainThread: boolean; - serverVersion: string | null; - autoTranslateRoom?: boolean; - autoTranslateLanguage?: string; -} - -interface IListContainerState { - messages: TAnyMessageModel[]; - refreshing: boolean; - highlightedMessage: string | null; -} - -class ListContainer extends React.Component { - private count = 0; - private mounted = false; - private animated = false; - private jumping = false; - private cancelJump = false; - private y = new Value(0); - private onScroll = onScroll({ y: this.y }); - private unsubscribeFocus: () => void; - private viewabilityConfig = { - itemVisiblePercentThreshold: 10 - }; - private highlightedMessageTimeout: ReturnType | undefined | false; - private thread?: TThreadModel; - private messagesObservable?: Observable; - private messagesSubscription?: Subscription; - private viewableItems?: ViewToken[]; - - constructor(props: IListContainerProps) { - super(props); - console.time(`${this.constructor.name} init`); - console.time(`${this.constructor.name} mount`); - this.state = { - messages: [], - refreshing: false, - highlightedMessage: null + return null; }; - this.query(); - this.unsubscribeFocus = props.navigation.addListener('focus', () => { - this.animated = true; - }); - console.timeEnd(`${this.constructor.name} init`); - } - componentDidMount() { - this.mounted = true; - console.timeEnd(`${this.constructor.name} mount`); - } + const renderItem: IListProps['renderItem'] = ({ item, index }) => ( + {renderRow(item, messages[index + 1], highlightedMessageId)} + ); - shouldComponentUpdate(nextProps: IListContainerProps, nextState: IListContainerState) { - const { refreshing, highlightedMessage } = this.state; - const { hideSystemMessages, tunread, ignored, loading, autoTranslateLanguage, autoTranslateRoom } = this.props; - if (loading !== nextProps.loading) { - return true; - } - if (highlightedMessage !== nextState.highlightedMessage) { - return true; - } - if (refreshing !== nextState.refreshing) { - return true; - } - if (!dequal(hideSystemMessages, nextProps.hideSystemMessages)) { - return true; - } - if (!dequal(tunread, nextProps.tunread)) { - return true; - } - if (!dequal(ignored, nextProps.ignored)) { - return true; - } - if (autoTranslateLanguage !== nextProps.autoTranslateLanguage || autoTranslateRoom !== nextProps.autoTranslateRoom) { - return true; - } - return false; - } - - componentDidUpdate(prevProps: IListContainerProps) { - const { hideSystemMessages } = this.props; - if (!dequal(hideSystemMessages, prevProps.hideSystemMessages)) { - this.reload(); - } - } - - componentWillUnmount() { - this.unsubscribeMessages(); - if (this.unsubscribeFocus) { - this.unsubscribeFocus(); - } - this.clearHighlightedMessageTimeout(); - console.countReset(`${this.constructor.name}.render calls`); - } - - // clears previous highlighted message timeout, if exists - clearHighlightedMessageTimeout = () => { - if (this.highlightedMessageTimeout) { - clearTimeout(this.highlightedMessageTimeout); - this.highlightedMessageTimeout = false; - } - }; - - query = async () => { - this.count += QUERY_SIZE; - const { rid, tmid, showMessageInMainThread, serverVersion } = this.props; - const db = database.active; - - // handle servers with version < 3.0.0 - let { hideSystemMessages = [] } = this.props; - if (!Array.isArray(hideSystemMessages)) { - hideSystemMessages = []; - } - - if (tmid) { - try { - this.thread = await db.get('threads').find(tmid); - } catch (e) { - console.log(e); - } - this.messagesObservable = db - .get('thread_messages') - .query(Q.where('rid', tmid), Q.experimentalSortBy('ts', Q.desc), Q.experimentalSkip(0), Q.experimentalTake(this.count)) - .observe(); - } else if (rid) { - const whereClause = [ - Q.where('rid', rid), - Q.experimentalSortBy('ts', Q.desc), - Q.experimentalSkip(0), - Q.experimentalTake(this.count) - ] as (Q.WhereDescription | Q.Or)[]; - if (!showMessageInMainThread) { - whereClause.push(Q.or(Q.where('tmid', null), Q.where('tshow', Q.eq(true)))); - } - this.messagesObservable = db - .get('messages') - .query(...whereClause) - .observe(); - } - - if (rid) { - this.unsubscribeMessages(); - this.messagesSubscription = this.messagesObservable?.subscribe(messages => { - if (tmid && this.thread) { - messages = [...messages, this.thread]; - } - - /** - * Since 3.16.0 server version, the backend don't response with messages if - * hide system message is enabled - */ - if (compareServerVersion(serverVersion, 'lowerThan', '3.16.0') || hideSystemMessages.length) { - messages = messages.filter(m => !m.t || !hideSystemMessages?.includes(m.t)); - } - - if (this.mounted) { - this.setState({ messages }, () => this.update()); - } else { - // @ts-ignore - this.state.messages = messages; - } - // TODO: move it away from here - this.readThreads(); - }); - } - }; - - reload = () => { - this.count = 0; - this.query(); - }; - - readThreads = debounce(async () => { - const { tmid } = this.props; - - if (tmid) { - try { - await Services.readThreads(tmid); - } catch { - // Do nothing - } - } - }, 300); - - onEndReached = () => this.query(); - - onRefresh = () => - this.setState({ refreshing: true }, async () => { - const { messages } = this.state; - const { rid, tmid } = this.props; - - if (messages.length) { - try { - if (tmid) { - await loadThreadMessages({ tmid, rid }); - } else { - await loadMissedMessages({ rid, lastOpen: moment().subtract(7, 'days').toDate() }); - } - } catch (e) { - log(e); - } - } - - this.setState({ refreshing: false }); - }); - - update = () => { - if (this.animated) { - animateNextTransition(); - } - this.forceUpdate(); - }; - - unsubscribeMessages = () => { - if (this.messagesSubscription && this.messagesSubscription.unsubscribe) { - this.messagesSubscription.unsubscribe(); - } - }; - - getLastMessage = (): TMessageModel | TThreadMessageModel | null => { - const { messages } = this.state; - if (messages.length > 0) { - return messages[0]; - } - return null; - }; - - handleScrollToIndexFailed: FlatListProps['onScrollToIndexFailed'] = params => { - const { listRef } = this.props; - listRef.current?.scrollToIndex({ index: params.highestMeasuredFrameIndex, animated: false }); - }; - - jumpToMessage = (messageId: string) => - new Promise(async resolve => { - const { messages } = this.state; - const { listRef } = this.props; - - // if jump to message was cancelled, reset variables and stop - if (this.cancelJump) { - this.resetJumpToMessage(); - return resolve(); - } - this.jumping = true; - - // look for the message on the state - const index = messages.findIndex(item => item.id === messageId); - - // if found message, scroll to it - if (index > -1) { - listRef.current?.scrollToIndex({ index, viewPosition: 0.5, viewOffset: 100 }); - - // wait for scroll animation to finish - await new Promise(res => setTimeout(res, 300)); - - // if message is not visible - if (!this.viewableItems?.map(vi => vi.key).includes(messageId)) { - await setTimeout(() => resolve(this.jumpToMessage(messageId)), 300); - return; - } - // if message is visible, highlight it - this.setState({ highlightedMessage: messageId }); - this.clearHighlightedMessageTimeout(); - // clears highlighted message after some time - this.highlightedMessageTimeout = setTimeout(() => { - this.setState({ highlightedMessage: null }); - }, 5000); - this.resetJumpToMessage(); - resolve(); - } else { - // if message not found, wait for scroll to top and then jump to message - listRef.current?.scrollToIndex({ index: messages.length - 1, animated: true }); - await setTimeout(() => resolve(this.jumpToMessage(messageId)), 300); - } - }); - - resetJumpToMessage = () => { - this.cancelJump = false; - this.jumping = false; - }; - - cancelJumpToMessage = () => { - if (this.jumping) { - this.cancelJump = true; - return; - } - this.resetJumpToMessage(); - }; - - jumpToBottom = () => { - const { listRef } = this.props; - listRef.current?.scrollToOffset({ offset: -100 }); - }; - - renderFooter = () => { - const { rid, loading } = this.props; - if (loading && rid) { - return ; - } - return null; - }; - - renderItem: FlatListProps['renderItem'] = ({ item, index }) => { - const { messages, highlightedMessage } = this.state; - const { renderRow } = this.props; - return {renderRow(item, messages[index + 1], highlightedMessage)}; - }; - - onViewableItemsChanged: FlatListProps['onViewableItemsChanged'] = ({ viewableItems }) => { - this.viewableItems = viewableItems; - }; - - render() { - console.count(`${this.constructor.name}.render calls`); - const { rid, tmid, listRef } = this.props; - const { messages, refreshing } = this.state; return ( <> - - + + - ); } -} - -export type ListContainerType = ListContainer; +); export default ListContainer; diff --git a/app/views/RoomView/index.tsx b/app/views/RoomView/index.tsx index 7ca32dd21..408819a25 100644 --- a/app/views/RoomView/index.tsx +++ b/app/views/RoomView/index.tsx @@ -29,7 +29,6 @@ import { showErrorAlert } from '../../lib/methods/helpers/info'; import { withTheme } from '../../theme'; import { KEY_COMMAND, - handleCommandReplyLatest, handleCommandRoomActions, handleCommandScroll, handleCommandSearchMessages, @@ -56,7 +55,7 @@ import styles from './styles'; import JoinCode, { IJoinCode } from './JoinCode'; import UploadProgress from './UploadProgress'; import ReactionPicker from './ReactionPicker'; -import List, { ListContainerType } from './List'; +import List from './List'; import { ChatsStackParamList } from '../../stacks/types'; import { IApplicationState, @@ -79,7 +78,6 @@ import { RoomType } from '../../definitions'; import { E2E_MESSAGE_TYPE, E2E_STATUS, MESSAGE_TYPE_ANY_LOAD, MessageTypeLoad, themes } from '../../lib/constants'; -import { TListRef } from './List/List'; import { ModalStackParamList } from '../../stacks/MasterDetailStack/types'; import { callJitsi, @@ -102,6 +100,7 @@ import { import { Services } from '../../lib/services'; import { withActionSheet, IActionSheetProvider } from '../../containers/ActionSheet'; import { goRoom, TGoRoomItem } from '../../lib/methods/helpers/goRoom'; +import { IListContainerRef, TListRef } from './List/definitions'; type TStateAttrsUpdate = keyof IRoomViewState; @@ -154,7 +153,6 @@ const roomAttrsUpdate = [ interface IRoomViewProps extends IActionSheetProvider, IBaseScreen { user: Pick; - appState: string; useRealName?: boolean; isAuthenticated: boolean; Message_GroupingPeriod?: number; @@ -214,8 +212,10 @@ class RoomView extends React.Component { private jumpToMessageId?: string; private jumpToThreadId?: string; private messagebox: React.RefObject; - private list: React.RefObject; private joinCode: React.RefObject; + // ListContainer component + private list: React.RefObject; + // FlatList inside ListContainer private flatList: TListRef; private mounted: boolean; private offset = 0; @@ -224,8 +224,6 @@ class RoomView extends React.Component { private queryUnreads?: Subscription; private retryInit = 0; private retryInitTimeout?: ReturnType; - private retryFindCount = 0; - private retryFindTimeout?: ReturnType; private messageErrorActions?: IMessageErrorActions | null; private messageActions?: IMessageActions | null; private replyInDM?: TAnyMessageModel; @@ -239,8 +237,6 @@ class RoomView extends React.Component { constructor(props: IRoomViewProps) { super(props); - console.time(`${this.constructor.name} init`); - console.time(`${this.constructor.name} mount`); this.rid = props.route.params?.rid; this.t = props.route.params?.t; /** @@ -312,7 +308,6 @@ class RoomView extends React.Component { if (this.rid && !this.tmid) { this.sub = new RoomClass(this.rid); } - console.timeEnd(`${this.constructor.name} init`); } componentDidMount() { @@ -345,19 +340,15 @@ class RoomView extends React.Component { EventEmitter.addEventListener(KEY_COMMAND, this.handleCommands); } EventEmitter.addEventListener('ROOM_REMOVED', this.handleRoomRemoved); - console.timeEnd(`${this.constructor.name} mount`); } shouldComponentUpdate(nextProps: IRoomViewProps, nextState: IRoomViewState) { const { state } = this; const { roomUpdate, member, isOnHold } = state; - const { appState, theme, insets, route } = this.props; + const { theme, insets, route } = this.props; if (theme !== nextProps.theme) { return true; } - if (appState !== nextProps.appState) { - return true; - } if (member.statusText !== nextState.member.statusText) { return true; } @@ -379,7 +370,7 @@ class RoomView extends React.Component { componentDidUpdate(prevProps: IRoomViewProps, prevState: IRoomViewState) { const { roomUpdate, joined } = this.state; - const { appState, insets, route } = this.props; + const { insets, route } = this.props; if (route?.params?.jumpToMessageId && route?.params?.jumpToMessageId !== prevProps.route?.params?.jumpToMessageId) { this.jumpToMessage(route?.params?.jumpToMessageId); @@ -389,12 +380,6 @@ class RoomView extends React.Component { this.navToThread({ tmid: route?.params?.jumpToThreadId }); } - if (appState === 'foreground' && appState !== prevProps.appState && this.rid) { - // Fire List.query() just to keep observables working - if (this.list && this.list.current && !isIOS) { - this.list.current?.query(); - } - } // If it's a livechat room if (this.t === 'l') { if ( @@ -476,7 +461,6 @@ class RoomView extends React.Component { EventEmitter.removeListener(KEY_COMMAND, this.handleCommands); } EventEmitter.removeListener('ROOM_REMOVED', this.handleRoomRemoved); - console.countReset(`${this.constructor.name}.render calls`); } canForwardGuest = async () => { @@ -532,6 +516,18 @@ class RoomView extends React.Component { return room.t === 'l'; } + get hideSystemMessages() { + const { sysMes } = this.state.room; + const { Hide_System_Messages } = this.props; + + // FIXME: handle servers with version < 3.0.0 + let hideSystemMessages = Array.isArray(sysMes) ? sysMes : Hide_System_Messages; + if (!Array.isArray(hideSystemMessages)) { + hideSystemMessages = []; + } + return hideSystemMessages ?? []; + } + setHeader = () => { const { room, unreadsCount, roomUserId, joined, canForwardGuest, canReturnQueue, canPlaceLivechatOnHold } = this.state; const { navigation, isMasterDetail, theme, baseUrl, user, route } = this.props; @@ -1064,9 +1060,6 @@ class RoomView extends React.Component { const { rid } = this.state.room; const { user } = this.props; sendMessage(rid, message, this.tmid || tmid, user, tshow).then(() => { - if (this.list && this.list.current) { - this.list.current?.update(); - } this.setLastOpen(null); Review.pushPositiveEvent(); }); @@ -1260,13 +1253,6 @@ class RoomView extends React.Component { this.goRoomActionsView(); } else if (handleCommandSearchMessages(event)) { this.goRoomActionsView('SearchMessagesView'); - } else if (handleCommandReplyLatest(event)) { - if (this.list && this.list.current) { - const message = this.list.current.getLastMessage(); - if (message) { - this.onReplyInit(message, false); - } - } } } }; @@ -1531,17 +1517,13 @@ class RoomView extends React.Component { }; render() { - console.count(`${this.constructor.name}.render calls`); - const { room, loading, canAutoTranslate } = this.state; - const { user, baseUrl, theme, navigation, Hide_System_Messages, width, serverVersion } = this.props; + const { room, loading } = this.state; + const { user, baseUrl, theme, width, serverVersion } = this.props; const { rid, t } = room; - let sysMes; let bannerClosed; let announcement; - let tunread; - let ignored; if ('id' in room) { - ({ sysMes, bannerClosed, announcement, tunread, ignored } = room); + ({ bannerClosed, announcement } = room); } return ( @@ -1553,16 +1535,11 @@ class RoomView extends React.Component { listRef={this.flatList} rid={rid} tmid={this.tmid} - tunread={tunread} - ignored={ignored} renderRow={this.renderItem} loading={loading} - navigation={navigation} - hideSystemMessages={Array.isArray(sysMes) ? sysMes : Hide_System_Messages} + hideSystemMessages={this.hideSystemMessages} showMessageInMainThread={user.showMessageInMainThread ?? false} serverVersion={serverVersion} - autoTranslateRoom={canAutoTranslate && 'id' in room && room.autoTranslate} - autoTranslateLanguage={'id' in room ? room.autoTranslateLanguage : undefined} /> {this.renderFooter()} {this.renderActions()} @@ -1576,7 +1553,6 @@ class RoomView extends React.Component { const mapStateToProps = (state: IApplicationState) => ({ user: getUserSelector(state), isMasterDetail: state.app.isMasterDetail, - appState: state.app.ready && state.app.foreground ? 'foreground' : 'background', useRealName: state.settings.UI_Use_Real_Name as boolean, isAuthenticated: state.login.isAuthenticated, Message_GroupingPeriod: state.settings.Message_GroupingPeriod as number, From 7278b367637430e4356586e0cb1cd5310b0ff4fe Mon Sep 17 00:00:00 2001 From: Diego Mello Date: Thu, 21 Sep 2023 16:05:36 -0300 Subject: [PATCH 3/3] fix: Remove react-native-keycommands (#5220) --- app/commands.ts | 201 ------- app/containers/MessageBox/index.tsx | 29 +- app/definitions/ICommand.ts | 6 - app/externalModules.d.ts | 1 - app/index.tsx | 13 - app/lib/methods/helpers/events.ts | 2 - app/stacks/MasterDetailStack/index.tsx | 16 +- app/views/RoomView/index.tsx | 31 +- app/views/RoomsListView/Header/index.tsx | 22 - app/views/RoomsListView/ServerDropdown.tsx | 20 - app/views/RoomsListView/index.tsx | 102 +--- ios/Podfile.lock | 496 ++++++++-------- ios/RocketChatRN.xcodeproj/project.pbxproj | 556 +++++++++--------- package.json | 3 +- yarn.lock | 636 +++++++++++++++------ 15 files changed, 1003 insertions(+), 1131 deletions(-) delete mode 100644 app/commands.ts delete mode 100644 app/definitions/ICommand.ts diff --git a/app/commands.ts b/app/commands.ts deleted file mode 100644 index 0624ac3db..000000000 --- a/app/commands.ts +++ /dev/null @@ -1,201 +0,0 @@ -/* eslint-disable no-bitwise */ -import { NativeSyntheticEvent } from 'react-native'; -import KeyCommands, { constants, KeyCommand } from 'react-native-keycommands'; - -import I18n from './i18n'; - -const KEY_TYPING = '\t'; -const KEY_PREFERENCES = 'p'; -const KEY_SEARCH = 'f'; -const KEY_PREVIOUS_ROOM = '['; -const KEY_NEXT_ROOM = ']'; -const KEY_NEW_ROOM = __DEV__ ? 'e' : 'n'; -const KEY_ROOM_ACTIONS = __DEV__ ? 'b' : 'i'; -const KEY_UPLOAD = 'u'; -const KEY_REPLY = ';'; -const KEY_SERVER_SELECTION = __DEV__ ? 'o' : '`'; -const KEY_ADD_SERVER = __DEV__ ? 'l' : 'n'; -const KEY_SEND_MESSAGE = '\r'; -const KEY_SELECT = '123456789'; - -const keyCommands = [ - { - // Focus messageBox - input: KEY_TYPING, - modifierFlags: 0, - discoverabilityTitle: I18n.t('Type_message') - }, - { - // Send message on textInput to current room - input: KEY_SEND_MESSAGE, - modifierFlags: 0, - discoverabilityTitle: I18n.t('Send') - }, - { - // Open Preferences Modal - input: KEY_PREFERENCES, - modifierFlags: constants.keyModifierCommand, - discoverabilityTitle: I18n.t('Preferences') - }, - { - // Focus Room Search - input: KEY_SEARCH, - modifierFlags: constants.keyModifierCommand | constants.keyModifierAlternate, - discoverabilityTitle: I18n.t('Room_search') - }, - { - // Select a room by order using 1-9 - input: '1...9', - modifierFlags: constants.keyModifierCommand, - discoverabilityTitle: I18n.t('Room_selection') - }, - { - // Change room to next on Rooms List - input: KEY_NEXT_ROOM, - modifierFlags: constants.keyModifierCommand, - discoverabilityTitle: I18n.t('Next_room') - }, - { - // Change room to previous on Rooms List - input: KEY_PREVIOUS_ROOM, - modifierFlags: constants.keyModifierCommand, - discoverabilityTitle: I18n.t('Previous_room') - }, - { - // Open New Room Modal - input: KEY_NEW_ROOM, - modifierFlags: constants.keyModifierCommand, - discoverabilityTitle: I18n.t('New_room') - }, - { - // Open Room Actions - input: KEY_ROOM_ACTIONS, - modifierFlags: constants.keyModifierCommand, - discoverabilityTitle: I18n.t('Room_actions') - }, - { - // Upload a file to room - input: KEY_UPLOAD, - modifierFlags: constants.keyModifierCommand, - discoverabilityTitle: I18n.t('Upload_room') - }, - { - // Search Messages on current room - input: KEY_SEARCH, - modifierFlags: constants.keyModifierCommand, - discoverabilityTitle: I18n.t('Search_messages') - }, - { - // Scroll messages on current room - input: '↑ ↓', - modifierFlags: constants.keyModifierAlternate, - discoverabilityTitle: I18n.t('Scroll_messages') - }, - { - // Scroll up messages on current room - input: constants.keyInputUpArrow, - modifierFlags: constants.keyModifierAlternate - }, - { - // Scroll down messages on current room - input: constants.keyInputDownArrow, - modifierFlags: constants.keyModifierAlternate - }, - { - // Reply latest message with Quote - input: KEY_REPLY, - modifierFlags: constants.keyModifierCommand, - discoverabilityTitle: I18n.t('Reply_latest') - }, - { - // Open server dropdown - input: KEY_SERVER_SELECTION, - modifierFlags: constants.keyModifierCommand | constants.keyModifierAlternate, - discoverabilityTitle: I18n.t('Server_selection') - }, - { - // Select a server by order using 1-9 - input: '1...9', - modifierFlags: constants.keyModifierCommand | constants.keyModifierAlternate, - discoverabilityTitle: I18n.t('Server_selection_numbers') - }, - { - // Navigate to add new server - input: KEY_ADD_SERVER, - modifierFlags: constants.keyModifierCommand | constants.keyModifierAlternate, - discoverabilityTitle: I18n.t('Add_server') - }, - // Refers to select rooms on list - ...[1, 2, 3, 4, 5, 6, 7, 8, 9].map(value => ({ - input: `${value}`, - modifierFlags: constants.keyModifierCommand - })), - // Refers to select servers on list - ...[1, 2, 3, 4, 5, 6, 7, 8, 9].map(value => ({ - input: `${value}`, - modifierFlags: constants.keyModifierCommand | constants.keyModifierAlternate - })) -]; - -export const setKeyCommands = (): void => KeyCommands.setKeyCommands(keyCommands); - -export const deleteKeyCommands = (): void => KeyCommands.deleteKeyCommands(keyCommands); - -export const KEY_COMMAND = 'KEY_COMMAND'; - -export interface IKeyCommandEvent extends NativeSyntheticEvent { - input: number & string; - modifierFlags: string | number; -} - -export const commandHandle = (event: IKeyCommandEvent, key: string | string[], flags: string[] = []): boolean => { - const { input, modifierFlags } = event; - let _flags = 0; - if (flags.includes('command') && flags.includes('alternate')) { - _flags = constants.keyModifierCommand | constants.keyModifierAlternate; - } else if (flags.includes('command')) { - _flags = constants.keyModifierCommand; - } else if (flags.includes('alternate')) { - _flags = constants.keyModifierAlternate; - } - return key.includes(input) && modifierFlags === _flags; -}; - -export const handleCommandTyping = (event: IKeyCommandEvent): boolean => commandHandle(event, KEY_TYPING); - -export const handleCommandSubmit = (event: IKeyCommandEvent): boolean => commandHandle(event, KEY_SEND_MESSAGE); - -export const handleCommandShowUpload = (event: IKeyCommandEvent): boolean => commandHandle(event, KEY_UPLOAD, ['command']); - -export const handleCommandScroll = (event: IKeyCommandEvent): boolean => - commandHandle(event, [constants.keyInputUpArrow, constants.keyInputDownArrow], ['alternate']); - -export const handleCommandRoomActions = (event: IKeyCommandEvent): boolean => commandHandle(event, KEY_ROOM_ACTIONS, ['command']); - -export const handleCommandSearchMessages = (event: IKeyCommandEvent): boolean => commandHandle(event, KEY_SEARCH, ['command']); - -export const handleCommandReplyLatest = (event: IKeyCommandEvent): boolean => commandHandle(event, KEY_REPLY, ['command']); - -export const handleCommandSelectServer = (event: IKeyCommandEvent): boolean => - commandHandle(event, KEY_SELECT, ['command', 'alternate']); - -export const handleCommandShowPreferences = (event: IKeyCommandEvent): boolean => - commandHandle(event, KEY_PREFERENCES, ['command']); - -export const handleCommandSearching = (event: IKeyCommandEvent): boolean => - commandHandle(event, KEY_SEARCH, ['command', 'alternate']); - -export const handleCommandSelectRoom = (event: IKeyCommandEvent): boolean => commandHandle(event, KEY_SELECT, ['command']); - -export const handleCommandPreviousRoom = (event: IKeyCommandEvent): boolean => - commandHandle(event, KEY_PREVIOUS_ROOM, ['command']); - -export const handleCommandNextRoom = (event: IKeyCommandEvent): boolean => commandHandle(event, KEY_NEXT_ROOM, ['command']); - -export const handleCommandShowNewMessage = (event: IKeyCommandEvent): boolean => commandHandle(event, KEY_NEW_ROOM, ['command']); - -export const handleCommandAddNewServer = (event: IKeyCommandEvent): boolean => - commandHandle(event, KEY_ADD_SERVER, ['command', 'alternate']); - -export const handleCommandOpenServerDropdown = (event: IKeyCommandEvent): boolean => - commandHandle(event, KEY_SERVER_SELECTION, ['command', 'alternate']); diff --git a/app/containers/MessageBox/index.tsx b/app/containers/MessageBox/index.tsx index ccd034823..cbf4dfd94 100644 --- a/app/containers/MessageBox/index.tsx +++ b/app/containers/MessageBox/index.tsx @@ -1,5 +1,5 @@ import React, { Component } from 'react'; -import { Alert, Keyboard, NativeModules, Text, View, BackHandler } from 'react-native'; +import { Alert, NativeModules, Text, View, BackHandler } from 'react-native'; import { connect } from 'react-redux'; import { KeyboardAccessoryView } from 'react-native-ui-lib/keyboard'; import ImagePicker, { Image, ImageOrVideo, Options } from 'react-native-image-crop-picker'; @@ -21,8 +21,6 @@ import { themes, emojis } from '../../lib/constants'; import LeftButtons from './LeftButtons'; import RightButtons from './RightButtons'; import { canUploadFile } from '../../lib/methods/helpers/media'; -import EventEmiter from '../../lib/methods/helpers/events'; -import { KEY_COMMAND, handleCommandShowUpload, handleCommandSubmit, handleCommandTyping } from '../../commands'; import getMentionRegexp from './getMentionRegexp'; import Mentions from './Mentions'; import MessageboxContext from './Context'; @@ -140,8 +138,6 @@ class MessageBox extends Component { private selection: { start: number; end: number }; - private focused: boolean; - private imagePickerConfig: Options; private libraryPickerConfig: Options; @@ -192,7 +188,6 @@ class MessageBox extends Component { }; this.text = ''; this.selection = { start: 0, end: 0 }; - this.focused = false; const libPickerLabels = { cropperChooseText: I18n.t('Choose'), @@ -268,10 +263,6 @@ class MessageBox extends Component { this.setShowSend(true); } - if (isTablet) { - EventEmiter.addEventListener(KEY_COMMAND, this.handleCommands); - } - if (usedCannedResponse) { this.onChangeText(usedCannedResponse); } @@ -446,9 +437,6 @@ class MessageBox extends Component { if (this.unsubscribeBlur) { this.unsubscribeBlur(); } - if (isTablet) { - EventEmiter.removeListener(KEY_COMMAND, this.handleCommands); - } BackHandler.removeEventListener('hardwareBackPress', this.handleBackPress); } @@ -1113,21 +1101,6 @@ class MessageBox extends Component { }); }; - handleCommands = ({ event }: { event: any }) => { - if (handleCommandTyping(event)) { - if (this.focused) { - Keyboard.dismiss(); - } else { - this.component.focus(); - } - this.focused = !this.focused; - } else if (handleCommandSubmit(event)) { - this.submit(); - } else if (handleCommandShowUpload(event)) { - this.showMessageBoxActions(); - } - }; - onPressSendToChannel = () => this.setState(({ tshow }) => ({ tshow: !tshow })); renderSendToChannel = () => { diff --git a/app/definitions/ICommand.ts b/app/definitions/ICommand.ts deleted file mode 100644 index a0abeec26..000000000 --- a/app/definitions/ICommand.ts +++ /dev/null @@ -1,6 +0,0 @@ -export interface ICommand { - event: { - input: string; - modifierFlags: number; - }; -} diff --git a/app/externalModules.d.ts b/app/externalModules.d.ts index ff2958b34..c54ef9050 100644 --- a/app/externalModules.d.ts +++ b/app/externalModules.d.ts @@ -6,7 +6,6 @@ declare module 'react-native-image-progress'; declare module 'react-native-ui-lib/keyboard'; declare module '@rocket.chat/sdk'; declare module 'react-native-config-reader'; -declare module 'react-native-keycommands'; declare module 'react-native-mime-types'; declare module 'react-native-restart'; declare module 'rn-root-view'; diff --git a/app/index.tsx b/app/index.tsx index 5138ad751..0f02cc04f 100644 --- a/app/index.tsx +++ b/app/index.tsx @@ -1,6 +1,5 @@ import React from 'react'; import { Dimensions, Linking } from 'react-native'; -import { KeyCommandsEmitter } from 'react-native-keycommands'; import { initialWindowMetrics, SafeAreaProvider } from 'react-native-safe-area-context'; import RNScreens from 'react-native-screens'; import { Provider } from 'react-redux'; @@ -10,13 +9,11 @@ import Orientation from 'react-native-orientation-locker'; import { appInit, appInitLocalSettings, setMasterDetail as setMasterDetailAction } from './actions/app'; import { deepLinkingOpen } from './actions/deepLinking'; import AppContainer from './AppContainer'; -import { KEY_COMMAND } from './commands'; import { ActionSheetProvider } from './containers/ActionSheet'; import InAppNotification from './containers/InAppNotification'; import Toast from './containers/Toast'; import TwoFactor from './containers/TwoFactor'; import Loading from './containers/Loading'; -import { ICommand } from './definitions/ICommand'; import { IThemePreference } from './definitions/ITheme'; import { DimensionsContext } from './dimensions'; import { colors, isFDroidBuild, MIN_WIDTH_MASTER_DETAIL_LAYOUT, themes } from './lib/constants'; @@ -27,7 +24,6 @@ import store from './lib/store'; import { initStore } from './lib/store/auxStore'; import { ThemeContext, TSupportedThemes } from './theme'; import { debounce, isTablet } from './lib/methods/helpers'; -import EventEmitter from './lib/methods/helpers/events'; import { toggleAnalyticsEventsReport, toggleCrashErrorsReport } from './lib/methods/helpers/log'; import { getTheme, @@ -85,8 +81,6 @@ const parseDeepLinking = (url: string) => { export default class Root extends React.Component<{}, IState> { private listenerTimeout!: any; - private onKeyCommands: any; - constructor(props: any) { super(props); this.init(); @@ -129,10 +123,6 @@ export default class Root extends React.Component<{}, IState> { Dimensions.removeEventListener('change', this.onDimensionsChange); unsubscribeTheme(); - - if (this.onKeyCommands && this.onKeyCommands.remove) { - this.onKeyCommands.remove(); - } } init = async () => { @@ -199,9 +189,6 @@ export default class Root extends React.Component<{}, IState> { initTablet = () => { const { width } = this.state; this.setMasterDetail(width); - this.onKeyCommands = KeyCommandsEmitter.addListener('onKeyCommand', (command: ICommand) => { - EventEmitter.emit(KEY_COMMAND, { event: command }); - }); }; initCrashReport = () => { diff --git a/app/lib/methods/helpers/events.ts b/app/lib/methods/helpers/events.ts index 09968602e..66fe3d762 100644 --- a/app/lib/methods/helpers/events.ts +++ b/app/lib/methods/helpers/events.ts @@ -1,5 +1,4 @@ import { IEmitUserInteraction } from '../../../containers/UIKit/interfaces'; -import { ICommand } from '../../../definitions/ICommand'; import log from './log'; type TEventEmitterEmmitArgs = @@ -11,7 +10,6 @@ type TEventEmitterEmmitArgs = | { force: boolean } | { hasBiometry: boolean } | { visible: boolean; onCancel?: null | Function } - | { event: string | ICommand } | { cancel: () => void } | { submit: (param: string) => void } | IEmitUserInteraction; diff --git a/app/stacks/MasterDetailStack/index.tsx b/app/stacks/MasterDetailStack/index.tsx index d70c95873..5618c49f7 100644 --- a/app/stacks/MasterDetailStack/index.tsx +++ b/app/stacks/MasterDetailStack/index.tsx @@ -1,5 +1,4 @@ -import React, { useEffect } from 'react'; -import { useIsFocused } from '@react-navigation/native'; +import React from 'react'; import { createStackNavigator, StackNavigationOptions, StackNavigationProp } from '@react-navigation/stack'; import { createDrawerNavigator } from '@react-navigation/drawer'; @@ -62,7 +61,6 @@ import CreateDiscussionView from '../../views/CreateDiscussionView'; import E2ESaveYourPasswordView from '../../views/E2ESaveYourPasswordView'; import E2EHowItWorksView from '../../views/E2EHowItWorksView'; import E2EEnterYourPasswordView from '../../views/E2EEnterYourPasswordView'; -import { deleteKeyCommands, setKeyCommands } from '../../commands'; import ShareView from '../../views/ShareView'; import QueueListView from '../../ee/omnichannel/views/QueueListView'; import AddChannelTeamView from '../../views/AddChannelTeamView'; @@ -84,18 +82,6 @@ const ChatsStack = createStackNavigator(); const ChatsStackNavigator = React.memo(() => { const { theme } = React.useContext(ThemeContext); - const isFocused = useIsFocused(); - useEffect(() => { - if (isFocused) { - setKeyCommands(); - } else { - deleteKeyCommands(); - } - return () => { - deleteKeyCommands(); - }; - }, [isFocused]); - return ( { this.messagebox = React.createRef(); this.list = React.createRef(); - this.joinCode = React.createRef(); this.flatList = React.createRef(); + this.joinCode = React.createRef(); this.mounted = false; if (this.t === 'l') { @@ -336,9 +328,6 @@ class RoomView extends React.Component { this.onReplyInit(this.replyInDM, false); } }); - if (isTablet) { - EventEmitter.addEventListener(KEY_COMMAND, this.handleCommands); - } EventEmitter.addEventListener('ROOM_REMOVED', this.handleRoomRemoved); } @@ -457,9 +446,6 @@ class RoomView extends React.Component { clearTimeout(this.retryInitTimeout); } EventEmitter.removeListener('connected', this.handleConnected); - if (isTablet) { - EventEmitter.removeListener(KEY_COMMAND, this.handleCommands); - } EventEmitter.removeListener('ROOM_REMOVED', this.handleRoomRemoved); } @@ -1242,21 +1228,6 @@ class RoomView extends React.Component { } }; - handleCommands = ({ event }: { event: IKeyCommandEvent }) => { - if (this.rid) { - const { input } = event; - if (handleCommandScroll(event)) { - const offset = input === 'UIKeyInputUpArrow' ? 100 : -100; - this.offset += offset; - this.flatList?.current?.scrollToOffset({ offset: this.offset }); - } else if (handleCommandRoomActions(event)) { - this.goRoomActionsView(); - } else if (handleCommandSearchMessages(event)) { - this.goRoomActionsView('SearchMessagesView'); - } - } - }; - blockAction = ({ actionId, appId, diff --git a/app/views/RoomsListView/Header/index.tsx b/app/views/RoomsListView/Header/index.tsx index 41cd0f2ec..762f3f43f 100644 --- a/app/views/RoomsListView/Header/index.tsx +++ b/app/views/RoomsListView/Header/index.tsx @@ -3,9 +3,6 @@ import { connect } from 'react-redux'; import { Dispatch } from 'redux'; import { toggleServerDropdown, closeServerDropdown, setSearch } from '../../../actions/rooms'; -import EventEmitter from '../../../lib/methods/helpers/events'; -import { KEY_COMMAND, handleCommandOpenServerDropdown, IKeyCommandEvent } from '../../../commands'; -import { isTablet } from '../../../lib/methods/helpers'; import { events, logEvent } from '../../../lib/methods/helpers/log'; import Header from './Header'; import { IApplicationState } from '../../../definitions'; @@ -22,25 +19,6 @@ interface IRoomsListHeaderViewProps { } class RoomsListHeaderView extends PureComponent { - componentDidMount() { - if (isTablet) { - EventEmitter.addEventListener(KEY_COMMAND, this.handleCommands); - } - } - - componentWillUnmount() { - if (isTablet) { - EventEmitter.removeListener(KEY_COMMAND, this.handleCommands); - } - } - - // eslint-disable-next-line react/sort-comp - handleCommands = ({ event }: { event: IKeyCommandEvent }) => { - if (handleCommandOpenServerDropdown(event)) { - this.onPress(); - } - }; - onSearchChangeText = (text: string) => { const { dispatch } = this.props; dispatch(setSearch(text.trim())); diff --git a/app/views/RoomsListView/ServerDropdown.tsx b/app/views/RoomsListView/ServerDropdown.tsx index 8292f7477..3c0f7c0e9 100644 --- a/app/views/RoomsListView/ServerDropdown.tsx +++ b/app/views/RoomsListView/ServerDropdown.tsx @@ -15,8 +15,6 @@ import ServerItem from '../../containers/ServerItem'; import database from '../../lib/database'; import { themes, TOKEN_KEY } from '../../lib/constants'; import { withTheme } from '../../theme'; -import { KEY_COMMAND, handleCommandSelectServer, IKeyCommandEvent } from '../../commands'; -import { isTablet } from '../../lib/methods/helpers'; import { localAuthenticate } from '../../lib/methods/helpers/localAuthentication'; import { showConfirmationAlert } from '../../lib/methods/helpers/info'; import log, { events, logEvent } from '../../lib/methods/helpers/log'; @@ -69,9 +67,6 @@ class ServerDropdown extends Component { @@ -167,18 +159,6 @@ class ServerDropdown extends Component { - const { servers } = this.state; - const { navigation } = this.props; - const { input } = event as unknown as { input: number }; - if (handleCommandSelectServer(event)) { - if (servers[input - 1]) { - this.select(servers[input - 1].id); - navigation.navigate('RoomView'); - } - } - }; - renderServer = ({ item }: { item: { id: string; iconURL: string; name: string; version: string } }) => { const { server } = this.props; diff --git a/app/views/RoomsListView/index.tsx b/app/views/RoomsListView/index.tsx index 2084273ef..736c9f6c3 100644 --- a/app/views/RoomsListView/index.tsx +++ b/app/views/RoomsListView/index.tsx @@ -1,6 +1,6 @@ import React from 'react'; import { BackHandler, FlatList, Keyboard, NativeEventSubscription, RefreshControl, Text, View } from 'react-native'; -import { batch, connect } from 'react-redux'; +import { connect } from 'react-redux'; import { dequal } from 'dequal'; import { Q } from '@nozbe/watermelondb'; import { withSafeAreaInsets } from 'react-native-safe-area-context'; @@ -15,32 +15,18 @@ import RoomItem, { ROW_HEIGHT, ROW_HEIGHT_CONDENSED } from '../../containers/Roo import log, { logEvent, events } from '../../lib/methods/helpers/log'; import I18n from '../../i18n'; import { closeSearchHeader, closeServerDropdown, openSearchHeader, roomsRequest } from '../../actions/rooms'; -import { appStart } from '../../actions/app'; import * as HeaderButton from '../../containers/HeaderButton'; import StatusBar from '../../containers/StatusBar'; import ActivityIndicator from '../../containers/ActivityIndicator'; -import { serverInitAdd } from '../../actions/server'; import { animateNextTransition } from '../../lib/methods/helpers/layoutAnimation'; import { TSupportedThemes, withTheme } from '../../theme'; -import EventEmitter from '../../lib/methods/helpers/events'; import { themedHeader } from '../../lib/methods/helpers/navigation'; -import { - KEY_COMMAND, - handleCommandAddNewServer, - handleCommandNextRoom, - handleCommandPreviousRoom, - handleCommandSearching, - handleCommandSelectRoom, - handleCommandShowNewMessage, - handleCommandShowPreferences, - IKeyCommandEvent -} from '../../commands'; import { getUserSelector } from '../../selectors/login'; import { goRoom } from '../../lib/methods/helpers/goRoom'; import SafeAreaView from '../../containers/SafeAreaView'; import { withDimensions } from '../../dimensions'; import { getInquiryQueueSelector } from '../../ee/omnichannel/selectors/inquiry'; -import { IApplicationState, ISubscription, IUser, RootEnum, SubscriptionType, TSubscriptionModel } from '../../definitions'; +import { IApplicationState, ISubscription, IUser, SubscriptionType, TSubscriptionModel } from '../../definitions'; import styles from './styles'; import ServerDropdown from './ServerDropdown'; import ListHeader, { TEncryptionBanner } from './ListHeader'; @@ -212,9 +198,6 @@ class RoomsListView extends React.Component { this.animated = true; // Check if there were changes with sort preference, then call getSubscription to remount the list @@ -398,9 +381,6 @@ class RoomsListView extends React.Component { - const { chats } = this.state; - const { isMasterDetail } = this.props; - const filteredChats = chats ? chats.filter(c => !c.separator) : []; - const room = filteredChats[index - 1]; - if (room) { - this.goRoom({ item: room, isMasterDetail }); - } - }; - - findOtherRoom = (index: number, sign: number): ISubscription | void => { - const { chats } = this.state; - const otherIndex = index + sign; - const otherRoom = chats?.length ? chats[otherIndex] : ({} as IRoomItem); - if (!otherRoom) { - return; - } - if (otherRoom.separator) { - return this.findOtherRoom(otherIndex, sign); - } - return otherRoom; - }; - - // Go to previous or next room based on sign (-1 or 1) - // It's used by iPad key commands - goOtherRoom = (sign: number) => { - const { item } = this.state; - if (!item) { - return; - } - - // Don't run during search - const { search } = this.state; - if (search && search?.length > 0) { - return; - } - - const { chats } = this.state; - const { isMasterDetail } = this.props; - - if (!chats?.length) { - return; - } - - const index = chats.findIndex(c => c.rid === item.rid); - const otherRoom = this.findOtherRoom(index, sign); - if (otherRoom) { - this.goRoom({ item: otherRoom, isMasterDetail }); - } - }; - goToNewMessage = () => { logEvent(events.RL_GO_NEW_MSG); const { navigation, isMasterDetail } = this.props; @@ -870,33 +799,6 @@ class RoomsListView extends React.Component { - const { navigation, server, isMasterDetail, dispatch } = this.props; - const { input } = event; - if (handleCommandShowPreferences(event)) { - navigation.navigate('SettingsView'); - } else if (handleCommandSearching(event)) { - this.initSearching(); - } else if (handleCommandSelectRoom(event)) { - this.goRoomByIndex(input); - } else if (handleCommandPreviousRoom(event)) { - this.goOtherRoom(-1); - } else if (handleCommandNextRoom(event)) { - this.goOtherRoom(1); - } else if (handleCommandShowNewMessage(event)) { - if (isMasterDetail) { - navigation.navigate('ModalStackNavigator', { screen: 'NewMessageView' }); - } else { - navigation.navigate('NewMessageStack'); - } - } else if (handleCommandAddNewServer(event)) { - batch(() => { - dispatch(appStart({ root: RootEnum.ROOT_OUTSIDE })); - dispatch(serverInitAdd(server)); - }); - } - }; - onRefresh = () => { const { searching } = this.state; const { dispatch } = this.props; diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 1cc001ab6..a317e4313 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -30,14 +30,14 @@ PODS: - ExpoModulesCore - EXVideoThumbnails (6.3.0): - ExpoModulesCore - - FBLazyVector (0.68.6) - - FBReactNativeSpec (0.68.6): + - FBLazyVector (0.68.7) + - FBReactNativeSpec (0.68.7): - RCT-Folly (= 2021.06.28.00-v2) - - RCTRequired (= 0.68.6) - - RCTTypeSafety (= 0.68.6) - - React-Core (= 0.68.6) - - React-jsi (= 0.68.6) - - ReactCommon/turbomodule/core (= 0.68.6) + - RCTRequired (= 0.68.7) + - RCTTypeSafety (= 0.68.7) + - React-Core (= 0.68.7) + - React-jsi (= 0.68.7) + - ReactCommon/turbomodule/core (= 0.68.7) - Firebase/AnalyticsWithoutAdIdSupport (8.15.0): - Firebase/CoreOnly - FirebaseAnalytics/WithoutAdIdSupport (~> 8.15.0) @@ -109,8 +109,6 @@ PODS: - GoogleUtilities/Logger - hermes-engine (0.11.0) - iosMath (0.9.4) - - KeyCommands (2.0.3): - - React - libevent (2.1.12) - libwebp (1.2.4): - libwebp/demux (= 1.2.4) @@ -148,212 +146,212 @@ PODS: - fmt (~> 6.2.1) - glog - libevent - - RCTRequired (0.68.6) - - RCTTypeSafety (0.68.6): - - FBLazyVector (= 0.68.6) + - RCTRequired (0.68.7) + - RCTTypeSafety (0.68.7): + - FBLazyVector (= 0.68.7) - RCT-Folly (= 2021.06.28.00-v2) - - RCTRequired (= 0.68.6) - - React-Core (= 0.68.6) - - React (0.68.6): - - React-Core (= 0.68.6) - - React-Core/DevSupport (= 0.68.6) - - React-Core/RCTWebSocket (= 0.68.6) - - React-RCTActionSheet (= 0.68.6) - - React-RCTAnimation (= 0.68.6) - - React-RCTBlob (= 0.68.6) - - React-RCTImage (= 0.68.6) - - React-RCTLinking (= 0.68.6) - - React-RCTNetwork (= 0.68.6) - - React-RCTSettings (= 0.68.6) - - React-RCTText (= 0.68.6) - - React-RCTVibration (= 0.68.6) - - React-callinvoker (0.68.6) - - React-Codegen (0.68.6): - - FBReactNativeSpec (= 0.68.6) + - RCTRequired (= 0.68.7) + - React-Core (= 0.68.7) + - React (0.68.7): + - React-Core (= 0.68.7) + - React-Core/DevSupport (= 0.68.7) + - React-Core/RCTWebSocket (= 0.68.7) + - React-RCTActionSheet (= 0.68.7) + - React-RCTAnimation (= 0.68.7) + - React-RCTBlob (= 0.68.7) + - React-RCTImage (= 0.68.7) + - React-RCTLinking (= 0.68.7) + - React-RCTNetwork (= 0.68.7) + - React-RCTSettings (= 0.68.7) + - React-RCTText (= 0.68.7) + - React-RCTVibration (= 0.68.7) + - React-callinvoker (0.68.7) + - React-Codegen (0.68.7): + - FBReactNativeSpec (= 0.68.7) - RCT-Folly (= 2021.06.28.00-v2) - - RCTRequired (= 0.68.6) - - RCTTypeSafety (= 0.68.6) - - React-Core (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - ReactCommon/turbomodule/core (= 0.68.6) - - React-Core (0.68.6): + - RCTRequired (= 0.68.7) + - RCTTypeSafety (= 0.68.7) + - React-Core (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - ReactCommon/turbomodule/core (= 0.68.7) + - React-Core (0.68.7): - glog - RCT-Folly (= 2021.06.28.00-v2) - - React-Core/Default (= 0.68.6) - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - React-perflogger (= 0.68.6) + - React-Core/Default (= 0.68.7) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - React-perflogger (= 0.68.7) - Yoga - - React-Core/CoreModulesHeaders (0.68.6): + - React-Core/CoreModulesHeaders (0.68.7): - glog - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - React-perflogger (= 0.68.6) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - React-perflogger (= 0.68.7) - Yoga - - React-Core/Default (0.68.6): + - React-Core/Default (0.68.7): - glog - RCT-Folly (= 2021.06.28.00-v2) - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - React-perflogger (= 0.68.6) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - React-perflogger (= 0.68.7) - Yoga - - React-Core/DevSupport (0.68.6): + - React-Core/DevSupport (0.68.7): - glog - RCT-Folly (= 2021.06.28.00-v2) - - React-Core/Default (= 0.68.6) - - React-Core/RCTWebSocket (= 0.68.6) - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - React-jsinspector (= 0.68.6) - - React-perflogger (= 0.68.6) + - React-Core/Default (= 0.68.7) + - React-Core/RCTWebSocket (= 0.68.7) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - React-jsinspector (= 0.68.7) + - React-perflogger (= 0.68.7) - Yoga - - React-Core/RCTActionSheetHeaders (0.68.6): + - React-Core/RCTActionSheetHeaders (0.68.7): - glog - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - React-perflogger (= 0.68.6) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - React-perflogger (= 0.68.7) - Yoga - - React-Core/RCTAnimationHeaders (0.68.6): + - React-Core/RCTAnimationHeaders (0.68.7): - glog - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - React-perflogger (= 0.68.6) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - React-perflogger (= 0.68.7) - Yoga - - React-Core/RCTBlobHeaders (0.68.6): + - React-Core/RCTBlobHeaders (0.68.7): - glog - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - React-perflogger (= 0.68.6) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - React-perflogger (= 0.68.7) - Yoga - - React-Core/RCTImageHeaders (0.68.6): + - React-Core/RCTImageHeaders (0.68.7): - glog - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - React-perflogger (= 0.68.6) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - React-perflogger (= 0.68.7) - Yoga - - React-Core/RCTLinkingHeaders (0.68.6): + - React-Core/RCTLinkingHeaders (0.68.7): - glog - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - React-perflogger (= 0.68.6) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - React-perflogger (= 0.68.7) - Yoga - - React-Core/RCTNetworkHeaders (0.68.6): + - React-Core/RCTNetworkHeaders (0.68.7): - glog - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - React-perflogger (= 0.68.6) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - React-perflogger (= 0.68.7) - Yoga - - React-Core/RCTSettingsHeaders (0.68.6): + - React-Core/RCTSettingsHeaders (0.68.7): - glog - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - React-perflogger (= 0.68.6) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - React-perflogger (= 0.68.7) - Yoga - - React-Core/RCTTextHeaders (0.68.6): + - React-Core/RCTTextHeaders (0.68.7): - glog - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - React-perflogger (= 0.68.6) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - React-perflogger (= 0.68.7) - Yoga - - React-Core/RCTVibrationHeaders (0.68.6): + - React-Core/RCTVibrationHeaders (0.68.7): - glog - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - React-perflogger (= 0.68.6) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - React-perflogger (= 0.68.7) - Yoga - - React-Core/RCTWebSocket (0.68.6): + - React-Core/RCTWebSocket (0.68.7): - glog - RCT-Folly (= 2021.06.28.00-v2) - - React-Core/Default (= 0.68.6) - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - React-perflogger (= 0.68.6) + - React-Core/Default (= 0.68.7) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - React-perflogger (= 0.68.7) - Yoga - - React-CoreModules (0.68.6): + - React-CoreModules (0.68.7): - RCT-Folly (= 2021.06.28.00-v2) - - RCTTypeSafety (= 0.68.6) - - React-Codegen (= 0.68.6) - - React-Core/CoreModulesHeaders (= 0.68.6) - - React-jsi (= 0.68.6) - - React-RCTImage (= 0.68.6) - - ReactCommon/turbomodule/core (= 0.68.6) - - React-cxxreact (0.68.6): + - RCTTypeSafety (= 0.68.7) + - React-Codegen (= 0.68.7) + - React-Core/CoreModulesHeaders (= 0.68.7) + - React-jsi (= 0.68.7) + - React-RCTImage (= 0.68.7) + - ReactCommon/turbomodule/core (= 0.68.7) + - React-cxxreact (0.68.7): - boost (= 1.76.0) - DoubleConversion - glog - RCT-Folly (= 2021.06.28.00-v2) - - React-callinvoker (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsinspector (= 0.68.6) - - React-logger (= 0.68.6) - - React-perflogger (= 0.68.6) - - React-runtimeexecutor (= 0.68.6) - - React-hermes (0.68.6): + - React-callinvoker (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsinspector (= 0.68.7) + - React-logger (= 0.68.7) + - React-perflogger (= 0.68.7) + - React-runtimeexecutor (= 0.68.7) + - React-hermes (0.68.7): - DoubleConversion - glog - hermes-engine - RCT-Folly (= 2021.06.28.00-v2) - RCT-Folly/Futures (= 2021.06.28.00-v2) - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-jsiexecutor (= 0.68.6) - - React-jsinspector (= 0.68.6) - - React-perflogger (= 0.68.6) - - React-jsi (0.68.6): + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-jsiexecutor (= 0.68.7) + - React-jsinspector (= 0.68.7) + - React-perflogger (= 0.68.7) + - React-jsi (0.68.7): - boost (= 1.76.0) - DoubleConversion - glog - RCT-Folly (= 2021.06.28.00-v2) - - React-jsi/Default (= 0.68.6) - - React-jsi/Default (0.68.6): + - React-jsi/Default (= 0.68.7) + - React-jsi/Default (0.68.7): - boost (= 1.76.0) - DoubleConversion - glog - RCT-Folly (= 2021.06.28.00-v2) - - React-jsiexecutor (0.68.6): + - React-jsiexecutor (0.68.7): - DoubleConversion - glog - RCT-Folly (= 2021.06.28.00-v2) - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-perflogger (= 0.68.6) - - React-jsinspector (0.68.6) - - React-logger (0.68.6): + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-perflogger (= 0.68.7) + - React-jsinspector (0.68.7) + - React-logger (0.68.7): - glog - react-native-background-timer (2.4.1): - React-Core @@ -385,100 +383,100 @@ PODS: - React-Core - react-native-webview (11.26.1): - React-Core - - React-perflogger (0.68.6) - - React-RCTActionSheet (0.68.6): - - React-Core/RCTActionSheetHeaders (= 0.68.6) - - React-RCTAnimation (0.68.6): + - React-perflogger (0.68.7) + - React-RCTActionSheet (0.68.7): + - React-Core/RCTActionSheetHeaders (= 0.68.7) + - React-RCTAnimation (0.68.7): - RCT-Folly (= 2021.06.28.00-v2) - - RCTTypeSafety (= 0.68.6) - - React-Codegen (= 0.68.6) - - React-Core/RCTAnimationHeaders (= 0.68.6) - - React-jsi (= 0.68.6) - - ReactCommon/turbomodule/core (= 0.68.6) - - React-RCTBlob (0.68.6): + - RCTTypeSafety (= 0.68.7) + - React-Codegen (= 0.68.7) + - React-Core/RCTAnimationHeaders (= 0.68.7) + - React-jsi (= 0.68.7) + - ReactCommon/turbomodule/core (= 0.68.7) + - React-RCTBlob (0.68.7): - RCT-Folly (= 2021.06.28.00-v2) - - React-Codegen (= 0.68.6) - - React-Core/RCTBlobHeaders (= 0.68.6) - - React-Core/RCTWebSocket (= 0.68.6) - - React-jsi (= 0.68.6) - - React-RCTNetwork (= 0.68.6) - - ReactCommon/turbomodule/core (= 0.68.6) - - React-RCTImage (0.68.6): + - React-Codegen (= 0.68.7) + - React-Core/RCTBlobHeaders (= 0.68.7) + - React-Core/RCTWebSocket (= 0.68.7) + - React-jsi (= 0.68.7) + - React-RCTNetwork (= 0.68.7) + - ReactCommon/turbomodule/core (= 0.68.7) + - React-RCTImage (0.68.7): - RCT-Folly (= 2021.06.28.00-v2) - - RCTTypeSafety (= 0.68.6) - - React-Codegen (= 0.68.6) - - React-Core/RCTImageHeaders (= 0.68.6) - - React-jsi (= 0.68.6) - - React-RCTNetwork (= 0.68.6) - - ReactCommon/turbomodule/core (= 0.68.6) - - React-RCTLinking (0.68.6): - - React-Codegen (= 0.68.6) - - React-Core/RCTLinkingHeaders (= 0.68.6) - - React-jsi (= 0.68.6) - - ReactCommon/turbomodule/core (= 0.68.6) - - React-RCTNetwork (0.68.6): + - RCTTypeSafety (= 0.68.7) + - React-Codegen (= 0.68.7) + - React-Core/RCTImageHeaders (= 0.68.7) + - React-jsi (= 0.68.7) + - React-RCTNetwork (= 0.68.7) + - ReactCommon/turbomodule/core (= 0.68.7) + - React-RCTLinking (0.68.7): + - React-Codegen (= 0.68.7) + - React-Core/RCTLinkingHeaders (= 0.68.7) + - React-jsi (= 0.68.7) + - ReactCommon/turbomodule/core (= 0.68.7) + - React-RCTNetwork (0.68.7): - RCT-Folly (= 2021.06.28.00-v2) - - RCTTypeSafety (= 0.68.6) - - React-Codegen (= 0.68.6) - - React-Core/RCTNetworkHeaders (= 0.68.6) - - React-jsi (= 0.68.6) - - ReactCommon/turbomodule/core (= 0.68.6) - - React-RCTSettings (0.68.6): + - RCTTypeSafety (= 0.68.7) + - React-Codegen (= 0.68.7) + - React-Core/RCTNetworkHeaders (= 0.68.7) + - React-jsi (= 0.68.7) + - ReactCommon/turbomodule/core (= 0.68.7) + - React-RCTSettings (0.68.7): - RCT-Folly (= 2021.06.28.00-v2) - - RCTTypeSafety (= 0.68.6) - - React-Codegen (= 0.68.6) - - React-Core/RCTSettingsHeaders (= 0.68.6) - - React-jsi (= 0.68.6) - - ReactCommon/turbomodule/core (= 0.68.6) - - React-RCTText (0.68.6): - - React-Core/RCTTextHeaders (= 0.68.6) - - React-RCTVibration (0.68.6): + - RCTTypeSafety (= 0.68.7) + - React-Codegen (= 0.68.7) + - React-Core/RCTSettingsHeaders (= 0.68.7) + - React-jsi (= 0.68.7) + - ReactCommon/turbomodule/core (= 0.68.7) + - React-RCTText (0.68.7): + - React-Core/RCTTextHeaders (= 0.68.7) + - React-RCTVibration (0.68.7): - RCT-Folly (= 2021.06.28.00-v2) - - React-Codegen (= 0.68.6) - - React-Core/RCTVibrationHeaders (= 0.68.6) - - React-jsi (= 0.68.6) - - ReactCommon/turbomodule/core (= 0.68.6) - - React-runtimeexecutor (0.68.6): - - React-jsi (= 0.68.6) - - ReactCommon (0.68.6): - - React-logger (= 0.68.6) - - ReactCommon/react_debug_core (= 0.68.6) - - ReactCommon/turbomodule (= 0.68.6) - - ReactCommon/react_debug_core (0.68.6): - - React-logger (= 0.68.6) - - ReactCommon/turbomodule (0.68.6): + - React-Codegen (= 0.68.7) + - React-Core/RCTVibrationHeaders (= 0.68.7) + - React-jsi (= 0.68.7) + - ReactCommon/turbomodule/core (= 0.68.7) + - React-runtimeexecutor (0.68.7): + - React-jsi (= 0.68.7) + - ReactCommon (0.68.7): + - React-logger (= 0.68.7) + - ReactCommon/react_debug_core (= 0.68.7) + - ReactCommon/turbomodule (= 0.68.7) + - ReactCommon/react_debug_core (0.68.7): + - React-logger (= 0.68.7) + - ReactCommon/turbomodule (0.68.7): - DoubleConversion - glog - RCT-Folly (= 2021.06.28.00-v2) - - React-callinvoker (= 0.68.6) - - React-Core (= 0.68.6) - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-logger (= 0.68.6) - - React-perflogger (= 0.68.6) - - ReactCommon/turbomodule/core (= 0.68.6) - - ReactCommon/turbomodule/samples (= 0.68.6) - - ReactCommon/turbomodule/core (0.68.6): + - React-callinvoker (= 0.68.7) + - React-Core (= 0.68.7) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-logger (= 0.68.7) + - React-perflogger (= 0.68.7) + - ReactCommon/turbomodule/core (= 0.68.7) + - ReactCommon/turbomodule/samples (= 0.68.7) + - ReactCommon/turbomodule/core (0.68.7): - DoubleConversion - glog - RCT-Folly (= 2021.06.28.00-v2) - - React-callinvoker (= 0.68.6) - - React-Core (= 0.68.6) - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-logger (= 0.68.6) - - React-perflogger (= 0.68.6) - - ReactCommon/turbomodule/samples (0.68.6): + - React-callinvoker (= 0.68.7) + - React-Core (= 0.68.7) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-logger (= 0.68.7) + - React-perflogger (= 0.68.7) + - ReactCommon/turbomodule/samples (0.68.7): - DoubleConversion - glog - RCT-Folly (= 2021.06.28.00-v2) - - React-callinvoker (= 0.68.6) - - React-Core (= 0.68.6) - - React-cxxreact (= 0.68.6) - - React-jsi (= 0.68.6) - - React-logger (= 0.68.6) - - React-perflogger (= 0.68.6) - - ReactCommon/turbomodule/core (= 0.68.6) + - React-callinvoker (= 0.68.7) + - React-Core (= 0.68.7) + - React-cxxreact (= 0.68.7) + - React-jsi (= 0.68.7) + - React-logger (= 0.68.7) + - React-perflogger (= 0.68.7) + - ReactCommon/turbomodule/core (= 0.68.7) - ReactNativeART (1.2.0): - React - ReactNativeUiLib (3.0.4): @@ -604,7 +602,6 @@ DEPENDENCIES: - FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`) - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`) - hermes-engine (~> 0.11.0) - - KeyCommands (from `../node_modules/react-native-keycommands`) - libevent (~> 2.1.12) - RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`) - RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`) @@ -740,8 +737,6 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/React/FBReactNativeSpec" glog: :podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec" - KeyCommands: - :path: "../node_modules/react-native-keycommands" RCT-Folly: :podspec: "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec" RCTRequired: @@ -897,8 +892,8 @@ SPEC CHECKSUMS: ExpoModulesCore: e281bb7b78ea47e227dd5af94d04b24d8b2e1255 ExpoWebBrowser: 4b5f9633e5f169dc948587cb6d26d2d1d1406187 EXVideoThumbnails: 19e055dc3245b53c536da9e0ef9c618fd2118297 - FBLazyVector: 74b042924fe14da854ac4e87cefc417f583b22b1 - FBReactNativeSpec: 847d588a676110304f9bd83ac255b00de80bd45c + FBLazyVector: 63b89dc85804d5817261f56dc4cfb43a9b6d57f5 + FBReactNativeSpec: de66c1e28c6823a30a53b51dd933560edb24ed3f Firebase: 5f8193dff4b5b7c5d5ef72ae54bb76c08e2b841d FirebaseAnalytics: 7761cbadb00a717d8d0939363eb46041526474fa FirebaseCore: 5743c5785c074a794d35f2fff7ecc254a91e08b1 @@ -912,7 +907,6 @@ SPEC CHECKSUMS: GoogleUtilities: c2bdc4cf2ce786c4d2e6b3bcfd599a25ca78f06f hermes-engine: 84e3af1ea01dd7351ac5d8689cbbea1f9903ffc3 iosMath: f7a6cbadf9d836d2149c2a84c435b1effc244cba - KeyCommands: f66c535f698ed14b3d3a4e58859d79a827ea907e libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913 libwebp: f62cb61d0a484ba548448a4bd52aabf150ff6eef MMKV: aac95d817a100479445633f2b3ed8961b4ac5043 @@ -921,19 +915,19 @@ SPEC CHECKSUMS: OpenSSL-Universal: ebc357f1e6bc71fa463ccb2fe676756aff50e88c PromisesObjC: ab77feca74fa2823e7af4249b8326368e61014cb RCT-Folly: 4d8508a426467c48885f1151029bc15fa5d7b3b8 - RCTRequired: 92cbd71369a2de6add25fd2403ac39838f1b694f - RCTTypeSafety: 494e8af41d7410ed0b877210859ee3984f37e6b4 - React: 59989499c0e8926a90d34a9ae0bdb2d1b5b53406 - React-callinvoker: 8187db1c71cf2c1c66e8f7328a0cf77a2b255d94 - React-Codegen: e806dc2f10ddae645d855cb58acf73ce41eb8ea5 - React-Core: fc7339b493e368ae079850a4721bdf716cf3dba2 - React-CoreModules: 2f54f6bbf2764044379332089fcbdaf79197021e - React-cxxreact: ee119270006794976e1ab271f0111a5a88b16bcf - React-hermes: da05900062e21a1ef4e14cddf3b562ae02a93a5a - React-jsi: ec691b2a475d13b1fd39f697145a526eeeb6661c - React-jsiexecutor: b4ce4afc5dd9c8fdd2ac59049ccf420f288ecef7 - React-jsinspector: e396d5e56af08fce39f50571726b68a40f1e302d - React-logger: cec52b3f8fb0be0d47b2cb75dec69de60f2de3b6 + RCTRequired: 530916cd48c5f7cf1fc16966ad5ea01638ca4799 + RCTTypeSafety: 5fb4cb3080efd582e5563c3e9a0e459fc51396c5 + React: 097b19fbc7aecb3bd23de54b462d2051d7ca8a38 + React-callinvoker: 4f118545cf884f0d8fce5bcd6e1847147ea9cc05 + React-Codegen: 24e59be16f8ed24b3e49e5ff0738dad91988c760 + React-Core: 0b464d0bec18dde90fa819c4be14dbcbdbf3077f + React-CoreModules: 9bb7d5d5530d474cf8514e2dc8274af82a0bcf2f + React-cxxreact: 027e192b8008ba5c200163ab6ded55d134c839d5 + React-hermes: 182741a40f11362a9bca11a65a96a7f0cbd74385 + React-jsi: 9019a0a0b42e9eac6c1e8c251a8dffe65055a2f1 + React-jsiexecutor: 7c0bd030a84f2ec446fb104b7735af2f5ed11eea + React-jsinspector: cab4d37ebde480f84c79ac89568abbf76b916c3e + React-logger: b75b80500ea80457b2cf169427d66de986cdcb29 react-native-background-timer: 17ea5e06803401a379ebf1f20505b793ac44d0fe react-native-blur: cfdad7b3c01d725ab62a8a729f42ea463998afa2 react-native-cameraroll: 2f08db1ecc9b73dbc01f89335d6d5179fac2894c @@ -948,18 +942,18 @@ SPEC CHECKSUMS: react-native-simple-crypto: a26121696064628b6cb92f52f653353114deb7f4 react-native-slider: 2f25c919f1dc309b90e2cc8346b8042ecec2102f react-native-webview: 9f111dfbcfc826084d6c507f569e5e03342ee1c1 - React-perflogger: 46620fc6d1c3157b60ed28434e08f7fd7f3f3353 - React-RCTActionSheet: b1f7e72a0ba760ec684df335c61f730b5179f5ff - React-RCTAnimation: d73b62d42867ab608dfb10e100d8b91106275b18 - React-RCTBlob: b5f59693721d50967c35598158e6ca01b474c7de - React-RCTImage: 37cf34d0c2fbef2e0278d42a7c5e8ea06a9fed6b - React-RCTLinking: a11dced20019cf1c2ec7fd120f18b08f2851f79e - React-RCTNetwork: ba097188e5eac42e070029e7cedd9b978940833a - React-RCTSettings: 147073708a1c1bde521cf3af045a675682772726 - React-RCTText: 23f76ebfb2717d181476432e5ecf1c6c4a104c5e - React-RCTVibration: be5f18ffc644f96f904e0e673ab639ca5d673ee8 - React-runtimeexecutor: d5498cfb7059bf8397b6416db4777843f3f4c1e7 - ReactCommon: 1974dab5108c79b40199f12a4833d2499b9f6303 + React-perflogger: 44436b315d757100a53dfb1ab6b77c58cb646d7d + React-RCTActionSheet: 1888a229684762c40cc96c7ff4716f809655dc09 + React-RCTAnimation: f05da175751867521d14b02ab4d3994a7b96f131 + React-RCTBlob: 792b966e48d599383d7a0753f75e8f2ff71be1ce + React-RCTImage: 065cf66546f625295efd36bce3a1806a9b93399c + React-RCTLinking: 8246290c072bd2d1f336792038d7ec4b91f9847a + React-RCTNetwork: 6b2331c74684fae61b1ef38f4510fe5da3de3f3a + React-RCTSettings: 2898e15b249b085f8b8c7401cfab71983a2d40da + React-RCTText: bd1da1cd805e0765e3ba9089a9fd807d4860a901 + React-RCTVibration: 2a4bf853281d4981ab471509102300d3c9e6c693 + React-runtimeexecutor: 18932e685b4893be88d1efc18f5f8ca1c9cd39d8 + ReactCommon: 29bb6fad3242e30e9d049bc9d592736fa3da9e50 ReactNativeART: 78edc68dd4a1e675338cd0cd113319cf3a65f2ab ReactNativeUiLib: 33521c0747ea376d292b62b6415e0f1d75bd3c10 rn-extensions-share: 5fd84a80e6594706f0dfa1884f2d6d591b382cf5 @@ -991,7 +985,7 @@ SPEC CHECKSUMS: simdjson: 85016870cd17207312b718ef6652eb6a1cd6a2b0 TOCropViewController: edfd4f25713d56905ad1e0b9f5be3fbe0f59c863 WatermelonDB: 577c61fceff16e9f9103b59d14aee4850c0307b6 - Yoga: 7929b92b1828675c1bebeb114dae8cb8fa7ef6a3 + Yoga: 0bc4b37c3b8a345336ff601e2cf7d9704bab7e93 PODFILE CHECKSUM: 0dc489a0c4bec783a132693070c2d02e2ca6b0db diff --git a/ios/RocketChatRN.xcodeproj/project.pbxproj b/ios/RocketChatRN.xcodeproj/project.pbxproj index 932b0c16f..96a5c956b 100644 --- a/ios/RocketChatRN.xcodeproj/project.pbxproj +++ b/ios/RocketChatRN.xcodeproj/project.pbxproj @@ -79,8 +79,8 @@ 1EFEB5982493B6640072EDC0 /* NotificationService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EFEB5972493B6640072EDC0 /* NotificationService.swift */; }; 1EFEB59C2493B6640072EDC0 /* NotificationService.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 1EFEB5952493B6640072EDC0 /* NotificationService.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; 24A2AEF2383D44B586D31C01 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 06BB44DD4855498082A744AD /* libz.tbd */; }; + 4183F9F3648AA5A8E451AD6F /* libPods-defaults-ShareRocketChatRN.a in Frameworks */ = {isa = PBXBuildFile; fileRef = AA38524D073B37D626BDE9B2 /* libPods-defaults-ShareRocketChatRN.a */; }; 4C4C8603EF082F0A33A95522 /* ExpoModulesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45D5C142B655F8EFD006792C /* ExpoModulesProvider.swift */; }; - 64882939D5C139FD23B18284 /* libPods-defaults-ShareRocketChatRN.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 88D6D0EE04C6CEB9F0E81DED /* libPods-defaults-ShareRocketChatRN.a */; }; 7A006F14229C83B600803143 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 7A006F13229C83B600803143 /* GoogleService-Info.plist */; }; 7A0D62D2242AB187006D5C06 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 7A0D62D1242AB187006D5C06 /* LaunchScreen.storyboard */; }; 7A14FCED257FEB3A005BDCD4 /* Experimental.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 7A14FCEC257FEB3A005BDCD4 /* Experimental.xcassets */; }; @@ -140,13 +140,13 @@ 7AE10C0628A59530003593CB /* Inter.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 7AE10C0528A59530003593CB /* Inter.ttf */; }; 7AE10C0728A59530003593CB /* Inter.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 7AE10C0528A59530003593CB /* Inter.ttf */; }; 7AE10C0828A59530003593CB /* Inter.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 7AE10C0528A59530003593CB /* Inter.ttf */; }; + 830931BDC1F85C878AA6CCB8 /* libPods-defaults-Rocket.Chat.a in Frameworks */ = {isa = PBXBuildFile; fileRef = EE0803F389AA8D1AFA4C89DC /* libPods-defaults-Rocket.Chat.a */; }; 85160EB6C143E0493FE5F014 /* ExpoModulesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 194D9A8897F4A486C2C6F89A /* ExpoModulesProvider.swift */; }; BC404914E86821389EEB543D /* ExpoModulesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 391C4F7AA7023CD41EEBD106 /* ExpoModulesProvider.swift */; }; - BFD3F2D25E9E9048EA6DCF27 /* libPods-defaults-Rocket.Chat.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CF89A0D62171DA3CC5DF3FF5 /* libPods-defaults-Rocket.Chat.a */; }; + C1ED5A5410EB6CF912D688B8 /* libPods-defaults-NotificationService.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 111F5EB407906D059A1348AC /* libPods-defaults-NotificationService.a */; }; + CE728835631624C36534C83A /* libPods-defaults-RocketChatRN.a in Frameworks */ = {isa = PBXBuildFile; fileRef = AB0FA32CE0788455453FBB0B /* libPods-defaults-RocketChatRN.a */; }; D94D81FB9E10756FAA03F203 /* ExpoModulesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 016747EF3B9FED8DE2C9DA14 /* ExpoModulesProvider.swift */; }; DD2BA30A89E64F189C2C24AC /* libWatermelonDB.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BA7E862283664608B3894E34 /* libWatermelonDB.a */; }; - DF25C2EDAF5BC841C049ED31 /* libPods-defaults-RocketChatRN.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 37473D898A400EACC1CDD08E /* libPods-defaults-RocketChatRN.a */; }; - E0CFC32A560C58E71D22F363 /* libPods-defaults-NotificationService.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BE1B976F8095972510410DC4 /* libPods-defaults-NotificationService.a */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -210,13 +210,14 @@ /* Begin PBXFileReference section */ 008F07F21AC5B25A0029DE68 /* main.jsbundle */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = main.jsbundle; sourceTree = ""; }; 016747EF3B9FED8DE2C9DA14 /* ExpoModulesProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpoModulesProvider.swift; path = "Pods/Target Support Files/Pods-defaults-ShareRocketChatRN/ExpoModulesProvider.swift"; sourceTree = ""; }; + 05D159ED244184CFD689E5A7 /* Pods-defaults-Rocket.Chat.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-Rocket.Chat.debug.xcconfig"; path = "Target Support Files/Pods-defaults-Rocket.Chat/Pods-defaults-Rocket.Chat.debug.xcconfig"; sourceTree = ""; }; 06BB44DD4855498082A744AD /* libz.tbd */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; }; + 111F5EB407906D059A1348AC /* libPods-defaults-NotificationService.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-defaults-NotificationService.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 13B07F961A680F5B00A75B9A /* Rocket.Chat Experimental.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Rocket.Chat Experimental.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = RocketChatRN/AppDelegate.h; sourceTree = ""; }; 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = RocketChatRN/Images.xcassets; sourceTree = ""; }; 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = RocketChatRN/Info.plist; sourceTree = ""; }; 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = RocketChatRN/main.m; sourceTree = ""; }; - 164E074B4C99AB825A717C54 /* Pods-defaults-Rocket.Chat.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-Rocket.Chat.release.xcconfig"; path = "Target Support Files/Pods-defaults-Rocket.Chat/Pods-defaults-Rocket.Chat.release.xcconfig"; sourceTree = ""; }; 194D9A8897F4A486C2C6F89A /* ExpoModulesProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpoModulesProvider.swift; path = "Pods/Target Support Files/Pods-defaults-NotificationService/ExpoModulesProvider.swift"; sourceTree = ""; }; 1E01C81B2511208400FEF824 /* URL+Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "URL+Extensions.swift"; sourceTree = ""; }; 1E01C8202511301400FEF824 /* PushResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PushResponse.swift; sourceTree = ""; }; @@ -264,12 +265,10 @@ 1EFEB5972493B6640072EDC0 /* NotificationService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationService.swift; sourceTree = ""; }; 1EFEB5992493B6640072EDC0 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 1EFEB5A12493B67D0072EDC0 /* NotificationService.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = NotificationService.entitlements; sourceTree = ""; }; - 27E5BE6ABA6A2DB0A06F924E /* Pods-defaults-RocketChatRN.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-RocketChatRN.debug.xcconfig"; path = "Target Support Files/Pods-defaults-RocketChatRN/Pods-defaults-RocketChatRN.debug.xcconfig"; sourceTree = ""; }; - 3026446E76F8BD665385CA6D /* Pods-defaults-ShareRocketChatRN.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-ShareRocketChatRN.debug.xcconfig"; path = "Target Support Files/Pods-defaults-ShareRocketChatRN/Pods-defaults-ShareRocketChatRN.debug.xcconfig"; sourceTree = ""; }; - 37473D898A400EACC1CDD08E /* libPods-defaults-RocketChatRN.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-defaults-RocketChatRN.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 2D1498938315CC290B97920B /* Pods-defaults-Rocket.Chat.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-Rocket.Chat.release.xcconfig"; path = "Target Support Files/Pods-defaults-Rocket.Chat/Pods-defaults-Rocket.Chat.release.xcconfig"; sourceTree = ""; }; 391C4F7AA7023CD41EEBD106 /* ExpoModulesProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpoModulesProvider.swift; path = "Pods/Target Support Files/Pods-defaults-Rocket.Chat/ExpoModulesProvider.swift"; sourceTree = ""; }; 45D5C142B655F8EFD006792C /* ExpoModulesProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpoModulesProvider.swift; path = "Pods/Target Support Files/Pods-defaults-RocketChatRN/ExpoModulesProvider.swift"; sourceTree = ""; }; - 5031896928ACC63AA010A47D /* Pods-defaults-ShareRocketChatRN.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-ShareRocketChatRN.release.xcconfig"; path = "Target Support Files/Pods-defaults-ShareRocketChatRN/Pods-defaults-ShareRocketChatRN.release.xcconfig"; sourceTree = ""; }; + 4F33E4DA6CCD312106101066 /* Pods-defaults-ShareRocketChatRN.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-ShareRocketChatRN.debug.xcconfig"; path = "Target Support Files/Pods-defaults-ShareRocketChatRN/Pods-defaults-ShareRocketChatRN.debug.xcconfig"; sourceTree = ""; }; 60B2A6A31FC4588700BD58E5 /* RocketChatRN.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; name = RocketChatRN.entitlements; path = RocketChatRN/RocketChatRN.entitlements; sourceTree = ""; }; 7A006F13229C83B600803143 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = ""; }; 7A0D62D1242AB187006D5C06 /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = LaunchScreen.storyboard; sourceTree = ""; }; @@ -281,15 +280,16 @@ 7AAB3E52257E6A6E00707CF6 /* Rocket.Chat.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Rocket.Chat.app; sourceTree = BUILT_PRODUCTS_DIR; }; 7ACD4853222860DE00442C55 /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; 7AE10C0528A59530003593CB /* Inter.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = Inter.ttf; sourceTree = ""; }; - 88D6D0EE04C6CEB9F0E81DED /* libPods-defaults-ShareRocketChatRN.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-defaults-ShareRocketChatRN.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - A7F988DF4B68700DD06E4FC3 /* Pods-defaults-NotificationService.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-NotificationService.debug.xcconfig"; path = "Target Support Files/Pods-defaults-NotificationService/Pods-defaults-NotificationService.debug.xcconfig"; sourceTree = ""; }; - AE5F54395576888438D5F5D6 /* Pods-defaults-RocketChatRN.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-RocketChatRN.release.xcconfig"; path = "Target Support Files/Pods-defaults-RocketChatRN/Pods-defaults-RocketChatRN.release.xcconfig"; sourceTree = ""; }; + 9AF8F9AFBBF71270CE75AF6D /* Pods-defaults-ShareRocketChatRN.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-ShareRocketChatRN.release.xcconfig"; path = "Target Support Files/Pods-defaults-ShareRocketChatRN/Pods-defaults-ShareRocketChatRN.release.xcconfig"; sourceTree = ""; }; + AA38524D073B37D626BDE9B2 /* libPods-defaults-ShareRocketChatRN.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-defaults-ShareRocketChatRN.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + AB0FA32CE0788455453FBB0B /* libPods-defaults-RocketChatRN.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-defaults-RocketChatRN.a"; sourceTree = BUILT_PRODUCTS_DIR; }; B37C79D9BD0742CE936B6982 /* libc++.tbd */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = "libc++.tbd"; path = "usr/lib/libc++.tbd"; sourceTree = SDKROOT; }; - B857001C31C6F6FC585D5972 /* Pods-defaults-NotificationService.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-NotificationService.release.xcconfig"; path = "Target Support Files/Pods-defaults-NotificationService/Pods-defaults-NotificationService.release.xcconfig"; sourceTree = ""; }; BA7E862283664608B3894E34 /* libWatermelonDB.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libWatermelonDB.a; sourceTree = ""; }; - BE1B976F8095972510410DC4 /* libPods-defaults-NotificationService.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-defaults-NotificationService.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - CF89A0D62171DA3CC5DF3FF5 /* libPods-defaults-Rocket.Chat.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-defaults-Rocket.Chat.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - E5BCD87511845392D3C6FEF0 /* Pods-defaults-Rocket.Chat.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-Rocket.Chat.debug.xcconfig"; path = "Target Support Files/Pods-defaults-Rocket.Chat/Pods-defaults-Rocket.Chat.debug.xcconfig"; sourceTree = ""; }; + D04D04B2EA8D88C19F091B19 /* Pods-defaults-RocketChatRN.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-RocketChatRN.release.xcconfig"; path = "Target Support Files/Pods-defaults-RocketChatRN/Pods-defaults-RocketChatRN.release.xcconfig"; sourceTree = ""; }; + D15DA76143AD7A4D6E8BA4D0 /* Pods-defaults-RocketChatRN.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-RocketChatRN.debug.xcconfig"; path = "Target Support Files/Pods-defaults-RocketChatRN/Pods-defaults-RocketChatRN.debug.xcconfig"; sourceTree = ""; }; + D6F1E6B6A6B836D26CEBE5B4 /* Pods-defaults-NotificationService.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-NotificationService.release.xcconfig"; path = "Target Support Files/Pods-defaults-NotificationService/Pods-defaults-NotificationService.release.xcconfig"; sourceTree = ""; }; + EC65E9A63DAB7D0BDF669DFA /* Pods-defaults-NotificationService.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-defaults-NotificationService.debug.xcconfig"; path = "Target Support Files/Pods-defaults-NotificationService/Pods-defaults-NotificationService.debug.xcconfig"; sourceTree = ""; }; + EE0803F389AA8D1AFA4C89DC /* libPods-defaults-Rocket.Chat.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-defaults-Rocket.Chat.a"; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -310,7 +310,7 @@ 7ACD4897222860DE00442C55 /* JavaScriptCore.framework in Frameworks */, 24A2AEF2383D44B586D31C01 /* libz.tbd in Frameworks */, DD2BA30A89E64F189C2C24AC /* libWatermelonDB.a in Frameworks */, - DF25C2EDAF5BC841C049ED31 /* libPods-defaults-RocketChatRN.a in Frameworks */, + CE728835631624C36534C83A /* libPods-defaults-RocketChatRN.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -319,7 +319,7 @@ buildActionMask = 2147483647; files = ( 1E25743422CBA2CF005A877F /* JavaScriptCore.framework in Frameworks */, - 64882939D5C139FD23B18284 /* libPods-defaults-ShareRocketChatRN.a in Frameworks */, + 4183F9F3648AA5A8E451AD6F /* libPods-defaults-ShareRocketChatRN.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -327,7 +327,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - E0CFC32A560C58E71D22F363 /* libPods-defaults-NotificationService.a in Frameworks */, + C1ED5A5410EB6CF912D688B8 /* libPods-defaults-NotificationService.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -348,7 +348,7 @@ 7AAB3E3D257E6A6E00707CF6 /* JavaScriptCore.framework in Frameworks */, 7AAB3E3E257E6A6E00707CF6 /* libz.tbd in Frameworks */, 7AAB3E3F257E6A6E00707CF6 /* libWatermelonDB.a in Frameworks */, - BFD3F2D25E9E9048EA6DCF27 /* libPods-defaults-Rocket.Chat.a in Frameworks */, + 830931BDC1F85C878AA6CCB8 /* libPods-defaults-Rocket.Chat.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -499,14 +499,14 @@ 7AC2B09613AA7C3FEBAC9F57 /* Pods */ = { isa = PBXGroup; children = ( - A7F988DF4B68700DD06E4FC3 /* Pods-defaults-NotificationService.debug.xcconfig */, - B857001C31C6F6FC585D5972 /* Pods-defaults-NotificationService.release.xcconfig */, - E5BCD87511845392D3C6FEF0 /* Pods-defaults-Rocket.Chat.debug.xcconfig */, - 164E074B4C99AB825A717C54 /* Pods-defaults-Rocket.Chat.release.xcconfig */, - 27E5BE6ABA6A2DB0A06F924E /* Pods-defaults-RocketChatRN.debug.xcconfig */, - AE5F54395576888438D5F5D6 /* Pods-defaults-RocketChatRN.release.xcconfig */, - 3026446E76F8BD665385CA6D /* Pods-defaults-ShareRocketChatRN.debug.xcconfig */, - 5031896928ACC63AA010A47D /* Pods-defaults-ShareRocketChatRN.release.xcconfig */, + EC65E9A63DAB7D0BDF669DFA /* Pods-defaults-NotificationService.debug.xcconfig */, + D6F1E6B6A6B836D26CEBE5B4 /* Pods-defaults-NotificationService.release.xcconfig */, + 05D159ED244184CFD689E5A7 /* Pods-defaults-Rocket.Chat.debug.xcconfig */, + 2D1498938315CC290B97920B /* Pods-defaults-Rocket.Chat.release.xcconfig */, + D15DA76143AD7A4D6E8BA4D0 /* Pods-defaults-RocketChatRN.debug.xcconfig */, + D04D04B2EA8D88C19F091B19 /* Pods-defaults-RocketChatRN.release.xcconfig */, + 4F33E4DA6CCD312106101066 /* Pods-defaults-ShareRocketChatRN.debug.xcconfig */, + 9AF8F9AFBBF71270CE75AF6D /* Pods-defaults-ShareRocketChatRN.release.xcconfig */, ); path = Pods; sourceTree = ""; @@ -597,10 +597,10 @@ 7ACD4853222860DE00442C55 /* JavaScriptCore.framework */, B37C79D9BD0742CE936B6982 /* libc++.tbd */, 06BB44DD4855498082A744AD /* libz.tbd */, - BE1B976F8095972510410DC4 /* libPods-defaults-NotificationService.a */, - CF89A0D62171DA3CC5DF3FF5 /* libPods-defaults-Rocket.Chat.a */, - 37473D898A400EACC1CDD08E /* libPods-defaults-RocketChatRN.a */, - 88D6D0EE04C6CEB9F0E81DED /* libPods-defaults-ShareRocketChatRN.a */, + 111F5EB407906D059A1348AC /* libPods-defaults-NotificationService.a */, + EE0803F389AA8D1AFA4C89DC /* libPods-defaults-Rocket.Chat.a */, + AB0FA32CE0788455453FBB0B /* libPods-defaults-RocketChatRN.a */, + AA38524D073B37D626BDE9B2 /* libPods-defaults-ShareRocketChatRN.a */, ); name = Frameworks; sourceTree = ""; @@ -620,7 +620,7 @@ isa = PBXNativeTarget; buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "RocketChatRN" */; buildPhases = ( - 4E0541F228C7056D985CA6EB /* [CP] Check Pods Manifest.lock */, + 360870C7BEEC4AB68A78E7B7 /* [CP] Check Pods Manifest.lock */, 7AA5C63E23E30D110005C4A7 /* Start Packager */, 13B07F871A680F5B00A75B9A /* Sources */, 13B07F8C1A680F5B00A75B9A /* Frameworks */, @@ -629,8 +629,8 @@ 1EC6ACF422CB9FC300A41C61 /* Embed App Extensions */, 1E1EA8082326CCE300E22452 /* ShellScript */, 7AAE9EB32891A0D20024F559 /* Upload source maps to Bugsnag */, - 0EE48F1D466597E5EE0DEA34 /* [CP] Embed Pods Frameworks */, - 99170C805A43561BF41AD0CC /* [CP] Copy Pods Resources */, + 78E38FA4D1825ED629BD2F91 /* [CP] Embed Pods Frameworks */, + 6AFD4AAAB19CC45C5450D183 /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -647,12 +647,12 @@ isa = PBXNativeTarget; buildConfigurationList = 1EC6ACF322CB9FC300A41C61 /* Build configuration list for PBXNativeTarget "ShareRocketChatRN" */; buildPhases = ( - EB34E6FD3AD9A61718D9ED66 /* [CP] Check Pods Manifest.lock */, + 7F50400D836B1B9401EA0D46 /* [CP] Check Pods Manifest.lock */, 1EC6ACAC22CB9FC300A41C61 /* Sources */, 1EC6ACAD22CB9FC300A41C61 /* Frameworks */, 1EC6ACAE22CB9FC300A41C61 /* Resources */, 1EFE4DC322CBF36300B766B7 /* ShellScript */, - 63A63B5E01476BADE4E06B88 /* [CP] Copy Pods Resources */, + BD67AF7A6313353EB149232C /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -667,11 +667,11 @@ isa = PBXNativeTarget; buildConfigurationList = 1EFEB5A02493B6640072EDC0 /* Build configuration list for PBXNativeTarget "NotificationService" */; buildPhases = ( - 4B61F523E7DFD4CCCDB2630B /* [CP] Check Pods Manifest.lock */, + C2A9EDE251DBF6D44DD0BDA4 /* [CP] Check Pods Manifest.lock */, 1EFEB5912493B6640072EDC0 /* Sources */, 1EFEB5922493B6640072EDC0 /* Frameworks */, 1EFEB5932493B6640072EDC0 /* Resources */, - CB6F673666EADE583FD43410 /* [CP] Copy Pods Resources */, + 1DAF05E36DCAB8D4595F6B85 /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -686,7 +686,7 @@ isa = PBXNativeTarget; buildConfigurationList = 7AAB3E4F257E6A6E00707CF6 /* Build configuration list for PBXNativeTarget "Rocket.Chat" */; buildPhases = ( - 6DD37F59168B72BB6CDCEDF1 /* [CP] Check Pods Manifest.lock */, + 1AD0E1505465EAF3048DBA31 /* [CP] Check Pods Manifest.lock */, 7AAB3E13257E6A6E00707CF6 /* Start Packager */, 7AAB3E14257E6A6E00707CF6 /* Sources */, 7AAB3E32257E6A6E00707CF6 /* Frameworks */, @@ -695,8 +695,8 @@ 7AAB3E48257E6A6E00707CF6 /* Embed App Extensions */, 7AAB3E4B257E6A6E00707CF6 /* ShellScript */, 7A10288726B1D15200E47EF8 /* Upload source maps to Bugsnag */, - E420D117DA1C33130AF78D4D /* [CP] Embed Pods Frameworks */, - 0ADA39A3D2C1E2C2E8B6B1FA /* [CP] Copy Pods Resources */, + 68C166CF30687732759CE851 /* [CP] Embed Pods Frameworks */, + 654C29ACFC8C77B4A18EA8B0 /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -846,7 +846,141 @@ shellPath = /bin/sh; shellScript = "export EXTRA_PACKAGER_ARGS=\"--sourcemap-output $TMPDIR/$(md5 -qs \"$CONFIGURATION_BUILD_DIR\")-main.jsbundle.map\"\nexport NODE_BINARY=node\n../node_modules/react-native/scripts/react-native-xcode.sh\n"; }; - 0ADA39A3D2C1E2C2E8B6B1FA /* [CP] Copy Pods Resources */ = { + 1AD0E1505465EAF3048DBA31 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-defaults-Rocket.Chat-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 1DAF05E36DCAB8D4595F6B85 /* [CP] Copy Pods Resources */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-defaults-NotificationService/Pods-defaults-NotificationService-resources.sh", + "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker/QBImagePicker.bundle", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Entypo.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Feather.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Fontisto.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Foundation.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Octicons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Zocial.ttf", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/TOCropViewController/TOCropViewControllerBundle.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/iosMath/mathFonts.bundle", + ); + name = "[CP] Copy Pods Resources"; + outputPaths = ( + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/QBImagePicker.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AntDesign.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Entypo.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EvilIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Feather.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Brands.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Regular.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Solid.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Fontisto.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Foundation.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Ionicons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialCommunityIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Octicons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SimpleLineIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Zocial.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AccessibilityResources.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/TOCropViewControllerBundle.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/mathFonts.bundle", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-defaults-NotificationService/Pods-defaults-NotificationService-resources.sh\"\n"; + showEnvVarsInLog = 0; + }; + 1E1EA8082326CCE300E22452 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "echo \"Target architectures: $ARCHS\"\n\nAPP_PATH=\"${TARGET_BUILD_DIR}/${WRAPPER_NAME}\"\n\nfind \"$APP_PATH\" -name '*.framework' -type d | while read -r FRAMEWORK\ndo\nFRAMEWORK_EXECUTABLE_NAME=$(defaults read \"$FRAMEWORK/Info.plist\" CFBundleExecutable)\nFRAMEWORK_EXECUTABLE_PATH=\"$FRAMEWORK/$FRAMEWORK_EXECUTABLE_NAME\"\necho \"Executable is $FRAMEWORK_EXECUTABLE_PATH\"\necho $(lipo -info \"$FRAMEWORK_EXECUTABLE_PATH\")\n\nFRAMEWORK_TMP_PATH=\"$FRAMEWORK_EXECUTABLE_PATH-tmp\"\n\n# remove simulator's archs if location is not simulator's directory\ncase \"${TARGET_BUILD_DIR}\" in\n*\"iphonesimulator\")\necho \"No need to remove archs\"\n;;\n*)\nif $(lipo \"$FRAMEWORK_EXECUTABLE_PATH\" -verify_arch \"i386\") ; then\nlipo -output \"$FRAMEWORK_TMP_PATH\" -remove \"i386\" \"$FRAMEWORK_EXECUTABLE_PATH\"\necho \"i386 architecture removed\"\nrm \"$FRAMEWORK_EXECUTABLE_PATH\"\nmv \"$FRAMEWORK_TMP_PATH\" \"$FRAMEWORK_EXECUTABLE_PATH\"\nfi\nif $(lipo \"$FRAMEWORK_EXECUTABLE_PATH\" -verify_arch \"x86_64\") ; then\nlipo -output \"$FRAMEWORK_TMP_PATH\" -remove \"x86_64\" \"$FRAMEWORK_EXECUTABLE_PATH\"\necho \"x86_64 architecture removed\"\nrm \"$FRAMEWORK_EXECUTABLE_PATH\"\nmv \"$FRAMEWORK_TMP_PATH\" \"$FRAMEWORK_EXECUTABLE_PATH\"\nfi\n;;\nesac\n\necho \"Completed for executable $FRAMEWORK_EXECUTABLE_PATH\"\necho $\n\ndone\n"; + }; + 1EFE4DC322CBF36300B766B7 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "export EXTRA_PACKAGER_ARGS=\"--sourcemap-output $TMPDIR/$(md5 -qs \"$CONFIGURATION_BUILD_DIR\")-main.jsbundle.map\"\nexport NODE_BINARY=node\n../node_modules/react-native/scripts/react-native-xcode.sh\n"; + }; + 360870C7BEEC4AB68A78E7B7 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-defaults-RocketChatRN-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 654C29ACFC8C77B4A18EA8B0 /* [CP] Copy Pods Resources */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -902,13 +1036,13 @@ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-defaults-Rocket.Chat/Pods-defaults-Rocket.Chat-resources.sh\"\n"; showEnvVarsInLog = 0; }; - 0EE48F1D466597E5EE0DEA34 /* [CP] Embed Pods Frameworks */ = { + 68C166CF30687732759CE851 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-defaults-RocketChatRN/Pods-defaults-RocketChatRN-frameworks.sh", + "${PODS_ROOT}/Target Support Files/Pods-defaults-Rocket.Chat/Pods-defaults-Rocket.Chat-frameworks.sh", "${PODS_XCFRAMEWORKS_BUILD_DIR}/OpenSSL-Universal/OpenSSL.framework/OpenSSL", "${PODS_XCFRAMEWORKS_BUILD_DIR}/hermes-engine/hermes.framework/hermes", ); @@ -919,94 +1053,16 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-defaults-RocketChatRN/Pods-defaults-RocketChatRN-frameworks.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-defaults-Rocket.Chat/Pods-defaults-Rocket.Chat-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; - 1E1EA8082326CCE300E22452 /* ShellScript */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "echo \"Target architectures: $ARCHS\"\n\nAPP_PATH=\"${TARGET_BUILD_DIR}/${WRAPPER_NAME}\"\n\nfind \"$APP_PATH\" -name '*.framework' -type d | while read -r FRAMEWORK\ndo\nFRAMEWORK_EXECUTABLE_NAME=$(defaults read \"$FRAMEWORK/Info.plist\" CFBundleExecutable)\nFRAMEWORK_EXECUTABLE_PATH=\"$FRAMEWORK/$FRAMEWORK_EXECUTABLE_NAME\"\necho \"Executable is $FRAMEWORK_EXECUTABLE_PATH\"\necho $(lipo -info \"$FRAMEWORK_EXECUTABLE_PATH\")\n\nFRAMEWORK_TMP_PATH=\"$FRAMEWORK_EXECUTABLE_PATH-tmp\"\n\n# remove simulator's archs if location is not simulator's directory\ncase \"${TARGET_BUILD_DIR}\" in\n*\"iphonesimulator\")\necho \"No need to remove archs\"\n;;\n*)\nif $(lipo \"$FRAMEWORK_EXECUTABLE_PATH\" -verify_arch \"i386\") ; then\nlipo -output \"$FRAMEWORK_TMP_PATH\" -remove \"i386\" \"$FRAMEWORK_EXECUTABLE_PATH\"\necho \"i386 architecture removed\"\nrm \"$FRAMEWORK_EXECUTABLE_PATH\"\nmv \"$FRAMEWORK_TMP_PATH\" \"$FRAMEWORK_EXECUTABLE_PATH\"\nfi\nif $(lipo \"$FRAMEWORK_EXECUTABLE_PATH\" -verify_arch \"x86_64\") ; then\nlipo -output \"$FRAMEWORK_TMP_PATH\" -remove \"x86_64\" \"$FRAMEWORK_EXECUTABLE_PATH\"\necho \"x86_64 architecture removed\"\nrm \"$FRAMEWORK_EXECUTABLE_PATH\"\nmv \"$FRAMEWORK_TMP_PATH\" \"$FRAMEWORK_EXECUTABLE_PATH\"\nfi\n;;\nesac\n\necho \"Completed for executable $FRAMEWORK_EXECUTABLE_PATH\"\necho $\n\ndone\n"; - }; - 1EFE4DC322CBF36300B766B7 /* ShellScript */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "export EXTRA_PACKAGER_ARGS=\"--sourcemap-output $TMPDIR/$(md5 -qs \"$CONFIGURATION_BUILD_DIR\")-main.jsbundle.map\"\nexport NODE_BINARY=node\n../node_modules/react-native/scripts/react-native-xcode.sh\n"; - }; - 4B61F523E7DFD4CCCDB2630B /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-defaults-NotificationService-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - 4E0541F228C7056D985CA6EB /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-defaults-RocketChatRN-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - 63A63B5E01476BADE4E06B88 /* [CP] Copy Pods Resources */ = { + 6AFD4AAAB19CC45C5450D183 /* [CP] Copy Pods Resources */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-defaults-ShareRocketChatRN/Pods-defaults-ShareRocketChatRN-resources.sh", + "${PODS_ROOT}/Target Support Files/Pods-defaults-RocketChatRN/Pods-defaults-RocketChatRN-resources.sh", "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker/QBImagePicker.bundle", "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf", "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Entypo.ttf", @@ -1053,29 +1109,27 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-defaults-ShareRocketChatRN/Pods-defaults-ShareRocketChatRN-resources.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-defaults-RocketChatRN/Pods-defaults-RocketChatRN-resources.sh\"\n"; showEnvVarsInLog = 0; }; - 6DD37F59168B72BB6CDCEDF1 /* [CP] Check Pods Manifest.lock */ = { + 78E38FA4D1825ED629BD2F91 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); - inputFileListPaths = ( - ); inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-defaults-RocketChatRN/Pods-defaults-RocketChatRN-frameworks.sh", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/OpenSSL-Universal/OpenSSL.framework/OpenSSL", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/hermes-engine/hermes.framework/hermes", ); + name = "[CP] Embed Pods Frameworks"; outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-defaults-Rocket.Chat-checkManifestLockResult.txt", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/OpenSSL.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/hermes.framework", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-defaults-RocketChatRN/Pods-defaults-RocketChatRN-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; 7A10288726B1D15200E47EF8 /* Upload source maps to Bugsnag */ = { @@ -1181,139 +1235,7 @@ shellPath = /bin/sh; shellScript = "SOURCE_MAP=\"$TMPDIR/$(md5 -qs \"$CONFIGURATION_BUILD_DIR\")-main.jsbundle.map\" ../node_modules/@bugsnag/react-native/bugsnag-react-native-xcode.sh\n"; }; - 99170C805A43561BF41AD0CC /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-defaults-RocketChatRN/Pods-defaults-RocketChatRN-resources.sh", - "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker/QBImagePicker.bundle", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Entypo.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Feather.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Fontisto.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Foundation.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Octicons.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Zocial.ttf", - "${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle", - "${PODS_CONFIGURATION_BUILD_DIR}/TOCropViewController/TOCropViewControllerBundle.bundle", - "${PODS_CONFIGURATION_BUILD_DIR}/iosMath/mathFonts.bundle", - ); - name = "[CP] Copy Pods Resources"; - outputPaths = ( - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/QBImagePicker.bundle", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AntDesign.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Entypo.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EvilIcons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Feather.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Brands.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Regular.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Solid.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Fontisto.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Foundation.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Ionicons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialCommunityIcons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialIcons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Octicons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SimpleLineIcons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Zocial.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AccessibilityResources.bundle", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/TOCropViewControllerBundle.bundle", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/mathFonts.bundle", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-defaults-RocketChatRN/Pods-defaults-RocketChatRN-resources.sh\"\n"; - showEnvVarsInLog = 0; - }; - CB6F673666EADE583FD43410 /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-defaults-NotificationService/Pods-defaults-NotificationService-resources.sh", - "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker/QBImagePicker.bundle", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Entypo.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Feather.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Fontisto.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Foundation.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Octicons.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf", - "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Zocial.ttf", - "${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle", - "${PODS_CONFIGURATION_BUILD_DIR}/TOCropViewController/TOCropViewControllerBundle.bundle", - "${PODS_CONFIGURATION_BUILD_DIR}/iosMath/mathFonts.bundle", - ); - name = "[CP] Copy Pods Resources"; - outputPaths = ( - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/QBImagePicker.bundle", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AntDesign.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Entypo.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EvilIcons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Feather.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Brands.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Regular.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Solid.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Fontisto.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Foundation.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Ionicons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialCommunityIcons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialIcons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Octicons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SimpleLineIcons.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Zocial.ttf", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AccessibilityResources.bundle", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/TOCropViewControllerBundle.bundle", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/mathFonts.bundle", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-defaults-NotificationService/Pods-defaults-NotificationService-resources.sh\"\n"; - showEnvVarsInLog = 0; - }; - E420D117DA1C33130AF78D4D /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-defaults-Rocket.Chat/Pods-defaults-Rocket.Chat-frameworks.sh", - "${PODS_XCFRAMEWORKS_BUILD_DIR}/OpenSSL-Universal/OpenSSL.framework/OpenSSL", - "${PODS_XCFRAMEWORKS_BUILD_DIR}/hermes-engine/hermes.framework/hermes", - ); - name = "[CP] Embed Pods Frameworks"; - outputPaths = ( - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/OpenSSL.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/hermes.framework", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-defaults-Rocket.Chat/Pods-defaults-Rocket.Chat-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - EB34E6FD3AD9A61718D9ED66 /* [CP] Check Pods Manifest.lock */ = { + 7F50400D836B1B9401EA0D46 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1335,6 +1257,84 @@ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; + BD67AF7A6313353EB149232C /* [CP] Copy Pods Resources */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-defaults-ShareRocketChatRN/Pods-defaults-ShareRocketChatRN-resources.sh", + "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker/QBImagePicker.bundle", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Entypo.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Feather.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Fontisto.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Foundation.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Octicons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Zocial.ttf", + "${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/TOCropViewController/TOCropViewControllerBundle.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/iosMath/mathFonts.bundle", + ); + name = "[CP] Copy Pods Resources"; + outputPaths = ( + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/QBImagePicker.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AntDesign.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Entypo.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EvilIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Feather.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Brands.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Regular.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Solid.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Fontisto.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Foundation.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Ionicons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialCommunityIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Octicons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SimpleLineIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Zocial.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AccessibilityResources.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/TOCropViewControllerBundle.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/mathFonts.bundle", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-defaults-ShareRocketChatRN/Pods-defaults-ShareRocketChatRN-resources.sh\"\n"; + showEnvVarsInLog = 0; + }; + C2A9EDE251DBF6D44DD0BDA4 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-defaults-NotificationService-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -1492,7 +1492,7 @@ /* Begin XCBuildConfiguration section */ 13B07F941A680F5B00A75B9A /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 27E5BE6ABA6A2DB0A06F924E /* Pods-defaults-RocketChatRN.debug.xcconfig */; + baseConfigurationReference = D15DA76143AD7A4D6E8BA4D0 /* Pods-defaults-RocketChatRN.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; APPLICATION_EXTENSION_API_ONLY = NO; @@ -1548,7 +1548,7 @@ }; 13B07F951A680F5B00A75B9A /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = AE5F54395576888438D5F5D6 /* Pods-defaults-RocketChatRN.release.xcconfig */; + baseConfigurationReference = D04D04B2EA8D88C19F091B19 /* Pods-defaults-RocketChatRN.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; APPLICATION_EXTENSION_API_ONLY = NO; @@ -1604,7 +1604,7 @@ }; 1EC6ACBC22CB9FC300A41C61 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 3026446E76F8BD665385CA6D /* Pods-defaults-ShareRocketChatRN.debug.xcconfig */; + baseConfigurationReference = 4F33E4DA6CCD312106101066 /* Pods-defaults-ShareRocketChatRN.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(EMBEDDED_CONTENT_CONTAINS_SWIFT)"; APPLICATION_EXTENSION_API_ONLY = YES; @@ -1672,7 +1672,7 @@ }; 1EC6ACBD22CB9FC300A41C61 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 5031896928ACC63AA010A47D /* Pods-defaults-ShareRocketChatRN.release.xcconfig */; + baseConfigurationReference = 9AF8F9AFBBF71270CE75AF6D /* Pods-defaults-ShareRocketChatRN.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(EMBEDDED_CONTENT_CONTAINS_SWIFT)"; APPLICATION_EXTENSION_API_ONLY = YES; @@ -1740,7 +1740,7 @@ }; 1EFEB59D2493B6640072EDC0 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = A7F988DF4B68700DD06E4FC3 /* Pods-defaults-NotificationService.debug.xcconfig */; + baseConfigurationReference = EC65E9A63DAB7D0BDF669DFA /* Pods-defaults-NotificationService.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(EMBEDDED_CONTENT_CONTAINS_SWIFT)"; CLANG_ANALYZER_NONNULL = YES; @@ -1777,7 +1777,7 @@ }; 1EFEB59E2493B6640072EDC0 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = B857001C31C6F6FC585D5972 /* Pods-defaults-NotificationService.release.xcconfig */; + baseConfigurationReference = D6F1E6B6A6B836D26CEBE5B4 /* Pods-defaults-NotificationService.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(EMBEDDED_CONTENT_CONTAINS_SWIFT)"; CLANG_ANALYZER_NONNULL = YES; @@ -1815,7 +1815,7 @@ }; 7AAB3E50257E6A6E00707CF6 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = E5BCD87511845392D3C6FEF0 /* Pods-defaults-Rocket.Chat.debug.xcconfig */; + baseConfigurationReference = 05D159ED244184CFD689E5A7 /* Pods-defaults-Rocket.Chat.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; APPLICATION_EXTENSION_API_ONLY = NO; @@ -1869,7 +1869,7 @@ }; 7AAB3E51257E6A6E00707CF6 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 164E074B4C99AB825A717C54 /* Pods-defaults-Rocket.Chat.release.xcconfig */; + baseConfigurationReference = 2D1498938315CC290B97920B /* Pods-defaults-Rocket.Chat.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; APPLICATION_EXTENSION_API_ONLY = NO; diff --git a/package.json b/package.json index 987feefa6..4fafd755a 100644 --- a/package.json +++ b/package.json @@ -91,7 +91,7 @@ "prop-types": "15.7.2", "react": "17.0.2", "react-hook-form": "^7.34.2", - "react-native": "RocketChat/react-native#51266d5ab8b4c3f04c0e8f207ea5db6056647104", + "react-native": "RocketChat/react-native#6cf729c196f0f043ac6e7444e73f5a560d7a8a8a", "react-native-animatable": "^1.3.3", "react-native-background-timer": "2.4.1", "react-native-bootsplash": "^4.3.3", @@ -107,7 +107,6 @@ "react-native-image-crop-picker": "RocketChat/react-native-image-crop-picker", "react-native-image-progress": "^1.1.1", "react-native-katex": "^0.5.1", - "react-native-keycommands": "2.0.3", "react-native-linear-gradient": "^2.6.2", "react-native-localize": "2.1.1", "react-native-math-view": "^3.9.5", diff --git a/yarn.lock b/yarn.lock index b7a55b67c..e12bd923b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -59,6 +59,14 @@ dependencies: "@babel/highlight" "^7.18.6" +"@babel/code-frame@^7.22.13": + version "7.22.13" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.13.tgz#e3c1c099402598483b7a8c46a721d1038803755e" + integrity sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w== + dependencies: + "@babel/highlight" "^7.22.13" + chalk "^2.4.2" + "@babel/compat-data@^7.13.11", "@babel/compat-data@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.14.5.tgz#8ef4c18e58e801c5c95d3c1c0f2874a2680fadea" @@ -79,6 +87,11 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.10.tgz#9d92fa81b87542fff50e848ed585b4212c1d34ec" integrity sha512-sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg== +"@babel/compat-data@^7.22.9": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.20.tgz#8df6e96661209623f1975d66c35ffca66f3306d0" + integrity sha512-BQYjKbpXjoXwFW5jGqiizJQQT/aC7pFm9Ok1OWssonuguICi264lbgMzRp2ZMmRSlfkX6DsWDDcsrctK8Rwfiw== + "@babel/core@7.12.9": version "7.12.9" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.12.9.tgz#fd450c4ec10cdbb980e2928b7aa7a28484593fc8" @@ -145,25 +158,25 @@ semver "^6.3.0" "@babel/core@^7.13.16": - version "7.20.12" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.20.12.tgz#7930db57443c6714ad216953d1356dac0eb8496d" - integrity sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg== + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.22.20.tgz#e3d0eed84c049e2a2ae0a64d27b6a37edec385b7" + integrity sha512-Y6jd1ahLubuYweD/zJH+vvOY141v4f9igNQAQ+MBgq9JlHS2iTsZKn1aMsb3vGccZsXI16VzTBw52Xx0DWmtnA== dependencies: - "@ampproject/remapping" "^2.1.0" - "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.20.7" - "@babel/helper-compilation-targets" "^7.20.7" - "@babel/helper-module-transforms" "^7.20.11" - "@babel/helpers" "^7.20.7" - "@babel/parser" "^7.20.7" - "@babel/template" "^7.20.7" - "@babel/traverse" "^7.20.12" - "@babel/types" "^7.20.7" + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.22.13" + "@babel/generator" "^7.22.15" + "@babel/helper-compilation-targets" "^7.22.15" + "@babel/helper-module-transforms" "^7.22.20" + "@babel/helpers" "^7.22.15" + "@babel/parser" "^7.22.16" + "@babel/template" "^7.22.15" + "@babel/traverse" "^7.22.20" + "@babel/types" "^7.22.19" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.2" - json5 "^2.2.2" - semver "^6.3.0" + json5 "^2.2.3" + semver "^6.3.1" "@babel/core@^7.14.0": version "7.18.2" @@ -264,13 +277,14 @@ "@jridgewell/gen-mapping" "^0.3.2" jsesc "^2.5.1" -"@babel/generator@^7.14.0", "@babel/generator@^7.20.7": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.20.7.tgz#f8ef57c8242665c5929fe2e8d82ba75460187b4a" - integrity sha512-7wqMOJq8doJMZmP4ApXTzLxSr7+oO2jroJURrVEp6XShrQUObV8Tq/D0NCcoYg2uHqUrjzO0zwBjoYzelxK+sw== +"@babel/generator@^7.14.0", "@babel/generator@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.22.15.tgz#1564189c7ec94cb8f77b5e8a90c4d200d21b2339" + integrity sha512-Zu9oWARBqeVOW0dZOjXc3JObrzuqothQ3y/n1kUtrjCoCPLkXUwMvOo/F/TCfoHMbWIFlWwpZtkZVb9ga4U2pA== dependencies: - "@babel/types" "^7.20.7" + "@babel/types" "^7.22.15" "@jridgewell/gen-mapping" "^0.3.2" + "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" "@babel/generator@^7.14.5", "@babel/generator@^7.7.2": @@ -359,6 +373,13 @@ dependencies: "@babel/types" "^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" + integrity sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg== + dependencies: + "@babel/types" "^7.22.5" + "@babel/helper-annotate-as-pure@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz#60bc0bc657f63a0924ff9a4b4a0b24a13cf4deee" @@ -448,6 +469,17 @@ lru-cache "^5.1.1" semver "^6.3.0" +"@babel/helper-compilation-targets@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz#0698fc44551a26cf29f18d4662d5bf545a6cfc52" + integrity sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw== + dependencies: + "@babel/compat-data" "^7.22.9" + "@babel/helper-validator-option" "^7.22.15" + browserslist "^4.21.9" + lru-cache "^5.1.1" + semver "^6.3.1" + "@babel/helper-create-class-features-plugin@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.5.tgz#8842ec495516dd1ed8f6c572be92ba78b1e9beef" @@ -499,6 +531,21 @@ "@babel/helper-replace-supers" "^7.18.9" "@babel/helper-split-export-declaration" "^7.18.6" +"@babel/helper-create-class-features-plugin@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz#97a61b385e57fe458496fad19f8e63b63c867de4" + integrity sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.22.5" + "@babel/helper-environment-visitor" "^7.22.5" + "@babel/helper-function-name" "^7.22.5" + "@babel/helper-member-expression-to-functions" "^7.22.15" + "@babel/helper-optimise-call-expression" "^7.22.5" + "@babel/helper-replace-supers" "^7.22.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + semver "^6.3.1" + "@babel/helper-create-class-features-plugin@^7.8.3", "@babel/helper-create-class-features-plugin@^7.9.6": version "7.9.6" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.9.6.tgz#965c8b0a9f051801fd9d3b372ca0ccf200a90897" @@ -607,6 +654,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be" integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== +"@babel/helper-environment-visitor@^7.22.20", "@babel/helper-environment-visitor@^7.22.5": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" + integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== + "@babel/helper-explode-assignable-expression@^7.16.7": version "7.16.7" resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz#12a6d8522fdd834f194e868af6354e8650242b7a" @@ -671,14 +723,6 @@ "@babel/template" "^7.18.6" "@babel/types" "^7.18.9" -"@babel/helper-function-name@^7.19.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz#941574ed5390682e872e52d3f38ce9d1bef4648c" - integrity sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w== - dependencies: - "@babel/template" "^7.18.10" - "@babel/types" "^7.19.0" - "@babel/helper-function-name@^7.21.0": version "7.21.0" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz#d552829b10ea9f120969304023cd0645fa00b1b4" @@ -687,6 +731,14 @@ "@babel/template" "^7.20.7" "@babel/types" "^7.21.0" +"@babel/helper-function-name@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz#ede300828905bb15e582c037162f99d5183af1be" + integrity sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ== + dependencies: + "@babel/template" "^7.22.5" + "@babel/types" "^7.22.5" + "@babel/helper-function-name@^7.8.3", "@babel/helper-function-name@^7.9.5": version "7.9.5" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.9.5.tgz#2b53820d35275120e1874a82e5aabe1376920a5c" @@ -738,6 +790,13 @@ dependencies: "@babel/types" "^7.18.6" +"@babel/helper-hoist-variables@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" + integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== + dependencies: + "@babel/types" "^7.22.5" + "@babel/helper-member-expression-to-functions@^7.10.4": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.4.tgz#7cd04b57dfcf82fce9aeae7d4e4452fa31b8c7c4" @@ -773,6 +832,13 @@ dependencies: "@babel/types" "^7.18.9" +"@babel/helper-member-expression-to-functions@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.15.tgz#b95a144896f6d491ca7863576f820f3628818621" + integrity sha512-qLNsZbgrNh0fDQBCPocSL8guki1hcPvltGDv/NxvUoABwFq7GkKSu1nRXeJkVZc+wJvne2E0RKQz+2SQrz6eAA== + dependencies: + "@babel/types" "^7.22.15" + "@babel/helper-member-expression-to-functions@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.8.3.tgz#659b710498ea6c1d9907e0c73f206eee7dadc24c" @@ -815,6 +881,13 @@ dependencies: "@babel/types" "^7.16.7" +"@babel/helper-module-imports@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0" + integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w== + dependencies: + "@babel/types" "^7.22.15" + "@babel/helper-module-transforms@^7.10.4": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.10.4.tgz#ca1f01fdb84e48c24d7506bb818c961f1da8805d" @@ -856,20 +929,6 @@ "@babel/traverse" "^7.18.0" "@babel/types" "^7.18.0" -"@babel/helper-module-transforms@^7.20.11": - version "7.20.11" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz#df4c7af713c557938c50ea3ad0117a7944b2f1b0" - integrity sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg== - dependencies: - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-simple-access" "^7.20.2" - "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/helper-validator-identifier" "^7.19.1" - "@babel/template" "^7.20.7" - "@babel/traverse" "^7.20.10" - "@babel/types" "^7.20.7" - "@babel/helper-module-transforms@^7.21.0": version "7.21.2" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz#160caafa4978ac8c00ac66636cb0fa37b024e2d2" @@ -884,6 +943,17 @@ "@babel/traverse" "^7.21.2" "@babel/types" "^7.21.2" +"@babel/helper-module-transforms@^7.22.15", "@babel/helper-module-transforms@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.22.20.tgz#da9edc14794babbe7386df438f3768067132f59e" + integrity sha512-dLT7JVWIUUxKOs1UnJUBR3S70YK+pKX6AbJgB2vMIvEkZkrfJDbYDJesnPshtKV4LhDOR3Oc5YULeDizRek+5A== + dependencies: + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-module-imports" "^7.22.15" + "@babel/helper-simple-access" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/helper-validator-identifier" "^7.22.20" + "@babel/helper-module-transforms@^7.9.0": version "7.9.0" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.9.0.tgz#43b34dfe15961918707d247327431388e9fe96e5" @@ -925,6 +995,13 @@ dependencies: "@babel/types" "^7.18.6" +"@babel/helper-optimise-call-expression@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz#f21531a9ccbff644fdd156b4077c16ff0c3f609e" + integrity sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw== + dependencies: + "@babel/types" "^7.22.5" + "@babel/helper-optimise-call-expression@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz#7ed071813d09c75298ef4f208956006b6111ecb9" @@ -967,10 +1044,10 @@ resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz#4b8aea3b069d8cb8a72cdfe28ddf5ceca695ef2f" integrity sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w== -"@babel/helper-plugin-utils@^7.20.2": - version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629" - integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== +"@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" + integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== "@babel/helper-regex@^7.8.3": version "7.8.3" @@ -1062,6 +1139,15 @@ "@babel/traverse" "^7.18.9" "@babel/types" "^7.18.9" +"@babel/helper-replace-supers@^7.22.5", "@babel/helper-replace-supers@^7.22.9": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz#e37d367123ca98fe455a9887734ed2e16eb7a793" + integrity sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw== + dependencies: + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-member-expression-to-functions" "^7.22.15" + "@babel/helper-optimise-call-expression" "^7.22.5" + "@babel/helper-replace-supers@^7.8.6", "@babel/helper-replace-supers@^7.9.6": version "7.9.6" resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.9.6.tgz#03149d7e6a5586ab6764996cd31d6981a17e1444" @@ -1108,6 +1194,13 @@ dependencies: "@babel/types" "^7.20.2" +"@babel/helper-simple-access@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de" + integrity sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w== + dependencies: + "@babel/types" "^7.22.5" + "@babel/helper-simple-access@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.8.3.tgz#7f8109928b4dab4654076986af575231deb639ae" @@ -1130,12 +1223,12 @@ dependencies: "@babel/types" "^7.18.9" -"@babel/helper-skip-transparent-expression-wrappers@^7.20.0": - version "7.20.0" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz#fbe4c52f60518cab8140d77101f0e63a8a230684" - integrity sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg== +"@babel/helper-skip-transparent-expression-wrappers@^7.20.0", "@babel/helper-skip-transparent-expression-wrappers@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz#007f15240b5751c537c40e77abb4e89eeaaa8847" + integrity sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q== dependencies: - "@babel/types" "^7.20.0" + "@babel/types" "^7.22.5" "@babel/helper-split-export-declaration@^7.10.4": version "7.10.4" @@ -1165,6 +1258,13 @@ dependencies: "@babel/types" "^7.18.6" +"@babel/helper-split-export-declaration@^7.22.6": + version "7.22.6" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" + integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g== + dependencies: + "@babel/types" "^7.22.5" + "@babel/helper-split-export-declaration@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz#31a9f30070f91368a7182cf05f831781065fc7a9" @@ -1182,6 +1282,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz#38d3acb654b4701a9b77fb0615a96f775c3a9e63" integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw== +"@babel/helper-string-parser@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" + integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== + "@babel/helper-validator-identifier@^7.10.4": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz#a78c7a7251e01f616512d31b10adcf52ada5e0d2" @@ -1207,6 +1312,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2" integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== +"@babel/helper-validator-identifier@^7.22.19", "@babel/helper-validator-identifier@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" + integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== + "@babel/helper-validator-identifier@^7.9.0", "@babel/helper-validator-identifier@^7.9.5": version "7.9.5" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz#90977a8e6fbf6b431a7dc31752eee233bf052d80" @@ -1227,6 +1337,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz#bf0d2b5a509b1f336099e4ff36e1a63aa5db4db8" integrity sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw== +"@babel/helper-validator-option@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040" + integrity sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA== + "@babel/helper-wrap-function@^7.16.8": version "7.16.8" resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz#58afda087c4cd235de92f7ceedebca2c41274200" @@ -1274,15 +1389,6 @@ "@babel/traverse" "^7.18.2" "@babel/types" "^7.18.2" -"@babel/helpers@^7.20.7": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.20.7.tgz#04502ff0feecc9f20ecfaad120a18f011a8e6dce" - integrity sha512-PBPjs5BppzsGaxHQCDKnZ6Gd9s6xl8bBCluz3vEInLGRJmnZan4F6BYCeqtyXqkk4W5IlPmjK4JlOuZkpJ3xZA== - dependencies: - "@babel/template" "^7.20.7" - "@babel/traverse" "^7.20.7" - "@babel/types" "^7.20.7" - "@babel/helpers@^7.21.0": version "7.21.0" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.21.0.tgz#9dd184fb5599862037917cdc9eecb84577dc4e7e" @@ -1292,6 +1398,15 @@ "@babel/traverse" "^7.21.0" "@babel/types" "^7.21.0" +"@babel/helpers@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.22.15.tgz#f09c3df31e86e3ea0b7ff7556d85cdebd47ea6f1" + integrity sha512-7pAjK0aSdxOwR+CcYAqgWOGy5dcfvzsTIfFTb2odQqW47MDfv14UaJDY6eng8ylM2EaeKXdxaSWESbkmaQHTmw== + dependencies: + "@babel/template" "^7.22.15" + "@babel/traverse" "^7.22.15" + "@babel/types" "^7.22.15" + "@babel/helpers@^7.9.6": version "7.9.6" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.9.6.tgz#092c774743471d0bb6c7de3ad465ab3d3486d580" @@ -1337,6 +1452,15 @@ chalk "^2.0.0" js-tokens "^4.0.0" +"@babel/highlight@^7.22.13": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.20.tgz#4ca92b71d80554b01427815e06f2df965b9c1f54" + integrity sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg== + dependencies: + "@babel/helper-validator-identifier" "^7.22.20" + chalk "^2.4.2" + js-tokens "^4.0.0" + "@babel/highlight@^7.8.3": version "7.9.0" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.9.0.tgz#4e9b45ccb82b79607271b2979ad82c7b68163079" @@ -1361,10 +1485,10 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.18.11.tgz#68bb07ab3d380affa9a3f96728df07969645d2d9" integrity sha512-9JKn5vN+hDt0Hdqn1PiJ2guflwP+B6Ga8qbDuoF0PzzVhrzsKIJo8yGqVk6CmMHiMei9w1C1Bp9IMJSIK+HPIQ== -"@babel/parser@^7.13.16", "@babel/parser@^7.14.0", "@babel/parser@^7.20.7": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.7.tgz#66fe23b3c8569220817d5feb8b9dcdc95bb4f71b" - integrity sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg== +"@babel/parser@^7.13.16", "@babel/parser@^7.14.0", "@babel/parser@^7.22.15", "@babel/parser@^7.22.16": + version "7.22.16" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.16.tgz#180aead7f247305cce6551bea2720934e2fa2c95" + integrity sha512-+gPfKv8UWeKKeJTUxe59+OobVcrYHETCsORl61EmSkmgymguYk/X5bp7GuUIXaFsc6y++v8ZxPsLSSuujqDphA== "@babel/parser@^7.14.5": version "7.14.5" @@ -1396,6 +1520,11 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.18.9.tgz#f2dde0c682ccc264a9a8595efd030a5cc8fd2539" integrity sha512-9uJveS9eY9DJ0t64YbIBZICtJy8a5QrDEVdiLCG97fVLpDTpGX7t8mMSb6OWw6Lrnjqj4O8zwjELX3dhoMgiBg== +"@babel/parser@^7.20.7": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.7.tgz#66fe23b3c8569220817d5feb8b9dcdc95bb4f71b" + integrity sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg== + "@babel/parser@^7.21.0", "@babel/parser@^7.21.2": version "7.21.2" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.21.2.tgz#dacafadfc6d7654c3051a66d6fe55b6cb2f2a0b3" @@ -1728,9 +1857,9 @@ "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-proposal-optional-chaining@^7.13.12": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.20.7.tgz#49f2b372519ab31728cc14115bb0998b15bfda55" - integrity sha512-T+A7b1kfjtRM51ssoOfS1+wbyCVqorfyZhT99TvxxLMirPShD8CzKMRepMlCBGM5RpHMbn8s+5MMHnPstJH6mQ== + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz#886f5c8978deb7d30f678b2e24346b287234d3ea" + integrity sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA== dependencies: "@babel/helper-plugin-utils" "^7.20.2" "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" @@ -1889,7 +2018,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-flow@^7.0.0", "@babel/plugin-syntax-flow@^7.18.6": +"@babel/plugin-syntax-flow@^7.0.0", "@babel/plugin-syntax-flow@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.22.5.tgz#163b820b9e7696ce134df3ee716d9c0c98035859" + integrity sha512-9RdCl0i+q0QExayk2nOS7853w08yLucnnPML6EN9S8fgMPVtdLDCdx/cOQ/i44Lb9UeQX9A35yaqBBOMMZxPxQ== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-syntax-flow@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.18.6.tgz#774d825256f2379d06139be0c723c4dd444f3ca1" integrity sha512-LUbR+KNTBWCUAqRG9ex5Gnzu2IOkt8jRJbHHXFT9q+L9zm7M/QQbEqXyw1n1pohYvOyWC8CjeyjrSaIwiYjK7A== @@ -1938,12 +2074,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-syntax-jsx@^7.0.0", "@babel/plugin-syntax-jsx@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz#a8feef63b010150abd97f1649ec296e849943ca0" - integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q== +"@babel/plugin-syntax-jsx@^7.0.0", "@babel/plugin-syntax-jsx@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz#a6b68e84fb76e759fc3b93e901876ffabbe1d918" + integrity sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-jsx@^7.10.4": version "7.10.4" @@ -1959,6 +2095,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.17.12" +"@babel/plugin-syntax-jsx@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz#a8feef63b010150abd97f1649ec296e849943ca0" + integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-jsx@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.8.3.tgz#521b06c83c40480f1e58b4fd33b92eceb1d6ea94" @@ -2043,6 +2186,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" +"@babel/plugin-syntax-typescript@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz#aac8d383b062c5072c647a31ef990c1d0af90272" + integrity sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/plugin-syntax-typescript@^7.7.2": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.14.5.tgz#b82c6ce471b165b5ce420cf92914d6fb46225716" @@ -2096,12 +2246,12 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/helper-remap-async-to-generator" "^7.18.6" -"@babel/plugin-transform-block-scoped-functions@^7.0.0", "@babel/plugin-transform-block-scoped-functions@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz#9187bf4ba302635b9d70d986ad70f038726216a8" - integrity sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ== +"@babel/plugin-transform-block-scoped-functions@^7.0.0": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz#27978075bfaeb9fa586d3cb63a3d30c1de580024" + integrity sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-block-scoped-functions@^7.16.7": version "7.16.7" @@ -2110,6 +2260,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.16.7" +"@babel/plugin-transform-block-scoped-functions@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz#9187bf4ba302635b9d70d986ad70f038726216a8" + integrity sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-transform-block-scoping@^7.0.0": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.8.3.tgz#97d35dab66857a437c166358b91d09050c868f3a" @@ -2294,6 +2451,14 @@ "@babel/helper-plugin-utils" "^7.18.9" "@babel/plugin-syntax-flow" "^7.18.6" +"@babel/plugin-transform-flow-strip-types@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.22.5.tgz#0bb17110c7bf5b35a60754b2f00c58302381dee2" + integrity sha512-tujNbZdxdG0/54g/oua8ISToaXTFBf8EnSb5PgQSciIXWOWKX3S4+JR7ZE9ol8FZwf9kxitzkGQ+QWeov/mCiA== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/plugin-syntax-flow" "^7.22.5" + "@babel/plugin-transform-for-of@^7.0.0": version "7.9.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.9.0.tgz#0f260e27d3e29cd1bb3128da5e76c761aa6c108e" @@ -2362,12 +2527,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.9" -"@babel/plugin-transform-member-expression-literals@^7.0.0", "@babel/plugin-transform-member-expression-literals@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz#ac9fdc1a118620ac49b7e7a5d2dc177a1bfee88e" - integrity sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA== +"@babel/plugin-transform-member-expression-literals@^7.0.0": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz#4fcc9050eded981a468347dd374539ed3e058def" + integrity sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-member-expression-literals@^7.16.7": version "7.16.7" @@ -2376,6 +2541,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.16.7" +"@babel/plugin-transform-member-expression-literals@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz#ac9fdc1a118620ac49b7e7a5d2dc177a1bfee88e" + integrity sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-transform-modules-amd@^7.18.0": version "7.18.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.0.tgz#7ef1002e67e36da3155edc8bf1ac9398064c02ed" @@ -2404,14 +2576,14 @@ "@babel/helper-simple-access" "^7.8.3" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-commonjs@^7.13.8": - version "7.20.11" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.20.11.tgz#8cb23010869bf7669fd4b3098598b6b2be6dc607" - integrity sha512-S8e1f7WQ7cimJQ51JkAaDrEtohVEitXjgCGAS2N8S31Y42E+kWwfSz83LYz57QdBm7q9diARVqanIaH2oVgQnw== +"@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.15.tgz#b11810117ed4ee7691b29bd29fd9f3f98276034f" + integrity sha512-jWL4eh90w0HQOTKP2MoXXUpVxilxsB2Vl4ji69rSjS3EcZ/v4sBmn+A3NpepuJzBhOaEBbR7udonlHHn5DWidg== dependencies: - "@babel/helper-module-transforms" "^7.20.11" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-simple-access" "^7.20.2" + "@babel/helper-module-transforms" "^7.22.15" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-simple-access" "^7.22.5" "@babel/plugin-transform-modules-commonjs@^7.18.2": version "7.18.2" @@ -2515,13 +2687,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-object-super@^7.0.0", "@babel/plugin-transform-object-super@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz#fb3c6ccdd15939b6ff7939944b51971ddc35912c" - integrity sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA== +"@babel/plugin-transform-object-super@^7.0.0": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz#794a8d2fcb5d0835af722173c1a9d704f44e218c" + integrity sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/helper-replace-supers" "^7.18.6" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-replace-supers" "^7.22.5" "@babel/plugin-transform-object-super@^7.16.7": version "7.16.7" @@ -2531,6 +2703,14 @@ "@babel/helper-plugin-utils" "^7.16.7" "@babel/helper-replace-supers" "^7.16.7" +"@babel/plugin-transform-object-super@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz#fb3c6ccdd15939b6ff7939944b51971ddc35912c" + integrity sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-replace-supers" "^7.18.6" + "@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.9.5": version "7.9.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.9.5.tgz#173b265746f5e15b2afe527eeda65b73623a0795" @@ -2553,12 +2733,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.17.12" -"@babel/plugin-transform-property-literals@^7.0.0", "@babel/plugin-transform-property-literals@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz#e22498903a483448e94e032e9bbb9c5ccbfc93a3" - integrity sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg== +"@babel/plugin-transform-property-literals@^7.0.0": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz#b5ddabd73a4f7f26cd0e20f5db48290b88732766" + integrity sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-transform-property-literals@^7.16.7": version "7.16.7" @@ -2567,6 +2747,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.16.7" +"@babel/plugin-transform-property-literals@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz#e22498903a483448e94e032e9bbb9c5ccbfc93a3" + integrity sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-transform-react-display-name@^7.0.0": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.8.3.tgz#70ded987c91609f78353dd76d2fb2a0bb991e8e5" @@ -2811,6 +2998,16 @@ "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-typescript" "^7.18.6" +"@babel/plugin-transform-typescript@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.15.tgz#15adef906451d86349eb4b8764865c960eb54127" + integrity sha512-1uirS0TnijxvQLnlv5wQBwOX3E1wCFX7ITv+9pBV2wKEk4K+M5tqDaoNXnTH8tjEIYHLO98MwiTWO04Ggz4XuA== + dependencies: + "@babel/helper-annotate-as-pure" "^7.22.5" + "@babel/helper-create-class-features-plugin" "^7.22.15" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/plugin-syntax-typescript" "^7.22.5" + "@babel/plugin-transform-typescript@^7.5.0": version "7.9.6" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.9.6.tgz#2248971416a506fc78278fc0c0ea3179224af1e9" @@ -3020,7 +3217,7 @@ core-js-compat "^3.22.1" semver "^6.3.0" -"@babel/preset-flow@^7.12.1", "@babel/preset-flow@^7.13.13": +"@babel/preset-flow@^7.12.1": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.18.6.tgz#83f7602ba566e72a9918beefafef8ef16d2810cb" integrity sha512-E7BDhL64W6OUqpuyHnSroLnqyRTcG6ZdOBl1OKI/QK/HJfplqK/S3sq1Cckx7oTodJ5yOXyfw7rEADJ6UjoQDQ== @@ -3029,6 +3226,15 @@ "@babel/helper-validator-option" "^7.18.6" "@babel/plugin-transform-flow-strip-types" "^7.18.6" +"@babel/preset-flow@^7.13.13": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.22.15.tgz#30318deb9b3ebd9f5738e96da03a531e0cd3165d" + integrity sha512-dB5aIMqpkgbTfN5vDdTRPzjqtWiZcRESNR88QYnoPR+bmdYoluOzMX9tQerTv0XzSgZYctPfO1oc0N5zdog1ew== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-validator-option" "^7.22.15" + "@babel/plugin-transform-flow-strip-types" "^7.22.5" + "@babel/preset-modules@^0.1.5": version "0.1.5" resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.5.tgz#ef939d6e7f268827e1841638dc6ff95515e115d9" @@ -3052,7 +3258,7 @@ "@babel/plugin-transform-react-jsx-development" "^7.18.6" "@babel/plugin-transform-react-pure-annotations" "^7.18.6" -"@babel/preset-typescript@^7.12.7", "@babel/preset-typescript@^7.13.0": +"@babel/preset-typescript@^7.12.7": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.18.6.tgz#ce64be3e63eddc44240c6358daefac17b3186399" integrity sha512-s9ik86kXBAnD760aybBucdpnLsAt0jK1xqJn2juOn9lkOvSHV60os5hxoVJsPzMQxvnUJFAlkont2DvvaYEBtQ== @@ -3061,6 +3267,17 @@ "@babel/helper-validator-option" "^7.18.6" "@babel/plugin-transform-typescript" "^7.18.6" +"@babel/preset-typescript@^7.13.0": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.22.15.tgz#43db30516fae1d417d748105a0bc95f637239d48" + integrity sha512-HblhNmh6yM+cU4VwbBRpxFhxsTdfS1zsvH9W+gEjD0ARV9+8B4sNfpI6GuhePti84nuvhiwKS539jKPFHskA9A== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-validator-option" "^7.22.15" + "@babel/plugin-syntax-jsx" "^7.22.5" + "@babel/plugin-transform-modules-commonjs" "^7.22.15" + "@babel/plugin-transform-typescript" "^7.22.15" + "@babel/preset-typescript@^7.16.7": version "7.17.12" resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.17.12.tgz#40269e0a0084d56fc5731b6c40febe1c9a4a3e8c" @@ -3070,7 +3287,7 @@ "@babel/helper-validator-option" "^7.16.7" "@babel/plugin-transform-typescript" "^7.17.12" -"@babel/register@^7.12.1", "@babel/register@^7.13.16": +"@babel/register@^7.12.1": version "7.18.9" resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.18.9.tgz#1888b24bc28d5cc41c412feb015e9ff6b96e439c" integrity sha512-ZlbnXDcNYHMR25ITwwNKT88JiaukkdVj/nG7r3wnuXkOTHc60Uy05PwMCPre0hSkY68E6zK3xz+vUJSP2jWmcw== @@ -3081,6 +3298,17 @@ pirates "^4.0.5" source-map-support "^0.5.16" +"@babel/register@^7.13.16": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.22.15.tgz#c2c294a361d59f5fa7bcc8b97ef7319c32ecaec7" + integrity sha512-V3Q3EqoQdn65RCgTLwauZaTfd1ShhwPmbBv+1dkZV/HpCGMKVyn6oFcRlI7RaKqiDQjX2Qd3AuoEguBgdjIKlg== + dependencies: + clone-deep "^4.0.1" + find-cache-dir "^2.0.0" + make-dir "^2.1.0" + pirates "^4.0.5" + source-map-support "^0.5.16" + "@babel/runtime-corejs3@^7.10.2": version "7.10.5" resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.10.5.tgz#a57fe6c13045ca33768a2aa527ead795146febe1" @@ -3216,6 +3444,15 @@ "@babel/parser" "^7.20.7" "@babel/types" "^7.20.7" +"@babel/template@^7.22.15", "@babel/template@^7.22.5": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38" + integrity sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w== + dependencies: + "@babel/code-frame" "^7.22.13" + "@babel/parser" "^7.22.15" + "@babel/types" "^7.22.15" + "@babel/traverse@^7.1.6", "@babel/traverse@^7.12.11", "@babel/traverse@^7.12.9", "@babel/traverse@^7.18.10", "@babel/traverse@^7.18.11": version "7.18.11" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.18.11.tgz#3d51f2afbd83ecf9912bcbb5c4d94e3d2ddaa16f" @@ -3262,19 +3499,19 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/traverse@^7.14.0", "@babel/traverse@^7.20.10", "@babel/traverse@^7.20.12", "@babel/traverse@^7.20.7": - version "7.20.12" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.20.12.tgz#7f0f787b3a67ca4475adef1f56cb94f6abd4a4b5" - integrity sha512-MsIbFN0u+raeja38qboyF8TIT7K0BFzz/Yd/77ta4MsUsmP2RAnidIlwq7d5HFQrH/OZJecGV6B71C4zAgpoSQ== +"@babel/traverse@^7.14.0", "@babel/traverse@^7.22.15", "@babel/traverse@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.22.20.tgz#db572d9cb5c79e02d83e5618b82f6991c07584c9" + integrity sha512-eU260mPZbU7mZ0N+X10pxXhQFMGTeLb9eFS0mxehS8HZp9o1uSnFeWQuG1UPrlxgA7QoUzFhOnilHDp0AXCyHw== dependencies: - "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.20.7" - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" - "@babel/helper-hoist-variables" "^7.18.6" - "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/parser" "^7.20.7" - "@babel/types" "^7.20.7" + "@babel/code-frame" "^7.22.13" + "@babel/generator" "^7.22.15" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-function-name" "^7.22.5" + "@babel/helper-hoist-variables" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/parser" "^7.22.16" + "@babel/types" "^7.22.19" debug "^4.1.0" globals "^11.1.0" @@ -3455,7 +3692,7 @@ "@babel/helper-validator-identifier" "^7.18.6" to-fast-properties "^2.0.0" -"@babel/types@^7.19.0", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.20.7": +"@babel/types@^7.20.2", "@babel/types@^7.20.7": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.20.7.tgz#54ec75e252318423fc07fb644dc6a58a64c09b7f" integrity sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg== @@ -3473,6 +3710,15 @@ "@babel/helper-validator-identifier" "^7.19.1" to-fast-properties "^2.0.0" +"@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5": + version "7.22.19" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.19.tgz#7425343253556916e440e662bb221a93ddb75684" + integrity sha512-P7LAw/LbojPzkgp5oznjE6tQEIWbp4PkkfrZDINTro9zgBRtI324/EYsiSI7lhPbpIQ+DCeR2NNmMWANGGfZsg== + dependencies: + "@babel/helper-string-parser" "^7.22.5" + "@babel/helper-validator-identifier" "^7.22.19" + to-fast-properties "^2.0.0" + "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" @@ -5416,7 +5662,7 @@ dependencies: "@hapi/hoek" "^9.0.0" -"@sideway/formula@^3.0.0": +"@sideway/formula@^3.0.1": version "3.0.1" resolved "https://registry.yarnpkg.com/@sideway/formula/-/formula-3.0.1.tgz#80fcbcbaf7ce031e0ef2dd29b1bfc7c3f583611f" integrity sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg== @@ -6946,6 +7192,11 @@ "@webassemblyjs/wast-parser" "1.9.0" "@xtuc/long" "4.2.2" +"@xmldom/xmldom@^0.8.8": + version "0.8.10" + resolved "https://registry.yarnpkg.com/@xmldom/xmldom/-/xmldom-0.8.10.tgz#a1337ca426aa61cef9fe15b5b28e340a72f6fa99" + integrity sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw== + "@xmldom/xmldom@~0.7.0": version "0.7.5" resolved "https://registry.yarnpkg.com/@xmldom/xmldom/-/xmldom-0.7.5.tgz#09fa51e356d07d0be200642b0e4f91d8e6dd408d" @@ -8280,6 +8531,16 @@ browserslist@^4.21.3: node-releases "^2.0.6" update-browserslist-db "^1.0.5" +browserslist@^4.21.9: + version "4.21.10" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.10.tgz#dbbac576628c13d3b2231332cb2ec5a46e015bb0" + integrity sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ== + dependencies: + caniuse-lite "^1.0.30001517" + electron-to-chromium "^1.4.477" + node-releases "^2.0.13" + update-browserslist-db "^1.0.11" + bser@2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" @@ -8567,6 +8828,11 @@ caniuse-lite@^1.0.30001349: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001349.tgz#90740086a2eb2e825084944169d313c9793aeba4" integrity sha512-VFaWW3jeo6DLU5rwdiasosxhYSduJgSGil4cSyX3/85fbctlE58pXAkWyuRmVA0r2RxsOSVYUTZcySJ8WpbTxw== +caniuse-lite@^1.0.30001517: + version "1.0.30001538" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001538.tgz#9dbc6b9af1ff06b5eb12350c2012b3af56744f3f" + integrity sha512-HWJnhnID+0YMtGlzcp3T9drmBJUVDchPJ08tpUGFLs9CYlwWPH2uLgpHn8fND5pCgXVtnGS3H4QR9XLMHVNkHw== + capture-exit@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" @@ -8792,9 +9058,9 @@ cli-spinners@^2.0.0: integrity sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g== cli-spinners@^2.5.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.7.0.tgz#f815fd30b5f9eaac02db604c7a231ed7cb2f797a" - integrity sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw== + version "2.9.1" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.9.1.tgz#9c0b9dad69a6d47cbb4333c14319b060ed395a35" + integrity sha512-jHgecW0pxkonBJdrKsqxgRX9AcG+u/5k0Q7WPDfi8AogLAdwxEkyYYNWwZ5GvVFoFx2uiY1eNcSK00fh+1+FyQ== cli-table3@^0.6.1: version "0.6.2" @@ -9608,9 +9874,9 @@ date-fns@^2.29.3: "@babel/runtime" "^7.21.0" dayjs@^1.8.15: - version "1.11.7" - resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.7.tgz#4b296922642f70999544d1144a2c25730fce63e2" - integrity sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ== + version "1.11.10" + resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.10.tgz#68acea85317a6e164457d6d6947564029a6a16a0" + integrity sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ== debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.9: version "2.6.9" @@ -10166,6 +10432,11 @@ electron-to-chromium@^1.4.147: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.147.tgz#1ecf318737b21ba1e5b53319eb1edf8143892270" integrity sha512-czclPqxLMPqPMkahKcske4TaS5lcznsc26ByBlEFDU8grTBVK9C5W6K9I6oEEhm4Ai4jTihGnys90xY1yjXcRg== +electron-to-chromium@^1.4.477: + version "1.4.526" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.526.tgz#1bcda5f2b8238e497c20fcdb41af5da907a770e2" + integrity sha512-tjjTMjmZAx1g6COrintLTa2/jcafYKxKoiEkdQOrVdbLaHh2wCt2nsAF8ZHweezkrP+dl/VG9T5nabcYoo0U5Q== + element-resize-detector@^1.2.2: version "1.2.4" resolved "https://registry.yarnpkg.com/element-resize-detector/-/element-resize-detector-1.2.4.tgz#3e6c5982dd77508b5fa7e6d5c02170e26325c9b1" @@ -10294,9 +10565,9 @@ env-editor@^0.4.1: integrity sha512-ObFo8v4rQJAE59M69QzwloxPZtd33TpYEIjtKD1rrFDcM1Gd7IkDxEBU+HriziN6HSHQnBJi8Dmy+JWkav5HKA== envinfo@^7.7.2: - version "7.8.1" - resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" - integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== + version "7.10.0" + resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.10.0.tgz#55146e3909cc5fe63c22da63fb15b05aeac35b13" + integrity sha512-ZtUjZO6l5mwTHvc1L9+1q5p/R3wTopcfqMW8r5t8SJSKqeVI/LtajORwRFEKpEFuekjD0VBjwu1HMxL4UalIRw== eol@^0.9.1: version "0.9.1" @@ -11454,9 +11725,9 @@ flatted@^3.1.0: integrity sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA== flow-parser@0.*: - version "0.197.0" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.197.0.tgz#9a581ef7c0b1c3377b195cec0bbad794b88be67b" - integrity sha512-yhwkJPxH1JBg0aJunk/jVRy5p3UhVZBGkzL1hq/GK+GaBh6bKr2YKkv6gDuiufaw+i3pKWQgOLtD++1cvrgXLA== + version "0.217.0" + resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.217.0.tgz#0e6bed214151fa3240dc9fd83ac8a9e050e523c5" + integrity sha512-hEa5n0dta1RcaDwJDWbnyelw07PK7+Vx0f9kDht28JOt2hXgKdKGaT3wM45euWV2DxOXtzDSTaUgGSD/FPvC2Q== flow-parser@^0.121.0: version "0.121.0" @@ -12079,7 +12350,12 @@ graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6 resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== -graceful-fs@^4.1.3, graceful-fs@^4.2.9: +graceful-fs@^4.1.3: + version "4.2.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== + +graceful-fs@^4.2.9: version "4.2.10" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== @@ -14044,14 +14320,14 @@ jimp@^0.16.2: regenerator-runtime "^0.13.3" joi@^17.2.1: - version "17.7.0" - resolved "https://registry.yarnpkg.com/joi/-/joi-17.7.0.tgz#591a33b1fe1aca2bc27f290bcad9b9c1c570a6b3" - integrity sha512-1/ugc8djfn93rTE3WRKdCzGGt/EtiYKxITMO4Wiv6q5JL1gl9ePt4kBsl1S499nbosspfctIQTpYIhSmHA3WAg== + version "17.10.2" + resolved "https://registry.yarnpkg.com/joi/-/joi-17.10.2.tgz#4ecc348aa89ede0b48335aad172e0f5591e55b29" + integrity sha512-hcVhjBxRNW/is3nNLdGLIjkgXetkeGc2wyhydhz8KumG23Aerk4HPjU5zaPAMRqXQFc0xNqXTC7+zQjxr0GlKA== dependencies: "@hapi/hoek" "^9.0.0" "@hapi/topo" "^5.0.0" "@sideway/address" "^4.1.3" - "@sideway/formula" "^3.0.0" + "@sideway/formula" "^3.0.1" "@sideway/pinpoint" "^2.0.0" joi@^7.0.1: @@ -14235,7 +14511,7 @@ json5@^2.1.0, json5@^2.1.2, json5@^2.1.3, json5@^2.2.1: resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== -json5@^2.2.2: +json5@^2.2.2, json5@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== @@ -15619,9 +15895,9 @@ node-fetch@^1.0.1: is-stream "^1.0.1" node-fetch@^2.2.0: - version "2.6.8" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.8.tgz#a68d30b162bc1d8fd71a367e81b997e1f4d4937e" - integrity sha512-RZ6dBYuj8dRSfxpUSu+NsdF1dpPpluJxwOp+6IoDp/sH2QNDSvurYsAa+F1WxY2RjA1iP93xhcsUoYbF2XBqVg== + version "2.7.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" + integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== dependencies: whatwg-url "^5.0.0" @@ -15693,6 +15969,11 @@ node-releases@^1.1.71: resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.73.tgz#dd4e81ddd5277ff846b80b52bb40c49edf7a7b20" integrity sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg== +node-releases@^2.0.13: + version "2.0.13" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d" + integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ== + node-releases@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.5.tgz#280ed5bc3eba0d96ce44897d8aee478bfb3d9666" @@ -16588,7 +16869,16 @@ please-upgrade-node@^3.2.0: dependencies: semver-compare "^1.0.0" -plist@^3.0.2, plist@^3.0.5: +plist@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/plist/-/plist-3.1.0.tgz#797a516a93e62f5bde55e0b9cc9c967f860893c9" + integrity sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ== + dependencies: + "@xmldom/xmldom" "^0.8.8" + base64-js "^1.5.1" + xmlbuilder "^15.1.1" + +plist@^3.0.5: version "3.0.6" resolved "https://registry.yarnpkg.com/plist/-/plist-3.0.6.tgz#7cfb68a856a7834bca6dbfe3218eb9c7740145d3" integrity sha512-WiIVYyrp8TD4w8yCvyeIr+lkmrGRd5u0VbRnU+tP/aRLxP/YadJUYOMZJ/6hIa3oUyVCsycXvtNRgd5XBJIbiA== @@ -17244,9 +17534,9 @@ react-dev-utils@^11.0.3: text-table "0.2.0" react-devtools-core@^4.23.0: - version "4.27.1" - resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-4.27.1.tgz#167aa174383c65786cbb7e965a5b39c702f0a2d3" - integrity sha512-qXhcxxDWiFmFAOq48jts9YQYe1+wVoUXzJTlY4jbaATzyio6dd6CUGu3dXBhREeVgpZ+y4kg6vFJzIOZh6vY2w== + version "4.28.0" + resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-4.28.0.tgz#3fa18709b24414adddadac33b6b9cea96db60f2f" + integrity sha512-E3C3X1skWBdBzwpOUbmXG8SgH6BtsluSMe+s6rRcujNKG1DGi8uIfhdhszkgDpAsMoE55hwqRUzeXCmETDBpTg== dependencies: shell-quote "^1.6.1" ws "^7" @@ -17474,11 +17764,6 @@ react-native-katex@^0.5.1: dependencies: react-native-webview "^11.18.2" -react-native-keycommands@2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/react-native-keycommands/-/react-native-keycommands-2.0.3.tgz#09b799c1f70832e5cd9fbdb712ddaa3ee683f70e" - integrity sha512-s03K8JvCnfLhBg10Y2aRH3Bp9Uw9QOEr0uzuIj9OkgjjTB8/b+T4K5LSCxGuIAD30IxsEZvGZKjP1DzEMxaRhQ== - react-native-linear-gradient@^2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/react-native-linear-gradient/-/react-native-linear-gradient-2.6.2.tgz#56598a76832724b2afa7889747635b5c80948f38" @@ -17706,9 +17991,9 @@ react-native-webview@11.26.1, react-native-webview@^11.18.2: escape-string-regexp "2.0.0" invariant "2.2.4" -react-native@RocketChat/react-native#51266d5ab8b4c3f04c0e8f207ea5db6056647104: - version "0.68.6" - resolved "https://codeload.github.com/RocketChat/react-native/tar.gz/51266d5ab8b4c3f04c0e8f207ea5db6056647104" +react-native@RocketChat/react-native#6cf729c196f0f043ac6e7444e73f5a560d7a8a8a: + version "0.68.7" + resolved "https://codeload.github.com/RocketChat/react-native/tar.gz/6cf729c196f0f043ac6e7444e73f5a560d7a8a8a" dependencies: "@jest/create-cache-key-function" "^27.0.1" "@react-native-community/cli" "^7.0.3" @@ -17928,7 +18213,7 @@ read-pkg@^5.2.0: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.0.2, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: +readable-stream@^3.0.2, readable-stream@^3.1.1, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -17937,6 +18222,15 @@ readable-stream@^3.0.2, readable-stream@^3.1.1, readable-stream@^3.4.0, readable string_decoder "^1.1.1" util-deprecate "^1.0.1" +readable-stream@^3.4.0: + version "3.6.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + readdirp@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" @@ -18635,6 +18929,11 @@ semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== +semver@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== + semver@^7.0.0, semver@^7.3.8: version "7.3.8" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" @@ -18815,7 +19114,12 @@ shell-quote@1.7.2: resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.2.tgz#67a7d02c76c9da24f99d20808fcaded0e0e04be2" integrity sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg== -shell-quote@^1.6.1, shell-quote@^1.7.2, shell-quote@^1.7.3: +shell-quote@^1.6.1, shell-quote@^1.7.3: + version "1.8.1" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.1.tgz#6dbf4db75515ad5bac63b4f1894c3a154c766680" + integrity sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA== + +shell-quote@^1.7.2: version "1.7.4" resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.4.tgz#33fe15dee71ab2a81fcbd3a52106c5cfb9fb75d8" integrity sha512-8o/QEhSSRb1a5i7TFR0iM4G16Z0vYB2OQVs4G3aAFXjn3T6yEx8AZxy1PgDF7I00LZHYA3WxaSYIf5e5sAX8Rw== @@ -20517,6 +20821,14 @@ upath@^1.1.1: resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== +update-browserslist-db@^1.0.11: + version "1.0.13" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" + integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== + dependencies: + escalade "^3.1.1" + picocolors "^1.0.0" + update-browserslist-db@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz#be06a5eedd62f107b7c19eb5bcefb194411abf38" @@ -20937,9 +21249,9 @@ whatwg-fetch@>=0.10.0: integrity sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q== whatwg-fetch@^3.0.0: - version "3.6.2" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz#dced24f37f2624ed0281725d51d0e2e3fe677f8c" - integrity sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA== + version "3.6.19" + resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.19.tgz#caefd92ae630b91c07345537e67f8354db470973" + integrity sha512-d67JP4dHSbm2TrpFj8AbO8DnL1JXL5J9u0Kq2xW6d0TFDbCA3Muhdt8orXC22utleTVj7Prqt82baN6RBvnEgw== whatwg-url-without-unicode@8.0.0-3: version "8.0.0-3" @@ -20970,9 +21282,9 @@ which-boxed-primitive@^1.0.2: is-symbol "^1.0.3" which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q== + version "2.0.1" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409" + integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ== which-typed-array@^1.1.2: version "1.1.8" @@ -21185,9 +21497,9 @@ xmlbuilder@~11.0.0: integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== xmldoc@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/xmldoc/-/xmldoc-1.2.0.tgz#7554371bfd8c138287cff01841ae4566d26e5541" - integrity sha512-2eN8QhjBsMW2uVj7JHLHkMytpvGHLHxKXBy4J3fAT/HujsEtM6yU84iGjpESYGHg6XwK0Vu4l+KgqQ2dv2cCqg== + version "1.3.0" + resolved "https://registry.yarnpkg.com/xmldoc/-/xmldoc-1.3.0.tgz#7823225b096c74036347c9ec5924d06b6a3cebab" + integrity sha512-y7IRWW6PvEnYQZNZFMRLNJw+p3pezM4nKYPfr15g4OOW9i8VpeydycFuipE2297OvZnh3jSb2pxOt9QpkZUVng== dependencies: sax "^1.2.4"