forked from Ivasoft/mattermost-mobile
release-2.6 #4
@@ -110,8 +110,8 @@ android {
|
|||||||
applicationId "com.mattermost.rnbeta"
|
applicationId "com.mattermost.rnbeta"
|
||||||
minSdkVersion rootProject.ext.minSdkVersion
|
minSdkVersion rootProject.ext.minSdkVersion
|
||||||
targetSdkVersion rootProject.ext.targetSdkVersion
|
targetSdkVersion rootProject.ext.targetSdkVersion
|
||||||
versionCode 476
|
versionCode 479
|
||||||
versionName "2.5.1"
|
versionName "2.6.0"
|
||||||
testBuildType System.getProperty('testBuildType', 'debug')
|
testBuildType System.getProperty('testBuildType', 'debug')
|
||||||
testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
|
testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ public class Network {
|
|||||||
private static final Promise emptyPromise = new ResolvePromise();
|
private static final Promise emptyPromise = new ResolvePromise();
|
||||||
|
|
||||||
public static void init(Context context) {
|
public static void init(Context context) {
|
||||||
final ReactApplicationContext reactContext = new ReactApplicationContext(context);
|
final ReactApplicationContext reactContext = (APIClientModule.context == null) ? new ReactApplicationContext(context) : APIClientModule.context;
|
||||||
clientModule = new APIClientModule(reactContext);
|
clientModule = new APIClientModule(reactContext);
|
||||||
createClientOptions();
|
createClientOptions();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -221,6 +221,11 @@ public class MattermostManagedModule extends ReactContextBaseJavaModule {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ReactMethod
|
||||||
|
public void invalidateKeychainCache(String serverUrl) {
|
||||||
|
// Not using cache
|
||||||
|
}
|
||||||
|
|
||||||
private static class SaveDataTask extends GuardedResultAsyncTask<Object> {
|
private static class SaveDataTask extends GuardedResultAsyncTask<Object> {
|
||||||
private final WeakReference<Context> weakContext;
|
private final WeakReference<Context> weakContext;
|
||||||
private final String fromFile;
|
private final String fromFile;
|
||||||
|
|||||||
@@ -180,6 +180,13 @@ export const backgroundNotification = async (serverUrl: string, notification: No
|
|||||||
};
|
};
|
||||||
|
|
||||||
export const openNotification = async (serverUrl: string, notification: NotificationWithData) => {
|
export const openNotification = async (serverUrl: string, notification: NotificationWithData) => {
|
||||||
|
// Wait for initial launch to kick in if needed
|
||||||
|
await new Promise((r) => setTimeout(r, 500));
|
||||||
|
|
||||||
|
if (EphemeralStore.getProcessingNotification() === notification.identifier) {
|
||||||
|
return {};
|
||||||
|
}
|
||||||
|
|
||||||
EphemeralStore.setNotificationTapped(true);
|
EphemeralStore.setNotificationTapped(true);
|
||||||
|
|
||||||
const channelId = notification.payload!.channel_id!;
|
const channelId = notification.payload!.channel_id!;
|
||||||
|
|||||||
@@ -13,13 +13,13 @@ import {useTheme} from '@context/theme';
|
|||||||
import {nonBreakingString} from '@utils/strings';
|
import {nonBreakingString} from '@utils/strings';
|
||||||
import {makeStyleSheetFromTheme, changeOpacity} from '@utils/theme';
|
import {makeStyleSheetFromTheme, changeOpacity} from '@utils/theme';
|
||||||
import {typography} from '@utils/typography';
|
import {typography} from '@utils/typography';
|
||||||
import {displayUsername, getUserCustomStatus, isBot, isCustomStatusExpired, isGuest, isShared} from '@utils/user';
|
import {displayUsername, getUserCustomStatus, isBot, isCustomStatusExpired, isDeactivated, isGuest, isShared} from '@utils/user';
|
||||||
|
|
||||||
import type UserModel from '@typings/database/models/servers/user';
|
import type UserModel from '@typings/database/models/servers/user';
|
||||||
|
|
||||||
type AtMentionItemProps = {
|
type AtMentionItemProps = {
|
||||||
FooterComponent?: ReactNode;
|
FooterComponent?: ReactNode;
|
||||||
user: UserProfile | UserModel;
|
user?: UserProfile | UserModel;
|
||||||
containerStyle?: StyleProp<ViewStyle>;
|
containerStyle?: StyleProp<ViewStyle>;
|
||||||
currentUserId: string;
|
currentUserId: string;
|
||||||
includeMargin?: boolean;
|
includeMargin?: boolean;
|
||||||
@@ -115,13 +115,12 @@ const UserItem = ({
|
|||||||
const bot = user ? isBot(user) : false;
|
const bot = user ? isBot(user) : false;
|
||||||
const guest = user ? isGuest(user.roles) : false;
|
const guest = user ? isGuest(user.roles) : false;
|
||||||
const shared = user ? isShared(user) : false;
|
const shared = user ? isShared(user) : false;
|
||||||
|
const deactivated = user ? isDeactivated(user) : false;
|
||||||
|
|
||||||
const isCurrentUser = currentUserId === user?.id;
|
const isCurrentUser = currentUserId === user?.id;
|
||||||
const customStatus = getUserCustomStatus(user);
|
const customStatus = getUserCustomStatus(user);
|
||||||
const customStatusExpired = isCustomStatusExpired(user);
|
const customStatusExpired = isCustomStatusExpired(user);
|
||||||
|
|
||||||
const deleteAt = 'deleteAt' in user ? user.deleteAt : user.delete_at;
|
|
||||||
|
|
||||||
let displayName = displayUsername(user, locale, teammateNameDisplay);
|
let displayName = displayUsername(user, locale, teammateNameDisplay);
|
||||||
const showTeammateDisplay = displayName !== user?.username;
|
const showTeammateDisplay = displayName !== user?.username;
|
||||||
if (isCurrentUser) {
|
if (isCurrentUser) {
|
||||||
@@ -142,11 +141,15 @@ const UserItem = ({
|
|||||||
}, [disabled, padding, includeMargin]);
|
}, [disabled, padding, includeMargin]);
|
||||||
|
|
||||||
const onPress = useCallback(() => {
|
const onPress = useCallback(() => {
|
||||||
onUserPress?.(user);
|
if (user) {
|
||||||
|
onUserPress?.(user);
|
||||||
|
}
|
||||||
}, [user, onUserPress]);
|
}, [user, onUserPress]);
|
||||||
|
|
||||||
const onLongPress = useCallback(() => {
|
const onLongPress = useCallback(() => {
|
||||||
onUserLongPress?.(user);
|
if (user) {
|
||||||
|
onUserLongPress?.(user);
|
||||||
|
}
|
||||||
}, [user, onUserLongPress]);
|
}, [user, onUserLongPress]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@@ -175,15 +178,15 @@ const UserItem = ({
|
|||||||
testID={`${userItemTestId}.display_name`}
|
testID={`${userItemTestId}.display_name`}
|
||||||
>
|
>
|
||||||
{nonBreakingString(displayName)}
|
{nonBreakingString(displayName)}
|
||||||
{Boolean(showTeammateDisplay) && (
|
{Boolean(showTeammateDisplay) && Boolean(user?.username) && (
|
||||||
<Text
|
<Text
|
||||||
style={style.rowUsername}
|
style={style.rowUsername}
|
||||||
testID={`${userItemTestId}.username`}
|
testID={`${userItemTestId}.username`}
|
||||||
>
|
>
|
||||||
{nonBreakingString(` @${user!.username}`)}
|
{nonBreakingString(` @${user?.username}`)}
|
||||||
</Text>
|
</Text>
|
||||||
)}
|
)}
|
||||||
{Boolean(deleteAt) && (
|
{deactivated && (
|
||||||
<Text
|
<Text
|
||||||
style={style.rowUsername}
|
style={style.rowUsername}
|
||||||
testID={`${userItemTestId}.deactivated`}
|
testID={`${userItemTestId}.deactivated`}
|
||||||
|
|||||||
@@ -12,8 +12,17 @@ import SessionManager from '@managers/session_manager';
|
|||||||
import WebsocketManager from '@managers/websocket_manager';
|
import WebsocketManager from '@managers/websocket_manager';
|
||||||
import {registerScreens} from '@screens/index';
|
import {registerScreens} from '@screens/index';
|
||||||
import {registerNavigationListeners} from '@screens/navigation';
|
import {registerNavigationListeners} from '@screens/navigation';
|
||||||
|
import EphemeralStore from '@store/ephemeral_store';
|
||||||
|
import NavigationStore from '@store/navigation_store';
|
||||||
|
|
||||||
|
// Controls whether the main initialization (database, etc...) is done, either on app launch
|
||||||
|
// or on the Share Extension, for example.
|
||||||
|
let baseAppInitialized = false;
|
||||||
|
|
||||||
|
// Controls whether the app initialization (websockets, screen listeners, etc...) is done, mainly
|
||||||
|
// on app launch
|
||||||
|
let mainAppInitialized = false;
|
||||||
|
|
||||||
let alreadyInitialized = false;
|
|
||||||
let serverCredentials: ServerCredential[];
|
let serverCredentials: ServerCredential[];
|
||||||
|
|
||||||
// Fallback Polyfill for Promise.allSettle
|
// Fallback Polyfill for Promise.allSettle
|
||||||
@@ -31,8 +40,8 @@ Promise.allSettled = Promise.allSettled || (<T>(promises: Array<Promise<T>>) =>
|
|||||||
));
|
));
|
||||||
|
|
||||||
export async function initialize() {
|
export async function initialize() {
|
||||||
if (!alreadyInitialized) {
|
if (!baseAppInitialized) {
|
||||||
alreadyInitialized = true;
|
baseAppInitialized = true;
|
||||||
serverCredentials = await getAllServerCredentials();
|
serverCredentials = await getAllServerCredentials();
|
||||||
const serverUrls = serverCredentials.map((credential) => credential.serverUrl);
|
const serverUrls = serverCredentials.map((credential) => credential.serverUrl);
|
||||||
|
|
||||||
@@ -46,12 +55,25 @@ export async function initialize() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export async function start() {
|
export async function start() {
|
||||||
|
if (baseAppInitialized) {
|
||||||
|
// Clean relevant information on ephemeral stores
|
||||||
|
NavigationStore.reset();
|
||||||
|
EphemeralStore.setCurrentThreadId('');
|
||||||
|
EphemeralStore.setProcessingNotification('');
|
||||||
|
}
|
||||||
|
|
||||||
await initialize();
|
await initialize();
|
||||||
|
|
||||||
PushNotifications.init(serverCredentials.length > 0);
|
if (!mainAppInitialized) {
|
||||||
|
mainAppInitialized = true;
|
||||||
|
|
||||||
|
PushNotifications.init(serverCredentials.length > 0);
|
||||||
|
|
||||||
|
registerNavigationListeners();
|
||||||
|
registerScreens();
|
||||||
|
|
||||||
|
await WebsocketManager.init(serverCredentials);
|
||||||
|
}
|
||||||
|
|
||||||
registerNavigationListeners();
|
|
||||||
registerScreens();
|
|
||||||
await WebsocketManager.init(serverCredentials);
|
|
||||||
initialLaunch();
|
initialLaunch();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,7 +42,9 @@ export const initialLaunch = async () => {
|
|||||||
tapped = delivered.find((d) => (d as unknown as NotificationData).ack_id === notification?.payload.ack_id) == null;
|
tapped = delivered.find((d) => (d as unknown as NotificationData).ack_id === notification?.payload.ack_id) == null;
|
||||||
}
|
}
|
||||||
if (initialNotificationTypes.includes(notification?.payload?.type) && tapped) {
|
if (initialNotificationTypes.includes(notification?.payload?.type) && tapped) {
|
||||||
return launchAppFromNotification(convertToNotificationData(notification!), true);
|
const notificationData = convertToNotificationData(notification!);
|
||||||
|
EphemeralStore.setProcessingNotification(notificationData.identifier);
|
||||||
|
return launchAppFromNotification(notificationData, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
const coldStart = notification ? (tapped || AppState.currentState === 'active') : true;
|
const coldStart = notification ? (tapped || AppState.currentState === 'active') : true;
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ import {getThemeFromState} from '@screens/navigation';
|
|||||||
import EphemeralStore from '@store/ephemeral_store';
|
import EphemeralStore from '@store/ephemeral_store';
|
||||||
import {deleteFileCache, deleteFileCacheByDir} from '@utils/file';
|
import {deleteFileCache, deleteFileCacheByDir} from '@utils/file';
|
||||||
import {isMainActivity} from '@utils/helpers';
|
import {isMainActivity} from '@utils/helpers';
|
||||||
|
import {invalidateKeychainCache} from '@utils/mattermost_managed';
|
||||||
import {addNewServer} from '@utils/server';
|
import {addNewServer} from '@utils/server';
|
||||||
|
|
||||||
import type {LaunchType} from '@typings/launch';
|
import type {LaunchType} from '@typings/launch';
|
||||||
@@ -115,6 +116,7 @@ class SessionManager {
|
|||||||
private terminateSession = async (serverUrl: string, removeServer: boolean) => {
|
private terminateSession = async (serverUrl: string, removeServer: boolean) => {
|
||||||
cancelSessionNotification(serverUrl);
|
cancelSessionNotification(serverUrl);
|
||||||
await removeServerCredentials(serverUrl);
|
await removeServerCredentials(serverUrl);
|
||||||
|
invalidateKeychainCache(serverUrl);
|
||||||
PushNotifications.removeServerNotifications(serverUrl);
|
PushNotifications.removeServerNotifications(serverUrl);
|
||||||
|
|
||||||
NetworkManager.invalidateClient(serverUrl);
|
NetworkManager.invalidateClient(serverUrl);
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ import {NOT_READY} from '@constants/screens';
|
|||||||
import {getDefaultThemeByAppearance} from '@context/theme';
|
import {getDefaultThemeByAppearance} from '@context/theme';
|
||||||
import EphemeralStore from '@store/ephemeral_store';
|
import EphemeralStore from '@store/ephemeral_store';
|
||||||
import NavigationStore from '@store/navigation_store';
|
import NavigationStore from '@store/navigation_store';
|
||||||
|
import {logError} from '@utils/log';
|
||||||
import {appearanceControlledScreens, mergeNavigationOptions} from '@utils/navigation';
|
import {appearanceControlledScreens, mergeNavigationOptions} from '@utils/navigation';
|
||||||
import {changeOpacity, setNavigatorStyles} from '@utils/theme';
|
import {changeOpacity, setNavigatorStyles} from '@utils/theme';
|
||||||
|
|
||||||
@@ -449,6 +450,11 @@ export function goToScreen(name: AvailableScreens, title: string, passProps = {}
|
|||||||
const theme = getThemeFromState();
|
const theme = getThemeFromState();
|
||||||
const isDark = tinyColor(theme.sidebarBg).isDark();
|
const isDark = tinyColor(theme.sidebarBg).isDark();
|
||||||
const componentId = NavigationStore.getVisibleScreen();
|
const componentId = NavigationStore.getVisibleScreen();
|
||||||
|
if (!componentId) {
|
||||||
|
logError('Trying to go to screen without any screen on the navigation store');
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
|
||||||
const defaultOptions: Options = {
|
const defaultOptions: Options = {
|
||||||
layout: {
|
layout: {
|
||||||
componentBackgroundColor: theme.centerChannelBg,
|
componentBackgroundColor: theme.centerChannelBg,
|
||||||
|
|||||||
@@ -1,26 +1,31 @@
|
|||||||
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
||||||
// See LICENSE.txt for license information.
|
// See LICENSE.txt for license information.
|
||||||
|
|
||||||
import React from 'react';
|
import React, {useEffect} from 'react';
|
||||||
import {useIntl} from 'react-intl';
|
import {useIntl} from 'react-intl';
|
||||||
import {Keyboard} from 'react-native';
|
import {Keyboard} from 'react-native';
|
||||||
|
|
||||||
|
import {fetchUsersByIds} from '@actions/remote/user';
|
||||||
import UserItem from '@components/user_item';
|
import UserItem from '@components/user_item';
|
||||||
import {Screens} from '@constants';
|
import {Screens} from '@constants';
|
||||||
|
import {useServerUrl} from '@context/server';
|
||||||
import {useTheme} from '@context/theme';
|
import {useTheme} from '@context/theme';
|
||||||
import {dismissBottomSheet, openAsBottomSheet} from '@screens/navigation';
|
import {dismissBottomSheet, openAsBottomSheet} from '@screens/navigation';
|
||||||
|
|
||||||
|
import type ReactionModel from '@typings/database/models/servers/reaction';
|
||||||
import type UserModel from '@typings/database/models/servers/user';
|
import type UserModel from '@typings/database/models/servers/user';
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
channelId: string;
|
channelId: string;
|
||||||
location: string;
|
location: string;
|
||||||
user: UserModel;
|
reaction: ReactionModel;
|
||||||
|
user?: UserModel;
|
||||||
}
|
}
|
||||||
|
|
||||||
const Reactor = ({channelId, location, user}: Props) => {
|
const Reactor = ({channelId, location, reaction, user}: Props) => {
|
||||||
const intl = useIntl();
|
const intl = useIntl();
|
||||||
const theme = useTheme();
|
const theme = useTheme();
|
||||||
|
const serverUrl = useServerUrl();
|
||||||
const openUserProfile = async () => {
|
const openUserProfile = async () => {
|
||||||
if (user) {
|
if (user) {
|
||||||
await dismissBottomSheet(Screens.REACTIONS);
|
await dismissBottomSheet(Screens.REACTIONS);
|
||||||
@@ -34,6 +39,12 @@ const Reactor = ({channelId, location, user}: Props) => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (!user) {
|
||||||
|
fetchUsersByIds(serverUrl, [reaction.userId]);
|
||||||
|
}
|
||||||
|
}, []);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<UserItem
|
<UserItem
|
||||||
user={user}
|
user={user}
|
||||||
|
|||||||
@@ -38,6 +38,16 @@ class EphemeralStore {
|
|||||||
private notificationTapped = false;
|
private notificationTapped = false;
|
||||||
private enablingCRT = false;
|
private enablingCRT = false;
|
||||||
|
|
||||||
|
// There are some corner cases where the react context is not loaded (and therefore
|
||||||
|
// launch will be called) but the notification callbacks are registered. This is used
|
||||||
|
// so the notification is processed only once (preferably on launch).
|
||||||
|
private processingNotification = '';
|
||||||
|
|
||||||
|
setProcessingNotification = (v: string) => {
|
||||||
|
this.processingNotification = v;
|
||||||
|
};
|
||||||
|
getProcessingNotification = () => this.processingNotification;
|
||||||
|
|
||||||
addLoadingMessagesForChannel = (serverUrl: string, channelId: string) => {
|
addLoadingMessagesForChannel = (serverUrl: string, channelId: string) => {
|
||||||
if (!this.loadingMessagesForChannel[serverUrl]) {
|
if (!this.loadingMessagesForChannel[serverUrl]) {
|
||||||
this.loadingMessagesForChannel[serverUrl] = new Set();
|
this.loadingMessagesForChannel[serverUrl] = new Set();
|
||||||
|
|||||||
@@ -9,6 +9,13 @@ class NavigationStore {
|
|||||||
private visibleTab = 'Home';
|
private visibleTab = 'Home';
|
||||||
private tosOpen = false;
|
private tosOpen = false;
|
||||||
|
|
||||||
|
reset = () => {
|
||||||
|
this.screensInStack = [];
|
||||||
|
this.modalsInStack = [];
|
||||||
|
this.visibleTab = 'Home';
|
||||||
|
this.tosOpen = false;
|
||||||
|
};
|
||||||
|
|
||||||
addModalToStack = (modalId: AvailableScreens) => {
|
addModalToStack = (modalId: AvailableScreens) => {
|
||||||
this.removeModalFromStack(modalId);
|
this.removeModalFromStack(modalId);
|
||||||
this.addScreenToStack(modalId);
|
this.addScreenToStack(modalId);
|
||||||
|
|||||||
@@ -64,3 +64,7 @@ export const deleteEntititesFile = (callback?: (success: boolean) => void) => {
|
|||||||
callback(true);
|
callback(true);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export const invalidateKeychainCache = (serverUrl: string) => {
|
||||||
|
MattermostManaged.invalidateKeychainCache(serverUrl);
|
||||||
|
};
|
||||||
|
|||||||
@@ -234,6 +234,10 @@ export function isShared(user: UserProfile | UserModel): boolean {
|
|||||||
return ('remoteId' in user) ? Boolean(user.remoteId) : Boolean(user.remote_id);
|
return ('remoteId' in user) ? Boolean(user.remoteId) : Boolean(user.remote_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function isDeactivated(user: UserProfile | UserModel): boolean {
|
||||||
|
return Boolean('deleteAt' in user ? user.deleteAt : user.delete_at);
|
||||||
|
}
|
||||||
|
|
||||||
export function removeUserFromList(userId: string, originalList: UserProfile[]): UserProfile[] {
|
export function removeUserFromList(userId: string, originalList: UserProfile[]): UserProfile[] {
|
||||||
const list = [...originalList];
|
const list = [...originalList];
|
||||||
for (let i = list.length - 1; i >= 0; i--) {
|
for (let i = list.length - 1; i >= 0; i--) {
|
||||||
|
|||||||
3
index.ts
3
index.ts
@@ -8,7 +8,7 @@ import {RUNNING_E2E} from 'react-native-dotenv';
|
|||||||
import 'react-native-gesture-handler';
|
import 'react-native-gesture-handler';
|
||||||
import {Navigation} from 'react-native-navigation';
|
import {Navigation} from 'react-native-navigation';
|
||||||
|
|
||||||
import {initialize, start} from './app/init/app';
|
import {start} from './app/init/app';
|
||||||
import setFontFamily from './app/utils/font_family';
|
import setFontFamily from './app/utils/font_family';
|
||||||
import {logInfo} from './app/utils/log';
|
import {logInfo} from './app/utils/log';
|
||||||
|
|
||||||
@@ -59,6 +59,5 @@ if (Platform.OS === 'android') {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Navigation.events().registerAppLaunchedListener(async () => {
|
Navigation.events().registerAppLaunchedListener(async () => {
|
||||||
await initialize();
|
|
||||||
start();
|
start();
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -100,6 +100,10 @@ public class Keychain: NSObject {
|
|||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public func invalidateToken(for serverUrl: String) {
|
||||||
|
tokenCache.removeValue(forKey: serverUrl)
|
||||||
|
}
|
||||||
|
|
||||||
private func buildIdentityQuery(for host: String) throws -> [CFString: Any] {
|
private func buildIdentityQuery(for host: String) throws -> [CFString: Any] {
|
||||||
guard let hostData = host.data(using: .utf8) else {
|
guard let hostData = host.data(using: .utf8) else {
|
||||||
|
|||||||
@@ -42,4 +42,8 @@ import Gekidou
|
|||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@objc func invalidateToken(for url: String) {
|
||||||
|
Keychain.default.invalidateToken(for: url)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1923,7 +1923,7 @@
|
|||||||
CODE_SIGN_ENTITLEMENTS = Mattermost/Mattermost.entitlements;
|
CODE_SIGN_ENTITLEMENTS = Mattermost/Mattermost.entitlements;
|
||||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||||
CURRENT_PROJECT_VERSION = 476;
|
CURRENT_PROJECT_VERSION = 479;
|
||||||
DEVELOPMENT_TEAM = UQ8HT4Q2XM;
|
DEVELOPMENT_TEAM = UQ8HT4Q2XM;
|
||||||
ENABLE_BITCODE = NO;
|
ENABLE_BITCODE = NO;
|
||||||
HEADER_SEARCH_PATHS = (
|
HEADER_SEARCH_PATHS = (
|
||||||
@@ -1967,7 +1967,7 @@
|
|||||||
CODE_SIGN_ENTITLEMENTS = Mattermost/Mattermost.entitlements;
|
CODE_SIGN_ENTITLEMENTS = Mattermost/Mattermost.entitlements;
|
||||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||||
CURRENT_PROJECT_VERSION = 476;
|
CURRENT_PROJECT_VERSION = 479;
|
||||||
DEVELOPMENT_TEAM = UQ8HT4Q2XM;
|
DEVELOPMENT_TEAM = UQ8HT4Q2XM;
|
||||||
ENABLE_BITCODE = NO;
|
ENABLE_BITCODE = NO;
|
||||||
HEADER_SEARCH_PATHS = (
|
HEADER_SEARCH_PATHS = (
|
||||||
@@ -2110,7 +2110,7 @@
|
|||||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
CURRENT_PROJECT_VERSION = 476;
|
CURRENT_PROJECT_VERSION = 479;
|
||||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||||
DEVELOPMENT_TEAM = UQ8HT4Q2XM;
|
DEVELOPMENT_TEAM = UQ8HT4Q2XM;
|
||||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||||
@@ -2159,7 +2159,7 @@
|
|||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
COPY_PHASE_STRIP = NO;
|
COPY_PHASE_STRIP = NO;
|
||||||
CURRENT_PROJECT_VERSION = 476;
|
CURRENT_PROJECT_VERSION = 479;
|
||||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||||
DEVELOPMENT_TEAM = UQ8HT4Q2XM;
|
DEVELOPMENT_TEAM = UQ8HT4Q2XM;
|
||||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>APPL</string>
|
<string>APPL</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>2.5.1</string>
|
<string>2.6.0</string>
|
||||||
<key>CFBundleSignature</key>
|
<key>CFBundleSignature</key>
|
||||||
<string>????</string>
|
<string>????</string>
|
||||||
<key>CFBundleURLTypes</key>
|
<key>CFBundleURLTypes</key>
|
||||||
@@ -37,7 +37,7 @@
|
|||||||
</dict>
|
</dict>
|
||||||
</array>
|
</array>
|
||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>476</string>
|
<string>479</string>
|
||||||
<key>ITSAppUsesNonExemptEncryption</key>
|
<key>ITSAppUsesNonExemptEncryption</key>
|
||||||
<false/>
|
<false/>
|
||||||
<key>LSRequiresIPhoneOS</key>
|
<key>LSRequiresIPhoneOS</key>
|
||||||
|
|||||||
@@ -153,6 +153,10 @@ RCT_EXPORT_METHOD(removeListeners:(double)count) {
|
|||||||
// Keep: Required for RN built in Event Emitter Calls.
|
// Keep: Required for RN built in Event Emitter Calls.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
RCT_EXPORT_METHOD(invalidateKeychainCache:(NSString *) serverUrl)
|
||||||
|
{
|
||||||
|
[[GekidouWrapper default] invalidateTokenFor:serverUrl];
|
||||||
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(createThumbnail:(NSDictionary *)config findEventsWithResolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
|
RCT_EXPORT_METHOD(createThumbnail:(NSDictionary *)config findEventsWithResolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -19,9 +19,9 @@
|
|||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>XPC!</string>
|
<string>XPC!</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>2.5.1</string>
|
<string>2.6.0</string>
|
||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>476</string>
|
<string>479</string>
|
||||||
<key>UIAppFonts</key>
|
<key>UIAppFonts</key>
|
||||||
<array>
|
<array>
|
||||||
<string>OpenSans-Bold.ttf</string>
|
<string>OpenSans-Bold.ttf</string>
|
||||||
|
|||||||
@@ -19,9 +19,9 @@
|
|||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>XPC!</string>
|
<string>XPC!</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>2.5.1</string>
|
<string>2.6.0</string>
|
||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>476</string>
|
<string>479</string>
|
||||||
<key>NSExtension</key>
|
<key>NSExtension</key>
|
||||||
<dict>
|
<dict>
|
||||||
<key>NSExtensionPointIdentifier</key>
|
<key>NSExtensionPointIdentifier</key>
|
||||||
|
|||||||
143
package-lock.json
generated
143
package-lock.json
generated
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "mattermost-mobile",
|
"name": "mattermost-mobile",
|
||||||
"version": "2.5.1",
|
"version": "2.6.0",
|
||||||
"lockfileVersion": 2,
|
"lockfileVersion": 2,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
@@ -22261,7 +22261,8 @@
|
|||||||
"version": "7.21.0-placeholder-for-preset-env.2",
|
"version": "7.21.0-placeholder-for-preset-env.2",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz",
|
||||||
"integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==",
|
"integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@babel/plugin-proposal-unicode-property-regex": {
|
"@babel/plugin-proposal-unicode-property-regex": {
|
||||||
"version": "7.18.6",
|
"version": "7.18.6",
|
||||||
@@ -24098,7 +24099,8 @@
|
|||||||
"version": "1.3.5",
|
"version": "1.3.5",
|
||||||
"resolved": "https://registry.npmjs.org/@mattermost/react-native-emm/-/react-native-emm-1.3.5.tgz",
|
"resolved": "https://registry.npmjs.org/@mattermost/react-native-emm/-/react-native-emm-1.3.5.tgz",
|
||||||
"integrity": "sha512-REdUEsm/RA6lI1Rt4b009jvWn28f7H+e27gd4hlNk6zesIh/dlfiHwYfInW/vwbNFBdSPpvHy7Qi2mdcvrNqhg==",
|
"integrity": "sha512-REdUEsm/RA6lI1Rt4b009jvWn28f7H+e27gd4hlNk6zesIh/dlfiHwYfInW/vwbNFBdSPpvHy7Qi2mdcvrNqhg==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@mattermost/react-native-network-client": {
|
"@mattermost/react-native-network-client": {
|
||||||
"version": "1.3.4",
|
"version": "1.3.4",
|
||||||
@@ -24144,7 +24146,8 @@
|
|||||||
"version": "0.2.3",
|
"version": "0.2.3",
|
||||||
"resolved": "https://registry.npmjs.org/@mattermost/react-native-turbo-log/-/react-native-turbo-log-0.2.3.tgz",
|
"resolved": "https://registry.npmjs.org/@mattermost/react-native-turbo-log/-/react-native-turbo-log-0.2.3.tgz",
|
||||||
"integrity": "sha512-usWyD8zVAHzrYqgPH1ne5I14gCOkhS2mefK58g5v4DewZfCm0/Uc0w8MRuPS/9jyOPPq1rUZj8U1AqKgEne9tQ==",
|
"integrity": "sha512-usWyD8zVAHzrYqgPH1ne5I14gCOkhS2mefK58g5v4DewZfCm0/Uc0w8MRuPS/9jyOPPq1rUZj8U1AqKgEne9tQ==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@msgpack/msgpack": {
|
"@msgpack/msgpack": {
|
||||||
"version": "2.8.0",
|
"version": "2.8.0",
|
||||||
@@ -24240,13 +24243,15 @@
|
|||||||
"version": "5.6.0",
|
"version": "5.6.0",
|
||||||
"resolved": "https://registry.npmjs.org/@react-native-camera-roll/camera-roll/-/camera-roll-5.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/@react-native-camera-roll/camera-roll/-/camera-roll-5.6.0.tgz",
|
||||||
"integrity": "sha512-a/GYwnBTxj1yKWB9m/qy8GzjowSocML8NbLT81wdMh0JzZYXCLze51BR2cb8JNDgRPzA9xe7KpD3j9qQOSOjag==",
|
"integrity": "sha512-a/GYwnBTxj1yKWB9m/qy8GzjowSocML8NbLT81wdMh0JzZYXCLze51BR2cb8JNDgRPzA9xe7KpD3j9qQOSOjag==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@react-native-clipboard/clipboard": {
|
"@react-native-clipboard/clipboard": {
|
||||||
"version": "1.11.2",
|
"version": "1.11.2",
|
||||||
"resolved": "https://registry.npmjs.org/@react-native-clipboard/clipboard/-/clipboard-1.11.2.tgz",
|
"resolved": "https://registry.npmjs.org/@react-native-clipboard/clipboard/-/clipboard-1.11.2.tgz",
|
||||||
"integrity": "sha512-bHyZVW62TuleiZsXNHS1Pv16fWc0fh8O9WvBzl4h2fykqZRW9a+Pv/RGTH56E3X2PqzHP38K5go8zmCZUoIsoQ==",
|
"integrity": "sha512-bHyZVW62TuleiZsXNHS1Pv16fWc0fh8O9WvBzl4h2fykqZRW9a+Pv/RGTH56E3X2PqzHP38K5go8zmCZUoIsoQ==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@react-native-community/cli": {
|
"@react-native-community/cli": {
|
||||||
"version": "10.2.4",
|
"version": "10.2.4",
|
||||||
@@ -25403,7 +25408,8 @@
|
|||||||
"version": "9.3.10",
|
"version": "9.3.10",
|
||||||
"resolved": "https://registry.npmjs.org/@react-native-community/netinfo/-/netinfo-9.3.10.tgz",
|
"resolved": "https://registry.npmjs.org/@react-native-community/netinfo/-/netinfo-9.3.10.tgz",
|
||||||
"integrity": "sha512-OwnqoJUp/4sa9e3ju+wQavAa8l0fiA3DheeLMKzKxtKeAe0CA7bNxWRM752JvRQ6A/igPnt1V0zSlu5owvQEuA==",
|
"integrity": "sha512-OwnqoJUp/4sa9e3ju+wQavAa8l0fiA3DheeLMKzKxtKeAe0CA7bNxWRM752JvRQ6A/igPnt1V0zSlu5owvQEuA==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@react-native-cookies/cookies": {
|
"@react-native-cookies/cookies": {
|
||||||
"version": "6.2.1",
|
"version": "6.2.1",
|
||||||
@@ -25479,7 +25485,8 @@
|
|||||||
"version": "1.3.17",
|
"version": "1.3.17",
|
||||||
"resolved": "https://registry.npmjs.org/@react-navigation/elements/-/elements-1.3.17.tgz",
|
"resolved": "https://registry.npmjs.org/@react-navigation/elements/-/elements-1.3.17.tgz",
|
||||||
"integrity": "sha512-sui8AzHm6TxeEvWT/NEXlz3egYvCUog4tlXA4Xlb2Vxvy3purVXDq/XsM56lJl344U5Aj/jDzkVanOTMWyk4UA==",
|
"integrity": "sha512-sui8AzHm6TxeEvWT/NEXlz3egYvCUog4tlXA4Xlb2Vxvy3purVXDq/XsM56lJl344U5Aj/jDzkVanOTMWyk4UA==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@react-navigation/native": {
|
"@react-navigation/native": {
|
||||||
"version": "6.1.6",
|
"version": "6.1.6",
|
||||||
@@ -25763,63 +25770,72 @@
|
|||||||
"version": "0.10.3",
|
"version": "0.10.3",
|
||||||
"resolved": "https://registry.npmjs.org/@stream-io/flat-list-mvcp/-/flat-list-mvcp-0.10.3.tgz",
|
"resolved": "https://registry.npmjs.org/@stream-io/flat-list-mvcp/-/flat-list-mvcp-0.10.3.tgz",
|
||||||
"integrity": "sha512-2ZK8piYlEfKIPZrH8BpZz9uj8HZcUvMCV0X7qSLSAc/vhLOANBfR0SSn0OaWPbqb2mFGAd4FxmLSPp1zKEYuaw==",
|
"integrity": "sha512-2ZK8piYlEfKIPZrH8BpZz9uj8HZcUvMCV0X7qSLSAc/vhLOANBfR0SSn0OaWPbqb2mFGAd4FxmLSPp1zKEYuaw==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@svgr/babel-plugin-add-jsx-attribute": {
|
"@svgr/babel-plugin-add-jsx-attribute": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.0.0.tgz",
|
||||||
"integrity": "sha512-MdPdhdWLtQsjd29Wa4pABdhWbaRMACdM1h31BY+c6FghTZqNGT7pEYdBoaGeKtdTOBC/XNFQaKVj+r/Ei2ryWA==",
|
"integrity": "sha512-MdPdhdWLtQsjd29Wa4pABdhWbaRMACdM1h31BY+c6FghTZqNGT7pEYdBoaGeKtdTOBC/XNFQaKVj+r/Ei2ryWA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@svgr/babel-plugin-remove-jsx-attribute": {
|
"@svgr/babel-plugin-remove-jsx-attribute": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-6.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-6.0.0.tgz",
|
||||||
"integrity": "sha512-aVdtfx9jlaaxc3unA6l+M9YRnKIZjOhQPthLKqmTXC8UVkBLDRGwPKo+r8n3VZN8B34+yVajzPTZ+ptTSuZZCw==",
|
"integrity": "sha512-aVdtfx9jlaaxc3unA6l+M9YRnKIZjOhQPthLKqmTXC8UVkBLDRGwPKo+r8n3VZN8B34+yVajzPTZ+ptTSuZZCw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@svgr/babel-plugin-remove-jsx-empty-expression": {
|
"@svgr/babel-plugin-remove-jsx-empty-expression": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-6.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-6.0.0.tgz",
|
||||||
"integrity": "sha512-Ccj42ApsePD451AZJJf1QzTD1B/BOU392URJTeXFxSK709i0KUsGtbwyiqsKu7vsYxpTM0IA5clAKDyf9RCZyA==",
|
"integrity": "sha512-Ccj42ApsePD451AZJJf1QzTD1B/BOU392URJTeXFxSK709i0KUsGtbwyiqsKu7vsYxpTM0IA5clAKDyf9RCZyA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@svgr/babel-plugin-replace-jsx-attribute-value": {
|
"@svgr/babel-plugin-replace-jsx-attribute-value": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.0.0.tgz",
|
||||||
"integrity": "sha512-88V26WGyt1Sfd1emBYmBJRWMmgarrExpKNVmI9vVozha4kqs6FzQJ/Kp5+EYli1apgX44518/0+t9+NU36lThQ==",
|
"integrity": "sha512-88V26WGyt1Sfd1emBYmBJRWMmgarrExpKNVmI9vVozha4kqs6FzQJ/Kp5+EYli1apgX44518/0+t9+NU36lThQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@svgr/babel-plugin-svg-dynamic-title": {
|
"@svgr/babel-plugin-svg-dynamic-title": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.0.0.tgz",
|
||||||
"integrity": "sha512-F7YXNLfGze+xv0KMQxrl2vkNbI9kzT9oDK55/kUuymh1ACyXkMV+VZWX1zEhSTfEKh7VkHVZGmVtHg8eTZ6PRg==",
|
"integrity": "sha512-F7YXNLfGze+xv0KMQxrl2vkNbI9kzT9oDK55/kUuymh1ACyXkMV+VZWX1zEhSTfEKh7VkHVZGmVtHg8eTZ6PRg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@svgr/babel-plugin-svg-em-dimensions": {
|
"@svgr/babel-plugin-svg-em-dimensions": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.0.0.tgz",
|
||||||
"integrity": "sha512-+rghFXxdIqJNLQK08kwPBD3Z22/0b2tEZ9lKiL/yTfuyj1wW8HUXu4bo/XkogATIYuXSghVQOOCwURXzHGKyZA==",
|
"integrity": "sha512-+rghFXxdIqJNLQK08kwPBD3Z22/0b2tEZ9lKiL/yTfuyj1wW8HUXu4bo/XkogATIYuXSghVQOOCwURXzHGKyZA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@svgr/babel-plugin-transform-react-native-svg": {
|
"@svgr/babel-plugin-transform-react-native-svg": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.0.0.tgz",
|
||||||
"integrity": "sha512-VaphyHZ+xIKv5v0K0HCzyfAaLhPGJXSk2HkpYfXIOKb7DjLBv0soHDxNv6X0vr2titsxE7klb++u7iOf7TSrFQ==",
|
"integrity": "sha512-VaphyHZ+xIKv5v0K0HCzyfAaLhPGJXSk2HkpYfXIOKb7DjLBv0soHDxNv6X0vr2titsxE7klb++u7iOf7TSrFQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@svgr/babel-plugin-transform-svg-component": {
|
"@svgr/babel-plugin-transform-svg-component": {
|
||||||
"version": "6.1.0",
|
"version": "6.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.1.0.tgz",
|
||||||
"integrity": "sha512-1zacrn08K5RyV2NtXahOZ5Im/+aB1Y0LVh6QpzwgQV05sY7H5Npq+OcW/UqXbfB2Ua/WnHsFossFQqigCjarYg==",
|
"integrity": "sha512-1zacrn08K5RyV2NtXahOZ5Im/+aB1Y0LVh6QpzwgQV05sY7H5Npq+OcW/UqXbfB2Ua/WnHsFossFQqigCjarYg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@svgr/babel-preset": {
|
"@svgr/babel-preset": {
|
||||||
"version": "6.1.0",
|
"version": "6.1.0",
|
||||||
@@ -26602,7 +26618,8 @@
|
|||||||
"resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.1.0.tgz",
|
||||||
"integrity": "sha512-ttOkEkoalEHa7RaFYpM0ErK1xc4twg3Am9hfHhL7MVqlHebnkYd2wuI/ZqTDj0cVzZho6PdinY0phFZV3O0Mzg==",
|
"integrity": "sha512-ttOkEkoalEHa7RaFYpM0ErK1xc4twg3Am9hfHhL7MVqlHebnkYd2wuI/ZqTDj0cVzZho6PdinY0phFZV3O0Mzg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@webpack-cli/info": {
|
"@webpack-cli/info": {
|
||||||
"version": "1.4.0",
|
"version": "1.4.0",
|
||||||
@@ -26618,7 +26635,8 @@
|
|||||||
"resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.6.0.tgz",
|
||||||
"integrity": "sha512-ZkVeqEmRpBV2GHvjjUZqEai2PpUbuq8Bqd//vEYsp63J8WyexI8ppCqVS3Zs0QADf6aWuPdU+0XsPI647PVlQA==",
|
"integrity": "sha512-ZkVeqEmRpBV2GHvjjUZqEai2PpUbuq8Bqd//vEYsp63J8WyexI8ppCqVS3Zs0QADf6aWuPdU+0XsPI647PVlQA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"@xtuc/ieee754": {
|
"@xtuc/ieee754": {
|
||||||
"version": "1.2.0",
|
"version": "1.2.0",
|
||||||
@@ -26673,14 +26691,16 @@
|
|||||||
"integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==",
|
"integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"peer": true,
|
"peer": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"acorn-jsx": {
|
"acorn-jsx": {
|
||||||
"version": "5.3.2",
|
"version": "5.3.2",
|
||||||
"resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
|
"resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
|
||||||
"integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
|
"integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"adm-zip": {
|
"adm-zip": {
|
||||||
"version": "0.5.9",
|
"version": "0.5.9",
|
||||||
@@ -26742,7 +26762,8 @@
|
|||||||
"integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
|
"integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"peer": true,
|
"peer": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"anser": {
|
"anser": {
|
||||||
"version": "1.4.10",
|
"version": "1.4.10",
|
||||||
@@ -26978,7 +26999,8 @@
|
|||||||
"version": "7.0.0-bridge.0",
|
"version": "7.0.0-bridge.0",
|
||||||
"resolved": "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz",
|
"resolved": "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz",
|
||||||
"integrity": "sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==",
|
"integrity": "sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"babel-jest": {
|
"babel-jest": {
|
||||||
"version": "29.5.0",
|
"version": "29.5.0",
|
||||||
@@ -29002,7 +29024,8 @@
|
|||||||
"resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz",
|
||||||
"integrity": "sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==",
|
"integrity": "sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"eslint-import-resolver-node": {
|
"eslint-import-resolver-node": {
|
||||||
"version": "0.3.7",
|
"version": "0.3.7",
|
||||||
@@ -29090,7 +29113,8 @@
|
|||||||
"resolved": "https://registry.npmjs.org/eslint-plugin-header/-/eslint-plugin-header-3.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/eslint-plugin-header/-/eslint-plugin-header-3.1.1.tgz",
|
||||||
"integrity": "sha512-9vlKxuJ4qf793CmeeSrZUvVClw6amtpghq3CuWcB5cUNnWHQhgcqy5eF8oVKFk1G3Y/CbchGfEaw3wiIJaNmVg==",
|
"integrity": "sha512-9vlKxuJ4qf793CmeeSrZUvVClw6amtpghq3CuWcB5cUNnWHQhgcqy5eF8oVKFk1G3Y/CbchGfEaw3wiIJaNmVg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"eslint-plugin-import": {
|
"eslint-plugin-import": {
|
||||||
"version": "2.27.5",
|
"version": "2.27.5",
|
||||||
@@ -29226,7 +29250,8 @@
|
|||||||
"resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz",
|
||||||
"integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==",
|
"integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"eslint-plugin-react-native": {
|
"eslint-plugin-react-native": {
|
||||||
"version": "4.0.0",
|
"version": "4.0.0",
|
||||||
@@ -31601,7 +31626,8 @@
|
|||||||
"resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz",
|
"resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz",
|
||||||
"integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==",
|
"integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"jest-regex-util": {
|
"jest-regex-util": {
|
||||||
"version": "29.4.3",
|
"version": "29.4.3",
|
||||||
@@ -34981,7 +35007,8 @@
|
|||||||
"version": "1.0.3",
|
"version": "1.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/react-freeze/-/react-freeze-1.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/react-freeze/-/react-freeze-1.0.3.tgz",
|
||||||
"integrity": "sha512-ZnXwLQnGzrDpHBHiC56TXFXvmolPeMjTn1UOm610M4EXGzbEDR7oOIyS2ZiItgbs6eZc4oU/a0hpk8PrcKvv5g==",
|
"integrity": "sha512-ZnXwLQnGzrDpHBHiC56TXFXvmolPeMjTn1UOm610M4EXGzbEDR7oOIyS2ZiItgbs6eZc4oU/a0hpk8PrcKvv5g==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-intl": {
|
"react-intl": {
|
||||||
"version": "6.4.4",
|
"version": "6.4.4",
|
||||||
@@ -35159,7 +35186,8 @@
|
|||||||
"version": "2.4.1",
|
"version": "2.4.1",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-background-timer/-/react-native-background-timer-2.4.1.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-background-timer/-/react-native-background-timer-2.4.1.tgz",
|
||||||
"integrity": "sha512-TE4Kiy7jUyv+hugxDxitzu38sW1NqjCk4uE5IgU2WevLv7sZacaBc6PZKOShNRPGirLl1NWkaG3LDEkdb9Um5g==",
|
"integrity": "sha512-TE4Kiy7jUyv+hugxDxitzu38sW1NqjCk4uE5IgU2WevLv7sZacaBc6PZKOShNRPGirLl1NWkaG3LDEkdb9Um5g==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-button": {
|
"react-native-button": {
|
||||||
"version": "3.1.0",
|
"version": "3.1.0",
|
||||||
@@ -35212,13 +35240,15 @@
|
|||||||
"version": "1.6.4",
|
"version": "1.6.4",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-create-thumbnail/-/react-native-create-thumbnail-1.6.4.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-create-thumbnail/-/react-native-create-thumbnail-1.6.4.tgz",
|
||||||
"integrity": "sha512-JWuKXswDXtqUPfuqh6rjCVMvTSSG3kUtwvSK/YdaNU0i+nZKxeqHmt/CO2+TyI/WSUFynGVmWT1xOHhCZAFsRQ==",
|
"integrity": "sha512-JWuKXswDXtqUPfuqh6rjCVMvTSSG3kUtwvSK/YdaNU0i+nZKxeqHmt/CO2+TyI/WSUFynGVmWT1xOHhCZAFsRQ==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-device-info": {
|
"react-native-device-info": {
|
||||||
"version": "10.6.0",
|
"version": "10.6.0",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-device-info/-/react-native-device-info-10.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-device-info/-/react-native-device-info-10.6.0.tgz",
|
||||||
"integrity": "sha512-/MmINdojWdw2/9rwYpH/dX+1gFP0o78p8yYPjwxiPhoySSL2rZaNi+Mq9VwC+zFi/yQmJUvHntkKSw2KUc7rFw==",
|
"integrity": "sha512-/MmINdojWdw2/9rwYpH/dX+1gFP0o78p8yYPjwxiPhoySSL2rZaNi+Mq9VwC+zFi/yQmJUvHntkKSw2KUc7rFw==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-document-picker": {
|
"react-native-document-picker": {
|
||||||
"version": "9.0.1",
|
"version": "9.0.1",
|
||||||
@@ -35255,19 +35285,22 @@
|
|||||||
"version": "2.10.10",
|
"version": "2.10.10",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-exception-handler/-/react-native-exception-handler-2.10.10.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-exception-handler/-/react-native-exception-handler-2.10.10.tgz",
|
||||||
"integrity": "sha512-otAXGoZDl1689OoUJWN/rXxVbdoZ3xcmyF1uq/CsizdLwwyZqVGd6d+p/vbYvnF996FfEyAEBnHrdFxulTn51w==",
|
"integrity": "sha512-otAXGoZDl1689OoUJWN/rXxVbdoZ3xcmyF1uq/CsizdLwwyZqVGd6d+p/vbYvnF996FfEyAEBnHrdFxulTn51w==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-fast-image": {
|
"react-native-fast-image": {
|
||||||
"version": "8.6.3",
|
"version": "8.6.3",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-fast-image/-/react-native-fast-image-8.6.3.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-fast-image/-/react-native-fast-image-8.6.3.tgz",
|
||||||
"integrity": "sha512-Sdw4ESidXCXOmQ9EcYguNY2swyoWmx53kym2zRsvi+VeFCHEdkO+WG1DK+6W81juot40bbfLNhkc63QnWtesNg==",
|
"integrity": "sha512-Sdw4ESidXCXOmQ9EcYguNY2swyoWmx53kym2zRsvi+VeFCHEdkO+WG1DK+6W81juot40bbfLNhkc63QnWtesNg==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-file-viewer": {
|
"react-native-file-viewer": {
|
||||||
"version": "2.1.5",
|
"version": "2.1.5",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-file-viewer/-/react-native-file-viewer-2.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-file-viewer/-/react-native-file-viewer-2.1.5.tgz",
|
||||||
"integrity": "sha512-MGC6sx9jsqHdefhVQ6o0akdsPGpkXgiIbpygb2Sg4g4bh7v6K1cardLV1NwGB9A6u1yICOSDT/MOC//9Ez6EUg==",
|
"integrity": "sha512-MGC6sx9jsqHdefhVQ6o0akdsPGpkXgiIbpygb2Sg4g4bh7v6K1cardLV1NwGB9A6u1yICOSDT/MOC//9Ez6EUg==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-fs": {
|
"react-native-fs": {
|
||||||
"version": "2.20.0",
|
"version": "2.20.0",
|
||||||
@@ -35306,19 +35339,22 @@
|
|||||||
"version": "2.0.3",
|
"version": "2.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-haptic-feedback/-/react-native-haptic-feedback-2.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-haptic-feedback/-/react-native-haptic-feedback-2.0.3.tgz",
|
||||||
"integrity": "sha512-7+qvcxXZts/hA+HOOIFyM1x9m9fn/TJVSTgXaoQ8uT4gLc97IMvqHQ559tDmnlth+hHMzd3HRMpmRLWoKPL0DA==",
|
"integrity": "sha512-7+qvcxXZts/hA+HOOIFyM1x9m9fn/TJVSTgXaoQ8uT4gLc97IMvqHQ559tDmnlth+hHMzd3HRMpmRLWoKPL0DA==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-hw-keyboard-event": {
|
"react-native-hw-keyboard-event": {
|
||||||
"version": "0.0.4",
|
"version": "0.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-hw-keyboard-event/-/react-native-hw-keyboard-event-0.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-hw-keyboard-event/-/react-native-hw-keyboard-event-0.0.4.tgz",
|
||||||
"integrity": "sha512-G8qp0nm17PHigLb/axgdF9xg51BKCG2p1AGeq//J/luLp5zNczIcQJh+nm02R1MeEUE3e53wqO4LMe0MV3raZg==",
|
"integrity": "sha512-G8qp0nm17PHigLb/axgdF9xg51BKCG2p1AGeq//J/luLp5zNczIcQJh+nm02R1MeEUE3e53wqO4LMe0MV3raZg==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-image-picker": {
|
"react-native-image-picker": {
|
||||||
"version": "5.4.2",
|
"version": "5.4.2",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-image-picker/-/react-native-image-picker-5.4.2.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-image-picker/-/react-native-image-picker-5.4.2.tgz",
|
||||||
"integrity": "sha512-C/k3cYAh8fBImoGEwmiChNwHx9fJGqAIu2E4BUJdI1XlL17tSYjfTDx/bsuF4amZwa7hxZdQnZmpk0EnwIEUaw==",
|
"integrity": "sha512-C/k3cYAh8fBImoGEwmiChNwHx9fJGqAIu2E4BUJdI1XlL17tSYjfTDx/bsuF4amZwa7hxZdQnZmpk0EnwIEUaw==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-in-app-review": {
|
"react-native-in-app-review": {
|
||||||
"version": "4.3.3",
|
"version": "4.3.3",
|
||||||
@@ -35328,13 +35364,15 @@
|
|||||||
"react-native-incall-manager": {
|
"react-native-incall-manager": {
|
||||||
"version": "git+ssh://git@github.com/react-native-webrtc/react-native-incall-manager.git#6d927ef24c6e47c6134177a4bb14a71054f85b65",
|
"version": "git+ssh://git@github.com/react-native-webrtc/react-native-incall-manager.git#6d927ef24c6e47c6134177a4bb14a71054f85b65",
|
||||||
"from": "react-native-incall-manager@4.0.1",
|
"from": "react-native-incall-manager@4.0.1",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-iphone-x-helper": {
|
"react-native-iphone-x-helper": {
|
||||||
"version": "1.3.1",
|
"version": "1.3.1",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-iphone-x-helper/-/react-native-iphone-x-helper-1.3.1.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-iphone-x-helper/-/react-native-iphone-x-helper-1.3.1.tgz",
|
||||||
"integrity": "sha512-HOf0jzRnq2/aFUcdCJ9w9JGzN3gdEg0zFE4FyYlp4jtidqU03D5X7ZegGKfT1EWteR0gPBGp9ye5T5FvSWi9Yg==",
|
"integrity": "sha512-HOf0jzRnq2/aFUcdCJ9w9JGzN3gdEg0zFE4FyYlp4jtidqU03D5X7ZegGKfT1EWteR0gPBGp9ye5T5FvSWi9Yg==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-keyboard-aware-scroll-view": {
|
"react-native-keyboard-aware-scroll-view": {
|
||||||
"version": "0.9.5",
|
"version": "0.9.5",
|
||||||
@@ -35349,7 +35387,8 @@
|
|||||||
"version": "5.7.0",
|
"version": "5.7.0",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-keyboard-tracking-view/-/react-native-keyboard-tracking-view-5.7.0.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-keyboard-tracking-view/-/react-native-keyboard-tracking-view-5.7.0.tgz",
|
||||||
"integrity": "sha512-MDeEwAbn9LJDOfHq0QLCGaZirVLk2X/tHqkAqz3y6uxryTRdSl9PwleOVar5Jx2oAPEg4J9BXbUD1wwOOi+5Kg==",
|
"integrity": "sha512-MDeEwAbn9LJDOfHq0QLCGaZirVLk2X/tHqkAqz3y6uxryTRdSl9PwleOVar5Jx2oAPEg4J9BXbUD1wwOOi+5Kg==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-keychain": {
|
"react-native-keychain": {
|
||||||
"version": "8.1.1",
|
"version": "8.1.1",
|
||||||
@@ -35360,13 +35399,15 @@
|
|||||||
"version": "2.7.2",
|
"version": "2.7.2",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-linear-gradient/-/react-native-linear-gradient-2.7.2.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-linear-gradient/-/react-native-linear-gradient-2.7.2.tgz",
|
||||||
"integrity": "sha512-c1mNtmQrD+nzlIePQ5XZR/6IuEaNcYvE+N7MnOHDSOkXmxfLVbyicT15KEYnXQqbTLwTrFNJPZot241lWRVC3g==",
|
"integrity": "sha512-c1mNtmQrD+nzlIePQ5XZR/6IuEaNcYvE+N7MnOHDSOkXmxfLVbyicT15KEYnXQqbTLwTrFNJPZot241lWRVC3g==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-localize": {
|
"react-native-localize": {
|
||||||
"version": "3.0.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-localize/-/react-native-localize-3.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-localize/-/react-native-localize-3.0.0.tgz",
|
||||||
"integrity": "sha512-B8taYRLuLIYDzBTKIglA3K6ntjaEwbk6mwQ72ogZYl5ovM00NnpbiZ3sRq8KRVe/V1NGczxT33uVqG6BUWGWhg==",
|
"integrity": "sha512-B8taYRLuLIYDzBTKIglA3K6ntjaEwbk6mwQ72ogZYl5ovM00NnpbiZ3sRq8KRVe/V1NGczxT33uVqG6BUWGWhg==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-math-view": {
|
"react-native-math-view": {
|
||||||
"version": "3.9.5",
|
"version": "3.9.5",
|
||||||
@@ -35402,7 +35443,8 @@
|
|||||||
"version": "4.3.5",
|
"version": "4.3.5",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-notifications/-/react-native-notifications-4.3.5.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-notifications/-/react-native-notifications-4.3.5.tgz",
|
||||||
"integrity": "sha512-tCKkPaauN8/RIwPTeWdyezHXt5i4iDJViZGZ7/EBBuHB9kl9Oq3UjKFZeDfnM4DmJt+m7K2FQ7NaAuh3Kg1FCA==",
|
"integrity": "sha512-tCKkPaauN8/RIwPTeWdyezHXt5i4iDJViZGZ7/EBBuHB9kl9Oq3UjKFZeDfnM4DmJt+m7K2FQ7NaAuh3Kg1FCA==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-permissions": {
|
"react-native-permissions": {
|
||||||
"version": "3.8.0",
|
"version": "3.8.0",
|
||||||
@@ -35443,7 +35485,8 @@
|
|||||||
"version": "4.5.3",
|
"version": "4.5.3",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-safe-area-context/-/react-native-safe-area-context-4.5.3.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-safe-area-context/-/react-native-safe-area-context-4.5.3.tgz",
|
||||||
"integrity": "sha512-ihYeGDEBSkYH+1aWnadNhVtclhppVgd/c0tm4mj0+HV11FoiWJ8N6ocnnZnRLvM5Fxc+hUqxR9bm5AXU3rXiyA==",
|
"integrity": "sha512-ihYeGDEBSkYH+1aWnadNhVtclhppVgd/c0tm4mj0+HV11FoiWJ8N6ocnnZnRLvM5Fxc+hUqxR9bm5AXU3rXiyA==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-screens": {
|
"react-native-screens": {
|
||||||
"version": "3.21.0",
|
"version": "3.21.0",
|
||||||
@@ -35476,7 +35519,8 @@
|
|||||||
"version": "0.3.1",
|
"version": "0.3.1",
|
||||||
"resolved": "https://registry.npmjs.org/react-native-size-matters/-/react-native-size-matters-0.3.1.tgz",
|
"resolved": "https://registry.npmjs.org/react-native-size-matters/-/react-native-size-matters-0.3.1.tgz",
|
||||||
"integrity": "sha512-mKOfBLIBFBcs9br1rlZDvxD5+mAl8Gfr5CounwJtxI6Z82rGrMO+Kgl9EIg3RMVf3G855a85YVqHJL2f5EDRlw==",
|
"integrity": "sha512-mKOfBLIBFBcs9br1rlZDvxD5+mAl8Gfr5CounwJtxI6Z82rGrMO+Kgl9EIg3RMVf3G855a85YVqHJL2f5EDRlw==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"react-native-svg": {
|
"react-native-svg": {
|
||||||
"version": "13.9.0",
|
"version": "13.9.0",
|
||||||
@@ -37424,13 +37468,15 @@
|
|||||||
"version": "0.1.6",
|
"version": "0.1.6",
|
||||||
"resolved": "https://registry.npmjs.org/use-latest-callback/-/use-latest-callback-0.1.6.tgz",
|
"resolved": "https://registry.npmjs.org/use-latest-callback/-/use-latest-callback-0.1.6.tgz",
|
||||||
"integrity": "sha512-VO/P91A/PmKH9bcN9a7O3duSuxe6M14ZoYXgA6a8dab8doWNdhiIHzEkX/jFeTTRBsX0Ubk6nG4q2NIjNsj+bg==",
|
"integrity": "sha512-VO/P91A/PmKH9bcN9a7O3duSuxe6M14ZoYXgA6a8dab8doWNdhiIHzEkX/jFeTTRBsX0Ubk6nG4q2NIjNsj+bg==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"use-sync-external-store": {
|
"use-sync-external-store": {
|
||||||
"version": "1.2.0",
|
"version": "1.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz",
|
||||||
"integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==",
|
"integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"utf8": {
|
"utf8": {
|
||||||
"version": "3.0.0",
|
"version": "3.0.0",
|
||||||
@@ -37751,7 +37797,8 @@
|
|||||||
"version": "7.5.5",
|
"version": "7.5.5",
|
||||||
"resolved": "https://registry.npmjs.org/ws/-/ws-7.5.5.tgz",
|
"resolved": "https://registry.npmjs.org/ws/-/ws-7.5.5.tgz",
|
||||||
"integrity": "sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w==",
|
"integrity": "sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w==",
|
||||||
"requires": {}
|
"requires": {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"xdate": {
|
"xdate": {
|
||||||
"version": "0.8.2",
|
"version": "0.8.2",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "mattermost-mobile",
|
"name": "mattermost-mobile",
|
||||||
"version": "2.5.1",
|
"version": "2.6.0",
|
||||||
"description": "Mattermost Mobile with React Native",
|
"description": "Mattermost Mobile with React Native",
|
||||||
"repository": "git@github.com:mattermost/mattermost-mobile.git",
|
"repository": "git@github.com:mattermost/mattermost-mobile.git",
|
||||||
"author": "Mattermost, Inc.",
|
"author": "Mattermost, Inc.",
|
||||||
|
|||||||
Reference in New Issue
Block a user