This commit is contained in:
Md_ZubairAhmed
2023-05-14 17:34:55 +05:30
parent 20f3aefe34
commit 4e01a94cdd
8 changed files with 110 additions and 90 deletions

View File

@@ -9,7 +9,6 @@ import {fetchChannelStats, removeMemberFromChannel, updateChannelMemberSchemeRol
import OptionItem from '@components/option_item';
import {Events, Members} from '@constants';
import {useServerUrl} from '@context/server';
import {t} from '@i18n';
import {dismissBottomSheet} from '@screens/navigation';
import {alertErrorWithFallback} from '@utils/draft';
@@ -19,31 +18,31 @@ const {MAKE_CHANNEL_ADMIN, MAKE_CHANNEL_MEMBER, REMOVE_USER} = Members.ManageOpt
const messages = defineMessages({
role_change_error: {
id: t('mobile.manage_members.change_role.error'),
id: 'mobile.manage_members.change_role.error',
defaultMessage: 'An error occurred while trying to update the role. Please check your connection and try again.',
},
make_channel_admin: {
id: t('mobile.manage_members.make_channel_admin'),
id: 'mobile.manage_members.make_channel_admin',
defaultMessage: 'Make Channel Admin',
},
make_channel_member: {
id: t('mobile.manage_members.make_channel_member'),
id: 'mobile.manage_members.make_channel_member',
defaultMessage: 'Make Channel Member',
},
remove_title: {
id: t('mobile.manage_members.remove_member'),
id: 'mobile.manage_members.remove_member',
defaultMessage: 'Remove From Channel',
},
remove_message: {
id: t('mobile.manage_members.message'),
id: 'mobile.manage_members.message',
defaultMessage: 'Are you sure you want to remove the selected member from the channel?',
},
remove_cancel: {
id: t('mobile.manage_members.cancel'),
id: 'mobile.manage_members.cancel',
defaultMessage: 'Cancel',
},
remove_confirm: {
id: t('mobile.manage_members.remove'),
id: 'mobile.manage_members.remove',
defaultMessage: 'Remove',
},
});

View File

@@ -13,7 +13,6 @@ import {General, Screens} from '@constants';
import {useServerUrl} from '@context/server';
import {useTheme} from '@context/theme';
import {useKeyboardHeight} from '@hooks/device';
import {t} from '@i18n';
import {openAsBottomSheet} from '@screens/navigation';
import {
changeOpacity,
@@ -31,11 +30,11 @@ const SCROLL_EVENT_THROTTLE = 60;
const messages = defineMessages({
admins: {
id: t('mobile.manage_members.section_title_admins'),
id: 'mobile.manage_members.section_title_admins',
defaultMessage: 'CHANNEL ADMINS',
},
members: {
id: t('mobile.manage_members.section_title_members'),
id: 'mobile.manage_members.section_title_members',
defaultMessage: 'MEMBERS',
},
});

View File

@@ -3,51 +3,49 @@
import {defineMessages} from 'react-intl';
import {t} from '@i18n';
export const iosPermissions = defineMessages({
NSAppleMusicUsageDescription: {
id: t('mobile.ios.plist.NSAppleMusicUsageDescription'),
id: 'mobile.ios.plist.NSAppleMusicUsageDescription',
defaultMessage: 'Enabling access to your media library means you can attach files from your media library to your messages in {applicationName}.',
},
NSBluetoothAlwaysUsageDescription: {
id: t('mobile.ios.plist.NSBluetoothAlwaysUsageDescription'),
id: 'mobile.ios.plist.NSBluetoothAlwaysUsageDescription',
defaultMessage: 'Enabling access to Bluetooth means we can synchronize content across your devices and clients.',
},
NSBluetoothPeripheralUsageDescription: {
id: t('mobile.ios.plist.NSBluetoothPeripheralUsageDescription'),
id: 'mobile.ios.plist.NSBluetoothPeripheralUsageDescription',
defaultMessage: 'Enabling access to Bluetooth means we can connect to audio peripherals for calls, and synchronize content across your devices and clients.',
},
NSCameraUsageDescription: {
id: t('mobile.ios.plist.NSCameraUsageDescription'),
id: 'mobile.ios.plist.NSCameraUsageDescription',
defaultMessage: 'Enabling access to your device cameras means you can take photos or videos and upload them to {applicationName}.',
},
NSFaceIDUsageDescription: {
id: t('mobile.ios.plist.NSFaceIDUsageDescription'),
id: 'mobile.ios.plist.NSFaceIDUsageDescription',
defaultMessage: 'Enabling access to your Face ID means we can restrict unauthorized users from accessing {applicationName} on your device.',
},
NSLocationAlwaysUsageDescription: {
id: t('mobile.ios.plist.NSLocationAlwaysUsageDescription'),
id: 'mobile.ios.plist.NSLocationAlwaysUsageDescription',
defaultMessage: 'Enabling access to your location data means we can add location metadata to pictures and videos you share in {applicationName}.',
},
NSLocationWhenInUseUsageDescription: {
id: t('mobile.ios.plist.NSLocationWhenInUseUsageDescription'),
id: 'mobile.ios.plist.NSLocationWhenInUseUsageDescription',
defaultMessage: 'Enabling access to your location data means we can add location metadata to pictures and videos you share in {applicationName}.',
},
NSMicrophoneUsageDescription: {
id: t('mobile.ios.plist.NSMicrophoneUsageDescription'),
id: 'mobile.ios.plist.NSMicrophoneUsageDescription',
defaultMessage: 'Enabling access to your device\'s microphones means you can capture audio for calls or videos to share in {applicationName}.',
},
NSPhotoLibraryAddUsageDescription: {
id: t('mobile.ios.plist.NSPhotoLibraryAddUsageDescription'),
id: 'mobile.ios.plist.NSPhotoLibraryAddUsageDescription',
defaultMessage: 'Enabling write access to your photo library means you can save downloaded photos and videos from {applicationName} to your device.',
},
NSPhotoLibraryUsageDescription: {
id: t('mobile.ios.plist.NSPhotoLibraryUsageDescription'),
id: 'mobile.ios.plist.NSPhotoLibraryUsageDescription',
defaultMessage: 'Enabling read access to your photo library means you can upload photos and videos from your device to {applicationName}.',
},
NSSpeechRecognitionUsageDescription: {
id: t('mobile.ios.plist.NSSpeechRecognitionUsageDescription'),
id: 'mobile.ios.plist.NSSpeechRecognitionUsageDescription',
defaultMessage: 'Enabling your device to send user data to Apple means you can send voice messages to {applicationName}.',
},
});

View File

@@ -19,7 +19,6 @@ import {useTheme} from '@context/theme';
import useAndroidHardwareBackHandler from '@hooks/android_back_handler';
import {useModalPosition} from '@hooks/device';
import useNavButtonPressed from '@hooks/navigation_button_pressed';
import {t} from '@i18n';
import {dismissModal, setButtons} from '@screens/navigation';
import {alertErrorWithFallback} from '@utils/draft';
import {changeOpacity, getKeyboardAppearanceFromTheme, makeStyleSheetFromTheme} from '@utils/theme';
@@ -30,19 +29,19 @@ import type {AvailableScreens} from '@typings/screens/navigation';
const messages = defineMessages({
dm: {
id: t('mobile.open_dm.error'),
id: 'mobile.open_dm.error',
defaultMessage: "We couldn't open a direct message with {displayName}. Please check your connection and try again.",
},
gm: {
id: t('mobile.open_gm.error'),
id: 'mobile.open_gm.error',
defaultMessage: "We couldn't open a group message with those users. Please check your connection and try again.",
},
buttonText: {
id: t('mobile.create_direct_message.start'),
id: 'mobile.create_direct_message.start',
defaultMessage: 'Start Conversation',
},
toastMessage: {
id: t('mobile.create_direct_message.max_limit_reached'),
id: 'mobile.create_direct_message.max_limit_reached',
defaultMessage: 'Group messages are limited to {maxCount} members',
},
});

View File

@@ -15,7 +15,6 @@ import {useServerUrl} from '@context/server';
import {useTheme} from '@context/theme';
import {debounce} from '@helpers/api/general';
import useNavButtonPressed from '@hooks/navigation_button_pressed';
import {t} from '@i18n';
import {openAsBottomSheet, setButtons} from '@screens/navigation';
import NavigationStore from '@store/navigation_store';
import {showRemoveChannelUserSnackbar} from '@utils/snack_bar';
@@ -46,11 +45,11 @@ const styles = StyleSheet.create({
const messages = defineMessages({
button_manage: {
id: t('mobile.manage_members.manage'),
id: 'mobile.manage_members.manage',
defaultMessage: 'Manage',
},
button_done: {
id: t('mobile.manage_members.done'),
id: 'mobile.manage_members.done',
defaultMessage: 'Done',
},
});

View File

@@ -10,7 +10,7 @@ import {useSafeAreaInsets} from 'react-native-safe-area-context';
import {fetchTeamAndChannelMembership} from '@actions/remote/user';
import {Screens} from '@constants';
import {useServerUrl} from '@context/server';
import {getLocaleFromLanguage, t} from '@i18n';
import {getLocaleFromLanguage} from '@i18n';
import BottomSheet from '@screens/bottom_sheet';
import {bottomSheetSnapPoint} from '@utils/helpers';
import {getUserCustomStatus, getUserTimezone, isCustomStatusExpired} from '@utils/user';
@@ -56,7 +56,7 @@ const MANAGE_ICON_HEIGHT = 72;
const messages = defineMessages({
manageMember: {
id: t('mobile.manage_members.manage_member'),
id: 'mobile.manage_members.manage_member',
defaultMessage: 'Manage member',
},
});

136
package-lock.json generated
View File

@@ -161,7 +161,7 @@
"jest-cli": "29.5.0",
"jetifier": "2.0.0",
"metro-react-native-babel-preset": "0.76.2",
"mmjstool": "github:mattermost/mattermost-utilities#010f456ea8be5beebafdb8776177cba515c1969e",
"mmjstool": "github:mattermost/mattermost-utilities#043f88c972e38fec90bcce49624761958cc65fe6",
"mock-async-storage": "2.2.0",
"nock": "13.3.0",
"patch-package": "6.5.1",
@@ -6623,9 +6623,9 @@
}
},
"node_modules/@typescript-eslint/types": {
"version": "5.8.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.8.1.tgz",
"integrity": "sha512-L/FlWCCgnjKOLefdok90/pqInkomLnAcF9UAzNr+DSqMC3IffzumHTQTrINXhP1gVp9zlHiYYjvozVZDPleLcA==",
"version": "5.59.5",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.5.tgz",
"integrity": "sha512-xkfRPHbqSH4Ggx4eHRIO/eGL8XL4Ysb4woL8c87YuAo8Md7AUjyWKa9YMwTL519SyDPrfEgKdewjkxNCVeJW7w==",
"dev": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -6636,17 +6636,17 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
"version": "5.8.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.8.1.tgz",
"integrity": "sha512-26lQ8l8tTbG7ri7xEcCFT9ijU5Fk+sx/KRRyyzCv7MQ+rZZlqiDPtMKWLC8P7o+dtCnby4c+OlxuX1tp8WfafQ==",
"version": "5.59.5",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.5.tgz",
"integrity": "sha512-+XXdLN2CZLZcD/mO7mQtJMvCkzRfmODbeSKuMY/yXbGkzvA9rJyDY5qDYNoiz2kP/dmyAxXquL2BvLQLJFPQIg==",
"dev": true,
"dependencies": {
"@typescript-eslint/types": "5.8.1",
"@typescript-eslint/visitor-keys": "5.8.1",
"debug": "^4.3.2",
"globby": "^11.0.4",
"@typescript-eslint/types": "5.59.5",
"@typescript-eslint/visitor-keys": "5.59.5",
"debug": "^4.3.4",
"globby": "^11.1.0",
"is-glob": "^4.0.3",
"semver": "^7.3.5",
"semver": "^7.3.7",
"tsutils": "^3.21.0"
},
"engines": {
@@ -6758,13 +6758,13 @@
}
},
"node_modules/@typescript-eslint/visitor-keys": {
"version": "5.8.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.8.1.tgz",
"integrity": "sha512-SWgiWIwocK6NralrJarPZlWdr0hZnj5GXHIgfdm8hNkyKvpeQuFyLP6YjSIe9kf3YBIfU6OHSZLYkQ+smZwtNg==",
"version": "5.59.5",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.5.tgz",
"integrity": "sha512-qL+Oz+dbeBRTeyJTIy0eniD3uvqU7x+y1QceBismZ41hd4aBSRh8UAw4pZP0+XzLuPZmx4raNMq/I+59W2lXKA==",
"dev": true,
"dependencies": {
"@typescript-eslint/types": "5.8.1",
"eslint-visitor-keys": "^3.0.0"
"@typescript-eslint/types": "5.59.5",
"eslint-visitor-keys": "^3.3.0"
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -6775,12 +6775,15 @@
}
},
"node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz",
"integrity": "sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA==",
"version": "3.4.1",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz",
"integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==",
"dev": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
},
"funding": {
"url": "https://opencollective.com/eslint"
}
},
"node_modules/@webassemblyjs/ast": {
@@ -16517,15 +16520,17 @@
},
"node_modules/mmjstool": {
"version": "1.0.0",
"resolved": "git+ssh://git@github.com/mattermost/mattermost-utilities.git#010f456ea8be5beebafdb8776177cba515c1969e",
"resolved": "git+ssh://git@github.com/mattermost/mattermost-utilities.git#043f88c972e38fec90bcce49624761958cc65fe6",
"integrity": "sha512-+vMAv7QJ9dQY0EArd3OqYxdYVxc6arLQ6Jy0lMm49AwgekOV2PnknzX1sPNORUpcQI7htjqXPWdcewx8o7B68A==",
"dev": true,
"dependencies": {
"@typescript-eslint/typescript-estree": "5.8.1",
"estree-walk": "2.2.0",
"filehound": "1.17.5",
"sort-json": "2.0.0",
"webpack-cli": "4.9.1",
"yargs": "17.3.1"
"@typescript-eslint/typescript-estree": "^5.44.0",
"estree-walk": "^2.2.0",
"filehound": "^1.17.5",
"sort-json": "^2.0.0",
"typescript": "^4.7.4",
"webpack-cli": "^4.9.1",
"yargs": "^17.3.1"
},
"bin": {
"mmjstool": "bin/mmjstool"
@@ -16560,6 +16565,19 @@
"node": ">=8"
}
},
"node_modules/mmjstool/node_modules/typescript": {
"version": "4.9.5",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz",
"integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==",
"dev": true,
"bin": {
"tsc": "bin/tsc",
"tsserver": "bin/tsserver"
},
"engines": {
"node": ">=4.2.0"
}
},
"node_modules/mmjstool/node_modules/yargs": {
"version": "17.3.1",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-17.3.1.tgz",
@@ -26249,7 +26267,7 @@
"resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz",
"integrity": "sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==",
"requires": {
"@types/react": "^18.0.35",
"@types/react": "*",
"hoist-non-react-statics": "^3.3.0"
}
},
@@ -26658,23 +26676,23 @@
}
},
"@typescript-eslint/types": {
"version": "5.8.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.8.1.tgz",
"integrity": "sha512-L/FlWCCgnjKOLefdok90/pqInkomLnAcF9UAzNr+DSqMC3IffzumHTQTrINXhP1gVp9zlHiYYjvozVZDPleLcA==",
"version": "5.59.5",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.5.tgz",
"integrity": "sha512-xkfRPHbqSH4Ggx4eHRIO/eGL8XL4Ysb4woL8c87YuAo8Md7AUjyWKa9YMwTL519SyDPrfEgKdewjkxNCVeJW7w==",
"dev": true
},
"@typescript-eslint/typescript-estree": {
"version": "5.8.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.8.1.tgz",
"integrity": "sha512-26lQ8l8tTbG7ri7xEcCFT9ijU5Fk+sx/KRRyyzCv7MQ+rZZlqiDPtMKWLC8P7o+dtCnby4c+OlxuX1tp8WfafQ==",
"version": "5.59.5",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.5.tgz",
"integrity": "sha512-+XXdLN2CZLZcD/mO7mQtJMvCkzRfmODbeSKuMY/yXbGkzvA9rJyDY5qDYNoiz2kP/dmyAxXquL2BvLQLJFPQIg==",
"dev": true,
"requires": {
"@typescript-eslint/types": "5.8.1",
"@typescript-eslint/visitor-keys": "5.8.1",
"debug": "^4.3.2",
"globby": "^11.0.4",
"@typescript-eslint/types": "5.59.5",
"@typescript-eslint/visitor-keys": "5.59.5",
"debug": "^4.3.4",
"globby": "^11.1.0",
"is-glob": "^4.0.3",
"semver": "^7.3.5",
"semver": "^7.3.7",
"tsutils": "^3.21.0"
}
},
@@ -26734,19 +26752,19 @@
}
},
"@typescript-eslint/visitor-keys": {
"version": "5.8.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.8.1.tgz",
"integrity": "sha512-SWgiWIwocK6NralrJarPZlWdr0hZnj5GXHIgfdm8hNkyKvpeQuFyLP6YjSIe9kf3YBIfU6OHSZLYkQ+smZwtNg==",
"version": "5.59.5",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.5.tgz",
"integrity": "sha512-qL+Oz+dbeBRTeyJTIy0eniD3uvqU7x+y1QceBismZ41hd4aBSRh8UAw4pZP0+XzLuPZmx4raNMq/I+59W2lXKA==",
"dev": true,
"requires": {
"@typescript-eslint/types": "5.8.1",
"eslint-visitor-keys": "^3.0.0"
"@typescript-eslint/types": "5.59.5",
"eslint-visitor-keys": "^3.3.0"
},
"dependencies": {
"eslint-visitor-keys": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz",
"integrity": "sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA==",
"version": "3.4.1",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz",
"integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==",
"dev": true
}
}
@@ -34144,16 +34162,18 @@
}
},
"mmjstool": {
"version": "git+ssh://git@github.com/mattermost/mattermost-utilities.git#010f456ea8be5beebafdb8776177cba515c1969e",
"version": "git+ssh://git@github.com/mattermost/mattermost-utilities.git#043f88c972e38fec90bcce49624761958cc65fe6",
"integrity": "sha512-+vMAv7QJ9dQY0EArd3OqYxdYVxc6arLQ6Jy0lMm49AwgekOV2PnknzX1sPNORUpcQI7htjqXPWdcewx8o7B68A==",
"dev": true,
"from": "mmjstool@github:mattermost/mattermost-utilities#010f456ea8be5beebafdb8776177cba515c1969e",
"from": "mmjstool@github:mattermost/mattermost-utilities#043f88c972e38fec90bcce49624761958cc65fe6",
"requires": {
"@typescript-eslint/typescript-estree": "5.8.1",
"estree-walk": "2.2.0",
"filehound": "1.17.5",
"sort-json": "2.0.0",
"webpack-cli": "4.9.1",
"yargs": "17.3.1"
"@typescript-eslint/typescript-estree": "^5.44.0",
"estree-walk": "^2.2.0",
"filehound": "^1.17.5",
"sort-json": "^2.0.0",
"typescript": "^4.7.4",
"webpack-cli": "^4.9.1",
"yargs": "^17.3.1"
},
"dependencies": {
"emoji-regex": {
@@ -34179,6 +34199,12 @@
"strip-ansi": "^6.0.1"
}
},
"typescript": {
"version": "4.9.5",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz",
"integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==",
"dev": true
},
"yargs": {
"version": "17.3.1",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-17.3.1.tgz",

View File

@@ -158,7 +158,7 @@
"jest-cli": "29.5.0",
"jetifier": "2.0.0",
"metro-react-native-babel-preset": "0.76.2",
"mmjstool": "github:mattermost/mattermost-utilities#010f456ea8be5beebafdb8776177cba515c1969e",
"mmjstool": "github:mattermost/mattermost-utilities#043f88c972e38fec90bcce49624761958cc65fe6",
"mock-async-storage": "2.2.0",
"nock": "13.3.0",
"patch-package": "6.5.1",