forked from Ivasoft/mattermost-mobile
Compare commits
43 Commits
v1.9.2
...
release-1.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7f2a8d89eb | ||
|
|
ec44ca6f5e | ||
|
|
8d1ab7bcab | ||
|
|
f011ecc3ec | ||
|
|
240e52da6b | ||
|
|
36d2087660 | ||
|
|
c877d983cc | ||
|
|
aa5f0c9557 | ||
|
|
20168d90ca | ||
|
|
f15223abfe | ||
|
|
384898a0ac | ||
|
|
c42e2276a2 | ||
|
|
2dcf7a01d0 | ||
|
|
979e899051 | ||
|
|
3f0a4ef153 | ||
|
|
4b57f4fed0 | ||
|
|
ea3bcf66f4 | ||
|
|
610ed8e68d | ||
|
|
3c19603fed | ||
|
|
cb5970587f | ||
|
|
428e6225f5 | ||
|
|
585d7bc1e1 | ||
|
|
80906a776b | ||
|
|
93265b3de0 | ||
|
|
0d70372a3c | ||
|
|
72087391dc | ||
|
|
9c89fe2907 | ||
|
|
9684328123 | ||
|
|
c3ef5e6f38 | ||
|
|
e36f63c84d | ||
|
|
ce05b9c98b | ||
|
|
388294a124 | ||
|
|
1a12abfe50 | ||
|
|
0210d6e1eb | ||
|
|
49bcf185e6 | ||
|
|
61ecf7d159 | ||
|
|
ead5f2860f | ||
|
|
09ac903630 | ||
|
|
a471379cb2 | ||
|
|
eaf128b2a0 | ||
|
|
96f5cd2c11 | ||
|
|
6b23c230ed | ||
|
|
63a3e4eb89 |
27
.gitignore
vendored
27
.gitignore
vendored
@@ -1,5 +1,8 @@
|
||||
assets/override
|
||||
dist
|
||||
*.zip
|
||||
server.PID
|
||||
mattermost.keystore
|
||||
|
||||
# OSX
|
||||
#
|
||||
@@ -26,28 +29,27 @@ DerivedData
|
||||
*.xcuserstate
|
||||
project.xcworkspace
|
||||
|
||||
# Android/IJ
|
||||
# Android/IntelliJ
|
||||
#
|
||||
*.iml
|
||||
build/
|
||||
.idea
|
||||
.gradle
|
||||
local.properties
|
||||
*.iml
|
||||
|
||||
# node.js
|
||||
#
|
||||
node_modules/
|
||||
npm-debug.log
|
||||
.npminstall
|
||||
|
||||
# yarn
|
||||
#
|
||||
yarn-error.log
|
||||
.yarninstall
|
||||
|
||||
# BUCK
|
||||
buck-out/
|
||||
\.buckd/
|
||||
android/app/libs
|
||||
android/keystores/debug.keystore
|
||||
*.keystore
|
||||
|
||||
# Vim
|
||||
[._]*.s[a-w][a-z]
|
||||
@@ -58,10 +60,17 @@ Session.vim
|
||||
*~
|
||||
tags
|
||||
|
||||
# fastlane
|
||||
#
|
||||
# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
|
||||
# screenshots whenever they are needed.
|
||||
# For more information about the recommended setup visit:
|
||||
# https://docs.fastlane.tools/best-practices/source-control/
|
||||
|
||||
fastlane/report.xml
|
||||
*.zip
|
||||
server.PID
|
||||
mattermost.keystore
|
||||
fastlane/Preview.html
|
||||
*/fastlane/screenshots
|
||||
|
||||
|
||||
# Sentry
|
||||
android/sentry.properties
|
||||
|
||||
3
Makefile
3
Makefile
@@ -86,7 +86,7 @@ run-android: | check-device-android start prepare-android-build
|
||||
@echo Running Android app in development
|
||||
@react-native run-android --no-packager
|
||||
|
||||
test: pre-run
|
||||
test: | pre-run check-style
|
||||
@yarn test
|
||||
|
||||
check-style: .yarninstall
|
||||
@@ -122,6 +122,7 @@ post-install:
|
||||
@sed -i'' -e 's|"./locale-data/complete.js": false|"./locale-data/complete.js": "./locale-data/complete.js"|g' node_modules/intl/package.json
|
||||
@sed -i'' -e 's|auto("auto", Configuration.ORIENTATION_UNDEFINED, ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);|auto("auto", Configuration.ORIENTATION_UNDEFINED, ActivityInfo.SCREEN_ORIENTATION_FULL_USER);|g' node_modules/react-native-navigation/android/app/src/main/java/com/reactnativenavigation/params/Orientation.java
|
||||
@cd ./node_modules/react-native-svg/ios && rm -rf PerformanceBezier && git clone https://github.com/adamwulf/PerformanceBezier.git
|
||||
@cd ./node_modules/mattermost-redux && yarn run build
|
||||
|
||||
start-packager:
|
||||
@if [ $(shell ps -e | grep -i "cli.js start" | grep -civ grep) -eq 0 ]; then \
|
||||
|
||||
@@ -95,8 +95,8 @@ android {
|
||||
applicationId "com.mattermost.rnbeta"
|
||||
minSdkVersion 21
|
||||
targetSdkVersion 23
|
||||
versionCode 59
|
||||
versionName "1.4.0"
|
||||
versionCode 64
|
||||
versionName "1.4.1"
|
||||
multiDexEnabled true
|
||||
ndk {
|
||||
abiFilters "armeabi-v7a", "x86"
|
||||
|
||||
@@ -8,9 +8,9 @@ import {ViewTypes} from 'app/constants';
|
||||
import {UserTypes} from 'mattermost-redux/action_types';
|
||||
import {
|
||||
fetchMyChannelsAndMembers,
|
||||
markChannelAsRead,
|
||||
selectChannel,
|
||||
leaveChannel as serviceLeaveChannel,
|
||||
unfavoriteChannel
|
||||
leaveChannel as serviceLeaveChannel
|
||||
} from 'mattermost-redux/actions/channels';
|
||||
import {getPosts, getPostsBefore, getPostsSince, getPostThread} from 'mattermost-redux/actions/posts';
|
||||
import {getFilesForPost} from 'mattermost-redux/actions/files';
|
||||
@@ -19,18 +19,19 @@ import {getTeamMembersByIds} from 'mattermost-redux/actions/teams';
|
||||
import {getProfilesInChannel} from 'mattermost-redux/actions/users';
|
||||
import {General, Preferences} from 'mattermost-redux/constants';
|
||||
import {getCurrentChannelId} from 'mattermost-redux/selectors/entities/channels';
|
||||
|
||||
import {
|
||||
getChannelByName,
|
||||
getDirectChannelName,
|
||||
getUserIdFromChannelName,
|
||||
isDirectChannelVisible,
|
||||
isGroupChannelVisible,
|
||||
isDirectChannel,
|
||||
isGroupChannel
|
||||
} from 'mattermost-redux/utils/channel_utils';
|
||||
import {getLastCreateAt} from 'mattermost-redux/utils/post_utils';
|
||||
import {getPreferencesByCategory} from 'mattermost-redux/utils/preference_utils';
|
||||
|
||||
import {isDirectChannelVisible, isGroupChannelVisible} from 'app/utils/channels';
|
||||
|
||||
const MAX_POST_TRIES = 3;
|
||||
|
||||
export function loadChannelsIfNecessary(teamId) {
|
||||
@@ -236,20 +237,27 @@ export function selectInitialChannel(teamId) {
|
||||
if (lastChannelId && myMembers[lastChannelId] &&
|
||||
(lastChannel.team_id === teamId || isDMVisible || isGMVisible)) {
|
||||
handleSelectChannel(lastChannelId)(dispatch, getState);
|
||||
markChannelAsRead(lastChannelId)(dispatch, getState);
|
||||
return;
|
||||
}
|
||||
|
||||
const channel = Object.values(channels).find((c) => c.team_id === teamId && c.name === General.DEFAULT_CHANNEL);
|
||||
let channelId;
|
||||
if (channel) {
|
||||
dispatch(setChannelDisplayName(''));
|
||||
handleSelectChannel(channel.id)(dispatch, getState);
|
||||
channelId = channel.id;
|
||||
} else {
|
||||
// Handle case when the default channel cannot be found
|
||||
// so we need to get the first available channel of the team
|
||||
const channelsInTeam = Object.values(channels).filter((c) => c.team_id === teamId);
|
||||
const firstChannel = channelsInTeam.length ? channelsInTeam[0].id : {id: ''};
|
||||
|
||||
channelId = firstChannel.id;
|
||||
}
|
||||
|
||||
if (channelId) {
|
||||
dispatch(setChannelDisplayName(''));
|
||||
handleSelectChannel(firstChannel.id)(dispatch, getState);
|
||||
handleSelectChannel(channelId)(dispatch, getState);
|
||||
markChannelAsRead(channelId)(dispatch, getState);
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -371,13 +379,10 @@ export function toggleGMChannel(channelId, visible) {
|
||||
export function closeDMChannel(channel) {
|
||||
return async (dispatch, getState) => {
|
||||
const state = getState();
|
||||
|
||||
if (channel.isFavorite) {
|
||||
unfavoriteChannel(channel.id)(dispatch, getState);
|
||||
}
|
||||
const currentChannelId = getCurrentChannelId(state);
|
||||
|
||||
toggleDMChannel(channel.teammate_id, 'false')(dispatch, getState);
|
||||
if (channel.isCurrent) {
|
||||
if (channel.id === currentChannelId) {
|
||||
selectInitialChannel(state.entities.teams.currentTeamId)(dispatch, getState);
|
||||
}
|
||||
};
|
||||
@@ -386,13 +391,10 @@ export function closeDMChannel(channel) {
|
||||
export function closeGMChannel(channel) {
|
||||
return async (dispatch, getState) => {
|
||||
const state = getState();
|
||||
|
||||
if (channel.isFavorite) {
|
||||
unfavoriteChannel(channel.id)(dispatch, getState);
|
||||
}
|
||||
const currentChannelId = getCurrentChannelId(state);
|
||||
|
||||
toggleGMChannel(channel.id, 'false')(dispatch, getState);
|
||||
if (channel.isCurrent) {
|
||||
if (channel.id === currentChannelId) {
|
||||
selectInitialChannel(state.entities.teams.currentTeamId)(dispatch, getState);
|
||||
}
|
||||
};
|
||||
@@ -453,16 +455,31 @@ export function increasePostVisibility(channelId, focusedPostId) {
|
||||
const currentPostVisibility = postVisibility[channelId] || 0;
|
||||
|
||||
if (loadingPosts[channelId]) {
|
||||
return true;
|
||||
return;
|
||||
}
|
||||
|
||||
dispatch(batchActions([
|
||||
{
|
||||
type: ViewTypes.LOADING_POSTS,
|
||||
data: true,
|
||||
channelId
|
||||
// Check if we already have the posts that we want to show
|
||||
if (!focusedPostId) {
|
||||
const loadedPostCount = state.entities.posts.postsInChannel[channelId].length;
|
||||
const desiredPostVisibility = currentPostVisibility + ViewTypes.POST_VISIBILITY_CHUNK_SIZE;
|
||||
|
||||
if (loadedPostCount >= desiredPostVisibility) {
|
||||
// We already have the posts, so we just need to show them
|
||||
dispatch({
|
||||
type: ViewTypes.INCREASE_POST_VISIBILITY,
|
||||
data: channelId,
|
||||
amount: ViewTypes.POST_VISIBILITY_CHUNK_SIZE
|
||||
});
|
||||
|
||||
return;
|
||||
}
|
||||
]));
|
||||
}
|
||||
|
||||
dispatch({
|
||||
type: ViewTypes.LOADING_POSTS,
|
||||
data: true,
|
||||
channelId
|
||||
});
|
||||
|
||||
const page = Math.floor(currentPostVisibility / ViewTypes.POST_VISIBILITY_CHUNK_SIZE);
|
||||
|
||||
@@ -489,7 +506,5 @@ export function increasePostVisibility(channelId, focusedPostId) {
|
||||
data: false,
|
||||
channelId
|
||||
});
|
||||
|
||||
return posts && posts.order.length >= ViewTypes.POST_VISIBILITY_CHUNK_SIZE;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
// Copyright (c) 2016-present Mattermost, Inc. All Rights Reserved.
|
||||
// See License.txt for license information.
|
||||
|
||||
import {PostTypes} from 'mattermost-redux/action_types';
|
||||
import {Client4} from 'mattermost-redux/client';
|
||||
import {General} from 'mattermost-redux/constants';
|
||||
import {getClientConfig, getLicenseConfig} from 'mattermost-redux/actions/general';
|
||||
import {getPosts} from 'mattermost-redux/actions/posts';
|
||||
@@ -63,6 +65,41 @@ export function purgeOfflineStore() {
|
||||
return {type: General.OFFLINE_STORE_PURGE};
|
||||
}
|
||||
|
||||
export function createPost(post) {
|
||||
return async (dispatch, getState) => {
|
||||
const state = getState();
|
||||
const currentUserId = state.entities.users.currentUserId;
|
||||
|
||||
const timestamp = Date.now();
|
||||
const pendingPostId = post.pending_post_id || `${currentUserId}:${timestamp}`;
|
||||
|
||||
const newPost = {
|
||||
...post,
|
||||
pending_post_id: pendingPostId,
|
||||
create_at: timestamp,
|
||||
update_at: timestamp
|
||||
};
|
||||
|
||||
try {
|
||||
const payload = Client4.createPost({...newPost, create_at: 0});
|
||||
dispatch({
|
||||
type: PostTypes.RECEIVED_POSTS,
|
||||
data: {
|
||||
order: [],
|
||||
posts: {
|
||||
[payload.id]: payload
|
||||
}
|
||||
},
|
||||
channelId: payload.channel_id
|
||||
});
|
||||
} catch (error) {
|
||||
return {error};
|
||||
}
|
||||
|
||||
return {data: true};
|
||||
};
|
||||
}
|
||||
|
||||
export default {
|
||||
loadConfigAndLicense,
|
||||
loadFromPushNotification,
|
||||
|
||||
@@ -28,9 +28,10 @@ export function handleTeamChange(teamId, selectChannel = true) {
|
||||
if (selectChannel) {
|
||||
actions.push({type: ChannelTypes.SELECT_CHANNEL, data: ''});
|
||||
|
||||
const lastChannelId = state.views.team.lastChannelForTeam[teamId] || '';
|
||||
const lastChannels = state.views.team.lastChannelForTeam[teamId] || [];
|
||||
const lastChannelId = lastChannels[0] || '';
|
||||
const currentChannelId = getCurrentChannelId(state);
|
||||
viewChannel(lastChannelId, currentChannelId)(dispatch, getState);
|
||||
viewChannel(currentChannelId)(dispatch, getState);
|
||||
markChannelAsRead(lastChannelId, currentChannelId)(dispatch, getState);
|
||||
}
|
||||
|
||||
|
||||
@@ -27,16 +27,16 @@ export default class AtMention extends PureComponent {
|
||||
matchTerm: PropTypes.string,
|
||||
onChangeText: PropTypes.func.isRequired,
|
||||
outChannel: PropTypes.array,
|
||||
postDraft: PropTypes.string,
|
||||
requestStatus: PropTypes.string.isRequired,
|
||||
teamMembers: PropTypes.array,
|
||||
theme: PropTypes.object.isRequired
|
||||
theme: PropTypes.object.isRequired,
|
||||
value: PropTypes.string
|
||||
};
|
||||
|
||||
static defaultProps = {
|
||||
defaultChannel: {},
|
||||
postDraft: '',
|
||||
isSearch: false
|
||||
isSearch: false,
|
||||
value: ''
|
||||
};
|
||||
|
||||
constructor(props) {
|
||||
@@ -144,8 +144,8 @@ export default class AtMention extends PureComponent {
|
||||
};
|
||||
|
||||
completeMention = (mention) => {
|
||||
const {cursorPosition, isSearch, onChangeText, postDraft} = this.props;
|
||||
const mentionPart = postDraft.substring(0, cursorPosition);
|
||||
const {cursorPosition, isSearch, onChangeText, value} = this.props;
|
||||
const mentionPart = value.substring(0, cursorPosition);
|
||||
|
||||
let completedDraft;
|
||||
if (isSearch) {
|
||||
@@ -154,8 +154,8 @@ export default class AtMention extends PureComponent {
|
||||
completedDraft = mentionPart.replace(AT_MENTION_REGEX, `@${mention} `);
|
||||
}
|
||||
|
||||
if (postDraft.length > cursorPosition) {
|
||||
completedDraft += postDraft.substring(cursorPosition);
|
||||
if (value.length > cursorPosition) {
|
||||
completedDraft += value.substring(cursorPosition);
|
||||
}
|
||||
|
||||
onChangeText(completedDraft, true);
|
||||
|
||||
@@ -19,25 +19,10 @@ import {getTheme} from 'mattermost-redux/selectors/entities/preferences';
|
||||
import AtMention from './at_mention';
|
||||
|
||||
function mapStateToProps(state, ownProps) {
|
||||
const {cursorPosition, isSearch, rootId} = ownProps;
|
||||
const {cursorPosition, isSearch} = ownProps;
|
||||
const currentChannelId = getCurrentChannelId(state);
|
||||
|
||||
let postDraft = '';
|
||||
if (isSearch) {
|
||||
postDraft = state.views.search;
|
||||
} else if (ownProps.rootId) {
|
||||
const threadDraft = state.views.thread.drafts[rootId];
|
||||
if (threadDraft) {
|
||||
postDraft = threadDraft.draft;
|
||||
}
|
||||
} else if (currentChannelId) {
|
||||
const channelDraft = state.views.channel.drafts[currentChannelId];
|
||||
if (channelDraft) {
|
||||
postDraft = channelDraft.draft;
|
||||
}
|
||||
}
|
||||
|
||||
const value = postDraft.substring(0, cursorPosition);
|
||||
const value = ownProps.value.substring(0, cursorPosition);
|
||||
const matchTerm = getMatchTermForAtMention(value, isSearch);
|
||||
|
||||
let teamMembers;
|
||||
@@ -54,14 +39,12 @@ function mapStateToProps(state, ownProps) {
|
||||
currentChannelId,
|
||||
currentTeamId: getCurrentTeamId(state),
|
||||
defaultChannel: getDefaultChannel(state),
|
||||
postDraft,
|
||||
matchTerm,
|
||||
teamMembers,
|
||||
inChannel,
|
||||
outChannel,
|
||||
requestStatus: state.requests.users.autocompleteUsers.status,
|
||||
theme: getTheme(state),
|
||||
...ownProps
|
||||
theme: getTheme(state)
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -24,16 +24,16 @@ export default class ChannelMention extends PureComponent {
|
||||
myChannels: PropTypes.array,
|
||||
otherChannels: PropTypes.array,
|
||||
onChangeText: PropTypes.func.isRequired,
|
||||
postDraft: PropTypes.string,
|
||||
privateChannels: PropTypes.array,
|
||||
publicChannels: PropTypes.array,
|
||||
requestStatus: PropTypes.string.isRequired,
|
||||
theme: PropTypes.object.isRequired
|
||||
theme: PropTypes.object.isRequired,
|
||||
value: PropTypes.string
|
||||
};
|
||||
|
||||
static defaultProps = {
|
||||
postDraft: '',
|
||||
isSearch: false
|
||||
isSearch: false,
|
||||
value: ''
|
||||
};
|
||||
|
||||
constructor(props) {
|
||||
@@ -116,8 +116,8 @@ export default class ChannelMention extends PureComponent {
|
||||
}
|
||||
|
||||
completeMention = (mention) => {
|
||||
const {cursorPosition, isSearch, onChangeText, postDraft} = this.props;
|
||||
const mentionPart = postDraft.substring(0, cursorPosition);
|
||||
const {cursorPosition, isSearch, onChangeText, value} = this.props;
|
||||
const mentionPart = value.substring(0, cursorPosition);
|
||||
|
||||
let completedDraft;
|
||||
if (isSearch) {
|
||||
@@ -127,8 +127,8 @@ export default class ChannelMention extends PureComponent {
|
||||
completedDraft = mentionPart.replace(CHANNEL_MENTION_REGEX, `~${mention} `);
|
||||
}
|
||||
|
||||
if (postDraft.length > cursorPosition) {
|
||||
completedDraft += postDraft.substring(cursorPosition);
|
||||
if (value.length > cursorPosition) {
|
||||
completedDraft += value.substring(cursorPosition);
|
||||
}
|
||||
|
||||
onChangeText(completedDraft, true);
|
||||
|
||||
@@ -5,7 +5,6 @@ import {bindActionCreators} from 'redux';
|
||||
import {connect} from 'react-redux';
|
||||
|
||||
import {searchChannels} from 'mattermost-redux/actions/channels';
|
||||
import {getCurrentChannelId} from 'mattermost-redux/selectors/entities/channels';
|
||||
import {getCurrentTeamId} from 'mattermost-redux/selectors/entities/teams';
|
||||
|
||||
import {
|
||||
@@ -20,25 +19,9 @@ import {getTheme} from 'mattermost-redux/selectors/entities/preferences';
|
||||
import ChannelMention from './channel_mention';
|
||||
|
||||
function mapStateToProps(state, ownProps) {
|
||||
const {cursorPosition, isSearch, rootId} = ownProps;
|
||||
const currentChannelId = getCurrentChannelId(state);
|
||||
const {cursorPosition, isSearch} = ownProps;
|
||||
|
||||
let postDraft = '';
|
||||
if (isSearch) {
|
||||
postDraft = state.views.search;
|
||||
} else if (rootId) {
|
||||
const threadDraft = state.views.thread.drafts[rootId];
|
||||
if (threadDraft) {
|
||||
postDraft = threadDraft.draft;
|
||||
}
|
||||
} else if (currentChannelId) {
|
||||
const channelDraft = state.views.channel.drafts[currentChannelId];
|
||||
if (channelDraft) {
|
||||
postDraft = channelDraft.draft;
|
||||
}
|
||||
}
|
||||
|
||||
const value = postDraft.substring(0, cursorPosition);
|
||||
const value = ownProps.value.substring(0, cursorPosition);
|
||||
const matchTerm = getMatchTermForChannelMention(value, isSearch);
|
||||
|
||||
let myChannels;
|
||||
@@ -61,7 +44,6 @@ function mapStateToProps(state, ownProps) {
|
||||
privateChannels,
|
||||
currentTeamId: getCurrentTeamId(state),
|
||||
matchTerm,
|
||||
postDraft,
|
||||
requestStatus: state.requests.channels.getChannels.status,
|
||||
theme: getTheme(state)
|
||||
};
|
||||
|
||||
@@ -22,25 +22,25 @@ export default class EmojiSuggestion extends Component {
|
||||
}).isRequired,
|
||||
cursorPosition: PropTypes.number,
|
||||
emojis: PropTypes.array.isRequired,
|
||||
postDraft: PropTypes.string,
|
||||
theme: PropTypes.object.isRequired,
|
||||
onChangeText: PropTypes.func.isRequired,
|
||||
rootId: PropTypes.string
|
||||
rootId: PropTypes.string,
|
||||
value: PropTypes.string
|
||||
};
|
||||
|
||||
static defaultProps = {
|
||||
defaultChannel: {},
|
||||
postDraft: ''
|
||||
value: ''
|
||||
};
|
||||
|
||||
state = {
|
||||
active: false,
|
||||
dataSource: []
|
||||
}
|
||||
};
|
||||
|
||||
componentWillReceiveProps(nextProps) {
|
||||
const regex = EMOJI_REGEX;
|
||||
const match = nextProps.postDraft.substring(0, nextProps.cursorPosition).match(regex);
|
||||
const match = nextProps.value.substring(0, nextProps.cursorPosition).match(regex);
|
||||
|
||||
if (!match || this.state.emojiComplete) {
|
||||
this.setState({
|
||||
@@ -74,8 +74,8 @@ export default class EmojiSuggestion extends Component {
|
||||
}
|
||||
|
||||
completeSuggestion = (emoji) => {
|
||||
const {actions, cursorPosition, onChangeText, postDraft, rootId} = this.props;
|
||||
const emojiPart = postDraft.substring(0, cursorPosition);
|
||||
const {actions, cursorPosition, onChangeText, value, rootId} = this.props;
|
||||
const emojiPart = value.substring(0, cursorPosition);
|
||||
|
||||
if (emojiPart.startsWith('+:')) {
|
||||
actions.addReactionToLatestPost(emoji, rootId);
|
||||
@@ -83,8 +83,8 @@ export default class EmojiSuggestion extends Component {
|
||||
} else {
|
||||
let completedDraft = emojiPart.replace(EMOJI_REGEX, `:${emoji}: `);
|
||||
|
||||
if (postDraft.length > cursorPosition) {
|
||||
completedDraft += postDraft.substring(cursorPosition);
|
||||
if (value.length > cursorPosition) {
|
||||
completedDraft += value.substring(cursorPosition);
|
||||
}
|
||||
|
||||
onChangeText(completedDraft);
|
||||
|
||||
@@ -25,26 +25,11 @@ const getEmojisByName = createSelector(
|
||||
}
|
||||
);
|
||||
|
||||
function mapStateToProps(state, ownProps) {
|
||||
const {currentChannelId} = state.entities.channels;
|
||||
function mapStateToProps(state) {
|
||||
const emojis = getEmojisByName(state);
|
||||
|
||||
let postDraft;
|
||||
if (ownProps.rootId) {
|
||||
const threadDraft = state.views.thread.drafts[ownProps.rootId];
|
||||
if (threadDraft) {
|
||||
postDraft = threadDraft.draft;
|
||||
}
|
||||
} else if (currentChannelId) {
|
||||
const channelDraft = state.views.channel.drafts[currentChannelId];
|
||||
if (channelDraft) {
|
||||
postDraft = channelDraft.draft;
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
emojis,
|
||||
postDraft,
|
||||
theme: getTheme(state)
|
||||
};
|
||||
}
|
||||
|
||||
@@ -17,7 +17,8 @@ export default class Autocomplete extends PureComponent {
|
||||
static propTypes = {
|
||||
onChangeText: PropTypes.func.isRequired,
|
||||
rootId: PropTypes.string,
|
||||
isSearch: PropTypes.bool
|
||||
isSearch: PropTypes.bool,
|
||||
value: PropTypes.string
|
||||
};
|
||||
|
||||
static defaultProps = {
|
||||
|
||||
@@ -32,7 +32,6 @@ export default class Badge extends PureComponent {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
|
||||
this.width = 0;
|
||||
this.mounted = false;
|
||||
}
|
||||
|
||||
@@ -67,6 +66,8 @@ export default class Badge extends PureComponent {
|
||||
};
|
||||
|
||||
onLayout = (e) => {
|
||||
const height = Math.max(e.nativeEvent.layout.height, this.props.minHeight);
|
||||
const borderRadius = height / 2;
|
||||
let width;
|
||||
|
||||
if (e.nativeEvent.layout.width <= e.nativeEvent.layout.height) {
|
||||
@@ -75,26 +76,14 @@ export default class Badge extends PureComponent {
|
||||
width = e.nativeEvent.layout.width + this.props.extraPaddingHorizontal;
|
||||
}
|
||||
width = Math.max(width, this.props.minWidth);
|
||||
if (this.width === width) {
|
||||
return;
|
||||
}
|
||||
this.width = width;
|
||||
const height = Math.max(e.nativeEvent.layout.height, this.props.minHeight);
|
||||
const borderRadius = height / 2;
|
||||
this.setNativeProps({
|
||||
style: {
|
||||
width,
|
||||
height,
|
||||
borderRadius
|
||||
borderRadius,
|
||||
opacity: 1
|
||||
}
|
||||
});
|
||||
setTimeout(() => {
|
||||
this.setNativeProps({
|
||||
style: {
|
||||
opacity: 1
|
||||
}
|
||||
});
|
||||
}, 100);
|
||||
};
|
||||
|
||||
renderText = () => {
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
import React, {PureComponent} from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import {
|
||||
InteractionManager,
|
||||
SectionList,
|
||||
Text,
|
||||
TouchableHighlight,
|
||||
@@ -298,18 +299,17 @@ class List extends PureComponent {
|
||||
}, 100);
|
||||
|
||||
updateUnreadIndicators = ({viewableItems}) => {
|
||||
const {unreadChannelIds} = this.props;
|
||||
const firstUnread = unreadChannelIds[0];
|
||||
if (firstUnread) {
|
||||
const isVisible = viewableItems.find((v) => v.item === firstUnread);
|
||||
InteractionManager.runAfterInteractions(() => {
|
||||
const {unreadChannelIds} = this.props;
|
||||
const firstUnread = unreadChannelIds.length && unreadChannelIds[0];
|
||||
if (firstUnread && viewableItems.length) {
|
||||
const isVisible = viewableItems.find((v) => v.item === firstUnread);
|
||||
|
||||
if (isVisible) {
|
||||
return this.emitUnreadIndicatorChange(false);
|
||||
return this.emitUnreadIndicatorChange(!isVisible);
|
||||
}
|
||||
return this.emitUnreadIndicatorChange(true);
|
||||
}
|
||||
|
||||
return this.emitUnreadIndicatorChange(false);
|
||||
return this.emitUnreadIndicatorChange(false);
|
||||
});
|
||||
};
|
||||
|
||||
render() {
|
||||
@@ -333,7 +333,7 @@ class List extends PureComponent {
|
||||
stickySectionHeadersEnabled={false}
|
||||
viewabilityConfig={{
|
||||
viewAreaCoveragePercentThreshold: 3,
|
||||
waitForInteraction: false
|
||||
waitForInteraction: true
|
||||
}}
|
||||
/>
|
||||
<UnreadIndicator
|
||||
|
||||
@@ -11,18 +11,21 @@ import {removeProtocol} from 'app/utils/url';
|
||||
|
||||
import TeamsListItem from './teams_list_item.js';
|
||||
|
||||
function mapStateToProps(state, ownProps) {
|
||||
const team = getTeam(state, ownProps.teamId);
|
||||
function makeMapStateToProps() {
|
||||
const getMentionCount = makeGetBadgeCountForTeamId();
|
||||
|
||||
return {
|
||||
currentTeamId: getCurrentTeamId(state),
|
||||
currentUrl: removeProtocol(getCurrentUrl(state)),
|
||||
displayName: team.display_name,
|
||||
mentionCount: getMentionCount(state, ownProps.teamId),
|
||||
name: team.name,
|
||||
theme: getTheme(state)
|
||||
return function mapStateToProps(state, ownProps) {
|
||||
const team = getTeam(state, ownProps.teamId);
|
||||
|
||||
return {
|
||||
currentTeamId: getCurrentTeamId(state),
|
||||
currentUrl: removeProtocol(getCurrentUrl(state)),
|
||||
displayName: team.display_name,
|
||||
mentionCount: getMentionCount(state, ownProps.teamId),
|
||||
name: team.name,
|
||||
theme: getTheme(state)
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(TeamsListItem);
|
||||
export default connect(makeMapStateToProps)(TeamsListItem);
|
||||
|
||||
@@ -306,8 +306,9 @@ class ChannelIntro extends PureComponent {
|
||||
};
|
||||
|
||||
render() {
|
||||
const {isLoadingPosts, theme} = this.props;
|
||||
const {currentChannel, isLoadingPosts, theme} = this.props;
|
||||
const style = getStyleSheet(theme);
|
||||
const channelType = currentChannel.type;
|
||||
|
||||
if (isLoadingPosts) {
|
||||
return (
|
||||
@@ -317,14 +318,23 @@ class ChannelIntro extends PureComponent {
|
||||
);
|
||||
}
|
||||
|
||||
let profiles;
|
||||
if (channelType === General.DM_CHANNEL || channelType === General.GM_CHANNEL) {
|
||||
profiles = (
|
||||
<View>
|
||||
<View style={style.profilesContainer}>
|
||||
{this.buildProfiles()}
|
||||
</View>
|
||||
<View style={style.namesContainer}>
|
||||
{this.buildNames()}
|
||||
</View>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
||||
return (
|
||||
<View style={style.container}>
|
||||
<View style={style.profilesContainer}>
|
||||
{this.buildProfiles()}
|
||||
</View>
|
||||
<View style={style.namesContainer}>
|
||||
{this.buildNames()}
|
||||
</View>
|
||||
{profiles}
|
||||
<View style={style.contentContainer}>
|
||||
{this.buildContent()}
|
||||
</View>
|
||||
|
||||
@@ -21,13 +21,13 @@ export default class Drawer extends BaseDrawer {
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
this.keyboardDidShowListener = Keyboard.addListener('keyboardDidShow', this.keyboardDidShow);
|
||||
this.keyboardDidHideListener = Keyboard.addListener('keyboardDidHide', this.keyboardDidHide);
|
||||
Keyboard.addListener('keyboardDidShow', this.keyboardDidShow);
|
||||
Keyboard.addListener('keyboardDidHide', this.keyboardDidHide);
|
||||
}
|
||||
|
||||
componentWillUnmount() {
|
||||
this.keyboardDidShowListener.remove();
|
||||
this.keyboardDidHideListener.remove();
|
||||
Keyboard.removeListener('keyboardDidShow', this.keyboardDidShow);
|
||||
Keyboard.removeListener('keyboardDidHide', this.keyboardDidHide);
|
||||
}
|
||||
|
||||
getMainHeight = () => '100%';
|
||||
|
||||
@@ -126,7 +126,7 @@ export default class OfflineIndicator extends Component {
|
||||
switch (this.state.network) {
|
||||
case OFFLINE:
|
||||
i18nId = 'mobile.offlineIndicator.offline';
|
||||
defaultMessage = 'No internet connection';
|
||||
defaultMessage = 'Cannot connect to the server';
|
||||
break;
|
||||
case CONNECTING:
|
||||
i18nId = 'mobile.offlineIndicator.connecting';
|
||||
|
||||
@@ -251,11 +251,16 @@ class Post extends PureComponent {
|
||||
};
|
||||
|
||||
handlePress = () => {
|
||||
const {post, onPress} = this.props;
|
||||
const {
|
||||
isSearchResult,
|
||||
onPress,
|
||||
post
|
||||
} = this.props;
|
||||
|
||||
if (!isToolTipShowing) {
|
||||
if (onPress && post.state !== Posts.POST_DELETED && !isSystemMessage(post) && !isPostPendingOrFailed(post)) {
|
||||
preventDoubleTap(onPress, null, post);
|
||||
} else if (isPostEphemeral(post)) {
|
||||
} else if (!isSearchResult && isPostEphemeral(post)) {
|
||||
preventDoubleTap(this.onRemovePost, this, post);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@ import React, {PureComponent} from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import {
|
||||
Image,
|
||||
ImageBackground,
|
||||
Linking,
|
||||
Platform,
|
||||
StyleSheet,
|
||||
@@ -185,7 +186,7 @@ export default class PostBodyAdditionalContent extends PureComponent {
|
||||
{...this.responder}
|
||||
onPress={this.playYouTubeVideo}
|
||||
>
|
||||
<Image
|
||||
<ImageBackground
|
||||
style={[styles.image, {width, height}]}
|
||||
source={{uri: imgUrl}}
|
||||
resizeMode={'cover'}
|
||||
@@ -197,7 +198,7 @@ export default class PostBodyAdditionalContent extends PureComponent {
|
||||
onPress={this.playYouTubeVideo}
|
||||
/>
|
||||
</TouchableWithoutFeedback>
|
||||
</Image>
|
||||
</ImageBackground>
|
||||
</TouchableWithoutFeedback>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved.
|
||||
// See License.txt for license information.
|
||||
|
||||
import React from 'react';
|
||||
import React, {PureComponent} from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import {Image, TouchableOpacity, View} from 'react-native';
|
||||
|
||||
@@ -12,29 +12,47 @@ import webhookIcon from 'assets/images/icons/webhook.jpg';
|
||||
|
||||
const PROFILE_PICTURE_SIZE = 32;
|
||||
|
||||
function PostProfilePicture(props) {
|
||||
const {
|
||||
enablePostIconOverride,
|
||||
fromWebHook,
|
||||
isSystemMessage,
|
||||
onViewUserProfile,
|
||||
overrideIconUrl,
|
||||
theme,
|
||||
userId
|
||||
} = props;
|
||||
if (isSystemMessage) {
|
||||
return (
|
||||
<View>
|
||||
<AppIcon
|
||||
color={theme.centerChannelColor}
|
||||
height={PROFILE_PICTURE_SIZE}
|
||||
width={PROFILE_PICTURE_SIZE}
|
||||
/>
|
||||
</View>
|
||||
);
|
||||
} else if (fromWebHook) {
|
||||
if (enablePostIconOverride) {
|
||||
export default class PostProfilePicture extends PureComponent {
|
||||
static propTypes = {
|
||||
enablePostIconOverride: PropTypes.bool,
|
||||
fromWebHook: PropTypes.bool,
|
||||
isSystemMessage: PropTypes.bool,
|
||||
overrideIconUrl: PropTypes.string,
|
||||
onViewUserProfile: PropTypes.func,
|
||||
theme: PropTypes.object,
|
||||
userId: PropTypes.string
|
||||
};
|
||||
|
||||
static defaultProps = {
|
||||
onViewUserProfile: emptyFunction
|
||||
};
|
||||
|
||||
render() {
|
||||
const {
|
||||
enablePostIconOverride,
|
||||
fromWebHook,
|
||||
isSystemMessage,
|
||||
onViewUserProfile,
|
||||
overrideIconUrl,
|
||||
theme,
|
||||
userId
|
||||
} = this.props;
|
||||
|
||||
if (isSystemMessage) {
|
||||
return (
|
||||
<View>
|
||||
<AppIcon
|
||||
color={theme.centerChannelColor}
|
||||
height={PROFILE_PICTURE_SIZE}
|
||||
width={PROFILE_PICTURE_SIZE}
|
||||
/>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
||||
if (fromWebHook && enablePostIconOverride) {
|
||||
const icon = overrideIconUrl ? {uri: overrideIconUrl} : webhookIcon;
|
||||
|
||||
return (
|
||||
<View>
|
||||
<Image
|
||||
@@ -49,36 +67,21 @@ function PostProfilePicture(props) {
|
||||
);
|
||||
}
|
||||
|
||||
return (
|
||||
let component = (
|
||||
<ProfilePicture
|
||||
userId={userId}
|
||||
size={PROFILE_PICTURE_SIZE}
|
||||
/>
|
||||
);
|
||||
|
||||
if (!fromWebHook) {
|
||||
component = (
|
||||
<TouchableOpacity onPress={onViewUserProfile}>
|
||||
{component}
|
||||
</TouchableOpacity>
|
||||
);
|
||||
}
|
||||
|
||||
return component;
|
||||
}
|
||||
|
||||
return (
|
||||
<TouchableOpacity onPress={onViewUserProfile}>
|
||||
<ProfilePicture
|
||||
userId={userId}
|
||||
size={PROFILE_PICTURE_SIZE}
|
||||
/>
|
||||
</TouchableOpacity>
|
||||
);
|
||||
}
|
||||
|
||||
PostProfilePicture.propTypes = {
|
||||
enablePostIconOverride: PropTypes.bool,
|
||||
fromWebHook: PropTypes.bool,
|
||||
isSystemMessage: PropTypes.bool,
|
||||
overrideIconUrl: PropTypes.string,
|
||||
onViewUserProfile: PropTypes.func,
|
||||
theme: PropTypes.object,
|
||||
userId: PropTypes.string
|
||||
};
|
||||
|
||||
PostProfilePicture.defaultProps = {
|
||||
onViewUserProfile: emptyFunction
|
||||
};
|
||||
|
||||
export default PostProfilePicture;
|
||||
|
||||
@@ -16,7 +16,7 @@ export default class PaperClipIcon extends Component {
|
||||
if (this.root) {
|
||||
this.root.setNativeProps(nativeProps);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
render() {
|
||||
return (
|
||||
|
||||
@@ -3,16 +3,7 @@
|
||||
|
||||
import React, {PureComponent} from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import {
|
||||
Alert,
|
||||
BackHandler,
|
||||
Keyboard,
|
||||
Platform,
|
||||
Text,
|
||||
TextInput,
|
||||
TouchableOpacity,
|
||||
View
|
||||
} from 'react-native';
|
||||
import {Alert, BackHandler, Keyboard, Platform, Text, TextInput, TouchableOpacity, View} from 'react-native';
|
||||
import {injectIntl, intlShape} from 'react-intl';
|
||||
import {RequestStatus} from 'mattermost-redux/constants';
|
||||
|
||||
@@ -62,11 +53,16 @@ class PostTextbox extends PureComponent {
|
||||
value: ''
|
||||
};
|
||||
|
||||
state = {
|
||||
contentHeight: INITIAL_HEIGHT,
|
||||
inputWidth: null,
|
||||
keyboardType: 'default'
|
||||
};
|
||||
constructor(props) {
|
||||
super(props);
|
||||
|
||||
this.state = {
|
||||
contentHeight: INITIAL_HEIGHT,
|
||||
inputWidth: null,
|
||||
keyboardType: 'default',
|
||||
value: props.value
|
||||
};
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
if (Platform.OS === 'android') {
|
||||
@@ -76,8 +72,54 @@ class PostTextbox extends PureComponent {
|
||||
}
|
||||
|
||||
componentWillReceiveProps(nextProps) {
|
||||
if (nextProps.channelId !== this.props.channelId || nextProps.rootId !== this.props.rootId) {
|
||||
this.setState({value: nextProps.value});
|
||||
}
|
||||
}
|
||||
|
||||
componentWillUnmount() {
|
||||
if (Platform.OS === 'android') {
|
||||
Keyboard.removeListener('keyboardDidHide', this.handleAndroidKeyboard);
|
||||
BackHandler.removeEventListener('hardwareBackPress', this.handleAndroidBack);
|
||||
}
|
||||
}
|
||||
|
||||
attachAutocomplete = (c) => {
|
||||
this.autocomplete = c;
|
||||
};
|
||||
|
||||
blur = () => {
|
||||
this.refs.input.blur();
|
||||
};
|
||||
|
||||
canSend = () => {
|
||||
const {files, uploadFileRequestStatus} = this.props;
|
||||
const {value} = this.state;
|
||||
const valueLength = value.trim().length;
|
||||
|
||||
if (files.length) {
|
||||
return valueLength <= MAX_MESSAGE_LENGTH && uploadFileRequestStatus !== RequestStatus.STARTED && files.filter((f) => !f.failed).length > 0;
|
||||
}
|
||||
|
||||
return valueLength > 0 && valueLength <= MAX_MESSAGE_LENGTH;
|
||||
};
|
||||
|
||||
changeDraft = (text) => {
|
||||
const {
|
||||
actions,
|
||||
channelId,
|
||||
rootId
|
||||
} = this.props;
|
||||
|
||||
if (rootId) {
|
||||
actions.handleCommentDraftChanged(rootId, text);
|
||||
} else {
|
||||
actions.handlePostDraftChanged(channelId, text);
|
||||
}
|
||||
};
|
||||
|
||||
checkMessageLength = (value) => {
|
||||
const {intl} = this.props;
|
||||
const {value} = nextProps;
|
||||
const valueLength = value.trim().length;
|
||||
|
||||
if (valueLength > MAX_MESSAGE_LENGTH) {
|
||||
@@ -95,28 +137,6 @@ class PostTextbox extends PureComponent {
|
||||
})
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
componentWillUnmount() {
|
||||
if (Platform.OS === 'android') {
|
||||
Keyboard.removeListener('keyboardDidHide', this.handleAndroidKeyboard);
|
||||
BackHandler.removeEventListener('hardwareBackPress', this.handleAndroidBack);
|
||||
}
|
||||
}
|
||||
|
||||
blur = () => {
|
||||
this.refs.input.blur();
|
||||
};
|
||||
|
||||
canSend = () => {
|
||||
const {files, uploadFileRequestStatus, value} = this.props;
|
||||
const valueLength = value.trim().length;
|
||||
|
||||
if (files.length) {
|
||||
return valueLength <= MAX_MESSAGE_LENGTH && uploadFileRequestStatus !== RequestStatus.STARTED && files.filter((f) => !f.failed).length > 0;
|
||||
}
|
||||
|
||||
return valueLength > 0 && valueLength <= MAX_MESSAGE_LENGTH;
|
||||
};
|
||||
|
||||
handleAndroidKeyboard = () => {
|
||||
@@ -132,12 +152,47 @@ class PostTextbox extends PureComponent {
|
||||
return false;
|
||||
};
|
||||
|
||||
handleContentSizeChange = (event) => {
|
||||
let contentHeight = event.nativeEvent.layout.height;
|
||||
if (contentHeight < INITIAL_HEIGHT) {
|
||||
contentHeight = INITIAL_HEIGHT;
|
||||
}
|
||||
|
||||
this.setState({
|
||||
contentHeight
|
||||
});
|
||||
};
|
||||
|
||||
handleEndEditing = (e) => {
|
||||
if (e && e.nativeEvent) {
|
||||
this.changeDraft(e.nativeEvent.text || '');
|
||||
}
|
||||
};
|
||||
|
||||
handleInputSizeChange = (event) => {
|
||||
this.setState({
|
||||
inputWidth: event.nativeEvent.layout.width
|
||||
});
|
||||
};
|
||||
|
||||
handlePostDraftSelectionChanged = (event) => {
|
||||
const cursorPosition = event.nativeEvent.selection.end;
|
||||
if (this.props.rootId) {
|
||||
this.props.actions.handleCommentDraftSelectionChanged(this.props.rootId, cursorPosition);
|
||||
} else {
|
||||
this.props.actions.handlePostDraftSelectionChanged(this.props.channelId, cursorPosition);
|
||||
}
|
||||
|
||||
this.autocomplete.handleSelectionChange(event);
|
||||
};
|
||||
|
||||
handleSendMessage = () => {
|
||||
if (!this.canSend()) {
|
||||
return;
|
||||
}
|
||||
|
||||
const {files, value} = this.props;
|
||||
const {files} = this.props;
|
||||
const {value} = this.state;
|
||||
|
||||
const isReactionMatch = value.match(IS_REACTION_REGEX);
|
||||
if (isReactionMatch) {
|
||||
@@ -171,8 +226,79 @@ class PostTextbox extends PureComponent {
|
||||
}
|
||||
};
|
||||
|
||||
handleSubmit = () => {
|
||||
// Workaround for android as the multiline is not working
|
||||
if (Platform.OS === 'android') {
|
||||
if (this.timeout) {
|
||||
clearTimeout(this.timeout);
|
||||
}
|
||||
this.timeout = setTimeout(() => {
|
||||
let {value: msg} = this.state;
|
||||
msg += '\n';
|
||||
this.handleTextChange(msg);
|
||||
}, 10);
|
||||
}
|
||||
};
|
||||
|
||||
handleTextChange = (value) => {
|
||||
const {
|
||||
actions,
|
||||
channelId,
|
||||
rootId
|
||||
} = this.props;
|
||||
|
||||
this.checkMessageLength(value);
|
||||
this.setState({value});
|
||||
|
||||
if (value) {
|
||||
actions.userTyping(channelId, rootId);
|
||||
}
|
||||
};
|
||||
|
||||
handleUploadFiles = (images) => {
|
||||
this.props.actions.handleUploadFiles(images, this.props.rootId);
|
||||
};
|
||||
|
||||
renderSendButton = () => {
|
||||
const {theme, uploadFileRequestStatus} = this.props;
|
||||
const style = getStyleSheet(theme);
|
||||
|
||||
const icon = (
|
||||
<PaperPlane
|
||||
height={13}
|
||||
width={15}
|
||||
color={theme.buttonColor}
|
||||
/>
|
||||
);
|
||||
|
||||
let button = null;
|
||||
if (uploadFileRequestStatus === RequestStatus.STARTED) {
|
||||
button = (
|
||||
<View style={style.sendButtonContainer}>
|
||||
<View style={[style.sendButton, style.disableButton]}>
|
||||
{icon}
|
||||
</View>
|
||||
</View>
|
||||
);
|
||||
} else if (this.canSend()) {
|
||||
button = (
|
||||
<TouchableOpacity
|
||||
onPress={this.handleSendMessage}
|
||||
style={style.sendButtonContainer}
|
||||
>
|
||||
<View style={style.sendButton}>
|
||||
{icon}
|
||||
</View>
|
||||
</TouchableOpacity>
|
||||
);
|
||||
}
|
||||
|
||||
return button;
|
||||
};
|
||||
|
||||
sendMessage = () => {
|
||||
const {actions, currentUserId, channelId, files, rootId, value} = this.props;
|
||||
const {actions, currentUserId, channelId, files, rootId} = this.props;
|
||||
const {value} = this.state;
|
||||
|
||||
const postFiles = files.filter((f) => !f.failed);
|
||||
const post = {
|
||||
@@ -185,6 +311,7 @@ class PostTextbox extends PureComponent {
|
||||
|
||||
actions.createPost(post, postFiles);
|
||||
this.handleTextChange('');
|
||||
this.changeDraft('');
|
||||
if (postFiles.length) {
|
||||
actions.handleClearFiles(channelId, rootId);
|
||||
}
|
||||
@@ -205,139 +332,25 @@ class PostTextbox extends PureComponent {
|
||||
this.setState(nextState, callback);
|
||||
};
|
||||
|
||||
handleUploadFiles = (images) => {
|
||||
this.props.actions.handleUploadFiles(images, this.props.rootId);
|
||||
};
|
||||
|
||||
changeDraft = (text) => {
|
||||
const {
|
||||
actions,
|
||||
channelId,
|
||||
rootId
|
||||
} = this.props;
|
||||
|
||||
if (rootId) {
|
||||
actions.handleCommentDraftChanged(rootId, text);
|
||||
} else {
|
||||
actions.handlePostDraftChanged(channelId, text);
|
||||
}
|
||||
}
|
||||
|
||||
sendReaction = (emoji) => {
|
||||
const {actions, rootId} = this.props;
|
||||
actions.addReactionToLatestPost(emoji, rootId);
|
||||
this.handleTextChange('');
|
||||
}
|
||||
|
||||
handleTextChange = (text) => {
|
||||
const {
|
||||
actions,
|
||||
channelId,
|
||||
rootId
|
||||
} = this.props;
|
||||
|
||||
this.changeDraft(text);
|
||||
actions.userTyping(channelId, rootId);
|
||||
this.changeDraft('');
|
||||
};
|
||||
|
||||
handleContentSizeChange = (event) => {
|
||||
let contentHeight = event.nativeEvent.layout.height;
|
||||
if (contentHeight < INITIAL_HEIGHT) {
|
||||
contentHeight = INITIAL_HEIGHT;
|
||||
}
|
||||
|
||||
this.setState({
|
||||
contentHeight
|
||||
});
|
||||
};
|
||||
|
||||
handleInputSizeChange = (event) => {
|
||||
this.setState({
|
||||
inputWidth: event.nativeEvent.layout.width
|
||||
});
|
||||
};
|
||||
|
||||
handleSubmit = () => {
|
||||
// Workaround for android as the multiline is not working
|
||||
if (Platform.OS === 'android') {
|
||||
if (this.timeout) {
|
||||
clearTimeout(this.timeout);
|
||||
}
|
||||
this.timeout = setTimeout(() => {
|
||||
let {value: msg} = this.props;
|
||||
msg += '\n';
|
||||
this.handleTextChange(msg);
|
||||
}, 10);
|
||||
}
|
||||
};
|
||||
|
||||
attachAutocomplete = (c) => {
|
||||
this.autocomplete = c;
|
||||
};
|
||||
|
||||
renderDisabledSendButton = () => {
|
||||
const {theme} = this.props;
|
||||
const style = getStyleSheet(theme);
|
||||
|
||||
return (
|
||||
<View style={[style.sendButton, style.disableButton]}>
|
||||
<PaperPlane
|
||||
height={13}
|
||||
width={15}
|
||||
color={theme.buttonColor}
|
||||
/>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
||||
renderSendButton = () => {
|
||||
const {theme, uploadFileRequestStatus} = this.props;
|
||||
const style = getStyleSheet(theme);
|
||||
|
||||
if (uploadFileRequestStatus === RequestStatus.STARTED) {
|
||||
return this.renderDisabledSendButton();
|
||||
} else if (this.canSend()) {
|
||||
return (
|
||||
<TouchableOpacity
|
||||
onPress={this.handleSendMessage}
|
||||
style={style.sendButton}
|
||||
>
|
||||
<PaperPlane
|
||||
height={13}
|
||||
width={15}
|
||||
color={theme.buttonColor}
|
||||
/>
|
||||
</TouchableOpacity>
|
||||
);
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
handlePostDraftSelectionChanged = (event) => {
|
||||
const cursorPosition = event.nativeEvent.selection.end;
|
||||
if (this.props.rootId) {
|
||||
this.props.actions.handleCommentDraftSelectionChanged(this.props.rootId, cursorPosition);
|
||||
} else {
|
||||
this.props.actions.handlePostDraftSelectionChanged(this.props.channelId, cursorPosition);
|
||||
}
|
||||
|
||||
this.autocomplete.handleSelectionChange(event);
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
canUploadFiles,
|
||||
channelIsLoading,
|
||||
intl,
|
||||
theme,
|
||||
value
|
||||
theme
|
||||
} = this.props;
|
||||
|
||||
const style = getStyleSheet(theme);
|
||||
const textInputHeight = Math.min(this.state.contentHeight, MAX_CONTENT_HEIGHT);
|
||||
|
||||
const textValue = channelIsLoading ? '' : value;
|
||||
const textValue = channelIsLoading ? '' : this.state.value;
|
||||
|
||||
let placeholder;
|
||||
if (this.props.rootId) {
|
||||
@@ -378,8 +391,8 @@ class PostTextbox extends PureComponent {
|
||||
/>
|
||||
<Autocomplete
|
||||
ref={this.attachAutocomplete}
|
||||
onChangeText={this.changeDraft}
|
||||
rootId={this.props.rootId}
|
||||
onChangeText={this.handleTextChange}
|
||||
value={this.state.value}
|
||||
/>
|
||||
<View style={style.inputWrapper}>
|
||||
{attachmentButton}
|
||||
@@ -392,13 +405,14 @@ class PostTextbox extends PureComponent {
|
||||
placeholder={intl.formatMessage(placeholder)}
|
||||
placeholderTextColor={changeOpacity('#000', 0.5)}
|
||||
multiline={true}
|
||||
numberOfLines={10}
|
||||
numberOfLines={5}
|
||||
blurOnSubmit={false}
|
||||
underlineColorAndroid='transparent'
|
||||
style={[style.input, {height: textInputHeight}]}
|
||||
onSubmitEditing={this.handleSubmit}
|
||||
onLayout={this.handleInputSizeChange}
|
||||
keyboardType={this.state.keyboardType}
|
||||
onEndEditing={this.handleEndEditing}
|
||||
/>
|
||||
{this.renderSendButton()}
|
||||
</View>
|
||||
@@ -435,7 +449,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme) => {
|
||||
flex: 1,
|
||||
flexDirection: 'row',
|
||||
backgroundColor: '#fff',
|
||||
alignItems: 'flex-end',
|
||||
alignItems: 'stretch',
|
||||
marginRight: 10
|
||||
},
|
||||
inputContainerWithoutFileUpload: {
|
||||
@@ -449,25 +463,18 @@ const getStyleSheet = makeStyleSheetFromTheme((theme) => {
|
||||
borderTopWidth: 1,
|
||||
borderTopColor: changeOpacity(theme.centerChannelColor, 0.20)
|
||||
},
|
||||
sendButtonContainer: {
|
||||
justifyContent: 'flex-end',
|
||||
paddingHorizontal: 5,
|
||||
paddingVertical: 3
|
||||
},
|
||||
sendButton: {
|
||||
backgroundColor: theme.buttonBg,
|
||||
borderRadius: 18,
|
||||
marginRight: 5,
|
||||
height: 28,
|
||||
width: 28,
|
||||
alignItems: 'center',
|
||||
justifyContent: 'center',
|
||||
paddingLeft: 2,
|
||||
...Platform.select({
|
||||
ios: {
|
||||
marginBottom: 3
|
||||
},
|
||||
android: {
|
||||
height: 29,
|
||||
marginBottom: 4,
|
||||
width: 29
|
||||
}
|
||||
})
|
||||
justifyContent: 'center'
|
||||
}
|
||||
};
|
||||
});
|
||||
|
||||
@@ -20,8 +20,7 @@ function mapStateToProps(state, ownProps) {
|
||||
return {
|
||||
theme: ownProps.theme || getTheme(state),
|
||||
status,
|
||||
user,
|
||||
...ownProps
|
||||
user
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -71,9 +71,11 @@ export default class Swiper extends PureComponent {
|
||||
if (this.runOnLayout) {
|
||||
if (Platform.OS === 'ios') {
|
||||
setTimeout(() => {
|
||||
this.scrollView.scrollTo({x: this.props.width * this.state.index, animated: false});
|
||||
if (this.scrollView) {
|
||||
this.scrollView.scrollTo({x: this.props.width * this.state.index, animated: false});
|
||||
}
|
||||
}, 100);
|
||||
} else {
|
||||
} else if (this.scrollView) {
|
||||
this.scrollView.setPageWithoutAnimation(this.state.index);
|
||||
}
|
||||
this.runOnLayout = false;
|
||||
|
||||
@@ -45,6 +45,9 @@ const state = {
|
||||
preferences: {
|
||||
myPreferences: {}
|
||||
},
|
||||
search: {
|
||||
recent: []
|
||||
},
|
||||
typing: {}
|
||||
},
|
||||
errors: [],
|
||||
@@ -252,8 +255,7 @@ const state = {
|
||||
navigation: '',
|
||||
views: {
|
||||
channel: {
|
||||
drafts: {},
|
||||
loading: false
|
||||
drafts: {}
|
||||
},
|
||||
fetchCache: {},
|
||||
i18n: {
|
||||
@@ -270,7 +272,9 @@ const state = {
|
||||
selectServer: {
|
||||
serverUrl: Config.DefaultServerUrl
|
||||
},
|
||||
team: {},
|
||||
team: {
|
||||
lastTeamId: ''
|
||||
},
|
||||
thread: {
|
||||
drafts: {}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,6 @@ import {General} from 'mattermost-redux/constants';
|
||||
import {setAppState, setDeviceToken, setServerVersion} from 'mattermost-redux/actions/general';
|
||||
import {markChannelAsRead} from 'mattermost-redux/actions/channels';
|
||||
import {logError} from 'mattermost-redux/actions/errors';
|
||||
import {createPost} from 'mattermost-redux/actions/posts';
|
||||
import {logout} from 'mattermost-redux/actions/users';
|
||||
import {close as closeWebSocket} from 'mattermost-redux/actions/websocket';
|
||||
import {Client, Client4} from 'mattermost-redux/client';
|
||||
@@ -36,7 +35,7 @@ import {
|
||||
setStatusBarHeight
|
||||
} from 'app/actions/device';
|
||||
import {
|
||||
|
||||
createPost,
|
||||
loadConfigAndLicense,
|
||||
loadFromPushNotification,
|
||||
purgeOfflineStore
|
||||
@@ -358,6 +357,7 @@ export default class Mattermost {
|
||||
};
|
||||
|
||||
handleReset = () => {
|
||||
this.appStarted = false;
|
||||
this.resetBadgeAndVersion();
|
||||
this.startApp('fade');
|
||||
};
|
||||
@@ -560,6 +560,7 @@ export default class Mattermost {
|
||||
|
||||
const {dispatch, getState} = this.store;
|
||||
await loadConfigAndLicense()(dispatch, getState);
|
||||
this.appStarted = false;
|
||||
this.startApp('fade');
|
||||
};
|
||||
|
||||
@@ -607,6 +608,8 @@ export default class Mattermost {
|
||||
},
|
||||
animationType
|
||||
});
|
||||
|
||||
this.appStarted = true;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -8,6 +8,7 @@ const CATEGORY = 'CAN_REPLY';
|
||||
const REPLY_ACTION = 'REPLY_ACTION';
|
||||
|
||||
let replyCategory;
|
||||
const replies = new Set();
|
||||
|
||||
class PushNotification {
|
||||
constructor() {
|
||||
@@ -74,7 +75,8 @@ class PushNotification {
|
||||
const text = action.text;
|
||||
const badge = parseInt(action.notification._badge, 10) - 1; //eslint-disable-line no-underscore-dangle
|
||||
|
||||
if (this.onReply) {
|
||||
if (this.onReply && !replies.has(action.completionKey)) {
|
||||
replies.add(action.completionKey);
|
||||
this.onReply(data, text, badge, completed);
|
||||
}
|
||||
} else {
|
||||
|
||||
@@ -64,14 +64,6 @@ class Channel extends PureComponent {
|
||||
}
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
// Mark current channel as read when opening app while logged in
|
||||
if (this.props.currentChannelId) {
|
||||
this.props.actions.markChannelAsRead(this.props.currentChannelId);
|
||||
this.props.actions.viewChannel(this.props.currentChannelId);
|
||||
}
|
||||
}
|
||||
|
||||
componentWillReceiveProps(nextProps) {
|
||||
if (nextProps.currentTeamId && this.props.currentTeamId !== nextProps.currentTeamId) {
|
||||
this.loadChannels(nextProps.currentTeamId);
|
||||
|
||||
@@ -35,7 +35,7 @@ function mapStateToProps(state) {
|
||||
const currentUserId = getCurrentUserId(state);
|
||||
const favoriteChannels = getSortedFavoriteChannelIds(state);
|
||||
const isCurrent = currentChannel.id === state.entities.channels.currentChannelId;
|
||||
const isFavorite = favoriteChannels.indexOf(currentChannel.id) > -1;
|
||||
const isFavorite = favoriteChannels && favoriteChannels.indexOf(currentChannel.id) > -1;
|
||||
const roles = getCurrentUserRoles(state);
|
||||
const canManageUsers = currentChannel.hasOwnProperty('id') ? canManageChannelMembers(state) : false;
|
||||
|
||||
|
||||
@@ -91,7 +91,10 @@ export default class ImagePreview extends PureComponent {
|
||||
|
||||
componentDidMount() {
|
||||
InteractionManager.runAfterInteractions(() => {
|
||||
this.scrollView.scrollTo({x: (this.state.currentFile) * this.props.deviceWidth, animated: false});
|
||||
if (this.scrollView) {
|
||||
this.scrollView.scrollTo({x: (this.state.currentFile) * this.props.deviceWidth, animated: false});
|
||||
}
|
||||
|
||||
Animated.timing(this.state.wrapperViewOpacity, {
|
||||
toValue: 1,
|
||||
duration: 100
|
||||
@@ -102,7 +105,9 @@ export default class ImagePreview extends PureComponent {
|
||||
componentWillReceiveProps(nextProps) {
|
||||
if (this.props.deviceWidth !== nextProps.deviceWidth) {
|
||||
InteractionManager.runAfterInteractions(() => {
|
||||
this.scrollView.scrollTo({x: (this.state.currentFile * nextProps.deviceWidth), animated: false});
|
||||
if (this.scrollView) {
|
||||
this.scrollView.scrollTo({x: (this.state.currentFile * nextProps.deviceWidth), animated: false});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -218,7 +223,7 @@ export default class ImagePreview extends PureComponent {
|
||||
}),
|
||||
intl.formatMessage({
|
||||
id: 'mobile.image_preview.deleted_post_message',
|
||||
defaultMessage: "This post and it's files have been deleted. The previewer will now be closed."
|
||||
defaultMessage: 'This post and its files have been deleted. The previewer will now be closed.'
|
||||
}),
|
||||
[{
|
||||
text: intl.formatMessage({
|
||||
|
||||
@@ -22,7 +22,6 @@ import {RequestStatus} from 'mattermost-redux/constants';
|
||||
import Autocomplete from 'app/components/autocomplete';
|
||||
import FormattedText from 'app/components/formatted_text';
|
||||
import Loading from 'app/components/loading';
|
||||
import Post from 'app/components/post';
|
||||
import PostListRetry from 'app/components/post_list_retry';
|
||||
import SearchBar from 'app/components/search_bar';
|
||||
import SearchPreview from 'app/components/search_preview';
|
||||
@@ -31,6 +30,7 @@ import {preventDoubleTap} from 'app/utils/tap';
|
||||
import {changeOpacity, makeStyleSheetFromTheme} from 'app/utils/theme';
|
||||
|
||||
import ChannelDisplayName from './channel_display_name';
|
||||
import SearchResultPost from './search_result_post';
|
||||
|
||||
const SECTION_HEIGHT = 20;
|
||||
const RECENT_LABEL_HEIGHT = 42;
|
||||
@@ -265,14 +265,10 @@ class Search extends PureComponent {
|
||||
return (
|
||||
<View>
|
||||
<ChannelDisplayName postId={item}/>
|
||||
<Post
|
||||
<SearchResultPost
|
||||
postId={item}
|
||||
renderReplies={true}
|
||||
onPress={this.previewPost}
|
||||
onReply={this.goToThread}
|
||||
isSearchResult={true}
|
||||
shouldRenderReplyButton={true}
|
||||
showFullDate={true}
|
||||
previewPost={this.previewPost}
|
||||
goToThread={this.goToThread}
|
||||
navigator={this.props.navigator}
|
||||
/>
|
||||
{separator}
|
||||
@@ -607,6 +603,7 @@ class Search extends PureComponent {
|
||||
ref={this.attachAutocomplete}
|
||||
onChangeText={this.handleTextChanged}
|
||||
isSearch={true}
|
||||
value={value}
|
||||
/>
|
||||
{previewComponent}
|
||||
</View>
|
||||
|
||||
19
app/screens/search/search_result_post/index.js
Normal file
19
app/screens/search/search_result_post/index.js
Normal file
@@ -0,0 +1,19 @@
|
||||
// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved.
|
||||
// See License.txt for license information.
|
||||
|
||||
import {connect} from 'react-redux';
|
||||
|
||||
import {Posts} from 'mattermost-redux/constants';
|
||||
import {getPost} from 'mattermost-redux/selectors/entities/posts';
|
||||
|
||||
import SearchResultPost from './search_result_post';
|
||||
|
||||
function mapStateToProps(state, ownProps) {
|
||||
const post = getPost(state, ownProps.postId);
|
||||
|
||||
return {
|
||||
isDeleted: post && post.state === Posts.POST_DELETED
|
||||
};
|
||||
}
|
||||
|
||||
export default connect(mapStateToProps)(SearchResultPost);
|
||||
39
app/screens/search/search_result_post/search_result_post.js
Normal file
39
app/screens/search/search_result_post/search_result_post.js
Normal file
@@ -0,0 +1,39 @@
|
||||
// Copyright (c) 201-present Mattermost, Inc. All Rights Reserved.
|
||||
// See License.txt for license information.
|
||||
|
||||
import React, {PureComponent} from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
import Post from 'app/components/post';
|
||||
|
||||
export default class SearchResultPost extends PureComponent {
|
||||
static propTypes = {
|
||||
isDeleted: PropTypes.bool.isRequired,
|
||||
goToThread: PropTypes.func.isRequired,
|
||||
navigator: PropTypes.object.isRequired,
|
||||
postId: PropTypes.string.isRequired,
|
||||
previewPost: PropTypes.func.isRequired
|
||||
};
|
||||
|
||||
render() {
|
||||
const postComponentProps = {};
|
||||
|
||||
if (this.props.isDeleted) {
|
||||
postComponentProps.shouldRenderReplyButton = false;
|
||||
} else {
|
||||
postComponentProps.onPress = this.props.previewPost;
|
||||
postComponentProps.onReply = this.props.goToThread;
|
||||
postComponentProps.shouldRenderReplyButton = true;
|
||||
}
|
||||
|
||||
return (
|
||||
<Post
|
||||
postId={this.props.postId}
|
||||
{...postComponentProps}
|
||||
isSearchResult={true}
|
||||
showFullDate={true}
|
||||
navigator={this.props.navigator}
|
||||
/>
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -11,9 +11,8 @@ import {handleUpdateUserNotifyProps} from 'app/actions/views/account_notificatio
|
||||
|
||||
import NotificationSettings from './notification_settings';
|
||||
|
||||
function mapStateToProps(state, ownProps) {
|
||||
function mapStateToProps(state) {
|
||||
return {
|
||||
...ownProps,
|
||||
config: state.entities.general.config,
|
||||
currentUser: getCurrentUser(state),
|
||||
myPreferences: getMyPreferences(state),
|
||||
|
||||
@@ -21,6 +21,7 @@ import {RadioButton, RadioButtonGroup} from 'app/components/radio_button';
|
||||
import StatusBar from 'app/components/status_bar';
|
||||
import NotificationPreferences from 'app/notification_preferences';
|
||||
import SettingsItem from 'app/screens/settings/settings_item';
|
||||
import {getNotificationProps} from 'app/utils/notify_props';
|
||||
import {preventDoubleTap} from 'app/utils/tap';
|
||||
import {changeOpacity, makeStyleSheetFromTheme} from 'app/utils/theme';
|
||||
|
||||
@@ -154,7 +155,7 @@ class NotificationSettings extends PureComponent {
|
||||
}
|
||||
|
||||
this.saveNotificationProps({
|
||||
...currentUser.notify_props,
|
||||
...getNotificationProps(currentUser),
|
||||
email,
|
||||
interval
|
||||
});
|
||||
@@ -165,7 +166,7 @@ class NotificationSettings extends PureComponent {
|
||||
const {currentUser} = this.props;
|
||||
const {user_id} = notifyProps;
|
||||
const previousProps = {
|
||||
...currentUser.notify_props,
|
||||
...getNotificationProps(currentUser),
|
||||
user_id
|
||||
};
|
||||
|
||||
@@ -184,7 +185,7 @@ class NotificationSettings extends PureComponent {
|
||||
}
|
||||
|
||||
const {config, currentUser, intl, myPreferences} = this.props;
|
||||
const notifyProps = currentUser.notify_props || {};
|
||||
const notifyProps = getNotificationProps(currentUser);
|
||||
const sendEmailNotifications = config.SendEmailNotifications === 'true';
|
||||
const emailBatchingEnabled = sendEmailNotifications && config.EnableEmailBatching === 'true';
|
||||
|
||||
|
||||
@@ -8,9 +8,8 @@ import {getMyPreferences, getTheme} from 'mattermost-redux/selectors/entities/pr
|
||||
|
||||
import NotificationSettingsEmail from './notification_settings_email';
|
||||
|
||||
function mapStateToProps(state, ownProps) {
|
||||
function mapStateToProps(state) {
|
||||
return {
|
||||
...ownProps,
|
||||
config: getConfig(state),
|
||||
myPreferences: getMyPreferences(state),
|
||||
theme: getTheme(state)
|
||||
|
||||
@@ -14,6 +14,7 @@ import {getPreferencesByCategory} from 'mattermost-redux/utils/preference_utils'
|
||||
|
||||
import FormattedText from 'app/components/formatted_text';
|
||||
import StatusBar from 'app/components/status_bar';
|
||||
import {getNotificationProps} from 'app/utils/notify_props';
|
||||
import {changeOpacity, makeStyleSheetFromTheme} from 'app/utils/theme';
|
||||
|
||||
import Section from 'app/screens/settings/section';
|
||||
@@ -33,7 +34,7 @@ export default class NotificationSettingsEmail extends PureComponent {
|
||||
super(props);
|
||||
|
||||
const {currentUser} = props;
|
||||
const notifyProps = currentUser.notify_props || {};
|
||||
const notifyProps = getNotificationProps(currentUser);
|
||||
|
||||
props.navigator.setOnNavigatorEvent(this.onNavigatorEvent);
|
||||
this.state = this.setStateFromNotifyProps(notifyProps);
|
||||
|
||||
@@ -7,9 +7,8 @@ import {getTheme} from 'mattermost-redux/selectors/entities/preferences';
|
||||
|
||||
import NotificationSettingsMentions from './notification_settings_mentions';
|
||||
|
||||
function mapStateToProps(state, ownProps) {
|
||||
function mapStateToProps(state) {
|
||||
return {
|
||||
...ownProps,
|
||||
theme: getTheme(state)
|
||||
};
|
||||
}
|
||||
|
||||
@@ -5,6 +5,8 @@ import {PureComponent} from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import {intlShape} from 'react-intl';
|
||||
|
||||
import {getNotificationProps} from 'app/utils/notify_props';
|
||||
|
||||
export default class NotificationSettingsMentionsBase extends PureComponent {
|
||||
static propTypes = {
|
||||
currentUser: PropTypes.object.isRequired,
|
||||
@@ -18,7 +20,7 @@ export default class NotificationSettingsMentionsBase extends PureComponent {
|
||||
super(props);
|
||||
|
||||
const {currentUser} = props;
|
||||
const notifyProps = currentUser.notify_props || {};
|
||||
const notifyProps = getNotificationProps(currentUser);
|
||||
|
||||
props.navigator.setOnNavigatorEvent(this.onNavigatorEvent);
|
||||
|
||||
@@ -43,7 +45,7 @@ export default class NotificationSettingsMentionsBase extends PureComponent {
|
||||
mentionKeys.splice(usernameMentionIndex, 1);
|
||||
}
|
||||
|
||||
const comments = notifyProps.comments || 'never';
|
||||
const comments = notifyProps.comments || 'any';
|
||||
|
||||
const newState = {
|
||||
...notifyProps,
|
||||
|
||||
@@ -7,9 +7,8 @@ import {getTheme} from 'mattermost-redux/selectors/entities/preferences';
|
||||
|
||||
import NotificationSettingsMentionsKeywords from './notification_settings_mentions_keywords';
|
||||
|
||||
function mapStateToProps(state, ownProps) {
|
||||
function mapStateToProps(state) {
|
||||
return {
|
||||
...ownProps,
|
||||
theme: getTheme(state)
|
||||
};
|
||||
}
|
||||
|
||||
@@ -6,6 +6,8 @@ import {Platform} from 'react-native';
|
||||
import PropTypes from 'prop-types';
|
||||
import {intlShape} from 'react-intl';
|
||||
|
||||
import {getNotificationProps} from 'app/utils/notify_props';
|
||||
|
||||
export default class NotificationSettingsMobileBase extends PureComponent {
|
||||
static propTypes = {
|
||||
config: PropTypes.object.isRequired,
|
||||
@@ -21,7 +23,7 @@ export default class NotificationSettingsMobileBase extends PureComponent {
|
||||
super(props);
|
||||
|
||||
const {currentUser} = props;
|
||||
const notifyProps = currentUser.notify_props || {};
|
||||
const notifyProps = getNotificationProps(currentUser);
|
||||
|
||||
this.state = {
|
||||
...notifyProps,
|
||||
|
||||
@@ -148,6 +148,10 @@ class UserProfile extends PureComponent {
|
||||
const {config, theme, user} = this.props;
|
||||
const style = createStyleSheet(theme);
|
||||
|
||||
if (!user) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return (
|
||||
<View style={style.container}>
|
||||
<StatusBar/>
|
||||
|
||||
@@ -25,9 +25,10 @@ export function makePreparePostIdsForPostList() {
|
||||
return createIdsSelector(
|
||||
(state, props) => getMyPosts(state, props.postIds),
|
||||
(state, props) => props.lastViewedAt,
|
||||
(state, props) => props.indicateNewMessages,
|
||||
getCurrentUserId,
|
||||
shouldShowJoinLeaveMessages,
|
||||
(posts, lastViewedAt, currentUserId, showJoinLeave) => {
|
||||
(posts, lastViewedAt, indicateNewMessages, currentUserId, showJoinLeave) => {
|
||||
if (posts.length === 0) {
|
||||
return [];
|
||||
}
|
||||
@@ -62,8 +63,8 @@ export function makePreparePostIdsForPostList() {
|
||||
}
|
||||
|
||||
// Only add the new messages line if a lastViewedAt time is set
|
||||
const postIsUnread = post.create_at > lastViewedAt;
|
||||
if (lastViewedAt != null && !addedNewMessagesIndicator && postIsUnread) {
|
||||
const postIsUnread = post.create_at > lastViewedAt && post.user_id !== currentUserId;
|
||||
if (lastViewedAt !== null && !addedNewMessagesIndicator && postIsUnread && indicateNewMessages) {
|
||||
out.push(START_OF_NEW_MESSAGES);
|
||||
addedNewMessagesIndicator = true;
|
||||
}
|
||||
|
||||
@@ -4,15 +4,16 @@
|
||||
import DeviceInfo from 'react-native-device-info';
|
||||
|
||||
import {ViewTypes} from 'app/constants';
|
||||
import initialState from 'app/initial_state';
|
||||
import Config from 'assets/config';
|
||||
|
||||
export function messageRetention() {
|
||||
return (next) => (action) => {
|
||||
if (action.type === 'persist/REHYDRATE') {
|
||||
const {app} = action.payload;
|
||||
const {entities} = action.payload;
|
||||
const {entities, views} = action.payload;
|
||||
|
||||
if (!entities) {
|
||||
if (!entities || !views) {
|
||||
return next(action);
|
||||
}
|
||||
|
||||
@@ -23,6 +24,7 @@ export function messageRetention() {
|
||||
|
||||
// Keep only the last 60 messages for the last 5 viewed channels in each team
|
||||
// and apply data retention on those posts if applies
|
||||
|
||||
return next(cleanupState(action));
|
||||
} else if (action.type === ViewTypes.DATA_CLEANUP) {
|
||||
const nextAction = cleanupState(action, true);
|
||||
@@ -36,7 +38,75 @@ export function messageRetention() {
|
||||
function resetStateForNewVersion(action) {
|
||||
const {payload} = action;
|
||||
const lastChannelForTeam = getLastChannelForTeam(payload);
|
||||
const currentUserId = payload.entities.users.currentUserId;
|
||||
|
||||
let general = initialState.entities.general;
|
||||
if (payload.entities.general) {
|
||||
general = payload.entities.general;
|
||||
}
|
||||
|
||||
let teams = initialState.entities.teams;
|
||||
if (payload.entities.teams) {
|
||||
teams = {
|
||||
currentTeamId: payload.entities.teams.currentTeamId,
|
||||
teams: payload.entities.teams.teams,
|
||||
myMembers: payload.entities.teams.myMembers
|
||||
};
|
||||
}
|
||||
|
||||
let users = initialState.entities.users;
|
||||
if (payload.entities.users) {
|
||||
const currentUserId = payload.entities.users.currentUserId;
|
||||
if (currentUserId) {
|
||||
users = {
|
||||
currentUserId,
|
||||
profiles: {
|
||||
[currentUserId]: payload.entities.users.profiles[currentUserId]
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
let preferences = initialState.entities.preferences;
|
||||
if (payload.entities.preferences) {
|
||||
preferences = payload.entities.preferences;
|
||||
}
|
||||
|
||||
let search = initialState.entities.search;
|
||||
if (payload.entities.search && payload.entities.search.recent) {
|
||||
search = {
|
||||
recent: payload.entities.search.recent
|
||||
};
|
||||
}
|
||||
|
||||
let channelDrafts = initialState.views.channel.drafts;
|
||||
if (payload.views.channel && payload.views.channel.drafts) {
|
||||
channelDrafts = payload.views.channel.drafts;
|
||||
}
|
||||
|
||||
let i18n = initialState.views.i18n;
|
||||
if (payload.views.i18n) {
|
||||
i18n = payload.views.i18n;
|
||||
}
|
||||
|
||||
let fetchCache = initialState.views.fetchCache;
|
||||
if (payload.views.fetchCache) {
|
||||
fetchCache = payload.views.fetchCache;
|
||||
}
|
||||
|
||||
let lastTeamId = initialState.views.team.lastTeamId;
|
||||
if (payload.views.team && payload.views.team.lastTeamId) {
|
||||
lastTeamId = payload.views.team.lastTeamId;
|
||||
}
|
||||
|
||||
let threadDrafts = initialState.views.thread.drafts;
|
||||
if (payload.views.thread && payload.views.thread.drafts) {
|
||||
threadDrafts = payload.views.thread.drafts;
|
||||
}
|
||||
|
||||
let selectServer = initialState.views.selectServer;
|
||||
if (payload.views.selectServer) {
|
||||
selectServer = payload.views.selectServer;
|
||||
}
|
||||
|
||||
const nextState = {
|
||||
app: {
|
||||
@@ -44,37 +114,26 @@ function resetStateForNewVersion(action) {
|
||||
version: DeviceInfo.getVersion()
|
||||
},
|
||||
entities: {
|
||||
general: payload.entities.general,
|
||||
teams: {
|
||||
currentTeamId: payload.entities.teams.currentTeamId,
|
||||
teams: payload.entities.teams.teams,
|
||||
myMembers: payload.entities.teams.myMembers
|
||||
},
|
||||
users: {
|
||||
currentUserId,
|
||||
profiles: {
|
||||
[currentUserId]: payload.entities.users.profiles[currentUserId]
|
||||
}
|
||||
},
|
||||
preferences: payload.entities.preferences,
|
||||
search: {
|
||||
recent: payload.entities.search.recent
|
||||
}
|
||||
general,
|
||||
teams,
|
||||
users,
|
||||
preferences,
|
||||
search
|
||||
},
|
||||
views: {
|
||||
channel: {
|
||||
drafts: payload.views.channel.drafts
|
||||
drafts: channelDrafts
|
||||
},
|
||||
i18n: payload.views.i18n,
|
||||
fetchCache: payload.views.fetchCache,
|
||||
i18n,
|
||||
fetchCache,
|
||||
team: {
|
||||
lastTeamId: payload.views.team.lastTeamId,
|
||||
lastTeamId,
|
||||
lastChannelForTeam
|
||||
},
|
||||
thread: {
|
||||
drafts: payload.views.thread.drafts
|
||||
drafts: threadDrafts
|
||||
},
|
||||
selectServer: payload.views.selectServer
|
||||
selectServer
|
||||
}
|
||||
};
|
||||
|
||||
@@ -102,7 +161,6 @@ function cleanupState(action, keepCurrent = false) {
|
||||
const {payload: resetPayload} = resetStateForNewVersion(action);
|
||||
const {payload} = action;
|
||||
const {currentChannelId} = payload.entities.channels;
|
||||
const {statuses, ...otherUsers} = payload.entities.users; //eslint-disable-line no-unused-vars
|
||||
|
||||
const {lastChannelForTeam} = resetPayload.views.team;
|
||||
const nextEntitites = {
|
||||
@@ -110,6 +168,7 @@ function cleanupState(action, keepCurrent = false) {
|
||||
posts: {},
|
||||
postsInChannel: {},
|
||||
reactions: {},
|
||||
openGraph: payload.entities.posts.openGraph,
|
||||
selectedPostId: payload.entities.posts.selectedPostId,
|
||||
currentFocusedPostId: payload.entities.posts.currentFocusedPostId
|
||||
},
|
||||
@@ -125,7 +184,7 @@ function cleanupState(action, keepCurrent = false) {
|
||||
// we need to check that the channel id is not already included
|
||||
// the reason it can be included is cause at least one of the last channels viewed
|
||||
// in a team can be a DM or GM and the id can be duplicate
|
||||
if (!nextEntitites.posts.postsInChannel[id]) {
|
||||
if (!nextEntitites.posts.postsInChannel[id] && payload.entities.posts.postsInChannel[id]) {
|
||||
let postIds;
|
||||
if (keepCurrent && currentChannelId === id) {
|
||||
postIds = payload.entities.posts.postsInChannel[id];
|
||||
@@ -143,30 +202,45 @@ function cleanupState(action, keepCurrent = false) {
|
||||
|
||||
postIdsToKeep.forEach((postId) => {
|
||||
const post = payload.entities.posts.posts[postId];
|
||||
const skip = keepCurrent && currentChannelId === post.channel_id;
|
||||
|
||||
if (!skip && retentionPeriod && (Date.now() - post.create_at) / (1000 * 3600 * 24) > retentionPeriod) {
|
||||
const postsInChannel = nextEntitites.posts.postsInChannel[post.channel_id];
|
||||
const index = postsInChannel.indexOf(postId);
|
||||
if (index !== -1) {
|
||||
postsInChannel.splice(index, 1);
|
||||
if (post) {
|
||||
const skip = keepCurrent && currentChannelId === post.channel_id;
|
||||
|
||||
if (!skip && retentionPeriod && (Date.now() - post.create_at) / (1000 * 3600 * 24) > retentionPeriod) {
|
||||
const postsInChannel = nextEntitites.posts.postsInChannel[post.channel_id] || [];
|
||||
const index = postsInChannel.indexOf(postId);
|
||||
if (index !== -1) {
|
||||
postsInChannel.splice(index, 1);
|
||||
}
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
nextEntitites.posts.posts[postId] = post;
|
||||
nextEntitites.posts.posts[postId] = post;
|
||||
|
||||
const reaction = payload.entities.posts.reactions[postId];
|
||||
if (reaction) {
|
||||
nextEntitites.posts.reactions[postId] = reaction;
|
||||
}
|
||||
const reaction = payload.entities.posts.reactions[postId];
|
||||
if (reaction) {
|
||||
nextEntitites.posts.reactions[postId] = reaction;
|
||||
}
|
||||
|
||||
const fileIds = payload.entities.files.fileIdsByPostId[postId];
|
||||
if (fileIds) {
|
||||
nextEntitites.files.fileIdsByPostId[postId] = fileIds;
|
||||
fileIds.forEach((fileId) => {
|
||||
nextEntitites.files.files[fileId] = payload.entities.files.files[fileId];
|
||||
});
|
||||
const fileIds = payload.entities.files.fileIdsByPostId[postId];
|
||||
if (fileIds) {
|
||||
nextEntitites.files.fileIdsByPostId[postId] = fileIds;
|
||||
fileIds.forEach((fileId) => {
|
||||
nextEntitites.files.files[fileId] = payload.entities.files.files[fileId];
|
||||
});
|
||||
}
|
||||
} else {
|
||||
// If the post is not in the store we need to remove it from the postsInChannel
|
||||
const channelIds = Object.keys(nextEntitites.posts.postsInChannel);
|
||||
for (let i = 0; i < channelIds.length; i++) {
|
||||
const channelId = channelIds[i];
|
||||
const posts = nextEntitites.posts.postsInChannel[channelId];
|
||||
const index = posts.indexOf(postId);
|
||||
if (index !== -1) {
|
||||
posts.splice(index, 1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -180,18 +254,18 @@ function cleanupState(action, keepCurrent = false) {
|
||||
preferences: resetPayload.entities.preferences,
|
||||
search: resetPayload.entities.search,
|
||||
teams: resetPayload.entities.teams,
|
||||
users: {
|
||||
...otherUsers
|
||||
}
|
||||
users: payload.entities.users
|
||||
},
|
||||
views: {
|
||||
...resetPayload.views
|
||||
...resetPayload.views,
|
||||
channel: {
|
||||
...resetPayload.views.channel,
|
||||
...payload.views.channel
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
if (keepCurrent) {
|
||||
nextState.errors = payload.errors;
|
||||
}
|
||||
nextState.errors = payload.errors;
|
||||
|
||||
return {
|
||||
type: 'persist/REHYDRATE',
|
||||
|
||||
16
app/utils/channels.js
Normal file
16
app/utils/channels.js
Normal file
@@ -0,0 +1,16 @@
|
||||
// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved.
|
||||
// See License.txt for license information.
|
||||
|
||||
import {Preferences} from 'mattermost-redux/constants';
|
||||
import {getUserIdFromChannelName} from 'mattermost-redux/utils/channel_utils';
|
||||
|
||||
export function isDirectChannelVisible(userId, myPreferences, channel) {
|
||||
const channelId = getUserIdFromChannelName(userId, channel.name);
|
||||
const dm = myPreferences[`${Preferences.CATEGORY_DIRECT_CHANNEL_SHOW}--${channelId}`];
|
||||
return dm && dm.value === 'true';
|
||||
}
|
||||
|
||||
export function isGroupChannelVisible(myPreferences, channel) {
|
||||
const gm = myPreferences[`${Preferences.CATEGORY_GROUP_CHANNEL_SHOW}--${channel.id}`];
|
||||
return gm && gm.value === 'true';
|
||||
}
|
||||
@@ -1,12 +1,18 @@
|
||||
import {NetInfo} from 'react-native';
|
||||
|
||||
export async function checkConnection() {
|
||||
// If the websocket cannot connect probably is because the Mattermost server
|
||||
// is down and we don't want to make the app think the device is offline
|
||||
const server = 'https://www.google.com';
|
||||
import {Client4} from 'mattermost-redux/client';
|
||||
|
||||
export async function checkConnection(isConnected) {
|
||||
if (Client4.getBaseRoute() === '/api/v4') {
|
||||
// If we don't have a server yet, return the default implementation
|
||||
return isConnected;
|
||||
}
|
||||
|
||||
// Ping the Mattermost server to detect if the we have network connection even if the websocket cannot connect
|
||||
const server = `${Client4.getBaseRoute()}/system/ping?time=${Date.now()}`;
|
||||
|
||||
try {
|
||||
await fetch(server);
|
||||
await fetch(server, {method: 'get'});
|
||||
return true;
|
||||
} catch (error) {
|
||||
return false;
|
||||
@@ -14,8 +20,8 @@ export async function checkConnection() {
|
||||
}
|
||||
|
||||
function handleConnectionChange(onChange) {
|
||||
return async () => {
|
||||
const result = await checkConnection();
|
||||
return async (isConnected) => {
|
||||
const result = await checkConnection(isConnected);
|
||||
onChange(result);
|
||||
};
|
||||
}
|
||||
|
||||
28
app/utils/notify_props.js
Normal file
28
app/utils/notify_props.js
Normal file
@@ -0,0 +1,28 @@
|
||||
// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved.
|
||||
// See License.txt for license information.
|
||||
|
||||
export function getNotificationProps(user) {
|
||||
if (user && user.notify_props) {
|
||||
return user.notify_props;
|
||||
}
|
||||
|
||||
const props = {
|
||||
channel: 'true',
|
||||
comments: 'any',
|
||||
desktop: 'all',
|
||||
desktop_sound: 'true',
|
||||
email: 'true',
|
||||
mention_keys: user ? `${user.username},@${user.username}` : '',
|
||||
push: 'mention',
|
||||
push_status: 'online'
|
||||
};
|
||||
|
||||
if (!user || !user.first_name) {
|
||||
props.first_name = 'false';
|
||||
} else {
|
||||
props.first_name = 'true';
|
||||
}
|
||||
|
||||
return props;
|
||||
}
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
{
|
||||
"DefaultServerUrl": "",
|
||||
"EnableMessageRetention": false,
|
||||
"MessageRetentionPeriod": 30,
|
||||
"TestServerUrl": "http://localhost:8065",
|
||||
"DefaultTheme": "default",
|
||||
"ShowErrorsList": false,
|
||||
|
||||
@@ -269,10 +269,13 @@
|
||||
"admin.database.title": "Datenbank Einstellungen",
|
||||
"admin.developer.title": "Entwickler Einstellungen",
|
||||
"admin.elasticsearch.bulkIndexButton.error": "Fehler bei der Planung des Bulk-Index-Jobs: {error}",
|
||||
"admin.elasticsearch.bulkIndexingTitle": "Bulk Indexing:",
|
||||
"admin.elasticsearch.connectionUrlDescription": "Die Adresse des Elasticsearch-Servers. {documentationLink}",
|
||||
"admin.elasticsearch.connectionUrlExample": "Z.B.: \"https://elasticsearch.example.org:9200\"",
|
||||
"admin.elasticsearch.connectionUrlExample.documentationLinkText": "Bitte die Dokumentation mit Servereinrichtungsanleitung ansehen.",
|
||||
"admin.elasticsearch.connectionUrlTitle": "Server-Verbindungsadresse:",
|
||||
"admin.elasticsearch.createJob.help": "All posts in the database will be indexed from oldest to newest. Elasticsearch is available during indexing but search results may be incomplete until the indexing job is complete.",
|
||||
"admin.elasticsearch.createJob.title": "Index Now",
|
||||
"admin.elasticsearch.elasticsearch_test_button": "Verbindung testen",
|
||||
"admin.elasticsearch.enableIndexingDescription": "Wenn wahr, geschieht die Indizierung neuer Nachrichten automatisch. Suchanfragen werden die Datenbanksuche verwenden, bis \"Elasticsearch für Suchanfragen aktivieren\" aktiviert ist. {documentationLink}",
|
||||
"admin.elasticsearch.enableIndexingDescription.documentationLinkText": "Lernen Sie mehr über Elasticsearch in unserer Dokumentation.",
|
||||
@@ -300,22 +303,6 @@
|
||||
"admin.elasticsearch.usernameDescription": "(Optional) Der Benutzername zur Authentifizierung am Elasticsearch-Server.",
|
||||
"admin.elasticsearch.usernameExample": "Z.B.: \"elastic\"",
|
||||
"admin.elasticsearch.usernameTitle": "Server-Benutzername:",
|
||||
"admin.elasticsearchStatus.bulkIndexLabel": "Bulk-Indizierung:",
|
||||
"admin.elasticsearchStatus.cancelButton": "Abbrechen",
|
||||
"admin.elasticsearchStatus.status": "Status: ",
|
||||
"admin.elasticsearchStatus.statusCancelled": "Indizierungs-Job abgebrochen.",
|
||||
"admin.elasticsearchStatus.statusError": "Indizierungsfehler.",
|
||||
"admin.elasticsearchStatus.statusError.help": "Mattermost hat einen Fehler beim Erstellen des Elasticsearch-Indexes festgestellt: {error}",
|
||||
"admin.elasticsearchStatus.statusInProgress": "Job läuft. {percent}% abgeschlossen.",
|
||||
"admin.elasticsearchStatus.statusInProgress.help": "Indizierung läuft auf dem Job-Server. Falls Elasticsearch aktiviert ist, könnten Suchergebnisse unvollständig sein, bis der Job abgeschlossen ist.",
|
||||
"admin.elasticsearchStatus.statusIndexingDisabled": "Indizierung deaktiviert.",
|
||||
"admin.elasticsearchStatus.statusLoading": "Lade...",
|
||||
"admin.elasticsearchStatus.statusNoJobs": "Keine Indizierungs-Jobs in Warteschlange.",
|
||||
"admin.elasticsearchStatus.statusPending": "Job bevorstehend.",
|
||||
"admin.elasticsearchStatus.statusPending.help": "Elasticsearch-Indizierungs-Job ist in der Warteschlange auf dem Job-Server. Falls Elasticsearch aktiviert ist, könnten Suchergebnisse unvollständig sein, bis der Job abgeschlossen ist.",
|
||||
"admin.elasticsearchStatus.statusRequestCancel": "Job wird abgebrochen...",
|
||||
"admin.elasticsearchStatus.statusSuccess": "Indizierung abgeschlossen.",
|
||||
"admin.elasticsearchStatus.statusSuccess.help": "Indizierung ist abgeschlossen und neue Beiträge werden automatisch indiziert.",
|
||||
"admin.email.agreeHPNS": " Ich verstehe und akzeptiere <a href=\"https://about.mattermost.com/hpns-terms/\" target='_blank'>die Bedingungen</a> des Mattermost Hosted Push Notification Service Terms of Service und die <a href=\"https://about.mattermost.com/hpns-privacy/\" target='_blank'>Datenschutzerklärung</a>.",
|
||||
"admin.email.allowEmailSignInDescription": "Wenn wahr, erlaubt Mattermost Nutzern sich mit E-Mail und Passwort anzumelden.",
|
||||
"admin.email.allowEmailSignInTitle": "Erlaube Login mit E-Mail: ",
|
||||
@@ -548,6 +535,8 @@
|
||||
"admin.ldap.emailAttrEx": "Z.B.: \"mail\" oder \"userPrincipalName\"",
|
||||
"admin.ldap.emailAttrTitle": "E-Mail Attribut:",
|
||||
"admin.ldap.enableDesc": "Wenn wahr, erlaubt Mattermost den Login mit AD/LDAP",
|
||||
"admin.ldap.enableSyncDesc": "When true, Mattermost periodically synchronizes users from AD/LDAP.",
|
||||
"admin.ldap.enableSyncTitle": "Enable Synchronization with AD/LDAP:",
|
||||
"admin.ldap.enableTitle": "Erlaube Login mit AD/LDAP:",
|
||||
"admin.ldap.firstnameAttrDesc": "(Optional) Das Attribut im AD/LDAP-Serves, das dazu verwendet wird, den Vornamen von Nutzern in Mattermost zu füllen. Wenn aktiv, können Nutzer ihren Vornamen nicht ändern, da er mit dem LDAP-Server synchronisiert wird. Wenn nicht gesetzt, können Nutzer ihren eigenen Vornamen in den Kontoeinstellungen ändern.",
|
||||
"admin.ldap.firstnameAttrEx": "Z.B.: \"givenName\"",
|
||||
@@ -640,6 +629,7 @@
|
||||
"admin.logs.title": "Serverprotokoll",
|
||||
"admin.manage_roles.additionalRoles": "Weitere Berechtigungen für das Konto auswählen. <a href=\"https://about.mattermost.com/default-permissions\" target=\"_blank\">Mehr über Rollen und Berechtigungen lesen</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokens": "Diesem Konto erlauben, <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">persönliche Zugriffs-Token</a> zu generieren.",
|
||||
"admin.manage_roles.allowUserAccessTokensDesc": "Removing this permission doesn't delete existing tokens. To delete them, go to the user's Manage Tokens menu.",
|
||||
"admin.manage_roles.cancel": "Abbrechen",
|
||||
"admin.manage_roles.manageRolesTitle": "Rollen verwalten",
|
||||
"admin.manage_roles.postAllPublicRole": "Zugriff zum Senden in alle öffentlichen Mattermost-Kanäle.",
|
||||
@@ -651,7 +641,7 @@
|
||||
"admin.manage_roles.systemAdmin": "Systemadministrator",
|
||||
"admin.manage_roles.systemMember": "Mitglied",
|
||||
"admin.manage_tokens.manageTokensTitle": "Persönliche Zugriffs-Token verwalten",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Persönliche Zugriffs-Token funktionieren ähnlich wie Sitzungs-Token und können von Integrationen zur <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">Interaktion mit diesem Mattermost Server</a> verwendet werden. Lernen Sie mehr über <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Benutzer-Zugriffs-Token</a>.",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Persönliche Zugriffs-Token funktionieren ähnlich wie Sitzungs-Token und können von Integrationen zur <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">Interaktion mit diesem Mattermost-Server</a> verwendet werden. Lernen Sie mehr über <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Benutzer-Zugriffs-Token</a>.",
|
||||
"admin.manage_tokens.userAccessTokensNone": "Keine persönlichen Zugriffs-Token.",
|
||||
"admin.metrics.enableDescription": "Wenn wahr, wird Mattermost Performance-Daten sammeln und profilieren. Bitte schauen Sie in die <a href=\"http://docs.mattermost.com/deployment/metrics.html\" target='_blank'>Dokumentation</a> um mehr über die Konfiguration von Performanceüberwachung für Mattermost zu erfahren.",
|
||||
"admin.metrics.enableTitle": "Performance Monitoring aktivieren:",
|
||||
@@ -698,16 +688,17 @@
|
||||
"admin.password.requirementsDescription": "Erforderliche Zeichentypen für ein gültiges Passwort.",
|
||||
"admin.password.symbol": "Mindestens ein Symbol (wie \"~!@#$%^&*()\")",
|
||||
"admin.password.uppercase": "Mindestens ein Großbuchstabe",
|
||||
"admin.plugin.activeTitle": "Aktive Plugins: ",
|
||||
"admin.plugin.banner": "Plugins sind experimentell und sind nicht für die Verwendung in produktiven Umgebungen empfohlen.",
|
||||
"admin.plugin.desc": "Beschreibung:",
|
||||
"admin.plugin.error.activate": "Fehler beim Hochladen des Plugins. Es könnte einen Konflikt mit einem anderen Plugin auf ihrem Serve geben.",
|
||||
"admin.plugin.error.extract": "Fehler beim Extrahieren des Plugins. Prüfen Sie den Inhalt ihrer Plugin-Datei und versuchen es erneut.",
|
||||
"admin.plugin.id": "ID:",
|
||||
"admin.plugin.installedDesc": "Installed plugins on your Mattermost server. Pre-packaged plugins are installed by default, and can be deactivated but not removed.",
|
||||
"admin.plugin.installedTitle": "Installed Plugins: ",
|
||||
"admin.plugin.management.title": "Management",
|
||||
"admin.plugin.no_plugins": "Keine aktiven Plugins.",
|
||||
"admin.plugin.remove": "Entfernen",
|
||||
"admin.plugin.removing": "Entferne...",
|
||||
"admin.plugin.title": "Plugins (Experimentell)",
|
||||
"admin.plugin.upload": "Hochladen",
|
||||
"admin.plugin.uploadDesc": "Laden Sie ein Plugin für ihren Mattermost-Server hoch. Das Hinzufügen oder Entfernen eines Webapp-Plugins benötigt das Neuladen des Browsers oder der Desktop-App, bevor sie in Kraft treten. Sehen Sie die <a href=\"https://about.mattermost.com/default-plugins\">Dokumentation</a> an, um mehr zu erfahren.",
|
||||
"admin.plugin.uploadTitle": "Lade Plugin hoch: ",
|
||||
@@ -725,6 +716,11 @@
|
||||
"admin.plugins.jira.userDescription": "Benutzernamen auswählen, mit dem die Integration verbunden ist.",
|
||||
"admin.plugins.jira.userLabel": "Benutzer:",
|
||||
"admin.plugins.jira.webhookDocsLink": "Dokumentation",
|
||||
"admin.plugins.settings.enable": "Enable Plugins: ",
|
||||
"admin.plugins.settings.enableDesc": "When true, enables plugins on your Mattermost server. Use plugins to integrate with third-party systems, extend functionality or customize the user interface of your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugins\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.enableUploads": "Enable Plugin Uploads: ",
|
||||
"admin.plugins.settings.enableUploadsDesc": "When true, enables plugin uploads by System Admins at <strong>Plugins > Management</strong>. If you do not plan to upload a plugin, set to false to control which plugins are installed on your server. See <a href=\"https://about.mattermost.com/default-plugins-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.title": "Configuration",
|
||||
"admin.privacy.showEmailDescription": "Wenn falsch wird die E-Mail Adresse der Mitglieder vor jedem außer den Systemadministratoren versteckt.",
|
||||
"admin.privacy.showEmailTitle": "Zeige E-Mail-Adresse: ",
|
||||
"admin.privacy.showFullNameDescription": "Wenn falsch wird der Name der Mitglieder vor jedem außer den Systemadministratoren versteckt. Anstelle des vollen Namens wird der Benutzername angezeigt.",
|
||||
@@ -768,9 +764,9 @@
|
||||
"admin.requestButton.loading": " Lädt...",
|
||||
"admin.requestButton.requestFailure": "Test-Fehler: {error}",
|
||||
"admin.requestButton.requestSuccess": "Test erfolgreich",
|
||||
"admin.reset_password.close": "Schließen",
|
||||
"admin.reset_password.cancel": "Abbrechen",
|
||||
"admin.reset_password.newPassword": "Neues Passwort",
|
||||
"admin.reset_password.select": "Auswählen",
|
||||
"admin.reset_password.reset": "Zurücksetzen",
|
||||
"admin.reset_password.submit": "Bitte geben Sie mindestens {chars} Zeichen ein.",
|
||||
"admin.reset_password.titleReset": "Passwort zurücksetzen",
|
||||
"admin.reset_password.titleSwitch": "Zugang auf E-Mail-Adresse/Passwort umstellen",
|
||||
@@ -783,6 +779,8 @@
|
||||
"admin.saml.emailAttrEx": "Z.B.: \"Email\" oder \"PrimaryEmail\"",
|
||||
"admin.saml.emailAttrTitle": "E-Mail-Attribut:",
|
||||
"admin.saml.enableDescription": "Wenn wahr, erlaubt Mattermost Login mit SAML 2.0. Bitte sehen Sie sich die <a href='http://docs.mattermost.com/deployment/sso-saml.html' target='_blank'>Dokumentation</a> an um mehr über die SAML-Konfiguration für Mattermost zu lernen.",
|
||||
"admin.saml.enableSyncWithLdapDescription": "When true, Mattermost periodically synchronizes SAML user attributes, including user deactivation and removal, from AD/LDAP. Enable and configure synchronization settings at <strong>Authentication > AD/LDAP</strong>. See <a href='https://about.mattermost.com/default-saml-ldap-sync' target='_blank'>documentation</a> to learn more.",
|
||||
"admin.saml.enableSyncWithLdapTitle": "Enable Synchronizing SAML Accounts With AD/LDAP:",
|
||||
"admin.saml.enableTitle": "Erlaube Login mit SAML 2.0:",
|
||||
"admin.saml.encryptDescription": "Wenn falsch wird Mattermost nicht die verschlüsselten SAML Assertions mit dem öffentlichen Zertifikat des Service Providers entschlüsseln. Nicht empfohlen für Produktionsumgebungen. Nur für Testzwecke.",
|
||||
"admin.saml.encryptTitle": "Verschlüsselung aktivieren:",
|
||||
@@ -903,12 +901,12 @@
|
||||
"admin.service.ssoSessionDaysDesc": "Die Anzahl der Tage seit der letzten Anmeldung des Benutzers bis zum Ablauf der Sitzung. Wenn die Authentifizierungsmethode SAML oder GitLab ist, wird der Benutzer automatisch wieder angemeldet, sofern er noch bei SAML oder GitLab angemeldet ist. Bei Änderung dieser Einstellung tritt die neue Sitzungsdauer in Kraft nachdem der Benutzer sich das nächste Mal anmeldet.",
|
||||
"admin.service.testingDescription": "Wenn wahr, wird der /test Slash-Befehl aktiviert, um Testkonten, -daten und Textformatierungen zu laden. Änderung erfordern einen Server-Neustart, bevor sie in Kraft treten.",
|
||||
"admin.service.testingTitle": "Aktiviere Testbefehle: ",
|
||||
"admin.service.tlsCertFile": "TLS Zertifikatsdatei:",
|
||||
"admin.service.tlsCertFile": "TLS-Zertifikatsdatei:",
|
||||
"admin.service.tlsCertFileDescription": "Das zu verwendende Zertifikat.",
|
||||
"admin.service.tlsKeyFile": "TLS Schlüsseldatei:",
|
||||
"admin.service.tlsKeyFile": "TLS-Schlüsseldatei:",
|
||||
"admin.service.tlsKeyFileDescription": "Der zu verwendende private Schlüssel.",
|
||||
"admin.service.useLetsEncrypt": "Let's Encrypt verwenden:",
|
||||
"admin.service.useLetsEncryptDescription": "Aktiviere automatischen Abruf von Zertifikaten über Let's Encrypt. Das Zertifikat wird abgerufen wenn ein Client versucht von einer neuen Domains zuzugreifen. Dies funktioniert mit mehreren Domains.",
|
||||
"admin.service.useLetsEncryptDescription": "Aktiviere automatischen Abruf von Zertifikaten über Let's Encrypt. Das Zertifikat wird abgerufen, wenn ein Client versucht von einer neuen Domain zuzugreifen. Dies funktioniert mit mehreren Domains.",
|
||||
"admin.service.userAccessTokensDescLabel": "Name: ",
|
||||
"admin.service.userAccessTokensDescription": "Wenn wahr, können Benutzer <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">persönliche Zugriffs-Token</a> für Integrationen in <strong>Kontoeinstellungen > Sicherheit</strong> erstellen. Sie können zur Authentifizierung gegenüber der API verwendet werden und geben vollen Zugriff auf das Konto.<br/><br/>Um zu verwalten, wer persönliche Zugriffs-Token erstellen kann, gehen Sie zur Seite <strong>Systemkonsole > Benutzer</strong>.",
|
||||
"admin.service.userAccessTokensIdLabel": "Token-ID: ",
|
||||
@@ -918,7 +916,7 @@
|
||||
"admin.service.webhooksDescription": "Wenn wahr, werden eingehende Webhooks erlaubt. Um Phishing-Attacken vorzubeugen werden alle Posts von Webhooks mit dem BOT-Tag versehen. <a href='http://docs.mattermost.com/developer/webhooks-incoming.html' target='_blank'>Dokumentation</a> für mehr Details.",
|
||||
"admin.service.webhooksTitle": "Aktiviere eingehende Webhooks: ",
|
||||
"admin.service.writeTimeout": "Schreibe-Zeitüberschreitung:",
|
||||
"admin.service.writeTimeoutDescription": "Wenn HTTP verwendet wird (unsicher), ist dies die maximale erlaubte Zeit vom ende des Lesens der Anfrage bis die Antwort geschrieben wurde. Wenn HTTPS verwendet wird ist es die komplette Zeit von Verbindungsannahme bis die Antwort geschrieben wurde.",
|
||||
"admin.service.writeTimeoutDescription": "Wenn HTTP verwendet wird (unsicher), ist dies die maximale erlaubte Zeit vom Ende des Lesens der Anfrage bis die Antwort geschrieben wurde. Wenn HTTPS verwendet wird ist es die komplette Zeit von Verbindungsannahme bis die Antwort geschrieben wurde.",
|
||||
"admin.sidebar.advanced": "Erweitert",
|
||||
"admin.sidebar.audits": "Compliance und Prüfung",
|
||||
"admin.sidebar.authentication": "Authentifizierung",
|
||||
@@ -958,6 +956,7 @@
|
||||
"admin.sidebar.other": "ANDERE",
|
||||
"admin.sidebar.password": "Passwort",
|
||||
"admin.sidebar.plugins": "Plugins (Experimentell)",
|
||||
"admin.sidebar.plugins.configuration": "Configuration",
|
||||
"admin.sidebar.policy": "Richtlinie",
|
||||
"admin.sidebar.privacy": "Privatsphäre",
|
||||
"admin.sidebar.publicLinks": "Öffentliche Links",
|
||||
@@ -975,7 +974,7 @@
|
||||
"admin.sidebar.support": "Rechtsabteilung und Support",
|
||||
"admin.sidebar.users": "Benutzer",
|
||||
"admin.sidebar.usersAndTeams": "Benutzer und Teams",
|
||||
"admin.sidebar.view_statistics": "System Statistiken",
|
||||
"admin.sidebar.view_statistics": "Systemstatistiken",
|
||||
"admin.sidebar.webrtc": "WebRTC (Beta)",
|
||||
"admin.sidebarHeader.systemConsole": "Systemkonsole",
|
||||
"admin.sql.dataSource": "Datenquelle:",
|
||||
@@ -1029,8 +1028,8 @@
|
||||
"admin.team.chooseImage": "Neues Bild wählen",
|
||||
"admin.team.dirDesc": "Wenn wahr, werden Teams, welche im Team-Verzeichnis angezeigt werden sollen, auf der Hauptseite dargestellt anstatt ein neues Team zu erstellen.",
|
||||
"admin.team.dirTitle": "Team Verzeichnis aktivieren: ",
|
||||
"admin.team.enableConfirmNotificationsToChannelDescription": "When true, users will be prompted to confirm when posting @channel and @all in channels with over five members. When false, no confirmation is required.",
|
||||
"admin.team.enableConfirmNotificationsToChannelTitle": "Show @channel and @all confirmation dialog: ",
|
||||
"admin.team.enableConfirmNotificationsToChannelDescription": "Wenn wahr, müssen Benutzer bestätigen, wenn sie @channel und @all in Kanälen mit mehr als fünf Mitgliedern verwenden. Wenn falsch, ist keine Bestätigung erforderlich.",
|
||||
"admin.team.enableConfirmNotificationsToChannelTitle": "Zeige den @channel- und @all-Bestätigungsdialog: ",
|
||||
"admin.team.maxChannelsDescription": "Maximale Anzahl an Kanälen pro Team, inklusive aktiven und gelöschten Kanälen.",
|
||||
"admin.team.maxChannelsExample": "Z.B.: \"100\"",
|
||||
"admin.team.maxChannelsTitle": "Maximal Kanäle pro Team:",
|
||||
@@ -1050,7 +1049,7 @@
|
||||
"admin.team.restrictNameDesc": "Wenn aktiviert ist es nicht möglich Teams zu erstellen deren Namen reservierte Wörter wie www, admin, support, test, channel, etc. beinhalten",
|
||||
"admin.team.restrictNameTitle": "Beschränke Teamnamen: ",
|
||||
"admin.team.restrictTitle": "Begrenze Kontoerstellung auf spezifizierte E-Mail-Domains:",
|
||||
"admin.team.restrict_direct_message_any": "Jeder Nutzer auf dem Mattermost Server",
|
||||
"admin.team.restrict_direct_message_any": "Jeder Nutzer auf dem Mattermost-Server",
|
||||
"admin.team.restrict_direct_message_team": "Jedes Mitglied des Teams",
|
||||
"admin.team.showFullname": "Zeige Vor- und Nachname",
|
||||
"admin.team.showNickname": "Zeige Spitzname, wenn verfügbar, sonst zeige Vor- und Nachname",
|
||||
@@ -1122,13 +1121,13 @@
|
||||
"admin.webrtc.turnUsernameExample": "Z.B.: \"Benutzername\"",
|
||||
"admin.webrtc.turnUsernameTitle": "TURN Benutzername:",
|
||||
"admin.webserverModeDisabled": "Deaktiviert",
|
||||
"admin.webserverModeDisabledDescription": "Der Mattermost Server wird keine statischen Dateien bereitstellen.",
|
||||
"admin.webserverModeDisabledDescription": "Der Mattermost-Server wird keine statischen Dateien bereitstellen.",
|
||||
"admin.webserverModeGzip": "gzip",
|
||||
"admin.webserverModeGzipDescription": "Der Mattermostserver wird statische Dateien gzip komprimiert bereitstellen.",
|
||||
"admin.webserverModeGzipDescription": "Der Mattermost-Server wird statische Dateien gzip-komprimiert bereitstellen.",
|
||||
"admin.webserverModeHelpText": "Gzip Komprimierung gilt für statische Dateien. Es wird empfohlen gzip zu aktivieren um die Leistung zu verbessern, es sei denn, Ihre Umgebung hat bestimmte Einschränkungen, wie ein Web Proxy, welcher gzip-Dateien schlecht verteilt. Diese Einstellung erfordert einen Serverneustart um wirksam zu werden.",
|
||||
"admin.webserverModeTitle": "Webserver Modus:",
|
||||
"admin.webserverModeUncompressed": "Unkomprimiert",
|
||||
"admin.webserverModeUncompressedDescription": "Der Mattermostserver wird statische Dateien unkomprimiert bereitstellen.",
|
||||
"admin.webserverModeUncompressedDescription": "Der Mattermost-Server wird statische Dateien unkomprimiert bereitstellen.",
|
||||
"analytics.chart.loading": "Lade...",
|
||||
"analytics.chart.meaningful": "Nicht genügend Daten für eine aussagekräftige Darstellung.",
|
||||
"analytics.system.activeUsers": "Aktive Nutzer mit Beiträgen",
|
||||
@@ -1140,7 +1139,7 @@
|
||||
"analytics.system.publicChannels": "Öffentliche Kanäle",
|
||||
"analytics.system.skippedIntensiveQueries": "Um die Performance zu maximieren sind einige Statistiken deaktiviert. Sie können diese in der config.json wieder reaktivieren. Sie erfahren mehr in der <a href='https://docs.mattermost.com/administration/statistics.html' target='_blank'>Dokumentation</a>",
|
||||
"analytics.system.textPosts": "Nur-Text Beiträge",
|
||||
"analytics.system.title": "System Statistiken",
|
||||
"analytics.system.title": "Systemstatistiken",
|
||||
"analytics.system.totalChannels": "Kanäle Gesamt",
|
||||
"analytics.system.totalCommands": "Befehle Gesamt",
|
||||
"analytics.system.totalFilePosts": "Beiträge mit Dateien",
|
||||
@@ -1246,11 +1245,11 @@
|
||||
"calling_screen": "Rufe an",
|
||||
"center_panel.recent": "Klicken Sie hier um zu vorherigen Mittelungen zurückzukehren. ",
|
||||
"change_url.close": "Schließen",
|
||||
"change_url.endWithLetter": "Die URL muss mit einem Buchstaben oder einer Nummer enden.",
|
||||
"change_url.endWithLetter": "Die URL muss mit einem Buchstaben oder einer Zahl enden.",
|
||||
"change_url.invalidUrl": "Ungültige URL",
|
||||
"change_url.longer": "Die URL muss aus zwei oder mehr Zeichen bestehen.",
|
||||
"change_url.noUnderscore": "Die URL darf keine zwei aufeinander folgende Unterstriche enthalten.",
|
||||
"change_url.startWithLetter": "Die URL muss mit einem Buchstaben oder einer Nummer beginnen.",
|
||||
"change_url.startWithLetter": "Die URL muss mit einem Buchstaben oder einer Zahl beginnen.",
|
||||
"change_url.urlLabel": "Kanal-URL",
|
||||
"channelHeader.addToFavorites": "Zu Favoriten hinzufügen",
|
||||
"channelHeader.removeFromFavorites": "Aus Favoriten entfernen",
|
||||
@@ -1436,6 +1435,9 @@
|
||||
"delete_post.post": "Nachricht",
|
||||
"delete_post.question": "Sind Sie sich sicher diese(n) {term} zu löschen?",
|
||||
"delete_post.warning": "Diese Nachricht hat {count, number} {count, plural, one {Kommentar} other {Kommentare}}.",
|
||||
"discard_changes_modal.leave": "Ja, verwerfen",
|
||||
"discard_changes_modal.message": "Sie haben nicht gespeicherte Änderungen, möchten Sie diese wirklich verwerfen?",
|
||||
"discard_changes_modal.title": "Änderungen verwerfen?",
|
||||
"edit_channel_header.editHeader": "Kanalüberschrift bearbeiten...",
|
||||
"edit_channel_header.previewHeader": "Überschrift bearbeiten",
|
||||
"edit_channel_header_modal.cancel": "Abbrechen",
|
||||
@@ -1638,7 +1640,7 @@
|
||||
"help.formatting.listExample": "* Eintrag eins\n* Eintrag zwei\n * Eintrag zwei Unterpunkt",
|
||||
"help.formatting.lists": "## Listen\n\nErstellen Sie eine Liste indem Sie `*` oder `-` als Aufzählungszeichen verwenden. Rücken Sie einen Listenpunkt ein indem Sie zwei Leerzeilen davor einfügen.",
|
||||
"help.formatting.monokaiTheme": "**Monokai Theme**",
|
||||
"help.formatting.ordered": "Erstellen Sie eine sortiere Liste indem Sie stattdessen Nummern verwenden:",
|
||||
"help.formatting.ordered": "Erstellen Sie eine sortiere Liste, indem Sie stattdessen Zahlen verwenden:",
|
||||
"help.formatting.orderedExample": "1. Eintrag eins\n2. Eintrag zwei",
|
||||
"help.formatting.quotes": "## Blockzitate\n\nErstellen Sie ein Blockzitat indem Sie `>` verwenden.",
|
||||
"help.formatting.quotesExample": "`> Blockzitat` wird dargestellt als:",
|
||||
@@ -1865,6 +1867,8 @@
|
||||
"mobile.about.appVersion": "App Version: {version} (Build {number})",
|
||||
"mobile.about.copyright": "Copyright 2015-{currentYear} Mattermost, Inc. Alle Rechte vorbehalten",
|
||||
"mobile.about.database": "Datenbank: {type}",
|
||||
"mobile.about.licensed": "Licensed to: {company}",
|
||||
"mobile.about.powered_by": "{site} is powered by Mattermost",
|
||||
"mobile.about.serverVersion": "Server Version: {version} (Build {number})",
|
||||
"mobile.about.serverVersionNoBuild": "Server Version: {version}",
|
||||
"mobile.account.notifications.email.footer": "Wenn offline oder abwesend für mehr als fünf Minuten",
|
||||
@@ -1878,6 +1882,14 @@
|
||||
"mobile.advanced_settings.reset_message": "\nDies wird alle gespeicherten Offlinedaten löschen und die Anwendung neustarten. Sie werden automatisch wieder angemeldet, sobald die App neugestartet wurde.\n",
|
||||
"mobile.advanced_settings.reset_title": "Cache zurücksetzen",
|
||||
"mobile.advanced_settings.title": "Erweiterte Einstellungen",
|
||||
"mobile.android.camera_permission_denied_description": "To take photos and videos with your camera, please change your permission settings.",
|
||||
"mobile.android.camera_permission_denied_title": "Camera access is required",
|
||||
"mobile.android.permission_denied_dismiss": "Dismiss",
|
||||
"mobile.android.permission_denied_retry": "Set permission",
|
||||
"mobile.android.photos_permission_denied_description": "To upload images from your library, please change your permission settings.",
|
||||
"mobile.android.photos_permission_denied_title": "Photo library access is required",
|
||||
"mobile.android.videos_permission_denied_description": "To upload videos from your library, please change your permission settings.",
|
||||
"mobile.android.videos_permission_denied_title": "Video library access is required",
|
||||
"mobile.channel_drawer.search": "Jump to...",
|
||||
"mobile.channel_info.alertMessageDeleteChannel": "Sind Sie sicher, dass Sie den {term} {name} löschen möchten?",
|
||||
"mobile.channel_info.alertMessageLeaveChannel": "Sind Sie sicher, dass Sie den {term} {name} verlassen möchten?",
|
||||
@@ -1903,6 +1915,19 @@
|
||||
"mobile.channel_list.privateChannel": "Privater Kanal",
|
||||
"mobile.channel_list.publicChannel": "Öffentlicher Kanal",
|
||||
"mobile.channel_list.unreads": "UNGELESENE",
|
||||
"mobile.client_upgrade": "Update App",
|
||||
"mobile.client_upgrade.can_upgrade_subtitle": "A new version is available for download.",
|
||||
"mobile.client_upgrade.can_upgrade_title": "Update Available",
|
||||
"mobile.client_upgrade.close": "Update Later",
|
||||
"mobile.client_upgrade.current_version": "Server Version: {version}",
|
||||
"mobile.client_upgrade.download_error.message": "An error occurred downloading the new version.",
|
||||
"mobile.client_upgrade.download_error.title": "Unable to Install Update",
|
||||
"mobile.client_upgrade.latest_version": "Server Version: {version}",
|
||||
"mobile.client_upgrade.must_upgrade_subtitle": "Please update the app to continue.",
|
||||
"mobile.client_upgrade.must_upgrade_title": "Update Required",
|
||||
"mobile.client_upgrade.no_upgrade_subtitle": "You already have the latest version.",
|
||||
"mobile.client_upgrade.no_upgrade_title": "Your App Is Up to Date",
|
||||
"mobile.client_upgrade.upgrade": "Aktualisieren",
|
||||
"mobile.components.channels_list_view.yourChannels": "Ihre Kanäle:",
|
||||
"mobile.components.error_list.dismiss_all": "Alle verwerfen",
|
||||
"mobile.components.select_server_view.continue": "Weiter",
|
||||
@@ -1932,6 +1957,8 @@
|
||||
"mobile.file_upload.more": "Mehr",
|
||||
"mobile.file_upload.video": "Videobibliothek",
|
||||
"mobile.help.title": "Hilfe",
|
||||
"mobile.image_preview.deleted_post_message": "This post and it's files have been deleted. The previewer will now be closed.",
|
||||
"mobile.image_preview.deleted_post_title": "Post Deleted",
|
||||
"mobile.image_preview.save": "Bild speichern",
|
||||
"mobile.intro_messages.DM": "Dies ist der Start der Privatnachrichten mit {teammate}. Privatnachrichten und hier geteilte Dateien sind für Personen außerhalb dieses Bereichs nicht sichtbar.",
|
||||
"mobile.intro_messages.default_message": "Dies ist der Kanal, den Teammitglieder sehen, wenn sie sich anmelden - benutzen Sie ihn zum Veröffentlichen von Aktualisierungen, die jeder kennen muss.",
|
||||
@@ -1945,7 +1972,10 @@
|
||||
"mobile.managed.exit": "Beenden",
|
||||
"mobile.managed.jailbreak": "Geräten mit Jailbreak wird von {vendor} nicht vertraut, bitte beenden Sie die App.",
|
||||
"mobile.managed.secured_by": "Gesichert durch {vendor}",
|
||||
"mobile.markdown.code.copy_code": "Copy Code",
|
||||
"mobile.markdown.code.plusMoreLines": "+{count, number} mehr Zeilen",
|
||||
"mobile.markdown.link.copy_url": "Copy URL",
|
||||
"mobile.mention.copy_mention": "Copy Mention",
|
||||
"mobile.more_dms.start": "Start",
|
||||
"mobile.more_dms.title": "Neue Konversation",
|
||||
"mobile.notice_mobile_link": "mobile Apps",
|
||||
@@ -1961,8 +1991,8 @@
|
||||
"mobile.notification_settings.mentions_replies": "Erwähnungen und Antworten",
|
||||
"mobile.notification_settings.mobile": "Mobil",
|
||||
"mobile.notification_settings.mobile_title": "Mobile Push-Nachrichten",
|
||||
"mobile.notification_settings.modal_cancel": "CANCEL",
|
||||
"mobile.notification_settings.modal_save": "SAVE",
|
||||
"mobile.notification_settings.modal_cancel": "ABBRECHEN",
|
||||
"mobile.notification_settings.modal_save": "SPEICHERN",
|
||||
"mobile.notification_settings.save_failed_description": "Die Benachrichtigungseinstellungen konnten durch ein Verbindungsproblem nicht gespeichert werden, bitte erneut versuchen.",
|
||||
"mobile.notification_settings.save_failed_title": "Verbindungsproblem",
|
||||
"mobile.notification_settings_mentions.keywords": "Stichwörter",
|
||||
@@ -1994,6 +2024,7 @@
|
||||
"mobile.post.failed_title": "Ihre Nachricht konnte nicht gesendet werden",
|
||||
"mobile.post.retry": "Aktualisieren",
|
||||
"mobile.post_info.add_reaction": "Reaktion hinzufügen",
|
||||
"mobile.post_info.copy_post": "Copy Post",
|
||||
"mobile.request.invalid_response": "Ungültige Antwort vom Server erhalten.",
|
||||
"mobile.retry_message": "Aktualisierung der Nachrichten fehlgeschlagen. Nach oben ziehen, um erneut zu versuchen.",
|
||||
"mobile.routes.channelInfo": "Info",
|
||||
@@ -2037,13 +2068,20 @@
|
||||
"mobile.settings.clear": "Offline-Speicher leeren",
|
||||
"mobile.settings.clear_button": "Leeren",
|
||||
"mobile.settings.clear_message": "\nDies wird alle gespeicherten Offlinedaten löschen und die Anwendung neustarten. Sie werden automatisch wieder angemeldet, sobald die App neugestartet wurde.\n",
|
||||
"mobile.settings.modal.check_for_upgrade": "Check for Updates",
|
||||
"mobile.settings.team_selection": "Teamauswahl",
|
||||
"mobile.suggestion.members": "Mitglieder",
|
||||
"modal.manaul_status.ask": "Nicht wieder nachfragen",
|
||||
"modal.manaul_status.button": "Ja, meinen Status auf \"Online\" setzen",
|
||||
"modal.manaul_status.cancel": "Nein, \"{status}\" beibehalten",
|
||||
"modal.manaul_status.message": "Möchten Sie Ihren Status auf \"Online\" umschalten?",
|
||||
"modal.manaul_status.title": "Ihr Status wurde auf \"{status}\" gesetzt",
|
||||
"modal.manaul_status.title_": "Ihr Status wurde auf \"{status}\" gesetzt",
|
||||
"modal.manaul_status.title_away": "Ihr Status wurde auf \"{status}\" gesetzt",
|
||||
"modal.manaul_status.title_dnd": "Your status is set to \"Do Not Disturb\"",
|
||||
"modal.manaul_status.title_offline": "Ihr Status wurde auf \"{status}\" gesetzt",
|
||||
"modal.manual_status.cancel_": "Nein, \"{status}\" beibehalten",
|
||||
"modal.manual_status.cancel_away": "No, keep it as \"Away\"",
|
||||
"modal.manual_status.cancel_dnd": "No, keep it as \"Do Not Disturb\"",
|
||||
"modal.manual_status.cancel_offline": "No, keep it as \"Offline\"",
|
||||
"more_channels.close": "Schließen",
|
||||
"more_channels.create": "Neuen Kanal erstellen",
|
||||
"more_channels.createClick": "Klicken Sie auf 'Neuen Kanal erstellen' um einen Neuen zu erzeugen",
|
||||
@@ -2127,6 +2165,12 @@
|
||||
"permalink.error.title": "Nachricht nicht gefunden",
|
||||
"post_attachment.collapse": "Weniger anzeigen...",
|
||||
"post_attachment.more": "Mehr anzeigen...",
|
||||
"post_body.check_for_out_of_channel_mentions.link.and": " and ",
|
||||
"post_body.check_for_out_of_channel_mentions.link.private": "add them to this private channel",
|
||||
"post_body.check_for_out_of_channel_mentions.link.public": "add them to the channel",
|
||||
"post_body.check_for_out_of_channel_mentions.message.multiple": "were mentioned but they are not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message.one": "was mentioned but is not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message_last": "? They will have access to all message history.",
|
||||
"post_body.commentedOn": "Kommentierte {name}{apostrophe} Nachricht: ",
|
||||
"post_body.deleted": "(Nachricht gelöscht)",
|
||||
"post_body.plusMore": " plus {count, number} weitere {count, plural, one {Datei} other {Dateien}}",
|
||||
@@ -2227,8 +2271,6 @@
|
||||
"search_results.searching": "Suchen...",
|
||||
"search_results.usage.dataRetention": "Only messages posted in the last {days} days are returned. Contact your System Administrator for more detail.",
|
||||
"search_results.usage.fromInSuggestion": "Use {fromUser} to find posts from specific users and {inChannel} to find posts in specific channels",
|
||||
"search_results.usage.fromInSuggestion.fromUser": "from:",
|
||||
"search_results.usage.fromInSuggestion.inChannel": "in:",
|
||||
"search_results.usage.phrasesSuggestion": "Use {quotationMarks} to search for phrases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"quotation marks\"",
|
||||
"search_results.usageFlag1": "Sie haben bisher keine Nachrichten markiert.",
|
||||
@@ -2380,6 +2422,7 @@
|
||||
"sso_signup.teamName": "Geben Sie den Namen des neuen Teams ein",
|
||||
"sso_signup.team_error": "Bitte einen Teamnamen eingeben",
|
||||
"status_dropdown.set_away": "Abwesend",
|
||||
"status_dropdown.set_dnd": "Do Not Disturb",
|
||||
"status_dropdown.set_offline": "Offline",
|
||||
"status_dropdown.set_online": "Online",
|
||||
"suggestion.loading": "Lade...",
|
||||
@@ -2466,8 +2509,8 @@
|
||||
"update_command.question": "Ihre Änderungen könnten einen existierenden Slash-Befehl außer Kraft setzen. Sind Sie sich sicher dass Sie ihn aktualisieren möchten?",
|
||||
"update_command.update": "Aktualisieren",
|
||||
"update_incoming_webhook.update": "Aktualisieren",
|
||||
"update_oauth_app.confirm": "OAuth-2.0-Applikation hinzufügen",
|
||||
"update_oauth_app.question": "Ihre Änderungen könnten einen existierenden Slash-Befehl außer Kraft setzen. Sind Sie sich sicher, dass Sie ihn aktualisieren möchten?",
|
||||
"update_oauth_app.confirm": "OAuth-2.0-Applikation bearbeiten",
|
||||
"update_oauth_app.question": "Ihre Änderungen könnten die existierende OAut-2.0.-Anwendung zerstören. Sind Sie sich sicher, dass Sie aktualisieren möchten?",
|
||||
"update_outgoing_webhook.confirm": "Ausgehenden Webhook bearbeiten",
|
||||
"update_outgoing_webhook.question": "Ihre Änderungen könnten einen existierenden Slash-Befehl außer Kraft setzen. Sind Sie sich sicher, dass Sie ihn aktualisieren möchten?",
|
||||
"update_outgoing_webhook.update": "Aktualisieren",
|
||||
@@ -2496,6 +2539,7 @@
|
||||
"user.settings.custom_theme.centerChannelTitle": "Aussehen des zentralen Kanals",
|
||||
"user.settings.custom_theme.codeTheme": "Code Design",
|
||||
"user.settings.custom_theme.copyPaste": "Kopieren und einfügen um Motivfarben zu teilen:",
|
||||
"user.settings.custom_theme.dndIndicator": "Do Not Disturb Indicator",
|
||||
"user.settings.custom_theme.linkButtonTitle": "Aussehen von Links und Schaltern",
|
||||
"user.settings.custom_theme.linkColor": "Link-Farbe",
|
||||
"user.settings.custom_theme.mentionBj": "Erwähnungsrahmen Hintergrund",
|
||||
@@ -2623,6 +2667,7 @@
|
||||
"user.settings.modal.general": "Allgemein",
|
||||
"user.settings.modal.notifications": "Benachrichtigungen",
|
||||
"user.settings.modal.security": "Sicherheit",
|
||||
"user.settings.modal.sidebar": "Sidebar",
|
||||
"user.settings.modal.title": "Kontoeinstellungen",
|
||||
"user.settings.notifications.allActivity": "Für alle Aktivitäten",
|
||||
"user.settings.notifications.channelWide": "Kanalweite Erwähnungen \"@channel\", \"@all\", \"@here\"",
|
||||
@@ -2757,6 +2802,11 @@
|
||||
"user.settings.security.switchSaml": "Wechsel auf SAML SSO",
|
||||
"user.settings.security.title": "Sicherheitseinstellungen",
|
||||
"user.settings.security.viewHistory": "Zeige Zugriffshistorie",
|
||||
"user.settings.sidebar.after_seven_days": "After 7 days with no new messages",
|
||||
"user.settings.sidebar.autoCloseDMDesc": "Direct Message conversations can be reopened with the “+” button in the sidebar or using the Channel Switcher (CTRL+K).",
|
||||
"user.settings.sidebar.autoCloseDMTitle": "Automatically Close Direct Messages",
|
||||
"user.settings.sidebar.never": "Nie",
|
||||
"user.settings.sidebar.title": "Sidebar Settings",
|
||||
"user.settings.tokens.cancel": "Abbrechen",
|
||||
"user.settings.tokens.clickToEdit": "Klicken Sie 'Bearbeiten', um ihre persönlichen Zugriffs-Token zu verwalten",
|
||||
"user.settings.tokens.confirmCreateButton": "Ja, erstellen",
|
||||
@@ -2780,6 +2830,7 @@
|
||||
"user.settings.tokens.tokenId": "Token-ID: ",
|
||||
"user.settings.tokens.userAccessTokensNone": "Keine Benutzer-Zugriffs-Token.",
|
||||
"user_list.notFound": "Keine Benutzer gefunden",
|
||||
"user_profile.account.editSettings": "Kontoeinstellungen",
|
||||
"user_profile.send.dm": "Nachricht versenden",
|
||||
"user_profile.webrtc.call": "Videoanruf starten",
|
||||
"user_profile.webrtc.offline": "Der Benutzer ist offline",
|
||||
|
||||
@@ -269,10 +269,13 @@
|
||||
"admin.database.title": "Database Settings",
|
||||
"admin.developer.title": "Developer Settings",
|
||||
"admin.elasticsearch.bulkIndexButton.error": "Failed to schedule Bulk Index Job: {error}",
|
||||
"admin.elasticsearch.bulkIndexingTitle": "Bulk Indexing:",
|
||||
"admin.elasticsearch.connectionUrlDescription": "The address of the Elasticsearch server. {documentationLink}",
|
||||
"admin.elasticsearch.connectionUrlExample": "E.g.: \"https://elasticsearch.example.org:9200\"",
|
||||
"admin.elasticsearch.connectionUrlExample.documentationLinkText": "Please see documentation with server setup instructions.",
|
||||
"admin.elasticsearch.connectionUrlTitle": "Server Connection Address:",
|
||||
"admin.elasticsearch.createJob.help": "All posts in the database will be indexed from oldest to newest. Elasticsearch is available during indexing but search results may be incomplete until the indexing job is complete.",
|
||||
"admin.elasticsearch.createJob.title": "Index Now",
|
||||
"admin.elasticsearch.elasticsearch_test_button": "Test Connection",
|
||||
"admin.elasticsearch.enableIndexingDescription": "When true, indexing of new posts occurs automatically. Search queries will use database search until \"Enable Elasticsearch for search queries\" is enabled. {documentationLink}",
|
||||
"admin.elasticsearch.enableIndexingDescription.documentationLinkText": "Learn more about Elasticsearch in our documentation.",
|
||||
@@ -300,22 +303,6 @@
|
||||
"admin.elasticsearch.usernameDescription": "(Optional) The username to authenticate to the Elasticsearch server.",
|
||||
"admin.elasticsearch.usernameExample": "E.g.: \"elastic\"",
|
||||
"admin.elasticsearch.usernameTitle": "Server Username:",
|
||||
"admin.elasticsearchStatus.bulkIndexLabel": "Bulk Indexing:",
|
||||
"admin.elasticsearchStatus.cancelButton": "Cancel",
|
||||
"admin.elasticsearchStatus.status": "Status: ",
|
||||
"admin.elasticsearchStatus.statusCancelled": "Indexing job cancelled.",
|
||||
"admin.elasticsearchStatus.statusError": "Indexing error.",
|
||||
"admin.elasticsearchStatus.statusError.help": "Mattermost encountered an error building the Elasticsearch index: {error}",
|
||||
"admin.elasticsearchStatus.statusInProgress": "Job in progress. {percent}% complete.",
|
||||
"admin.elasticsearchStatus.statusInProgress.help": "Indexing is in progress on the job server. If Elasticsearch is enabled, search results may be incomplete until the job is finished.",
|
||||
"admin.elasticsearchStatus.statusIndexingDisabled": "Indexing disabled.",
|
||||
"admin.elasticsearchStatus.statusLoading": "Loading...",
|
||||
"admin.elasticsearchStatus.statusNoJobs": "No indexing jobs queued.",
|
||||
"admin.elasticsearchStatus.statusPending": "Job pending.",
|
||||
"admin.elasticsearchStatus.statusPending.help": "Elasticsearch index job is queued on the job server. If Elasticsearch is enabled, search results may be incomplete until the job is finished.",
|
||||
"admin.elasticsearchStatus.statusRequestCancel": "Canceling Job...",
|
||||
"admin.elasticsearchStatus.statusSuccess": "Indexing complete.",
|
||||
"admin.elasticsearchStatus.statusSuccess.help": "Indexing is complete and new posts are being automatically indexed.",
|
||||
"admin.email.agreeHPNS": " I understand and accept the Mattermost Hosted Push Notification Service <a href=\"https://about.mattermost.com/hpns-terms/\" target='_blank'>Terms of Service</a> and <a href=\"https://about.mattermost.com/hpns-privacy/\" target='_blank'>Privacy Policy</a>.",
|
||||
"admin.email.allowEmailSignInDescription": "When true, Mattermost allows users to sign in using their email and password.",
|
||||
"admin.email.allowEmailSignInTitle": "Enable sign-in with email: ",
|
||||
@@ -523,7 +510,7 @@
|
||||
"admin.integrations.external": "External Services",
|
||||
"admin.integrations.webrtc": "Mattermost WebRTC",
|
||||
"admin.jobTable.cancelButton": "Cancel",
|
||||
"admin.jobTable.headerExtraInfo": "Extra Information",
|
||||
"admin.jobTable.headerExtraInfo": "Details",
|
||||
"admin.jobTable.headerFinishAt": "Finish Time",
|
||||
"admin.jobTable.headerRunTime": "Run Time",
|
||||
"admin.jobTable.headerStatus": "Status",
|
||||
@@ -548,6 +535,8 @@
|
||||
"admin.ldap.emailAttrEx": "E.g.: \"mail\" or \"userPrincipalName\"",
|
||||
"admin.ldap.emailAttrTitle": "Email Attribute:",
|
||||
"admin.ldap.enableDesc": "When true, Mattermost allows login using AD/LDAP",
|
||||
"admin.ldap.enableSyncDesc": "When true, Mattermost periodically synchronizes users from AD/LDAP.",
|
||||
"admin.ldap.enableSyncTitle": "Enable Synchronization with AD/LDAP:",
|
||||
"admin.ldap.enableTitle": "Enable sign-in with AD/LDAP:",
|
||||
"admin.ldap.firstnameAttrDesc": "(Optional) The attribute in the AD/LDAP server that will be used to populate the first name of users in Mattermost. When set, users will not be able to edit their first name, since it is synchronized with the LDAP server. When left blank, users can set their own first name in Account Settings.",
|
||||
"admin.ldap.firstnameAttrEx": "E.g.: \"givenName\"",
|
||||
@@ -640,6 +629,7 @@
|
||||
"admin.logs.title": "Server Logs",
|
||||
"admin.manage_roles.additionalRoles": "Select additional permissions for the account. <a href=\"https://about.mattermost.com/default-permissions\" target=\"_blank\">Read more about roles and permissions</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokens": "Allow this account to generate <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">personal access tokens</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokensDesc": "Removing this permission doesn't delete existing tokens. To delete them, go to the user's Manage Tokens menu.",
|
||||
"admin.manage_roles.cancel": "Cancel",
|
||||
"admin.manage_roles.manageRolesTitle": "Manage Roles",
|
||||
"admin.manage_roles.postAllPublicRole": "Access to post to all Mattermost public channels.",
|
||||
@@ -651,7 +641,7 @@
|
||||
"admin.manage_roles.systemAdmin": "System Admin",
|
||||
"admin.manage_roles.systemMember": "Member",
|
||||
"admin.manage_tokens.manageTokensTitle": "Manage Personal Access Tokens",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Personal access tokens function similar to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">interact with this Mattermost server</a>. Learn more about <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">personal access tokens</a>.",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Personal access tokens function similarly to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">interact with this Mattermost server</a>. Tokens are disabled if the user is deactivated. Learn more about <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">personal access tokens</a>.",
|
||||
"admin.manage_tokens.userAccessTokensNone": "No personal access tokens.",
|
||||
"admin.metrics.enableDescription": "When true, Mattermost will enable performance monitoring collection and profiling. Please see <a href=\"http://docs.mattermost.com/deployment/metrics.html\" target='_blank'>documentation</a> to learn more about configuring performance monitoring for Mattermost.",
|
||||
"admin.metrics.enableTitle": "Enable Performance Monitoring:",
|
||||
@@ -698,18 +688,19 @@
|
||||
"admin.password.requirementsDescription": "Character types required in a valid password.",
|
||||
"admin.password.symbol": "At least one symbol (e.g. \"~!@#$%^&*()\")",
|
||||
"admin.password.uppercase": "At least one uppercase letter",
|
||||
"admin.plugin.activeTitle": "Active Plugins: ",
|
||||
"admin.plugin.banner": "Plugins are experimental and not recommended for use in production.",
|
||||
"admin.plugin.desc": "Description:",
|
||||
"admin.plugin.error.activate": "Unable to upload the plugin. It may conflict with another plugin on your server.",
|
||||
"admin.plugin.error.extract": "Encountered an error when extracting the plugin. Review your plugin file content and try again.",
|
||||
"admin.plugin.id": "ID:",
|
||||
"admin.plugin.no_plugins": "No active plugins.",
|
||||
"admin.plugin.installedDesc": "Installed plugins on your Mattermost server. Pre-packaged plugins are installed by default, and can be deactivated but not removed.",
|
||||
"admin.plugin.installedTitle": "Installed Plugins: ",
|
||||
"admin.plugin.management.title": "Management",
|
||||
"admin.plugin.no_plugins": "No installed plugins.",
|
||||
"admin.plugin.remove": "Remove",
|
||||
"admin.plugin.removing": "Removing...",
|
||||
"admin.plugin.title": "Plugins (Experimental)",
|
||||
"admin.plugin.upload": "Upload",
|
||||
"admin.plugin.uploadDesc": "Upload a plugin for your Mattermost server. Adding or removing a webapp plugin requires users to refresh their browser or Desktop App before taking effect. See <a href=\"https://about.mattermost.com/default-plugins\">documentation</a> to learn more.",
|
||||
"admin.plugin.uploadDesc": "Upload a plugin for your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugin-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugin.uploadTitle": "Upload Plugin: ",
|
||||
"admin.plugin.uploading": "Uploading...",
|
||||
"admin.plugins.jira": "JIRA (Beta)",
|
||||
@@ -725,6 +716,11 @@
|
||||
"admin.plugins.jira.userDescription": "Select the username that this integration is attached to.",
|
||||
"admin.plugins.jira.userLabel": "User:",
|
||||
"admin.plugins.jira.webhookDocsLink": "documentation",
|
||||
"admin.plugins.settings.enable": "Enable Plugins: ",
|
||||
"admin.plugins.settings.enableDesc": "When true, enables plugins on your Mattermost server. Use plugins to integrate with third-party systems, extend functionality or customize the user interface of your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugins\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.enableUploads": "Enable Plugin Uploads: ",
|
||||
"admin.plugins.settings.enableUploadsDesc": "When true, enables plugin uploads by System Admins at <strong>Plugins > Management</strong>. If you do not plan to upload a plugin, set to false to control which plugins are installed on your server. See <a href=\"https://about.mattermost.com/default-plugins-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.title": "Configuration",
|
||||
"admin.privacy.showEmailDescription": "When false, hides the email address of members from everyone except System Administrators.",
|
||||
"admin.privacy.showEmailTitle": "Show Email Address: ",
|
||||
"admin.privacy.showFullNameDescription": "When false, hides the full name of members from everyone except System Administrators. Username is shown in place of full name.",
|
||||
@@ -768,9 +764,9 @@
|
||||
"admin.requestButton.loading": " Loading...",
|
||||
"admin.requestButton.requestFailure": "Test Failure: {error}",
|
||||
"admin.requestButton.requestSuccess": "Test Successful",
|
||||
"admin.reset_password.close": "Close",
|
||||
"admin.reset_password.cancel": "Cancel",
|
||||
"admin.reset_password.newPassword": "New Password",
|
||||
"admin.reset_password.select": "Select",
|
||||
"admin.reset_password.reset": "Reset",
|
||||
"admin.reset_password.submit": "Please enter at least {chars} characters.",
|
||||
"admin.reset_password.titleReset": "Reset Password",
|
||||
"admin.reset_password.titleSwitch": "Switch Account to Email/Password",
|
||||
@@ -783,6 +779,8 @@
|
||||
"admin.saml.emailAttrEx": "E.g.: \"Email\" or \"PrimaryEmail\"",
|
||||
"admin.saml.emailAttrTitle": "Email Attribute:",
|
||||
"admin.saml.enableDescription": "When true, Mattermost allows login using SAML 2.0. Please see <a href='http://docs.mattermost.com/deployment/sso-saml.html' target='_blank'>documentation</a> to learn more about configuring SAML for Mattermost.",
|
||||
"admin.saml.enableSyncWithLdapDescription": "When true, Mattermost periodically synchronizes SAML user attributes, including user deactivation and removal, from AD/LDAP. Enable and configure synchronization settings at <strong>Authentication > AD/LDAP</strong>. See <a href='https://about.mattermost.com/default-saml-ldap-sync' target='_blank'>documentation</a> to learn more.",
|
||||
"admin.saml.enableSyncWithLdapTitle": "Enable Synchronizing SAML Accounts With AD/LDAP:",
|
||||
"admin.saml.enableTitle": "Enable Login With SAML 2.0:",
|
||||
"admin.saml.encryptDescription": "When false, Mattermost will not decrypt SAML Assertions encrypted with your Service Provider Public Certificate. Not recommended for production environments. For testing only.",
|
||||
"admin.saml.encryptTitle": "Enable Encryption:",
|
||||
@@ -957,7 +955,8 @@
|
||||
"admin.sidebar.oauth": "OAuth 2.0",
|
||||
"admin.sidebar.other": "OTHER",
|
||||
"admin.sidebar.password": "Password",
|
||||
"admin.sidebar.plugins": "Plugins (Experimental)",
|
||||
"admin.sidebar.plugins": "Plugins (Beta)",
|
||||
"admin.sidebar.plugins.configuration": "Configuration",
|
||||
"admin.sidebar.policy": "Policy",
|
||||
"admin.sidebar.privacy": "Privacy",
|
||||
"admin.sidebar.publicLinks": "Public Links",
|
||||
@@ -1436,6 +1435,9 @@
|
||||
"delete_post.post": "Post",
|
||||
"delete_post.question": "Are you sure you want to delete this {term}?",
|
||||
"delete_post.warning": "This post has {count, number} {count, plural, one {comment} other {comments}} on it.",
|
||||
"discard_changes_modal.leave": "Yes, Discard",
|
||||
"discard_changes_modal.message": "You have unsaved changes, are you sure you want to discard them?",
|
||||
"discard_changes_modal.title": "Discard Changes?",
|
||||
"edit_channel_header.editHeader": "Edit the Channel Header...",
|
||||
"edit_channel_header.previewHeader": "Edit header",
|
||||
"edit_channel_header_modal.cancel": "Cancel",
|
||||
@@ -1880,14 +1882,14 @@
|
||||
"mobile.advanced_settings.reset_message": "\nThis will reset all offline data and restart the app. You will be automatically logged back in once the app restarts.\n",
|
||||
"mobile.advanced_settings.reset_title": "Reset Cache",
|
||||
"mobile.advanced_settings.title": "Advanced Settings",
|
||||
"mobile.android.camera_permission_denied_title": "Camera access is required",
|
||||
"mobile.android.camera_permission_denied_description": "To take photos and videos with your camera, please change your permission settings.",
|
||||
"mobile.android.photos_permission_denied_title": "Photo library access is required",
|
||||
"mobile.android.photos_permission_denied_description": "To upload images from your library, please change your permission settings.",
|
||||
"mobile.android.videos_permission_denied_title": "Video library access is required",
|
||||
"mobile.android.videos_permission_denied_description": "To upload videos from your library, please change your permission settings.",
|
||||
"mobile.android.permission_denied_retry": "Set permission",
|
||||
"mobile.android.camera_permission_denied_title": "Camera access is required",
|
||||
"mobile.android.permission_denied_dismiss": "Dismiss",
|
||||
"mobile.android.permission_denied_retry": "Set permission",
|
||||
"mobile.android.photos_permission_denied_description": "To upload images from your library, please change your permission settings.",
|
||||
"mobile.android.photos_permission_denied_title": "Photo library access is required",
|
||||
"mobile.android.videos_permission_denied_description": "To upload videos from your library, please change your permission settings.",
|
||||
"mobile.android.videos_permission_denied_title": "Video library access is required",
|
||||
"mobile.channel_drawer.search": "Jump to...",
|
||||
"mobile.channel_info.alertMessageDeleteChannel": "Are you sure you want to delete the {term} {name}?",
|
||||
"mobile.channel_info.alertMessageLeaveChannel": "Are you sure you want to leave the {term} {name}?",
|
||||
@@ -1914,17 +1916,17 @@
|
||||
"mobile.channel_list.publicChannel": "Public Channel",
|
||||
"mobile.channel_list.unreads": "UNREADS",
|
||||
"mobile.client_upgrade": "Update App",
|
||||
"mobile.client_upgrade.can_upgrade_title": "Update Available",
|
||||
"mobile.client_upgrade.can_upgrade_subtitle": "A new version is available for download.",
|
||||
"mobile.client_upgrade.can_upgrade_title": "Update Available",
|
||||
"mobile.client_upgrade.close": "Update Later",
|
||||
"mobile.client_upgrade.current_version": "Latest Version: {version}",
|
||||
"mobile.client_upgrade.download_error.title": "Unable to Install Update",
|
||||
"mobile.client_upgrade.download_error.message": "An error occurred downloading the new version.",
|
||||
"mobile.client_upgrade.download_error.title": "Unable to Install Update",
|
||||
"mobile.client_upgrade.latest_version": "Your Version: {version}",
|
||||
"mobile.client_upgrade.must_upgrade_title": "Update Required",
|
||||
"mobile.client_upgrade.must_upgrade_subtitle": "Please update the app to continue.",
|
||||
"mobile.client_upgrade.no_upgrade_title": "Your App Is Up to Date",
|
||||
"mobile.client_upgrade.must_upgrade_title": "Update Required",
|
||||
"mobile.client_upgrade.no_upgrade_subtitle": "You already have the latest version.",
|
||||
"mobile.client_upgrade.no_upgrade_title": "Your App Is Up to Date",
|
||||
"mobile.client_upgrade.upgrade": "Update",
|
||||
"mobile.components.channels_list_view.yourChannels": "Your channels:",
|
||||
"mobile.components.error_list.dismiss_all": "Dismiss All",
|
||||
@@ -1955,8 +1957,8 @@
|
||||
"mobile.file_upload.more": "More",
|
||||
"mobile.file_upload.video": "Video Library",
|
||||
"mobile.help.title": "Help",
|
||||
"mobile.image_preview.deleted_post_message": "This post and its files have been deleted. The previewer will now be closed.",
|
||||
"mobile.image_preview.deleted_post_title": "Post Deleted",
|
||||
"mobile.image_preview.deleted_post_message": "This post and it's files have been deleted. The previewer will now be closed.",
|
||||
"mobile.image_preview.save": "Save Image",
|
||||
"mobile.intro_messages.DM": "This is the start of your direct message history with {teammate}. Direct messages and files shared here are not shown to people outside this area.",
|
||||
"mobile.intro_messages.default_message": "This is the first channel teammates see when they sign up - use it for posting updates everyone needs to know.",
|
||||
@@ -1970,7 +1972,10 @@
|
||||
"mobile.managed.exit": "Exit",
|
||||
"mobile.managed.jailbreak": "Jailbroken devices are not trusted by {vendor}, please exit the app.",
|
||||
"mobile.managed.secured_by": "Secured by {vendor}",
|
||||
"mobile.markdown.code.copy_code": "Copy Code",
|
||||
"mobile.markdown.code.plusMoreLines": "+{count, number} more lines",
|
||||
"mobile.markdown.link.copy_url": "Copy URL",
|
||||
"mobile.mention.copy_mention": "Copy Mention",
|
||||
"mobile.more_dms.start": "Start",
|
||||
"mobile.more_dms.title": "New Conversation",
|
||||
"mobile.notice_mobile_link": "mobile apps",
|
||||
@@ -2008,7 +2013,7 @@
|
||||
"mobile.notification_settings_mobile.vibrate": "Vibrate",
|
||||
"mobile.offlineIndicator.connected": "Connected",
|
||||
"mobile.offlineIndicator.connecting": "Connecting...",
|
||||
"mobile.offlineIndicator.offline": "No internet connection",
|
||||
"mobile.offlineIndicator.offline": "Cannot connect to the server",
|
||||
"mobile.open_dm.error": "We couldn't open a direct message with {displayName}. Please check your connection and try again.",
|
||||
"mobile.open_gm.error": "We couldn't open a group message with those users. Please check your connection and try again.",
|
||||
"mobile.post.cancel": "Cancel",
|
||||
@@ -2059,17 +2064,23 @@
|
||||
"mobile.server_upgrade.title": "Server upgrade required",
|
||||
"mobile.server_url.invalid_format": "URL must start with http:// or https://",
|
||||
"mobile.session_expired": "Session Expired: Please log in to continue receiving notifications.",
|
||||
"mobile.settings.modal.check_for_upgrade": "Check for Updates",
|
||||
"mobile.settings.clear": "Clear Offline Store",
|
||||
"mobile.settings.clear_button": "Clear",
|
||||
"mobile.settings.clear_message": "\nThis will clear all offline data and restart the app. You will be automatically logged back in once the app restarts.\n",
|
||||
"mobile.settings.modal.check_for_upgrade": "Check for Updates",
|
||||
"mobile.settings.team_selection": "Team Selection",
|
||||
"mobile.suggestion.members": "Members",
|
||||
"modal.manaul_status.ask": "Do not ask me again",
|
||||
"modal.manaul_status.button": "Yes, set my status to \"Online\"",
|
||||
"modal.manaul_status.cancel": "No, keep it as \"{status}\"",
|
||||
"modal.manaul_status.message": "Would you like to switch your status to \"Online\"?",
|
||||
"modal.manaul_status.title": "Your status is set to \"{status}\"",
|
||||
"modal.manaul_status.title_": "Your status is set to \"{status}\"",
|
||||
"modal.manaul_status.title_away": "Your status is set to \"Away\"",
|
||||
"modal.manaul_status.title_dnd": "Your status is set to \"Do Not Disturb\"",
|
||||
"modal.manaul_status.title_offline": "Your status is set to \"Offline\"",
|
||||
"modal.manual_status.cancel_": "No, keep it as \"{status}\"",
|
||||
"modal.manual_status.cancel_away": "No, keep it as \"Away\"",
|
||||
"modal.manual_status.cancel_dnd": "No, keep it as \"Do Not Disturb\"",
|
||||
"modal.manual_status.cancel_offline": "No, keep it as \"Offline\"",
|
||||
"more_channels.close": "Close",
|
||||
"more_channels.create": "Create New Channel",
|
||||
"more_channels.createClick": "Click 'Create New Channel' to make a new one",
|
||||
@@ -2153,6 +2164,12 @@
|
||||
"permalink.error.title": "Message Not Found",
|
||||
"post_attachment.collapse": "Show less...",
|
||||
"post_attachment.more": "Show more...",
|
||||
"post_body.check_for_out_of_channel_mentions.link.and": " and ",
|
||||
"post_body.check_for_out_of_channel_mentions.link.private": "add them to this private channel",
|
||||
"post_body.check_for_out_of_channel_mentions.link.public": "add them to the channel",
|
||||
"post_body.check_for_out_of_channel_mentions.message.multiple": "were mentioned but they are not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message.one": "was mentioned but is not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message_last": "? They will have access to all message history.",
|
||||
"post_body.commentedOn": "Commented on {name}{apostrophe} message: ",
|
||||
"post_body.deleted": "(message deleted)",
|
||||
"post_body.plusMore": " plus {count, number} other {count, plural, one {file} other {files}}",
|
||||
@@ -2253,8 +2270,6 @@
|
||||
"search_results.searching": "Searching...",
|
||||
"search_results.usage.dataRetention": "Only messages posted in the last {days} days are returned. Contact your System Administrator for more detail.",
|
||||
"search_results.usage.fromInSuggestion": "Use {fromUser} to find posts from specific users and {inChannel} to find posts in specific channels",
|
||||
"search_results.usage.fromInSuggestion.fromUser": "from:",
|
||||
"search_results.usage.fromInSuggestion.inChannel": "in:",
|
||||
"search_results.usage.phrasesSuggestion": "Use {quotationMarks} to search for phrases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"quotation marks\"",
|
||||
"search_results.usageFlag1": "You haven't flagged any messages yet.",
|
||||
@@ -2406,6 +2421,7 @@
|
||||
"sso_signup.teamName": "Enter name of new team",
|
||||
"sso_signup.team_error": "Please enter a team name",
|
||||
"status_dropdown.set_away": "Away",
|
||||
"status_dropdown.set_dnd": "Do Not Disturb",
|
||||
"status_dropdown.set_offline": "Offline",
|
||||
"status_dropdown.set_online": "Online",
|
||||
"suggestion.loading": "Loading...",
|
||||
@@ -2522,6 +2538,7 @@
|
||||
"user.settings.custom_theme.centerChannelTitle": "Center Channel Styles",
|
||||
"user.settings.custom_theme.codeTheme": "Code Theme",
|
||||
"user.settings.custom_theme.copyPaste": "Copy and paste to share theme colors:",
|
||||
"user.settings.custom_theme.dndIndicator": "Do Not Disturb Indicator",
|
||||
"user.settings.custom_theme.linkButtonTitle": "Link and Button Styles",
|
||||
"user.settings.custom_theme.linkColor": "Link Color",
|
||||
"user.settings.custom_theme.mentionBj": "Mention Jewel BG",
|
||||
@@ -2649,6 +2666,7 @@
|
||||
"user.settings.modal.general": "General",
|
||||
"user.settings.modal.notifications": "Notifications",
|
||||
"user.settings.modal.security": "Security",
|
||||
"user.settings.modal.sidebar": "Sidebar",
|
||||
"user.settings.modal.title": "Account Settings",
|
||||
"user.settings.notifications.allActivity": "For all activity",
|
||||
"user.settings.notifications.channelWide": "Channel-wide mentions \"@channel\", \"@all\", \"@here\"",
|
||||
@@ -2783,6 +2801,11 @@
|
||||
"user.settings.security.switchSaml": "Switch to using SAML SSO",
|
||||
"user.settings.security.title": "Security Settings",
|
||||
"user.settings.security.viewHistory": "View Access History",
|
||||
"user.settings.sidebar.after_seven_days": "After 7 days with no new messages",
|
||||
"user.settings.sidebar.autoCloseDMDesc": "Direct Message conversations can be reopened with the “+” button in the sidebar or using the Channel Switcher (CTRL+K).",
|
||||
"user.settings.sidebar.autoCloseDMTitle": "Automatically Close Direct Messages",
|
||||
"user.settings.sidebar.never": "Never",
|
||||
"user.settings.sidebar.title": "Sidebar Settings",
|
||||
"user.settings.tokens.cancel": "Cancel",
|
||||
"user.settings.tokens.clickToEdit": "Click 'Edit' to manage your personal access tokens",
|
||||
"user.settings.tokens.confirmCreateButton": "Yes, Create",
|
||||
@@ -2794,8 +2817,8 @@
|
||||
"user.settings.tokens.copy": "Please copy the access token below. You won't be able to see it again!",
|
||||
"user.settings.tokens.create": "Create New Token",
|
||||
"user.settings.tokens.delete": "Delete",
|
||||
"user.settings.tokens.description": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similar to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>.",
|
||||
"user.settings.tokens.description_mobile": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similar to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>. Create new tokens on your desktop.",
|
||||
"user.settings.tokens.description": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similarly to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>.",
|
||||
"user.settings.tokens.description_mobile": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similarly to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>. Create new tokens on your desktop.",
|
||||
"user.settings.tokens.id": "Token ID: ",
|
||||
"user.settings.tokens.name": "Token Description: ",
|
||||
"user.settings.tokens.nameHelp": "Enter a description for your token to remember what it does.",
|
||||
@@ -2806,6 +2829,7 @@
|
||||
"user.settings.tokens.tokenId": "Token ID: ",
|
||||
"user.settings.tokens.userAccessTokensNone": "No personal access tokens.",
|
||||
"user_list.notFound": "No users found",
|
||||
"user_profile.account.editSettings": "Edit Account Settings",
|
||||
"user_profile.send.dm": "Send Message",
|
||||
"user_profile.webrtc.call": "Start Video Call",
|
||||
"user_profile.webrtc.offline": "The user is offline",
|
||||
|
||||
@@ -269,10 +269,13 @@
|
||||
"admin.database.title": "Configuración de la base de datos",
|
||||
"admin.developer.title": "Configuración de Desarrollo",
|
||||
"admin.elasticsearch.bulkIndexButton.error": "Error al programar el Trabajo de Indexación: {error}",
|
||||
"admin.elasticsearch.bulkIndexingTitle": "Bulk Indexing:",
|
||||
"admin.elasticsearch.connectionUrlDescription": "La dirección del servidor Elasticsearch. {documentationLink}",
|
||||
"admin.elasticsearch.connectionUrlExample": "Ej.: \"https://elasticsearch.example.org:9200\"",
|
||||
"admin.elasticsearch.connectionUrlExample.documentationLinkText": "Por favor, consulta las instrucciones de instalación en la documentación del servidor.",
|
||||
"admin.elasticsearch.connectionUrlTitle": "Dirección de Conexión del Servidor:",
|
||||
"admin.elasticsearch.createJob.help": "All posts in the database will be indexed from oldest to newest. Elasticsearch is available during indexing but search results may be incomplete until the indexing job is complete.",
|
||||
"admin.elasticsearch.createJob.title": "Index Now",
|
||||
"admin.elasticsearch.elasticsearch_test_button": "Probar Conexión",
|
||||
"admin.elasticsearch.enableIndexingDescription": "Cuando es verdadero, la indexación de nuevos mensajes ocurre de manera automática. Las búsquedas se realizarán en la base de datos hasta que la opción de \"Habilitar búsquedas con Elasticsearch\" sea seleccionada. {documentationLink}",
|
||||
"admin.elasticsearch.enableIndexingDescription.documentationLinkText": "Aprende más acerca de Elasticsearch en nuestra documentación.",
|
||||
@@ -300,22 +303,6 @@
|
||||
"admin.elasticsearch.usernameDescription": "(Opcional) El nombre de usuario para autenticarse en el servidor de Elasticsearch.",
|
||||
"admin.elasticsearch.usernameExample": "Ej.: \"elastic\"",
|
||||
"admin.elasticsearch.usernameTitle": "Nombre de usuario del Servidor:",
|
||||
"admin.elasticsearchStatus.bulkIndexLabel": "Indexación:",
|
||||
"admin.elasticsearchStatus.cancelButton": "Cancelar",
|
||||
"admin.elasticsearchStatus.status": "Estado: ",
|
||||
"admin.elasticsearchStatus.statusCancelled": "Trabajo de indexación cancelado.",
|
||||
"admin.elasticsearchStatus.statusError": "Error de Indexación.",
|
||||
"admin.elasticsearchStatus.statusError.help": "Mattermost ha encontrado un error al construir el índice de Elasticsearch: {error}",
|
||||
"admin.elasticsearchStatus.statusInProgress": "Trabajo en progreso. {percent}% completado.",
|
||||
"admin.elasticsearchStatus.statusInProgress.help": "La indexación está en progreso en el servidor de trabajos. Si Elasticsearch está habilitado, los resultados de las búsquedas pueden estar incompletos hasta que el trabajo haya terminado.",
|
||||
"admin.elasticsearchStatus.statusIndexingDisabled": "Indexación deshabilitada.",
|
||||
"admin.elasticsearchStatus.statusLoading": "Cargando...",
|
||||
"admin.elasticsearchStatus.statusNoJobs": "No hay trabajos de indexación pendientes.",
|
||||
"admin.elasticsearchStatus.statusPending": "Trabajo pendiente.",
|
||||
"admin.elasticsearchStatus.statusPending.help": "El trabajo de indexación de Elasticsearch está pendiente en el servidor de trabajos. Si Elasticsearch está habilitado, los resultados de la búsqueda podrán estar incompletos hasta que el trabajo haya terminado.",
|
||||
"admin.elasticsearchStatus.statusRequestCancel": "Cancelando trabajo...",
|
||||
"admin.elasticsearchStatus.statusSuccess": "Indexación completa.",
|
||||
"admin.elasticsearchStatus.statusSuccess.help": "La indexación se ha completado y los mensajes más nuevos serán indexados automáticamente.",
|
||||
"admin.email.agreeHPNS": " Comprendo y acepto los <a href=\"https://about.mattermost.com/hpns-terms/\" target='_blank'>Términos de Servicio</a> y <a href=\"https://about.mattermost.com/hpns-privacy/\" target=\"_blank\">Políticas de Privacidad</a> del Servicio Alojado de Notificaciones Push de Mattermost.",
|
||||
"admin.email.allowEmailSignInDescription": "Cuando es verdadero, Mattermost permite a los usuarios iniciar sesión utilizando el correo electrónico y contraseña.",
|
||||
"admin.email.allowEmailSignInTitle": "Habilitar el inicio de sesión con el correo electrónico: ",
|
||||
@@ -468,9 +455,9 @@
|
||||
"admin.gitlab.enableDescription": "Cuando está asignado como verdadero, Mattermost permite la creación de equipos y cuentas utilizando el servicio de OAuth de GitLab.",
|
||||
"admin.gitlab.enableTitle": "Habilitar la autenticación con GitLab: ",
|
||||
"admin.gitlab.settingsTitle": "Configuración de GitLab",
|
||||
"admin.gitlab.siteUrl": "GitLab Site URL: ",
|
||||
"admin.gitlab.siteUrlDescription": "Enter the URL of your GitLab instance, e.g. https://example.com:3000. If your GitLab instance is not set up with SSL, start the URL with http:// instead of https://.",
|
||||
"admin.gitlab.siteUrlExample": "E.g.: https://",
|
||||
"admin.gitlab.siteUrl": "URL del sitio de GitLab: ",
|
||||
"admin.gitlab.siteUrlDescription": "Introduce la URL de su instance de GitLab, por ejemplo, https://example.com:3000. Si su instancia de GitLab no está configurada con SSL, el inicio de la URL debe ser con http:// en lugar de https://.",
|
||||
"admin.gitlab.siteUrlExample": "Ej.: https://",
|
||||
"admin.gitlab.tokenTitle": "Url para obteción de Token:",
|
||||
"admin.gitlab.userTitle": "URL para obtener datos de usuario:",
|
||||
"admin.google.EnableHtmlDesc": "<ol><li><a target='_blank' href='https://accounts.google.com/login'>Inicia sesión</a> con tu cuenta de Google.</li><li>Dirigete a <a target='_blank' href='https://console.developers.google.com'>https://console.developers.google.com</a>, haz clic en <strong>Credenciales</strong> en la barra lateral izquierda e ingresa \"Mattermost - el-nombre-de-tu-empresa\" como el <strong>Nombre del Proyecto</strong>, luego haz clic en <strong>Crear</strong>.</li><li>Haz clic en el encabezado de <strong>Pantalla de autorización de OAuth</strong> e ingresa \"Mattermost\" como el <strong>Nombre de producto mostrado a los usuarios</strong>, luego haz clic en <strong>Guardar</strong>.</li><li>En el encabezado de <strong>Credenciales</strong>, haz clic en <strong>Crear credenciales</strong>, escoge <strong>ID de cliente de OAuth</strong> y selecciona <strong>Web</strong>.</li><li>En <strong>Restricciones</strong> y <strong>URIs de redireccionamiento autorizados</strong> ingresa <strong>tu-url-de-mattermost/signup/google/complete</strong> (ejemplo: http://localhost:8065/signup/google/complete). Haz clic en <strong>Crear</strong>.</li><li>Pega el <strong>ID de Cliente</strong> y el <strong>Secreto de Cliente</strong> en los campos que se encuentran en la parte inferior, luego haz clic en <strong>Guardar</strong>.</li><li>Finalmente, dirigete a <a target='_blank' href='https://console.developers.google.com/apis/api/plus/overview'>Google+ API</a> y haz clic en <strong>Habilitar</strong>. Puede que esta acción tome unos minutos en propagarse por los sistemas de Google.</li></ol>",
|
||||
@@ -548,6 +535,8 @@
|
||||
"admin.ldap.emailAttrEx": "Ej.: \"mail\" o \"userPrincipalName\"",
|
||||
"admin.ldap.emailAttrTitle": "Atributo de Correo Electrónico:",
|
||||
"admin.ldap.enableDesc": "Cuando es verdadero, Mattermost permite realizar inicio de sesión utilizando AD/LDAP",
|
||||
"admin.ldap.enableSyncDesc": "Cuando es verdadero, Mattermost sincroniza periódicamente a los usuarios de AD/LDAP.",
|
||||
"admin.ldap.enableSyncTitle": "Habilitar Sincronización con AD/LDAP:",
|
||||
"admin.ldap.enableTitle": "Habilitar el inicio de sesión con AD/LDAP:",
|
||||
"admin.ldap.firstnameAttrDesc": "(Opcional) el atributo en el servidor AD/LDAP que se utilizará para rellenar el nombre de los usuarios en Mattermost. Cuando se establece, los usuarios no serán capaces de editar su nombre, ya que se sincroniza con el servidor AD/LDAP. Cuando se deja en blanco, los usuarios pueden establecer su propio nombre en la Configuración de la Cuenta.",
|
||||
"admin.ldap.firstnameAttrEx": "Ej.: \"givenName\"",
|
||||
@@ -640,6 +629,7 @@
|
||||
"admin.logs.title": "Servidor de registros",
|
||||
"admin.manage_roles.additionalRoles": "Selecciona permisos adicionales para la cuenta. <a href=\"https://about.mattermost.com/default-permissions\" target=\"_blank\">Conoce más acerca de roles y permisos</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokens": "Permitir que esta cuenta genere <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">tokens de acceso personales</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokensDesc": "La eliminación de este permiso no se eliminan las tokens existentes. Para eliminarlos, debes ir al menú de Gestión de Tokens del usuario.",
|
||||
"admin.manage_roles.cancel": "Cancelar",
|
||||
"admin.manage_roles.manageRolesTitle": "Gestionar Roles",
|
||||
"admin.manage_roles.postAllPublicRole": "Acceso para publicar mensajes a todos los canales públicos de Mattermost.",
|
||||
@@ -651,7 +641,7 @@
|
||||
"admin.manage_roles.systemAdmin": "Admin del Sistema",
|
||||
"admin.manage_roles.systemMember": "Miembro",
|
||||
"admin.manage_tokens.manageTokensTitle": "Gestionar Tokens de Acceso Personales",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Tokens de acceso personales funcionan similar a un token de sesión y pueden ser utilizado por integraciones para <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">autenticarse con la REST API</a>. Conoce más acerca de <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">tokens de acceso personales</a>.",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Tokens de acceso personales funcionan similar a un token de sesión y pueden ser utilizado por integraciones para <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">interactuar con este servidor de Mattermost</a>. Los Tokens son desactivados si el usuario es inhabilitado. Conoce más acerca de <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">tokens de acceso personales</a>.",
|
||||
"admin.manage_tokens.userAccessTokensNone": "No hay tokens de acceso personales.",
|
||||
"admin.metrics.enableDescription": "Cuando es verdadero, Mattermost habilitará el monitoreo de desempeño, la recolección y la elaboración de perfiles. Por favor, consulta la <a href=\"http://docs.mattermost.com/deployment/metrics.html\" target='_blank'>documentación</a> para obtener más información acerca de la configuración del monitoreo del rendimiento para Mattermost.",
|
||||
"admin.metrics.enableTitle": "Habilitar el Monitoreo de Desempeño:",
|
||||
@@ -698,16 +688,17 @@
|
||||
"admin.password.requirementsDescription": "Los tipos de caracteres que se requiere para una contraseña válida.",
|
||||
"admin.password.symbol": "Al menos un símbolo (por ejemplo,\"~!@#$%^&*()\")",
|
||||
"admin.password.uppercase": "Al menos una letra en mayúscula",
|
||||
"admin.plugin.activeTitle": "Plugins Activos: ",
|
||||
"admin.plugin.banner": "Los Plugins son experimentales y no se recomienda su uso en producción.",
|
||||
"admin.plugin.desc": "Descripción",
|
||||
"admin.plugin.error.activate": "No puede cargar el plugin. Puede que cause conflicto con otro plugin en el servidor.",
|
||||
"admin.plugin.error.extract": "Se ha encontrado un error al extraer el plugin. Revisa el contenido del archivo del plugin y prueba de nuevo.",
|
||||
"admin.plugin.id": "ID: ",
|
||||
"admin.plugin.installedDesc": "Installed plugins on your Mattermost server. Pre-packaged plugins are installed by default, and can be deactivated but not removed.",
|
||||
"admin.plugin.installedTitle": "Installed Plugins: ",
|
||||
"admin.plugin.management.title": "Management",
|
||||
"admin.plugin.no_plugins": "No hay plugins activos.",
|
||||
"admin.plugin.remove": "Eliminar",
|
||||
"admin.plugin.removing": "Eliminando...",
|
||||
"admin.plugin.title": "Plugins (Experimental)",
|
||||
"admin.plugin.upload": "Cargar",
|
||||
"admin.plugin.uploadDesc": "Carga un plugin para tu servidor Mattermost. La adición o eliminación de un plugin para la aplicación web requiere que los usuarios refresquen su navegador o Aplicación de Escritorio antes de surgir efecto. Ve la <a href=\"https://about.mattermost.com/default-plugins\">documentación</a> para obtener más información.",
|
||||
"admin.plugin.uploadTitle": "Cargar Plugin: ",
|
||||
@@ -725,6 +716,11 @@
|
||||
"admin.plugins.jira.userDescription": "Seleccione el nombre de usuario que será utilizado por esta integración.",
|
||||
"admin.plugins.jira.userLabel": "Usuario:",
|
||||
"admin.plugins.jira.webhookDocsLink": "documentación",
|
||||
"admin.plugins.settings.enable": "Enable Plugins: ",
|
||||
"admin.plugins.settings.enableDesc": "When true, enables plugins on your Mattermost server. Use plugins to integrate with third-party systems, extend functionality or customize the user interface of your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugins\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.enableUploads": "Enable Plugin Uploads: ",
|
||||
"admin.plugins.settings.enableUploadsDesc": "When true, enables plugin uploads by System Admins at <strong>Plugins > Management</strong>. If you do not plan to upload a plugin, set to false to control which plugins are installed on your server. See <a href=\"https://about.mattermost.com/default-plugins-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.title": "Configuration",
|
||||
"admin.privacy.showEmailDescription": "Si es falso, se esconde la dirección de correo electrónico de los miembros para todos los usuarios, excepto a los Administradores del Sistema.",
|
||||
"admin.privacy.showEmailTitle": "Mostrar dirección de correo electrónico: ",
|
||||
"admin.privacy.showFullNameDescription": "Si es falso, se esconde el nombre completo de los miembros para todos los usuarios, excepto a los Administradores del Sistema. El nombre de usuario se muestra en lugar del nombre completo.",
|
||||
@@ -768,9 +764,9 @@
|
||||
"admin.requestButton.loading": " Cargando...",
|
||||
"admin.requestButton.requestFailure": "Prueba Fallida: {error}",
|
||||
"admin.requestButton.requestSuccess": "Prueba realizada con éxito",
|
||||
"admin.reset_password.close": "Cerrar",
|
||||
"admin.reset_password.cancel": "Cancelar",
|
||||
"admin.reset_password.newPassword": "Nueva contraseña",
|
||||
"admin.reset_password.select": "Seleccionar",
|
||||
"admin.reset_password.reset": "Reiniciar",
|
||||
"admin.reset_password.submit": "Por favor, introducir como mínimo {chars} caracteres.",
|
||||
"admin.reset_password.titleReset": "Restablecer la contraseña",
|
||||
"admin.reset_password.titleSwitch": "Cambiar cuenta a Correo Electrónico/Contraseña",
|
||||
@@ -783,6 +779,8 @@
|
||||
"admin.saml.emailAttrEx": "Ej.: \"Email\" o \"PrimaryEmail\"",
|
||||
"admin.saml.emailAttrTitle": "Atributo de Correo Electrónico:",
|
||||
"admin.saml.enableDescription": "Cuando es verdadero, Mattermost permite el inicio de sesión mediante SAML 2.0. Por favor, consulte la <a href='http://docs.mattermost.com/deployment/sso-saml.html' target='_blank'>documentation</a> para obtener más información acerca de la configuración de SAML para Mattermost.",
|
||||
"admin.saml.enableSyncWithLdapDescription": "Cuando es verdadero, Mattermost sincroniza periódicamente los atributos del usuario SAML, incluyendo la desactivación del usuario o su eliminación en AD/LDAP. Habilita y configura los parámetros de sincronización en <strong>Autenticación > AD/LDAP</strong>. Revisa la <a href='https://about.mattermost.com/default-saml-ldap-sync' target='_blank'>documentación</a> para conocer más.",
|
||||
"admin.saml.enableSyncWithLdapTitle": "Habilitar Sincronización de cuentas SAML con AD/LDAP:",
|
||||
"admin.saml.enableTitle": "Habilitar el inicio de Sesión con SAML 2.0:",
|
||||
"admin.saml.encryptDescription": "Si es falso, Mattermost no se descifrará las Aserciones SAML cifrados con su el Certificado Público del Proveedor de Servicio. No se recomienda para entornos de producción. Solo para probar.",
|
||||
"admin.saml.encryptTitle": "Habilitar el Cifrado:",
|
||||
@@ -958,6 +956,7 @@
|
||||
"admin.sidebar.other": "OTROS",
|
||||
"admin.sidebar.password": "Contraseña",
|
||||
"admin.sidebar.plugins": "Plugins (Experimental)",
|
||||
"admin.sidebar.plugins.configuration": "Configuration",
|
||||
"admin.sidebar.policy": "Política",
|
||||
"admin.sidebar.privacy": "Privacidad",
|
||||
"admin.sidebar.publicLinks": "Enlaces Públicos",
|
||||
@@ -1436,6 +1435,9 @@
|
||||
"delete_post.post": "Mensaje",
|
||||
"delete_post.question": "¿Estás seguro(a) de querer borrar este {term}?",
|
||||
"delete_post.warning": "Este mensaje tiene {count, number} {count, plural, one {comentario} other {comentarios}}.",
|
||||
"discard_changes_modal.leave": "Sí, Descartar",
|
||||
"discard_changes_modal.message": "Tienes cambios sin guardar, ¿Estás seguro que los quieres descartar?",
|
||||
"discard_changes_modal.title": "¿Descartar Cambios?",
|
||||
"edit_channel_header.editHeader": "Editar el Encabezado del Canal...",
|
||||
"edit_channel_header.previewHeader": "Editar Encabezado",
|
||||
"edit_channel_header_modal.cancel": "Cancelar",
|
||||
@@ -1865,6 +1867,8 @@
|
||||
"mobile.about.appVersion": "Versión del App: {version} (Compilación {number})",
|
||||
"mobile.about.copyright": "Derechos de autor 2015-{currentYear} Mattermost, Inc. Todos los derechos reservados",
|
||||
"mobile.about.database": "Base de datos: {type}",
|
||||
"mobile.about.licensed": "Licenciado a: {company}",
|
||||
"mobile.about.powered_by": "{site} es impulsado por Mattermost",
|
||||
"mobile.about.serverVersion": "Versión del Servidor: {version} (Compilación {number})",
|
||||
"mobile.about.serverVersionNoBuild": "Versión del Servidor: {version}",
|
||||
"mobile.account.notifications.email.footer": "Cuando esté desconectado o ausente por más de cinco minutos",
|
||||
@@ -1878,6 +1882,14 @@
|
||||
"mobile.advanced_settings.reset_message": "\nEsto borrará todos los datos sin conexión y reiniciará la aplicación. Tu sesión será iniciada automáticamente una vez que la aplicación se reinicie.\n",
|
||||
"mobile.advanced_settings.reset_title": "Borrar caché",
|
||||
"mobile.advanced_settings.title": "Configuración Avanzada",
|
||||
"mobile.android.camera_permission_denied_description": "Para tomar fotos y videos con la cámara, por favor, cambia la configuración de permisos.",
|
||||
"mobile.android.camera_permission_denied_title": "Acceso a la cámara es necesario",
|
||||
"mobile.android.permission_denied_dismiss": "Cerrar",
|
||||
"mobile.android.permission_denied_retry": "Establecer permisos",
|
||||
"mobile.android.photos_permission_denied_description": "Para cargar imágenes desde tu biblioteca, por favor, cambia la configuración de permisos.",
|
||||
"mobile.android.photos_permission_denied_title": "Acceso a la biblioteca de fotos es necesario",
|
||||
"mobile.android.videos_permission_denied_description": "Para subir los vídeos de tu biblioteca, por favor, cambia la configuración de permisos.",
|
||||
"mobile.android.videos_permission_denied_title": "Acceso a la biblioteca de vídeos es necesario",
|
||||
"mobile.channel_drawer.search": "Saltar a...",
|
||||
"mobile.channel_info.alertMessageDeleteChannel": "¿Seguro quieres abandonar el {term} {name}?",
|
||||
"mobile.channel_info.alertMessageLeaveChannel": "¿Seguro quieres abandonar el {term} {name}?",
|
||||
@@ -1903,6 +1915,19 @@
|
||||
"mobile.channel_list.privateChannel": "Canal Privado",
|
||||
"mobile.channel_list.publicChannel": "Canal Público",
|
||||
"mobile.channel_list.unreads": "SIN LEER",
|
||||
"mobile.client_upgrade": "Actualizar App",
|
||||
"mobile.client_upgrade.can_upgrade_subtitle": "Una nueva versión está disponible para su descarga.",
|
||||
"mobile.client_upgrade.can_upgrade_title": "Actualización Disponible",
|
||||
"mobile.client_upgrade.close": "Actualizar más tarde",
|
||||
"mobile.client_upgrade.current_version": "Última Versión: {version}",
|
||||
"mobile.client_upgrade.download_error.message": "Se ha producido un error en la descarga de la nueva versión.",
|
||||
"mobile.client_upgrade.download_error.title": "No se puede Instalar la Actualización",
|
||||
"mobile.client_upgrade.latest_version": "Versión Actual: {version}",
|
||||
"mobile.client_upgrade.must_upgrade_subtitle": "Por favor actualiza la aplicación para continuar.",
|
||||
"mobile.client_upgrade.must_upgrade_title": "Actualización Necesaria",
|
||||
"mobile.client_upgrade.no_upgrade_subtitle": "Ya tienes la última versión.",
|
||||
"mobile.client_upgrade.no_upgrade_title": "Tu Aplicación es la más reciente",
|
||||
"mobile.client_upgrade.upgrade": "Actualizar",
|
||||
"mobile.components.channels_list_view.yourChannels": "Tus canales:",
|
||||
"mobile.components.error_list.dismiss_all": "Descartar todo",
|
||||
"mobile.components.select_server_view.continue": "Continuar",
|
||||
@@ -1932,6 +1957,8 @@
|
||||
"mobile.file_upload.more": "Más",
|
||||
"mobile.file_upload.video": "Librería de Videos",
|
||||
"mobile.help.title": "Ayuda",
|
||||
"mobile.image_preview.deleted_post_message": "Este mensaje y sys archivos han sido eliminados. La vista previa se cerrará.",
|
||||
"mobile.image_preview.deleted_post_title": "Mensaje Eliminado",
|
||||
"mobile.image_preview.save": "Guardar imagen",
|
||||
"mobile.intro_messages.DM": "Este es el inicio de tu historial de mensajes directos con {teammate}.Los mensajes directos y archivos que se comparten aquí no son mostrados a personas fuera de esta área.",
|
||||
"mobile.intro_messages.default_message": "Es es el primer canal que tus compañeros ven cuando se registran - puedes utilizarlo para enviar mensajes que todos deben leer.",
|
||||
@@ -1945,7 +1972,10 @@
|
||||
"mobile.managed.exit": "Salir",
|
||||
"mobile.managed.jailbreak": "{vendor} no confía en los dispositivos con jailbreak, por favor, salga de la aplicación.",
|
||||
"mobile.managed.secured_by": "Asegurado por {vendor}",
|
||||
"mobile.markdown.code.copy_code": "Copiar código",
|
||||
"mobile.markdown.code.plusMoreLines": "+{count, number} más líneas",
|
||||
"mobile.markdown.link.copy_url": "Copiar URL",
|
||||
"mobile.mention.copy_mention": "Copiar Mención",
|
||||
"mobile.more_dms.start": "Comenzar",
|
||||
"mobile.more_dms.title": "Nueva Conversación",
|
||||
"mobile.notice_mobile_link": "aplicaciones móviles",
|
||||
@@ -1994,6 +2024,7 @@
|
||||
"mobile.post.failed_title": "No se pudo enviar el mensaje",
|
||||
"mobile.post.retry": "Actualizar",
|
||||
"mobile.post_info.add_reaction": "Reaccionar",
|
||||
"mobile.post_info.copy_post": "Copiar Mensaje",
|
||||
"mobile.request.invalid_response": "Se recibió una respuesta no válida del servidor.",
|
||||
"mobile.retry_message": "Error obteniendo los mensajes. Tira hacia arriba para reintentar.",
|
||||
"mobile.routes.channelInfo": "Información",
|
||||
@@ -2037,13 +2068,20 @@
|
||||
"mobile.settings.clear": "Limpiar Almacén sin Conexión",
|
||||
"mobile.settings.clear_button": "Limpiar",
|
||||
"mobile.settings.clear_message": "\nEsto borrará todos los datos sin conexión y reiniciará la aplicación. Tu sesión será iniciada automáticamente una vez que la aplicación se reinicie.\n",
|
||||
"mobile.settings.modal.check_for_upgrade": "Comprobar actualizaciones",
|
||||
"mobile.settings.team_selection": "Seleccionar Equipo",
|
||||
"mobile.suggestion.members": "Miembros",
|
||||
"modal.manaul_status.ask": "No preguntarme de nuevo",
|
||||
"modal.manaul_status.button": "Sí, asigna mi estatus como \"En línea\"",
|
||||
"modal.manaul_status.cancel": "No, mantenerme como \"{status}\"",
|
||||
"modal.manaul_status.message": "¿Quiere cambiar tu estado a \"En línea\"?",
|
||||
"modal.manaul_status.title": "Tu estado es \"{status}\"",
|
||||
"modal.manaul_status.title_": "Tu estado actual es \"{status}\"",
|
||||
"modal.manaul_status.title_away": "Tu estado actual es \"Ausente\"",
|
||||
"modal.manaul_status.title_dnd": "Tu estado actual es \"No Molestar\"",
|
||||
"modal.manaul_status.title_offline": "Tu estado actual es \"Desconectado\"",
|
||||
"modal.manual_status.cancel_": "No, mantenerme como \"{status}\"",
|
||||
"modal.manual_status.cancel_away": "No, mantenerme como \"Ausente\"",
|
||||
"modal.manual_status.cancel_dnd": "No, mantenerme como \"No Molestar\"",
|
||||
"modal.manual_status.cancel_offline": "No, mantenerme como \"Desconectado\"",
|
||||
"more_channels.close": "Cerrar",
|
||||
"more_channels.create": "Crear Nuevo Canal",
|
||||
"more_channels.createClick": "Haz clic en 'Crear Nuevo Canal' para crear uno nuevo",
|
||||
@@ -2127,6 +2165,12 @@
|
||||
"permalink.error.title": "Mensaje no encontrado",
|
||||
"post_attachment.collapse": "Mostrar menos...",
|
||||
"post_attachment.more": "Mostrar más... ",
|
||||
"post_body.check_for_out_of_channel_mentions.link.and": " y ",
|
||||
"post_body.check_for_out_of_channel_mentions.link.private": "agregarlos a este canal privado",
|
||||
"post_body.check_for_out_of_channel_mentions.link.public": "agregarlos al canal",
|
||||
"post_body.check_for_out_of_channel_mentions.message.multiple": "fueron mencionados pero no son parte de este canal. Quieres ",
|
||||
"post_body.check_for_out_of_channel_mentions.message.one": "fue mencionado pero no es parte de este canal. Quieres ",
|
||||
"post_body.check_for_out_of_channel_mentions.message_last": "? Tendrán acceso al historial de mensajes.",
|
||||
"post_body.commentedOn": "Comentó el mensaje de {name}{apostrophe}: ",
|
||||
"post_body.deleted": "(mensaje eliminado)",
|
||||
"post_body.plusMore": " más {count, number} {count, plural, one {archivo} other {archivos}}",
|
||||
@@ -2222,15 +2266,13 @@
|
||||
"search_item.direct": "Mensajes Directos (con {username})",
|
||||
"search_item.jump": "Ir ",
|
||||
"search_results.noResults": "No se encontraron resultados. ¿Inténtalo de nuevo?",
|
||||
"search_results.noResults.partialPhraseSuggestion": "If you're searching a partial phrase (ex. searching \"rea\", looking for \"reach\" or \"reaction\"), append a * to your search term.",
|
||||
"search_results.noResults.stopWordsSuggestion": "Two letter searches and common words like \"this\", \"a\" and \"is\" won't appear in search results due to excessive results returned.",
|
||||
"search_results.noResults.partialPhraseSuggestion": "Si estás buscando una parte de la frase (ej. buscar \"alc\", mientras se quiere encontrar \"alcanzar\" o \"alcantara\"), anexa un * en el término de búsqueda.",
|
||||
"search_results.noResults.stopWordsSuggestion": "Las búsquedas de palabras de dos letras y palabras comunes como \"this\", \"a\" y \"is\" no aparecerá en los resultados de búsqueda debido a la excesiva cantidad de resultados devueltos.",
|
||||
"search_results.searching": "Buscando…",
|
||||
"search_results.usage.dataRetention": "Only messages posted in the last {days} days are returned. Contact your System Administrator for more detail.",
|
||||
"search_results.usage.fromInSuggestion": "Use {fromUser} to find posts from specific users and {inChannel} to find posts in specific channels",
|
||||
"search_results.usage.fromInSuggestion.fromUser": "from:",
|
||||
"search_results.usage.fromInSuggestion.inChannel": "in:",
|
||||
"search_results.usage.phrasesSuggestion": "Use {quotationMarks} to search for phrases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"quotation marks\"",
|
||||
"search_results.usage.dataRetention": "Sólo los mensajes publicados en los últimos {days} días son retornados. Póngase en contacto con su Administrador del Sistema para obtener más detalles.",
|
||||
"search_results.usage.fromInSuggestion": "Utiliza {fromUser} para encontrar mensajes de usuarios específicos y {inChannel} para encontrar mensajes en canales específicos",
|
||||
"search_results.usage.phrasesSuggestion": "Utiliza {quotationMarks} para realizar búsquedas de frases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"comillas\"",
|
||||
"search_results.usageFlag1": "Todavía no haz marcado ningún mensaje.",
|
||||
"search_results.usageFlag2": "Puedes marcar los mensajes y comentarios haciendo clic en el icono ",
|
||||
"search_results.usageFlag3": " junto a la marca de hora.",
|
||||
@@ -2380,6 +2422,7 @@
|
||||
"sso_signup.teamName": "Ingresa el nombre del nuevo equipo",
|
||||
"sso_signup.team_error": "Please enter a team name",
|
||||
"status_dropdown.set_away": "Ausente",
|
||||
"status_dropdown.set_dnd": "No Molestar",
|
||||
"status_dropdown.set_offline": "Desconectado",
|
||||
"status_dropdown.set_online": "En línea",
|
||||
"suggestion.loading": "Cargando...",
|
||||
@@ -2496,6 +2539,7 @@
|
||||
"user.settings.custom_theme.centerChannelTitle": "Estilos del Canal Central",
|
||||
"user.settings.custom_theme.codeTheme": "Tema para Código",
|
||||
"user.settings.custom_theme.copyPaste": "Copia y pega para compartir los colores del tema:",
|
||||
"user.settings.custom_theme.dndIndicator": "Indicador de No Molestar",
|
||||
"user.settings.custom_theme.linkButtonTitle": "Estilos de Enlaces y Botones",
|
||||
"user.settings.custom_theme.linkColor": "Color Enclaces",
|
||||
"user.settings.custom_theme.mentionBj": "Fondo Joya Mención",
|
||||
@@ -2623,6 +2667,7 @@
|
||||
"user.settings.modal.general": "General",
|
||||
"user.settings.modal.notifications": "Notificaciones",
|
||||
"user.settings.modal.security": "Seguridad",
|
||||
"user.settings.modal.sidebar": "Barra lateral",
|
||||
"user.settings.modal.title": "Configuración de la Cuenta",
|
||||
"user.settings.notifications.allActivity": "Para toda actividad",
|
||||
"user.settings.notifications.channelWide": "Menciones a todo el canal \"@channel\", \"@all\", \"@here\"",
|
||||
@@ -2757,6 +2802,11 @@
|
||||
"user.settings.security.switchSaml": "Cambiar para utilizar SAML SSO",
|
||||
"user.settings.security.title": "Configuración de Seguridad",
|
||||
"user.settings.security.viewHistory": "Visualizar historial de acceso",
|
||||
"user.settings.sidebar.after_seven_days": "Después de 7 días sin mensajes nuevos",
|
||||
"user.settings.sidebar.autoCloseDMDesc": "Las conversaciones en Mensajes Directos pueden re-abrirse con el botón “+” en la barra lateral o utilizando el Cambiador de Canal (CTRL+K). ",
|
||||
"user.settings.sidebar.autoCloseDMTitle": "Cerrar Mensajes Directos Automáticamente",
|
||||
"user.settings.sidebar.never": "Nunca",
|
||||
"user.settings.sidebar.title": "Preferencias de la Barra Lateral",
|
||||
"user.settings.tokens.cancel": "Cancelar",
|
||||
"user.settings.tokens.clickToEdit": "Haga clic en 'Editar' para gestionar sus tokens de acceso personales",
|
||||
"user.settings.tokens.confirmCreateButton": "Sí, Crear",
|
||||
@@ -2768,8 +2818,8 @@
|
||||
"user.settings.tokens.copy": "Por favor, copie el token de acceso a continuación. No podrás volver a verlo!",
|
||||
"user.settings.tokens.create": "Crear Nuevo Token",
|
||||
"user.settings.tokens.delete": "Eliminar",
|
||||
"user.settings.tokens.description": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Tokens de acceso personales</a> funciona similar a un token de sesión y puede ser utilizado por integraciones para <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">autenticar contra la REST API</a>.",
|
||||
"user.settings.tokens.description_mobile": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Tokens de acceso personales</a> funciona similar a un token de sesión y puede ser utilizado por integraciones para <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">autenticar contra la REST API</a>. Crea un nuevo token desde tu computador.",
|
||||
"user.settings.tokens.description": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Los Tokens de acceso personales</a> funcionan similar a un token de sesión y puede ser utilizado por integraciones para <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">autenticar contra la REST API</a>.",
|
||||
"user.settings.tokens.description_mobile": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Los tokens de acceso personales</a> funciona similar a un token de sesión y puede ser utilizado por integraciones para <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">autenticar contra la REST API</a>. Crea un nuevo token desde tu computador.",
|
||||
"user.settings.tokens.id": "Token ID: ",
|
||||
"user.settings.tokens.name": "Descripción del Token: ",
|
||||
"user.settings.tokens.nameHelp": "Ingresa una descripción para to token para que recuerdes que hace.",
|
||||
@@ -2780,6 +2830,7 @@
|
||||
"user.settings.tokens.tokenId": "Token ID: ",
|
||||
"user.settings.tokens.userAccessTokensNone": "No hay tokens de acceso personales.",
|
||||
"user_list.notFound": "No se encontraron usuarios",
|
||||
"user_profile.account.editSettings": "Editar Configuración de la Cuenta",
|
||||
"user_profile.send.dm": "Enviar Mensaje",
|
||||
"user_profile.webrtc.call": "Iniciar llamada de vídeo",
|
||||
"user_profile.webrtc.offline": "El usuario está desconectado",
|
||||
|
||||
@@ -269,10 +269,13 @@
|
||||
"admin.database.title": "Paramètres de base de données",
|
||||
"admin.developer.title": "Paramètres de développement",
|
||||
"admin.elasticsearch.bulkIndexButton.error": "Impossible de planifier la tâche d'indexation en masse : {error}",
|
||||
"admin.elasticsearch.bulkIndexingTitle": "Bulk Indexing:",
|
||||
"admin.elasticsearch.connectionUrlDescription": "L'adresse du serveur Elasticsearch. {documentationLink}",
|
||||
"admin.elasticsearch.connectionUrlExample": "Ex. : \"https://elasticsearch.example.org:9200\"",
|
||||
"admin.elasticsearch.connectionUrlExample.documentationLinkText": "Veuillez vous référer à la documentation pour les instructions de configuration du serveur.",
|
||||
"admin.elasticsearch.connectionUrlTitle": "Adresse de connexion du serveur :",
|
||||
"admin.elasticsearch.createJob.help": "All posts in the database will be indexed from oldest to newest. Elasticsearch is available during indexing but search results may be incomplete until the indexing job is complete.",
|
||||
"admin.elasticsearch.createJob.title": "Index Now",
|
||||
"admin.elasticsearch.elasticsearch_test_button": "Tester la connexion",
|
||||
"admin.elasticsearch.enableIndexingDescription": "Lorsqu'activé, l'indexation des nouveaux messages s'effectue automatiquement. Les requêtes de recherche utiliseront la base de données tant que \"Activer Elasticsearch pour les requêtes de recherche\" est activé. {documentationLink}",
|
||||
"admin.elasticsearch.enableIndexingDescription.documentationLinkText": "Pour en savoir davantage sur Elasticsearch, rendez-vous dans notre documentation.",
|
||||
@@ -300,22 +303,6 @@
|
||||
"admin.elasticsearch.usernameDescription": "(Facultatif) Le nom d'utilisateur permettant de s'authentifier au serveur Elasticsearch.",
|
||||
"admin.elasticsearch.usernameExample": "Ex. : \"elastic\"",
|
||||
"admin.elasticsearch.usernameTitle": "Nom d'utilisateur du serveur :",
|
||||
"admin.elasticsearchStatus.bulkIndexLabel": "Indexation en masse :",
|
||||
"admin.elasticsearchStatus.cancelButton": "Annuler",
|
||||
"admin.elasticsearchStatus.status": "État : ",
|
||||
"admin.elasticsearchStatus.statusCancelled": "La tâche d'indexation a été annulée.",
|
||||
"admin.elasticsearchStatus.statusError": "Erreur d'indexation.",
|
||||
"admin.elasticsearchStatus.statusError.help": "Mattermost a rencontré une erreur lors de la construction de l'index d'Elasticsearch : {error}",
|
||||
"admin.elasticsearchStatus.statusInProgress": "Tâche en cours. {percent}% terminé.",
|
||||
"admin.elasticsearchStatus.statusInProgress.help": "L'indexation est en cours sur la tâche du server. Si Elasticsearch est activé, les résultats de recherche peuvent être incomplets jusqu'à ce que la tâche soit terminée.",
|
||||
"admin.elasticsearchStatus.statusIndexingDisabled": "Indexation désactivée.",
|
||||
"admin.elasticsearchStatus.statusLoading": "Chargement…",
|
||||
"admin.elasticsearchStatus.statusNoJobs": "Aucune tâche d'indexation mise en file d'attente.",
|
||||
"admin.elasticsearchStatus.statusPending": "Tâche en attente.",
|
||||
"admin.elasticsearchStatus.statusPending.help": "La tâche d'indexation d'Elasticsearch est mise en file d'attente sur la tâche du serveur. Si Elasticsearch est activé, les résultats de recherche peuvent être incomplets jusqu'à ce que la tâche soit terminée.",
|
||||
"admin.elasticsearchStatus.statusRequestCancel": "Annulation de la tâche...",
|
||||
"admin.elasticsearchStatus.statusSuccess": "Indexation terminée.",
|
||||
"admin.elasticsearchStatus.statusSuccess.help": "L'indexation est terminée. Les nouveaux messages sont automatiquement indexées.",
|
||||
"admin.email.agreeHPNS": " J’ai compris et j’accepte les <a href=\"https://about.mattermost.com/hpns-terms/\" target=\"_blank\">termes de service</a> et la <a href=\"https://about.mattermost.com/hpns-privacy/\" target=\"_blank\">politique de confidentialité</a> du service de notifications push hébergé par Mattermost.",
|
||||
"admin.email.allowEmailSignInDescription": "Lorsqu'activé, les utilisateurs peuvent se connecter avec leur adresse e-mail et leur mot de passe.",
|
||||
"admin.email.allowEmailSignInTitle": "Activer la connexion avec une adresse e-mail : ",
|
||||
@@ -523,7 +510,7 @@
|
||||
"admin.integrations.external": "Services externes",
|
||||
"admin.integrations.webrtc": "Mattermost WebRTC",
|
||||
"admin.jobTable.cancelButton": "Annuler",
|
||||
"admin.jobTable.headerExtraInfo": "Extra Information",
|
||||
"admin.jobTable.headerExtraInfo": "Details",
|
||||
"admin.jobTable.headerFinishAt": "Finish Time",
|
||||
"admin.jobTable.headerRunTime": "Run Time",
|
||||
"admin.jobTable.headerStatus": "État",
|
||||
@@ -548,6 +535,8 @@
|
||||
"admin.ldap.emailAttrEx": "Ex. : \"mail\" ou \"userPrincipalName\"",
|
||||
"admin.ldap.emailAttrTitle": "Attribut \"adresse e-mail\" :",
|
||||
"admin.ldap.enableDesc": "Lorsqu'activé, Mattermost permet l'authentification à l'aide d'un serveur AD/LDAP",
|
||||
"admin.ldap.enableSyncDesc": "When true, Mattermost periodically synchronizes users from AD/LDAP.",
|
||||
"admin.ldap.enableSyncTitle": "Enable Synchronization with AD/LDAP:",
|
||||
"admin.ldap.enableTitle": "Activer la connexion avec AD/LDAP :",
|
||||
"admin.ldap.firstnameAttrDesc": "(Optionnel) L'attribut du serveur AD/LDAP qui est utilisé pour les prénoms des utilisateurs de Mattermost. Lorsque défini, les utilisateurs ne peuvent pas éditer leur prénom étant donné qu'il est alors synchronisé avec le serveur LDAP. Lorsque laissé vide, les utilisateurs peuvent définir leur propre prénom dans les paramètres du compte.",
|
||||
"admin.ldap.firstnameAttrEx": "Ex. : \"givenName\"",
|
||||
@@ -640,6 +629,7 @@
|
||||
"admin.logs.title": "Journaux du serveur",
|
||||
"admin.manage_roles.additionalRoles": "Sélectionner des autorisations supplémentaires pour le compte. <a href=\"https://about.mattermost.com/default-permissions\" target=\"_blank\">En savoir plus sur les rôles et autorisations</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokens": "Autoriser ce compte à générer <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">des jetons d'accès personnel</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokensDesc": "Removing this permission doesn't delete existing tokens. To delete them, go to the user's Manage Tokens menu.",
|
||||
"admin.manage_roles.cancel": "Annuler",
|
||||
"admin.manage_roles.manageRolesTitle": "Gérer les rôles",
|
||||
"admin.manage_roles.postAllPublicRole": "Accède aux messages de tous les canaux publics de Mattermost.",
|
||||
@@ -698,18 +688,19 @@
|
||||
"admin.password.requirementsDescription": "Lettres obligatoires pour un mot de passe valide.",
|
||||
"admin.password.symbol": "Au moins un symbole (ex : \"~!@#$%^&*()\")",
|
||||
"admin.password.uppercase": "Au moins une majuscule",
|
||||
"admin.plugin.activeTitle": "Active Plugins: ",
|
||||
"admin.plugin.banner": "Plugins are experimental and not recommended for use in production.",
|
||||
"admin.plugin.desc": "Description",
|
||||
"admin.plugin.error.activate": "Unable to upload the plugin. It may conflict with another plugin on your server.",
|
||||
"admin.plugin.error.extract": "Encountered an error when extracting the plugin. Review your plugin file content and try again.",
|
||||
"admin.plugin.id": "ID : ",
|
||||
"admin.plugin.no_plugins": "No active plugins.",
|
||||
"admin.plugin.installedDesc": "Installed plugins on your Mattermost server. Pre-packaged plugins are installed by default, and can be deactivated but not removed.",
|
||||
"admin.plugin.installedTitle": "Installed Plugins: ",
|
||||
"admin.plugin.management.title": "Management",
|
||||
"admin.plugin.no_plugins": "No installed plugins.",
|
||||
"admin.plugin.remove": "Remove",
|
||||
"admin.plugin.removing": "Removing...",
|
||||
"admin.plugin.title": "Plugins (Experimental)",
|
||||
"admin.plugin.upload": "Télécharger",
|
||||
"admin.plugin.uploadDesc": "Upload a plugin for your Mattermost server. Adding or removing a webapp plugin requires users to refresh their browser or Desktop App before taking effect. See <a href=\"https://about.mattermost.com/default-plugins\">documentation</a> to learn more.",
|
||||
"admin.plugin.uploadDesc": "Upload a plugin for your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugin-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugin.uploadTitle": "Upload Plugin: ",
|
||||
"admin.plugin.uploading": "téléchargement..",
|
||||
"admin.plugins.jira": "JIRA (Beta)",
|
||||
@@ -725,6 +716,11 @@
|
||||
"admin.plugins.jira.userDescription": "Spécifiez le nom d'utilisateur auquel cette intégration est liée.",
|
||||
"admin.plugins.jira.userLabel": "Utilisateur :",
|
||||
"admin.plugins.jira.webhookDocsLink": "documentation",
|
||||
"admin.plugins.settings.enable": "Enable Plugins: ",
|
||||
"admin.plugins.settings.enableDesc": "When true, enables plugins on your Mattermost server. Use plugins to integrate with third-party systems, extend functionality or customize the user interface of your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugins\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.enableUploads": "Enable Plugin Uploads: ",
|
||||
"admin.plugins.settings.enableUploadsDesc": "When true, enables plugin uploads by System Admins at <strong>Plugins > Management</strong>. If you do not plan to upload a plugin, set to false to control which plugins are installed on your server. See <a href=\"https://about.mattermost.com/default-plugins-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.title": "Configuration",
|
||||
"admin.privacy.showEmailDescription": "Lorsque désactivé, l'adresse e-mail des membres est cachée de tout le monde sauf des administrateurs système.",
|
||||
"admin.privacy.showEmailTitle": "Afficher l'adresse e-mail : ",
|
||||
"admin.privacy.showFullNameDescription": "Lorsque désactivé, le nom complet des membres est caché de tout le monde sauf des administrateurs système. Le nom d'utilisateur s'affiche alors à la place du nom complet.",
|
||||
@@ -768,9 +764,9 @@
|
||||
"admin.requestButton.loading": " Chargement…",
|
||||
"admin.requestButton.requestFailure": "Erreur de test : {error}",
|
||||
"admin.requestButton.requestSuccess": "Test effectué avec succès",
|
||||
"admin.reset_password.close": "Quitter",
|
||||
"admin.reset_password.cancel": "Annuler",
|
||||
"admin.reset_password.newPassword": "Nouveau mot de passe",
|
||||
"admin.reset_password.select": "Confirmer",
|
||||
"admin.reset_password.reset": "Réinitialiser",
|
||||
"admin.reset_password.submit": "Veuillez spécifier au moins {chars} caractères.",
|
||||
"admin.reset_password.titleReset": "Réinitialiser le mot de passe",
|
||||
"admin.reset_password.titleSwitch": "Basculez le type d'authentification sur le couple l’adresse e-mail / mot de passe",
|
||||
@@ -783,6 +779,8 @@
|
||||
"admin.saml.emailAttrEx": "Ex. : \"Email\" ou \"EmailPrincipal\"",
|
||||
"admin.saml.emailAttrTitle": "Attribut \"adresse e-mail\" :",
|
||||
"admin.saml.enableDescription": "Lorsqu'activé, Mattermost autorise la connexion en utilisant SAML. Consultez la <a href='http://docs.mattermost.com/deployment/sso-saml.html' target='_blank'>documentation</a> pour en savoir davantage sur la configuration de SAML pour Mattermost.",
|
||||
"admin.saml.enableSyncWithLdapDescription": "When true, Mattermost periodically synchronizes SAML user attributes, including user deactivation and removal, from AD/LDAP. Enable and configure synchronization settings at <strong>Authentication > AD/LDAP</strong>. See <a href='https://about.mattermost.com/default-saml-ldap-sync' target='_blank'>documentation</a> to learn more.",
|
||||
"admin.saml.enableSyncWithLdapTitle": "Enable Synchronizing SAML Accounts With AD/LDAP:",
|
||||
"admin.saml.enableTitle": "Activer la connexion avec SAML :",
|
||||
"admin.saml.encryptDescription": "Lorsque désactivé, Mattermost ne déchiffre pas les Assertions SAML chiffrées avec votre clé publique provenant du certificat de votre fournisseur de services. Ceci n'est pas recommandé pour les environnements de production. Option réservée à des fins de test uniquement.",
|
||||
"admin.saml.encryptTitle": "Activer le chiffrement :",
|
||||
@@ -957,7 +955,8 @@
|
||||
"admin.sidebar.oauth": "OAuth 2.0",
|
||||
"admin.sidebar.other": "AUTRES",
|
||||
"admin.sidebar.password": "Mot de passe",
|
||||
"admin.sidebar.plugins": "Plugins (Experimental)",
|
||||
"admin.sidebar.plugins": "Plugins (Beta)",
|
||||
"admin.sidebar.plugins.configuration": "Configuration",
|
||||
"admin.sidebar.policy": "Règles",
|
||||
"admin.sidebar.privacy": "Confidentialité",
|
||||
"admin.sidebar.publicLinks": "Liens publics",
|
||||
@@ -1436,6 +1435,9 @@
|
||||
"delete_post.post": "Message",
|
||||
"delete_post.question": "Voulez-vous vraiment supprimer ce {term} ?",
|
||||
"delete_post.warning": "Ce message a {count, number} {count, plural, one {commentaire} other {commentaires}}.",
|
||||
"discard_changes_modal.leave": "Oui, abandonner",
|
||||
"discard_changes_modal.message": "Certaines modifications ne sont pas sauvegardées, voulez-vous vraiment abandonner ?",
|
||||
"discard_changes_modal.title": "Abandonner les modifications ?",
|
||||
"edit_channel_header.editHeader": "Modifier l'entête du canal...",
|
||||
"edit_channel_header.previewHeader": "Modifier l'entête",
|
||||
"edit_channel_header_modal.cancel": "Annuler",
|
||||
@@ -1865,6 +1867,8 @@
|
||||
"mobile.about.appVersion": "Version de l'App : {version} (Build {number})",
|
||||
"mobile.about.copyright": "Copyright 2015-{currentYear} Mattermost, Inc. Tous droits réservés",
|
||||
"mobile.about.database": "Base de données : {type}",
|
||||
"mobile.about.licensed": "Licensed to: {company}",
|
||||
"mobile.about.powered_by": "{site} is powered by Mattermost",
|
||||
"mobile.about.serverVersion": "Version du serveur : {version} (Build {number})",
|
||||
"mobile.about.serverVersionNoBuild": "Version du serveur : {version}",
|
||||
"mobile.account.notifications.email.footer": "Lorsque hors ligne ou absent de plus de cinq minutes",
|
||||
@@ -1878,6 +1882,14 @@
|
||||
"mobile.advanced_settings.reset_message": "\nCela effacera toutes les données en mode hors connexion et redémarrera l'application. Vous serez automatiquement reconnecté une fois l'application redémarrée.\n",
|
||||
"mobile.advanced_settings.reset_title": "Réinitialiser le cache",
|
||||
"mobile.advanced_settings.title": "Paramètres avancés",
|
||||
"mobile.android.camera_permission_denied_description": "To take photos and videos with your camera, please change your permission settings.",
|
||||
"mobile.android.camera_permission_denied_title": "Camera access is required",
|
||||
"mobile.android.permission_denied_dismiss": "Dismiss",
|
||||
"mobile.android.permission_denied_retry": "Set permission",
|
||||
"mobile.android.photos_permission_denied_description": "To upload images from your library, please change your permission settings.",
|
||||
"mobile.android.photos_permission_denied_title": "Photo library access is required",
|
||||
"mobile.android.videos_permission_denied_description": "To upload videos from your library, please change your permission settings.",
|
||||
"mobile.android.videos_permission_denied_title": "Video library access is required",
|
||||
"mobile.channel_drawer.search": "Jump to...",
|
||||
"mobile.channel_info.alertMessageDeleteChannel": "Voulez-vous vraiment supprimer le {term} {name} ?",
|
||||
"mobile.channel_info.alertMessageLeaveChannel": "Voulez-vous vraiment quitter le {term} {name} ?",
|
||||
@@ -1903,6 +1915,19 @@
|
||||
"mobile.channel_list.privateChannel": "Canal privé",
|
||||
"mobile.channel_list.publicChannel": "Canal public",
|
||||
"mobile.channel_list.unreads": "NON LUS",
|
||||
"mobile.client_upgrade": "Update App",
|
||||
"mobile.client_upgrade.can_upgrade_subtitle": "A new version is available for download.",
|
||||
"mobile.client_upgrade.can_upgrade_title": "Update Available",
|
||||
"mobile.client_upgrade.close": "Update Later",
|
||||
"mobile.client_upgrade.current_version": "Version du serveur : {version}",
|
||||
"mobile.client_upgrade.download_error.message": "An error occurred downloading the new version.",
|
||||
"mobile.client_upgrade.download_error.title": "Unable to Install Update",
|
||||
"mobile.client_upgrade.latest_version": "Version du serveur : {version}",
|
||||
"mobile.client_upgrade.must_upgrade_subtitle": "Please update the app to continue.",
|
||||
"mobile.client_upgrade.must_upgrade_title": "Update Required",
|
||||
"mobile.client_upgrade.no_upgrade_subtitle": "You already have the latest version.",
|
||||
"mobile.client_upgrade.no_upgrade_title": "Your App Is Up to Date",
|
||||
"mobile.client_upgrade.upgrade": "Mettre à jour",
|
||||
"mobile.components.channels_list_view.yourChannels": "Vos canaux :",
|
||||
"mobile.components.error_list.dismiss_all": "Annuler tout",
|
||||
"mobile.components.select_server_view.continue": "Continuer",
|
||||
@@ -1932,6 +1957,8 @@
|
||||
"mobile.file_upload.more": "Plus…",
|
||||
"mobile.file_upload.video": "Bibliothèque vidéo",
|
||||
"mobile.help.title": "Aide",
|
||||
"mobile.image_preview.deleted_post_message": "This post and it's files have been deleted. The previewer will now be closed.",
|
||||
"mobile.image_preview.deleted_post_title": "Post Deleted",
|
||||
"mobile.image_preview.save": "Save Image",
|
||||
"mobile.intro_messages.DM": "Vous êtes au début de votre historique de messages avec {teammate}. Les messages privés et les fichiers partagés ici ne sont pas visibles par les autres utilisateurs.",
|
||||
"mobile.intro_messages.default_message": "Il s'agit du premier canal que les utilisateurs voient lorsqu'ils s'inscrivent. Utilisez‑le pour poster des informations que tout le monde devrait connaître.",
|
||||
@@ -1945,7 +1972,10 @@
|
||||
"mobile.managed.exit": "Modifier",
|
||||
"mobile.managed.jailbreak": "Jailbroken devices are not trusted by {vendor}, please exit the app.",
|
||||
"mobile.managed.secured_by": "Secured by {vendor}",
|
||||
"mobile.markdown.code.copy_code": "Copy Code",
|
||||
"mobile.markdown.code.plusMoreLines": "+{count, number} more lines",
|
||||
"mobile.markdown.link.copy_url": "Copy URL",
|
||||
"mobile.mention.copy_mention": "Copy Mention",
|
||||
"mobile.more_dms.start": "Démarrer",
|
||||
"mobile.more_dms.title": "Nouvelle conversation",
|
||||
"mobile.notice_mobile_link": "applications mobiles",
|
||||
@@ -1994,6 +2024,7 @@
|
||||
"mobile.post.failed_title": "Impossible d'envoyer votre message",
|
||||
"mobile.post.retry": "Rafraîchir",
|
||||
"mobile.post_info.add_reaction": "Add Reaction",
|
||||
"mobile.post_info.copy_post": "Copy Post",
|
||||
"mobile.request.invalid_response": "Réponse invalide reçue du serveur.",
|
||||
"mobile.retry_message": "Refreshing messages failed. Pull up to try again.",
|
||||
"mobile.routes.channelInfo": "Information",
|
||||
@@ -2037,13 +2068,20 @@
|
||||
"mobile.settings.clear": "Effacer le stockage hors-ligne",
|
||||
"mobile.settings.clear_button": "Effacer",
|
||||
"mobile.settings.clear_message": "\nCela effacera toutes les données en mode hors connexion et redémarrera l'application. Vous serez automatiquement reconnecté une fois l'application redémarrée.\n",
|
||||
"mobile.settings.modal.check_for_upgrade": "Check for Updates",
|
||||
"mobile.settings.team_selection": "Sélection d'équipe",
|
||||
"mobile.suggestion.members": "Membres",
|
||||
"modal.manaul_status.ask": "Ne plus me demander",
|
||||
"modal.manaul_status.button": "Oui, définir mon état sur \"En ligne\"",
|
||||
"modal.manaul_status.cancel": "Non, conserver mon état \"{status}\"",
|
||||
"modal.manaul_status.message": "Voulez-vous définir votre état sur \"En ligne\"?",
|
||||
"modal.manaul_status.title": "Votre état est défini sur \"{status}\"",
|
||||
"modal.manaul_status.title_": "Votre état est défini sur \"{status}\"",
|
||||
"modal.manaul_status.title_away": "Votre état est défini sur \"{status}\"",
|
||||
"modal.manaul_status.title_dnd": "Your status is set to \"Do Not Disturb\"",
|
||||
"modal.manaul_status.title_offline": "Votre état est défini sur \"{status}\"",
|
||||
"modal.manual_status.cancel_": "Non, conserver mon état \"{status}\"",
|
||||
"modal.manual_status.cancel_away": "No, keep it as \"Away\"",
|
||||
"modal.manual_status.cancel_dnd": "No, keep it as \"Do Not Disturb\"",
|
||||
"modal.manual_status.cancel_offline": "No, keep it as \"Offline\"",
|
||||
"more_channels.close": "Fermer",
|
||||
"more_channels.create": "Créer un nouveau canal",
|
||||
"more_channels.createClick": "Veuillez cliquer sur \"Créer un nouveau canal\" pour en créer un nouveau",
|
||||
@@ -2127,6 +2165,12 @@
|
||||
"permalink.error.title": "Message introuvable",
|
||||
"post_attachment.collapse": "Afficher moins...",
|
||||
"post_attachment.more": "Afficher plus...",
|
||||
"post_body.check_for_out_of_channel_mentions.link.and": " and ",
|
||||
"post_body.check_for_out_of_channel_mentions.link.private": "add them to this private channel",
|
||||
"post_body.check_for_out_of_channel_mentions.link.public": "add them to the channel",
|
||||
"post_body.check_for_out_of_channel_mentions.message.multiple": "were mentioned but they are not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message.one": "was mentioned but is not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message_last": "? They will have access to all message history.",
|
||||
"post_body.commentedOn": "A commenté le message de {name} : ",
|
||||
"post_body.deleted": "(message supprimé)",
|
||||
"post_body.plusMore": " plus {count, number} other {count, plural, one {fichier} other {fichiers}}",
|
||||
@@ -2227,8 +2271,6 @@
|
||||
"search_results.searching": "Recherche en cours…",
|
||||
"search_results.usage.dataRetention": "Only messages posted in the last {days} days are returned. Contact your System Administrator for more detail.",
|
||||
"search_results.usage.fromInSuggestion": "Use {fromUser} to find posts from specific users and {inChannel} to find posts in specific channels",
|
||||
"search_results.usage.fromInSuggestion.fromUser": "from:",
|
||||
"search_results.usage.fromInSuggestion.inChannel": "in:",
|
||||
"search_results.usage.phrasesSuggestion": "Use {quotationMarks} to search for phrases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"quotation marks\"",
|
||||
"search_results.usageFlag1": "Vous n'avez pas encore de messages marqués d'un indicateur.",
|
||||
@@ -2380,6 +2422,7 @@
|
||||
"sso_signup.teamName": "Entrez le nom de votre nouvelle équipe",
|
||||
"sso_signup.team_error": "Veuillez spécifier le nom de votre équipe",
|
||||
"status_dropdown.set_away": "Absent",
|
||||
"status_dropdown.set_dnd": "Do Not Disturb",
|
||||
"status_dropdown.set_offline": "Hors ligne",
|
||||
"status_dropdown.set_online": "En ligne",
|
||||
"suggestion.loading": "Chargement…",
|
||||
@@ -2496,6 +2539,7 @@
|
||||
"user.settings.custom_theme.centerChannelTitle": "Styles de l'espace central",
|
||||
"user.settings.custom_theme.codeTheme": "Code du thème",
|
||||
"user.settings.custom_theme.copyPaste": "Copiez/Collez pour partager les couleurs du thème :",
|
||||
"user.settings.custom_theme.dndIndicator": "Do Not Disturb Indicator",
|
||||
"user.settings.custom_theme.linkButtonTitle": "Styles des boutons et liens",
|
||||
"user.settings.custom_theme.linkColor": "Couleur de lien",
|
||||
"user.settings.custom_theme.mentionBj": "Arrière-plan de la bulle de mention",
|
||||
@@ -2623,6 +2667,7 @@
|
||||
"user.settings.modal.general": "Général",
|
||||
"user.settings.modal.notifications": "Notifications",
|
||||
"user.settings.modal.security": "Sécurité",
|
||||
"user.settings.modal.sidebar": "Sidebar",
|
||||
"user.settings.modal.title": "Paramètres du compte",
|
||||
"user.settings.notifications.allActivity": "Pour toute activité",
|
||||
"user.settings.notifications.channelWide": "Mentions globales au canal \"@channel\", \"@all\", \"@here\"",
|
||||
@@ -2757,6 +2802,11 @@
|
||||
"user.settings.security.switchSaml": "Utiliser l'authentification unique (SSO) via SAML",
|
||||
"user.settings.security.title": "Paramètres de sécurité",
|
||||
"user.settings.security.viewHistory": "Voir l'historique d'accès",
|
||||
"user.settings.sidebar.after_seven_days": "After 7 days with no new messages",
|
||||
"user.settings.sidebar.autoCloseDMDesc": "Direct Message conversations can be reopened with the “+” button in the sidebar or using the Channel Switcher (CTRL+K).",
|
||||
"user.settings.sidebar.autoCloseDMTitle": "Automatically Close Direct Messages",
|
||||
"user.settings.sidebar.never": "Jamais",
|
||||
"user.settings.sidebar.title": "Sidebar Settings",
|
||||
"user.settings.tokens.cancel": "Annuler",
|
||||
"user.settings.tokens.clickToEdit": "Cliquez sur 'Modifier' pour gérer vos jetons d'accès",
|
||||
"user.settings.tokens.confirmCreateButton": "Oui, créer",
|
||||
@@ -2780,6 +2830,7 @@
|
||||
"user.settings.tokens.tokenId": "ID du jeton : ",
|
||||
"user.settings.tokens.userAccessTokensNone": "Aucun jeton d'accès personnel.",
|
||||
"user_list.notFound": "Aucun utilisateur trouvé.",
|
||||
"user_profile.account.editSettings": "Paramètres du compte",
|
||||
"user_profile.send.dm": "Envoyer un message",
|
||||
"user_profile.webrtc.call": "Démarrer un appel vidéo",
|
||||
"user_profile.webrtc.offline": "L'utilisateur est hors ligne",
|
||||
|
||||
@@ -234,7 +234,7 @@
|
||||
"admin.customization.enableCustomEmojiTitle": "Abilita Emoji personalizzati:",
|
||||
"admin.customization.enableEmojiPickerDesc": "Il selettore delle emoji consente agli utenti di selezionare un emoji e utilizzarla come reazione o per aggiungerla a un messaggio. Attivare il selettore delle emoji con un elevato numero di emoji personalizzate può rallentare la velocità del sistema.",
|
||||
"admin.customization.enableEmojiPickerTitle": "Attiva il selettore delle emoji:",
|
||||
"admin.customization.enableLinkPreviewsDesc": "Display a preview of website content below messages, when available. Users can disable these previews from Account Settings > Display > Website Link Previews.",
|
||||
"admin.customization.enableLinkPreviewsDesc": "Visualizza l'anteprima nel sito web sotto i messaggi, quando disponibile. Gli utenti possono disabilitare le anteprima da Impostazioni Account > Aspetto > Anteprima siti web.",
|
||||
"admin.customization.enableLinkPreviewsTitle": "Abilita anteprime collegamenti:",
|
||||
"admin.customization.iosAppDownloadLinkDesc": "Aggiungere un collegamento per scaricare l'app iOS. Gli utenti che accedano al sito da seb browser mobile verranno sollecitati con l'apertura di una pagina a scaricare l'app. Lasciare il campo in bianco per evitare la comparsa della pagina.",
|
||||
"admin.customization.iosAppDownloadLinkTitle": "Collegamento per scaricare l'app iOS:",
|
||||
@@ -269,10 +269,13 @@
|
||||
"admin.database.title": "Impostazioni database",
|
||||
"admin.developer.title": "Impostazioni sviluppatori",
|
||||
"admin.elasticsearch.bulkIndexButton.error": "Impossibile pianificare il lavoro di indicizzazione massiva: {error}",
|
||||
"admin.elasticsearch.bulkIndexingTitle": "Bulk Indexing:",
|
||||
"admin.elasticsearch.connectionUrlDescription": "Indirizzo del server Elasticsearch. {documentationLink}",
|
||||
"admin.elasticsearch.connectionUrlExample": "Es.: \"https://elasticsearch.example.org:9200\"",
|
||||
"admin.elasticsearch.connectionUrlExample.documentationLinkText": "Controlla la documentazione con le istruzioni per configurare il server.",
|
||||
"admin.elasticsearch.connectionUrlTitle": "Indirizzo del server:",
|
||||
"admin.elasticsearch.createJob.help": "All posts in the database will be indexed from oldest to newest. Elasticsearch is available during indexing but search results may be incomplete until the indexing job is complete.",
|
||||
"admin.elasticsearch.createJob.title": "Index Now",
|
||||
"admin.elasticsearch.elasticsearch_test_button": "Prova connessione",
|
||||
"admin.elasticsearch.enableIndexingDescription": "Se vero, l'indicizzazione delle nuove pubblicazioni è automatica. Le ricerche utilizzeranno il database finché \"Abilita Elasticsearch per le ricerche\" verrà attivo. {documentationLink}",
|
||||
"admin.elasticsearch.enableIndexingDescription.documentationLinkText": "Scopri di più su Elasticsearch nella nostra documentazione.",
|
||||
@@ -300,22 +303,6 @@
|
||||
"admin.elasticsearch.usernameDescription": "(Opzionale) Il nome utente per autenticarsi sul server Elasticsearch.",
|
||||
"admin.elasticsearch.usernameExample": "Es.: \"elastic\"",
|
||||
"admin.elasticsearch.usernameTitle": "Nome utente del server:",
|
||||
"admin.elasticsearchStatus.bulkIndexLabel": "Indicizzazione massiva:",
|
||||
"admin.elasticsearchStatus.cancelButton": "Annulla",
|
||||
"admin.elasticsearchStatus.status": "Stato: ",
|
||||
"admin.elasticsearchStatus.statusCancelled": "Lavoro di indicizzazione annullato.",
|
||||
"admin.elasticsearchStatus.statusError": "Errore di indicizzazione.",
|
||||
"admin.elasticsearchStatus.statusError.help": "Mattermost ha rilevato un problema durante la costruzione dell'indice di Elasticsearch: {error}",
|
||||
"admin.elasticsearchStatus.statusInProgress": "Lavoro in corso. {percent}%.",
|
||||
"admin.elasticsearchStatus.statusInProgress.help": "Indicizzazione in corso sul server. Se Elasticsearch è attivo, i risultati delle ricerche potrebbero essere incompleti fino al termine del lavoro.",
|
||||
"admin.elasticsearchStatus.statusIndexingDisabled": "Indicizzazione disabilitata.",
|
||||
"admin.elasticsearchStatus.statusLoading": "Caricamento...",
|
||||
"admin.elasticsearchStatus.statusNoJobs": "Nessun lavoro di indicizzazione in coda.",
|
||||
"admin.elasticsearchStatus.statusPending": "Lavoro in attesa.",
|
||||
"admin.elasticsearchStatus.statusPending.help": "Il lavoro di indicizzazione di Elasticsearch è in coda sul server. Se Elasticsearch è attivo, i risultato potrebbero essere incompleti fino al termine del lavoro.",
|
||||
"admin.elasticsearchStatus.statusRequestCancel": "Annulla lavoro...",
|
||||
"admin.elasticsearchStatus.statusSuccess": "Indicizzazione completata.",
|
||||
"admin.elasticsearchStatus.statusSuccess.help": "Indicizzazione completata, le nuove pubblicazioni saranno automaticamente indicizzate.",
|
||||
"admin.email.agreeHPNS": " Riconosco ed accetto i termini del Servizio di Notifiche Push di Mattermost <a href=\"https://about.mattermost.com/hpns-terms/\" target=\"_blank\">Termini del servizio</a> e <a href=\"https://about.mattermost.com/hpns-privacy/\" target=\"_blank\">Informativa sulla pivacy</a>.",
|
||||
"admin.email.allowEmailSignInDescription": "Quando abilitato, Mattermost permette agli utenti di registrarsi utilizzando la loro eMail e password.",
|
||||
"admin.email.allowEmailSignInTitle": "Abilita accesso con email: ",
|
||||
@@ -468,9 +455,9 @@
|
||||
"admin.gitlab.enableDescription": "Quando abilitato, Mattermost ammetterà iscrizione e creazione di gruppi utilizzando OAuth GitLab.",
|
||||
"admin.gitlab.enableTitle": "Abilita autenticazione con GitLab: ",
|
||||
"admin.gitlab.settingsTitle": "Impostazioni GitLab",
|
||||
"admin.gitlab.siteUrl": "GitLab Site URL: ",
|
||||
"admin.gitlab.siteUrlDescription": "Enter the URL of your GitLab instance, e.g. https://example.com:3000. If your GitLab instance is not set up with SSL, start the URL with http:// instead of https://.",
|
||||
"admin.gitlab.siteUrlExample": "E.g.: https://",
|
||||
"admin.gitlab.siteUrl": "URL sito GitLab: ",
|
||||
"admin.gitlab.siteUrlDescription": "Inserire l'URL della tua instanza GitLab, es. https://esempio.com:3000. Se l'istanza GitLab non è impostata con SSL, iniziare l'URL con http:// invece di https://.",
|
||||
"admin.gitlab.siteUrlExample": "Es.: https://",
|
||||
"admin.gitlab.tokenTitle": "Endpoint Token:",
|
||||
"admin.gitlab.userTitle": "Endpoint API utente:",
|
||||
"admin.google.EnableHtmlDesc": "<ol><li><a target='_blank' href='https://accounts.google.com/login'>Accedi</a> al tuo account Google.</li><li> Vai a <a target='_blank' href='https://console.developers.google.com'>https://console.developers.google.com</a>, clicca su <strong>Credenziali</strong> nella barra laterale a sinistra ed immetti \"Mattermost - nome-tua-azienda\" come <strong>Nome Progetto</strong>, in seguito clicca su <strong>Crea</strong>.</li><li>Clicca sulla <strong>scermata di consenso OAuth</strong> ed immetti \"Mattermost\" come <strong>Nome prodotto mostrato agli utenti</strong>, successivamente clicca su <strong>Salva</strong>.</li><li>Sotto l'intestazione <strong>Credenziali</strong>, clicca <strong>Crea credenziali</strong>, scegli <strong>ID client OAuth</strong>e seleziona <strong>Applicazione Web</strong>.</li><li>Sotto <strong>Restrizioni</strong> e <strong>Redirect URI Autorizzati</strong> immettere <strong>tuo-url-mattermost/signup/google/complete</strong> (esempio: http://localhost:8065/signup/google/complete). Clicca <strong>Crea</strong>.</li><li>Incolla <strong>ID Client</strong> e <strong>Segreto Client</strong> nei campi sottostanti, e poi clicca su <strong>Salva</strong>.</li><li>Infine, visita <a target='_blank' href='https://console.developers.google.com/apis/api/plus/overview'>Google+ API</a> e clicca <strong>Abilita</strong>. Potrebbe essere necessario qualche minuto affinchè le modifiche vengano propagate all'interno dei sistemi di Google.</li></ol>",
|
||||
@@ -548,6 +535,8 @@
|
||||
"admin.ldap.emailAttrEx": "Es.: \"mail\" o \"userPrincipalName\"",
|
||||
"admin.ldap.emailAttrTitle": "Attributi Email:",
|
||||
"admin.ldap.enableDesc": "Quando abilitato, Mattermost ammetterà il login utilizzando AD/LDAP",
|
||||
"admin.ldap.enableSyncDesc": "Se vero, Mattermost sincronizza periodicamente gli utenti da AD/LDAP.",
|
||||
"admin.ldap.enableSyncTitle": "Abilita sincronizzazione con AD/LDAP:",
|
||||
"admin.ldap.enableTitle": "Abilita il login con AD/LDAP:",
|
||||
"admin.ldap.firstnameAttrDesc": "(Opzionale) L'attributo usato nel server AD/LDAP che verrà utilizzato per popolare il campo nome proprio degli utenti in Mattermost. Quando abilitato, gli utenti non saranno in grado di modificare il loro nome proprio poichè sincronizzato con il server LDAP. Quando lasciato vuoto, gli utenti possono impostare il nome proprio nelle Impostazioni Account.",
|
||||
"admin.ldap.firstnameAttrEx": "Es.: \"givenName\"",
|
||||
@@ -640,6 +629,7 @@
|
||||
"admin.logs.title": "Log del Server",
|
||||
"admin.manage_roles.additionalRoles": "Seleziona permessi addizionali per l'account. <a href=\"https://about.mattermost.com/default-permissions\" target=\"_blank\">Scopri di più su ruoli e permessi</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokens": "Permetti a questo account di generare <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">token di accesso</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokensDesc": "Rimuovere questo permesso non elimina i token esistenti. Per eliminarli, utilizzare il menu utente Gestione Token.",
|
||||
"admin.manage_roles.cancel": "Annulla",
|
||||
"admin.manage_roles.manageRolesTitle": "Gestisci ruoli",
|
||||
"admin.manage_roles.postAllPublicRole": "Accede alle pubblicazione di tutti i canali pubblici.",
|
||||
@@ -651,7 +641,7 @@
|
||||
"admin.manage_roles.systemAdmin": "Amministratore di Sistema",
|
||||
"admin.manage_roles.systemMember": "Membro",
|
||||
"admin.manage_tokens.manageTokensTitle": "Gestione Token di accesso personali",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "I Token di accesso sono simili ai token di sessione e possono essere utilizzati dalle integrazioni per <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">autenticarsi con le API REST</a>. Più informazioni sui <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">token di accesso</a>.",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "I Token di accesso sono simili ai token di sessione e possono essere utilizzati dalle integrazioni per <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">interagire con il server di Mattermost</a>. I token sono disattivati se l'utente viene disattivato. Più informazioni sui <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">token di accesso</a>.",
|
||||
"admin.manage_tokens.userAccessTokensNone": "Nessun Token di accesso personale.",
|
||||
"admin.metrics.enableDescription": "Quando abilitato, Mattermost abiliterà il monitoraggio e l'analisi delle prestazioni. Consultare la <a href=\"http://docs.mattermost.com/deployment/metrics.html\" target='_blank'>documentazione</a> per ottenere maggiori informazioni su come configurare il monitoraggio delle prestazioni per Mattermost.",
|
||||
"admin.metrics.enableTitle": "Abilitare il monitor delle performance:",
|
||||
@@ -698,16 +688,17 @@
|
||||
"admin.password.requirementsDescription": "Tipi di carattere richiesti in una password valida.",
|
||||
"admin.password.symbol": "Almeno un simbolo (es. \"~!@#$%^&*()\")",
|
||||
"admin.password.uppercase": "Almeno una lettera maiuscola",
|
||||
"admin.plugin.activeTitle": "Plugin Attivi: ",
|
||||
"admin.plugin.banner": "I plugin sono sperimentali e non sono raccomandati per l'uso in produzione.",
|
||||
"admin.plugin.desc": "Descrizione:",
|
||||
"admin.plugin.error.activate": "Impossibile caricare il plugin. Può interferire con un altro plugin sul tuo server.",
|
||||
"admin.plugin.error.extract": "Rilevato errore durante l'estrazione del plugin. Ricontrolla il contenuto del plugin e riprova.",
|
||||
"admin.plugin.id": "ID:",
|
||||
"admin.plugin.installedDesc": "Installed plugins on your Mattermost server. Pre-packaged plugins are installed by default, and can be deactivated but not removed.",
|
||||
"admin.plugin.installedTitle": "Installed Plugins: ",
|
||||
"admin.plugin.management.title": "Management",
|
||||
"admin.plugin.no_plugins": "Nessun plugin attivo.",
|
||||
"admin.plugin.remove": "Rimuovi",
|
||||
"admin.plugin.removing": "Cancellazione...",
|
||||
"admin.plugin.title": "Plugin (Sperimentale)",
|
||||
"admin.plugin.upload": "Carica",
|
||||
"admin.plugin.uploadDesc": "Carica un plugin per il server Mattermost. Aggiungere o rimuovere un plugin webapp richiede un riavvio del browser o dell'App Desktop per l'attivazione. Vedere la <a href=\"https://about.mattermost.com/default-plugins\">documentazione</a> per ulteriori informazioni.",
|
||||
"admin.plugin.uploadTitle": "Carica Plugin: ",
|
||||
@@ -725,6 +716,11 @@
|
||||
"admin.plugins.jira.userDescription": "Seleziona il nome utente utilizzato dall'integrazione.",
|
||||
"admin.plugins.jira.userLabel": "Utente:",
|
||||
"admin.plugins.jira.webhookDocsLink": "documentazione",
|
||||
"admin.plugins.settings.enable": "Enable Plugins: ",
|
||||
"admin.plugins.settings.enableDesc": "When true, enables plugins on your Mattermost server. Use plugins to integrate with third-party systems, extend functionality or customize the user interface of your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugins\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.enableUploads": "Enable Plugin Uploads: ",
|
||||
"admin.plugins.settings.enableUploadsDesc": "When true, enables plugin uploads by System Admins at <strong>Plugins > Management</strong>. If you do not plan to upload a plugin, set to false to control which plugins are installed on your server. See <a href=\"https://about.mattermost.com/default-plugins-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.title": "Configuration",
|
||||
"admin.privacy.showEmailDescription": "Se falso, nasconde gli indirizzi email dei membri a tutti gli utenti esclusi gli Amministratori di Sistema.",
|
||||
"admin.privacy.showEmailTitle": "Mostra Indirizzo Email: ",
|
||||
"admin.privacy.showFullNameDescription": "Se falso, nascone i nomi completi dei membri a tutti gli utenti esclusi gli Amministratori di Sistema. Al posto del nome completo verrà visualizzato il nome utente.",
|
||||
@@ -768,9 +764,9 @@
|
||||
"admin.requestButton.loading": "Caricamento...",
|
||||
"admin.requestButton.requestFailure": "Errore: {error}",
|
||||
"admin.requestButton.requestSuccess": "Test eseguito con successo",
|
||||
"admin.reset_password.close": "Chiudi",
|
||||
"admin.reset_password.cancel": "Annulla",
|
||||
"admin.reset_password.newPassword": "Nuova Password",
|
||||
"admin.reset_password.select": "Seleziona",
|
||||
"admin.reset_password.reset": "Azzera",
|
||||
"admin.reset_password.submit": "Inserire almeno {chars} caratteri.",
|
||||
"admin.reset_password.titleReset": "Reimposta password",
|
||||
"admin.reset_password.titleSwitch": "Cambia Account a Email / Password",
|
||||
@@ -783,6 +779,8 @@
|
||||
"admin.saml.emailAttrEx": "Es.: \"Email\" or \"PrimaryEmail\"",
|
||||
"admin.saml.emailAttrTitle": "Attributo Email:",
|
||||
"admin.saml.enableDescription": "Quando abilitato, Mattermost permette il login usando SAML 2.0. Vedi la <a href='http://docs.mattermost.com/deployment/sso-saml.html' target='_blank'>documentazione</a> per altri particolari sulla configurazione SAML di Mattermost.",
|
||||
"admin.saml.enableSyncWithLdapDescription": "Se vero, Mattermost sincronizza periodicamente gli attributi SAML, inclusa la disattivazione e rimozione dell'utente, dal server AD/LDAP. Attivare e configurare la sincronizzazione in <strong>Autenticazione > AD/LDAP</strong>. Vedere la <a href='https://about.mattermost.com/default-saml-ldap-sync' target='_blank'>documentazione</a> per ulteriori informazioni.",
|
||||
"admin.saml.enableSyncWithLdapTitle": "Attiva la sincronizzazione degli account SAML con AD/LDAP:",
|
||||
"admin.saml.enableTitle": "Abilita accesso con SAML 2.0:",
|
||||
"admin.saml.encryptDescription": "Se falso, Mattermost non decodificherà le Asserzioni SAML codificate con il tuo Service Provider Public Certificate. Sconsigliato in ambienti di produzione. Solo per test.",
|
||||
"admin.saml.encryptTitle": "Abilita Codifica:",
|
||||
@@ -958,6 +956,7 @@
|
||||
"admin.sidebar.other": "ALTRI",
|
||||
"admin.sidebar.password": "Password",
|
||||
"admin.sidebar.plugins": "Plugin (Sperimentale)",
|
||||
"admin.sidebar.plugins.configuration": "Configuration",
|
||||
"admin.sidebar.policy": "Criteri",
|
||||
"admin.sidebar.privacy": "Privacy",
|
||||
"admin.sidebar.publicLinks": "Collegamenti pubblici",
|
||||
@@ -1436,6 +1435,9 @@
|
||||
"delete_post.post": "Spedisci",
|
||||
"delete_post.question": "Sei sicuro di voler eliminare questo {term}?",
|
||||
"delete_post.warning": "Questa pubblicazione ha {count, number} {count, plural, one {comment} other {comments}}.",
|
||||
"discard_changes_modal.leave": "Si, Scarta",
|
||||
"discard_changes_modal.message": "Hai dei cambiamenti non salvati, sei sicuro di volerli scartare?",
|
||||
"discard_changes_modal.title": "Scartare le modifiche?",
|
||||
"edit_channel_header.editHeader": "Modifica il titolo del canale...",
|
||||
"edit_channel_header.previewHeader": "Modifica titolo",
|
||||
"edit_channel_header_modal.cancel": "Cancella",
|
||||
@@ -1865,6 +1867,8 @@
|
||||
"mobile.about.appVersion": "Versione Applicazione: {version} (Build {number})",
|
||||
"mobile.about.copyright": "Copyright 2015-{currentYear} Mattermost, Inc. All rights reserved",
|
||||
"mobile.about.database": "Database: {type}",
|
||||
"mobile.about.licensed": "Licenza di: {company}",
|
||||
"mobile.about.powered_by": "{site} è offerto da Mattermost",
|
||||
"mobile.about.serverVersion": "Versione Server: {version} (Build {number})",
|
||||
"mobile.about.serverVersionNoBuild": "Versione Server: {version}",
|
||||
"mobile.account.notifications.email.footer": "Se fuori linea o assenter per più di cinque minuti",
|
||||
@@ -1878,6 +1882,14 @@
|
||||
"mobile.advanced_settings.reset_message": "\nQuesta operazione cancella tutti i dati salvati in locale e riavvia l'app. L'accesso verrà eseguito automaticamente al termine del riavvio.\n",
|
||||
"mobile.advanced_settings.reset_title": "Azzera Cache",
|
||||
"mobile.advanced_settings.title": "Impostazioni Avanzate",
|
||||
"mobile.android.camera_permission_denied_description": "Per scattare foto e girare video con la videocamera, modificare i permessi nelle impostazioni.",
|
||||
"mobile.android.camera_permission_denied_title": "L'accesso alla videocamera è richiesto",
|
||||
"mobile.android.permission_denied_dismiss": "Annulla",
|
||||
"mobile.android.permission_denied_retry": "Imposta permessi",
|
||||
"mobile.android.photos_permission_denied_description": "Per caricare immagini dalla libreria modificare i permessi nelle impostazioni.",
|
||||
"mobile.android.photos_permission_denied_title": "L'accesso alla libreria delle foto è richiesto",
|
||||
"mobile.android.videos_permission_denied_description": "Per caricare video dalla libreria modificare i permessi nelle impostazioni.",
|
||||
"mobile.android.videos_permission_denied_title": "L'accesso alla libreria dei video è richiesto",
|
||||
"mobile.channel_drawer.search": "Vai a...",
|
||||
"mobile.channel_info.alertMessageDeleteChannel": "Sei sicuro di voler eliminare questo {term} {name}?",
|
||||
"mobile.channel_info.alertMessageLeaveChannel": "Sei sicuro di voler tralasciare questo {term} {name}?",
|
||||
@@ -1903,6 +1915,19 @@
|
||||
"mobile.channel_list.privateChannel": "Canale Privato",
|
||||
"mobile.channel_list.publicChannel": "Canale Pubblico",
|
||||
"mobile.channel_list.unreads": "NON LETTI",
|
||||
"mobile.client_upgrade": "Aggiorna app",
|
||||
"mobile.client_upgrade.can_upgrade_subtitle": "Una nuova versione è disponibile per il download.",
|
||||
"mobile.client_upgrade.can_upgrade_title": "Aggiornamento disponibile",
|
||||
"mobile.client_upgrade.close": "Aggiorna più tardi",
|
||||
"mobile.client_upgrade.current_version": "Ultima Versione: {version}",
|
||||
"mobile.client_upgrade.download_error.message": "Si è verificato un errore durante l'aggiornamento.",
|
||||
"mobile.client_upgrade.download_error.title": "Impossibile installare l'aggiornamento",
|
||||
"mobile.client_upgrade.latest_version": "Versione Installata: {version}",
|
||||
"mobile.client_upgrade.must_upgrade_subtitle": "Aggiornare l'app per proseguire.",
|
||||
"mobile.client_upgrade.must_upgrade_title": "Aggiornamento Richiesto",
|
||||
"mobile.client_upgrade.no_upgrade_subtitle": "Si dispone già dell'ultima versione disponibile.",
|
||||
"mobile.client_upgrade.no_upgrade_title": "L'App è aggiornata",
|
||||
"mobile.client_upgrade.upgrade": "Aggiorna",
|
||||
"mobile.components.channels_list_view.yourChannels": "I tuoi canali:",
|
||||
"mobile.components.error_list.dismiss_all": "Ignora Tutti",
|
||||
"mobile.components.select_server_view.continue": "Continua",
|
||||
@@ -1932,6 +1957,8 @@
|
||||
"mobile.file_upload.more": "Più",
|
||||
"mobile.file_upload.video": "Libreria video",
|
||||
"mobile.help.title": "Aiuto",
|
||||
"mobile.image_preview.deleted_post_message": "Questa pubblicazione e i suoi file sono stati cancellati. L'anteprima verrà chiusa.",
|
||||
"mobile.image_preview.deleted_post_title": "Pubblicazione cancellata",
|
||||
"mobile.image_preview.save": "Salva Immagine",
|
||||
"mobile.intro_messages.DM": "Questo è l'inizio della tua conversazione privata con {teammate}. Messaggi diretti e file condivisi qui non saranno accessibili ad altre persone.",
|
||||
"mobile.intro_messages.default_message": "Questo è il primo canale che i colleghi vedranno una volta effettuato l'accesso - usalo per comunicare aggiornamenti che chiunque dovrebbe conoscere.",
|
||||
@@ -1945,7 +1972,10 @@
|
||||
"mobile.managed.exit": "Esci",
|
||||
"mobile.managed.jailbreak": "Dispositivi con jailbreak considerati non sicuri da {vendor}, per favore uscire dall'app.",
|
||||
"mobile.managed.secured_by": "Verificato da {vendor}",
|
||||
"mobile.markdown.code.copy_code": "Copia codice",
|
||||
"mobile.markdown.code.plusMoreLines": "+{count, number} più righe",
|
||||
"mobile.markdown.link.copy_url": "Copia URL",
|
||||
"mobile.mention.copy_mention": "Copia citazione",
|
||||
"mobile.more_dms.start": "Inizio",
|
||||
"mobile.more_dms.title": "Nuova Conversazione",
|
||||
"mobile.notice_mobile_link": "apps per smartphone",
|
||||
@@ -1994,6 +2024,7 @@
|
||||
"mobile.post.failed_title": "Impossibile inviare il messaggio",
|
||||
"mobile.post.retry": "Aggiorna",
|
||||
"mobile.post_info.add_reaction": "Aggiungi reazione",
|
||||
"mobile.post_info.copy_post": "Copia pubblicazione",
|
||||
"mobile.request.invalid_response": "Risposta non valida ricevuta dal server.",
|
||||
"mobile.retry_message": "Aggiornamento messaggi fallito. Riprovare.",
|
||||
"mobile.routes.channelInfo": "Informazioni",
|
||||
@@ -2037,13 +2068,20 @@
|
||||
"mobile.settings.clear": "Pulisci la memoria offline",
|
||||
"mobile.settings.clear_button": "Pulisci",
|
||||
"mobile.settings.clear_message": "\nQuesta operazione cancella tutti i dati salvati in locale e riavvia l'app. Sarai automaticamente loggato al termine del riavvio.\n",
|
||||
"mobile.settings.modal.check_for_upgrade": "Controlla aggiornamenti",
|
||||
"mobile.settings.team_selection": "Seleziona gruppo",
|
||||
"mobile.suggestion.members": "Membri",
|
||||
"modal.manaul_status.ask": "Non chiedere più in futuro",
|
||||
"modal.manaul_status.button": "Si, imposta lo stato \"Online\"",
|
||||
"modal.manaul_status.cancel": "No, rimani \"{status}\"",
|
||||
"modal.manaul_status.message": "Vuoi cambiare lo status in \"Online\"?",
|
||||
"modal.manaul_status.title": "Lo stato è \"{status}\"",
|
||||
"modal.manaul_status.title_": "Il tuo stato è \"{status}\"",
|
||||
"modal.manaul_status.title_away": "Il tuo stato è \"Non al computer\"",
|
||||
"modal.manaul_status.title_dnd": "Il tuo stato è \"Non disturbare\"",
|
||||
"modal.manaul_status.title_offline": "Il tuo stato è \"Offline\"",
|
||||
"modal.manual_status.cancel_": "No, rimani \"{status}\"",
|
||||
"modal.manual_status.cancel_away": "No, rimani \"Non al computer\"",
|
||||
"modal.manual_status.cancel_dnd": "No, rimani \"Non disturbare\"",
|
||||
"modal.manual_status.cancel_offline": "No, rimani \"Offline\"",
|
||||
"more_channels.close": "Chiudi",
|
||||
"more_channels.create": "Crea un nuovo canale",
|
||||
"more_channels.createClick": "Click 'Crea un nuovo canale' per crearne uno nuovo",
|
||||
@@ -2127,6 +2165,12 @@
|
||||
"permalink.error.title": "Messaggio non trovato",
|
||||
"post_attachment.collapse": "Mostra meno...",
|
||||
"post_attachment.more": "Mostra di più...",
|
||||
"post_body.check_for_out_of_channel_mentions.link.and": " e ",
|
||||
"post_body.check_for_out_of_channel_mentions.link.private": "aggiungerli a questo canale privato",
|
||||
"post_body.check_for_out_of_channel_mentions.link.public": "aggiungerli al canale",
|
||||
"post_body.check_for_out_of_channel_mentions.message.multiple": "sono stati citati ma non sono nel canale. Vuoi ",
|
||||
"post_body.check_for_out_of_channel_mentions.message.one": "è stato citato ma non è nel canale. Vuoi ",
|
||||
"post_body.check_for_out_of_channel_mentions.message_last": "? Avranno accesso a tutta la cronologia dei messaggi.",
|
||||
"post_body.commentedOn": "Commento su {name}{apostrophe} messaggio: ",
|
||||
"post_body.deleted": "(messaggio cancellato)",
|
||||
"post_body.plusMore": " più {count, number} other {count, plural, one {file} other {files}}",
|
||||
@@ -2222,15 +2266,13 @@
|
||||
"search_item.direct": "Messaggio diretto (with {username})",
|
||||
"search_item.jump": "Salta",
|
||||
"search_results.noResults": "Nessun risultato trovato. Ritentare?",
|
||||
"search_results.noResults.partialPhraseSuggestion": "If you're searching a partial phrase (ex. searching \"rea\", looking for \"reach\" or \"reaction\"), append a * to your search term.",
|
||||
"search_results.noResults.stopWordsSuggestion": "Two letter searches and common words like \"this\", \"a\" and \"is\" won't appear in search results due to excessive results returned.",
|
||||
"search_results.noResults.partialPhraseSuggestion": "Se stai cercando una parte di frase (es. cercare \"rea\", per trovare \"reazione\" or \"reagente\"), aggiungi un * al termine di ricerca.",
|
||||
"search_results.noResults.stopWordsSuggestion": "Ricerche con due lettere o con parole comuni come \"questo\", \"a\" e \"è\" non forniranno risultati a causa dell'elevato numero di corrispondenze.",
|
||||
"search_results.searching": "Ricerca...",
|
||||
"search_results.usage.dataRetention": "Only messages posted in the last {days} days are returned. Contact your System Administrator for more detail.",
|
||||
"search_results.usage.fromInSuggestion": "Use {fromUser} to find posts from specific users and {inChannel} to find posts in specific channels",
|
||||
"search_results.usage.fromInSuggestion.fromUser": "from:",
|
||||
"search_results.usage.fromInSuggestion.inChannel": "in:",
|
||||
"search_results.usage.phrasesSuggestion": "Use {quotationMarks} to search for phrases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"quotation marks\"",
|
||||
"search_results.usage.dataRetention": "Solo i messaggi pubblicato negli ultimi {days} giorni saranno tornati. Contattare l'Amministratore di Sistema per ulteriori informazioni.",
|
||||
"search_results.usage.fromInSuggestion": "Usare {fromUser} per cercare le pubblicazioni di un utente specifico e {inChannel} per cercare in specifici canali",
|
||||
"search_results.usage.phrasesSuggestion": "Usare {quotationMarks} per cercare intere frasi",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"doppi apici\"",
|
||||
"search_results.usageFlag1": "Non hai contrassegnato nessun messaggio.",
|
||||
"search_results.usageFlag2": "Puoi contrassegnare i messaggi e i commenti cliccando ",
|
||||
"search_results.usageFlag3": " l'icona vicino alla data.",
|
||||
@@ -2380,6 +2422,7 @@
|
||||
"sso_signup.teamName": "Inserisci il nome del nuovo gruppo",
|
||||
"sso_signup.team_error": "Inserisci un nome gruppo",
|
||||
"status_dropdown.set_away": "Assente",
|
||||
"status_dropdown.set_dnd": "Non disturbare",
|
||||
"status_dropdown.set_offline": "Offline",
|
||||
"status_dropdown.set_online": "Online",
|
||||
"suggestion.loading": "Caricamento...",
|
||||
@@ -2496,6 +2539,7 @@
|
||||
"user.settings.custom_theme.centerChannelTitle": "Stili canale centrale",
|
||||
"user.settings.custom_theme.codeTheme": "Codice del tema",
|
||||
"user.settings.custom_theme.copyPaste": "Copia e incolla per condividere i colori del tema:",
|
||||
"user.settings.custom_theme.dndIndicator": "Indicatore Non disturbare",
|
||||
"user.settings.custom_theme.linkButtonTitle": "Stili pulsante e collegamento",
|
||||
"user.settings.custom_theme.linkColor": "Colore del collegamento",
|
||||
"user.settings.custom_theme.mentionBj": "BG gioiello citazione",
|
||||
@@ -2523,10 +2567,10 @@
|
||||
"user.settings.display.fixedWidthCentered": "Larghezza fissa, centrato",
|
||||
"user.settings.display.fullScreen": "A tutta larghezza",
|
||||
"user.settings.display.language": "Lingua",
|
||||
"user.settings.display.linkPreviewDesc": "When available, the first web link in a message will show a preview of the website content below the message.",
|
||||
"user.settings.display.linkPreviewDisplay": "Website Link Previews",
|
||||
"user.settings.display.linkPreviewOff": "Spento",
|
||||
"user.settings.display.linkPreviewOn": "Acceso",
|
||||
"user.settings.display.linkPreviewDesc": "Se disponibile, il primo collegamento web in un messaggio visualizzerà un'anteprima del contenuto del sito sotto il messaggio.",
|
||||
"user.settings.display.linkPreviewDisplay": "Anteprima siti web",
|
||||
"user.settings.display.linkPreviewOff": "Disattivato",
|
||||
"user.settings.display.linkPreviewOn": "Attivato",
|
||||
"user.settings.display.messageDisplayClean": "Standard",
|
||||
"user.settings.display.messageDisplayCleanDes": "Facile da leggere e scandire.",
|
||||
"user.settings.display.messageDisplayCompact": "Compatto",
|
||||
@@ -2623,6 +2667,7 @@
|
||||
"user.settings.modal.general": "Generale",
|
||||
"user.settings.modal.notifications": "Notifiche",
|
||||
"user.settings.modal.security": "Sicurezza",
|
||||
"user.settings.modal.sidebar": "Barra laterale",
|
||||
"user.settings.modal.title": "Impostazioni Account",
|
||||
"user.settings.notifications.allActivity": "Per tutte le attività",
|
||||
"user.settings.notifications.channelWide": "Citazioni per canale \"@channel\", \"@all\", \"@here\"",
|
||||
@@ -2757,6 +2802,11 @@
|
||||
"user.settings.security.switchSaml": "Cambia a SAML SSO",
|
||||
"user.settings.security.title": "Impostazioni di sicurezza",
|
||||
"user.settings.security.viewHistory": "Guarda Storico degli Accessi",
|
||||
"user.settings.sidebar.after_seven_days": "Dopo 7 giorni senza nuovi messaggi",
|
||||
"user.settings.sidebar.autoCloseDMDesc": "Le conversazioni dirette possono essere riaperte con il pulsante “+” nella barra laterale o utilizzando il cambio canale (CTRL+K).",
|
||||
"user.settings.sidebar.autoCloseDMTitle": "Chiudi automaticamente i messaggi diretti",
|
||||
"user.settings.sidebar.never": "Mai",
|
||||
"user.settings.sidebar.title": "Impostazioni barra laterale",
|
||||
"user.settings.tokens.cancel": "Annulla",
|
||||
"user.settings.tokens.clickToEdit": "Clicca 'Modifica' per gestire i token di accesso",
|
||||
"user.settings.tokens.confirmCreateButton": "Sì, Crealo",
|
||||
@@ -2780,6 +2830,7 @@
|
||||
"user.settings.tokens.tokenId": "Token ID: ",
|
||||
"user.settings.tokens.userAccessTokensNone": "Nessun token di accesso personale.",
|
||||
"user_list.notFound": "Nessun utente trovato",
|
||||
"user_profile.account.editSettings": "Impostazioni Account",
|
||||
"user_profile.send.dm": "Invia messaggio",
|
||||
"user_profile.webrtc.call": "Avvia videochiamata",
|
||||
"user_profile.webrtc.offline": "L'utente è offline",
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
"activity_log.moreInfo": "詳細情報",
|
||||
"activity_log.os": "OS: {os}",
|
||||
"activity_log.sessionId": "セッションID: {id}",
|
||||
"activity_log.sessionsDescription": "セッションは新しいブラウザーまたはデバイスからログインからログインした時に作成されます。Mattermostはシステム管理者が指定した期間内であればログインし直すことなく使用できます。すぐにログアウトしたい場合には、「ログアウト」ボタンを使用することで、セッションを終了させることができます。",
|
||||
"activity_log.sessionsDescription": "セッションはデバイスの新しいブラウザーからログインした時に作成されます。セッションにより、システム管理者が指定した期間内であればログインし直すことなくMattermostを使用できます。すぐにログアウトしたい場合には、下の「ログアウト」ボタンを使用することで、セッションを終了させることができます。",
|
||||
"activity_log_modal.android": "Android",
|
||||
"activity_log_modal.androidNativeApp": "Androidネイティブアプリ",
|
||||
"activity_log_modal.androidNativeClassicApp": "Androidネイティブクラシックアプリ",
|
||||
@@ -269,10 +269,13 @@
|
||||
"admin.database.title": "データベースの設定",
|
||||
"admin.developer.title": "開発者の設定",
|
||||
"admin.elasticsearch.bulkIndexButton.error": "一括インデックス付与処理をスケジューリングできませんでした: {error}",
|
||||
"admin.elasticsearch.bulkIndexingTitle": "Bulk Indexing:",
|
||||
"admin.elasticsearch.connectionUrlDescription": "Elasticsearchサーバーのアドレス。 {documentationLink}",
|
||||
"admin.elasticsearch.connectionUrlExample": "例: \"https://elasticsearch.example.org:9200\"",
|
||||
"admin.elasticsearch.connectionUrlExample.documentationLinkText": "サーバーのセットアップ手順はドキュメントを参照してください。",
|
||||
"admin.elasticsearch.connectionUrlTitle": "サーバー接続アドレス:",
|
||||
"admin.elasticsearch.createJob.help": "All posts in the database will be indexed from oldest to newest. Elasticsearch is available during indexing but search results may be incomplete until the indexing job is complete.",
|
||||
"admin.elasticsearch.createJob.title": "Index Now",
|
||||
"admin.elasticsearch.elasticsearch_test_button": "接続をテストする",
|
||||
"admin.elasticsearch.enableIndexingDescription": "有効な場合、新しい投稿へのインデックス付与は自動で行われます。\"Elasticsearchの検索クエリを有効にする\"が有効になるまで、検索クエリはデータベース検索を使用します。 {documentationLink}",
|
||||
"admin.elasticsearch.enableIndexingDescription.documentationLinkText": "Elasticsearchについてもっと詳しく知るには、ドキュメントを参照してください。",
|
||||
@@ -300,22 +303,6 @@
|
||||
"admin.elasticsearch.usernameDescription": "(オプション) Elasticsearchサーバーを認証するためのユーザー名。",
|
||||
"admin.elasticsearch.usernameExample": "例: \"elastic\"",
|
||||
"admin.elasticsearch.usernameTitle": "サーバーのユーザー名:",
|
||||
"admin.elasticsearchStatus.bulkIndexLabel": "一括インデックス付与:",
|
||||
"admin.elasticsearchStatus.cancelButton": "キャンセル",
|
||||
"admin.elasticsearchStatus.status": "状態: ",
|
||||
"admin.elasticsearchStatus.statusCancelled": "インデックス付与処理はキャンセルされました。",
|
||||
"admin.elasticsearchStatus.statusError": "インデックス付与でエラーが発生しました。",
|
||||
"admin.elasticsearchStatus.statusError.help": "Elasticsearchのインデックス構築時にMattermostがエラーを検知しました: {error}",
|
||||
"admin.elasticsearchStatus.statusInProgress": "処理実行中。 {percent}% 完了。",
|
||||
"admin.elasticsearchStatus.statusInProgress.help": "インデックス付与処理はジョブサーバーで実行中です。Elasticsearchが有効な場合、検索結果は処理が完了するまで不完全になる恐れがあります。",
|
||||
"admin.elasticsearchStatus.statusIndexingDisabled": "インデックス付与は無効になっています。",
|
||||
"admin.elasticsearchStatus.statusLoading": "読み込み中です…",
|
||||
"admin.elasticsearchStatus.statusNoJobs": "キューにインデックス付与処理がありません。",
|
||||
"admin.elasticsearchStatus.statusPending": "処理は保留中です。",
|
||||
"admin.elasticsearchStatus.statusPending.help": "Elasticsearchインデックス付与処理はジョブサーバーでキューに入れられました。Elasticsearchが有効な場合、検索結果は処理が完了するまで不完全になる恐れがあります。",
|
||||
"admin.elasticsearchStatus.statusRequestCancel": "処理をキャンセルしています...",
|
||||
"admin.elasticsearchStatus.statusSuccess": "インデックス付与が完了しました。",
|
||||
"admin.elasticsearchStatus.statusSuccess.help": "インデックス付与が完了し、新しい投稿には自動でインデックスが付与されます。",
|
||||
"admin.email.agreeHPNS": " 私はMattermostのホストするプッシュ通知サービスの<a href=\"https://about.mattermost.com/hpns-terms/\" target='_blank'>使用条件</a>と<a href=\"https://about.mattermost.com/hpns-privacy/\" target='_blank'>プライバシーポリシー</a>を理解し、承諾します。",
|
||||
"admin.email.allowEmailSignInDescription": "有効な場合、Mattermostはユーザーが電子メールアドレスとパスワードを使ってサインインをできるようにします。",
|
||||
"admin.email.allowEmailSignInTitle": "電子メールアドレスでのログインを有効にする: ",
|
||||
@@ -368,7 +355,7 @@
|
||||
"admin.email.pushDesc": "本番環境では有効に設定してください。有効な場合、Mattermostはプッシュ通知サーバーを通じてiOSとAndroidにプッシュ通知を送信します。",
|
||||
"admin.email.pushOff": "プッシュ通知を送らない",
|
||||
"admin.email.pushOffHelp": "セットアップオプションを設定する前に、<a href=\"https://about.mattermost.com/default-mobile-push-notifications\" target='_blank'>プッシュ通知についての説明</a>を参照してください。",
|
||||
"admin.email.pushServerDesc": "Mattermost プッシュ通知サービスをファイアウォールの内側に設置するには、https://github.com/mattermost/push-proxy を使ってください。テストするためには、http://push-test.mattermost.com を使うことができます。これには、Apple AppStoreにあるサンプルのMattermost iOSアプリで接続できます。本番環境でテストサービスを使わないでください。",
|
||||
"admin.email.pushServerDesc": "https://github.com/mattermost/push-proxy を使用することでMattermost プッシュ通知サービスをファイアウォールの内側に設置することができます。テスト用に http://push-test.mattermost.com を使用することができます。これには、Apple AppStoreにあるサンプルのMattermost iOSアプリで接続できます。本番環境ではテストサービスを使わないでください。",
|
||||
"admin.email.pushServerEx": "例: \"http://push-test.mattermost.com\"",
|
||||
"admin.email.pushServerTitle": "プッシュ通知サーバー:",
|
||||
"admin.email.pushTitle": "プッシュ通知を有効にする: ",
|
||||
@@ -469,8 +456,8 @@
|
||||
"admin.gitlab.enableTitle": "GitLabの認証を有効にする: ",
|
||||
"admin.gitlab.settingsTitle": "GitLabの設定",
|
||||
"admin.gitlab.siteUrl": "GitLab Site URL: ",
|
||||
"admin.gitlab.siteUrlDescription": "Enter the URL of your GitLab instance, e.g. https://example.com:3000. If your GitLab instance is not set up with SSL, start the URL with http:// instead of https://.",
|
||||
"admin.gitlab.siteUrlExample": "E.g.: https://",
|
||||
"admin.gitlab.siteUrlDescription": "GitLabインスタンスのURLを入力してください(例. https://example.com:3000)。GitLabインスタンスがSSLを使用していない場合、URLは https:// の代わりに http:// で始めてください。",
|
||||
"admin.gitlab.siteUrlExample": "例: https://",
|
||||
"admin.gitlab.tokenTitle": "トークンエンドポイント:",
|
||||
"admin.gitlab.userTitle": "ユーザーAPIエンドポイント:",
|
||||
"admin.google.EnableHtmlDesc": "<ol><li>あなたのGoogleアカウントに<a target='_blank' href='https://accounts.google.com/login'>ログイン</a>します。</li><li><a target='_blank' href='https://console.developers.google.com'>https://console.developers.google.com</a>へ行き、左サイドバーの<strong>認証情報</strong>をクリックし、<strong>認証情報を作成</strong>をクリックした後、<strong>プロジェクト名</strong>として\"Mattermost - 会社名\"を入力します。</li><li>ヘッダー部の<strong>OAuth同意画面</strong>をクリックし、<strong>ユーザーに表示するサービス名</strong>として\"Mattermost\"を入力し、<strong>保存</strong>をクリックします。</li><li>ヘッダー部の<strong>認証情報</strong>で、<strong>認証情報を作成</strong>をクリックし、<strong>OAuthクライアント ID</strong>を選び、<strong>ウェブアプリケーション</strong>を選択します。</li><li><strong>制限事項</strong>の<strong>承認済みのリダイレクト URI</strong>で<strong>your-mattermost-url/signup/google/complete</strong>(例: http://localhost:8065/signup/google/complete)を入力します。<strong>作成</strong>クリックします。</li><li><strong>クライアントID</strong>と<strong>クライアントシークレット</strong>を下記にペーストし、<strong>保存</strong>をクリックします。</li><li>最後に、<a target='_blank' href='https://console.developers.google.com/apis/api/plus/overview'>Google+ API</a>へ行き、<strong>有効にする</strong>をクリックします。Googleのシステムに伝播するのに数分かかります。</li></ol>",
|
||||
@@ -548,11 +535,13 @@
|
||||
"admin.ldap.emailAttrEx": "例: \"mail\" or \"userPrincipalName\"",
|
||||
"admin.ldap.emailAttrTitle": "電子メール属性値:",
|
||||
"admin.ldap.enableDesc": "有効な場合、MattermostはログインにAD/LDAPの使用を許可します",
|
||||
"admin.ldap.enableSyncDesc": "有効な場合、MattermostはAD/LDAPからユーザーを定期的に同期します。",
|
||||
"admin.ldap.enableSyncTitle": "AD/LDAPとの同期を有効にする:",
|
||||
"admin.ldap.enableTitle": "AD/LDAPでのサインインを有効にする:",
|
||||
"admin.ldap.firstnameAttrDesc": "(オプション) Mattermostのユーザーの名前(ファーストネーム)を設定するために使用されるAD/LDAPサーバーの属性です。設定された場合、この属性はLDAPサーバーと同期されるため、ユーザーは名前(ファーストネーム)を編集することはできません。空欄のままにした場合、ユーザーはアカウントの設定で自身の名前(ファーストネーム)を設定できます。",
|
||||
"admin.ldap.firstnameAttrEx": "例: \"givenName\"",
|
||||
"admin.ldap.firstnameAttrTitle": "名前(ファーストネーム)の属性値",
|
||||
"admin.ldap.idAttrDesc": "Mattermostで重複なくユーザーを認識するために使用されるAD/LDAPサーバーの属性です。AD/LDAPのこの属性値は変更されない値であるべきであり、ユーザー名やユーザーIDを使用します。この項目が変更されると、新しいMattermostアカウントが古いアカウントとは独立して作成されます。この値は、Mattermostのログイン画面の「AD/LDAPユーザー名」欄に入力します。通常、この属性値は、上の「ユーザー名の属性値」欄と同じです。あなたのチームがdomain\\\\usernameの形式を他のサービスにAD/LDAPを使ってログインするのに使用している場合には、サイト間の一貫性を維持するためこの項目にはdomain\\\\username形式を使ってください。",
|
||||
"admin.ldap.idAttrDesc": "Mattermostで重複なくユーザーを認識するために使用されるAD/LDAPサーバーの属性です。AD/LDAPのこの属性値は変更されない値であるべきであり、ユーザー名やユーザーIDを使用します。この項目が変更されると、新しいMattermostアカウントが古いアカウントとは独立して作成されます。この値は、Mattermostのログイン画面の「AD/LDAPユーザー名」欄に入力します。通常、この属性値は、上の「ユーザー名の属性値」欄と同じです。あなたのチームがdomain\\\\usernameの形式を他のサービスにAD/LDAPを使ってログインするのに使用している場合には、サイト間の一貫性を維持するためこの項目にはdomain\\\\username形式を使用してください。",
|
||||
"admin.ldap.idAttrEx": "例: \"sAMAccountName\"",
|
||||
"admin.ldap.idAttrTitle": "ID属性値: ",
|
||||
"admin.ldap.jobExtraInfo": "{ldapUsers} LDAPユーザーをスキャン。{updateCount}ユーザーが更新されました。{deleteCount}ユーザーが無効化されました。",
|
||||
@@ -640,6 +629,7 @@
|
||||
"admin.logs.title": "サーバーログ",
|
||||
"admin.manage_roles.additionalRoles": "アカウントに関する追加の権限を選択してください。 <a href=\"https://about.mattermost.com/default-permissions\" target=\"_blank\">役割と権限の詳細</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokens": "このアカウントで<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">パーソナルアクセストークン</a>を生成できるようにする.",
|
||||
"admin.manage_roles.allowUserAccessTokensDesc": "この権限を削除しても既存のトークンは削除されません。それらのトークンを削除するには、ユーザーのトークン管理メニューから操作してください。",
|
||||
"admin.manage_roles.cancel": "キャンセル",
|
||||
"admin.manage_roles.manageRolesTitle": "役割の管理",
|
||||
"admin.manage_roles.postAllPublicRole": "すべてのMattermost公開チャンネルの投稿へのアクセスする。",
|
||||
@@ -651,7 +641,7 @@
|
||||
"admin.manage_roles.systemAdmin": "システム管理者",
|
||||
"admin.manage_roles.systemMember": "メンバー",
|
||||
"admin.manage_tokens.manageTokensTitle": "パーソナルアクセストークン管理",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "パーソナルアクセストークンはセッショントークンと同様に機能し、統合機能が<a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">REST APIに対して認証</a>するために利用できます。詳しくは<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">パーソナルアクセストークン</a>を参照してください。",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "パーソナルアクセストークンはセッショントークンと同様に機能し、統合機能が<a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">Mattermostサーバーとやり取りする</a>する統合機能で使用することができます。ユーザーが無効化されるとトークンんも無効になります。詳しくは<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">パーソナルアクセストークン</a>を参照してください。",
|
||||
"admin.manage_tokens.userAccessTokensNone": "パーソナルアクセストークンが存在しません。",
|
||||
"admin.metrics.enableDescription": "有効な場合、Mattermostはパフォーマンスのモニタリングやプロファイリングが有効になります。Mattermostのパフォーマンスモニタリングの設定について、詳しくは<a href=\"http://docs.mattermost.com/deployment/metrics.html\" target='_blank'>documentation</a>を参照してください。",
|
||||
"admin.metrics.enableTitle": "パフォーマンスモニタリングを有効にする:",
|
||||
@@ -698,16 +688,17 @@
|
||||
"admin.password.requirementsDescription": "有効なパスワードで求められる文字の種類です。",
|
||||
"admin.password.symbol": "少なくとも1つの記号が必要です(例: \"~!@#$%^&*()\")",
|
||||
"admin.password.uppercase": "少なくとも1つの英大文字が必要です",
|
||||
"admin.plugin.activeTitle": "有効なプラグイン: ",
|
||||
"admin.plugin.banner": "プラグインは試験的な機能のため本番環境での使用はお勧めできません。",
|
||||
"admin.plugin.desc": "説明:",
|
||||
"admin.plugin.error.activate": "プラグインをアップロードできません。サーバーの他のプラグインと競合する可能性があります。",
|
||||
"admin.plugin.error.extract": "プラグインの抽出に失敗しました。プラグインファイルの内容を確認し、再度実行してください。",
|
||||
"admin.plugin.id": "ID:",
|
||||
"admin.plugin.installedDesc": "Installed plugins on your Mattermost server. Pre-packaged plugins are installed by default, and can be deactivated but not removed.",
|
||||
"admin.plugin.installedTitle": "Installed Plugins: ",
|
||||
"admin.plugin.management.title": "Management",
|
||||
"admin.plugin.no_plugins": "有効なプラグインがありません。",
|
||||
"admin.plugin.remove": "削除",
|
||||
"admin.plugin.removing": "削除中...",
|
||||
"admin.plugin.title": "プラグイン (試験的機能)",
|
||||
"admin.plugin.upload": "アップロード",
|
||||
"admin.plugin.uploadDesc": "あなたのMattermostサーバーへプラグインをアップロードします。ウェブアプリプラグインの追加や削除は、有効になる前にユーザーにブラウザやデスクトップアプリの再読み込みを要求します。詳しくは<a href=\"https://about.mattermost.com/default-plugins\">説明文書</a>を参照してください。",
|
||||
"admin.plugin.uploadTitle": "アップロードするプラグイン: ",
|
||||
@@ -725,6 +716,11 @@
|
||||
"admin.plugins.jira.userDescription": "この統合機能が付与されるユーザー名を選択してください。",
|
||||
"admin.plugins.jira.userLabel": "ユーザー:",
|
||||
"admin.plugins.jira.webhookDocsLink": "説明文書",
|
||||
"admin.plugins.settings.enable": "Enable Plugins: ",
|
||||
"admin.plugins.settings.enableDesc": "When true, enables plugins on your Mattermost server. Use plugins to integrate with third-party systems, extend functionality or customize the user interface of your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugins\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.enableUploads": "Enable Plugin Uploads: ",
|
||||
"admin.plugins.settings.enableUploadsDesc": "When true, enables plugin uploads by System Admins at <strong>Plugins > Management</strong>. If you do not plan to upload a plugin, set to false to control which plugins are installed on your server. See <a href=\"https://about.mattermost.com/default-plugins-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.title": "Configuration",
|
||||
"admin.privacy.showEmailDescription": "無効な場合、メンバーの電子メールアドレスをシステム管理者以外からは見えないようにします。",
|
||||
"admin.privacy.showEmailTitle": "電子メールアドレスを表示する: ",
|
||||
"admin.privacy.showFullNameDescription": "無効な場合、メンバーの氏名をシステム管理者以外からは見えないようにします。氏名の代わりにはユーザー名が表示されます。",
|
||||
@@ -768,9 +764,9 @@
|
||||
"admin.requestButton.loading": " 読み込み中…",
|
||||
"admin.requestButton.requestFailure": "テストが失敗しました: {error}",
|
||||
"admin.requestButton.requestSuccess": "テストが成功しました",
|
||||
"admin.reset_password.close": "閉じる",
|
||||
"admin.reset_password.cancel": "キャンセル",
|
||||
"admin.reset_password.newPassword": "新しいパスワード",
|
||||
"admin.reset_password.select": "選択する",
|
||||
"admin.reset_password.reset": "リセット",
|
||||
"admin.reset_password.submit": "少なくとも{chars}文字を入力してください。",
|
||||
"admin.reset_password.titleReset": "パスワードをリセットする",
|
||||
"admin.reset_password.titleSwitch": "アカウントを電子メールアドレス/パスワードに切り替える",
|
||||
@@ -783,6 +779,8 @@
|
||||
"admin.saml.emailAttrEx": "例: \"Email\"または\"PrimaryEmail\"",
|
||||
"admin.saml.emailAttrTitle": "電子メール属性値:",
|
||||
"admin.saml.enableDescription": "有効な場合、MattermostはSAML 2.0 を使ったログインができるようになります。SAMLの設定について、詳しくは、<a href='http://docs.mattermost.com/deployment/sso-saml.html' target='_blank'>説明文書</a>を参照してください。",
|
||||
"admin.saml.enableSyncWithLdapDescription": "有効な場合、Mattermostはユーザーの無効化や削除を含むSAMLユーザー属性をAD/LDAPサーバから定期的に同期します。<strong>認証 > AD/LDAP</strong>から同期の有効化や設定を行ってください。詳しくは <a href='https://about.mattermost.com/default-saml-ldap-sync' target='_blank'>説明文書</a>を参照してください。",
|
||||
"admin.saml.enableSyncWithLdapTitle": "AD/LDAPサーバーからのSAMLアカウント同期を有効にする:",
|
||||
"admin.saml.enableTitle": "SAML 2.0 でのログインを有効にする:",
|
||||
"admin.saml.encryptDescription": "無効な場合、Mattermostはサービスプロバイダーの公開証明書で暗号化されたSAML Assertionを複合しなくなります。",
|
||||
"admin.saml.encryptTitle": "暗号化を有効にする:",
|
||||
@@ -958,6 +956,7 @@
|
||||
"admin.sidebar.other": "その他",
|
||||
"admin.sidebar.password": "パスワード",
|
||||
"admin.sidebar.plugins": "プラグイン (試験的機能)",
|
||||
"admin.sidebar.plugins.configuration": "Configuration",
|
||||
"admin.sidebar.policy": "ポリシー",
|
||||
"admin.sidebar.privacy": "プライバシー",
|
||||
"admin.sidebar.publicLinks": "公開リンク",
|
||||
@@ -1410,7 +1409,7 @@
|
||||
"create_team.team_url.charLength": "名前は{min}文字以上の{max}文字以下にしてください",
|
||||
"create_team.team_url.creatingTeam": "チームを作成中です…",
|
||||
"create_team.team_url.finish": "完了",
|
||||
"create_team.team_url.hint": "<li>短く覚えやすいものがベストです</li><li>英小文字、数字、ダッシュを使ってください</li><li>英小文字で始めてください。ダッシュで終わることはできません</li>",
|
||||
"create_team.team_url.hint": "<li>短く覚えやすいものがベストです</li><li>英小文字、数字、ダッシュが使用できます</li><li>英小文字で始めてください。ダッシュで終わることはできません</li>",
|
||||
"create_team.team_url.regex": "英小文字、数字、ダッシュのみ使用できます。英小文字で始めてください。ダッシュで終わることはできません。",
|
||||
"create_team.team_url.required": "この項目は必須です",
|
||||
"create_team.team_url.taken": "このURLは <a href='https://docs.mattermost.com/help/getting-started/creating-teams.html#team-url' target='_blank'>予約語で始まっている</a>か、使用できません。 他のものを試してください。",
|
||||
@@ -1436,6 +1435,9 @@
|
||||
"delete_post.post": "投稿",
|
||||
"delete_post.question": "{term}を本当に削除しますか?",
|
||||
"delete_post.warning": "この投稿には {count, number} {count, plural, one {comment} other {comments}} が紐づいています。",
|
||||
"discard_changes_modal.leave": "破棄する",
|
||||
"discard_changes_modal.message": "保存されていない変更があります。変更を破棄しますか?",
|
||||
"discard_changes_modal.title": "変更を破棄しますか?",
|
||||
"edit_channel_header.editHeader": "チャンネルヘッダーを編集する...",
|
||||
"edit_channel_header.previewHeader": "ヘッダーを編集する",
|
||||
"edit_channel_header_modal.cancel": "キャンセル",
|
||||
@@ -1865,6 +1867,8 @@
|
||||
"mobile.about.appVersion": "バージョン: {version} (ビルド {number})",
|
||||
"mobile.about.copyright": "Copyright 2015-{currentYear} Mattermost, Inc. All rights reserved",
|
||||
"mobile.about.database": "データベース: {type}",
|
||||
"mobile.about.licensed": "ライセンス: {company}",
|
||||
"mobile.about.powered_by": "{site} はMattermostを利用しています",
|
||||
"mobile.about.serverVersion": "サーバーバージョン: {version} (ビルド {number})",
|
||||
"mobile.about.serverVersionNoBuild": "サーバーバージョン: {version}",
|
||||
"mobile.account.notifications.email.footer": "5分以上オフラインか離席中の場合",
|
||||
@@ -1878,6 +1882,14 @@
|
||||
"mobile.advanced_settings.reset_message": "\nこれにより全てのオフラインデータがクリアされ、アプリが再起動します。アプリが再起動されると、自動でログインされます。\n",
|
||||
"mobile.advanced_settings.reset_title": "キャッシュをリセットする",
|
||||
"mobile.advanced_settings.title": "詳細設定",
|
||||
"mobile.android.camera_permission_denied_description": "カメラで写真やビデオを撮るには権限設定を変更してください。",
|
||||
"mobile.android.camera_permission_denied_title": "カメラへのアクセスを要求しています",
|
||||
"mobile.android.permission_denied_dismiss": "破棄",
|
||||
"mobile.android.permission_denied_retry": "権限を設定する",
|
||||
"mobile.android.photos_permission_denied_description": "ライブラリから画像をアップロードするには権限設定を変更してください。",
|
||||
"mobile.android.photos_permission_denied_title": "フォトライブラリーへのアクセスを要求しています",
|
||||
"mobile.android.videos_permission_denied_description": "ライブラリからビデオをアップロードするには権限設定を変更してください。",
|
||||
"mobile.android.videos_permission_denied_title": "ビデオライブラリーへのアクセスを要求しています",
|
||||
"mobile.channel_drawer.search": "移動する...",
|
||||
"mobile.channel_info.alertMessageDeleteChannel": "{term} {name} を本当に削除しますか?",
|
||||
"mobile.channel_info.alertMessageLeaveChannel": "{term} {name} から本当に脱退しますか?",
|
||||
@@ -1903,6 +1915,19 @@
|
||||
"mobile.channel_list.privateChannel": "非公開チャンネル",
|
||||
"mobile.channel_list.publicChannel": "公開チャンネル",
|
||||
"mobile.channel_list.unreads": "未読",
|
||||
"mobile.client_upgrade": "アプリを更新する",
|
||||
"mobile.client_upgrade.can_upgrade_subtitle": "新しいバージョンが利用できます",
|
||||
"mobile.client_upgrade.can_upgrade_title": "アップデートできます",
|
||||
"mobile.client_upgrade.close": "あとでアップデートする",
|
||||
"mobile.client_upgrade.current_version": "最新バージョン: {version}",
|
||||
"mobile.client_upgrade.download_error.message": "新しいバージョンをダウンロードする際にエラーが発生しました。",
|
||||
"mobile.client_upgrade.download_error.title": "更新してインストールする",
|
||||
"mobile.client_upgrade.latest_version": "現在のバージョン: {version}",
|
||||
"mobile.client_upgrade.must_upgrade_subtitle": "続けるためにはアプリをアップデートしてください。",
|
||||
"mobile.client_upgrade.must_upgrade_title": "更新が必要です",
|
||||
"mobile.client_upgrade.no_upgrade_subtitle": "あなたのバージョンは最新です。",
|
||||
"mobile.client_upgrade.no_upgrade_title": "あなたのアプリは最新です",
|
||||
"mobile.client_upgrade.upgrade": "更新",
|
||||
"mobile.components.channels_list_view.yourChannels": "あなたのチャンネル:",
|
||||
"mobile.components.error_list.dismiss_all": "すべて取り消す",
|
||||
"mobile.components.select_server_view.continue": "続ける",
|
||||
@@ -1932,6 +1957,8 @@
|
||||
"mobile.file_upload.more": "もっと",
|
||||
"mobile.file_upload.video": "ビデオライブラリー",
|
||||
"mobile.help.title": "ヘルプ",
|
||||
"mobile.image_preview.deleted_post_message": "この投稿と添付ファイルは削除されました。プレビューを閉じます。",
|
||||
"mobile.image_preview.deleted_post_title": "投稿が削除されました",
|
||||
"mobile.image_preview.save": "画像の保存",
|
||||
"mobile.intro_messages.DM": "{teammate}とのダイレクトメッセージの履歴の最初です。ダイレクトメッセージとそこで共有されているファイルは、この領域の外のユーザーからは見ることができません。",
|
||||
"mobile.intro_messages.default_message": "ここはチームメイトが利用登録した際に最初に見るチャンネルです - みんなが知るべき情報を投稿してください。",
|
||||
@@ -1945,7 +1972,10 @@
|
||||
"mobile.managed.exit": "終了",
|
||||
"mobile.managed.jailbreak": "Jailbrokenデバイスは{vendor}から信頼されていません。アプリを終了してください。",
|
||||
"mobile.managed.secured_by": "{vendor}により保護されました",
|
||||
"mobile.markdown.code.copy_code": "コードのコピー",
|
||||
"mobile.markdown.code.plusMoreLines": "+{count, number}行",
|
||||
"mobile.markdown.link.copy_url": "URL のコピー",
|
||||
"mobile.mention.copy_mention": "あなたについての投稿のコピー",
|
||||
"mobile.more_dms.start": "先頭",
|
||||
"mobile.more_dms.title": "新しい会話",
|
||||
"mobile.notice_mobile_link": "モバイルアプリ",
|
||||
@@ -1956,8 +1986,8 @@
|
||||
"mobile.notification_settings.email_title": "電子メール通知",
|
||||
"mobile.notification_settings.mentions.channelWide": "チャンネル範囲のあなたについての投稿",
|
||||
"mobile.notification_settings.mentions.reply_title": "返信通知を送信する",
|
||||
"mobile.notification_settings.mentions.sensitiveName": "あなたの大文字小文字を区別した姓",
|
||||
"mobile.notification_settings.mentions.sensitiveUsername": "あなたの大文字小文字を区別しない姓",
|
||||
"mobile.notification_settings.mentions.sensitiveName": "あなたの大文字小文字を区別した苗字",
|
||||
"mobile.notification_settings.mentions.sensitiveUsername": "あなたの大文字小文字を区別しないユーザー名",
|
||||
"mobile.notification_settings.mentions_replies": "あなたについての投稿と返信",
|
||||
"mobile.notification_settings.mobile": "モバイル",
|
||||
"mobile.notification_settings.mobile_title": "モバイルプッシュ通知",
|
||||
@@ -1994,6 +2024,7 @@
|
||||
"mobile.post.failed_title": "メッセージを送信できませんでした",
|
||||
"mobile.post.retry": "更新",
|
||||
"mobile.post_info.add_reaction": "リアクションを追加する",
|
||||
"mobile.post_info.copy_post": "投稿のコピー",
|
||||
"mobile.request.invalid_response": "サーバーから不正なレスポンスを受け取りました。",
|
||||
"mobile.retry_message": "メッセージを更新できませんでした。再度更新するには画面を引き上げてください。",
|
||||
"mobile.routes.channelInfo": "情報",
|
||||
@@ -2037,13 +2068,20 @@
|
||||
"mobile.settings.clear": "オフラインデータをクリアする",
|
||||
"mobile.settings.clear_button": "クリア",
|
||||
"mobile.settings.clear_message": "\nこれにより全てのオフラインデータがクリアされ、アプリが再起動します。アプリが再起動されると、自動でログインされます。\n",
|
||||
"mobile.settings.modal.check_for_upgrade": "更新の確認",
|
||||
"mobile.settings.team_selection": "チームを切り替える",
|
||||
"mobile.suggestion.members": "メンバー",
|
||||
"modal.manaul_status.ask": "次回からこのメッセージを表示しない",
|
||||
"modal.manaul_status.button": "はい、ステータスを \"オンライン\" にします",
|
||||
"modal.manaul_status.cancel": "いいえ、\"{status}\" のままにします",
|
||||
"modal.manaul_status.message": "ステータスを \"オンライン\" に変更してもよろしいですか?",
|
||||
"modal.manaul_status.title": "ステータスが \"{status}\" になりました",
|
||||
"modal.manaul_status.title_": "ステータスが \"{status}\" になりました",
|
||||
"modal.manaul_status.title_away": "ステータスが \"離席中\" になりました",
|
||||
"modal.manaul_status.title_dnd": "ステータスが \"取り込み中\" になりました",
|
||||
"modal.manaul_status.title_offline": "ステータスが \"オフライン\" になりました",
|
||||
"modal.manual_status.cancel_": "いいえ、\"{status}\" のままにします",
|
||||
"modal.manual_status.cancel_away": "いいえ、\"離席中\" のままにします",
|
||||
"modal.manual_status.cancel_dnd": "いいえ、\"取り込み中\"のままにします",
|
||||
"modal.manual_status.cancel_offline": "いいえ、\"オフライン\"のままにします",
|
||||
"more_channels.close": "閉じる",
|
||||
"more_channels.create": "新しいチャンネルを作成する",
|
||||
"more_channels.createClick": "新しいチャンネルを作成するには「新しいチャンネルを作成する」をクリックしてください",
|
||||
@@ -2127,6 +2165,12 @@
|
||||
"permalink.error.title": "メッセージが見付かりません",
|
||||
"post_attachment.collapse": "表示を少なくする",
|
||||
"post_attachment.more": "さらに表示",
|
||||
"post_body.check_for_out_of_channel_mentions.link.and": " と ",
|
||||
"post_body.check_for_out_of_channel_mentions.link.private": "彼らを非公開チャンネルに追加しますか",
|
||||
"post_body.check_for_out_of_channel_mentions.link.public": "彼らをチャンネルに追加しますか",
|
||||
"post_body.check_for_out_of_channel_mentions.message.multiple": "についての投稿が行われましたが、彼らはチャンネルにいません。 ",
|
||||
"post_body.check_for_out_of_channel_mentions.message.one": "についての投稿が行われましたが、彼はチャンネルにいません。 ",
|
||||
"post_body.check_for_out_of_channel_mentions.message_last": "? 彼らは全ての会話履歴にアクセスできます。",
|
||||
"post_body.commentedOn": "{name}{apostrophe}のメッセージにコメントしました: ",
|
||||
"post_body.deleted": "(メッセージは削除されています)",
|
||||
"post_body.plusMore": " あと {count, number} {count, plural, one {file} other {files}} 追加できます",
|
||||
@@ -2214,7 +2258,7 @@
|
||||
"rhs_root.unpin": "チャンネルへのピン止めをやめる",
|
||||
"rhs_thread.rootPostDeletedMessage.body": "このスレッドの一部はデータ保持ポリシーによって削除されました。このスレッドに返信することはできません。",
|
||||
"search_bar.search": "検索する",
|
||||
"search_bar.usage": "<h4>検索オプション</h4><ul><li><span>文を検索するには</span><b>「引用符」</b><span>を使ってください</span></li><li><span>特定のユーザーの投稿に限定して検索するには</span><b>From:</b><span>を、特定のチャンネルのみ検索するには</span><b>in:</b><span>を使ってください</span></li></ul>",
|
||||
"search_bar.usage": "<h4>検索オプション</h4><ul><li><span>文を検索するには</span><b>「引用符」</b><span>を使用してください</span></li><li><span>特定のユーザーの投稿に限定して検索するには</span><b>from:</b><span>を、特定のチャンネル内の投稿のみを検索するには</span><b>in:</b><span>を使用してください</span></li></ul>",
|
||||
"search_header.results": "検索結果",
|
||||
"search_header.title2": "最近のあなたについての投稿",
|
||||
"search_header.title3": "フラグの立てられた投稿",
|
||||
@@ -2222,15 +2266,13 @@
|
||||
"search_item.direct": "ダイレクトメッセージ({username}を参照)",
|
||||
"search_item.jump": "ジャンプする",
|
||||
"search_results.noResults": "結果が見付かりません。もう一度試しますか?",
|
||||
"search_results.noResults.partialPhraseSuggestion": "If you're searching a partial phrase (ex. searching \"rea\", looking for \"reach\" or \"reaction\"), append a * to your search term.",
|
||||
"search_results.noResults.stopWordsSuggestion": "Two letter searches and common words like \"this\", \"a\" and \"is\" won't appear in search results due to excessive results returned.",
|
||||
"search_results.noResults.partialPhraseSuggestion": "フレーズの一部で検索(例. \"rea\"で検索し、\"reach\"や\"reaction\"を探す)するには、検索ワードに * を付けてください。",
|
||||
"search_results.noResults.stopWordsSuggestion": "2文字での検索や、\"this\" や \"a\"、 \"is\" などの一般的な単語では、大量の結果が返されるため検索結果が現れません。",
|
||||
"search_results.searching": "検索中...",
|
||||
"search_results.usage.dataRetention": "Only messages posted in the last {days} days are returned. Contact your System Administrator for more detail.",
|
||||
"search_results.usage.fromInSuggestion": "Use {fromUser} to find posts from specific users and {inChannel} to find posts in specific channels",
|
||||
"search_results.usage.fromInSuggestion.fromUser": "from:",
|
||||
"search_results.usage.fromInSuggestion.inChannel": "in:",
|
||||
"search_results.usage.phrasesSuggestion": "Use {quotationMarks} to search for phrases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"quotation marks\"",
|
||||
"search_results.usage.dataRetention": "過去{days}日間に投稿されたメッセージのみが返されます。詳しくはシステム管理者に問い合わせてください。",
|
||||
"search_results.usage.fromInSuggestion": "特定のユーザーの投稿を探すには{fromUser}を、特定のチャンネルの投稿を探すには{inChannel}を使用してください",
|
||||
"search_results.usage.phrasesSuggestion": "フレーズを検索するには {quotationMarks} を使用してください",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"引用符\"",
|
||||
"search_results.usageFlag1": "まだフラグの立てられたメッセージはありません。",
|
||||
"search_results.usageFlag2": "アイコンをクリックすることでメッセージとコメントにフラグを立てることができます。",
|
||||
"search_results.usageFlag3": "アイコンはタイムスタンプの隣にあります。",
|
||||
@@ -2365,7 +2407,7 @@
|
||||
"signup_user_completed.or": "または",
|
||||
"signup_user_completed.passwordLength": "{min}文字以上{max}文字以下で入力してください",
|
||||
"signup_user_completed.required": "この項目は必須です",
|
||||
"signup_user_completed.reserved": "このユーザー名は予約されています。他のユーザー名を使ってください。",
|
||||
"signup_user_completed.reserved": "このユーザー名は予約されています。他のユーザー名を使用してください。",
|
||||
"signup_user_completed.signIn": "サインインするためにここをクリックしてください。",
|
||||
"signup_user_completed.userHelp": "ユーザー名は英小文字で始めてください。また{min}から{max} 文字の英数字と'.'、'-'、'_'の記号だけで構成してください。",
|
||||
"signup_user_completed.usernameLength": "ユーザー名は英小文字で始めてください。また{min}から{max} 文字の英数字と'.'、'-'、'_'の記号だけで構成してください。",
|
||||
@@ -2380,6 +2422,7 @@
|
||||
"sso_signup.teamName": "新しいチーム名を入力してください",
|
||||
"sso_signup.team_error": "チーム名を入力してください",
|
||||
"status_dropdown.set_away": "離席",
|
||||
"status_dropdown.set_dnd": "取り込み中",
|
||||
"status_dropdown.set_offline": "オフライン",
|
||||
"status_dropdown.set_online": "オンライン",
|
||||
"suggestion.loading": "読み込み中です...",
|
||||
@@ -2496,6 +2539,7 @@
|
||||
"user.settings.custom_theme.centerChannelTitle": "中央チャンネルのスタイル",
|
||||
"user.settings.custom_theme.codeTheme": "コードテーマ",
|
||||
"user.settings.custom_theme.copyPaste": "テーマカラーを共有するためにコピーアンドペーストする",
|
||||
"user.settings.custom_theme.dndIndicator": "取り込み中表示",
|
||||
"user.settings.custom_theme.linkButtonTitle": "リンクとボタンのスタイル",
|
||||
"user.settings.custom_theme.linkColor": "リンクの色",
|
||||
"user.settings.custom_theme.mentionBj": "あなたについての投稿の未読BG",
|
||||
@@ -2555,7 +2599,7 @@
|
||||
"user.settings.general.emailGoogleCantUpdate": "Googleからログインしました。電子メールアドレスは更新できません。通知に使われる電子メールアドレスは{email}です。",
|
||||
"user.settings.general.emailHelp1": "電子メールアドレスはサインイン、通知、パスワード初期化に使用されます。電子メールアドレスを変更した場合には、確認が必要です。",
|
||||
"user.settings.general.emailHelp2": "電子メールはシステム管理者によって無効にされています。有効にされるまで通知電子メールは送信されません。",
|
||||
"user.settings.general.emailHelp3": "電子メールアドレスがサインイン、通知、パスワード初期化に使用されます。",
|
||||
"user.settings.general.emailHelp3": "電子メールアドレスはサインイン、通知、パスワード初期化に使用されます。",
|
||||
"user.settings.general.emailHelp4": "{email}に電子メールアドレスの確認用電子メールが送信されました。",
|
||||
"user.settings.general.emailLdapCantUpdate": "AD/LDAPでログインしました。電子メールアドレスは更新できません。通知に使われる電子メールアドレスは{email}です。",
|
||||
"user.settings.general.emailMatch": "あなたの入力した新しい電子メールアドレスが一致しません。",
|
||||
@@ -2593,7 +2637,7 @@
|
||||
"user.settings.general.uploadImage": "画像をアップロードするには「編集する」をクリックしてください",
|
||||
"user.settings.general.username": "ユーザー名",
|
||||
"user.settings.general.usernameInfo": "チームメイトが理解しやすく、覚えやすいものを選んでください。",
|
||||
"user.settings.general.usernameReserved": "このユーザー名は予約されています。他のユーザー名を使ってください。",
|
||||
"user.settings.general.usernameReserved": "このユーザー名は予約されています。他のユーザー名を使用してください。",
|
||||
"user.settings.general.usernameRestrictions": "ユーザー名は英小文字で始めてください。また{min}から{max} 文字の英数字と'.'、'-'、'_'の記号だけで構成してください。",
|
||||
"user.settings.general.validEmail": "有効な電子メールアドレスを入力してください",
|
||||
"user.settings.general.validImage": "JPGまたはPNG画像だけがプロフィール画像として使用できます",
|
||||
@@ -2623,6 +2667,7 @@
|
||||
"user.settings.modal.general": "全般",
|
||||
"user.settings.modal.notifications": "通知",
|
||||
"user.settings.modal.security": "セキュリティー",
|
||||
"user.settings.modal.sidebar": "サイドバー",
|
||||
"user.settings.modal.title": "アカウントの設定",
|
||||
"user.settings.notifications.allActivity": "全てのアクティビティーについて",
|
||||
"user.settings.notifications.channelWide": "チャンネル全体についての \"@channel\"、\"@all\"、\"@here\"",
|
||||
@@ -2757,6 +2802,11 @@
|
||||
"user.settings.security.switchSaml": "SAMLシングルサインオンに切り替える",
|
||||
"user.settings.security.title": "セキュリティーの設定",
|
||||
"user.settings.security.viewHistory": "アクセス履歴を見る",
|
||||
"user.settings.sidebar.after_seven_days": "7日間新しいメッセージがなかった場合",
|
||||
"user.settings.sidebar.autoCloseDMDesc": "ダイレクトメッセージの会話はサイドバーの \"+\" ボタンを押すか、チャンネル切替(CTRL+K)を使用することで開くことができます。",
|
||||
"user.settings.sidebar.autoCloseDMTitle": "自動でダイレクトメッセージを閉じる",
|
||||
"user.settings.sidebar.never": "しない",
|
||||
"user.settings.sidebar.title": "サイドバー設定",
|
||||
"user.settings.tokens.cancel": "キャンセル",
|
||||
"user.settings.tokens.clickToEdit": "パーソナルアクセストークンを管理するには'編集'をクリックしてください",
|
||||
"user.settings.tokens.confirmCreateButton": "生成する",
|
||||
@@ -2768,8 +2818,8 @@
|
||||
"user.settings.tokens.copy": "以下のアクセストークンをコピーしてください。二度と確認することはできません!",
|
||||
"user.settings.tokens.create": "新しいトークンを生成する",
|
||||
"user.settings.tokens.delete": "削除",
|
||||
"user.settings.tokens.description": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">パーソナルアクセストークン</a>はセッショントークンと同様に機能し、統合機能が<a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">REST APIに対して認証</a>するために利用できます。",
|
||||
"user.settings.tokens.description_mobile": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">パーソナルアクセストークン</a>はセッショントークンと同様に機能し、統合機能が<a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">REST APIに対して認証</a>するために利用できます。デスクトップ環境で新しトークンを生成してください。",
|
||||
"user.settings.tokens.description": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">パーソナルアクセストークン</a>はセッショントークンと同様に機能し、<a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">REST APIに対して認証</a>する統合機能で使用できます。",
|
||||
"user.settings.tokens.description_mobile": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">パーソナルアクセストークン</a>はセッショントークンと同様に機能し、<a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">REST APIに対して認証</a>する統合機能で利用できます。デスクトップ環境で新しトークンを生成してください。",
|
||||
"user.settings.tokens.id": "トークンID: ",
|
||||
"user.settings.tokens.name": "トークンの説明: ",
|
||||
"user.settings.tokens.nameHelp": "何をするためのトークンかを思い出すために説明を入力してください。",
|
||||
@@ -2780,6 +2830,7 @@
|
||||
"user.settings.tokens.tokenId": "トークンID: ",
|
||||
"user.settings.tokens.userAccessTokensNone": "パーソナルアクセストークンがありません。",
|
||||
"user_list.notFound": "ユーザーが見付かりません",
|
||||
"user_profile.account.editSettings": "アカウント設定を編集する",
|
||||
"user_profile.send.dm": "メッセージを送信",
|
||||
"user_profile.webrtc.call": "ビデオ通話の開始",
|
||||
"user_profile.webrtc.offline": "ユーザーはオフラインです",
|
||||
|
||||
@@ -269,10 +269,13 @@
|
||||
"admin.database.title": "데이터베이스 설정",
|
||||
"admin.developer.title": "개발자 설정",
|
||||
"admin.elasticsearch.bulkIndexButton.error": "Failed to schedule Bulk Index Job: {error}",
|
||||
"admin.elasticsearch.bulkIndexingTitle": "Bulk Indexing:",
|
||||
"admin.elasticsearch.connectionUrlDescription": "The address of the Elasticsearch server. {documentationLink}",
|
||||
"admin.elasticsearch.connectionUrlExample": "E.g.: \"https://elasticsearch.example.org:9200\"",
|
||||
"admin.elasticsearch.connectionUrlExample.documentationLinkText": "Please see documentation with server setup instructions.",
|
||||
"admin.elasticsearch.connectionUrlTitle": "Server Connection Address:",
|
||||
"admin.elasticsearch.createJob.help": "All posts in the database will be indexed from oldest to newest. Elasticsearch is available during indexing but search results may be incomplete until the indexing job is complete.",
|
||||
"admin.elasticsearch.createJob.title": "Index Now",
|
||||
"admin.elasticsearch.elasticsearch_test_button": "연결 테스트",
|
||||
"admin.elasticsearch.enableIndexingDescription": "When true, indexing of new posts occurs automatically. Search queries will use database search until \"Enable Elasticsearch for search queries\" is enabled. {documentationLink}",
|
||||
"admin.elasticsearch.enableIndexingDescription.documentationLinkText": "Learn more about Elasticsearch in our documentation.",
|
||||
@@ -300,22 +303,6 @@
|
||||
"admin.elasticsearch.usernameDescription": "(Optional) The username to authenticate to the Elasticsearch server.",
|
||||
"admin.elasticsearch.usernameExample": "E.g.: \"elastic\"",
|
||||
"admin.elasticsearch.usernameTitle": "SMTP 서버 사용자명:",
|
||||
"admin.elasticsearchStatus.bulkIndexLabel": "Bulk Indexing:",
|
||||
"admin.elasticsearchStatus.cancelButton": "취소",
|
||||
"admin.elasticsearchStatus.status": "상태",
|
||||
"admin.elasticsearchStatus.statusCancelled": "Indexing job cancelled.",
|
||||
"admin.elasticsearchStatus.statusError": "Indexing error.",
|
||||
"admin.elasticsearchStatus.statusError.help": "Mattermost encountered an error building the Elasticsearch index: {error}",
|
||||
"admin.elasticsearchStatus.statusInProgress": "Job in progress. {percent}% complete.",
|
||||
"admin.elasticsearchStatus.statusInProgress.help": "Indexing is in progress on the job server. If Elasticsearch is enabled, search results may be incomplete until the job is finished.",
|
||||
"admin.elasticsearchStatus.statusIndexingDisabled": "Indexing disabled.",
|
||||
"admin.elasticsearchStatus.statusLoading": "로딩 중...",
|
||||
"admin.elasticsearchStatus.statusNoJobs": "No indexing jobs queued.",
|
||||
"admin.elasticsearchStatus.statusPending": "Job pending.",
|
||||
"admin.elasticsearchStatus.statusPending.help": "Elasticsearch index job is queued on the job server. If Elasticsearch is enabled, search results may be incomplete until the job is finished.",
|
||||
"admin.elasticsearchStatus.statusRequestCancel": "Canceling Job...",
|
||||
"admin.elasticsearchStatus.statusSuccess": "Indexing complete.",
|
||||
"admin.elasticsearchStatus.statusSuccess.help": "Indexing is complete and new posts are being automatically indexed.",
|
||||
"admin.email.agreeHPNS": " I understand and accept the Mattermost Hosted Push Notification Service <a href=\"https://about.mattermost.com/hpns-terms/\" target=\"_blank\">Terms of Service</a> and <a href=\"https://about.mattermost.com/hpns-privacy/\" target=\"_blank\">Privacy Policy</a>.",
|
||||
"admin.email.allowEmailSignInDescription": "설정 시, Mattermost는 사용자들이 그들의 이메일과 패스워드로 로그인할 수 있게 합니다.",
|
||||
"admin.email.allowEmailSignInTitle": "Enable sign-in with email: ",
|
||||
@@ -523,7 +510,7 @@
|
||||
"admin.integrations.external": "외부 서비스",
|
||||
"admin.integrations.webrtc": "Mattermost WebRTC",
|
||||
"admin.jobTable.cancelButton": "취소",
|
||||
"admin.jobTable.headerExtraInfo": "Extra Information",
|
||||
"admin.jobTable.headerExtraInfo": "Details",
|
||||
"admin.jobTable.headerFinishAt": "Finish Time",
|
||||
"admin.jobTable.headerRunTime": "Run Time",
|
||||
"admin.jobTable.headerStatus": "상태",
|
||||
@@ -548,6 +535,8 @@
|
||||
"admin.ldap.emailAttrEx": "예시 \"mail\" or \"userPrincipalName\"",
|
||||
"admin.ldap.emailAttrTitle": "이메일 속성:",
|
||||
"admin.ldap.enableDesc": "활성화하면, LDAP으로 접속 할 수 있습니다.",
|
||||
"admin.ldap.enableSyncDesc": "When true, Mattermost periodically synchronizes users from AD/LDAP.",
|
||||
"admin.ldap.enableSyncTitle": "Enable Synchronization with AD/LDAP:",
|
||||
"admin.ldap.enableTitle": "LDAP으로 접속을 허용:",
|
||||
"admin.ldap.firstnameAttrDesc": "(Optional) The attribute in the AD/LDAP server that will be used to populate the first name of users in Mattermost. When set, users will not be able to edit their first name, since it is synchronized with the LDAP server. When left blank, users can set their own first name in Account Settings.",
|
||||
"admin.ldap.firstnameAttrEx": "예시 \"givenName\"",
|
||||
@@ -640,6 +629,7 @@
|
||||
"admin.logs.title": "서버 로그",
|
||||
"admin.manage_roles.additionalRoles": "Select additional permissions for the account. <a href=\"https://about.mattermost.com/default-permissions\" target=\"_blank\">Read more about roles and permissions</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokens": "Allow this account to generate <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">personal access tokens</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokensDesc": "Removing this permission doesn't delete existing tokens. To delete them, go to the user's Manage Tokens menu.",
|
||||
"admin.manage_roles.cancel": "취소",
|
||||
"admin.manage_roles.manageRolesTitle": "Manage Roles",
|
||||
"admin.manage_roles.postAllPublicRole": "Access to post to all Mattermost public channels.",
|
||||
@@ -651,7 +641,7 @@
|
||||
"admin.manage_roles.systemAdmin": "시스템 관리자",
|
||||
"admin.manage_roles.systemMember": "회원",
|
||||
"admin.manage_tokens.manageTokensTitle": "Manage Personal Access Tokens",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Personal access tokens function similar to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">interact with this Mattermost server</a>. Learn more about <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">personal access tokens</a>.",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Personal access tokens function similarly to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">interact with this Mattermost server</a>. Tokens are disabled if the user is deactivated. Learn more about <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">personal access tokens</a>.",
|
||||
"admin.manage_tokens.userAccessTokensNone": "No personal access tokens.",
|
||||
"admin.metrics.enableDescription": "When true, Mattermost will enable performance monitoring collection and profiling. Please see <a href=\"http://docs.mattermost.com/deployment/metrics.html\" target='_blank'>documentation</a> to learn more about configuring performance monitoring for Mattermost.",
|
||||
"admin.metrics.enableTitle": "Enable Performance Monitoring:",
|
||||
@@ -698,18 +688,19 @@
|
||||
"admin.password.requirementsDescription": "Character types required in a valid password.",
|
||||
"admin.password.symbol": "At least one symbol (예시 \"~!@#$%^&*()\")",
|
||||
"admin.password.uppercase": "At least one uppercase letter",
|
||||
"admin.plugin.activeTitle": "Active Plugins: ",
|
||||
"admin.plugin.banner": "Plugins are experimental and not recommended for use in production.",
|
||||
"admin.plugin.desc": "설명",
|
||||
"admin.plugin.error.activate": "Unable to upload the plugin. It may conflict with another plugin on your server.",
|
||||
"admin.plugin.error.extract": "Encountered an error when extracting the plugin. Review your plugin file content and try again.",
|
||||
"admin.plugin.id": "ID: ",
|
||||
"admin.plugin.no_plugins": "No active plugins.",
|
||||
"admin.plugin.installedDesc": "Installed plugins on your Mattermost server. Pre-packaged plugins are installed by default, and can be deactivated but not removed.",
|
||||
"admin.plugin.installedTitle": "Installed Plugins: ",
|
||||
"admin.plugin.management.title": "Management",
|
||||
"admin.plugin.no_plugins": "No installed plugins.",
|
||||
"admin.plugin.remove": "제거하기",
|
||||
"admin.plugin.removing": "Removing...",
|
||||
"admin.plugin.title": "Plugins (Experimental)",
|
||||
"admin.plugin.upload": "업로드",
|
||||
"admin.plugin.uploadDesc": "Upload a plugin for your Mattermost server. Adding or removing a webapp plugin requires users to refresh their browser or Desktop App before taking effect. See <a href=\"https://about.mattermost.com/default-plugins\">documentation</a> to learn more.",
|
||||
"admin.plugin.uploadDesc": "Upload a plugin for your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugin-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugin.uploadTitle": "Upload Plugin: ",
|
||||
"admin.plugin.uploading": "업로드 중..",
|
||||
"admin.plugins.jira": "JIRA (Beta)",
|
||||
@@ -725,6 +716,11 @@
|
||||
"admin.plugins.jira.userDescription": "Select the username that this integration is attached to.",
|
||||
"admin.plugins.jira.userLabel": "사용자",
|
||||
"admin.plugins.jira.webhookDocsLink": "문서",
|
||||
"admin.plugins.settings.enable": "Enable Plugins: ",
|
||||
"admin.plugins.settings.enableDesc": "When true, enables plugins on your Mattermost server. Use plugins to integrate with third-party systems, extend functionality or customize the user interface of your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugins\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.enableUploads": "Enable Plugin Uploads: ",
|
||||
"admin.plugins.settings.enableUploadsDesc": "When true, enables plugin uploads by System Admins at <strong>Plugins > Management</strong>. If you do not plan to upload a plugin, set to false to control which plugins are installed on your server. See <a href=\"https://about.mattermost.com/default-plugins-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.title": "Configuration",
|
||||
"admin.privacy.showEmailDescription": "When false, hides the email address of members from everyone except System Administrators.",
|
||||
"admin.privacy.showEmailTitle": "이메일 표시: ",
|
||||
"admin.privacy.showFullNameDescription": "When false, hides the full name of members from everyone except System Administrators. Username is shown in place of full name.",
|
||||
@@ -768,9 +764,9 @@
|
||||
"admin.requestButton.loading": " 로딩 중...",
|
||||
"admin.requestButton.requestFailure": "동기화 실패: {error}",
|
||||
"admin.requestButton.requestSuccess": "설정이 완료되었습니다.",
|
||||
"admin.reset_password.close": "닫기",
|
||||
"admin.reset_password.cancel": "취소",
|
||||
"admin.reset_password.newPassword": "새 패스워드",
|
||||
"admin.reset_password.select": "선택",
|
||||
"admin.reset_password.reset": "Reset",
|
||||
"admin.reset_password.submit": "최소 {chars}글자 이상 입력하세요.",
|
||||
"admin.reset_password.titleReset": "패스워드 리셋",
|
||||
"admin.reset_password.titleSwitch": "이메일과 패스워드를 사용하도록 변경",
|
||||
@@ -783,6 +779,8 @@
|
||||
"admin.saml.emailAttrEx": "예시 \"Email\" 또는 \"PrimaryEmail\"",
|
||||
"admin.saml.emailAttrTitle": "이메일 속성:",
|
||||
"admin.saml.enableDescription": "When true, Mattermost allows login using SAML. Please see <a href='http://docs.mattermost.com/deployment/sso-saml.html' target='_blank'>documentation</a> to learn more about configuring SAML for Mattermost.",
|
||||
"admin.saml.enableSyncWithLdapDescription": "When true, Mattermost periodically synchronizes SAML user attributes, including user deactivation and removal, from AD/LDAP. Enable and configure synchronization settings at <strong>Authentication > AD/LDAP</strong>. See <a href='https://about.mattermost.com/default-saml-ldap-sync' target='_blank'>documentation</a> to learn more.",
|
||||
"admin.saml.enableSyncWithLdapTitle": "Enable Synchronizing SAML Accounts With AD/LDAP:",
|
||||
"admin.saml.enableTitle": "SAML 계정으로 인증:",
|
||||
"admin.saml.encryptDescription": "When false, Mattermost will not decrypt SAML Assertions encrypted with your Service Provider Public Certificate. Not recommended for production environments. For testing only.",
|
||||
"admin.saml.encryptTitle": "암호화:",
|
||||
@@ -957,7 +955,8 @@
|
||||
"admin.sidebar.oauth": "OAuth 2.0",
|
||||
"admin.sidebar.other": "기타",
|
||||
"admin.sidebar.password": "패스워드",
|
||||
"admin.sidebar.plugins": "Plugins (Experimental)",
|
||||
"admin.sidebar.plugins": "Plugins (Beta)",
|
||||
"admin.sidebar.plugins.configuration": "Configuration",
|
||||
"admin.sidebar.policy": "정책",
|
||||
"admin.sidebar.privacy": "개인",
|
||||
"admin.sidebar.publicLinks": "공개 링크",
|
||||
@@ -1436,6 +1435,9 @@
|
||||
"delete_post.post": "글",
|
||||
"delete_post.question": "정말 {term}을 삭제하시겠습니까?",
|
||||
"delete_post.warning": "This post has {count, number} {count, plural, one {comment} other {comments}} on it.",
|
||||
"discard_changes_modal.leave": "네, 취소합니다.",
|
||||
"discard_changes_modal.message": "저장되지 않은 변경사항이 있습니다, 저장하지 않고 취소하겠습니까?",
|
||||
"discard_changes_modal.title": "변경을 취소하시겠습니까?",
|
||||
"edit_channel_header.editHeader": "Edit the Channel Header...",
|
||||
"edit_channel_header.previewHeader": "헤더 편집",
|
||||
"edit_channel_header_modal.cancel": "취소",
|
||||
@@ -1865,6 +1867,8 @@
|
||||
"mobile.about.appVersion": "App Version: {version} (Build {number})",
|
||||
"mobile.about.copyright": "Copyright 2015-{currentYear} Mattermost, Inc. All rights reserved",
|
||||
"mobile.about.database": "Database: {type}",
|
||||
"mobile.about.licensed": "Licensed to: {company}",
|
||||
"mobile.about.powered_by": "{site} is powered by Mattermost",
|
||||
"mobile.about.serverVersion": "Server Version: {version} (Build {number})",
|
||||
"mobile.about.serverVersionNoBuild": "Server Version: {version}",
|
||||
"mobile.account.notifications.email.footer": "When offline or away for more than five minutes",
|
||||
@@ -1878,6 +1882,14 @@
|
||||
"mobile.advanced_settings.reset_message": "\nThis will reset all offline data and restart the app. You will be automatically logged back in once the app restarts.\n",
|
||||
"mobile.advanced_settings.reset_title": "Reset Cache",
|
||||
"mobile.advanced_settings.title": "고급 설정",
|
||||
"mobile.android.camera_permission_denied_description": "To take photos and videos with your camera, please change your permission settings.",
|
||||
"mobile.android.camera_permission_denied_title": "Camera access is required",
|
||||
"mobile.android.permission_denied_dismiss": "Dismiss",
|
||||
"mobile.android.permission_denied_retry": "Set permission",
|
||||
"mobile.android.photos_permission_denied_description": "To upload images from your library, please change your permission settings.",
|
||||
"mobile.android.photos_permission_denied_title": "Photo library access is required",
|
||||
"mobile.android.videos_permission_denied_description": "To upload videos from your library, please change your permission settings.",
|
||||
"mobile.android.videos_permission_denied_title": "Video library access is required",
|
||||
"mobile.channel_drawer.search": "Jump to...",
|
||||
"mobile.channel_info.alertMessageDeleteChannel": "{term} {name}을 (를) 삭제 하시겠습니까?",
|
||||
"mobile.channel_info.alertMessageLeaveChannel": "{term} {name}을 (를) 종료 하시겠습니까?",
|
||||
@@ -1903,6 +1915,19 @@
|
||||
"mobile.channel_list.privateChannel": "비공개 채널",
|
||||
"mobile.channel_list.publicChannel": "공개 채널",
|
||||
"mobile.channel_list.unreads": "UNREADS",
|
||||
"mobile.client_upgrade": "Update App",
|
||||
"mobile.client_upgrade.can_upgrade_subtitle": "A new version is available for download.",
|
||||
"mobile.client_upgrade.can_upgrade_title": "Update Available",
|
||||
"mobile.client_upgrade.close": "Update Later",
|
||||
"mobile.client_upgrade.current_version": "Latest Version: {version}",
|
||||
"mobile.client_upgrade.download_error.message": "An error occurred downloading the new version.",
|
||||
"mobile.client_upgrade.download_error.title": "Unable to Install Update",
|
||||
"mobile.client_upgrade.latest_version": "Your Version: {version}",
|
||||
"mobile.client_upgrade.must_upgrade_subtitle": "Please update the app to continue.",
|
||||
"mobile.client_upgrade.must_upgrade_title": "Update Required",
|
||||
"mobile.client_upgrade.no_upgrade_subtitle": "You already have the latest version.",
|
||||
"mobile.client_upgrade.no_upgrade_title": "Your App Is Up to Date",
|
||||
"mobile.client_upgrade.upgrade": "Update",
|
||||
"mobile.components.channels_list_view.yourChannels": "Your channels:",
|
||||
"mobile.components.error_list.dismiss_all": "Dismiss All",
|
||||
"mobile.components.select_server_view.continue": "계속하기",
|
||||
@@ -1932,6 +1957,8 @@
|
||||
"mobile.file_upload.more": "더 보기",
|
||||
"mobile.file_upload.video": "Video Library",
|
||||
"mobile.help.title": "도움말",
|
||||
"mobile.image_preview.deleted_post_message": "This post and it's files have been deleted. The previewer will now be closed.",
|
||||
"mobile.image_preview.deleted_post_title": "Post Deleted",
|
||||
"mobile.image_preview.save": "Save Image",
|
||||
"mobile.intro_messages.DM": "{teammate}와 개인 메시지의 시작입니다. 개인 메시지나 여기서 공유된 파일들은 외부에서 보여지지 않습니다.",
|
||||
"mobile.intro_messages.default_message": "This is the first channel teammates see when they sign up - use it for posting updates everyone needs to know.",
|
||||
@@ -1945,7 +1972,10 @@
|
||||
"mobile.managed.exit": "편집",
|
||||
"mobile.managed.jailbreak": "Jailbroken devices are not trusted by {vendor}, please exit the app.",
|
||||
"mobile.managed.secured_by": "Secured by {vendor}",
|
||||
"mobile.markdown.code.copy_code": "Copy Code",
|
||||
"mobile.markdown.code.plusMoreLines": "+{count, number} more lines",
|
||||
"mobile.markdown.link.copy_url": "Copy URL",
|
||||
"mobile.mention.copy_mention": "Copy Mention",
|
||||
"mobile.more_dms.start": "Start",
|
||||
"mobile.more_dms.title": "New Conversation",
|
||||
"mobile.notice_mobile_link": "mobile apps",
|
||||
@@ -1994,6 +2024,7 @@
|
||||
"mobile.post.failed_title": "Unable to send your message",
|
||||
"mobile.post.retry": "Refresh",
|
||||
"mobile.post_info.add_reaction": "Add Reaction",
|
||||
"mobile.post_info.copy_post": "Copy Post",
|
||||
"mobile.request.invalid_response": "Received invalid response from the server.",
|
||||
"mobile.retry_message": "Refreshing messages failed. Pull up to try again.",
|
||||
"mobile.routes.channelInfo": "Info",
|
||||
@@ -2037,13 +2068,20 @@
|
||||
"mobile.settings.clear": "Clear Offline Store",
|
||||
"mobile.settings.clear_button": "Clear",
|
||||
"mobile.settings.clear_message": "\nThis will clear all offline data and restart the app. You will be automatically logged back in once the app restarts.\n",
|
||||
"mobile.settings.modal.check_for_upgrade": "Check for Updates",
|
||||
"mobile.settings.team_selection": "팀 선택",
|
||||
"mobile.suggestion.members": "회원",
|
||||
"modal.manaul_status.ask": "Do not ask me again",
|
||||
"modal.manaul_status.button": "Yes, set my status to \"Online\"",
|
||||
"modal.manaul_status.cancel": "No, keep it as \"{status}\"",
|
||||
"modal.manaul_status.message": "Would you like to switch your status to \"Online\"?",
|
||||
"modal.manaul_status.title": "Your status is set to \"{status}\"",
|
||||
"modal.manaul_status.title_": "Your status is set to \"{status}\"",
|
||||
"modal.manaul_status.title_away": "Your status is set to \"Away\"",
|
||||
"modal.manaul_status.title_dnd": "Your status is set to \"Do Not Disturb\"",
|
||||
"modal.manaul_status.title_offline": "Your status is set to \"Offline\"",
|
||||
"modal.manual_status.cancel_": "No, keep it as \"{status}\"",
|
||||
"modal.manual_status.cancel_away": "No, keep it as \"Away\"",
|
||||
"modal.manual_status.cancel_dnd": "No, keep it as \"Do Not Disturb\"",
|
||||
"modal.manual_status.cancel_offline": "No, keep it as \"Offline\"",
|
||||
"more_channels.close": "닫기",
|
||||
"more_channels.create": "새로 만들기",
|
||||
"more_channels.createClick": "'새로 만들기'를 클릭하여 새로운 채널을 만드세요",
|
||||
@@ -2127,6 +2165,12 @@
|
||||
"permalink.error.title": "Message Not Found",
|
||||
"post_attachment.collapse": "Show less...",
|
||||
"post_attachment.more": "더 보기...",
|
||||
"post_body.check_for_out_of_channel_mentions.link.and": " and ",
|
||||
"post_body.check_for_out_of_channel_mentions.link.private": "add them to this private channel",
|
||||
"post_body.check_for_out_of_channel_mentions.link.public": "add them to the channel",
|
||||
"post_body.check_for_out_of_channel_mentions.message.multiple": "were mentioned but they are not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message.one": "was mentioned but is not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message_last": "? They will have access to all message history.",
|
||||
"post_body.commentedOn": "Commented on {name}{apostrophe} message: ",
|
||||
"post_body.deleted": "(삭제된 메시지)",
|
||||
"post_body.plusMore": " plus {count, number} other {count, plural, one {file} other {files}}",
|
||||
@@ -2227,8 +2271,6 @@
|
||||
"search_results.searching": "Searching...",
|
||||
"search_results.usage.dataRetention": "Only messages posted in the last {days} days are returned. Contact your System Administrator for more detail.",
|
||||
"search_results.usage.fromInSuggestion": "Use {fromUser} to find posts from specific users and {inChannel} to find posts in specific channels",
|
||||
"search_results.usage.fromInSuggestion.fromUser": "from:",
|
||||
"search_results.usage.fromInSuggestion.inChannel": "in:",
|
||||
"search_results.usage.phrasesSuggestion": "Use {quotationMarks} to search for phrases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"quotation marks\"",
|
||||
"search_results.usageFlag1": "중요 지정된 메시지가 아직 없습니다.",
|
||||
@@ -2380,6 +2422,7 @@
|
||||
"sso_signup.teamName": "팀 이름을 입력하세요.",
|
||||
"sso_signup.team_error": "팀 이름을 입력하세요.",
|
||||
"status_dropdown.set_away": "Away",
|
||||
"status_dropdown.set_dnd": "Do Not Disturb",
|
||||
"status_dropdown.set_offline": "오프라인",
|
||||
"status_dropdown.set_online": "Online",
|
||||
"suggestion.loading": "로딩 중...",
|
||||
@@ -2496,6 +2539,7 @@
|
||||
"user.settings.custom_theme.centerChannelTitle": "채널 영역 스타일",
|
||||
"user.settings.custom_theme.codeTheme": "Code Theme",
|
||||
"user.settings.custom_theme.copyPaste": "다음 테마 색상을 복사하여 공유:",
|
||||
"user.settings.custom_theme.dndIndicator": "Do Not Disturb Indicator",
|
||||
"user.settings.custom_theme.linkButtonTitle": "링크, 버튼 스타일",
|
||||
"user.settings.custom_theme.linkColor": "Link Color",
|
||||
"user.settings.custom_theme.mentionBj": "Mention Jewel BG",
|
||||
@@ -2623,6 +2667,7 @@
|
||||
"user.settings.modal.general": "일반",
|
||||
"user.settings.modal.notifications": "알림",
|
||||
"user.settings.modal.security": "보안",
|
||||
"user.settings.modal.sidebar": "Sidebar",
|
||||
"user.settings.modal.title": "계정 설정",
|
||||
"user.settings.notifications.allActivity": "모든 활동",
|
||||
"user.settings.notifications.channelWide": "채널 전체 멘션 \"@channel\", \"@all\"",
|
||||
@@ -2757,6 +2802,11 @@
|
||||
"user.settings.security.switchSaml": "SAML SSO을 사용하도록 변경",
|
||||
"user.settings.security.title": "보안 설정",
|
||||
"user.settings.security.viewHistory": "접속 내역 보기",
|
||||
"user.settings.sidebar.after_seven_days": "After 7 days with no new messages",
|
||||
"user.settings.sidebar.autoCloseDMDesc": "Direct Message conversations can be reopened with the “+” button in the sidebar or using the Channel Switcher (CTRL+K).",
|
||||
"user.settings.sidebar.autoCloseDMTitle": "Automatically Close Direct Messages",
|
||||
"user.settings.sidebar.never": "알림 사용 안함",
|
||||
"user.settings.sidebar.title": "Sidebar Settings",
|
||||
"user.settings.tokens.cancel": "취소",
|
||||
"user.settings.tokens.clickToEdit": "Click 'Edit' to manage your personal access tokens",
|
||||
"user.settings.tokens.confirmCreateButton": "Yes, Create",
|
||||
@@ -2768,8 +2818,8 @@
|
||||
"user.settings.tokens.copy": "Please copy the access token below. You won't be able to see it again!",
|
||||
"user.settings.tokens.create": "Create New Token",
|
||||
"user.settings.tokens.delete": "삭제",
|
||||
"user.settings.tokens.description": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similar to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>.",
|
||||
"user.settings.tokens.description_mobile": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similar to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>. Create new tokens on your desktop.",
|
||||
"user.settings.tokens.description": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similarly to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>.",
|
||||
"user.settings.tokens.description_mobile": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similarly to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>. Create new tokens on your desktop.",
|
||||
"user.settings.tokens.id": "Token ID: ",
|
||||
"user.settings.tokens.name": "사이트 설명",
|
||||
"user.settings.tokens.nameHelp": "Enter a description for your token to remember what it does.",
|
||||
@@ -2780,6 +2830,7 @@
|
||||
"user.settings.tokens.tokenId": "Token ID: ",
|
||||
"user.settings.tokens.userAccessTokensNone": "No personal access tokens.",
|
||||
"user_list.notFound": "사용자를 찾을 수 없습니다 :(",
|
||||
"user_profile.account.editSettings": "계정 설정",
|
||||
"user_profile.send.dm": "Send Message",
|
||||
"user_profile.webrtc.call": "영상통화 시작",
|
||||
"user_profile.webrtc.offline": "사용자가 오프라인입니다",
|
||||
|
||||
@@ -269,10 +269,13 @@
|
||||
"admin.database.title": "Database instellingen",
|
||||
"admin.developer.title": "Ontwikkelaars instellingen",
|
||||
"admin.elasticsearch.bulkIndexButton.error": "Failed to schedule Bulk Index Job: {error}",
|
||||
"admin.elasticsearch.bulkIndexingTitle": "Bulk Indexing:",
|
||||
"admin.elasticsearch.connectionUrlDescription": "The address of the Elasticsearch server. {documentationLink}",
|
||||
"admin.elasticsearch.connectionUrlExample": "E.g.: \"https://elasticsearch.example.org:9200\"",
|
||||
"admin.elasticsearch.connectionUrlExample.documentationLinkText": "Please see documentation with server setup instructions.",
|
||||
"admin.elasticsearch.connectionUrlTitle": "Server Connection Address:",
|
||||
"admin.elasticsearch.createJob.help": "All posts in the database will be indexed from oldest to newest. Elasticsearch is available during indexing but search results may be incomplete until the indexing job is complete.",
|
||||
"admin.elasticsearch.createJob.title": "Index Now",
|
||||
"admin.elasticsearch.elasticsearch_test_button": "Verbinding testen",
|
||||
"admin.elasticsearch.enableIndexingDescription": "When true, indexing of new posts occurs automatically. Search queries will use database search until \"Enable Elasticsearch for search queries\" is enabled. {documentationLink}",
|
||||
"admin.elasticsearch.enableIndexingDescription.documentationLinkText": "Learn more about Elasticsearch in our documentation.",
|
||||
@@ -300,22 +303,6 @@
|
||||
"admin.elasticsearch.usernameDescription": "(Optional) The username to authenticate to the Elasticsearch server.",
|
||||
"admin.elasticsearch.usernameExample": "E.g.: \"elastic\"",
|
||||
"admin.elasticsearch.usernameTitle": "SMTP server gebruikersnaam:",
|
||||
"admin.elasticsearchStatus.bulkIndexLabel": "Bulk Indexing:",
|
||||
"admin.elasticsearchStatus.cancelButton": "Annuleren",
|
||||
"admin.elasticsearchStatus.status": "Status",
|
||||
"admin.elasticsearchStatus.statusCancelled": "Indexing job cancelled.",
|
||||
"admin.elasticsearchStatus.statusError": "Indexing error.",
|
||||
"admin.elasticsearchStatus.statusError.help": "Mattermost encountered an error building the Elasticsearch index: {error}",
|
||||
"admin.elasticsearchStatus.statusInProgress": "Job in progress. {percent}% complete.",
|
||||
"admin.elasticsearchStatus.statusInProgress.help": "Indexing is in progress on the job server. If Elasticsearch is enabled, search results may be incomplete until the job is finished.",
|
||||
"admin.elasticsearchStatus.statusIndexingDisabled": "Indexing disabled.",
|
||||
"admin.elasticsearchStatus.statusLoading": "Laden...",
|
||||
"admin.elasticsearchStatus.statusNoJobs": "No indexing jobs queued.",
|
||||
"admin.elasticsearchStatus.statusPending": "Job pending.",
|
||||
"admin.elasticsearchStatus.statusPending.help": "Elasticsearch index job is queued on the job server. If Elasticsearch is enabled, search results may be incomplete until the job is finished.",
|
||||
"admin.elasticsearchStatus.statusRequestCancel": "Canceling Job...",
|
||||
"admin.elasticsearchStatus.statusSuccess": "Indexing complete.",
|
||||
"admin.elasticsearchStatus.statusSuccess.help": "Indexing is complete and new posts are being automatically indexed.",
|
||||
"admin.email.agreeHPNS": " Ik begrijp en accepteer de Mattermost Gehoste Push Meldingen Service <a href=\"https://about.mattermost.com/hpns-terms/\" target=\"_blank\">Servicevoorwaarden</a> en <a href=\"https://about.mattermost.com/hpns-privacy/\" target=\"_blank\">Privacy-beleid</a>.",
|
||||
"admin.email.allowEmailSignInDescription": "Indien ingeschakeld dan kunnen gebruikers inloggen in Mattermost met hun e-mailadres en wachtwoord.",
|
||||
"admin.email.allowEmailSignInTitle": "Inschakelen van inloggen met email:",
|
||||
@@ -523,7 +510,7 @@
|
||||
"admin.integrations.external": "Externe services",
|
||||
"admin.integrations.webrtc": "Mattermost WebRTC",
|
||||
"admin.jobTable.cancelButton": "Annuleren",
|
||||
"admin.jobTable.headerExtraInfo": "Extra Information",
|
||||
"admin.jobTable.headerExtraInfo": "Details",
|
||||
"admin.jobTable.headerFinishAt": "Finish Time",
|
||||
"admin.jobTable.headerRunTime": "Run Time",
|
||||
"admin.jobTable.headerStatus": "Status",
|
||||
@@ -548,6 +535,8 @@
|
||||
"admin.ldap.emailAttrEx": "Bijv.: \"mail\" of \"userPrincipalName\"",
|
||||
"admin.ldap.emailAttrTitle": "Email attribuut:",
|
||||
"admin.ldap.enableDesc": "Wanneer 'waar', kunt u in Mattermost inloggen met behulp van AD/LDAP",
|
||||
"admin.ldap.enableSyncDesc": "When true, Mattermost periodically synchronizes users from AD/LDAP.",
|
||||
"admin.ldap.enableSyncTitle": "Enable Synchronization with AD/LDAP:",
|
||||
"admin.ldap.enableTitle": "Inschakelen van inloggen met AD/LDAP:",
|
||||
"admin.ldap.firstnameAttrDesc": "(Optional) The attribute in the AD/LDAP server that will be used to populate the first name of users in Mattermost. When set, users will not be able to edit their first name, since it is synchronized with the LDAP server. When left blank, users can set their own first name in Account Settings.",
|
||||
"admin.ldap.firstnameAttrEx": "Bijv.: \"givenName\"",
|
||||
@@ -640,6 +629,7 @@
|
||||
"admin.logs.title": "Server Logs",
|
||||
"admin.manage_roles.additionalRoles": "Select additional permissions for the account. <a href=\"https://about.mattermost.com/default-permissions\" target=\"_blank\">Read more about roles and permissions</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokens": "Allow this account to generate <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">personal access tokens</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokensDesc": "Removing this permission doesn't delete existing tokens. To delete them, go to the user's Manage Tokens menu.",
|
||||
"admin.manage_roles.cancel": "Annuleren",
|
||||
"admin.manage_roles.manageRolesTitle": "Manage Roles",
|
||||
"admin.manage_roles.postAllPublicRole": "Access to post to all Mattermost public channels.",
|
||||
@@ -651,7 +641,7 @@
|
||||
"admin.manage_roles.systemAdmin": "Systeem beheerder",
|
||||
"admin.manage_roles.systemMember": "Lid",
|
||||
"admin.manage_tokens.manageTokensTitle": "Manage Personal Access Tokens",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Personal access tokens function similar to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">interact with this Mattermost server</a>. Learn more about <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">personal access tokens</a>.",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Personal access tokens function similarly to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">interact with this Mattermost server</a>. Tokens are disabled if the user is deactivated. Learn more about <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">personal access tokens</a>.",
|
||||
"admin.manage_tokens.userAccessTokensNone": "No personal access tokens.",
|
||||
"admin.metrics.enableDescription": "When true, Mattermost will enable performance monitoring collection and profiling. Please see <a href=\"http://docs.mattermost.com/deployment/metrics.html\" target='_blank'>documentation</a> to learn more about configuring performance monitoring for Mattermost.",
|
||||
"admin.metrics.enableTitle": "Enable Performance Monitoring:",
|
||||
@@ -698,18 +688,19 @@
|
||||
"admin.password.requirementsDescription": "Karakter types voor een geldig wachtwoord.",
|
||||
"admin.password.symbol": "Ten minstens een van de volgende symbolen: \"~!@#$%^&*()\"",
|
||||
"admin.password.uppercase": "Minimaal 1 hoofdletter",
|
||||
"admin.plugin.activeTitle": "Active Plugins: ",
|
||||
"admin.plugin.banner": "Plugins are experimental and not recommended for use in production.",
|
||||
"admin.plugin.desc": "Omschrijving",
|
||||
"admin.plugin.error.activate": "Unable to upload the plugin. It may conflict with another plugin on your server.",
|
||||
"admin.plugin.error.extract": "Encountered an error when extracting the plugin. Review your plugin file content and try again.",
|
||||
"admin.plugin.id": "ID: ",
|
||||
"admin.plugin.no_plugins": "No active plugins.",
|
||||
"admin.plugin.installedDesc": "Installed plugins on your Mattermost server. Pre-packaged plugins are installed by default, and can be deactivated but not removed.",
|
||||
"admin.plugin.installedTitle": "Installed Plugins: ",
|
||||
"admin.plugin.management.title": "Management",
|
||||
"admin.plugin.no_plugins": "No installed plugins.",
|
||||
"admin.plugin.remove": "Verwijderen",
|
||||
"admin.plugin.removing": "Removing...",
|
||||
"admin.plugin.title": "Plugins (Experimental)",
|
||||
"admin.plugin.upload": "Upload",
|
||||
"admin.plugin.uploadDesc": "Upload a plugin for your Mattermost server. Adding or removing a webapp plugin requires users to refresh their browser or Desktop App before taking effect. See <a href=\"https://about.mattermost.com/default-plugins\">documentation</a> to learn more.",
|
||||
"admin.plugin.uploadDesc": "Upload a plugin for your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugin-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugin.uploadTitle": "Upload Plugin: ",
|
||||
"admin.plugin.uploading": "Bezig met uploaden..",
|
||||
"admin.plugins.jira": "JIRA (Beta)",
|
||||
@@ -725,6 +716,11 @@
|
||||
"admin.plugins.jira.userDescription": "Select the username that this integration is attached to.",
|
||||
"admin.plugins.jira.userLabel": "Gebruikers",
|
||||
"admin.plugins.jira.webhookDocsLink": "documentatie",
|
||||
"admin.plugins.settings.enable": "Enable Plugins: ",
|
||||
"admin.plugins.settings.enableDesc": "When true, enables plugins on your Mattermost server. Use plugins to integrate with third-party systems, extend functionality or customize the user interface of your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugins\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.enableUploads": "Enable Plugin Uploads: ",
|
||||
"admin.plugins.settings.enableUploadsDesc": "When true, enables plugin uploads by System Admins at <strong>Plugins > Management</strong>. If you do not plan to upload a plugin, set to false to control which plugins are installed on your server. See <a href=\"https://about.mattermost.com/default-plugins-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.title": "Configuration",
|
||||
"admin.privacy.showEmailDescription": "When false, hides the email address of members from everyone except System Administrators.",
|
||||
"admin.privacy.showEmailTitle": "Toon e-mail adres: ",
|
||||
"admin.privacy.showFullNameDescription": "When false, hides the full name of members from everyone except System Administrators. Username is shown in place of full name.",
|
||||
@@ -768,9 +764,9 @@
|
||||
"admin.requestButton.loading": "Laden...",
|
||||
"admin.requestButton.requestFailure": "Sync Mislukt: {error}",
|
||||
"admin.requestButton.requestSuccess": "Installatie Succesvol",
|
||||
"admin.reset_password.close": "Afsluiten",
|
||||
"admin.reset_password.cancel": "Annuleren",
|
||||
"admin.reset_password.newPassword": "Nieuw wachtwoord",
|
||||
"admin.reset_password.select": "Selecteer",
|
||||
"admin.reset_password.reset": "Reset",
|
||||
"admin.reset_password.submit": "Voert u alstublieft minstens {chars} tekens in.",
|
||||
"admin.reset_password.titleReset": "Reset wachtwoord",
|
||||
"admin.reset_password.titleSwitch": "Overschakelen naar e-mail/wachtwoord",
|
||||
@@ -783,6 +779,8 @@
|
||||
"admin.saml.emailAttrEx": "Bijv.: \"Email\" of \"Primaire Email\"",
|
||||
"admin.saml.emailAttrTitle": "Email Attribuut:",
|
||||
"admin.saml.enableDescription": "Mattermost SAML logins toestaan. Lees hier de <a href='http://docs.mattermost.com/deployment/sso-saml.html' target='_blank'>documentatie</a> over het configureren van SAML voor Mattermost.",
|
||||
"admin.saml.enableSyncWithLdapDescription": "When true, Mattermost periodically synchronizes SAML user attributes, including user deactivation and removal, from AD/LDAP. Enable and configure synchronization settings at <strong>Authentication > AD/LDAP</strong>. See <a href='https://about.mattermost.com/default-saml-ldap-sync' target='_blank'>documentation</a> to learn more.",
|
||||
"admin.saml.enableSyncWithLdapTitle": "Enable Synchronizing SAML Accounts With AD/LDAP:",
|
||||
"admin.saml.enableTitle": "Inschakelen van inloggen met SAML:",
|
||||
"admin.saml.encryptDescription": "When false, Mattermost will not decrypt SAML Assertions encrypted with your Service Provider Public Certificate. Not recommended for production environments. For testing only.",
|
||||
"admin.saml.encryptTitle": "Inschakelen van Versleuteling: ",
|
||||
@@ -957,7 +955,8 @@
|
||||
"admin.sidebar.oauth": "OAuth 2.0",
|
||||
"admin.sidebar.other": "ANDERE",
|
||||
"admin.sidebar.password": "Wachtwoord",
|
||||
"admin.sidebar.plugins": "Plugins (Experimental)",
|
||||
"admin.sidebar.plugins": "Plugins (Beta)",
|
||||
"admin.sidebar.plugins.configuration": "Configuration",
|
||||
"admin.sidebar.policy": "Beleid",
|
||||
"admin.sidebar.privacy": "Privacy",
|
||||
"admin.sidebar.publicLinks": "Publieke links",
|
||||
@@ -1436,6 +1435,9 @@
|
||||
"delete_post.post": "Bericht",
|
||||
"delete_post.question": "Weet u zeker dat u deze {term} wilt verwijderen?",
|
||||
"delete_post.warning": "This post has {count, number} {count, plural, one {comment} other {comments}} on it.",
|
||||
"discard_changes_modal.leave": "Ja, verwijderen",
|
||||
"discard_changes_modal.message": "U niet-opgeslagen wijzigingen, weet u zeker dat u deze wilt verwijderen?",
|
||||
"discard_changes_modal.title": "Wijzigingen verwijderen?",
|
||||
"edit_channel_header.editHeader": "Edit the Channel Header...",
|
||||
"edit_channel_header.previewHeader": "Koptekst bewerken",
|
||||
"edit_channel_header_modal.cancel": "Annuleren",
|
||||
@@ -1865,6 +1867,8 @@
|
||||
"mobile.about.appVersion": "App Version: {version} (Build {number})",
|
||||
"mobile.about.copyright": "Copyright 2016 Mattermost, Inc. Alle rechten voorbehouden",
|
||||
"mobile.about.database": "Database: {type}",
|
||||
"mobile.about.licensed": "Licensed to: {company}",
|
||||
"mobile.about.powered_by": "{site} is powered by Mattermost",
|
||||
"mobile.about.serverVersion": "Server Version: {version} (Build {number})",
|
||||
"mobile.about.serverVersionNoBuild": "Server Version: {version}",
|
||||
"mobile.account.notifications.email.footer": "When offline or away for more than five minutes",
|
||||
@@ -1878,6 +1882,14 @@
|
||||
"mobile.advanced_settings.reset_message": "\nThis will reset all offline data and restart the app. You will be automatically logged back in once the app restarts.\n",
|
||||
"mobile.advanced_settings.reset_title": "Reset Cache",
|
||||
"mobile.advanced_settings.title": "Geavanceerde instellingen",
|
||||
"mobile.android.camera_permission_denied_description": "To take photos and videos with your camera, please change your permission settings.",
|
||||
"mobile.android.camera_permission_denied_title": "Camera access is required",
|
||||
"mobile.android.permission_denied_dismiss": "Dismiss",
|
||||
"mobile.android.permission_denied_retry": "Set permission",
|
||||
"mobile.android.photos_permission_denied_description": "To upload images from your library, please change your permission settings.",
|
||||
"mobile.android.photos_permission_denied_title": "Photo library access is required",
|
||||
"mobile.android.videos_permission_denied_description": "To upload videos from your library, please change your permission settings.",
|
||||
"mobile.android.videos_permission_denied_title": "Video library access is required",
|
||||
"mobile.channel_drawer.search": "Jump to...",
|
||||
"mobile.channel_info.alertMessageDeleteChannel": "Weet u zeker dat u deze {term} wilt verwijderen?",
|
||||
"mobile.channel_info.alertMessageLeaveChannel": "Weet u zeker dat u deze {term} wilt verwijderen?",
|
||||
@@ -1903,6 +1915,19 @@
|
||||
"mobile.channel_list.privateChannel": "Verlaat kanaal",
|
||||
"mobile.channel_list.publicChannel": "Publieke kanalen",
|
||||
"mobile.channel_list.unreads": "UNREADS",
|
||||
"mobile.client_upgrade": "Update App",
|
||||
"mobile.client_upgrade.can_upgrade_subtitle": "A new version is available for download.",
|
||||
"mobile.client_upgrade.can_upgrade_title": "Update Available",
|
||||
"mobile.client_upgrade.close": "Update Later",
|
||||
"mobile.client_upgrade.current_version": "Latest Version: {version}",
|
||||
"mobile.client_upgrade.download_error.message": "An error occurred downloading the new version.",
|
||||
"mobile.client_upgrade.download_error.title": "Unable to Install Update",
|
||||
"mobile.client_upgrade.latest_version": "Your Version: {version}",
|
||||
"mobile.client_upgrade.must_upgrade_subtitle": "Please update the app to continue.",
|
||||
"mobile.client_upgrade.must_upgrade_title": "Update Required",
|
||||
"mobile.client_upgrade.no_upgrade_subtitle": "You already have the latest version.",
|
||||
"mobile.client_upgrade.no_upgrade_title": "Your App Is Up to Date",
|
||||
"mobile.client_upgrade.upgrade": "Update",
|
||||
"mobile.components.channels_list_view.yourChannels": "Your channels:",
|
||||
"mobile.components.error_list.dismiss_all": "Dismiss All",
|
||||
"mobile.components.select_server_view.continue": "doorgaan",
|
||||
@@ -1932,6 +1957,8 @@
|
||||
"mobile.file_upload.more": "Meer",
|
||||
"mobile.file_upload.video": "Video Library",
|
||||
"mobile.help.title": "Help",
|
||||
"mobile.image_preview.deleted_post_message": "This post and it's files have been deleted. The previewer will now be closed.",
|
||||
"mobile.image_preview.deleted_post_title": "Post Deleted",
|
||||
"mobile.image_preview.save": "Save Image",
|
||||
"mobile.intro_messages.DM": "Dit is de start van uw privé berichten historiek met teamlid {teammate}.<br /> Privé berichten en bestanden die hier gedeeld worden zijn niet zichtbaar voor anderen.",
|
||||
"mobile.intro_messages.default_message": "This is the first channel teammates see when they sign up - use it for posting updates everyone needs to know.",
|
||||
@@ -1945,7 +1972,10 @@
|
||||
"mobile.managed.exit": "Bewerken",
|
||||
"mobile.managed.jailbreak": "Jailbroken devices are not trusted by {vendor}, please exit the app.",
|
||||
"mobile.managed.secured_by": "Secured by {vendor}",
|
||||
"mobile.markdown.code.copy_code": "Copy Code",
|
||||
"mobile.markdown.code.plusMoreLines": "+{count, number} more lines",
|
||||
"mobile.markdown.link.copy_url": "Copy URL",
|
||||
"mobile.mention.copy_mention": "Copy Mention",
|
||||
"mobile.more_dms.start": "Start",
|
||||
"mobile.more_dms.title": "New Conversation",
|
||||
"mobile.notice_mobile_link": "mobile apps",
|
||||
@@ -1994,6 +2024,7 @@
|
||||
"mobile.post.failed_title": "Unable to send your message",
|
||||
"mobile.post.retry": "Refresh",
|
||||
"mobile.post_info.add_reaction": "Add Reaction",
|
||||
"mobile.post_info.copy_post": "Copy Post",
|
||||
"mobile.request.invalid_response": "Received invalid response from the server.",
|
||||
"mobile.retry_message": "Refreshing messages failed. Pull up to try again.",
|
||||
"mobile.routes.channelInfo": "Info",
|
||||
@@ -2037,13 +2068,20 @@
|
||||
"mobile.settings.clear": "Clear Offline Store",
|
||||
"mobile.settings.clear_button": "Clear",
|
||||
"mobile.settings.clear_message": "\nThis will clear all offline data and restart the app. You will be automatically logged back in once the app restarts.\n",
|
||||
"mobile.settings.modal.check_for_upgrade": "Check for Updates",
|
||||
"mobile.settings.team_selection": "Team Selectie",
|
||||
"mobile.suggestion.members": " Leden",
|
||||
"modal.manaul_status.ask": "Do not ask me again",
|
||||
"modal.manaul_status.button": "Yes, set my status to \"Online\"",
|
||||
"modal.manaul_status.cancel": "No, keep it as \"{status}\"",
|
||||
"modal.manaul_status.message": "Would you like to switch your status to \"Online\"?",
|
||||
"modal.manaul_status.title": "Your status is set to \"{status}\"",
|
||||
"modal.manaul_status.title_": "Your status is set to \"{status}\"",
|
||||
"modal.manaul_status.title_away": "Your status is set to \"Away\"",
|
||||
"modal.manaul_status.title_dnd": "Your status is set to \"Do Not Disturb\"",
|
||||
"modal.manaul_status.title_offline": "Your status is set to \"Offline\"",
|
||||
"modal.manual_status.cancel_": "No, keep it as \"{status}\"",
|
||||
"modal.manual_status.cancel_away": "No, keep it as \"Away\"",
|
||||
"modal.manual_status.cancel_dnd": "No, keep it as \"Do Not Disturb\"",
|
||||
"modal.manual_status.cancel_offline": "No, keep it as \"Offline\"",
|
||||
"more_channels.close": "Afsluiten",
|
||||
"more_channels.create": "Maak een nieuw kanaal",
|
||||
"more_channels.createClick": "Klik 'Maak nieuw kanaal' om een nieuw kanaal te maken",
|
||||
@@ -2127,6 +2165,12 @@
|
||||
"permalink.error.title": "Message Not Found",
|
||||
"post_attachment.collapse": "Minder tonen...",
|
||||
"post_attachment.more": "Meer tonen...",
|
||||
"post_body.check_for_out_of_channel_mentions.link.and": " and ",
|
||||
"post_body.check_for_out_of_channel_mentions.link.private": "add them to this private channel",
|
||||
"post_body.check_for_out_of_channel_mentions.link.public": "add them to the channel",
|
||||
"post_body.check_for_out_of_channel_mentions.message.multiple": "were mentioned but they are not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message.one": "was mentioned but is not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message_last": "? They will have access to all message history.",
|
||||
"post_body.commentedOn": "Reageerde op bericht van {name}{apostrophe}:",
|
||||
"post_body.deleted": "(bericht verwijderd)",
|
||||
"post_body.plusMore": " plus {count, number} other {count, plural, one {file} other {files}}",
|
||||
@@ -2227,8 +2271,6 @@
|
||||
"search_results.searching": "Searching...",
|
||||
"search_results.usage.dataRetention": "Only messages posted in the last {days} days are returned. Contact your System Administrator for more detail.",
|
||||
"search_results.usage.fromInSuggestion": "Use {fromUser} to find posts from specific users and {inChannel} to find posts in specific channels",
|
||||
"search_results.usage.fromInSuggestion.fromUser": "from:",
|
||||
"search_results.usage.fromInSuggestion.inChannel": "in:",
|
||||
"search_results.usage.phrasesSuggestion": "Use {quotationMarks} to search for phrases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"quotation marks\"",
|
||||
"search_results.usageFlag1": "Je hebt nog geen berichten gemarkeerd.",
|
||||
@@ -2380,6 +2422,7 @@
|
||||
"sso_signup.teamName": "Voer de naam in van het nieuwe team",
|
||||
"sso_signup.team_error": "Voer de naam in van het team",
|
||||
"status_dropdown.set_away": "Away",
|
||||
"status_dropdown.set_dnd": "Do Not Disturb",
|
||||
"status_dropdown.set_offline": "Offline",
|
||||
"status_dropdown.set_online": "Online",
|
||||
"suggestion.loading": "Laden...",
|
||||
@@ -2496,6 +2539,7 @@
|
||||
"user.settings.custom_theme.centerChannelTitle": "Midden Kanaal Stijlen",
|
||||
"user.settings.custom_theme.codeTheme": "Code thema",
|
||||
"user.settings.custom_theme.copyPaste": "Kopieer en plak om thema kleuren te delen:",
|
||||
"user.settings.custom_theme.dndIndicator": "Do Not Disturb Indicator",
|
||||
"user.settings.custom_theme.linkButtonTitle": "Link en Knoppen Stijlen",
|
||||
"user.settings.custom_theme.linkColor": "Link kleur",
|
||||
"user.settings.custom_theme.mentionBj": "Vermelding Juweel BG",
|
||||
@@ -2623,6 +2667,7 @@
|
||||
"user.settings.modal.general": "Algemeen",
|
||||
"user.settings.modal.notifications": "Meldingen",
|
||||
"user.settings.modal.security": "Beveiliging",
|
||||
"user.settings.modal.sidebar": "Sidebar",
|
||||
"user.settings.modal.title": "Account-instellingen",
|
||||
"user.settings.notifications.allActivity": "Voor alle activiteiten",
|
||||
"user.settings.notifications.channelWide": "Kanaal-brede vermeldingen \"@\"kanaal\", \"@all\"",
|
||||
@@ -2757,6 +2802,11 @@
|
||||
"user.settings.security.switchSaml": "Overschakelen naar SAML SSO",
|
||||
"user.settings.security.title": "Beveiligingsinstellingen",
|
||||
"user.settings.security.viewHistory": "Bekijk Toegang Geschiedenis ",
|
||||
"user.settings.sidebar.after_seven_days": "After 7 days with no new messages",
|
||||
"user.settings.sidebar.autoCloseDMDesc": "Direct Message conversations can be reopened with the “+” button in the sidebar or using the Channel Switcher (CTRL+K).",
|
||||
"user.settings.sidebar.autoCloseDMTitle": "Automatically Close Direct Messages",
|
||||
"user.settings.sidebar.never": "Nooit",
|
||||
"user.settings.sidebar.title": "Sidebar Settings",
|
||||
"user.settings.tokens.cancel": "Annuleren",
|
||||
"user.settings.tokens.clickToEdit": "Click 'Edit' to manage your personal access tokens",
|
||||
"user.settings.tokens.confirmCreateButton": "Yes, Create",
|
||||
@@ -2768,8 +2818,8 @@
|
||||
"user.settings.tokens.copy": "Please copy the access token below. You won't be able to see it again!",
|
||||
"user.settings.tokens.create": "Create New Token",
|
||||
"user.settings.tokens.delete": "Verwijderen",
|
||||
"user.settings.tokens.description": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similar to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>.",
|
||||
"user.settings.tokens.description_mobile": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similar to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>. Create new tokens on your desktop.",
|
||||
"user.settings.tokens.description": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similarly to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>.",
|
||||
"user.settings.tokens.description_mobile": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similarly to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>. Create new tokens on your desktop.",
|
||||
"user.settings.tokens.id": "Token ID: ",
|
||||
"user.settings.tokens.name": "Site Omschrijving: ",
|
||||
"user.settings.tokens.nameHelp": "Enter a description for your token to remember what it does.",
|
||||
@@ -2780,6 +2830,7 @@
|
||||
"user.settings.tokens.tokenId": "Token ID: ",
|
||||
"user.settings.tokens.userAccessTokensNone": "No personal access tokens.",
|
||||
"user_list.notFound": "Geen gebruikers gevonden",
|
||||
"user_profile.account.editSettings": "Account-instellingen",
|
||||
"user_profile.send.dm": "Send Message",
|
||||
"user_profile.webrtc.call": "Start een video-oproep",
|
||||
"user_profile.webrtc.offline": "The user is offline",
|
||||
|
||||
@@ -269,10 +269,13 @@
|
||||
"admin.database.title": "Ustawienia bazy danych",
|
||||
"admin.developer.title": "Ustawienia deweloperów",
|
||||
"admin.elasticsearch.bulkIndexButton.error": "Failed to schedule Bulk Index Job: {error}",
|
||||
"admin.elasticsearch.bulkIndexingTitle": "Bulk Indexing:",
|
||||
"admin.elasticsearch.connectionUrlDescription": "The address of the Elasticsearch server. {documentationLink}",
|
||||
"admin.elasticsearch.connectionUrlExample": "E.g.: \"https://elasticsearch.example.org:9200\"",
|
||||
"admin.elasticsearch.connectionUrlExample.documentationLinkText": "Please see documentation with server setup instructions.",
|
||||
"admin.elasticsearch.connectionUrlTitle": "Server Connection Address:",
|
||||
"admin.elasticsearch.createJob.help": "All posts in the database will be indexed from oldest to newest. Elasticsearch is available during indexing but search results may be incomplete until the indexing job is complete.",
|
||||
"admin.elasticsearch.createJob.title": "Index Now",
|
||||
"admin.elasticsearch.elasticsearch_test_button": "Sprawdź połączenie",
|
||||
"admin.elasticsearch.enableIndexingDescription": "When true, indexing of new posts occurs automatically. Search queries will use database search until \"Enable Elasticsearch for search queries\" is enabled. {documentationLink}",
|
||||
"admin.elasticsearch.enableIndexingDescription.documentationLinkText": "Learn more about Elasticsearch in our documentation.",
|
||||
@@ -300,22 +303,6 @@
|
||||
"admin.elasticsearch.usernameDescription": "(Optional) The username to authenticate to the Elasticsearch server.",
|
||||
"admin.elasticsearch.usernameExample": "E.g.: \"elastic\"",
|
||||
"admin.elasticsearch.usernameTitle": "Nazwa użytkownika SMTP:",
|
||||
"admin.elasticsearchStatus.bulkIndexLabel": "Bulk Indexing:",
|
||||
"admin.elasticsearchStatus.cancelButton": "Anuluj",
|
||||
"admin.elasticsearchStatus.status": "Stan",
|
||||
"admin.elasticsearchStatus.statusCancelled": "Indexing job cancelled.",
|
||||
"admin.elasticsearchStatus.statusError": "Indexing error.",
|
||||
"admin.elasticsearchStatus.statusError.help": "Mattermost encountered an error building the Elasticsearch index: {error}",
|
||||
"admin.elasticsearchStatus.statusInProgress": "Job in progress. {percent}% complete.",
|
||||
"admin.elasticsearchStatus.statusInProgress.help": "Indexing is in progress on the job server. If Elasticsearch is enabled, search results may be incomplete until the job is finished.",
|
||||
"admin.elasticsearchStatus.statusIndexingDisabled": "Indexing disabled.",
|
||||
"admin.elasticsearchStatus.statusLoading": "Ładowanie...",
|
||||
"admin.elasticsearchStatus.statusNoJobs": "No indexing jobs queued.",
|
||||
"admin.elasticsearchStatus.statusPending": "Job pending.",
|
||||
"admin.elasticsearchStatus.statusPending.help": "Elasticsearch index job is queued on the job server. If Elasticsearch is enabled, search results may be incomplete until the job is finished.",
|
||||
"admin.elasticsearchStatus.statusRequestCancel": "Canceling Job...",
|
||||
"admin.elasticsearchStatus.statusSuccess": "Indexing complete.",
|
||||
"admin.elasticsearchStatus.statusSuccess.help": "Indexing is complete and new posts are being automatically indexed.",
|
||||
"admin.email.agreeHPNS": "Rozumiem i akceptuję <a href=\"https://about.mattermost.com/hpns-terms/\" target=\"_blank\">Warunki Użycia (jęz. angielski)</a> i <a href=\"https://about.mattermost.com/hpns-privacy/\" target=\"_blank\">Politykę Prywatności (jęz. angielski)</a> usługi Mattermost Hosted Push Notification Service.",
|
||||
"admin.email.allowEmailSignInDescription": "Kiedy włączone, Mattermost pozwoli użytkownikom logować się za pomocą ich adresu e-mail i hasła.",
|
||||
"admin.email.allowEmailSignInTitle": "Włącz logowanie za pomocą adresu email:",
|
||||
@@ -523,7 +510,7 @@
|
||||
"admin.integrations.external": "Zewnętrzne usługi",
|
||||
"admin.integrations.webrtc": "Mattermost WebRTC",
|
||||
"admin.jobTable.cancelButton": "Anuluj",
|
||||
"admin.jobTable.headerExtraInfo": "Extra Information",
|
||||
"admin.jobTable.headerExtraInfo": "Details",
|
||||
"admin.jobTable.headerFinishAt": "Finish Time",
|
||||
"admin.jobTable.headerRunTime": "Run Time",
|
||||
"admin.jobTable.headerStatus": "Stan",
|
||||
@@ -548,6 +535,8 @@
|
||||
"admin.ldap.emailAttrEx": "Np. \"mail\" lub \"userPrincipalName\"",
|
||||
"admin.ldap.emailAttrTitle": "Atrybut Email:",
|
||||
"admin.ldap.enableDesc": "Jeśli włączone, Mattermost umożliwi logowanie za pomocą AD/LDAP",
|
||||
"admin.ldap.enableSyncDesc": "When true, Mattermost periodically synchronizes users from AD/LDAP.",
|
||||
"admin.ldap.enableSyncTitle": "Enable Synchronization with AD/LDAP:",
|
||||
"admin.ldap.enableTitle": "Włącz logowanie za pomocą AD/LDAP:",
|
||||
"admin.ldap.firstnameAttrDesc": "(Opcjonalne) Atrybut na serwerze AD/LDAP, kóry będzie używany do wypełniania pierwszego imienia użytkowników w Mattermost. Jeśli włączone, użytkownicy nie będą mogli zmienić swoich imion, gdyż będą one synchronizowane z serwerem LDAP. Jeśli zostawiony puste, użytkownicy będą mogli sami wpisać swoje imię w Ustawieniach Użytkownika.",
|
||||
"admin.ldap.firstnameAttrEx": "Np. \"givenName\"",
|
||||
@@ -640,6 +629,7 @@
|
||||
"admin.logs.title": "Logi serwera",
|
||||
"admin.manage_roles.additionalRoles": "Select additional permissions for the account. <a href=\"https://about.mattermost.com/default-permissions\" target=\"_blank\">Read more about roles and permissions</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokens": "Allow this account to generate <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">personal access tokens</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokensDesc": "Removing this permission doesn't delete existing tokens. To delete them, go to the user's Manage Tokens menu.",
|
||||
"admin.manage_roles.cancel": "Anuluj",
|
||||
"admin.manage_roles.manageRolesTitle": "Zarządzaj rolami",
|
||||
"admin.manage_roles.postAllPublicRole": "Access to post to all Mattermost public channels.",
|
||||
@@ -651,7 +641,7 @@
|
||||
"admin.manage_roles.systemAdmin": "Administrator Systemu",
|
||||
"admin.manage_roles.systemMember": "Użytkownik",
|
||||
"admin.manage_tokens.manageTokensTitle": "Manage Personal Access Tokens",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Personal access tokens function similar to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">interact with this Mattermost server</a>. Learn more about <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">personal access tokens</a>.",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Personal access tokens function similarly to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">interact with this Mattermost server</a>. Tokens are disabled if the user is deactivated. Learn more about <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">personal access tokens</a>.",
|
||||
"admin.manage_tokens.userAccessTokensNone": "Brak osobistych tokenów dostępu.",
|
||||
"admin.metrics.enableDescription": "Jeśli włączone, Mattermost umożliwi monitorowanie wydajności oraz profilowanie. Zobacz proszę <a href=\"http://docs.mattermost.com/deployment/metrics.html\" target='_blank'>dokumentację</a> aby dowiedzieć się więcej na temat konfiguracji monitoringu wydajności dla Mattermost.",
|
||||
"admin.metrics.enableTitle": "Włącz Monitorowanie Wydajności:",
|
||||
@@ -698,18 +688,19 @@
|
||||
"admin.password.requirementsDescription": "Wymagane są różne rodzaje znaków w poprawnym haśle.",
|
||||
"admin.password.symbol": "Co najmniej jeden symbol (np. \"~!@#$%^&*()\")",
|
||||
"admin.password.uppercase": "Przynajmniej jedna wielka litera",
|
||||
"admin.plugin.activeTitle": "Active Plugins: ",
|
||||
"admin.plugin.banner": "Plugins are experimental and not recommended for use in production.",
|
||||
"admin.plugin.desc": "Opis",
|
||||
"admin.plugin.error.activate": "Unable to upload the plugin. It may conflict with another plugin on your server.",
|
||||
"admin.plugin.error.extract": "Encountered an error when extracting the plugin. Review your plugin file content and try again.",
|
||||
"admin.plugin.id": "Identyfikator: ",
|
||||
"admin.plugin.no_plugins": "No active plugins.",
|
||||
"admin.plugin.installedDesc": "Installed plugins on your Mattermost server. Pre-packaged plugins are installed by default, and can be deactivated but not removed.",
|
||||
"admin.plugin.installedTitle": "Installed Plugins: ",
|
||||
"admin.plugin.management.title": "Management",
|
||||
"admin.plugin.no_plugins": "No installed plugins.",
|
||||
"admin.plugin.remove": "Usuń",
|
||||
"admin.plugin.removing": "Usuwanie...",
|
||||
"admin.plugin.title": "Pluginy (Eksperymenralne)",
|
||||
"admin.plugin.upload": "Wyślij",
|
||||
"admin.plugin.uploadDesc": "Upload a plugin for your Mattermost server. Adding or removing a webapp plugin requires users to refresh their browser or Desktop App before taking effect. See <a href=\"https://about.mattermost.com/default-plugins\">documentation</a> to learn more.",
|
||||
"admin.plugin.uploadDesc": "Upload a plugin for your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugin-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugin.uploadTitle": "Wyślij plugin: ",
|
||||
"admin.plugin.uploading": "Wysyłanie..",
|
||||
"admin.plugins.jira": "JIRA (Beta)",
|
||||
@@ -725,6 +716,11 @@
|
||||
"admin.plugins.jira.userDescription": "Wybierz nazwę użytkownika, z którą powiązana jest ta integracja.",
|
||||
"admin.plugins.jira.userLabel": "Użytkownicy",
|
||||
"admin.plugins.jira.webhookDocsLink": "dokumentacja",
|
||||
"admin.plugins.settings.enable": "Enable Plugins: ",
|
||||
"admin.plugins.settings.enableDesc": "When true, enables plugins on your Mattermost server. Use plugins to integrate with third-party systems, extend functionality or customize the user interface of your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugins\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.enableUploads": "Enable Plugin Uploads: ",
|
||||
"admin.plugins.settings.enableUploadsDesc": "When true, enables plugin uploads by System Admins at <strong>Plugins > Management</strong>. If you do not plan to upload a plugin, set to false to control which plugins are installed on your server. See <a href=\"https://about.mattermost.com/default-plugins-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.title": "Configuration",
|
||||
"admin.privacy.showEmailDescription": "Kiedy fałsz, ukrywa adresy e-mail wszystkich użytkowniów, z wyjątkiem administratorów systemu.",
|
||||
"admin.privacy.showEmailTitle": "Pokaż adres E-mail:",
|
||||
"admin.privacy.showFullNameDescription": "Gdy wyłączone, ukrywa imię i nazwisko uczestników przed każdym poza Administratorami Systemu. Zamiast tego pokazana jest nazwa użytkownika.",
|
||||
@@ -768,9 +764,9 @@
|
||||
"admin.requestButton.loading": " Ładowanie...",
|
||||
"admin.requestButton.requestFailure": "Niepowodzenie testu: {error}",
|
||||
"admin.requestButton.requestSuccess": "Test zakończony sukcesem",
|
||||
"admin.reset_password.close": "Zamknij",
|
||||
"admin.reset_password.cancel": "Anuluj",
|
||||
"admin.reset_password.newPassword": "Nowe hasło",
|
||||
"admin.reset_password.select": "Wybierz",
|
||||
"admin.reset_password.reset": "Reset",
|
||||
"admin.reset_password.submit": "Proszę podać co najmniej {chars} znaków.",
|
||||
"admin.reset_password.titleReset": "Zresetuj hasło",
|
||||
"admin.reset_password.titleSwitch": "Przełącz konto na adres e-mail/hasło",
|
||||
@@ -783,6 +779,8 @@
|
||||
"admin.saml.emailAttrEx": "Np.: \"Email\" lub \"PrimaryEmail\"",
|
||||
"admin.saml.emailAttrTitle": "Atrybut Email:",
|
||||
"admin.saml.enableDescription": "Gdy włączone, Mattermost pozwoli na logowanie przy użyciu SAML 2.0. Proszę przeczytać <a href='http://docs.mattermost.com/deployment/sso-saml.html' target='_blank'>dokumentację</a> (j. angielski), aby dowiedzieć się więcej o konfiguracji SAML w Mattermost.",
|
||||
"admin.saml.enableSyncWithLdapDescription": "When true, Mattermost periodically synchronizes SAML user attributes, including user deactivation and removal, from AD/LDAP. Enable and configure synchronization settings at <strong>Authentication > AD/LDAP</strong>. See <a href='https://about.mattermost.com/default-saml-ldap-sync' target='_blank'>documentation</a> to learn more.",
|
||||
"admin.saml.enableSyncWithLdapTitle": "Enable Synchronizing SAML Accounts With AD/LDAP:",
|
||||
"admin.saml.enableTitle": "Pozwól zalogować się z SAML:",
|
||||
"admin.saml.encryptDescription": "When false, Mattermost will not decrypt SAML Assertions encrypted with your Service Provider Public Certificate. Not recommended for production environments. For testing only.",
|
||||
"admin.saml.encryptTitle": "Włącz Szyfrowanie:",
|
||||
@@ -958,6 +956,7 @@
|
||||
"admin.sidebar.other": "INNE",
|
||||
"admin.sidebar.password": "Hasło",
|
||||
"admin.sidebar.plugins": "Pluginy (Eksperymenralne)",
|
||||
"admin.sidebar.plugins.configuration": "Configuration",
|
||||
"admin.sidebar.policy": "Zasady",
|
||||
"admin.sidebar.privacy": "Prywatność",
|
||||
"admin.sidebar.publicLinks": "Publiczne Linki",
|
||||
@@ -1436,6 +1435,9 @@
|
||||
"delete_post.post": "Post",
|
||||
"delete_post.question": "Jesteś pewien, że chcesz usunąć {term}?",
|
||||
"delete_post.warning": "This post has {count, number} {count, plural, one {comment} other {comments}} on it.",
|
||||
"discard_changes_modal.leave": "Tak, Porzuć",
|
||||
"discard_changes_modal.message": "Masz niezapisane zmiany, jesteś pewien, że chcesz je porzucić?",
|
||||
"discard_changes_modal.title": "Porzucić zmiany?",
|
||||
"edit_channel_header.editHeader": "Edytuj nagłówek kanału...",
|
||||
"edit_channel_header.previewHeader": "Edytuj nagłówek",
|
||||
"edit_channel_header_modal.cancel": "Anuluj",
|
||||
@@ -1865,6 +1867,8 @@
|
||||
"mobile.about.appVersion": "Wersja aplikacji: {version} (Build {number})",
|
||||
"mobile.about.copyright": "Copyright 2015-{currentYear} Mattermost, Inc. Wszelkie prawa zastrzeżone.",
|
||||
"mobile.about.database": "Baza danych: {type}",
|
||||
"mobile.about.licensed": "Licensed to: {company}",
|
||||
"mobile.about.powered_by": "{site} is powered by Mattermost",
|
||||
"mobile.about.serverVersion": "Wersja serwera: {version} (Build {number})",
|
||||
"mobile.about.serverVersionNoBuild": "Wersja serwera: {version}",
|
||||
"mobile.account.notifications.email.footer": "W trybie offline lub poza domem przez ponad pięć minut",
|
||||
@@ -1878,6 +1882,14 @@
|
||||
"mobile.advanced_settings.reset_message": "\nThis will reset all offline data and restart the app. You will be automatically logged back in once the app restarts.\n",
|
||||
"mobile.advanced_settings.reset_title": "Reset Cache",
|
||||
"mobile.advanced_settings.title": "Zaawansowane ustawienia",
|
||||
"mobile.android.camera_permission_denied_description": "To take photos and videos with your camera, please change your permission settings.",
|
||||
"mobile.android.camera_permission_denied_title": "Camera access is required",
|
||||
"mobile.android.permission_denied_dismiss": "Dismiss",
|
||||
"mobile.android.permission_denied_retry": "Set permission",
|
||||
"mobile.android.photos_permission_denied_description": "To upload images from your library, please change your permission settings.",
|
||||
"mobile.android.photos_permission_denied_title": "Photo library access is required",
|
||||
"mobile.android.videos_permission_denied_description": "To upload videos from your library, please change your permission settings.",
|
||||
"mobile.android.videos_permission_denied_title": "Video library access is required",
|
||||
"mobile.channel_drawer.search": "Jump to...",
|
||||
"mobile.channel_info.alertMessageDeleteChannel": "Jesteś pewien, że chcesz usunąć {term} {name}?",
|
||||
"mobile.channel_info.alertMessageLeaveChannel": "Jesteś pewien, że chcesz opuścić {term} {name}?",
|
||||
@@ -1903,6 +1915,19 @@
|
||||
"mobile.channel_list.privateChannel": "Kanał prywatny",
|
||||
"mobile.channel_list.publicChannel": "Kanał publiczny",
|
||||
"mobile.channel_list.unreads": "NIEPRZECZYTANE",
|
||||
"mobile.client_upgrade": "Update App",
|
||||
"mobile.client_upgrade.can_upgrade_subtitle": "A new version is available for download.",
|
||||
"mobile.client_upgrade.can_upgrade_title": "Update Available",
|
||||
"mobile.client_upgrade.close": "Update Later",
|
||||
"mobile.client_upgrade.current_version": "Wersja serwera: {version}",
|
||||
"mobile.client_upgrade.download_error.message": "An error occurred downloading the new version.",
|
||||
"mobile.client_upgrade.download_error.title": "Unable to Install Update",
|
||||
"mobile.client_upgrade.latest_version": "Wersja serwera: {version}",
|
||||
"mobile.client_upgrade.must_upgrade_subtitle": "Please update the app to continue.",
|
||||
"mobile.client_upgrade.must_upgrade_title": "Update Required",
|
||||
"mobile.client_upgrade.no_upgrade_subtitle": "You already have the latest version.",
|
||||
"mobile.client_upgrade.no_upgrade_title": "Your App Is Up to Date",
|
||||
"mobile.client_upgrade.upgrade": "Zaktualizuj",
|
||||
"mobile.components.channels_list_view.yourChannels": "Twoje kanały:",
|
||||
"mobile.components.error_list.dismiss_all": "Odrzuć wszystkie",
|
||||
"mobile.components.select_server_view.continue": "Kontynuuj",
|
||||
@@ -1932,6 +1957,8 @@
|
||||
"mobile.file_upload.more": "Więcej",
|
||||
"mobile.file_upload.video": "Biblioteka wideo",
|
||||
"mobile.help.title": "Pomoc",
|
||||
"mobile.image_preview.deleted_post_message": "This post and it's files have been deleted. The previewer will now be closed.",
|
||||
"mobile.image_preview.deleted_post_title": "Post Deleted",
|
||||
"mobile.image_preview.save": "Zapisz obraz",
|
||||
"mobile.intro_messages.DM": "To początek historii wiadomości z użytkownikiem {teammate}. Bezpośrednie wiadomości i wysłane w nich pliki nie są widoczne dla osób spoza tego obszaru.",
|
||||
"mobile.intro_messages.default_message": "To jest pierwszy kanał który zobaczą członkowie zespołu po zarejestrowaniu się - używaj go do publikowania informacji, o których wszyscy muszą wiedzieć.",
|
||||
@@ -1945,7 +1972,10 @@
|
||||
"mobile.managed.exit": "Edycja",
|
||||
"mobile.managed.jailbreak": "Jailbroken devices are not trusted by {vendor}, please exit the app.",
|
||||
"mobile.managed.secured_by": "Secured by {vendor}",
|
||||
"mobile.markdown.code.copy_code": "Copy Code",
|
||||
"mobile.markdown.code.plusMoreLines": "+{count, number} more lines",
|
||||
"mobile.markdown.link.copy_url": "Copy URL",
|
||||
"mobile.mention.copy_mention": "Copy Mention",
|
||||
"mobile.more_dms.start": "Start",
|
||||
"mobile.more_dms.title": "New Conversation",
|
||||
"mobile.notice_mobile_link": "mobile apps",
|
||||
@@ -1994,6 +2024,7 @@
|
||||
"mobile.post.failed_title": "Nie można wysłać wiadomości",
|
||||
"mobile.post.retry": "Odśwież",
|
||||
"mobile.post_info.add_reaction": "Add Reaction",
|
||||
"mobile.post_info.copy_post": "Copy Post",
|
||||
"mobile.request.invalid_response": "Nieprawidłowa odpowiedź od serwera.",
|
||||
"mobile.retry_message": "Odświeżanie wiadomości nie powiodło się. Przeciągnij do góry, by spróbować ponownie.",
|
||||
"mobile.routes.channelInfo": "Informacje",
|
||||
@@ -2037,13 +2068,20 @@
|
||||
"mobile.settings.clear": "Clear Offline Store",
|
||||
"mobile.settings.clear_button": "Clear",
|
||||
"mobile.settings.clear_message": "\nThis will clear all offline data and restart the app. You will be automatically logged back in once the app restarts.\n",
|
||||
"mobile.settings.modal.check_for_upgrade": "Check for Updates",
|
||||
"mobile.settings.team_selection": "Wybór zespołu",
|
||||
"mobile.suggestion.members": "Użytkownicy",
|
||||
"modal.manaul_status.ask": "Nie pytaj ponownie",
|
||||
"modal.manaul_status.button": "Tak, ustaw mój status na \"Online\"",
|
||||
"modal.manaul_status.cancel": "Nie, pozostaw \"{status}\"",
|
||||
"modal.manaul_status.message": "Czy chcesz zmienić status na \"Online\"?",
|
||||
"modal.manaul_status.title": "Twój status został ustawiony na \"{status}\"",
|
||||
"modal.manaul_status.title_": "Twój status został ustawiony na \"{status}\"",
|
||||
"modal.manaul_status.title_away": "Twój status został ustawiony na \"{status}\"",
|
||||
"modal.manaul_status.title_dnd": "Your status is set to \"Do Not Disturb\"",
|
||||
"modal.manaul_status.title_offline": "Twój status został ustawiony na \"{status}\"",
|
||||
"modal.manual_status.cancel_": "Nie, pozostaw \"{status}\"",
|
||||
"modal.manual_status.cancel_away": "No, keep it as \"Away\"",
|
||||
"modal.manual_status.cancel_dnd": "No, keep it as \"Do Not Disturb\"",
|
||||
"modal.manual_status.cancel_offline": "No, keep it as \"Offline\"",
|
||||
"more_channels.close": "Zamknij",
|
||||
"more_channels.create": "Utwórz nowy kanał",
|
||||
"more_channels.createClick": "Kliknij przycisk 'Utwórz nowy kanał', aby dodać nowy",
|
||||
@@ -2127,6 +2165,12 @@
|
||||
"permalink.error.title": "Nie odnaleziono wiadomości",
|
||||
"post_attachment.collapse": "Pokaż mniej...",
|
||||
"post_attachment.more": "Wyświetl więcej...",
|
||||
"post_body.check_for_out_of_channel_mentions.link.and": " and ",
|
||||
"post_body.check_for_out_of_channel_mentions.link.private": "add them to this private channel",
|
||||
"post_body.check_for_out_of_channel_mentions.link.public": "add them to the channel",
|
||||
"post_body.check_for_out_of_channel_mentions.message.multiple": "were mentioned but they are not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message.one": "was mentioned but is not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message_last": "? They will have access to all message history.",
|
||||
"post_body.commentedOn": "Skomentował wiadomość {name}: ",
|
||||
"post_body.deleted": "(wiadomość usunięta)",
|
||||
"post_body.plusMore": " oraz {count, number} inny/ch {count, plural, one {file} other {files}}",
|
||||
@@ -2227,8 +2271,6 @@
|
||||
"search_results.searching": "Searching...",
|
||||
"search_results.usage.dataRetention": "Only messages posted in the last {days} days are returned. Contact your System Administrator for more detail.",
|
||||
"search_results.usage.fromInSuggestion": "Use {fromUser} to find posts from specific users and {inChannel} to find posts in specific channels",
|
||||
"search_results.usage.fromInSuggestion.fromUser": "from:",
|
||||
"search_results.usage.fromInSuggestion.inChannel": "in:",
|
||||
"search_results.usage.phrasesSuggestion": "Use {quotationMarks} to search for phrases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"quotation marks\"",
|
||||
"search_results.usageFlag1": "Nie masz oznaczonych postów.",
|
||||
@@ -2380,6 +2422,7 @@
|
||||
"sso_signup.teamName": "Wprowadź nazwę nowego zespołu",
|
||||
"sso_signup.team_error": "Proszę wprowadzić nazwę zespołu.",
|
||||
"status_dropdown.set_away": "Zaraz wracam",
|
||||
"status_dropdown.set_dnd": "Do Not Disturb",
|
||||
"status_dropdown.set_offline": "Offline",
|
||||
"status_dropdown.set_online": "Online",
|
||||
"suggestion.loading": "Ładowanie...",
|
||||
@@ -2496,6 +2539,7 @@
|
||||
"user.settings.custom_theme.centerChannelTitle": "Style środkowego kanału",
|
||||
"user.settings.custom_theme.codeTheme": "Kod motywu",
|
||||
"user.settings.custom_theme.copyPaste": "Skopiuj i wklej aby podzielić się schematem kolorów:",
|
||||
"user.settings.custom_theme.dndIndicator": "Do Not Disturb Indicator",
|
||||
"user.settings.custom_theme.linkButtonTitle": "Style przycisków i linków",
|
||||
"user.settings.custom_theme.linkColor": "Kolor odnośnika",
|
||||
"user.settings.custom_theme.mentionBj": "Tło mention jewel",
|
||||
@@ -2623,6 +2667,7 @@
|
||||
"user.settings.modal.general": "Ogólne",
|
||||
"user.settings.modal.notifications": "Powiadomienia",
|
||||
"user.settings.modal.security": "Bezpieczeństwo",
|
||||
"user.settings.modal.sidebar": "Sidebar",
|
||||
"user.settings.modal.title": "Ustawienia konta",
|
||||
"user.settings.notifications.allActivity": "Dla wszystkich aktywności",
|
||||
"user.settings.notifications.channelWide": "Wspomina na kanale \"@channel\", \"@all\", \"@here\"",
|
||||
@@ -2757,6 +2802,11 @@
|
||||
"user.settings.security.switchSaml": "Przełącz na SAML",
|
||||
"user.settings.security.title": "Ustawienia bezpieczeństwa",
|
||||
"user.settings.security.viewHistory": "Zobacz historię dostępu",
|
||||
"user.settings.sidebar.after_seven_days": "After 7 days with no new messages",
|
||||
"user.settings.sidebar.autoCloseDMDesc": "Direct Message conversations can be reopened with the “+” button in the sidebar or using the Channel Switcher (CTRL+K).",
|
||||
"user.settings.sidebar.autoCloseDMTitle": "Automatically Close Direct Messages",
|
||||
"user.settings.sidebar.never": "Nigdy",
|
||||
"user.settings.sidebar.title": "Sidebar Settings",
|
||||
"user.settings.tokens.cancel": "Anuluj",
|
||||
"user.settings.tokens.clickToEdit": "Click 'Edit' to manage your personal access tokens",
|
||||
"user.settings.tokens.confirmCreateButton": "Yes, Create",
|
||||
@@ -2780,6 +2830,7 @@
|
||||
"user.settings.tokens.tokenId": "Token ID: ",
|
||||
"user.settings.tokens.userAccessTokensNone": "Brak osobistych tokenów dostępu.",
|
||||
"user_list.notFound": "Nie odnaleziono użytkowników",
|
||||
"user_profile.account.editSettings": "Ustawienia konta",
|
||||
"user_profile.send.dm": "Wyślij wiadomość",
|
||||
"user_profile.webrtc.call": "Rozpocznij rozmowę wideo",
|
||||
"user_profile.webrtc.offline": "Użytkownik jest w trybie offline",
|
||||
|
||||
@@ -269,10 +269,13 @@
|
||||
"admin.database.title": "Configurações do Banco de dados",
|
||||
"admin.developer.title": "Configurações de Desenvolvedor",
|
||||
"admin.elasticsearch.bulkIndexButton.error": "Falha ao agendar Bulk Index Job: {error}",
|
||||
"admin.elasticsearch.bulkIndexingTitle": "Bulk Indexing:",
|
||||
"admin.elasticsearch.connectionUrlDescription": "O endereço do servidor de Elasticsearch. {documentationLink}",
|
||||
"admin.elasticsearch.connectionUrlExample": "Ex.: \"https://elasticsearch.example.org:9200\"",
|
||||
"admin.elasticsearch.connectionUrlExample.documentationLinkText": "Por favor verifique a documentação para as instruções para configurar o servidor.",
|
||||
"admin.elasticsearch.connectionUrlTitle": "Endereço de Conexão do servidor:",
|
||||
"admin.elasticsearch.createJob.help": "All posts in the database will be indexed from oldest to newest. Elasticsearch is available during indexing but search results may be incomplete until the indexing job is complete.",
|
||||
"admin.elasticsearch.createJob.title": "Index Now",
|
||||
"admin.elasticsearch.elasticsearch_test_button": "Testar a Conexão",
|
||||
"admin.elasticsearch.enableIndexingDescription": "Quando verdadeiro, a indexação dos posts irá acontecer automaticamente. Consultas de procura irá utilizar o banco de procura enquanto \"Habilitar Elasticsearch para consultas de procura\" esteja habilitado. {documentationLink}",
|
||||
"admin.elasticsearch.enableIndexingDescription.documentationLinkText": "Leia mais sobre Elasticsearch na nossa documentação.",
|
||||
@@ -300,22 +303,6 @@
|
||||
"admin.elasticsearch.usernameDescription": "(Opcional) O nome do usuário para autenticar no servidor de Elasticsearch.",
|
||||
"admin.elasticsearch.usernameExample": "Ex.: \"elastic\"",
|
||||
"admin.elasticsearch.usernameTitle": "Nome do Usuário do Servidor:",
|
||||
"admin.elasticsearchStatus.bulkIndexLabel": "Indexação em massa:",
|
||||
"admin.elasticsearchStatus.cancelButton": "Cancelar",
|
||||
"admin.elasticsearchStatus.status": "Status: ",
|
||||
"admin.elasticsearchStatus.statusCancelled": "Job de indexação cancelado.",
|
||||
"admin.elasticsearchStatus.statusError": "Erro na indexação.",
|
||||
"admin.elasticsearchStatus.statusError.help": "Mattermost encontrou um erro ao construir o índice Elasticsearch: {error}",
|
||||
"admin.elasticsearchStatus.statusInProgress": "Job em progresso. {percent}% completo.",
|
||||
"admin.elasticsearchStatus.statusInProgress.help": "Indexação está em progresso no servidor de job. Se o Elasticsearch estiver ativado, os resultados das pesquisas podem estar incompletos até o termino do job.",
|
||||
"admin.elasticsearchStatus.statusIndexingDisabled": "Indexação desativada.",
|
||||
"admin.elasticsearchStatus.statusLoading": "Carregando...",
|
||||
"admin.elasticsearchStatus.statusNoJobs": "Nenhum job de indexação na fila.",
|
||||
"admin.elasticsearchStatus.statusPending": "Job pendente.",
|
||||
"admin.elasticsearchStatus.statusPending.help": "Indexação está na fila de job do servidor. Se o Elasticsearch estiver ativado, os resultados das pesquisas podem estar incompletos até o termino do job.",
|
||||
"admin.elasticsearchStatus.statusRequestCancel": "Cancelando o Job...",
|
||||
"admin.elasticsearchStatus.statusSuccess": "indexação completa.",
|
||||
"admin.elasticsearchStatus.statusSuccess.help": "A indexação está completa e as novas postagens estão sendo indexadas automaticamente.",
|
||||
"admin.email.agreeHPNS": " Eu entendo e aceito o serviço de notificação por push do Mattermost Hosted <a href=\"https://about.mattermost.com/hpns-terms/\" target=\"_blank\">Termos do Serviço</a> e <a href=\"https://about.mattermost.com/hpns-privacy/\" target=\"_blank\">Política de Privacidade</a>.",
|
||||
"admin.email.allowEmailSignInDescription": "Quando verdadeiro, Mattermost permite aos usuários fazer login usando o e-mail e senha.",
|
||||
"admin.email.allowEmailSignInTitle": "Habilitar login por email:",
|
||||
@@ -468,9 +455,9 @@
|
||||
"admin.gitlab.enableDescription": "Quando verdadeiro, Mattermost permite a criação de equipes e inscrições de conta usando GitLab OAuth.",
|
||||
"admin.gitlab.enableTitle": "Habilitar autenticação com o GitLab: ",
|
||||
"admin.gitlab.settingsTitle": "Configurações GitLab",
|
||||
"admin.gitlab.siteUrl": "GitLab Site URL: ",
|
||||
"admin.gitlab.siteUrlDescription": "Enter the URL of your GitLab instance, e.g. https://example.com:3000. If your GitLab instance is not set up with SSL, start the URL with http:// instead of https://.",
|
||||
"admin.gitlab.siteUrlExample": "E.g.: https://",
|
||||
"admin.gitlab.siteUrl": "URL do GitLab: ",
|
||||
"admin.gitlab.siteUrlDescription": "Entre com a URL da instância do seu GitLab, por exemplo https://example.com:3000. Se a instância do GitLab não estiver o SSL configurado, o início da URL começa com http:// em vez de https://.",
|
||||
"admin.gitlab.siteUrlExample": "Ex.: https://",
|
||||
"admin.gitlab.tokenTitle": "Token Endpoint:",
|
||||
"admin.gitlab.userTitle": "API Usuário Endpoint:",
|
||||
"admin.google.EnableHtmlDesc": "<ol><li><a target='_blank' href='https://accounts.google.com/login'>Log in</a> to sua conta Google.</li><li>Ir para <a target='_blank' href='https://console.developers.google.com'>https://console.developers.google.com</a>, clique <strong>Credenciais</strong> na barra lateral esquerda e digite \"Mattermost - nome-da-sua-empresa\" como o <strong>Nome do Projeto</strong>, então clique <strong>Criar</strong>.</li><li>Clique no título <strong>tela de consentimento OAuth</strong> e digite \"Mattermost\" como o <strong>nome do Produto exibido para os usuários</strong>, então clique <strong>Salvar</strong>.</li><li>Dentro do título <strong>Credenciais</strong>, clique <strong>Criar credenciais</strong>, escolha <strong>ID do cliente OAuth</strong> e selecione <strong>Aplicação da Web</strong>.</li><li>Dentro de <strong>Restrições</strong> e <strong>URIs de redirecionamento autorizados</strong> digite <strong>sua-url-mattermost/signup/google/complete</strong> (exemplo: http://localhost:8065/signup/google/complete). Clique <strong>Criar</strong>.</li><li>Cole <strong>ID do Cliente</strong> e <strong>Chave Secreta do Cliente</strong> nos campos abaixo, então clique <strong>Salvar</strong>.</li><li>Finalmente, vá para <a target='_blank' href='https://console.developers.google.com/apis/api/plus/overview'>Google+ API</a> e clique <strong>Ativar</strong>. Isto pode levar alguns minutos para propagar através do si sistema do Google.</li></ol>",
|
||||
@@ -548,6 +535,8 @@
|
||||
"admin.ldap.emailAttrEx": "Ex.: \"mail\" ou \"userPrincipalName\"",
|
||||
"admin.ldap.emailAttrTitle": "Atributo de E-mail:",
|
||||
"admin.ldap.enableDesc": "Quando verdadeiro, Mattermost permite login utilizando AD/LDAP",
|
||||
"admin.ldap.enableSyncDesc": "Quando verdadeiro, Mattermost periodicamente sincroniza os usuários a partir do AD/LDAP.",
|
||||
"admin.ldap.enableSyncTitle": "Ativar Sincronização com AD/LDAP:",
|
||||
"admin.ldap.enableTitle": "Ativar login with AD/LDAP:",
|
||||
"admin.ldap.firstnameAttrDesc": "(Opcional) O atributo no servidor AD/LDAP que será usado para preencher o primeiro nome dos usuários no Mattermost. Quando definido, os usuários não serão capazes de editar o seu primeiro nome, uma vez que é sincronizado com o servidor LDAP. Quando deixado em branco, os usuários poderão definir seu próprio primeiro nome em Configurações de Conta.",
|
||||
"admin.ldap.firstnameAttrEx": "Ex.: \"givenName\"",
|
||||
@@ -640,6 +629,7 @@
|
||||
"admin.logs.title": "Log do Servidor",
|
||||
"admin.manage_roles.additionalRoles": "Selecione permissões adicionais para a conta.<a href=\"https://about.mattermost.com/default-permissions\" target=\"_blank\">Leia mais sobre funções e permissões</a>",
|
||||
"admin.manage_roles.allowUserAccessTokens": "Permitir que esta conta gere <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">tokens de acesso individual</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokensDesc": "Removendo esta permissão não excluí os tokens existentes. Para excluí-lo, vá para o menu de gerenciamento de tokens de usuário",
|
||||
"admin.manage_roles.cancel": "Cancelar",
|
||||
"admin.manage_roles.manageRolesTitle": "Gerenciar Funções",
|
||||
"admin.manage_roles.postAllPublicRole": "Permissão para postar em todos os canais públicos do Mattermost.",
|
||||
@@ -651,7 +641,7 @@
|
||||
"admin.manage_roles.systemAdmin": "Admin do Sistema",
|
||||
"admin.manage_roles.systemMember": "Membro",
|
||||
"admin.manage_tokens.manageTokensTitle": "Gerenciar Tokens de Acesso Individual",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Os tokens de acesso individual funcionam de forma semelhante aos tokens de sessão e podem ser usados por integrações para <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">interagir com este servidor Mattermost</a>. Saiba mais sobre <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">tokens de acesso individual</a>.",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Os tokens de acesso individual funcionam de forma semelhante aos tokens de sessão e podem ser usados por integrações para <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">interagir com este servidor Mattermost</a>. Tokens são desativados se o usuário está desativado. Saiba mais sobre <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">tokens de acesso individual</a>.",
|
||||
"admin.manage_tokens.userAccessTokensNone": "Não há tokens de acesso individual.",
|
||||
"admin.metrics.enableDescription": "Quando verdadeiro, Mattermost irá habilitar a coleta do monitoramento de performance e profiling. Por favor verifique <a href=\"http://docs.mattermost.com/deployment/metrics.html\" target='_blank'>documentação</a> para ler mais sobre como configurar o monitoramento de performance para Mattermost.",
|
||||
"admin.metrics.enableTitle": "Habilitar Monitoramento de Performance:",
|
||||
@@ -698,16 +688,17 @@
|
||||
"admin.password.requirementsDescription": "Tipos de caracteres necessários em uma senha válida.",
|
||||
"admin.password.symbol": "Pelo menos um símbolo (ex. \"~!@#$%^&*()\")",
|
||||
"admin.password.uppercase": "Pelo menos uma letra maiuscula",
|
||||
"admin.plugin.activeTitle": "Plugins Ativos: ",
|
||||
"admin.plugin.banner": "Plugins são experimentais e não são recomendados para uso em produção.",
|
||||
"admin.plugin.desc": "Descrição:",
|
||||
"admin.plugin.error.activate": "Não foi possível fazer o upload do plugin. Pode ter algum conflito com algum outro plugin no seu servidor.",
|
||||
"admin.plugin.error.extract": "Erro encontrado enquando extraia o plugin. Revise o conteúdo do seu arquivo do plugin e tente novamente.",
|
||||
"admin.plugin.id": "ID:",
|
||||
"admin.plugin.installedDesc": "Installed plugins on your Mattermost server. Pre-packaged plugins are installed by default, and can be deactivated but not removed.",
|
||||
"admin.plugin.installedTitle": "Installed Plugins: ",
|
||||
"admin.plugin.management.title": "Management",
|
||||
"admin.plugin.no_plugins": "Sem plugins ativos.",
|
||||
"admin.plugin.remove": "Remover",
|
||||
"admin.plugin.removing": "Removendo...",
|
||||
"admin.plugin.title": "Plugins (Experimental)",
|
||||
"admin.plugin.upload": "Enviar",
|
||||
"admin.plugin.uploadDesc": "Faça o upload do seu plugin para o servidor Mattermost. Adicionando ou removendo um plugin webapp, usuários devem recarregar a pagina no browser ou na aplicação de Desktop para ter efeito. Leia a <a href=\"https://about.mattermost.com/default-plugins\">documentação</a> para aprender mais.",
|
||||
"admin.plugin.uploadTitle": "Enviar Plugin: ",
|
||||
@@ -725,6 +716,11 @@
|
||||
"admin.plugins.jira.userDescription": "Selecione o nome de usuário para o qual essa integração está anexada.",
|
||||
"admin.plugins.jira.userLabel": "Usuário:",
|
||||
"admin.plugins.jira.webhookDocsLink": "documentação",
|
||||
"admin.plugins.settings.enable": "Enable Plugins: ",
|
||||
"admin.plugins.settings.enableDesc": "When true, enables plugins on your Mattermost server. Use plugins to integrate with third-party systems, extend functionality or customize the user interface of your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugins\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.enableUploads": "Enable Plugin Uploads: ",
|
||||
"admin.plugins.settings.enableUploadsDesc": "When true, enables plugin uploads by System Admins at <strong>Plugins > Management</strong>. If you do not plan to upload a plugin, set to false to control which plugins are installed on your server. See <a href=\"https://about.mattermost.com/default-plugins-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.title": "Configuration",
|
||||
"admin.privacy.showEmailDescription": "Quando falso, o endereço de email dos membros será ocultado para todos exceto para os Administradores do Sistema.",
|
||||
"admin.privacy.showEmailTitle": "Mostrar Endereços de Email: ",
|
||||
"admin.privacy.showFullNameDescription": "Quando falso, o nome completo dos membros será ocultado para todos exceto para os Administradores do Sistema. O nome de usuário será exibido em vez de o nome completo.",
|
||||
@@ -768,9 +764,9 @@
|
||||
"admin.requestButton.loading": " Carregando...",
|
||||
"admin.requestButton.requestFailure": "Falha de Teste: {error}",
|
||||
"admin.requestButton.requestSuccess": "Teste bem Sucedido",
|
||||
"admin.reset_password.close": "Fechar",
|
||||
"admin.reset_password.cancel": "Cancelar",
|
||||
"admin.reset_password.newPassword": "Nova Senha",
|
||||
"admin.reset_password.select": "Selecionar",
|
||||
"admin.reset_password.reset": "Restaurar",
|
||||
"admin.reset_password.submit": "Por favor, insira pelo menos {chars} caracteres.",
|
||||
"admin.reset_password.titleReset": "Resetar Senha",
|
||||
"admin.reset_password.titleSwitch": "Trocar a conta para e-mail/senha",
|
||||
@@ -783,6 +779,8 @@
|
||||
"admin.saml.emailAttrEx": "Ex.: \"Email\" ou \"PrimaryEmail\"",
|
||||
"admin.saml.emailAttrTitle": "Atributo de E-mail:",
|
||||
"admin.saml.enableDescription": "Quando verdadeiro, Mattermost irá permitir login usando SAML 2.0. Por favor veja a <a href='http://docs.mattermost.com/deployment/sso-saml.html' target='_blank'>documentação</a> para aprender mais sobre configurar SAML para o Mattermost.",
|
||||
"admin.saml.enableSyncWithLdapDescription": "When true, Mattermost periodically synchronizes SAML user attributes, including user deactivation and removal, from AD/LDAP. Enable and configure synchronization settings at <strong>Authentication > AD/LDAP</strong>. See <a href='https://about.mattermost.com/default-saml-ldap-sync' target='_blank'>documentation</a> to learn more.",
|
||||
"admin.saml.enableSyncWithLdapTitle": "Enable Synchronizing SAML Accounts With AD/LDAP:",
|
||||
"admin.saml.enableTitle": "Ativar Login With SAML 2.0:",
|
||||
"admin.saml.encryptDescription": "Quando falso, Mattermost não irá descriptografar o SAML Assertions encriptado com o seu Provedor de Serviço de Certificado Público. Não recomendado para ambientes de produção. Apenas para teste.",
|
||||
"admin.saml.encryptTitle": "Ativar Criptografia:",
|
||||
@@ -958,6 +956,7 @@
|
||||
"admin.sidebar.other": "OUTROS",
|
||||
"admin.sidebar.password": "Senha",
|
||||
"admin.sidebar.plugins": "Plugins (Experimental)",
|
||||
"admin.sidebar.plugins.configuration": "Configuration",
|
||||
"admin.sidebar.policy": "Política",
|
||||
"admin.sidebar.privacy": "Privacidade",
|
||||
"admin.sidebar.publicLinks": "Links Públicos",
|
||||
@@ -1436,6 +1435,9 @@
|
||||
"delete_post.post": "Post",
|
||||
"delete_post.question": "Tem certeza de que deseja excluir este {term}?",
|
||||
"delete_post.warning": "Este post tem {count, number} {count, plural, one {comentário} other {comentários}} nele.",
|
||||
"discard_changes_modal.leave": "Sim, Descartar",
|
||||
"discard_changes_modal.message": "Você tem alterações não salvas, você tem certeza que quer descartar elas?",
|
||||
"discard_changes_modal.title": "Descartar alterações?",
|
||||
"edit_channel_header.editHeader": "Editar o Cabeçalho do Canal...",
|
||||
"edit_channel_header.previewHeader": "Editar cabeçalho",
|
||||
"edit_channel_header_modal.cancel": "Cancelar",
|
||||
@@ -1865,6 +1867,8 @@
|
||||
"mobile.about.appVersion": "Versão do App: {version} (Build {number})",
|
||||
"mobile.about.copyright": "Copyright 2015-{currentYear} Mattermost, Inc. Todos os direitos reservados",
|
||||
"mobile.about.database": "Banco de Dados: {type}",
|
||||
"mobile.about.licensed": "Licenciado para: {company}",
|
||||
"mobile.about.powered_by": "{site} é desenvoldido por Mattermost",
|
||||
"mobile.about.serverVersion": "Versão do Servidor: {version} (Build {number})",
|
||||
"mobile.about.serverVersionNoBuild": "Versão do Servidor: {version}",
|
||||
"mobile.account.notifications.email.footer": "Quando desconectado ou ausente por mais de cinco minutos",
|
||||
@@ -1878,6 +1882,14 @@
|
||||
"mobile.advanced_settings.reset_message": "\nIsto irá apagar todos os dados offline e reiniciar o aplicativo. Você será automaticamente conectado novamente quando o aplicativo for reiniciado.\n",
|
||||
"mobile.advanced_settings.reset_title": "Limpar Cache",
|
||||
"mobile.advanced_settings.title": "Configurações Avançadas",
|
||||
"mobile.android.camera_permission_denied_description": "Para fazer fotos e vides com sua camera, por favor altere as permissões.",
|
||||
"mobile.android.camera_permission_denied_title": "Acesso a camera é necessário",
|
||||
"mobile.android.permission_denied_dismiss": "Ignorar",
|
||||
"mobile.android.permission_denied_retry": "Ajustar permissões",
|
||||
"mobile.android.photos_permission_denied_description": "Para enviar imagens de sua galeria, por favor altere as permissões.",
|
||||
"mobile.android.photos_permission_denied_title": "Acesso a galeria de fotos é necessário",
|
||||
"mobile.android.videos_permission_denied_description": "Para enviar vides de sua galeria, por favor altere as permissões.",
|
||||
"mobile.android.videos_permission_denied_title": "Acesso a galeria de videis é necessário",
|
||||
"mobile.channel_drawer.search": "Pular para...",
|
||||
"mobile.channel_info.alertMessageDeleteChannel": "Você tem certeza que quer excluir o {term} {name}?",
|
||||
"mobile.channel_info.alertMessageLeaveChannel": "Você tem certeza que quer deixar o {term} {name}?",
|
||||
@@ -1903,6 +1915,19 @@
|
||||
"mobile.channel_list.privateChannel": "Canal Privado",
|
||||
"mobile.channel_list.publicChannel": "Canal Público",
|
||||
"mobile.channel_list.unreads": "NÃO LIDOS",
|
||||
"mobile.client_upgrade": "Atualizar App",
|
||||
"mobile.client_upgrade.can_upgrade_subtitle": "Uma nova versão está disponível para download.",
|
||||
"mobile.client_upgrade.can_upgrade_title": "Atualização disponível",
|
||||
"mobile.client_upgrade.close": "Atualizar Depois",
|
||||
"mobile.client_upgrade.current_version": "Última Versão: {version}",
|
||||
"mobile.client_upgrade.download_error.message": "Um erro ocorreu durante o download da nova versão.",
|
||||
"mobile.client_upgrade.download_error.title": "Não é possível instalar a atualização",
|
||||
"mobile.client_upgrade.latest_version": "Sua Versão: {version}",
|
||||
"mobile.client_upgrade.must_upgrade_subtitle": "Por favor atualize o app para continuar.",
|
||||
"mobile.client_upgrade.must_upgrade_title": "Atualização Requerida",
|
||||
"mobile.client_upgrade.no_upgrade_subtitle": "Você já possui a última versão.",
|
||||
"mobile.client_upgrade.no_upgrade_title": "Seu App Está Atualizado",
|
||||
"mobile.client_upgrade.upgrade": "Atualizar",
|
||||
"mobile.components.channels_list_view.yourChannels": "Seus canais:",
|
||||
"mobile.components.error_list.dismiss_all": "Descartar todos",
|
||||
"mobile.components.select_server_view.continue": "Continuar",
|
||||
@@ -1932,6 +1957,8 @@
|
||||
"mobile.file_upload.more": "Mais",
|
||||
"mobile.file_upload.video": "Galeria de Videos",
|
||||
"mobile.help.title": "Ajuda",
|
||||
"mobile.image_preview.deleted_post_message": "Esta mensagem e seus arquivos foram excluídos. O visualizador será fechado.",
|
||||
"mobile.image_preview.deleted_post_title": "Mensagem Deletada",
|
||||
"mobile.image_preview.save": "Salvar imagem",
|
||||
"mobile.intro_messages.DM": "Este é o início do seu histórico de mensagens diretas com {teammate}. Mensagens diretas e arquivos compartilhados aqui não são mostrados para pessoas de fora desta área.",
|
||||
"mobile.intro_messages.default_message": "Este é o primeiro canal da equipe veja quando eles se registrarem - use para postar atualizações que todos devem saber.",
|
||||
@@ -1945,7 +1972,10 @@
|
||||
"mobile.managed.exit": "Editar",
|
||||
"mobile.managed.jailbreak": "Os dispositivos com Jailbroken não são confiáveis para {vendor}, por favor saia do aplicativo.",
|
||||
"mobile.managed.secured_by": "Garantido por {vendor} ",
|
||||
"mobile.markdown.code.copy_code": "Copiar Código",
|
||||
"mobile.markdown.code.plusMoreLines": "mais +{count, number} linhas",
|
||||
"mobile.markdown.link.copy_url": "Copiar URL",
|
||||
"mobile.mention.copy_mention": "Copiar Menção",
|
||||
"mobile.more_dms.start": "Início",
|
||||
"mobile.more_dms.title": "Nova Conversa",
|
||||
"mobile.notice_mobile_link": "aplicativos móveis",
|
||||
@@ -1994,6 +2024,7 @@
|
||||
"mobile.post.failed_title": "Não foi possível enviar sua mensagem",
|
||||
"mobile.post.retry": "Atualizar",
|
||||
"mobile.post_info.add_reaction": "Adicionar Reação",
|
||||
"mobile.post_info.copy_post": "Copiar Post",
|
||||
"mobile.request.invalid_response": "Recebido uma resposta inválida do servidor.",
|
||||
"mobile.retry_message": "Atualização de mensagens falharam. Puxe para tentar novamente.",
|
||||
"mobile.routes.channelInfo": "Informações",
|
||||
@@ -2037,13 +2068,20 @@
|
||||
"mobile.settings.clear": "Apagar Armazenamento Offline",
|
||||
"mobile.settings.clear_button": "Limpar",
|
||||
"mobile.settings.clear_message": "\nIsto irá apagar todos os dados offline e reiniciar o aplicativo. Você será automaticamente conectado novamente quando o aplicativo for reiniciado.\n",
|
||||
"mobile.settings.modal.check_for_upgrade": "Procurar por Atualizações",
|
||||
"mobile.settings.team_selection": "Seleção da Equipe",
|
||||
"mobile.suggestion.members": "Membros",
|
||||
"modal.manaul_status.ask": "Não me pergunte novamente",
|
||||
"modal.manaul_status.button": "Sim, defina meu status para \"Online\"",
|
||||
"modal.manaul_status.cancel": "Não, mantenha como \"{status}\"",
|
||||
"modal.manaul_status.message": "Você deseja alterar o seu status para \"Online\"?",
|
||||
"modal.manaul_status.title": "Seu status está configurado para \"{status}\"",
|
||||
"modal.manaul_status.title_": "Seu status está configurado para \"{status}\"",
|
||||
"modal.manaul_status.title_away": "Seu status está configurado para \"Ausente\"",
|
||||
"modal.manaul_status.title_dnd": "Seu status está configurado para \"Não Perturbe\"",
|
||||
"modal.manaul_status.title_offline": "Seu status está configurado para \"Offline\"",
|
||||
"modal.manual_status.cancel_": "Não, mantenha como \"{status}\"",
|
||||
"modal.manual_status.cancel_away": "Não, mantenha como \"Ausente\"",
|
||||
"modal.manual_status.cancel_dnd": "Não, mantenha como \"Não Perturbe\"",
|
||||
"modal.manual_status.cancel_offline": "Não, mantenha como \"Offline\"",
|
||||
"more_channels.close": "Fechar",
|
||||
"more_channels.create": "Criar Novo Canal",
|
||||
"more_channels.createClick": "Clique em 'Criar Novo Canal' para fazer um novo",
|
||||
@@ -2127,6 +2165,12 @@
|
||||
"permalink.error.title": "Mensagem Não Localizada",
|
||||
"post_attachment.collapse": "Mostrar menos...",
|
||||
"post_attachment.more": "Mostrar mais...",
|
||||
"post_body.check_for_out_of_channel_mentions.link.and": " e ",
|
||||
"post_body.check_for_out_of_channel_mentions.link.private": "adicionar a este canal privado",
|
||||
"post_body.check_for_out_of_channel_mentions.link.public": "adicionar ao canal",
|
||||
"post_body.check_for_out_of_channel_mentions.message.multiple": "foram mencionados mas eles não estão no canal. Você gostaria de ",
|
||||
"post_body.check_for_out_of_channel_mentions.message.one": "foi mencionado mas não está no canal. Você gostaria de ",
|
||||
"post_body.check_for_out_of_channel_mentions.message_last": "? They will have access to all message history.",
|
||||
"post_body.commentedOn": "Comentário da mensagem de {name}: ",
|
||||
"post_body.deleted": "(mensagem deletada)",
|
||||
"post_body.plusMore": " mais {count, number} {count, plural, one {outro arquivo} other {outros arquivos}}",
|
||||
@@ -2222,15 +2266,13 @@
|
||||
"search_item.direct": "Mensagem Direta (com {username})",
|
||||
"search_item.jump": "Pular",
|
||||
"search_results.noResults": "Nenhum resultado encontrado. Tentar novamente?",
|
||||
"search_results.noResults.partialPhraseSuggestion": "If you're searching a partial phrase (ex. searching \"rea\", looking for \"reach\" or \"reaction\"), append a * to your search term.",
|
||||
"search_results.noResults.stopWordsSuggestion": "Two letter searches and common words like \"this\", \"a\" and \"is\" won't appear in search results due to excessive results returned.",
|
||||
"search_results.noResults.partialPhraseSuggestion": "Se você estiver procurando por uma palavra parcial (ex. procurando \"atu\", procurando \"atualizar\" ou \"atual\"), adicione * no termo de busca.",
|
||||
"search_results.noResults.stopWordsSuggestion": "Busca com duas letras e palavras comuns como \"este\", \"a\" e \"é\" não irão aparecer nos resultados de busca devido a resultados excessivos retornados.",
|
||||
"search_results.searching": "Pesquisando...",
|
||||
"search_results.usage.dataRetention": "Only messages posted in the last {days} days are returned. Contact your System Administrator for more detail.",
|
||||
"search_results.usage.fromInSuggestion": "Use {fromUser} to find posts from specific users and {inChannel} to find posts in specific channels",
|
||||
"search_results.usage.fromInSuggestion.fromUser": "from:",
|
||||
"search_results.usage.fromInSuggestion.inChannel": "in:",
|
||||
"search_results.usage.phrasesSuggestion": "Use {quotationMarks} to search for phrases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"quotation marks\"",
|
||||
"search_results.usage.dataRetention": "Somente mensagens postadas nos últimos {days} dias são retornadas. Entre em contato com o Administrador do Sistema para mais detalhes.",
|
||||
"search_results.usage.fromInSuggestion": "Utilize {fromUser} para encontrar postagens de um usuário específico e {inChannel} para encontrar postagens em canais específicos",
|
||||
"search_results.usage.phrasesSuggestion": "Utilize {quotationMarks} para procurar por frases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"aspas\"",
|
||||
"search_results.usageFlag1": "Você não marcou nenhuma mensagem ainda.",
|
||||
"search_results.usageFlag2": "Você pode marcar uma mensagem e comentários clicando no ",
|
||||
"search_results.usageFlag3": " ícone próximo a data.",
|
||||
@@ -2380,6 +2422,7 @@
|
||||
"sso_signup.teamName": "Entre o nome da nova equipe",
|
||||
"sso_signup.team_error": "Por favor entre o nome da equipe",
|
||||
"status_dropdown.set_away": "Ausente",
|
||||
"status_dropdown.set_dnd": "Do Not Disturb",
|
||||
"status_dropdown.set_offline": "Desconectado",
|
||||
"status_dropdown.set_online": "Conectado",
|
||||
"suggestion.loading": "Carregando...",
|
||||
@@ -2496,6 +2539,7 @@
|
||||
"user.settings.custom_theme.centerChannelTitle": "Estilos do Canal Central",
|
||||
"user.settings.custom_theme.codeTheme": "Código do Tema",
|
||||
"user.settings.custom_theme.copyPaste": "Copie e cole para compartilhar o tema de cores:",
|
||||
"user.settings.custom_theme.dndIndicator": "Do Not Disturb Indicator",
|
||||
"user.settings.custom_theme.linkButtonTitle": "Estilos de Links e Botões",
|
||||
"user.settings.custom_theme.linkColor": "Cor do link",
|
||||
"user.settings.custom_theme.mentionBj": "Fundo Menção Jewel",
|
||||
@@ -2623,6 +2667,7 @@
|
||||
"user.settings.modal.general": "Geral",
|
||||
"user.settings.modal.notifications": "Notificações",
|
||||
"user.settings.modal.security": "Segurança",
|
||||
"user.settings.modal.sidebar": "Barra lateral",
|
||||
"user.settings.modal.title": "Definições de Conta",
|
||||
"user.settings.notifications.allActivity": "Para todas as atividades",
|
||||
"user.settings.notifications.channelWide": "Menções para todo canal \"@channel\", \"@all\", \"@here\"",
|
||||
@@ -2757,6 +2802,11 @@
|
||||
"user.settings.security.switchSaml": "Trocar para usar SAML SSO",
|
||||
"user.settings.security.title": "Configurações de Segurança",
|
||||
"user.settings.security.viewHistory": "Ver Histórico de Acesso",
|
||||
"user.settings.sidebar.after_seven_days": "Após 7 dias sem novas mensagens",
|
||||
"user.settings.sidebar.autoCloseDMDesc": "As conversas de Mensagens Diretas podem ser reabertas com o botão “+” na barra lateral ou usando o Alternador de Canais (CTRL+K).",
|
||||
"user.settings.sidebar.autoCloseDMTitle": "Fechar Mensagens Diretas Automáticamente",
|
||||
"user.settings.sidebar.never": "Nunca",
|
||||
"user.settings.sidebar.title": "Configurações Barra Lateral",
|
||||
"user.settings.tokens.cancel": "Cancelar",
|
||||
"user.settings.tokens.clickToEdit": "Clique 'Editar' para gerenciar seus tokens de acesso individual",
|
||||
"user.settings.tokens.confirmCreateButton": "Sim, Criar",
|
||||
@@ -2780,6 +2830,7 @@
|
||||
"user.settings.tokens.tokenId": "Token ID: ",
|
||||
"user.settings.tokens.userAccessTokensNone": "Não há tokens de acesso pessoais.",
|
||||
"user_list.notFound": "Nenhum usuário encontrado",
|
||||
"user_profile.account.editSettings": "Editar Definições de Conta",
|
||||
"user_profile.send.dm": "Enviar Mensagem",
|
||||
"user_profile.webrtc.call": "Iniciar Video Chamada",
|
||||
"user_profile.webrtc.offline": "O usuário está desconectado",
|
||||
|
||||
@@ -269,10 +269,13 @@
|
||||
"admin.database.title": "Настройки базы данных",
|
||||
"admin.developer.title": "Настройки разработчика",
|
||||
"admin.elasticsearch.bulkIndexButton.error": "Failed to schedule Bulk Index Job: {error}",
|
||||
"admin.elasticsearch.bulkIndexingTitle": "Bulk Indexing:",
|
||||
"admin.elasticsearch.connectionUrlDescription": "Адрес сервера Elasticsearch. {documentationLink}",
|
||||
"admin.elasticsearch.connectionUrlExample": "Пример: \"https://elasticsearch.example.org:9200\"",
|
||||
"admin.elasticsearch.connectionUrlExample.documentationLinkText": "Обратитесь к документации для получения настроек по настройке сервера.",
|
||||
"admin.elasticsearch.connectionUrlTitle": "Адрес подключения к серверу:",
|
||||
"admin.elasticsearch.createJob.help": "All posts in the database will be indexed from oldest to newest. Elasticsearch is available during indexing but search results may be incomplete until the indexing job is complete.",
|
||||
"admin.elasticsearch.createJob.title": "Index Now",
|
||||
"admin.elasticsearch.elasticsearch_test_button": "Проверить соединение",
|
||||
"admin.elasticsearch.enableIndexingDescription": "Если включено, все новые сообщения будут автоматически индексироваться. Поисковые запросы будут использовать базу данных, пока \"Включить Elasticsearch для поисковых запросов\" будет включено. {documentationLink}",
|
||||
"admin.elasticsearch.enableIndexingDescription.documentationLinkText": "Узнать больше об Elasticsearch в нашей документации.",
|
||||
@@ -300,22 +303,6 @@
|
||||
"admin.elasticsearch.usernameDescription": "(Опционально) Имя пользователя для аутентификации на сервере Elasticsearch.",
|
||||
"admin.elasticsearch.usernameExample": "Пример: \"elastic\"",
|
||||
"admin.elasticsearch.usernameTitle": "Имя пользователя:",
|
||||
"admin.elasticsearchStatus.bulkIndexLabel": "Bulk Indexing:",
|
||||
"admin.elasticsearchStatus.cancelButton": "Отмена",
|
||||
"admin.elasticsearchStatus.status": "Состояние: ",
|
||||
"admin.elasticsearchStatus.statusCancelled": "Индексирование отменено.",
|
||||
"admin.elasticsearchStatus.statusError": "Ошибка индексирования.",
|
||||
"admin.elasticsearchStatus.statusError.help": "Mattermost encountered an error building the Elasticsearch index: {error}",
|
||||
"admin.elasticsearchStatus.statusInProgress": "Выполнение индексирования: {percent}%.",
|
||||
"admin.elasticsearchStatus.statusInProgress.help": "Задача индексирования запланирована на сервере Elasticsearch. Если Elasticearch включен, результаты поиска могут быть неполными, пока работа не будет завершена.",
|
||||
"admin.elasticsearchStatus.statusIndexingDisabled": "Индексирование отключено.",
|
||||
"admin.elasticsearchStatus.statusLoading": "Загрузка...",
|
||||
"admin.elasticsearchStatus.statusNoJobs": "Не запланировано задач индексирования.",
|
||||
"admin.elasticsearchStatus.statusPending": "Ожидание работы.",
|
||||
"admin.elasticsearchStatus.statusPending.help": "Задача индексирования запланирована на сервере Elasticsearch. Если Elasticearch включен, результаты поиска могут быть неполными, пока работа не будет завершена.",
|
||||
"admin.elasticsearchStatus.statusRequestCancel": "Отмена Задания...",
|
||||
"admin.elasticsearchStatus.statusSuccess": "Индексирование завершено.",
|
||||
"admin.elasticsearchStatus.statusSuccess.help": "Индексирование завершено и все новые сообщения будут автоматически индексироваться.",
|
||||
"admin.email.agreeHPNS": " Я понимаю и принимаю <a href=\"https://about.mattermost.com/hpns-terms/\" target='_blank'>Условия использования</a> и <a href=\"https://about.mattermost.com/hpns-privacy/\" target='_blank'>Политику конфиденциальности</a> Mattermost Hosted Push Notification Service.",
|
||||
"admin.email.allowEmailSignInDescription": "Если выбрано, Mattermost разрешает пользователям входить используя их емайл и пароль.",
|
||||
"admin.email.allowEmailSignInTitle": "Разрешить вход с помощью электронной почты: ",
|
||||
@@ -523,7 +510,7 @@
|
||||
"admin.integrations.external": "Внешние службы",
|
||||
"admin.integrations.webrtc": "Mattermost WebRTC",
|
||||
"admin.jobTable.cancelButton": "Отмена",
|
||||
"admin.jobTable.headerExtraInfo": "Extra Information",
|
||||
"admin.jobTable.headerExtraInfo": "Details",
|
||||
"admin.jobTable.headerFinishAt": "Finish Time",
|
||||
"admin.jobTable.headerRunTime": "Run Time",
|
||||
"admin.jobTable.headerStatus": "Состояние",
|
||||
@@ -531,89 +518,91 @@
|
||||
"admin.jobTable.lastActivityAt": "Last Activity: ",
|
||||
"admin.jobTable.runLengthMinutes": " minutes",
|
||||
"admin.jobTable.runLengthSeconds": " seconds",
|
||||
"admin.jobTable.statusCanceled": "Отмена",
|
||||
"admin.jobTable.statusCanceling": "Отмена Задания...",
|
||||
"admin.jobTable.statusError": "Error",
|
||||
"admin.jobTable.statusInProgress": "In Progress",
|
||||
"admin.jobTable.statusPending": " Отправка",
|
||||
"admin.jobTable.statusSuccess": "Success",
|
||||
"admin.ldap.baseDesc": "База поиска (baseDN) — ветка DIT, с которой Mattermost должен начать поиск по пользователям в дереве AD/LDAP.",
|
||||
"admin.ldap.baseEx": "Например: \"ou=Unit Name,dc=corp,dc=example,dc=com\"",
|
||||
"admin.ldap.baseTitle": "BaseDN:",
|
||||
"admin.ldap.bindPwdDesc": "Пароль для пользователя в \"Пользователь для связывания\".",
|
||||
"admin.ldap.bindPwdTitle": "Пароль для связывания",
|
||||
"admin.ldap.bindUserDesc": "Имя пользователя, используемое для выполнения поиска в AD/LDAP. Обычно, это должна быть учетная запись, созданная специально для работы с Mattermost. Она должна иметь права, ограниченные чтением части дерева AD/LDAP, указанной в поле BaseDN.",
|
||||
"admin.ldap.bindUserTitle": "Пользователь для связывания:",
|
||||
"admin.ldap.emailAttrDesc": "Атрибут AD/LDAP, значение которого будет использоваться для заполнения адресов электронной почты пользователей Mattermost.",
|
||||
"admin.ldap.emailAttrEx": "Например: \"mail\" or \"userPrincipalName\"",
|
||||
"admin.ldap.emailAttrTitle": "Атрибут эл.почта:",
|
||||
"admin.ldap.enableDesc": "Когда активировано, то Mattermost позволяет входить используя AD/LDAP",
|
||||
"admin.ldap.enableTitle": "Включить вход с помощью AD/LDAP:",
|
||||
"admin.ldap.firstnameAttrDesc": "(Опционально) Этот атрибут для AD/LDAP сервера который будет использоваться для заполнения имени пользователя в Mattermost. Если он установлен, пользователи не смогут редактировать свои имена т.к. они будут синхронизироваться с LDAP сервером. Если атрибут не заполнен, пользователи смогут изменить их собственные имена в Настройках пользователя.",
|
||||
"admin.jobTable.statusCanceled": "Отменен",
|
||||
"admin.jobTable.statusCanceling": "Отмена...",
|
||||
"admin.jobTable.statusError": "Ошибка",
|
||||
"admin.jobTable.statusInProgress": "Выполняется...",
|
||||
"admin.jobTable.statusPending": "В ожидании",
|
||||
"admin.jobTable.statusSuccess": "Успешно",
|
||||
"admin.ldap.baseDesc": "База поиска (BaseDN) - это уникальное имя (DN) ветки, с которой Mattermost должен начать поиск пользователей в дереве AD/LDAP.",
|
||||
"admin.ldap.baseEx": "Например: \"ou=users,dc=corp,dc=example,dc=com\"",
|
||||
"admin.ldap.baseTitle": "База поиска (BaseDN):",
|
||||
"admin.ldap.bindPwdDesc": "Пароль пользователя, указанный в разделе \"Пользователь для подключения\"",
|
||||
"admin.ldap.bindPwdTitle": "Пароль пользователя для подключения",
|
||||
"admin.ldap.bindUserDesc": "Имя пользователя, используемое для выполнения поиска в AD/LDAP. Обычно, это должна быть учетная запись, созданная специально для работы с Mattermost. Она должна иметь права, ограниченные чтением части дерева AD/LDAP, указанной в поле База поиска (BaseDN).",
|
||||
"admin.ldap.bindUserTitle": "Пользователь для подключения:",
|
||||
"admin.ldap.emailAttrDesc": "Атрибут на сервере AD/LDAP, значение которого будет использоваться для заполнения адресов электронной почты пользователей Mattermost.",
|
||||
"admin.ldap.emailAttrEx": "Например: \"mail\" или \"userPrincipalName\"",
|
||||
"admin.ldap.emailAttrTitle": "Атрибут электронной почты:",
|
||||
"admin.ldap.enableDesc": "Когда активировано, то Mattermost позволяет авторизоваться используя AD/LDAP",
|
||||
"admin.ldap.enableSyncDesc": "Когда активировано, то Mattermost периодически синхронизирует пользователей с AD/LDAP.",
|
||||
"admin.ldap.enableSyncTitle": "Включить синхронизацию с AD/LDAP:",
|
||||
"admin.ldap.enableTitle": "Включить авторизацию с помощью AD/LDAP:",
|
||||
"admin.ldap.firstnameAttrDesc": "(Необязательно) Атрибут на сервере AD/LDAP, который будет использоваться для заполнения имени пользователей в Mattermost. Если он установлен, то пользователи не смогут редактировать свои имя, т.к. оно будет синхронизироваться с сервером AD/LDAP. Если атрибут не заполнен, то пользователи смогут изменить свои имена в настройках учетной записи.",
|
||||
"admin.ldap.firstnameAttrEx": "Например: \"givenName\"",
|
||||
"admin.ldap.firstnameAttrTitle": "Атрибут имени",
|
||||
"admin.ldap.idAttrDesc": "Атрибут AD/LDAP, который будет использоваться в качестве уникального идентификатора в Mattermost. Это должен быть атрибут AD/LDAP, значение которого не будет меняться, например имя пользователя или его идентификатор. Если значение этого атрибута изменится, в Mattermost будет создана новая учетная запись, не имеющая к старой никакого отношения. Значение этого атрибута используется в поле \"Имя пользователя AD/LDAP\" на странице входа в Mattermost. В большинстве случаев, это тот же атрибут, что используется в качестве \"Атрибута имени пользователя\" выше. Если ваша команда обычно использует учетные записи в стиле domain\\\\username для входа в другие сервисы с использованием AD/LDAP, вы можете указать domain\\\\username и здесь для сохранения единообразия.",
|
||||
"admin.ldap.idAttrDesc": "Атрибут на сервере AD/LDAP, который будет использоваться в качестве уникального идентификатора в Mattermost. Это должен быть атрибут AD/LDAP, значение которого не будет меняться, например имя пользователя или его идентификатор. Если значение этого атрибута изменится, в Mattermost будет создана новая учетная запись, не имеющая к старой никакого отношения. Значение этого атрибута используется в поле \"Имя пользователя AD/LDAP\" на странице входа в Mattermost. В большинстве случаев, это тот же атрибут, что используется в качестве \"Атрибута имени\" выше. Если Ваша команда обычно использует учетные записи в стиле domain\\\\username для входа в другие сервисы с использованием AD/LDAP, Вы можете указать domain\\\\username и здесь для сохранения единообразия.",
|
||||
"admin.ldap.idAttrEx": "Например: \"sAMAccountName\"",
|
||||
"admin.ldap.idAttrTitle": "ID атрибут:",
|
||||
"admin.ldap.jobExtraInfo": "Scanned {ldapUsers} LDAP users, updated {updateCount}, deactivated {deleteCount}",
|
||||
"admin.ldap.lastnameAttrDesc": "(Опционально) Этот атрибут для AD/LDAP сервера который будет использоваться для заполнения фамилии пользователя в Mattermost. Если он установлен, пользователи не смогут редактировать свои фамилии т.к. они будут синхронизироваться с LDAP сервером. Если атрибут не заполнен, пользователи смогут изменить их собственные фамилии в Настройках пользователя.",
|
||||
"admin.ldap.idAttrTitle": "Атрибут ID:",
|
||||
"admin.ldap.jobExtraInfo": "Отсканированно {ldapUsers} пользователей LDAP, обновлено {updateCount}, деактивированно {deleteCount}",
|
||||
"admin.ldap.lastnameAttrDesc": "(Необязательно) Этот атрибут на сервере AD/LDAP который будет использоваться для заполнения фамилии пользователя в Mattermost. Если он установлен, пользователи не смогут редактировать свои фамилии т.к. они будут синхронизироваться с сервером AD/LDAP. Если атрибут не заполнен, пользователи смогут изменить их собственные фамилии в настройках учетной записи.",
|
||||
"admin.ldap.lastnameAttrEx": "Например: \"sn\"",
|
||||
"admin.ldap.lastnameAttrTitle": "Атрибут фамилии:",
|
||||
"admin.ldap.ldap_test_button": "Тест AD/LDAP",
|
||||
"admin.ldap.loginNameDesc": "Подсказка, которая появляется в поле логина на странице входа. По умолчанию \"Логин AD/LDAP\".",
|
||||
"admin.ldap.loginNameEx": "Например: \"Имя пользователя AD/LDAP\"",
|
||||
"admin.ldap.loginNameTitle": "Login Field Name:",
|
||||
"admin.ldap.loginNameEx": "Например: \"Логин AD/LDAP\"",
|
||||
"admin.ldap.loginNameTitle": "Имя пользователя (Логин):",
|
||||
"admin.ldap.maxPageSizeEx": "Например: \"2000\"",
|
||||
"admin.ldap.maxPageSizeHelpText": "Максимальное количество пользователей, которое Mattermost может запросить с AD/LDAP сервера. 0 отключает ограничение.",
|
||||
"admin.ldap.maxPageSizeHelpText": "Максимальное количество пользователей, которое Mattermost может запросить с AD/LDAP сервера. Укажите 0 для отключения ограниченя.",
|
||||
"admin.ldap.maxPageSizeTitle": "Максимальный размер страницы:",
|
||||
"admin.ldap.nicknameAttrDesc": "(Опционально) Этот атрибут для AD/LDAP сервера который будет использоваться для заполнения прозвища пользователя в Mattermost. Если он установлен, пользователи не смогут редактировать свои прозвища т.к. они будут синхронизироваться с LDAP сервером. Если атрибут не заполнен, пользователи смогут изменить их собственные прозвища в Настройках пользователя.",
|
||||
"admin.ldap.nicknameAttrDesc": "(Необязательно) Этот атрибут на сервере AD/LDAP который будет использоваться для заполнения прозвища пользователя в Mattermost. Если он установлен, пользователи не смогут редактировать свои прозвища т.к. они будут синхронизироваться с сервером AD/LDAP. Если атрибут не заполнен, пользователи смогут изменить их собственные прозвища в настройках учетной записи.",
|
||||
"admin.ldap.nicknameAttrEx": "Например: \"nickname\"",
|
||||
"admin.ldap.nicknameAttrTitle": "Атрибут Никнейм",
|
||||
"admin.ldap.nicknameAttrTitle": "Атрибут прозвища",
|
||||
"admin.ldap.noLicense": "<h4 class=\"banner__heading\">Примечание:</h4><p>Поддержка AD/LDAP является расширенным функционалом. Ваша текущая лицензия не поддерживает AD/LDAP. Нажмите <a href=\"http://mattermost.com\" target='_blank'>здесь</a> для получения информации и цены расширенной лицензии.</p>",
|
||||
"admin.ldap.portDesc": "Порт, который будет использоваться Mattermost для подключения к серверу AD/LDAP. Значение по умолчанию 389.",
|
||||
"admin.ldap.portEx": "Например: \"389\"",
|
||||
"admin.ldap.portTitle": "Порт AD/LDAP:",
|
||||
"admin.ldap.positionAttrDesc": "(Необязательно) Атрибут на сервере AD/LDAP, который будет использоваться для заполнения поля позиции в Mattermost.",
|
||||
"admin.ldap.positionAttrEx": "Пример: \"заголовок\"",
|
||||
"admin.ldap.positionAttrTitle": "Расположение атрибута:",
|
||||
"admin.ldap.portTitle": "Порт сервера AD/LDAP:",
|
||||
"admin.ldap.positionAttrDesc": "(Необязательно) Атрибут на сервере AD/LDAP, который будет использоваться для заполнения поля заголовка в Mattermost.",
|
||||
"admin.ldap.positionAttrEx": "Например: \"title\"",
|
||||
"admin.ldap.positionAttrTitle": "Атрибута заголовка:",
|
||||
"admin.ldap.queryDesc": "Значение тайм-аута для запросов к серверу AD/LDAP. Увеличьте, если Вы получаете ошибки при подключении, вызванные медленным сервером AD/LDAP.",
|
||||
"admin.ldap.queryEx": "Например: \"60\"",
|
||||
"admin.ldap.queryTitle": "Таймаут запроса (секунды):",
|
||||
"admin.ldap.serverDesc": "Домен или IP-адрес сервера AD/LDAP.",
|
||||
"admin.ldap.serverEx": "Например: \"10.0.0.23\"",
|
||||
"admin.ldap.serverDesc": "Доменное имя или IP-адрес сервера AD/LDAP.",
|
||||
"admin.ldap.serverEx": "Например: \"10.0.0.23\" или \"dc1.corp.myorg.com\"",
|
||||
"admin.ldap.serverTitle": "Сервер AD/LDAP:",
|
||||
"admin.ldap.skipCertificateVerification": "Пропустить проверку сертификата:",
|
||||
"admin.ldap.skipCertificateVerificationDesc": "Пропустить этап верификации сертификата для TLS или STARTTLS соединений. Не рекомендовано для production среды, где TLS обязателен. Только для тестирования.",
|
||||
"admin.ldap.skipCertificateVerificationDesc": "Пропустить этап верификации сертификата для TLS или STARTTLS соединений. Не рекомендовано для рабочей среды, где TLS обязателен. Только для тестирования.",
|
||||
"admin.ldap.syncFailure": "Ошибка синхронизации: {error}",
|
||||
"admin.ldap.syncIntervalHelpText": "Синхронизация обновления пользовательской информации из AD/LDAP с Mattermost. Например, при изменении имени пользователя на сервере AD/LDAP, во время синхронизации произойдет обновление данных в Mattermost. Учетные записи, которые будут удалены или заблокированы на сервере AD/LDAP имеют свои учетные записи Mattermost и они будут переведены в состояние \"Неактивный\", пользовательская сессия при этом будет удалена. Mattermost выполняет синхронизацию через определенный интервал. Например, если введено 60, то Mattermost синхронизируется данные через каждые 60 минут.",
|
||||
"admin.ldap.syncIntervalHelpText": "Синхронизация обновления пользовательской информации из AD/LDAP с базой Mattermost. Например, при изменении имени пользователя на сервере AD/LDAP, во время синхронизации произойдет обновление данных в Mattermost. Учетные записи, которые будут удалены или заблокированы на сервере AD/LDAP имеют свои учетные записи Mattermost и они будут переведены в состояние \"Неактивный\", пользовательская сессия при этом будет удалена. Mattermost выполняет синхронизацию через определенный интервал. Например, если введено 60, то Mattermost синхронизируется данные через каждые 60 минут.",
|
||||
"admin.ldap.syncIntervalTitle": "Интервал синхронизации (в минутах):",
|
||||
"admin.ldap.syncNowHelpText": "Инициировать синхронизацию AD/LDAP немедленно.",
|
||||
"admin.ldap.sync_button": "Синхронизировать с AD/LDAP сейчас",
|
||||
"admin.ldap.testFailure": "Ошибка теста AD/LDAP: {error}",
|
||||
"admin.ldap.testHelpText": "Тесты, если сервер Mattermost не сможет подключиться к указанному серверу AD/LDAP. См лог-файл для получения более детальных сообщений об ошибках.",
|
||||
"admin.ldap.testSuccess": "Тестирование AD/LDAP успешно завершено",
|
||||
"admin.ldap.testSuccess": "Тестирование подключения к AD/LDAP успешно завершено",
|
||||
"admin.ldap.uernameAttrDesc": "Атрибут на сервере AD/LDAP, который будет использоваться для заполнения имени пользователя в Mattermost. Он может быть таким же, как атрибут идентификатор.",
|
||||
"admin.ldap.userFilterDisc": "(Необязательно) Введите фильтр AD/LDAP, используемый при поиске объектов пользователь. Только пользователи, выбранные запросом будут иметь возможность получить доступ к Mattermost. Для Active Directory, запрос для отбора только активных пользователей такой: (&(objectCategory=Person)(!UserAccountControl:1.2.840.113556.1.4.803:=2))).",
|
||||
"admin.ldap.userFilterEx": "Например: \"(objectClass=user)\"",
|
||||
"admin.ldap.userFilterTitle": "Фильтр пользователей:",
|
||||
"admin.ldap.usernameAttrEx": "Например: \"sAMAccountName\"",
|
||||
"admin.ldap.usernameAttrTitle": "Атрибут Имя пользователя:",
|
||||
"admin.ldap.usernameAttrTitle": "Атрибут имени пользователя:",
|
||||
"admin.license.choose": "Выберите файл",
|
||||
"admin.license.chooseFile": "Выберите файл",
|
||||
"admin.license.edition": "Редакция:",
|
||||
"admin.license.key": "Лицензионный ключ:",
|
||||
"admin.license.keyRemove": "Удалить Enterprise Лицензию и Откатить Сервер",
|
||||
"admin.license.keyRemove": "Удалить расширенную лицензию и откатить сервер",
|
||||
"admin.license.noFile": "Файл не загружен",
|
||||
"admin.license.removing": "Удаление лицензии...",
|
||||
"admin.license.title": "Редакция и лицензия",
|
||||
"admin.license.type": "Лицензия: ",
|
||||
"admin.license.upload": "Загрузить",
|
||||
"admin.license.uploadDesc": "Загрузите лицензионный ключ для Mattermost Enterprise Edition для получения расширенных возможностей. <a href=\"http://mattermost.com\" target='_blank'>Посетите сайт</a>, чтобы узнать о преимуществах Enterprise Edition или заказать ключ.",
|
||||
"admin.license.uploadDesc": "Загрузите лицензионный ключ для расширенной редакции Mattermost для получения дополнительных возможностей. <a href=\"http://mattermost.com\" target='_blank'>Посетите сайт</a>, чтобы узнать о преимуществах расширенной редакции Mattermost и заказать ключ.",
|
||||
"admin.license.uploading": "Загрузка лицензии...",
|
||||
"admin.log.consoleDescription": "Как правило, значение false в продакшене. Разработчики могут установить в этом поле значение true для вывода сообщений журнала на консоль в зависимости от параметров уровня логирования в консоли. Если значение true, сервер пишет сообщения в стандартный выходной поток (stdout).",
|
||||
"admin.log.consoleTitle": "Исходящие журналы в консоль:",
|
||||
"admin.log.enableDiagnostics": "Включение диагностики и отчетов об ошибках:",
|
||||
"admin.log.enableDiagnosticsDescription": "Включите функцию отправки отчётов об ошибках и диагностической информации для того, чтобы мы смогли улучшить Mattermost. Прочтите нашу <a href=\"https://about.mattermost.com/default-privacy-policy/\" target='_blank'>политику безопасности.</a>",
|
||||
"admin.log.enableDiagnosticsDescription": "Включите функцию отправки отчётов об ошибках и диагностическую информацию для того, чтобы мы смогли улучшить Mattermost. Прочтите нашу <a href=\"https://about.mattermost.com/default-privacy-policy/\" target='_blank'>политику безопасности.</a>",
|
||||
"admin.log.enableWebhookDebugging": "Включить отладку Webhook-ов:",
|
||||
"admin.log.enableWebhookDebuggingDescription": "Вы можете установить это значение в false, чтобы отключить отладочное журналирование тел всех запросов входящие вебхуки.",
|
||||
"admin.log.fileDescription": "Обычно включается в priduction. Если включено, события журнала записываются в файл mattermost.log из каталога указанной в опции Каталог с файлом Журнала. Файлы журнала обновляются по достижении 10000 строк и хранятся в том же каталоге, именованные по дате и порядковому номеру. Пример, mattermost.2017-11-05.001",
|
||||
@@ -640,6 +629,7 @@
|
||||
"admin.logs.title": "Серверные логи",
|
||||
"admin.manage_roles.additionalRoles": "Select additional permissions for the account. <a href=\"https://about.mattermost.com/default-permissions\" target=\"_blank\">Read more about roles and permissions</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokens": "Allow this account to generate <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">personal access tokens</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokensDesc": "Removing this permission doesn't delete existing tokens. To delete them, go to the user's Manage Tokens menu.",
|
||||
"admin.manage_roles.cancel": "Отмена",
|
||||
"admin.manage_roles.manageRolesTitle": "Manage Roles",
|
||||
"admin.manage_roles.postAllPublicRole": "Access to post to all Mattermost public channels.",
|
||||
@@ -651,7 +641,7 @@
|
||||
"admin.manage_roles.systemAdmin": "Администратор системы",
|
||||
"admin.manage_roles.systemMember": "Участник",
|
||||
"admin.manage_tokens.manageTokensTitle": "Manage Personal Access Tokens",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Personal access tokens function similar to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">interact with this Mattermost server</a>. Learn more about <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">personal access tokens</a>.",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Personal access tokens function similarly to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">interact with this Mattermost server</a>. Tokens are disabled if the user is deactivated. Learn more about <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">personal access tokens</a>.",
|
||||
"admin.manage_tokens.userAccessTokensNone": "No personal access tokens.",
|
||||
"admin.metrics.enableDescription": "Если включено, в Mattermost будет включен сбор данных о производительности и профилирование. Дополнительную информацию по конфигурации мониторинга производительности смотрите в <a href=\"http://docs.mattermost.com/deployment/metrics.html\" target='_blank'>документации</a>.",
|
||||
"admin.metrics.enableTitle": "Включить мониторинг производительности",
|
||||
@@ -698,18 +688,19 @@
|
||||
"admin.password.requirementsDescription": "Виды символов требуемых для пароля.",
|
||||
"admin.password.symbol": "Хотя бы один символ (\"~!@#$%^&*()\")",
|
||||
"admin.password.uppercase": "Хотя бы одна заглавная буква",
|
||||
"admin.plugin.activeTitle": "Активные плагины: ",
|
||||
"admin.plugin.banner": "Плагины являются экспериментальными, поэтому не рекомендуется использовать их в продакшене.",
|
||||
"admin.plugin.desc": "Описание:",
|
||||
"admin.plugin.error.activate": "Не удалось загрузить плагин. Он может конфликтовать с другими плагинами на вашем сервере.",
|
||||
"admin.plugin.error.extract": "Обнаружена ошибка при распаковке плагина. Проверьте содержимое файла плагина и попробуйте заново.",
|
||||
"admin.plugin.id": "ID: ",
|
||||
"admin.plugin.installedDesc": "Installed plugins on your Mattermost server. Pre-packaged plugins are installed by default, and can be deactivated but not removed.",
|
||||
"admin.plugin.installedTitle": "Installed Plugins: ",
|
||||
"admin.plugin.management.title": "Management",
|
||||
"admin.plugin.no_plugins": "Нет активных плагинов.",
|
||||
"admin.plugin.remove": "Удалить",
|
||||
"admin.plugin.removing": "Удаление...",
|
||||
"admin.plugin.title": "Плагины (Экспериментально)",
|
||||
"admin.plugin.upload": "Загрузить",
|
||||
"admin.plugin.uploadDesc": "Upload a plugin for your Mattermost server. Adding or removing a webapp plugin requires users to refresh their browser or Desktop App before taking effect. See <a href=\"https://about.mattermost.com/default-plugins\">documentation</a> to learn more.",
|
||||
"admin.plugin.uploadDesc": "Upload a plugin for your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugin-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugin.uploadTitle": "Загрузить плагин: ",
|
||||
"admin.plugin.uploading": "Загрузка…",
|
||||
"admin.plugins.jira": "JIRA (Бета)",
|
||||
@@ -725,6 +716,11 @@
|
||||
"admin.plugins.jira.userDescription": "Select the username that this integration is attached to.",
|
||||
"admin.plugins.jira.userLabel": "Пользователь:",
|
||||
"admin.plugins.jira.webhookDocsLink": "документация",
|
||||
"admin.plugins.settings.enable": "Enable Plugins: ",
|
||||
"admin.plugins.settings.enableDesc": "When true, enables plugins on your Mattermost server. Use plugins to integrate with third-party systems, extend functionality or customize the user interface of your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugins\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.enableUploads": "Enable Plugin Uploads: ",
|
||||
"admin.plugins.settings.enableUploadsDesc": "When true, enables plugin uploads by System Admins at <strong>Plugins > Management</strong>. If you do not plan to upload a plugin, set to false to control which plugins are installed on your server. See <a href=\"https://about.mattermost.com/default-plugins-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.title": "Configuration",
|
||||
"admin.privacy.showEmailDescription": "Отключите, чтобы скрыть email адреса пользователей от всех, кроме системных администраторов.",
|
||||
"admin.privacy.showEmailTitle": "Показать Email: ",
|
||||
"admin.privacy.showFullNameDescription": "Когда выключено, имена и фамилии участников видны только Системному Администратору. Вместо имени и фамилии отображается Имя пользователя.",
|
||||
@@ -768,9 +764,9 @@
|
||||
"admin.requestButton.loading": " Загрузка…",
|
||||
"admin.requestButton.requestFailure": "Сбой теста: {error}",
|
||||
"admin.requestButton.requestSuccess": "Тестирование успешно завершено",
|
||||
"admin.reset_password.close": "Закрыть",
|
||||
"admin.reset_password.cancel": "Отмена",
|
||||
"admin.reset_password.newPassword": "Новый пароль",
|
||||
"admin.reset_password.select": "Выбор",
|
||||
"admin.reset_password.reset": "Reset",
|
||||
"admin.reset_password.submit": "Пожалуйста введите как минимум {chars} символов.",
|
||||
"admin.reset_password.titleReset": "Сброс пароля",
|
||||
"admin.reset_password.titleSwitch": "Переключить аккаунт на E-Mail/Пароль",
|
||||
@@ -783,6 +779,8 @@
|
||||
"admin.saml.emailAttrEx": "Например: \"Email\" или \"PrimaryEmail\"",
|
||||
"admin.saml.emailAttrTitle": "Атрибут эл.почта:",
|
||||
"admin.saml.enableDescription": "Если включено, Mattermost позволит выполнять вход с помощью SAML 2.0. Пожалуйста, обратитесь к <a href='http://docs.mattermost.com/deployment/sso-saml.html' target='_blank'>документации</a>, чтобы узнать больше о настройке SAML для Mattermost.",
|
||||
"admin.saml.enableSyncWithLdapDescription": "When true, Mattermost periodically synchronizes SAML user attributes, including user deactivation and removal, from AD/LDAP. Enable and configure synchronization settings at <strong>Authentication > AD/LDAP</strong>. See <a href='https://about.mattermost.com/default-saml-ldap-sync' target='_blank'>documentation</a> to learn more.",
|
||||
"admin.saml.enableSyncWithLdapTitle": "Enable Synchronizing SAML Accounts With AD/LDAP:",
|
||||
"admin.saml.enableTitle": "Включить вход через SAML 2.0:",
|
||||
"admin.saml.encryptDescription": "When false, Mattermost will not decrypt SAML Assertions encrypted with your Service Provider Public Certificate. Not recommended for production environments. For testing only.",
|
||||
"admin.saml.encryptTitle": "Включить шифрование:",
|
||||
@@ -958,6 +956,7 @@
|
||||
"admin.sidebar.other": "ДРУГИЕ",
|
||||
"admin.sidebar.password": "Пароль",
|
||||
"admin.sidebar.plugins": "Плагины (Экспериментально)",
|
||||
"admin.sidebar.plugins.configuration": "Configuration",
|
||||
"admin.sidebar.policy": "Политики",
|
||||
"admin.sidebar.privacy": "Безопасность",
|
||||
"admin.sidebar.publicLinks": "Публичные ссылки",
|
||||
@@ -1436,6 +1435,9 @@
|
||||
"delete_post.post": "Сообщение",
|
||||
"delete_post.question": "Действительно хотите удалить {term}?",
|
||||
"delete_post.warning": "This post has {count, number} {count, plural, one {comment} other {comments}} on it.",
|
||||
"discard_changes_modal.leave": "Да, Отменить",
|
||||
"discard_changes_modal.message": "Вы уверены, что хотите отменить несохраненные изменения?",
|
||||
"discard_changes_modal.title": "Отменить изменения?",
|
||||
"edit_channel_header.editHeader": "Изменить заголовок канала...",
|
||||
"edit_channel_header.previewHeader": "Правка заголовка",
|
||||
"edit_channel_header_modal.cancel": "Отмена",
|
||||
@@ -1498,7 +1500,7 @@
|
||||
"error.generic.link": "Назад в Mattermost",
|
||||
"error.generic.link_message": "Назад в Mattermost",
|
||||
"error.generic.message": "Произошла ошибка.",
|
||||
"error.generic.title": "Error",
|
||||
"error.generic.title": "Ошибка",
|
||||
"error.local_storage.help1": "Включить cookies",
|
||||
"error.local_storage.help2": "Отключите режим инкогнито",
|
||||
"error.local_storage.help3": "Воспользуйтесь поддерживаемым браузером (IE 11, Chrome 43+, Firefox 38+, Safari 9, Edge)",
|
||||
@@ -1865,6 +1867,8 @@
|
||||
"mobile.about.appVersion": "Версия приложения: {version} (Сборка {number})",
|
||||
"mobile.about.copyright": "Copyright 2015-{currentYear} Mattermost, Inc. Все права защищены",
|
||||
"mobile.about.database": "Тип базы данных: {type}",
|
||||
"mobile.about.licensed": "Licensed to: {company}",
|
||||
"mobile.about.powered_by": "{site} is powered by Mattermost",
|
||||
"mobile.about.serverVersion": "Версия сервера: {version} (Сборка {number})",
|
||||
"mobile.about.serverVersionNoBuild": "Версия сервера: {version}",
|
||||
"mobile.account.notifications.email.footer": "Когда отошел более чем на пять минут",
|
||||
@@ -1878,6 +1882,14 @@
|
||||
"mobile.advanced_settings.reset_message": "\nДанное действие приведёт к очистке локальных данных и перезапуску приложения.\n",
|
||||
"mobile.advanced_settings.reset_title": "Reset Cache",
|
||||
"mobile.advanced_settings.title": "Дополнительные параметры",
|
||||
"mobile.android.camera_permission_denied_description": "To take photos and videos with your camera, please change your permission settings.",
|
||||
"mobile.android.camera_permission_denied_title": "Camera access is required",
|
||||
"mobile.android.permission_denied_dismiss": "Dismiss",
|
||||
"mobile.android.permission_denied_retry": "Set permission",
|
||||
"mobile.android.photos_permission_denied_description": "To upload images from your library, please change your permission settings.",
|
||||
"mobile.android.photos_permission_denied_title": "Photo library access is required",
|
||||
"mobile.android.videos_permission_denied_description": "To upload videos from your library, please change your permission settings.",
|
||||
"mobile.android.videos_permission_denied_title": "Video library access is required",
|
||||
"mobile.channel_drawer.search": "Jump to...",
|
||||
"mobile.channel_info.alertMessageDeleteChannel": "Вы действительно хотите удалить {term} {name}?",
|
||||
"mobile.channel_info.alertMessageLeaveChannel": "Вы действительно хотите покинуть {term} {name}?",
|
||||
@@ -1903,6 +1915,19 @@
|
||||
"mobile.channel_list.privateChannel": "Приватный канал",
|
||||
"mobile.channel_list.publicChannel": "Публичный канал",
|
||||
"mobile.channel_list.unreads": "НЕПРОЧИТАННЫЕ",
|
||||
"mobile.client_upgrade": "Update App",
|
||||
"mobile.client_upgrade.can_upgrade_subtitle": "A new version is available for download.",
|
||||
"mobile.client_upgrade.can_upgrade_title": "Update Available",
|
||||
"mobile.client_upgrade.close": "Update Later",
|
||||
"mobile.client_upgrade.current_version": "Версия сервера: {version}",
|
||||
"mobile.client_upgrade.download_error.message": "An error occurred downloading the new version.",
|
||||
"mobile.client_upgrade.download_error.title": "Unable to Install Update",
|
||||
"mobile.client_upgrade.latest_version": "Версия сервера: {version}",
|
||||
"mobile.client_upgrade.must_upgrade_subtitle": "Please update the app to continue.",
|
||||
"mobile.client_upgrade.must_upgrade_title": "Update Required",
|
||||
"mobile.client_upgrade.no_upgrade_subtitle": "You already have the latest version.",
|
||||
"mobile.client_upgrade.no_upgrade_title": "Your App Is Up to Date",
|
||||
"mobile.client_upgrade.upgrade": "Обновить",
|
||||
"mobile.components.channels_list_view.yourChannels": "Ваши каналы:",
|
||||
"mobile.components.error_list.dismiss_all": "Отменить все",
|
||||
"mobile.components.select_server_view.continue": "Продолжить",
|
||||
@@ -1932,6 +1957,8 @@
|
||||
"mobile.file_upload.more": "Еще",
|
||||
"mobile.file_upload.video": "Библиотека видео",
|
||||
"mobile.help.title": "Помощь",
|
||||
"mobile.image_preview.deleted_post_message": "This post and it's files have been deleted. The previewer will now be closed.",
|
||||
"mobile.image_preview.deleted_post_title": "Post Deleted",
|
||||
"mobile.image_preview.save": "Сохранить изображение",
|
||||
"mobile.intro_messages.DM": "Начало истории личных сообщений с {teammate}. Личные сообщения и файлы доступны здесь и не видны за пределами этой области.",
|
||||
"mobile.intro_messages.default_message": "Это первый канал, который видит новый участник группы - используйте его для отправки сообщений, которые должны увидеть все.",
|
||||
@@ -1945,7 +1972,10 @@
|
||||
"mobile.managed.exit": "Выход",
|
||||
"mobile.managed.jailbreak": "Устройства с джейлбрейком не являются доверенными {vendor}, выйдите из приложения.",
|
||||
"mobile.managed.secured_by": "Защищено {vendor}",
|
||||
"mobile.markdown.code.copy_code": "Copy Code",
|
||||
"mobile.markdown.code.plusMoreLines": "+{count, number} more lines",
|
||||
"mobile.markdown.link.copy_url": "Copy URL",
|
||||
"mobile.mention.copy_mention": "Copy Mention",
|
||||
"mobile.more_dms.start": "Начать",
|
||||
"mobile.more_dms.title": "New Conversation",
|
||||
"mobile.notice_mobile_link": "мобильные приложения",
|
||||
@@ -1994,6 +2024,7 @@
|
||||
"mobile.post.failed_title": "Не удалось отправить сообщение",
|
||||
"mobile.post.retry": "Обновить",
|
||||
"mobile.post_info.add_reaction": "Add Reaction",
|
||||
"mobile.post_info.copy_post": "Copy Post",
|
||||
"mobile.request.invalid_response": "Получен неверный ответ от сервера",
|
||||
"mobile.retry_message": "Refreshing messages failed. Pull up to try again.",
|
||||
"mobile.routes.channelInfo": "Информация",
|
||||
@@ -2037,13 +2068,20 @@
|
||||
"mobile.settings.clear": "Очистить локальное хранилище",
|
||||
"mobile.settings.clear_button": "Очистить",
|
||||
"mobile.settings.clear_message": "\nДанное действие приведёт к очистке локальных данных и перезапуску приложения.\n",
|
||||
"mobile.settings.modal.check_for_upgrade": "Check for Updates",
|
||||
"mobile.settings.team_selection": "Выбор команды",
|
||||
"mobile.suggestion.members": "Участники",
|
||||
"modal.manaul_status.ask": "Не задавать больше этот вопрос",
|
||||
"modal.manaul_status.button": "Да, установите мой статус \"В сети\"",
|
||||
"modal.manaul_status.cancel": "Нет, оставьте статус \"{status}\"",
|
||||
"modal.manaul_status.message": "Хотите ли вы изменить свой статус на \"В сети\"?",
|
||||
"modal.manaul_status.title": "Ваш статус установлен в \"{status}\"",
|
||||
"modal.manaul_status.title_": "Ваш статус установлен в \"{status}\"",
|
||||
"modal.manaul_status.title_away": "Ваш статус установлен в \"Отсутствует\"",
|
||||
"modal.manaul_status.title_dnd": "Your status is set to \"Do Not Disturb\"",
|
||||
"modal.manaul_status.title_offline": "Ваш статус установлен в \"Оффлайн\"",
|
||||
"modal.manual_status.cancel_": "Нет, оставьте статус \"{status}\"",
|
||||
"modal.manual_status.cancel_away": "No, keep it as \"Away\"",
|
||||
"modal.manual_status.cancel_dnd": "No, keep it as \"Do Not Disturb\"",
|
||||
"modal.manual_status.cancel_offline": "No, keep it as \"Offline\"",
|
||||
"more_channels.close": "Закрыть",
|
||||
"more_channels.create": "Создать новый канал",
|
||||
"more_channels.createClick": "Нажмите 'Создать Новый Канал' для создания нового канала",
|
||||
@@ -2127,6 +2165,12 @@
|
||||
"permalink.error.title": "Сообщение не найдено",
|
||||
"post_attachment.collapse": "Скрыть...",
|
||||
"post_attachment.more": "Ещё…",
|
||||
"post_body.check_for_out_of_channel_mentions.link.and": " and ",
|
||||
"post_body.check_for_out_of_channel_mentions.link.private": "add them to this private channel",
|
||||
"post_body.check_for_out_of_channel_mentions.link.public": "add them to the channel",
|
||||
"post_body.check_for_out_of_channel_mentions.message.multiple": "were mentioned but they are not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message.one": "was mentioned but is not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message_last": "? They will have access to all message history.",
|
||||
"post_body.commentedOn": "Прокомментировал {name}{apostrophe} сообщение: ",
|
||||
"post_body.deleted": "(сообщение удалено)",
|
||||
"post_body.plusMore": " plus {count, number} other {count, plural, one {file} other {files}}",
|
||||
@@ -2227,8 +2271,6 @@
|
||||
"search_results.searching": "Searching...",
|
||||
"search_results.usage.dataRetention": "Only messages posted in the last {days} days are returned. Contact your System Administrator for more detail.",
|
||||
"search_results.usage.fromInSuggestion": "Use {fromUser} to find posts from specific users and {inChannel} to find posts in specific channels",
|
||||
"search_results.usage.fromInSuggestion.fromUser": "from:",
|
||||
"search_results.usage.fromInSuggestion.inChannel": "in:",
|
||||
"search_results.usage.phrasesSuggestion": "Use {quotationMarks} to search for phrases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"quotation marks\"",
|
||||
"search_results.usageFlag1": "Вы не имеете отмеченных сообщений.",
|
||||
@@ -2380,6 +2422,7 @@
|
||||
"sso_signup.teamName": "Введите название новой команды",
|
||||
"sso_signup.team_error": "Введите имя команды",
|
||||
"status_dropdown.set_away": "Отошёл",
|
||||
"status_dropdown.set_dnd": "Do Not Disturb",
|
||||
"status_dropdown.set_offline": "Не в сети",
|
||||
"status_dropdown.set_online": "В сети",
|
||||
"suggestion.loading": "Загрузка...",
|
||||
@@ -2496,6 +2539,7 @@
|
||||
"user.settings.custom_theme.centerChannelTitle": "Center Channel Styles",
|
||||
"user.settings.custom_theme.codeTheme": "Цветовая схема",
|
||||
"user.settings.custom_theme.copyPaste": "Скопируйте и вставьте для того, чтобы поделиться цветовой схемой:",
|
||||
"user.settings.custom_theme.dndIndicator": "Do Not Disturb Indicator",
|
||||
"user.settings.custom_theme.linkButtonTitle": "Стили ссылки и кнопки",
|
||||
"user.settings.custom_theme.linkColor": "Цвет ссылки",
|
||||
"user.settings.custom_theme.mentionBj": "Mention Jewel BG",
|
||||
@@ -2623,6 +2667,7 @@
|
||||
"user.settings.modal.general": "Общие",
|
||||
"user.settings.modal.notifications": "Уведомления",
|
||||
"user.settings.modal.security": "Безопасность",
|
||||
"user.settings.modal.sidebar": "Sidebar",
|
||||
"user.settings.modal.title": "Настройки учетной записи",
|
||||
"user.settings.notifications.allActivity": "При любой активности",
|
||||
"user.settings.notifications.channelWide": "Упоминание участников канала \"@channel\", \"@all\", \"@here\" ",
|
||||
@@ -2757,6 +2802,11 @@
|
||||
"user.settings.security.switchSaml": "Перейти к использованию SAML SSO",
|
||||
"user.settings.security.title": "Настройки безопасности",
|
||||
"user.settings.security.viewHistory": "Просмотр истории активности",
|
||||
"user.settings.sidebar.after_seven_days": "After 7 days with no new messages",
|
||||
"user.settings.sidebar.autoCloseDMDesc": "Direct Message conversations can be reopened with the “+” button in the sidebar or using the Channel Switcher (CTRL+K).",
|
||||
"user.settings.sidebar.autoCloseDMTitle": "Automatically Close Direct Messages",
|
||||
"user.settings.sidebar.never": "Никогда",
|
||||
"user.settings.sidebar.title": "Sidebar Settings",
|
||||
"user.settings.tokens.cancel": "Отмена",
|
||||
"user.settings.tokens.clickToEdit": "Click 'Edit' to manage your personal access tokens",
|
||||
"user.settings.tokens.confirmCreateButton": "Да, создать",
|
||||
@@ -2768,8 +2818,8 @@
|
||||
"user.settings.tokens.copy": "Пожалуйста, скопируйте свой токен. Вы не сможете увидеть его ещё раз!",
|
||||
"user.settings.tokens.create": "Создать новый токен",
|
||||
"user.settings.tokens.delete": "Удалить",
|
||||
"user.settings.tokens.description": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similar to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>.",
|
||||
"user.settings.tokens.description_mobile": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similar to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>. Create new tokens on your desktop.",
|
||||
"user.settings.tokens.description": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similarly to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>.",
|
||||
"user.settings.tokens.description_mobile": "<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Personal access tokens</a> function similarly to session tokens and can be used by integrations to <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">authenticate against the REST API</a>. Create new tokens on your desktop.",
|
||||
"user.settings.tokens.id": "Token ID: ",
|
||||
"user.settings.tokens.name": "Описание токена: ",
|
||||
"user.settings.tokens.nameHelp": "Enter a description for your token to remember what it does.",
|
||||
@@ -2780,6 +2830,7 @@
|
||||
"user.settings.tokens.tokenId": "Token ID: ",
|
||||
"user.settings.tokens.userAccessTokensNone": "No personal access tokens.",
|
||||
"user_list.notFound": "Пользователи не найдены",
|
||||
"user_profile.account.editSettings": "Учетная запись",
|
||||
"user_profile.send.dm": "Отправить сообщение",
|
||||
"user_profile.webrtc.call": "Видеовызов",
|
||||
"user_profile.webrtc.offline": "Пользователь не в сети",
|
||||
|
||||
@@ -269,10 +269,13 @@
|
||||
"admin.database.title": "Veritabanı Ayarları",
|
||||
"admin.developer.title": "Geliştirici Ayarları",
|
||||
"admin.elasticsearch.bulkIndexButton.error": "Toplu Dizine Ekleme İşlemi Zamanlanamadı: {error}",
|
||||
"admin.elasticsearch.bulkIndexingTitle": "Bulk Indexing:",
|
||||
"admin.elasticsearch.connectionUrlDescription": "Elasticsearch sunucusunun adresi. {documentationLink}",
|
||||
"admin.elasticsearch.connectionUrlExample": "Örnek: \"https://elasticsearch.websitem.org:9200\"",
|
||||
"admin.elasticsearch.connectionUrlExample.documentationLinkText": "Sunucu kurulumu ile ilgili bilgi almak için belgelere bakın.",
|
||||
"admin.elasticsearch.connectionUrlTitle": "Sunucu Bağlantı Adresi:",
|
||||
"admin.elasticsearch.createJob.help": "All posts in the database will be indexed from oldest to newest. Elasticsearch is available during indexing but search results may be incomplete until the indexing job is complete.",
|
||||
"admin.elasticsearch.createJob.title": "Index Now",
|
||||
"admin.elasticsearch.elasticsearch_test_button": "Bağlantıyı Sına",
|
||||
"admin.elasticsearch.enableIndexingDescription": "Bu seçenek etkinleştirildiğinde, yeni iletiler otomatik olarak dizine eklenir. \"Arama sorguları için Elasticsearch kullanılsın\" seçeneği etkinleştirilene kadar arama sorguları veritabanını kullanır. {documentationLink}",
|
||||
"admin.elasticsearch.enableIndexingDescription.documentationLinkText": "Elasticsearch hakkında ayrıntılı bilgi almak için belgelere bakın.",
|
||||
@@ -300,22 +303,6 @@
|
||||
"admin.elasticsearch.usernameDescription": "(İsteğe bağlı) Elasticsearch sunucusunda kimlik doğrulaması için kullanılacak kullanıcı adı.",
|
||||
"admin.elasticsearch.usernameExample": "Örnek: \"elastic\"",
|
||||
"admin.elasticsearch.usernameTitle": "Sunucu Kullanıcı Adı:",
|
||||
"admin.elasticsearchStatus.bulkIndexLabel": "Toplu Dizine Ekleme:",
|
||||
"admin.elasticsearchStatus.cancelButton": "İptal",
|
||||
"admin.elasticsearchStatus.status": "Durum: ",
|
||||
"admin.elasticsearchStatus.statusCancelled": "Dizine ekleme işlemi iptal edildi",
|
||||
"admin.elasticsearchStatus.statusError": "Dizine ekleme sorunu.",
|
||||
"admin.elasticsearchStatus.statusError.help": "Elasticsearch dizine ekleme işlemi sırasında Mattermost üzerinde bir sorun çıktı: {error}",
|
||||
"admin.elasticsearchStatus.statusInProgress": "İşlem sürüyor. %{percent} tamamlandı.",
|
||||
"admin.elasticsearchStatus.statusInProgress.help": "Sunucu üzerinde dizine ekleme işlemi sürüyor. Elasticsearch etkinleştirilmiş ise, işlem tamamlanana kadar arama sonuçları eksik olabilir.",
|
||||
"admin.elasticsearchStatus.statusIndexingDisabled": "Dizine ekleme devre dışı.",
|
||||
"admin.elasticsearchStatus.statusLoading": "Yükleniyor...",
|
||||
"admin.elasticsearchStatus.statusNoJobs": "Herhangi bir dizine ekleme işi yok.",
|
||||
"admin.elasticsearchStatus.statusPending": "İşlem bekliyor.",
|
||||
"admin.elasticsearchStatus.statusPending.help": "Sunucu üzerinde Elasticsearch dizine ekleme işlemi kuyruğa eklenmiş. Elasticsearch etkinleştirilmiş ise işlem tamamlanana kadar arama sonuçları eksik olabilir.",
|
||||
"admin.elasticsearchStatus.statusRequestCancel": "İşlem İptal Ediliyor...",
|
||||
"admin.elasticsearchStatus.statusSuccess": "Dizine ekleme işlemi tamamlandı.",
|
||||
"admin.elasticsearchStatus.statusSuccess.help": "Dizine ekleme işlemi tamamlandı ve yeni iletiler otomatik olarak dizine eklenecek.",
|
||||
"admin.email.agreeHPNS": " Mattermost Anında Bildirim Hizmeti <a href=\"https://about.mattermost.com/hpns-terms/\" target='_blank'>Hüküm ve Koşulları</a> ile <a href=\"https://about.mattermost.com/hpns-privacy/\" target='_blank'>Gizlilik Politikasını</a> anladım ve onaylıyorum.",
|
||||
"admin.email.allowEmailSignInDescription": "Bu seçenek etkinleştirildiğinde, kullanıcılar e-posta ve parola ile Mattermost oturumu açabilir.",
|
||||
"admin.email.allowEmailSignInTitle": "E-posta ile oturum açılabilsin: ",
|
||||
@@ -468,9 +455,9 @@
|
||||
"admin.gitlab.enableDescription": "Bu seçenek etkinleştirildiğinde, GitLab OAuth kullanarak Mattermost üzerine takım ve hesap eklenebilir.",
|
||||
"admin.gitlab.enableTitle": "GitLab kimlik doğrulaması kullanılsın: ",
|
||||
"admin.gitlab.settingsTitle": "GitLab Ayarları",
|
||||
"admin.gitlab.siteUrl": "GitLab Site URL: ",
|
||||
"admin.gitlab.siteUrlDescription": "Enter the URL of your GitLab instance, e.g. https://example.com:3000. If your GitLab instance is not set up with SSL, start the URL with http:// instead of https://.",
|
||||
"admin.gitlab.siteUrlExample": "E.g.: https://",
|
||||
"admin.gitlab.siteUrl": "GitLab Sitesi Adresi: ",
|
||||
"admin.gitlab.siteUrlDescription": "GitLab kopyanızın adresini yazın. Örnek: https://ornek.com:3000. GitLab kopyanız SSL kullanmıyorsa adresi https:// yerine http:// ile başlayarak yazın.",
|
||||
"admin.gitlab.siteUrlExample": "Örnek: https://",
|
||||
"admin.gitlab.tokenTitle": "Kod Noktası:",
|
||||
"admin.gitlab.userTitle": "Kullanıcı API Noktası:",
|
||||
"admin.google.EnableHtmlDesc": "Google Hesabınız ile <ol><li><a target='_blank' href='https://accounts.google.com/login'>Oturum Açın</a>.</li><li>Sol yandaki menüden <a target='_blank' href='https://console.developers.google.com'>https://console.developers.google.com</a>, click <strong>Kimlik Bilgileri</strong> bölümüne gidin ve <strong>Proje adı</strong> olarak \"Mattermost - kuruluşunuzun-adı\" yazıp <strong>Oluştur</strong> üzerine tıklayın.</li><li><strong>OAuth consent screen</strong> başlığı üzerine tıklayın ve <strong>Kullanıcılara görüntülenecek ürün adı </strong> olarak \"Mattermost\" yazıp <strong>Kaydet</strong> üzerine tıklayın.</li><li><strong>Credentials</strong> başlığı altından<strong>Create credentials</strong> üzerine tıklayın ve <strong>OAuth client ID</strong> üzerine tıklayın <strong>Web Application</strong> seçin.</li><li><strong>Restrictions</strong> ve <strong>Authorized redirect URIs</strong> altında <strong>mattermost-adresiniz/signup/google/complete</strong> yazın (Örnek: http://localhost:8065/signup/google/complete). <strong>Create</strong> üzerine tıklayın.</li><li><strong>Client ID</strong> ve <strong>Client Secret</strong> bilgilerini aşağıdaki alanlara yazınve <strong>Kaydet</strong> üzerine tıklayın.</li><li>Son olarak <a target='_blank' href='https://console.developers.google.com/apis/api/plus/overview'>Google+ API</a> bölümüne giderek <strong>Etkinleştir</strong> üzerine tıklayın. Uygulamanın Google sistemleri üzerinde etkin olması bir kaç dakika sürebilir.</li></ol>",
|
||||
@@ -548,6 +535,8 @@
|
||||
"admin.ldap.emailAttrEx": "Örnek: \"mail\" ya da \"userPrincipalName\"",
|
||||
"admin.ldap.emailAttrTitle": "E-posta Özniteliği:",
|
||||
"admin.ldap.enableDesc": "Bu seçenek etkinleştirildiğinde, Mattermost AD/LDAP kullanılarak oturum açılmasını sağlar",
|
||||
"admin.ldap.enableSyncDesc": "Bu seçenek etkinleştirildiğinde, kullanıcılar Mattermost tarafından düzenli aralıklarla AD/LDAP sunucusu ile eşitlenir.",
|
||||
"admin.ldap.enableSyncTitle": "Kullanıcılar AD/LDAP ile Eşitlensin:",
|
||||
"admin.ldap.enableTitle": "AD/LDAP ile oturum açılabilsin:",
|
||||
"admin.ldap.firstnameAttrDesc": "(İsteğe bağlı) Mattermost kullanıcılarının adlarının alınacağı AD/LDAP sunucu özniteliği. Ayarlandığında, LDAP sunucusu ile eşitlendiğinden kullanıcılar adlarını değiştiremez. Boş bırakıldığında, kullanıcılar Hesap Ayarları bölümünden adlarını değiştirebilir.",
|
||||
"admin.ldap.firstnameAttrEx": "Örnek: \"belirtilenAd\"",
|
||||
@@ -640,6 +629,7 @@
|
||||
"admin.logs.title": "Sunucu Günlükleri",
|
||||
"admin.manage_roles.additionalRoles": "Hesaba verilecek ek izinleri seçin.<a href=\"https://about.mattermost.com/default-permissions\" target=\"_blank\">Rol ve izinler hakkında ayrıntılı bilgi alın</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokens": "Bu hesabın <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">kişisel erişim kodları</a> oluşturmasına izin verin.",
|
||||
"admin.manage_roles.allowUserAccessTokensDesc": "Bu izin kaldırıldığında var olan erişim kodları silinmez. Erişim kodlarını silmek için kullanıcının Kod Yönetimi menüsüne gidin.",
|
||||
"admin.manage_roles.cancel": "İptal",
|
||||
"admin.manage_roles.manageRolesTitle": "Rol Yönetimi",
|
||||
"admin.manage_roles.postAllPublicRole": "Herkese açık tüm Mattermost kanallarındaki iletilere erişim.",
|
||||
@@ -651,7 +641,7 @@
|
||||
"admin.manage_roles.systemAdmin": "Sistem Yöneticisi",
|
||||
"admin.manage_roles.systemMember": "Üye",
|
||||
"admin.manage_tokens.manageTokensTitle": "Kişisel Erişim Kodları Yönetimi",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Kişisel erişim kodları, oturum kodlarına benzer ve bütünleştirmelerin <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">REST API üzerinden kimlik doğrulamasını sağlar</a>. <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Kişisel erişim kodları hakkında ayrıntılı bilgi almak için buraya tıklayın</a>.",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "Kişisel erişim kodları, oturum kodlarına benzer ve bütünleştirmeler tarafından <a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">Mattermost sunucusu ile etkileşime geçmek için kullanılır</a>. <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">Kişisel erişim kodları hakkında ayrıntılı bilgi almak için buraya tıklayın</a>.",
|
||||
"admin.manage_tokens.userAccessTokensNone": "Herhangi bir kişisel erişim kodu yok.",
|
||||
"admin.metrics.enableDescription": "Bu seçenek etkinleştirildiğinde, Mattermost başarım izleme derleme ve profillemesi kullanılır. Lütfen Mattermost başarım izlemesi ayarları hakkında ayrıntılı bilgi almak için <a href=\"http://docs.mattermost.com/deployment/metrics.html\" target='_blank'>belgelere bakın</a>.",
|
||||
"admin.metrics.enableTitle": "Başarım İzlemesi Kullanılsın:",
|
||||
@@ -698,16 +688,17 @@
|
||||
"admin.password.requirementsDescription": "Karakter türleri için geçerli bir parola olmalıdır.",
|
||||
"admin.password.symbol": "En az bir simge (Örnek: \"~!@#$%^&*()\")",
|
||||
"admin.password.uppercase": "En az bir büyük harf",
|
||||
"admin.plugin.activeTitle": "Etkin Uygulama Ekleri: ",
|
||||
"admin.plugin.banner": "Uygulama ekleri henüz deneme aşamasında olduğundan üretim ortamında kullanılması önerilmez.",
|
||||
"admin.plugin.desc": "Açıklama:",
|
||||
"admin.plugin.error.activate": "Uygulama eki yüklenemedi. Sunucunuzdaki başka bir uygulama eki ile çakışıyor olabilir.",
|
||||
"admin.plugin.error.extract": "Uygulama eki ayıklanırken bir sorun çıktı. Uygulama eki içeriğinizi gözden geçirip yeniden deneyin.",
|
||||
"admin.plugin.id": "Kod: ",
|
||||
"admin.plugin.installedDesc": "Installed plugins on your Mattermost server. Pre-packaged plugins are installed by default, and can be deactivated but not removed.",
|
||||
"admin.plugin.installedTitle": "Installed Plugins: ",
|
||||
"admin.plugin.management.title": "Management",
|
||||
"admin.plugin.no_plugins": "Herhangi bir etkin uygulama eki yok.",
|
||||
"admin.plugin.remove": "Kaldır",
|
||||
"admin.plugin.removing": "Kaldırılıyor...",
|
||||
"admin.plugin.title": "Uygulama Ekleri (Deneysel)",
|
||||
"admin.plugin.upload": "Yükle",
|
||||
"admin.plugin.uploadDesc": "Mattermost sunucunuza bir uygulama eki yükleyin. Bir web uygulaması uygulama eki yüklendiğinde ya da kaldırıldığında, değişikliklerin etkili olması için kullanıcıların Masaüstü uygulamasını ya da web tarayıcısını yenilemeleri gerekir. Ayrıntılı bilgi almak için <a href=\"https://about.mattermost.com/default-plugins\">belgelere</a> bakın.",
|
||||
"admin.plugin.uploadTitle": "Uygulama Eki Yükle: ",
|
||||
@@ -725,6 +716,11 @@
|
||||
"admin.plugins.jira.userDescription": "Bu bütünleştirmenin ekleneceği kullanıcı adını seçin.",
|
||||
"admin.plugins.jira.userLabel": "Kullanıcı:",
|
||||
"admin.plugins.jira.webhookDocsLink": "belgeler",
|
||||
"admin.plugins.settings.enable": "Enable Plugins: ",
|
||||
"admin.plugins.settings.enableDesc": "When true, enables plugins on your Mattermost server. Use plugins to integrate with third-party systems, extend functionality or customize the user interface of your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugins\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.enableUploads": "Enable Plugin Uploads: ",
|
||||
"admin.plugins.settings.enableUploadsDesc": "When true, enables plugin uploads by System Admins at <strong>Plugins > Management</strong>. If you do not plan to upload a plugin, set to false to control which plugins are installed on your server. See <a href=\"https://about.mattermost.com/default-plugins-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.title": "Configuration",
|
||||
"admin.privacy.showEmailDescription": "Bu seçenek devre dışı bırakıldığında, e-posta adresi Sistem Yöneticileri dışındaki kullanıcılara görüntülenmez.",
|
||||
"admin.privacy.showEmailTitle": "E-posta Adresi Görüntülensin: ",
|
||||
"admin.privacy.showFullNameDescription": "Bu seçenek devre dışı bırakıldığında, tam ad Sistem Yöneticileri dışındaki kullanıcılara görüntülenmez. Tam ad yerine kullanıcı adı görüntülenir.",
|
||||
@@ -768,9 +764,9 @@
|
||||
"admin.requestButton.loading": " Yükleniyor...",
|
||||
"admin.requestButton.requestFailure": "Sınama Başarısız: {error}",
|
||||
"admin.requestButton.requestSuccess": "Sınama Başarılı",
|
||||
"admin.reset_password.close": "Kapat",
|
||||
"admin.reset_password.cancel": "İptal",
|
||||
"admin.reset_password.newPassword": "Yeni Parola",
|
||||
"admin.reset_password.select": "Seçin",
|
||||
"admin.reset_password.reset": "Sıfırla",
|
||||
"admin.reset_password.submit": "Lütfen en az {chars} karakter yazın.",
|
||||
"admin.reset_password.titleReset": "Parolayı Sıfırla",
|
||||
"admin.reset_password.titleSwitch": "Hesabı E-posta/Parolaya Geçir",
|
||||
@@ -783,6 +779,8 @@
|
||||
"admin.saml.emailAttrEx": "Örnek: \"Email\" ya da \"PrimaryEmail\"",
|
||||
"admin.saml.emailAttrTitle": "E-posta Özniteliği:",
|
||||
"admin.saml.enableDescription": "Bu seçenek etkinleştirildiğinde, Mattermost üzerinde her zaman SAML 2.0 kullanılarak oturum açılabilir. Mattermost üzerinde SAML yapılandırması ile ilgili ayrıntılı bilgi almak için <a href='http://docs.mattermost.com/deployment/sso-saml.html' target='_blank'>belgelere bakın</a>.",
|
||||
"admin.saml.enableSyncWithLdapDescription": "Bu seçenek etkinleştirildiğinde, SAML kullanıcı öznitelikleri, devre dışı bırakılan ve silinen kullanıcılar da katılarak, Mattermost tarafından AD/LDAP sunucusu ile düzenli aralıklarla eşitlenir. Eşitleme ayarları <strong>Kimlik Doğrulama > AD/LDAP</strong> bölümünden yapılabilir. Ayrıntılı bilgi almak için <a href='https://about.mattermost.com/default-saml-ldap-sync' target='_blank'>belgelere bakın</a>.",
|
||||
"admin.saml.enableSyncWithLdapTitle": "SAML Hesapları AD/LDAP ile Eşitlensin:",
|
||||
"admin.saml.enableTitle": "SAML 2.0 ile oturum açılabilsin:",
|
||||
"admin.saml.encryptDescription": "Bu seçenek devre dışı bırakıldığında, Mattermost, Hizmet Sağlayıcınızın Herkese Açık sertifikası ile şifrelenmiş SAML onaylarının şifresini çözmez. Yalnız deneme ortamı için önerilir, üretim ortamlarında kullanılması önerilmez.",
|
||||
"admin.saml.encryptTitle": "Şifreme Kullanılsın:",
|
||||
@@ -958,6 +956,7 @@
|
||||
"admin.sidebar.other": "DİĞER",
|
||||
"admin.sidebar.password": "Parola",
|
||||
"admin.sidebar.plugins": "Uygulama Ekleri (Deneysel)",
|
||||
"admin.sidebar.plugins.configuration": "Configuration",
|
||||
"admin.sidebar.policy": "İlke",
|
||||
"admin.sidebar.privacy": "Gizlilik",
|
||||
"admin.sidebar.publicLinks": "Herkese Açık Bağlantılar",
|
||||
@@ -1436,6 +1435,9 @@
|
||||
"delete_post.post": "İleti",
|
||||
"delete_post.question": "Bu {term} ögesini silmek istediğinize emin misiniz?",
|
||||
"delete_post.warning": "Bu iletiye {count, number} {count, plural, one {comment} other {comments}} yapılmış.",
|
||||
"discard_changes_modal.leave": "Evet, İptal Et",
|
||||
"discard_changes_modal.message": "Kaydedilmemiş değişiklikleriniz var. Bunları iptal etmek istediğinize emin misiniz?",
|
||||
"discard_changes_modal.title": "Değişiklikler iptal edilsin mi?",
|
||||
"edit_channel_header.editHeader": "Edit the Channel Header...",
|
||||
"edit_channel_header.previewHeader": "Edit header",
|
||||
"edit_channel_header_modal.cancel": "İptal",
|
||||
@@ -1865,6 +1867,8 @@
|
||||
"mobile.about.appVersion": "Uygulama Sürümü: {version} (Build {number})",
|
||||
"mobile.about.copyright": "Telif Hakkı 2015-{currentYear} Mattermost, Inc. Tüm hakları saklıdır",
|
||||
"mobile.about.database": "Veritabanı: {type}",
|
||||
"mobile.about.licensed": "Lisans sahibi: {company}",
|
||||
"mobile.about.powered_by": "{site} sitesi Mattermost tarafından sunulmaktadır",
|
||||
"mobile.about.serverVersion": "Sunucu Sürümü: {version} (Build {number})",
|
||||
"mobile.about.serverVersionNoBuild": "Sunucu Sürümü: {version}",
|
||||
"mobile.account.notifications.email.footer": "5 dakikadan uzun süre çevrimdışı ya da uzak olunduğunda",
|
||||
@@ -1878,6 +1882,14 @@
|
||||
"mobile.advanced_settings.reset_message": "\nBu işlem çevrimdışı verileri temizleyerek uygulamayı yeniden başlatır. Uygulama yeniden başlatıldığında oturumunuz otomatik olarak yeniden açılacak.\n",
|
||||
"mobile.advanced_settings.reset_title": "Ön Belleği Sıfırla",
|
||||
"mobile.advanced_settings.title": "Gelişmiş Ayarlar",
|
||||
"mobile.android.camera_permission_denied_description": "Kameranız ile fotoğraf ve görüntü çekebilmek için izin ayarlarınızı değiştirmelisiniz.",
|
||||
"mobile.android.camera_permission_denied_title": "Kameraya erişim izni gereklidir",
|
||||
"mobile.android.permission_denied_dismiss": "Kapat",
|
||||
"mobile.android.permission_denied_retry": "İzni ayarla",
|
||||
"mobile.android.photos_permission_denied_description": "Kitaplığınızdan görsel yükleyebilmek için izin ayarlarınızı değiştirmelisiniz.",
|
||||
"mobile.android.photos_permission_denied_title": "Fotoğraf kitaplığına erişim izni gereklidir",
|
||||
"mobile.android.videos_permission_denied_description": "Kitaplığınızdan görüntü yükleyebilmek için izin ayarlarınızı değiştirmelisiniz.",
|
||||
"mobile.android.videos_permission_denied_title": "Görüntü kitaplığına erişim izni gereklidir",
|
||||
"mobile.channel_drawer.search": "Şuraya geç...",
|
||||
"mobile.channel_info.alertMessageDeleteChannel": "{term} {name} kanalını silmek istediğinize emin misiniz?",
|
||||
"mobile.channel_info.alertMessageLeaveChannel": "{term} {name} kanalından ayrılmak istediğinize emin misiniz?",
|
||||
@@ -1903,6 +1915,19 @@
|
||||
"mobile.channel_list.privateChannel": "Özel Kanal",
|
||||
"mobile.channel_list.publicChannel": "Herkese Açık Kanal",
|
||||
"mobile.channel_list.unreads": "OKUNMAMIŞLAR",
|
||||
"mobile.client_upgrade": "Uygulamayı Güncelle",
|
||||
"mobile.client_upgrade.can_upgrade_subtitle": "Yeni bir sürüm yayınlanmış.",
|
||||
"mobile.client_upgrade.can_upgrade_title": "Güncelleme Yayınlanmış",
|
||||
"mobile.client_upgrade.close": "Daha Sonra Güncelle",
|
||||
"mobile.client_upgrade.current_version": "Son Sürüm: {version}",
|
||||
"mobile.client_upgrade.download_error.message": "Yeni sürüm indirilirken sorun çıktı.",
|
||||
"mobile.client_upgrade.download_error.title": "Güncelleme Kurulamadı",
|
||||
"mobile.client_upgrade.latest_version": "Kullandığınız Sürüm: {version}",
|
||||
"mobile.client_upgrade.must_upgrade_subtitle": "Lütfen devam etmek için uygulamayı güncelleyin.",
|
||||
"mobile.client_upgrade.must_upgrade_title": "Güncelleme Gerekiyor",
|
||||
"mobile.client_upgrade.no_upgrade_subtitle": "Son sürümü kullanıyorsunuz.",
|
||||
"mobile.client_upgrade.no_upgrade_title": "Uygulamanız Güncel",
|
||||
"mobile.client_upgrade.upgrade": "Güncelle",
|
||||
"mobile.components.channels_list_view.yourChannels": "Kanallarınız:",
|
||||
"mobile.components.error_list.dismiss_all": "Tümünü Yoksay",
|
||||
"mobile.components.select_server_view.continue": "Devam",
|
||||
@@ -1932,6 +1957,8 @@
|
||||
"mobile.file_upload.more": "Diğer",
|
||||
"mobile.file_upload.video": "Görüntü Kitaplığı",
|
||||
"mobile.help.title": "Yardım",
|
||||
"mobile.image_preview.deleted_post_message": "Bu ileti ve dosyaları silinmiş. Önizleme penceresi kapatılacak.",
|
||||
"mobile.image_preview.deleted_post_title": "İleti Silinmiş",
|
||||
"mobile.image_preview.save": "Görseli Kaydet",
|
||||
"mobile.intro_messages.DM": "{teammate} takım arkadaşınız ile doğrudan ileti geçmişinizin başlangıcı. Bu bölüm dışındaki kişiler burada paylaşılan doğrudan ileti ve dosyaları göremez.",
|
||||
"mobile.intro_messages.default_message": "Takım arkadaşlarınız kayıt olduğunda görecekleri ilk kanal budur. Bu kanalı herkesin bilmesi gereken iletiler için kullanın.",
|
||||
@@ -1945,7 +1972,10 @@
|
||||
"mobile.managed.exit": "Çık",
|
||||
"mobile.managed.jailbreak": "Jailbreak uygulanmış aygıtlara {vendor} tarafından güvenilmiyor, lütfen uygulamadan çıkın.",
|
||||
"mobile.managed.secured_by": "{vendor} tarafından korunuyor",
|
||||
"mobile.markdown.code.copy_code": "Kodu Kopyala",
|
||||
"mobile.markdown.code.plusMoreLines": "+{count, number} satır daha",
|
||||
"mobile.markdown.link.copy_url": "Adresi Kopyala",
|
||||
"mobile.mention.copy_mention": "Anmayı Kopyala",
|
||||
"mobile.more_dms.start": "Başlat",
|
||||
"mobile.more_dms.title": "Yeni Konuşma",
|
||||
"mobile.notice_mobile_link": "mobil uygulamalar",
|
||||
@@ -1994,6 +2024,7 @@
|
||||
"mobile.post.failed_title": "İletinizi gönderilemedi",
|
||||
"mobile.post.retry": "Yenile",
|
||||
"mobile.post_info.add_reaction": "Tepki Ekle",
|
||||
"mobile.post_info.copy_post": "İletiyi Kopyala",
|
||||
"mobile.request.invalid_response": "Sunucudan geçersiz bir yanıt alındı.",
|
||||
"mobile.retry_message": "İletiler yenilenemedi. Yeniden denemek için yukarı çekin.",
|
||||
"mobile.routes.channelInfo": "Bilgiler",
|
||||
@@ -2037,13 +2068,20 @@
|
||||
"mobile.settings.clear": "Çevrimdışı Depoyu Temizle",
|
||||
"mobile.settings.clear_button": "Temizle",
|
||||
"mobile.settings.clear_message": "\nBu işlem çevrimdışı verileri temizleyerek uygulamayı yeniden başlatır. Uygulama yeniden başlatıldığında oturumunuz otomatik olarak açılacak.\n",
|
||||
"mobile.settings.modal.check_for_upgrade": "Güncellemeleri Denetle",
|
||||
"mobile.settings.team_selection": "Takım Seçimi",
|
||||
"mobile.suggestion.members": "Üyeler",
|
||||
"modal.manaul_status.ask": "Bir daha sorma",
|
||||
"modal.manaul_status.button": "Evet, durumumu \"Çevrimiçi\" yap",
|
||||
"modal.manaul_status.cancel": "Hayır, durumum \"{status}\" olarak kalsın",
|
||||
"modal.manaul_status.message": "Durumunuzu \"Çevrimiçi\" olarak değiştirmek ister misiniz?",
|
||||
"modal.manaul_status.title": "Durumunuz \"{status}\" olarak değiştirildi",
|
||||
"modal.manaul_status.title_": "Durumunuz \"{status}\" olarak değiştirildi",
|
||||
"modal.manaul_status.title_away": "Durumunuz \"Uzakta\" olarak değiştirildi",
|
||||
"modal.manaul_status.title_dnd": "Durumunuz \"Rahatsız Etmeyin\" olarak değiştirildi",
|
||||
"modal.manaul_status.title_offline": "Durumunuz \"Çevrimdışı\" olarak değiştirildi",
|
||||
"modal.manual_status.cancel_": "Hayır, \"{status}\" olarak kalsın",
|
||||
"modal.manual_status.cancel_away": "Hayır, \"Uzakta\" olarak kalsın",
|
||||
"modal.manual_status.cancel_dnd": "Hayır, \"Rahatsız Etmeyin\" olarak kalsın",
|
||||
"modal.manual_status.cancel_offline": "Hayır, \"Çevrimdışı\" olarak kalsın",
|
||||
"more_channels.close": "Kapat",
|
||||
"more_channels.create": "Yeni Kanal Ekle",
|
||||
"more_channels.createClick": "Yeni bir kanal eklemek için 'Yeni Kanal Ekle' üzerine tıklayın",
|
||||
@@ -2127,6 +2165,12 @@
|
||||
"permalink.error.title": "İleti Bulunamadı",
|
||||
"post_attachment.collapse": "Daha az...",
|
||||
"post_attachment.more": "Daha çok...",
|
||||
"post_body.check_for_out_of_channel_mentions.link.and": " ve ",
|
||||
"post_body.check_for_out_of_channel_mentions.link.private": "bu özel kanala eklemek ister misiniz",
|
||||
"post_body.check_for_out_of_channel_mentions.link.public": "kanala eklemek ister misiniz",
|
||||
"post_body.check_for_out_of_channel_mentions.message.multiple": "anılmış ancak kanalda değiller. Onları ",
|
||||
"post_body.check_for_out_of_channel_mentions.message.one": "anılmış ancak kanalda değil. Onu ",
|
||||
"post_body.check_for_out_of_channel_mentions.message_last": "? Tüm ileti geçmişini görebilirler.",
|
||||
"post_body.commentedOn": "{name}{apostrophe} iletisine yorum yapıldı: ",
|
||||
"post_body.deleted": "(ileti silindi)",
|
||||
"post_body.plusMore": " ek {count, number} diğer {count, plural, one {file} other {files}}",
|
||||
@@ -2222,15 +2266,13 @@
|
||||
"search_item.direct": "Doğrudan İleti ({username} ile)",
|
||||
"search_item.jump": "Görüntüle",
|
||||
"search_results.noResults": "Herhangi bir sonuç bulunamadı. Yeniden denemek ister misiniz?",
|
||||
"search_results.noResults.partialPhraseSuggestion": "If you're searching a partial phrase (ex. searching \"rea\", looking for \"reach\" or \"reaction\"), append a * to your search term.",
|
||||
"search_results.noResults.stopWordsSuggestion": "Two letter searches and common words like \"this\", \"a\" and \"is\" won't appear in search results due to excessive results returned.",
|
||||
"search_results.noResults.partialPhraseSuggestion": "Bir ifadenin bir bölümünü arıyorsanız (Örneğin \"arama\" ve \"aranabilir\" için \"ara\" ifadesi gibi), arama ifadenizde * kullanın (ara*).",
|
||||
"search_results.noResults.stopWordsSuggestion": "İki harfli aramalar ve \"this\", \"a\" ve \"is\" gibi sık kullanılan sözcükler arama sonuçlarını kalabalıklaştırmamak için görüntülenmez.",
|
||||
"search_results.searching": "Aranıyor...",
|
||||
"search_results.usage.dataRetention": "Only messages posted in the last {days} days are returned. Contact your System Administrator for more detail.",
|
||||
"search_results.usage.fromInSuggestion": "Use {fromUser} to find posts from specific users and {inChannel} to find posts in specific channels",
|
||||
"search_results.usage.fromInSuggestion.fromUser": "from:",
|
||||
"search_results.usage.fromInSuggestion.inChannel": "in:",
|
||||
"search_results.usage.phrasesSuggestion": "Use {quotationMarks} to search for phrases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"quotation marks\"",
|
||||
"search_results.usage.dataRetention": "Yalnız son {days} gündeki iletiler görüntülenir. Ayrıntılı bilgi almak için sistem yöneticiniz ile görüşün.",
|
||||
"search_results.usage.fromInSuggestion": "Belirli kullanıcıların iletilerini aramak için {fromUser}, belirli kanallardaki iletileri aramak için {inChannel} kullanın",
|
||||
"search_results.usage.phrasesSuggestion": "İfadeleri aramak için {quotationMarks} içine alarak kullanın",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"tırnak işaretleri\"",
|
||||
"search_results.usageFlag1": "Henüz işaretlediğiniz bir ileti yok.",
|
||||
"search_results.usageFlag2": "İleti ve yorumları işaretlemek için ",
|
||||
"search_results.usageFlag3": " zaman damgasının yanındaki simgeye tıklayın.",
|
||||
@@ -2380,6 +2422,7 @@
|
||||
"sso_signup.teamName": "Yeni takımın adını yazın",
|
||||
"sso_signup.team_error": "Lütfen bir takım adı yazın",
|
||||
"status_dropdown.set_away": "Uzakta",
|
||||
"status_dropdown.set_dnd": "Rahatsız Etmeyin",
|
||||
"status_dropdown.set_offline": "Çevrimdışı",
|
||||
"status_dropdown.set_online": "Çevrimiçi",
|
||||
"suggestion.loading": "Yükleniyor...",
|
||||
@@ -2496,6 +2539,7 @@
|
||||
"user.settings.custom_theme.centerChannelTitle": "Orta Kanal Biçemleri",
|
||||
"user.settings.custom_theme.codeTheme": "Kod Teması",
|
||||
"user.settings.custom_theme.copyPaste": "Tema renklerini paylaşmak için kopyalayıp yapıştırın:",
|
||||
"user.settings.custom_theme.dndIndicator": "Rahatsız Etmeyin İşareti",
|
||||
"user.settings.custom_theme.linkButtonTitle": "Düğme ve Bağlantı Biçemleri",
|
||||
"user.settings.custom_theme.linkColor": "Bağlantı Rengi",
|
||||
"user.settings.custom_theme.mentionBj": "Anma Vurgusu Art Alanı",
|
||||
@@ -2623,6 +2667,7 @@
|
||||
"user.settings.modal.general": "Genel",
|
||||
"user.settings.modal.notifications": "Bildirimler",
|
||||
"user.settings.modal.security": "Güvenlik",
|
||||
"user.settings.modal.sidebar": "Yan Çubuk",
|
||||
"user.settings.modal.title": "Hesap Ayarları",
|
||||
"user.settings.notifications.allActivity": "Tüm işlemler için",
|
||||
"user.settings.notifications.channelWide": "Kanal genelindeki anmalar \"@channel\", \"@all\", \"@here\"",
|
||||
@@ -2757,6 +2802,11 @@
|
||||
"user.settings.security.switchSaml": "SAML SSO kullanımına geç",
|
||||
"user.settings.security.title": "Güvenlik Ayarları",
|
||||
"user.settings.security.viewHistory": "Erişim Geçmişini Görüntüle",
|
||||
"user.settings.sidebar.after_seven_days": "7 gün boyunca ileti gönderilmediğinde",
|
||||
"user.settings.sidebar.autoCloseDMDesc": "Doğrudan İleti sohbetleri yan çubuktaki “+” düğmesi ya da Kanal Değiştirici (Ctrl+K) kullanılarak yeniden açılabilir.",
|
||||
"user.settings.sidebar.autoCloseDMTitle": "Doğrudan İletiler Otomatik Kapatılsın",
|
||||
"user.settings.sidebar.never": "Asla",
|
||||
"user.settings.sidebar.title": "Yan Çubuk Ayarları",
|
||||
"user.settings.tokens.cancel": "İptal",
|
||||
"user.settings.tokens.clickToEdit": "Kişisel erişim kodlarınızı yönetmek için 'Düzenle' üzerine tıklayın",
|
||||
"user.settings.tokens.confirmCreateButton": "Evet, Oluştur",
|
||||
@@ -2780,6 +2830,7 @@
|
||||
"user.settings.tokens.tokenId": "Erişim Kodu: ",
|
||||
"user.settings.tokens.userAccessTokensNone": "Herhangi bir kişisel erişim kodu yok.",
|
||||
"user_list.notFound": "Herhangi bir kullanıcı bulunamadı",
|
||||
"user_profile.account.editSettings": "Hesap Ayarlarını Düzenle",
|
||||
"user_profile.send.dm": "İletiyi Gönder",
|
||||
"user_profile.webrtc.call": "Görüntülü Görüşme Başlat",
|
||||
"user_profile.webrtc.offline": "Kullanıcı çevrimdışı",
|
||||
|
||||
@@ -269,10 +269,13 @@
|
||||
"admin.database.title": "数据库设置",
|
||||
"admin.developer.title": "开发人员设置",
|
||||
"admin.elasticsearch.bulkIndexButton.error": "计划批量索引任务失败:{error}",
|
||||
"admin.elasticsearch.bulkIndexingTitle": "Bulk Indexing:",
|
||||
"admin.elasticsearch.connectionUrlDescription": "Elasticsearch 服务器地址。{documentationLink}",
|
||||
"admin.elasticsearch.connectionUrlExample": "例如:\"https://elasticsearch.example.org:9200\"",
|
||||
"admin.elasticsearch.connectionUrlExample.documentationLinkText": "请见服务器架设说明文档,",
|
||||
"admin.elasticsearch.connectionUrlTitle": "服务器连接地址:",
|
||||
"admin.elasticsearch.createJob.help": "All posts in the database will be indexed from oldest to newest. Elasticsearch is available during indexing but search results may be incomplete until the indexing job is complete.",
|
||||
"admin.elasticsearch.createJob.title": "Index Now",
|
||||
"admin.elasticsearch.elasticsearch_test_button": "测试连接",
|
||||
"admin.elasticsearch.enableIndexingDescription": "当设为是时,新消息将自动被索引。搜索查询将在 \"开启 Elasticsearch 搜索\" 前使用数据库查询。{documentationLink}",
|
||||
"admin.elasticsearch.enableIndexingDescription.documentationLinkText": "在我们的文档里了解更多关于 Elasticsearch。",
|
||||
@@ -300,22 +303,6 @@
|
||||
"admin.elasticsearch.usernameDescription": "(设定) Elasticsearch 服务器验证用户名。",
|
||||
"admin.elasticsearch.usernameExample": "例如:\"elastic\"",
|
||||
"admin.elasticsearch.usernameTitle": "服务器用户名:",
|
||||
"admin.elasticsearchStatus.bulkIndexLabel": "批量创建索引:",
|
||||
"admin.elasticsearchStatus.cancelButton": "取消",
|
||||
"admin.elasticsearchStatus.status": "状态:",
|
||||
"admin.elasticsearchStatus.statusCancelled": "索引任务已取消。",
|
||||
"admin.elasticsearchStatus.statusError": "索引错误。",
|
||||
"admin.elasticsearchStatus.statusError.help": "Mattermost 建立 Elasticsearch 索引时发送错误:{error}",
|
||||
"admin.elasticsearchStatus.statusInProgress": "任务进行中。{percent}% 已完成。",
|
||||
"admin.elasticsearchStatus.statusInProgress.help": "索引建立正在服务器上进行中。如果 Elasticsearch 是开启的,搜索结果将在完成前可能不完整。",
|
||||
"admin.elasticsearchStatus.statusIndexingDisabled": "索引已禁用。",
|
||||
"admin.elasticsearchStatus.statusLoading": "加载中...",
|
||||
"admin.elasticsearchStatus.statusNoJobs": "列队里没有索引任务。",
|
||||
"admin.elasticsearchStatus.statusPending": "任务等待中。",
|
||||
"admin.elasticsearchStatus.statusPending.help": "索引建立正在服务器上进行中。如果 Elasticsearch 是开启的,搜索结果将在完成前可能不完整。",
|
||||
"admin.elasticsearchStatus.statusRequestCancel": "取消任务中...",
|
||||
"admin.elasticsearchStatus.statusSuccess": "索引已完成。",
|
||||
"admin.elasticsearchStatus.statusSuccess.help": "索引已完成并且新消息将自动被索引。",
|
||||
"admin.email.agreeHPNS": " 我理解并同意 Mattermost 推送提醒服务<a href=\"https://about.mattermost.com/hpns-terms/\" target=\"_blank\">服务条款</a>和<a href=\"https://about.mattermost.com/hpns-privacy/\" target='_blank'>隐私策略</a>。",
|
||||
"admin.email.allowEmailSignInDescription": "当设置为是时,Mattermost允许用户使用电子邮件地址和密码登入。",
|
||||
"admin.email.allowEmailSignInTitle": "开启使用邮件地址登入:",
|
||||
@@ -462,15 +449,15 @@
|
||||
"admin.gitlab.clientIdDescription": "通过上述指令登录gitlab获取该值",
|
||||
"admin.gitlab.clientIdExample": "例如 \"jcuS8PuvcpGhpgHhlcpT1Mx42pnqMxQY\"",
|
||||
"admin.gitlab.clientIdTitle": "应用程序 ID",
|
||||
"admin.gitlab.clientSecretDescription": "通过上述指令登录GitLab获取该值。",
|
||||
"admin.gitlab.clientSecretDescription": "通过上述指令登录 GitLab 获取该值。",
|
||||
"admin.gitlab.clientSecretExample": "例如 \"jcuS8PuvcpGhpgHhlcpT1Mx42pnqMxQY\"",
|
||||
"admin.gitlab.clientSecretTitle": "应用程序密钥:",
|
||||
"admin.gitlab.enableDescription": "当设置为是时,Mattermost允许使用GitLab OAuth创建团队和注册账户。",
|
||||
"admin.gitlab.enableTitle": "启用GitLab认证:",
|
||||
"admin.gitlab.settingsTitle": "GitLab设置",
|
||||
"admin.gitlab.siteUrl": "GitLab Site URL: ",
|
||||
"admin.gitlab.siteUrl": "GitLab 网址:",
|
||||
"admin.gitlab.siteUrlDescription": "Enter the URL of your GitLab instance, e.g. https://example.com:3000. If your GitLab instance is not set up with SSL, start the URL with http:// instead of https://.",
|
||||
"admin.gitlab.siteUrlExample": "E.g.: https://",
|
||||
"admin.gitlab.siteUrlExample": "例如 https://",
|
||||
"admin.gitlab.tokenTitle": "令牌端点:",
|
||||
"admin.gitlab.userTitle": "用户API 端点:",
|
||||
"admin.google.EnableHtmlDesc": "<ol><li><a target='_blank' href='https://accounts.google.com/login'>登入</a>到您的谷歌帐号。</li><li>到<a target='_blank' href='https://console.developers.google.com'>https://console.developers.google.com</a>,在左边导航点击<strong>凭证</strong>后输入\"Mattermost - your-company-name\"为<strong>项目名</strong>,然后点击<strong>创建</strong>。</li><li>点击<strong>OAuth 同意页面</strong>标题并输入\"Mattermost\" 做为<strong>显示给用户的产品名</strong>,然后点击<strong>保存</strong>。</li><li>在<strong>凭证</strong>标题下,点击<strong>创建凭证</strong>,选择<strong>OAuth客户端ID</strong>并选择<strong>网页应用</strong>。</li><li>在<strong>限制</strong>和<strong>经认可的重指向网址</strong>下输入<strong>your-mattermost-url/signup/google/complete</strong> (例: http://localhost:8065/signup/google/complete)。点击<strong>创建</strong>。</li><li>粘贴<strong>客户端ID</strong>和<strong>客户端秘密</strong>到以下栏,然后点击<strong>保存</strong>。</li><li>最后,到<a target='_blank' href='https://console.developers.google.com/apis/api/plus/overview'>Google+ API</a>并点击<strong>启用</strong>。这可能需要几分钟时间让谷歌服务器同步数据。</li></ol>",
|
||||
@@ -548,6 +535,8 @@
|
||||
"admin.ldap.emailAttrEx": "例如 \"mail\" 或 \"userPrincipalName\"",
|
||||
"admin.ldap.emailAttrTitle": "电子邮箱属性:",
|
||||
"admin.ldap.enableDesc": "当设置为是时,Mattermost 允许使用 AD/LDAP 登录",
|
||||
"admin.ldap.enableSyncDesc": "When true, Mattermost periodically synchronizes users from AD/LDAP.",
|
||||
"admin.ldap.enableSyncTitle": "开启于AD/LDAP 同步:",
|
||||
"admin.ldap.enableTitle": "开启 AD/LDAP 登入:",
|
||||
"admin.ldap.firstnameAttrDesc": "(可选) AD/LDAP服务器中的属性用来填充 Mattermost 用户的名字。当设置后,用户将没法修改他们的名字,因为它时和 LDAP 服务器同步的。当留空时,用户可以在帐号设置里修改名字。",
|
||||
"admin.ldap.firstnameAttrEx": "例如 \"givenName\"",
|
||||
@@ -640,6 +629,7 @@
|
||||
"admin.logs.title": "服务器日志",
|
||||
"admin.manage_roles.additionalRoles": "选择帐号额外的权限。<a href=\"https://about.mattermost.com/default-permissions\" target=\"_blank\">阅读更多关于角色于权限</a>。",
|
||||
"admin.manage_roles.allowUserAccessTokens": "允许此帐号生成<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">个人访问令牌</a>。",
|
||||
"admin.manage_roles.allowUserAccessTokensDesc": "Removing this permission doesn't delete existing tokens. To delete them, go to the user's Manage Tokens menu.",
|
||||
"admin.manage_roles.cancel": "取消",
|
||||
"admin.manage_roles.manageRolesTitle": "管理角色",
|
||||
"admin.manage_roles.postAllPublicRole": "允许发送消息到所有 Mattermost 公开频道。",
|
||||
@@ -651,7 +641,7 @@
|
||||
"admin.manage_roles.systemAdmin": "系统管理员",
|
||||
"admin.manage_roles.systemMember": "成员",
|
||||
"admin.manage_tokens.manageTokensTitle": "管理个人访问令牌",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "个人访问令牌功能于会话令牌类似并可以让整合用来<a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">与 REST API 验证</a>。了解更多关于<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">个人访问令牌</a>。",
|
||||
"admin.manage_tokens.userAccessTokensDescription": "个人访问令牌功能于会话令牌类似并可以让整合用来<a href=\"https://about.mattermost.com/default-api-authentication\" target=\"_blank\">与本 Mattermost 服务器互动</a>。如果用户被停用,令牌也会被停用。了解更多关于<a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">个人访问令牌</a>。",
|
||||
"admin.manage_tokens.userAccessTokensNone": "无个人访问令牌。",
|
||||
"admin.metrics.enableDescription": "当设置为是时,Mattermost 会启用性能监控收集和分析。请查看<a href=\"http://docs.mattermost.com/deployment/metrics.html\" target='_blank'>文档</a>了解更多Mattermost 性能监控配置信息。",
|
||||
"admin.metrics.enableTitle": "开启性能监视:",
|
||||
@@ -698,16 +688,17 @@
|
||||
"admin.password.requirementsDescription": "有效的密码所需的字符类型。",
|
||||
"admin.password.symbol": "至少有一个符号 (例如:\"~!@#$%^&*()\")",
|
||||
"admin.password.uppercase": "至少有一个大写字母",
|
||||
"admin.plugin.activeTitle": "开启的插件:",
|
||||
"admin.plugin.banner": "插件为实验功能并不推荐在正式环境使用。",
|
||||
"admin.plugin.desc": "描述:",
|
||||
"admin.plugin.error.activate": "无法上传插件。可能和现有的插件冲突。",
|
||||
"admin.plugin.error.extract": "解压插件时发送错误。确认您的插件内容后再次尝试。",
|
||||
"admin.plugin.id": "ID:",
|
||||
"admin.plugin.installedDesc": "Installed plugins on your Mattermost server. Pre-packaged plugins are installed by default, and can be deactivated but not removed.",
|
||||
"admin.plugin.installedTitle": "Installed Plugins: ",
|
||||
"admin.plugin.management.title": "Management",
|
||||
"admin.plugin.no_plugins": "没有已启用的插件。",
|
||||
"admin.plugin.remove": "移除",
|
||||
"admin.plugin.removing": "移除中...",
|
||||
"admin.plugin.title": "插件 (实验)",
|
||||
"admin.plugin.upload": "上传",
|
||||
"admin.plugin.uploadDesc": "上传插件到您的 Mattermost 服务器。添加或删除插件将需要用户在浏览器刷新页面或者桌面应用。参见<a href=\"https://about.mattermost.com/default-plugins\">文档</a>了解等多。",
|
||||
"admin.plugin.uploadTitle": "上传插件:",
|
||||
@@ -725,6 +716,11 @@
|
||||
"admin.plugins.jira.userDescription": "选择此整合关联的用户名。",
|
||||
"admin.plugins.jira.userLabel": "用户:",
|
||||
"admin.plugins.jira.webhookDocsLink": "文档",
|
||||
"admin.plugins.settings.enable": "Enable Plugins: ",
|
||||
"admin.plugins.settings.enableDesc": "When true, enables plugins on your Mattermost server. Use plugins to integrate with third-party systems, extend functionality or customize the user interface of your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugins\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.enableUploads": "Enable Plugin Uploads: ",
|
||||
"admin.plugins.settings.enableUploadsDesc": "When true, enables plugin uploads by System Admins at <strong>Plugins > Management</strong>. If you do not plan to upload a plugin, set to false to control which plugins are installed on your server. See <a href=\"https://about.mattermost.com/default-plugins-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.title": "Configuration",
|
||||
"admin.privacy.showEmailDescription": "当设为否时,从除了系统管理员外隐藏成员的电子邮件。",
|
||||
"admin.privacy.showEmailTitle": "显示电子邮箱地址:",
|
||||
"admin.privacy.showFullNameDescription": "当设为否时,从除了系统管理员外隐藏成员的姓名。姓名将被用户名取代。",
|
||||
@@ -768,9 +764,9 @@
|
||||
"admin.requestButton.loading": " 加载中...",
|
||||
"admin.requestButton.requestFailure": "测试失败:{error}",
|
||||
"admin.requestButton.requestSuccess": "测试成功",
|
||||
"admin.reset_password.close": "关闭",
|
||||
"admin.reset_password.cancel": "取消",
|
||||
"admin.reset_password.newPassword": "新密码",
|
||||
"admin.reset_password.select": "选择",
|
||||
"admin.reset_password.reset": "复位",
|
||||
"admin.reset_password.submit": "请输入至少{chars}个字符。",
|
||||
"admin.reset_password.titleReset": "重置密码",
|
||||
"admin.reset_password.titleSwitch": "切换到电子邮件/密码的账户",
|
||||
@@ -783,6 +779,8 @@
|
||||
"admin.saml.emailAttrEx": "例如 \"Email\" 或 \"PrimaryEmail\"",
|
||||
"admin.saml.emailAttrTitle": "邮箱属性:",
|
||||
"admin.saml.enableDescription": "当设为是时,Mattermost 允许通过 SAML 2.0 登陆。请参考<a href='http://docs.mattermost.com/deployment/sso-saml.html' target='_blank'>文档</a>了解 Mattermost 配置 SAML。",
|
||||
"admin.saml.enableSyncWithLdapDescription": "When true, Mattermost periodically synchronizes SAML user attributes, including user deactivation and removal, from AD/LDAP. Enable and configure synchronization settings at <strong>Authentication > AD/LDAP</strong>. See <a href='https://about.mattermost.com/default-saml-ldap-sync' target='_blank'>documentation</a> to learn more.",
|
||||
"admin.saml.enableSyncWithLdapTitle": "Enable Synchronizing SAML Accounts With AD/LDAP:",
|
||||
"admin.saml.enableTitle": "开启 SAML 2.0 登入:",
|
||||
"admin.saml.encryptDescription": "当设为否时,Mattermost 将不会用使用您的服务提供者公开证书解密 SAML 断言。不推荐在正式环境中使用。仅供测试。",
|
||||
"admin.saml.encryptTitle": "开启加密:",
|
||||
@@ -958,6 +956,7 @@
|
||||
"admin.sidebar.other": "其他",
|
||||
"admin.sidebar.password": "密码",
|
||||
"admin.sidebar.plugins": "插件 (实验)",
|
||||
"admin.sidebar.plugins.configuration": "Configuration",
|
||||
"admin.sidebar.policy": "策略",
|
||||
"admin.sidebar.privacy": "隐私",
|
||||
"admin.sidebar.publicLinks": "公开链接",
|
||||
@@ -1436,6 +1435,9 @@
|
||||
"delete_post.post": "发布",
|
||||
"delete_post.question": "您确认要删除{term}?",
|
||||
"delete_post.warning": "此消息有 {count, number} 条评论。",
|
||||
"discard_changes_modal.leave": "是的,抛弃",
|
||||
"discard_changes_modal.message": "您有未保存的更改,您确定你想要抛弃他们吗?",
|
||||
"discard_changes_modal.title": "抛弃修改?",
|
||||
"edit_channel_header.editHeader": "修改频道标题...",
|
||||
"edit_channel_header.previewHeader": "编辑标题",
|
||||
"edit_channel_header_modal.cancel": "取消",
|
||||
@@ -1865,6 +1867,8 @@
|
||||
"mobile.about.appVersion": "应用版本:{version} (Build {number})",
|
||||
"mobile.about.copyright": "版权所有 2015-{currentYear} Mattermost, Inc. 保留所有权利",
|
||||
"mobile.about.database": "数据库:{type}",
|
||||
"mobile.about.licensed": "许可给:{company}",
|
||||
"mobile.about.powered_by": "{site} is powered by Mattermost",
|
||||
"mobile.about.serverVersion": "服务端版本:{version} (Build {number})",
|
||||
"mobile.about.serverVersionNoBuild": "服务端版本:{version}",
|
||||
"mobile.account.notifications.email.footer": "当离线或离开超过五分钟",
|
||||
@@ -1878,7 +1882,15 @@
|
||||
"mobile.advanced_settings.reset_message": "\n这将清除所有离线数据并重启应用。您将会在应用重启后自动登入。\n",
|
||||
"mobile.advanced_settings.reset_title": "重置缓存",
|
||||
"mobile.advanced_settings.title": "高级设置",
|
||||
"mobile.channel_drawer.search": "Jump to...",
|
||||
"mobile.android.camera_permission_denied_description": "To take photos and videos with your camera, please change your permission settings.",
|
||||
"mobile.android.camera_permission_denied_title": "需要摄像头权限",
|
||||
"mobile.android.permission_denied_dismiss": "解除",
|
||||
"mobile.android.permission_denied_retry": "设置权限",
|
||||
"mobile.android.photos_permission_denied_description": "To upload images from your library, please change your permission settings.",
|
||||
"mobile.android.photos_permission_denied_title": "Photo library access is required",
|
||||
"mobile.android.videos_permission_denied_description": "To upload videos from your library, please change your permission settings.",
|
||||
"mobile.android.videos_permission_denied_title": "Video library access is required",
|
||||
"mobile.channel_drawer.search": "转条到...",
|
||||
"mobile.channel_info.alertMessageDeleteChannel": "您确定要删除{term} {name}?",
|
||||
"mobile.channel_info.alertMessageLeaveChannel": "您确定要离开{term} {name}?",
|
||||
"mobile.channel_info.alertNo": "否",
|
||||
@@ -1903,6 +1915,19 @@
|
||||
"mobile.channel_list.privateChannel": "私有频道",
|
||||
"mobile.channel_list.publicChannel": "公共频道",
|
||||
"mobile.channel_list.unreads": "未读数",
|
||||
"mobile.client_upgrade": "更新应用",
|
||||
"mobile.client_upgrade.can_upgrade_subtitle": "有新版本可下载。",
|
||||
"mobile.client_upgrade.can_upgrade_title": "有可用更新",
|
||||
"mobile.client_upgrade.close": "稍后更新",
|
||||
"mobile.client_upgrade.current_version": "最新版本:{version}",
|
||||
"mobile.client_upgrade.download_error.message": "下载新版本时出现错误。",
|
||||
"mobile.client_upgrade.download_error.title": "无法安装更新",
|
||||
"mobile.client_upgrade.latest_version": "您的版本:{version}",
|
||||
"mobile.client_upgrade.must_upgrade_subtitle": "请更新应用后继续。",
|
||||
"mobile.client_upgrade.must_upgrade_title": "需要更新",
|
||||
"mobile.client_upgrade.no_upgrade_subtitle": "您已经拥有最新的版本。",
|
||||
"mobile.client_upgrade.no_upgrade_title": "您的应用已最新",
|
||||
"mobile.client_upgrade.upgrade": "更新",
|
||||
"mobile.components.channels_list_view.yourChannels": "您的频道:",
|
||||
"mobile.components.error_list.dismiss_all": "关闭所有",
|
||||
"mobile.components.select_server_view.continue": "继续",
|
||||
@@ -1932,6 +1957,8 @@
|
||||
"mobile.file_upload.more": "更多",
|
||||
"mobile.file_upload.video": "视频库",
|
||||
"mobile.help.title": "帮助",
|
||||
"mobile.image_preview.deleted_post_message": "This post and it's files have been deleted. The previewer will now be closed.",
|
||||
"mobile.image_preview.deleted_post_title": "消息已删除",
|
||||
"mobile.image_preview.save": "保存图片",
|
||||
"mobile.intro_messages.DM": "这是您和{teammate}私信记录的开端。此区域外的人不能看到这里共享的私信和文件。",
|
||||
"mobile.intro_messages.default_message": "这是团队成员注册后第一个看到的频道 - 使用它发布所有人需要知道的消息。",
|
||||
@@ -1945,7 +1972,10 @@
|
||||
"mobile.managed.exit": "退出",
|
||||
"mobile.managed.jailbreak": "越狱的设备不被 {vendor} 信任,请退出应用。",
|
||||
"mobile.managed.secured_by": "被 {vendor} 安全保护",
|
||||
"mobile.markdown.code.copy_code": "复制代码",
|
||||
"mobile.markdown.code.plusMoreLines": "+ 还有 {count, number} 行",
|
||||
"mobile.markdown.link.copy_url": "复制网址",
|
||||
"mobile.mention.copy_mention": "复制提及",
|
||||
"mobile.more_dms.start": "开始",
|
||||
"mobile.more_dms.title": "新建对话",
|
||||
"mobile.notice_mobile_link": "移动应用",
|
||||
@@ -1994,6 +2024,7 @@
|
||||
"mobile.post.failed_title": "无法发送您的消息",
|
||||
"mobile.post.retry": "刷新",
|
||||
"mobile.post_info.add_reaction": "添加反应",
|
||||
"mobile.post_info.copy_post": "复制消息",
|
||||
"mobile.request.invalid_response": "从服务器收到了无效回应。",
|
||||
"mobile.retry_message": "刷新消息失败。拉上以重试。",
|
||||
"mobile.routes.channelInfo": "信息",
|
||||
@@ -2037,13 +2068,20 @@
|
||||
"mobile.settings.clear": "清除离线储存",
|
||||
"mobile.settings.clear_button": "清除",
|
||||
"mobile.settings.clear_message": "\n这将清除所有离线数据并重启应用。您将会在应用重启后自动登入。\n",
|
||||
"mobile.settings.modal.check_for_upgrade": "检查更新",
|
||||
"mobile.settings.team_selection": "团队选择",
|
||||
"mobile.suggestion.members": "成员",
|
||||
"modal.manaul_status.ask": "不要再次询问",
|
||||
"modal.manaul_status.button": "是,设置我的状态为 \"在线\"",
|
||||
"modal.manaul_status.cancel": "不,保留为 \"{status}\"",
|
||||
"modal.manaul_status.message": "您想要切换状态为 \"在线\" 吗?",
|
||||
"modal.manaul_status.title": "您的状态已设置为 \"{status}\"",
|
||||
"modal.manaul_status.title_": "您的状态已设置为 \"{status}\"",
|
||||
"modal.manaul_status.title_away": "您的状态已设置为 \"离开\"",
|
||||
"modal.manaul_status.title_dnd": "您的状态已设置为 \"勿打扰\"",
|
||||
"modal.manaul_status.title_offline": "您的状态已设置为 \"离线\"",
|
||||
"modal.manual_status.cancel_": "不,保留为 \"{status}\"",
|
||||
"modal.manual_status.cancel_away": "不,保留为 \"离开\"",
|
||||
"modal.manual_status.cancel_dnd": "不,保留为 \"勿打扰\"",
|
||||
"modal.manual_status.cancel_offline": "不,保留为 \"离线\"",
|
||||
"more_channels.close": "关闭",
|
||||
"more_channels.create": "创建新频道",
|
||||
"more_channels.createClick": "点击'创建新频道'创建一个新的频道",
|
||||
@@ -2127,6 +2165,12 @@
|
||||
"permalink.error.title": "未找到消息",
|
||||
"post_attachment.collapse": "收起...",
|
||||
"post_attachment.more": "展开...",
|
||||
"post_body.check_for_out_of_channel_mentions.link.and": " 以及 ",
|
||||
"post_body.check_for_out_of_channel_mentions.link.private": "添加他们到此私有频道",
|
||||
"post_body.check_for_out_of_channel_mentions.link.public": "添加他们到频道",
|
||||
"post_body.check_for_out_of_channel_mentions.message.multiple": "were mentioned but they are not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message.one": "was mentioned but is not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message_last": "? They will have access to all message history.",
|
||||
"post_body.commentedOn": "对 {name}{apostrophe} 的信息评论:",
|
||||
"post_body.deleted": "(消息被删除)",
|
||||
"post_body.plusMore": " 以及 {count, number} 个其他文件",
|
||||
@@ -2227,8 +2271,6 @@
|
||||
"search_results.searching": "正在搜索...",
|
||||
"search_results.usage.dataRetention": "Only messages posted in the last {days} days are returned. Contact your System Administrator for more detail.",
|
||||
"search_results.usage.fromInSuggestion": "Use {fromUser} to find posts from specific users and {inChannel} to find posts in specific channels",
|
||||
"search_results.usage.fromInSuggestion.fromUser": "from:",
|
||||
"search_results.usage.fromInSuggestion.inChannel": "in:",
|
||||
"search_results.usage.phrasesSuggestion": "Use {quotationMarks} to search for phrases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"quotation marks\"",
|
||||
"search_results.usageFlag1": "您还没标记任何信息。",
|
||||
@@ -2380,6 +2422,7 @@
|
||||
"sso_signup.teamName": "输入新团队名",
|
||||
"sso_signup.team_error": "输入团队名",
|
||||
"status_dropdown.set_away": "离开",
|
||||
"status_dropdown.set_dnd": "请勿打扰",
|
||||
"status_dropdown.set_offline": "离线",
|
||||
"status_dropdown.set_online": "在线",
|
||||
"suggestion.loading": "加载中...",
|
||||
@@ -2496,6 +2539,7 @@
|
||||
"user.settings.custom_theme.centerChannelTitle": "中间栏样式",
|
||||
"user.settings.custom_theme.codeTheme": "代码主题",
|
||||
"user.settings.custom_theme.copyPaste": "复制和粘贴分享主题颜色: ",
|
||||
"user.settings.custom_theme.dndIndicator": "Do Not Disturb Indicator",
|
||||
"user.settings.custom_theme.linkButtonTitle": "链接已经按钮样式",
|
||||
"user.settings.custom_theme.linkColor": "链接颜色",
|
||||
"user.settings.custom_theme.mentionBj": "被提及重要人BG",
|
||||
@@ -2623,6 +2667,7 @@
|
||||
"user.settings.modal.general": "基本",
|
||||
"user.settings.modal.notifications": "通知",
|
||||
"user.settings.modal.security": "安全",
|
||||
"user.settings.modal.sidebar": "侧边栏",
|
||||
"user.settings.modal.title": "账户设置",
|
||||
"user.settings.notifications.allActivity": "所有活动",
|
||||
"user.settings.notifications.channelWide": "频道范围提及 \"@channel\", \"@all\", \"@here\"",
|
||||
@@ -2757,6 +2802,11 @@
|
||||
"user.settings.security.switchSaml": "切换到使用 SAML SSO",
|
||||
"user.settings.security.title": "安全设置",
|
||||
"user.settings.security.viewHistory": "查看访问历史",
|
||||
"user.settings.sidebar.after_seven_days": "After 7 days with no new messages",
|
||||
"user.settings.sidebar.autoCloseDMDesc": "Direct Message conversations can be reopened with the “+” button in the sidebar or using the Channel Switcher (CTRL+K).",
|
||||
"user.settings.sidebar.autoCloseDMTitle": "Automatically Close Direct Messages",
|
||||
"user.settings.sidebar.never": "从不",
|
||||
"user.settings.sidebar.title": "侧边栏设置",
|
||||
"user.settings.tokens.cancel": "取消",
|
||||
"user.settings.tokens.clickToEdit": "点击 '更改' 以管理您的个人访问令牌",
|
||||
"user.settings.tokens.confirmCreateButton": "是,创建",
|
||||
@@ -2780,6 +2830,7 @@
|
||||
"user.settings.tokens.tokenId": "令牌 ID:",
|
||||
"user.settings.tokens.userAccessTokensNone": "无个人访问令牌。",
|
||||
"user_list.notFound": "没有找到用户",
|
||||
"user_profile.account.editSettings": "修改账户设置",
|
||||
"user_profile.send.dm": "发送消息",
|
||||
"user_profile.webrtc.call": "开始视频通话",
|
||||
"user_profile.webrtc.offline": "此用户已离线",
|
||||
|
||||
@@ -269,10 +269,13 @@
|
||||
"admin.database.title": "資料庫設定",
|
||||
"admin.developer.title": "開發者設定",
|
||||
"admin.elasticsearch.bulkIndexButton.error": "排程批次索引工作時失敗:{error}",
|
||||
"admin.elasticsearch.bulkIndexingTitle": "Bulk Indexing:",
|
||||
"admin.elasticsearch.connectionUrlDescription": "Elasticsearch 伺服器的位址。{documentationLink}",
|
||||
"admin.elasticsearch.connectionUrlExample": "如:\"https://elasticsearch.example.org:9200\"",
|
||||
"admin.elasticsearch.connectionUrlExample.documentationLinkText": "請參閱設定伺服器步驟的文件",
|
||||
"admin.elasticsearch.connectionUrlTitle": "伺服器連線位址:",
|
||||
"admin.elasticsearch.createJob.help": "All posts in the database will be indexed from oldest to newest. Elasticsearch is available during indexing but search results may be incomplete until the indexing job is complete.",
|
||||
"admin.elasticsearch.createJob.title": "Index Now",
|
||||
"admin.elasticsearch.elasticsearch_test_button": "測試連線",
|
||||
"admin.elasticsearch.enableIndexingDescription": "啟用時,新訊息將會被自動索引。在\"啟用 Elasticsearch 檢索\"前,檢索將會使用資料庫搜尋。{documentationLink}",
|
||||
"admin.elasticsearch.enableIndexingDescription.documentationLinkText": "Elasticsearch 詳情請參閱文件。",
|
||||
@@ -300,22 +303,6 @@
|
||||
"admin.elasticsearch.usernameDescription": "(非必要) 用以跟 Elasticsearch 伺服器認證的使用者名稱。",
|
||||
"admin.elasticsearch.usernameExample": "如:\"elastic\"",
|
||||
"admin.elasticsearch.usernameTitle": "伺服器使用者名稱:",
|
||||
"admin.elasticsearchStatus.bulkIndexLabel": "批次索引:",
|
||||
"admin.elasticsearchStatus.cancelButton": "取消",
|
||||
"admin.elasticsearchStatus.status": "狀態:",
|
||||
"admin.elasticsearchStatus.statusCancelled": "索引工作已取消。",
|
||||
"admin.elasticsearchStatus.statusError": "索引錯誤。",
|
||||
"admin.elasticsearchStatus.statusError.help": "建立 Elasticsearch 索引時 Mattermost 遇到錯誤:{error}",
|
||||
"admin.elasticsearchStatus.statusInProgress": "工作進行中。完成度 {percent}% 。",
|
||||
"admin.elasticsearchStatus.statusInProgress.help": "建立索引正在工作伺服器上執行。如果啟用了 Elasticsearch,在工作完成前檢索結果可能會不完整。",
|
||||
"admin.elasticsearchStatus.statusIndexingDisabled": "已停用建立索引。",
|
||||
"admin.elasticsearchStatus.statusLoading": "讀取中…",
|
||||
"admin.elasticsearchStatus.statusNoJobs": "沒有建立索引的工作在佇列中。",
|
||||
"admin.elasticsearchStatus.statusPending": "工作擱置中。",
|
||||
"admin.elasticsearchStatus.statusPending.help": "建立 Elasticsearch 索引已在工作伺服器上被排入佇列。如果啟用了 Elasticsearch,在工作完成前檢索結果可能會不完整。",
|
||||
"admin.elasticsearchStatus.statusRequestCancel": "取消工作中...",
|
||||
"admin.elasticsearchStatus.statusSuccess": "索引完成。",
|
||||
"admin.elasticsearchStatus.statusSuccess.help": "完成索引,新的訊息將會被自動索引。",
|
||||
"admin.email.agreeHPNS": " 我理解並接受 Mattermost Hosted 推播通知服務<a href=\"https://about.mattermost.com/hpns-terms/\" target='_blank'>服務條款</a>與<a href=\"https://about.mattermost.com/hpns-privacy/\" target='_blank'>隱私政策</a>。",
|
||||
"admin.email.allowEmailSignInDescription": "啟用時 Mattermost 允許使用者用他們的電子郵件與密碼登入。",
|
||||
"admin.email.allowEmailSignInTitle": "啟用電子郵件登入:",
|
||||
@@ -548,6 +535,8 @@
|
||||
"admin.ldap.emailAttrEx": "如:\"mail\"或\"userPrincipalName\"",
|
||||
"admin.ldap.emailAttrTitle": "電子郵件位址屬性:",
|
||||
"admin.ldap.enableDesc": "啟用時,Mattermost 允許使用 AD/LDAP 登入",
|
||||
"admin.ldap.enableSyncDesc": "When true, Mattermost periodically synchronizes users from AD/LDAP.",
|
||||
"admin.ldap.enableSyncTitle": "Enable Synchronization with AD/LDAP:",
|
||||
"admin.ldap.enableTitle": "啟用 AD/LDAP 登入:",
|
||||
"admin.ldap.firstnameAttrDesc": "(非必須) 用於設定 Mattermost 使用者名字的 AD/LDAP 伺服器屬性。當設定之後由於將會跟 LDAP 伺服器同步名字,使用者將無法編輯。留白時使用者可以在帳號設定中設定他們自己的名字。",
|
||||
"admin.ldap.firstnameAttrEx": "如:\"givenName\"",
|
||||
@@ -640,6 +629,7 @@
|
||||
"admin.logs.title": "主機記錄",
|
||||
"admin.manage_roles.additionalRoles": "為此帳號選取額外的權限。 <a href=\"https://about.mattermost.com/default-permissions\" target=\"_blank\">關於角色與權限</a>。",
|
||||
"admin.manage_roles.allowUserAccessTokens": "允許此帳號產生 <a href=\"https://about.mattermost.com/default-user-access-tokens\" target=\"_blank\">個人存取 Token</a>.",
|
||||
"admin.manage_roles.allowUserAccessTokensDesc": "Removing this permission doesn't delete existing tokens. To delete them, go to the user's Manage Tokens menu.",
|
||||
"admin.manage_roles.cancel": "取消",
|
||||
"admin.manage_roles.manageRolesTitle": "管理角色",
|
||||
"admin.manage_roles.postAllPublicRole": "允許在所有的公開頻道發布訊息。",
|
||||
@@ -698,16 +688,17 @@
|
||||
"admin.password.requirementsDescription": "有效密碼所應有的字元類型。",
|
||||
"admin.password.symbol": "至少一個符號(\"~!@#$%^&*()\")",
|
||||
"admin.password.uppercase": "至少一個大寫英文字母",
|
||||
"admin.plugin.activeTitle": "啟動的模組:",
|
||||
"admin.plugin.banner": "模組為實驗功能,不建議在線上環境中使用。",
|
||||
"admin.plugin.desc": "描述:",
|
||||
"admin.plugin.error.activate": "無法上傳模組。可能跟伺服器上其他模組衝突。",
|
||||
"admin.plugin.error.extract": "解壓縮模組時發生錯誤。請重新檢閱模組檔案並再次嘗試。",
|
||||
"admin.plugin.id": "ID:",
|
||||
"admin.plugin.installedDesc": "Installed plugins on your Mattermost server. Pre-packaged plugins are installed by default, and can be deactivated but not removed.",
|
||||
"admin.plugin.installedTitle": "Installed Plugins: ",
|
||||
"admin.plugin.management.title": "Management",
|
||||
"admin.plugin.no_plugins": "沒有啟動的模組。",
|
||||
"admin.plugin.remove": "移除",
|
||||
"admin.plugin.removing": "移除中...",
|
||||
"admin.plugin.title": "模組 (實驗功能)",
|
||||
"admin.plugin.upload": "上傳",
|
||||
"admin.plugin.uploadDesc": "上傳模組至 Mattermost 伺服器。新增或移除網頁應用程式模組需要使用者重新整理瀏覽器或桌面應用程式才能生效。詳情請參閱<a href=\"https://about.mattermost.com/default-plugins\">文件</a>。",
|
||||
"admin.plugin.uploadTitle": "上傳模組:",
|
||||
@@ -725,6 +716,11 @@
|
||||
"admin.plugins.jira.userDescription": "選擇此外部整合依附的使用者名稱。",
|
||||
"admin.plugins.jira.userLabel": "使用者:",
|
||||
"admin.plugins.jira.webhookDocsLink": "說明文件",
|
||||
"admin.plugins.settings.enable": "Enable Plugins: ",
|
||||
"admin.plugins.settings.enableDesc": "When true, enables plugins on your Mattermost server. Use plugins to integrate with third-party systems, extend functionality or customize the user interface of your Mattermost server. See <a href=\"https://about.mattermost.com/default-plugins\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.enableUploads": "Enable Plugin Uploads: ",
|
||||
"admin.plugins.settings.enableUploadsDesc": "When true, enables plugin uploads by System Admins at <strong>Plugins > Management</strong>. If you do not plan to upload a plugin, set to false to control which plugins are installed on your server. See <a href=\"https://about.mattermost.com/default-plugins-uploads\" target=\"_blank\">documentation</a> to learn more.",
|
||||
"admin.plugins.settings.title": "Configuration",
|
||||
"admin.privacy.showEmailDescription": "選擇否時,對系統管理員以外的所有人隱藏成員的電子郵件位址",
|
||||
"admin.privacy.showEmailTitle": "顯示電子郵件地址:",
|
||||
"admin.privacy.showFullNameDescription": "選擇否時,對系統管理員以外的所有人隱藏成員的全名。顯示全名處改為顯示使用者名稱。",
|
||||
@@ -768,9 +764,9 @@
|
||||
"admin.requestButton.loading": " 載入中...",
|
||||
"admin.requestButton.requestFailure": "測試失敗:{error}",
|
||||
"admin.requestButton.requestSuccess": "測試成功",
|
||||
"admin.reset_password.close": "關閉",
|
||||
"admin.reset_password.cancel": "取消",
|
||||
"admin.reset_password.newPassword": "新密碼",
|
||||
"admin.reset_password.select": "選擇",
|
||||
"admin.reset_password.reset": "重置",
|
||||
"admin.reset_password.submit": "請輸入至少{chars}個字。",
|
||||
"admin.reset_password.titleReset": "重置密碼",
|
||||
"admin.reset_password.titleSwitch": "切換帳戶到電子郵件地址/密碼",
|
||||
@@ -783,6 +779,8 @@
|
||||
"admin.saml.emailAttrEx": "如:\"Email\"或\"PrimaryEmail\"",
|
||||
"admin.saml.emailAttrTitle": "電子郵件位址屬性:",
|
||||
"admin.saml.enableDescription": "啟用時,Mattermost 允許用 SAML 2.0 登入。詳細如何設定 Mattermost 和 SAML,請參閱<a href='http://docs.mattermost.com/deployment/sso-saml.html' target='_blank'>文件</a>。",
|
||||
"admin.saml.enableSyncWithLdapDescription": "When true, Mattermost periodically synchronizes SAML user attributes, including user deactivation and removal, from AD/LDAP. Enable and configure synchronization settings at <strong>Authentication > AD/LDAP</strong>. See <a href='https://about.mattermost.com/default-saml-ldap-sync' target='_blank'>documentation</a> to learn more.",
|
||||
"admin.saml.enableSyncWithLdapTitle": "Enable Synchronizing SAML Accounts With AD/LDAP:",
|
||||
"admin.saml.enableTitle": "啟用 SAML 2.0 登入:",
|
||||
"admin.saml.encryptDescription": "停用時,Mattermost 將不會解密經由服務提供者公開憑證加密的 SAML 宣告。不建議在正式環境中使用。僅供測試。",
|
||||
"admin.saml.encryptTitle": "啟用加密:",
|
||||
@@ -958,6 +956,7 @@
|
||||
"admin.sidebar.other": "其它",
|
||||
"admin.sidebar.password": "密碼",
|
||||
"admin.sidebar.plugins": "模組 (實驗功能)",
|
||||
"admin.sidebar.plugins.configuration": "Configuration",
|
||||
"admin.sidebar.policy": "政策",
|
||||
"admin.sidebar.privacy": "隱私",
|
||||
"admin.sidebar.publicLinks": "公開連結",
|
||||
@@ -1436,6 +1435,9 @@
|
||||
"delete_post.post": "訊息",
|
||||
"delete_post.question": "確定要刪除{term}嘛?",
|
||||
"delete_post.warning": "此訊息有 {count, number} 個註解。",
|
||||
"discard_changes_modal.leave": "是,放棄它們",
|
||||
"discard_changes_modal.message": "還有未儲存的變更,要放棄它們嘛?",
|
||||
"discard_changes_modal.title": "放棄變更?",
|
||||
"edit_channel_header.editHeader": "修改頻道標題",
|
||||
"edit_channel_header.previewHeader": "修改標題",
|
||||
"edit_channel_header_modal.cancel": "取消",
|
||||
@@ -1865,6 +1867,8 @@
|
||||
"mobile.about.appVersion": "應用程式版本:{version} (Build {number})",
|
||||
"mobile.about.copyright": "版權所有 2015-{currentYear} Mattermost, Inc. 保留所有權利",
|
||||
"mobile.about.database": "資料庫:{type}",
|
||||
"mobile.about.licensed": "Licensed to: {company}",
|
||||
"mobile.about.powered_by": "{site} is powered by Mattermost",
|
||||
"mobile.about.serverVersion": "伺服器版本:{version} (Build {number}) ",
|
||||
"mobile.about.serverVersionNoBuild": "伺服器版本:{version}",
|
||||
"mobile.account.notifications.email.footer": "當下線或是離開超過五分鐘時",
|
||||
@@ -1878,6 +1882,14 @@
|
||||
"mobile.advanced_settings.reset_message": "\n這將會清除所有離線資料並重新啟動 app 。在重啟 app 後會自動重新登入。\n",
|
||||
"mobile.advanced_settings.reset_title": "清除快取",
|
||||
"mobile.advanced_settings.title": "進階設定",
|
||||
"mobile.android.camera_permission_denied_description": "To take photos and videos with your camera, please change your permission settings.",
|
||||
"mobile.android.camera_permission_denied_title": "Camera access is required",
|
||||
"mobile.android.permission_denied_dismiss": "Dismiss",
|
||||
"mobile.android.permission_denied_retry": "Set permission",
|
||||
"mobile.android.photos_permission_denied_description": "To upload images from your library, please change your permission settings.",
|
||||
"mobile.android.photos_permission_denied_title": "Photo library access is required",
|
||||
"mobile.android.videos_permission_denied_description": "To upload videos from your library, please change your permission settings.",
|
||||
"mobile.android.videos_permission_denied_title": "Video library access is required",
|
||||
"mobile.channel_drawer.search": "Jump to...",
|
||||
"mobile.channel_info.alertMessageDeleteChannel": "確定要刪除{term} {name} 嘛?",
|
||||
"mobile.channel_info.alertMessageLeaveChannel": "確定要離開{term} {name} 嘛?",
|
||||
@@ -1903,6 +1915,19 @@
|
||||
"mobile.channel_list.privateChannel": "私人頻道",
|
||||
"mobile.channel_list.publicChannel": "公開頻道",
|
||||
"mobile.channel_list.unreads": "未讀",
|
||||
"mobile.client_upgrade": "Update App",
|
||||
"mobile.client_upgrade.can_upgrade_subtitle": "A new version is available for download.",
|
||||
"mobile.client_upgrade.can_upgrade_title": "Update Available",
|
||||
"mobile.client_upgrade.close": "Update Later",
|
||||
"mobile.client_upgrade.current_version": "伺服器版本:{version}",
|
||||
"mobile.client_upgrade.download_error.message": "An error occurred downloading the new version.",
|
||||
"mobile.client_upgrade.download_error.title": "Unable to Install Update",
|
||||
"mobile.client_upgrade.latest_version": "伺服器版本:{version}",
|
||||
"mobile.client_upgrade.must_upgrade_subtitle": "Please update the app to continue.",
|
||||
"mobile.client_upgrade.must_upgrade_title": "Update Required",
|
||||
"mobile.client_upgrade.no_upgrade_subtitle": "You already have the latest version.",
|
||||
"mobile.client_upgrade.no_upgrade_title": "Your App Is Up to Date",
|
||||
"mobile.client_upgrade.upgrade": "更新",
|
||||
"mobile.components.channels_list_view.yourChannels": "您的頻道:",
|
||||
"mobile.components.error_list.dismiss_all": "全部關閉",
|
||||
"mobile.components.select_server_view.continue": "繼續",
|
||||
@@ -1932,6 +1957,8 @@
|
||||
"mobile.file_upload.more": "更多",
|
||||
"mobile.file_upload.video": "媒體櫃",
|
||||
"mobile.help.title": "說明",
|
||||
"mobile.image_preview.deleted_post_message": "This post and it's files have been deleted. The previewer will now be closed.",
|
||||
"mobile.image_preview.deleted_post_title": "Post Deleted",
|
||||
"mobile.image_preview.save": "儲存圖片",
|
||||
"mobile.intro_messages.DM": "這是跟{teammate}之間直接訊息的起頭。直接訊息跟在這邊分享的檔案除了在此處以外的人都看不到。",
|
||||
"mobile.intro_messages.default_message": "這將是團隊成員註冊後第一個看到的頻道,請利用它張貼所有人都應該知道的事項。",
|
||||
@@ -1945,7 +1972,10 @@
|
||||
"mobile.managed.exit": "離開",
|
||||
"mobile.managed.jailbreak": "{vendor} 不信任越獄後的裝置,請關閉應用程式。",
|
||||
"mobile.managed.secured_by": "受到 {vendor} 保護",
|
||||
"mobile.markdown.code.copy_code": "Copy Code",
|
||||
"mobile.markdown.code.plusMoreLines": "還有 {count, number} 行",
|
||||
"mobile.markdown.link.copy_url": "Copy URL",
|
||||
"mobile.mention.copy_mention": "Copy Mention",
|
||||
"mobile.more_dms.start": "開始",
|
||||
"mobile.more_dms.title": "新對話",
|
||||
"mobile.notice_mobile_link": "行動裝置 App",
|
||||
@@ -1994,6 +2024,7 @@
|
||||
"mobile.post.failed_title": "無法傳送訊息",
|
||||
"mobile.post.retry": "重新整理",
|
||||
"mobile.post_info.add_reaction": "新增反應",
|
||||
"mobile.post_info.copy_post": "Copy Post",
|
||||
"mobile.request.invalid_response": "從伺服器傳來無效的回應。",
|
||||
"mobile.retry_message": "更新訊息失敗。請往上拖動以重新嘗試。",
|
||||
"mobile.routes.channelInfo": "相關資訊",
|
||||
@@ -2037,13 +2068,20 @@
|
||||
"mobile.settings.clear": "清除離線儲存資料",
|
||||
"mobile.settings.clear_button": "清除",
|
||||
"mobile.settings.clear_message": "\n這將會清除所有離線資料並重新啟動 app 。在重啟 app 後會自動重新登入。\n",
|
||||
"mobile.settings.modal.check_for_upgrade": "Check for Updates",
|
||||
"mobile.settings.team_selection": "選擇團隊",
|
||||
"mobile.suggestion.members": "成員",
|
||||
"modal.manaul_status.ask": "別再問我",
|
||||
"modal.manaul_status.button": "是,將狀態設定為\"線上\"",
|
||||
"modal.manaul_status.cancel": "否,保持為\"{status}\"",
|
||||
"modal.manaul_status.message": "要更改狀態為\"線上\"嘛?",
|
||||
"modal.manaul_status.title": "狀態為\"{status}\"",
|
||||
"modal.manaul_status.title_": "狀態為\"{status}\"",
|
||||
"modal.manaul_status.title_away": "狀態為\"{status}\"",
|
||||
"modal.manaul_status.title_dnd": "Your status is set to \"Do Not Disturb\"",
|
||||
"modal.manaul_status.title_offline": "狀態為\"{status}\"",
|
||||
"modal.manual_status.cancel_": "否,保持為\"{status}\"",
|
||||
"modal.manual_status.cancel_away": "No, keep it as \"Away\"",
|
||||
"modal.manual_status.cancel_dnd": "No, keep it as \"Do Not Disturb\"",
|
||||
"modal.manual_status.cancel_offline": "No, keep it as \"Offline\"",
|
||||
"more_channels.close": "關閉",
|
||||
"more_channels.create": "建立頻道",
|
||||
"more_channels.createClick": "按下'建立頻道'來建立新頻道",
|
||||
@@ -2127,6 +2165,12 @@
|
||||
"permalink.error.title": "找不到訊息",
|
||||
"post_attachment.collapse": "收起...",
|
||||
"post_attachment.more": "展開...",
|
||||
"post_body.check_for_out_of_channel_mentions.link.and": " and ",
|
||||
"post_body.check_for_out_of_channel_mentions.link.private": "add them to this private channel",
|
||||
"post_body.check_for_out_of_channel_mentions.link.public": "add them to the channel",
|
||||
"post_body.check_for_out_of_channel_mentions.message.multiple": "were mentioned but they are not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message.one": "was mentioned but is not in the channel. Would you like to ",
|
||||
"post_body.check_for_out_of_channel_mentions.message_last": "? They will have access to all message history.",
|
||||
"post_body.commentedOn": "對 {name}{apostrophe} 訊息的註解:",
|
||||
"post_body.deleted": "(訊息已刪除)",
|
||||
"post_body.plusMore": "以及其他 {count, number} 個檔案",
|
||||
@@ -2227,8 +2271,6 @@
|
||||
"search_results.searching": "搜尋中…",
|
||||
"search_results.usage.dataRetention": "Only messages posted in the last {days} days are returned. Contact your System Administrator for more detail.",
|
||||
"search_results.usage.fromInSuggestion": "Use {fromUser} to find posts from specific users and {inChannel} to find posts in specific channels",
|
||||
"search_results.usage.fromInSuggestion.fromUser": "from:",
|
||||
"search_results.usage.fromInSuggestion.inChannel": "in:",
|
||||
"search_results.usage.phrasesSuggestion": "Use {quotationMarks} to search for phrases",
|
||||
"search_results.usage.phrasesSuggestion.quotationMarks": "\"quotation marks\"",
|
||||
"search_results.usageFlag1": "尚未標記任何訊息。",
|
||||
@@ -2380,6 +2422,7 @@
|
||||
"sso_signup.teamName": "輸入新團隊名稱",
|
||||
"sso_signup.team_error": "請輸入團隊名稱",
|
||||
"status_dropdown.set_away": "離開",
|
||||
"status_dropdown.set_dnd": "Do Not Disturb",
|
||||
"status_dropdown.set_offline": "離線",
|
||||
"status_dropdown.set_online": "上線",
|
||||
"suggestion.loading": "載入中…",
|
||||
@@ -2496,6 +2539,7 @@
|
||||
"user.settings.custom_theme.centerChannelTitle": "中央頻道樣式",
|
||||
"user.settings.custom_theme.codeTheme": "程式碼主題",
|
||||
"user.settings.custom_theme.copyPaste": "用複製貼上來分享主題配色:",
|
||||
"user.settings.custom_theme.dndIndicator": "Do Not Disturb Indicator",
|
||||
"user.settings.custom_theme.linkButtonTitle": "連結與按鈕的樣式",
|
||||
"user.settings.custom_theme.linkColor": "連結顏色",
|
||||
"user.settings.custom_theme.mentionBj": "未讀的提及 BG",
|
||||
@@ -2623,6 +2667,7 @@
|
||||
"user.settings.modal.general": "一般",
|
||||
"user.settings.modal.notifications": "通知",
|
||||
"user.settings.modal.security": "安全",
|
||||
"user.settings.modal.sidebar": "Sidebar",
|
||||
"user.settings.modal.title": "帳號設定",
|
||||
"user.settings.notifications.allActivity": "所有的活動",
|
||||
"user.settings.notifications.channelWide": "對頻道全員的提及 \"@channel\"、\"@all\"、\"@here\"",
|
||||
@@ -2757,6 +2802,11 @@
|
||||
"user.settings.security.switchSaml": "改為使用 SAML SSO",
|
||||
"user.settings.security.title": "安全性設定",
|
||||
"user.settings.security.viewHistory": "檢視存取紀錄",
|
||||
"user.settings.sidebar.after_seven_days": "After 7 days with no new messages",
|
||||
"user.settings.sidebar.autoCloseDMDesc": "Direct Message conversations can be reopened with the “+” button in the sidebar or using the Channel Switcher (CTRL+K).",
|
||||
"user.settings.sidebar.autoCloseDMTitle": "Automatically Close Direct Messages",
|
||||
"user.settings.sidebar.never": "永不",
|
||||
"user.settings.sidebar.title": "Sidebar Settings",
|
||||
"user.settings.tokens.cancel": "取消",
|
||||
"user.settings.tokens.clickToEdit": "點擊'編輯'以管理個人存取 Token",
|
||||
"user.settings.tokens.confirmCreateButton": "是,建立",
|
||||
@@ -2780,6 +2830,7 @@
|
||||
"user.settings.tokens.tokenId": "Token ID:",
|
||||
"user.settings.tokens.userAccessTokensNone": "沒有個人存取 Token。",
|
||||
"user_list.notFound": "找不到任何使用者",
|
||||
"user_profile.account.editSettings": "帳號設定",
|
||||
"user_profile.send.dm": "發送訊息",
|
||||
"user_profile.webrtc.call": "開始視訊通話",
|
||||
"user_profile.webrtc.offline": "使用者離線中",
|
||||
|
||||
@@ -24,7 +24,7 @@ GEM
|
||||
faraday_middleware (0.12.2)
|
||||
faraday (>= 0.7.4, < 1.0)
|
||||
fastimage (2.1.0)
|
||||
fastlane (2.62.0)
|
||||
fastlane (2.64.0)
|
||||
CFPropertyList (>= 2.3, < 3.0.0)
|
||||
addressable (>= 2.3, < 3.0.0)
|
||||
babosa (>= 1.0.2, < 2.0.0)
|
||||
@@ -69,9 +69,9 @@ GEM
|
||||
mime-types (~> 3.0)
|
||||
representable (~> 3.0)
|
||||
retriable (>= 2.0, < 4.0)
|
||||
googleauth (0.5.3)
|
||||
googleauth (0.6.1)
|
||||
faraday (~> 0.12)
|
||||
jwt (~> 1.4)
|
||||
jwt (>= 1.4, < 3.0)
|
||||
logging (~> 2.0)
|
||||
memoist (~> 0.12)
|
||||
multi_json (~> 1.11)
|
||||
@@ -82,7 +82,7 @@ GEM
|
||||
domain_name (~> 0.5)
|
||||
httpclient (2.8.3)
|
||||
json (2.1.0)
|
||||
jwt (1.5.6)
|
||||
jwt (2.1.0)
|
||||
little-plugger (1.1.4)
|
||||
logging (2.2.2)
|
||||
little-plugger (~> 1.1)
|
||||
@@ -119,21 +119,21 @@ GEM
|
||||
terminal-notifier (1.8.0)
|
||||
terminal-table (1.8.0)
|
||||
unicode-display_width (~> 1.1, >= 1.1.1)
|
||||
tty-screen (0.5.0)
|
||||
tty-screen (0.5.1)
|
||||
uber (0.1.0)
|
||||
unf (0.1.4)
|
||||
unf_ext
|
||||
unf_ext (0.0.7.4)
|
||||
unicode-display_width (1.3.0)
|
||||
word_wrap (1.0.0)
|
||||
xcodeproj (1.5.2)
|
||||
xcodeproj (1.5.3)
|
||||
CFPropertyList (~> 2.3.3)
|
||||
claide (>= 1.0.2, < 2.0)
|
||||
colored2 (~> 3.1)
|
||||
nanaimo (~> 0.2.3)
|
||||
xcpretty (0.2.8)
|
||||
rouge (~> 2.0.7)
|
||||
xcpretty-travis-formatter (0.0.4)
|
||||
xcpretty-travis-formatter (1.0.0)
|
||||
xcpretty (~> 0.2, >= 0.0.7)
|
||||
|
||||
PLATFORMS
|
||||
|
||||
@@ -421,6 +421,27 @@
|
||||
remoteGlobalIDString = 38C138441D3FC3F600A8162D;
|
||||
remoteInfo = JailMonkey;
|
||||
};
|
||||
7F9C404E1FBCE71F005871E8 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = 3DBE0D001F3B181A0099AA32;
|
||||
remoteInfo = fishhook;
|
||||
};
|
||||
7F9C40501FBCE71F005871E8 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = 3DBE0D0D1F3B181C0099AA32;
|
||||
remoteInfo = "fishhook-tvOS";
|
||||
};
|
||||
7F9C40641FBCE71F005871E8 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = B97AA6F961BB47D3A3297E8E /* RNDeviceInfo.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = E72EC1401F7ABB5A0001BC90;
|
||||
remoteInfo = "RNDeviceInfo-tvOS";
|
||||
};
|
||||
7FA795051F61A1A500C02924 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = 9552041247E749308CE7B412 /* RNSentry.xcodeproj */;
|
||||
@@ -735,6 +756,8 @@
|
||||
children = (
|
||||
139FDEF41B06529B00C62182 /* libRCTWebSocket.a */,
|
||||
3DAD3E991DF850E9000B6D8A /* libRCTWebSocket-tvOS.a */,
|
||||
7F9C404F1FBCE71F005871E8 /* libfishhook.a */,
|
||||
7F9C40511FBCE71F005871E8 /* libfishhook-tvOS.a */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
@@ -833,6 +856,7 @@
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
37DD11281E79EBE1004111BA /* libRNDeviceInfo.a */,
|
||||
7F9C40651FBCE71F005871E8 /* libRNDeviceInfo-tvOS.a */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
@@ -1641,6 +1665,27 @@
|
||||
remoteRef = 7F8C4A611F3E21FB003A22BA /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
7F9C404F1FBCE71F005871E8 /* libfishhook.a */ = {
|
||||
isa = PBXReferenceProxy;
|
||||
fileType = archive.ar;
|
||||
path = libfishhook.a;
|
||||
remoteRef = 7F9C404E1FBCE71F005871E8 /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
7F9C40511FBCE71F005871E8 /* libfishhook-tvOS.a */ = {
|
||||
isa = PBXReferenceProxy;
|
||||
fileType = archive.ar;
|
||||
path = "libfishhook-tvOS.a";
|
||||
remoteRef = 7F9C40501FBCE71F005871E8 /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
7F9C40651FBCE71F005871E8 /* libRNDeviceInfo-tvOS.a */ = {
|
||||
isa = PBXReferenceProxy;
|
||||
fileType = archive.ar;
|
||||
path = "libRNDeviceInfo-tvOS.a";
|
||||
remoteRef = 7F9C40641FBCE71F005871E8 /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
7FA795061F61A1A500C02924 /* libRNSentry.a */ = {
|
||||
isa = PBXReferenceProxy;
|
||||
fileType = archive.ar;
|
||||
@@ -1954,7 +1999,7 @@
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CODE_SIGN_ENTITLEMENTS = Mattermost/Mattermost.entitlements;
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
CURRENT_PROJECT_VERSION = 59;
|
||||
CURRENT_PROJECT_VERSION = 63;
|
||||
DEAD_CODE_STRIPPING = NO;
|
||||
DEVELOPMENT_TEAM = UQ8HT4Q2XM;
|
||||
ENABLE_BITCODE = NO;
|
||||
@@ -2001,7 +2046,7 @@
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CODE_SIGN_ENTITLEMENTS = Mattermost/Mattermost.entitlements;
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
CURRENT_PROJECT_VERSION = 59;
|
||||
CURRENT_PROJECT_VERSION = 63;
|
||||
DEAD_CODE_STRIPPING = NO;
|
||||
DEVELOPMENT_TEAM = UQ8HT4Q2XM;
|
||||
ENABLE_BITCODE = NO;
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.4.0</string>
|
||||
<string>1.4.1</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleURLTypes</key>
|
||||
@@ -32,7 +32,7 @@
|
||||
</dict>
|
||||
</array>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>59</string>
|
||||
<string>64</string>
|
||||
<key>ITSAppUsesNonExemptEncryption</key>
|
||||
<false/>
|
||||
<key>LSRequiresIPhoneOS</key>
|
||||
|
||||
@@ -19,6 +19,6 @@
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>59</string>
|
||||
<string>63</string>
|
||||
</dict>
|
||||
</plist>
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
"deep-equal": "1.0.1",
|
||||
"intl": "1.2.5",
|
||||
"jail-monkey": "0.0.9",
|
||||
"mattermost-redux": "mattermost/mattermost-redux#master",
|
||||
"mattermost-redux": "mattermost/mattermost-redux#rn-release-1.4",
|
||||
"prop-types": "15.5.10",
|
||||
"react": "16.0.0-alpha.12",
|
||||
"react-intl": "2.3.0",
|
||||
@@ -62,6 +62,7 @@
|
||||
"babel-eslint": "7.2.3",
|
||||
"babel-plugin-module-resolver": "2.7.1",
|
||||
"babel-plugin-transform-remove-console": "6.8.5",
|
||||
"babel-preset-env": "1.6.1",
|
||||
"babel-preset-es2015": "6.24.1",
|
||||
"babel-preset-latest": "6.24.1",
|
||||
"babel-preset-react": "6.24.1",
|
||||
|
||||
@@ -35,9 +35,10 @@ describe('Selectors.PostList', () => {
|
||||
};
|
||||
const lastViewedAt = Number.POSITIVE_INFINITY;
|
||||
const postIds = ['1002', '1001'];
|
||||
const indicateNewMessages = true;
|
||||
|
||||
// Defaults to show post
|
||||
let now = preparePostIdsForPostList(state, {postIds, lastViewedAt});
|
||||
let now = preparePostIdsForPostList(state, {postIds, lastViewedAt, indicateNewMessages});
|
||||
assert.deepEqual(removeDateLines(now), ['1002', '1001']);
|
||||
|
||||
// Show join/leave posts
|
||||
@@ -59,7 +60,7 @@ describe('Selectors.PostList', () => {
|
||||
}
|
||||
};
|
||||
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt});
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt, indicateNewMessages});
|
||||
assert.deepEqual(removeDateLines(now), ['1002', '1001']);
|
||||
|
||||
// Hide join/leave posts
|
||||
@@ -81,7 +82,7 @@ describe('Selectors.PostList', () => {
|
||||
}
|
||||
};
|
||||
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt});
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt, indicateNewMessages});
|
||||
assert.deepEqual(removeDateLines(now), ['1001']);
|
||||
});
|
||||
|
||||
@@ -109,11 +110,11 @@ describe('Selectors.PostList', () => {
|
||||
const postIds = ['1010', '1005', '1000']; // Remember that we list the posts backwards
|
||||
|
||||
// Show new messages indicator before all posts
|
||||
let now = preparePostIdsForPostList(state, {postIds, lastViewedAt: 0});
|
||||
let now = preparePostIdsForPostList(state, {postIds, lastViewedAt: 0, indicateNewMessages: true});
|
||||
assert.deepEqual(removeDateLines(now), ['1010', '1005', '1000', START_OF_NEW_MESSAGES]);
|
||||
|
||||
// Show indicator between posts
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt: 1003});
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt: 1003, indicateNewMessages: true});
|
||||
assert.deepEqual(removeDateLines(now), ['1010', '1005', START_OF_NEW_MESSAGES, '1000']);
|
||||
|
||||
// Don't show indicator when all posts are read
|
||||
@@ -156,12 +157,12 @@ describe('Selectors.PostList', () => {
|
||||
let postIds = ['1006', '1004', '1003', '1001'];
|
||||
let lastViewedAt = initialPosts['1001'].create_at + 1;
|
||||
|
||||
let now = preparePostIdsForPostList(state, {postIds, lastViewedAt});
|
||||
let now = preparePostIdsForPostList(state, {postIds, lastViewedAt, indicateNewMessages: true});
|
||||
assert.deepEqual(removeDateLines(now), ['1006', '1004', '1003', START_OF_NEW_MESSAGES, '1001']);
|
||||
|
||||
// No changes
|
||||
let prev = now;
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt});
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt, indicateNewMessages: true});
|
||||
assert.equal(now, prev);
|
||||
assert.deepEqual(removeDateLines(now), ['1006', '1004', '1003', START_OF_NEW_MESSAGES, '1001']);
|
||||
|
||||
@@ -169,7 +170,7 @@ describe('Selectors.PostList', () => {
|
||||
lastViewedAt = initialPosts['1001'].create_at + 2;
|
||||
|
||||
prev = now;
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt});
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt, indicateNewMessages: true});
|
||||
assert.equal(now, prev);
|
||||
assert.deepEqual(removeDateLines(now), ['1006', '1004', '1003', START_OF_NEW_MESSAGES, '1001']);
|
||||
|
||||
@@ -177,12 +178,12 @@ describe('Selectors.PostList', () => {
|
||||
lastViewedAt += initialPosts['1003'].create_at + 1;
|
||||
|
||||
prev = now;
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt});
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt, indicateNewMessages: true});
|
||||
assert.notEqual(now, prev);
|
||||
assert.deepEqual(removeDateLines(now), ['1006', '1004', START_OF_NEW_MESSAGES, '1003', '1001']);
|
||||
|
||||
prev = now;
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt});
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt, indicateNewMessages: true});
|
||||
assert.equal(now, prev);
|
||||
assert.deepEqual(removeDateLines(now), ['1006', '1004', START_OF_NEW_MESSAGES, '1003', '1001']);
|
||||
|
||||
@@ -190,7 +191,7 @@ describe('Selectors.PostList', () => {
|
||||
postIds = [...postIds];
|
||||
|
||||
prev = now;
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt});
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt, indicateNewMessages: true});
|
||||
assert.equal(now, prev);
|
||||
assert.deepEqual(removeDateLines(now), ['1006', '1004', START_OF_NEW_MESSAGES, '1003', '1001']);
|
||||
|
||||
@@ -210,7 +211,7 @@ describe('Selectors.PostList', () => {
|
||||
};
|
||||
|
||||
prev = now;
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt});
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt, indicateNewMessages: true});
|
||||
assert.equal(now, prev);
|
||||
assert.deepEqual(removeDateLines(now), ['1006', '1004', START_OF_NEW_MESSAGES, '1003', '1001']);
|
||||
|
||||
@@ -230,7 +231,7 @@ describe('Selectors.PostList', () => {
|
||||
};
|
||||
|
||||
prev = now;
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt});
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt, indicateNewMessages: true});
|
||||
assert.equal(now, prev);
|
||||
assert.deepEqual(removeDateLines(now), ['1006', '1004', START_OF_NEW_MESSAGES, '1003', '1001']);
|
||||
|
||||
@@ -254,12 +255,12 @@ describe('Selectors.PostList', () => {
|
||||
};
|
||||
|
||||
prev = now;
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt});
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt, indicateNewMessages: true});
|
||||
assert.notEqual(now, prev);
|
||||
assert.deepEqual(removeDateLines(now), ['1004', START_OF_NEW_MESSAGES, '1003', '1001']);
|
||||
|
||||
prev = now;
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt});
|
||||
now = preparePostIdsForPostList(state, {postIds, lastViewedAt, indicateNewMessages: true});
|
||||
assert.equal(now, prev);
|
||||
assert.deepEqual(removeDateLines(now), ['1004', START_OF_NEW_MESSAGES, '1003', '1001']);
|
||||
});
|
||||
|
||||
105
yarn.lock
105
yarn.lock
@@ -583,7 +583,7 @@ babel-plugin-transform-async-to-generator@6.16.0:
|
||||
babel-plugin-syntax-async-functions "^6.8.0"
|
||||
babel-runtime "^6.0.0"
|
||||
|
||||
babel-plugin-transform-async-to-generator@^6.16.0, babel-plugin-transform-async-to-generator@^6.24.1:
|
||||
babel-plugin-transform-async-to-generator@^6.16.0, babel-plugin-transform-async-to-generator@^6.22.0, babel-plugin-transform-async-to-generator@^6.24.1:
|
||||
version "6.24.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761"
|
||||
dependencies:
|
||||
@@ -637,7 +637,7 @@ babel-plugin-transform-es2015-block-scoped-functions@^6.22.0, babel-plugin-trans
|
||||
dependencies:
|
||||
babel-runtime "^6.22.0"
|
||||
|
||||
babel-plugin-transform-es2015-block-scoping@^6.24.1, babel-plugin-transform-es2015-block-scoping@^6.5.0, babel-plugin-transform-es2015-block-scoping@^6.7.1, babel-plugin-transform-es2015-block-scoping@^6.8.0:
|
||||
babel-plugin-transform-es2015-block-scoping@^6.23.0, babel-plugin-transform-es2015-block-scoping@^6.24.1, babel-plugin-transform-es2015-block-scoping@^6.5.0, babel-plugin-transform-es2015-block-scoping@^6.7.1, babel-plugin-transform-es2015-block-scoping@^6.8.0:
|
||||
version "6.26.0"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f"
|
||||
dependencies:
|
||||
@@ -647,7 +647,7 @@ babel-plugin-transform-es2015-block-scoping@^6.24.1, babel-plugin-transform-es20
|
||||
babel-types "^6.26.0"
|
||||
lodash "^4.17.4"
|
||||
|
||||
babel-plugin-transform-es2015-classes@^6.24.1, babel-plugin-transform-es2015-classes@^6.5.0, babel-plugin-transform-es2015-classes@^6.6.5, babel-plugin-transform-es2015-classes@^6.8.0:
|
||||
babel-plugin-transform-es2015-classes@^6.23.0, babel-plugin-transform-es2015-classes@^6.24.1, babel-plugin-transform-es2015-classes@^6.5.0, babel-plugin-transform-es2015-classes@^6.6.5, babel-plugin-transform-es2015-classes@^6.8.0:
|
||||
version "6.24.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db"
|
||||
dependencies:
|
||||
@@ -661,33 +661,33 @@ babel-plugin-transform-es2015-classes@^6.24.1, babel-plugin-transform-es2015-cla
|
||||
babel-traverse "^6.24.1"
|
||||
babel-types "^6.24.1"
|
||||
|
||||
babel-plugin-transform-es2015-computed-properties@^6.24.1, babel-plugin-transform-es2015-computed-properties@^6.5.0, babel-plugin-transform-es2015-computed-properties@^6.6.5, babel-plugin-transform-es2015-computed-properties@^6.8.0:
|
||||
babel-plugin-transform-es2015-computed-properties@^6.22.0, babel-plugin-transform-es2015-computed-properties@^6.24.1, babel-plugin-transform-es2015-computed-properties@^6.5.0, babel-plugin-transform-es2015-computed-properties@^6.6.5, babel-plugin-transform-es2015-computed-properties@^6.8.0:
|
||||
version "6.24.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3"
|
||||
dependencies:
|
||||
babel-runtime "^6.22.0"
|
||||
babel-template "^6.24.1"
|
||||
|
||||
babel-plugin-transform-es2015-destructuring@6.x, babel-plugin-transform-es2015-destructuring@^6.22.0, babel-plugin-transform-es2015-destructuring@^6.5.0, babel-plugin-transform-es2015-destructuring@^6.6.5, babel-plugin-transform-es2015-destructuring@^6.8.0:
|
||||
babel-plugin-transform-es2015-destructuring@6.x, babel-plugin-transform-es2015-destructuring@^6.22.0, babel-plugin-transform-es2015-destructuring@^6.23.0, babel-plugin-transform-es2015-destructuring@^6.5.0, babel-plugin-transform-es2015-destructuring@^6.6.5, babel-plugin-transform-es2015-destructuring@^6.8.0:
|
||||
version "6.23.0"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d"
|
||||
dependencies:
|
||||
babel-runtime "^6.22.0"
|
||||
|
||||
babel-plugin-transform-es2015-duplicate-keys@^6.24.1:
|
||||
babel-plugin-transform-es2015-duplicate-keys@^6.22.0, babel-plugin-transform-es2015-duplicate-keys@^6.24.1:
|
||||
version "6.24.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e"
|
||||
dependencies:
|
||||
babel-runtime "^6.22.0"
|
||||
babel-types "^6.24.1"
|
||||
|
||||
babel-plugin-transform-es2015-for-of@^6.22.0, babel-plugin-transform-es2015-for-of@^6.5.0, babel-plugin-transform-es2015-for-of@^6.6.0, babel-plugin-transform-es2015-for-of@^6.8.0:
|
||||
babel-plugin-transform-es2015-for-of@^6.22.0, babel-plugin-transform-es2015-for-of@^6.23.0, babel-plugin-transform-es2015-for-of@^6.5.0, babel-plugin-transform-es2015-for-of@^6.6.0, babel-plugin-transform-es2015-for-of@^6.8.0:
|
||||
version "6.23.0"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691"
|
||||
dependencies:
|
||||
babel-runtime "^6.22.0"
|
||||
|
||||
babel-plugin-transform-es2015-function-name@6.x, babel-plugin-transform-es2015-function-name@^6.24.1, babel-plugin-transform-es2015-function-name@^6.5.0, babel-plugin-transform-es2015-function-name@^6.8.0:
|
||||
babel-plugin-transform-es2015-function-name@6.x, babel-plugin-transform-es2015-function-name@^6.22.0, babel-plugin-transform-es2015-function-name@^6.24.1, babel-plugin-transform-es2015-function-name@^6.5.0, babel-plugin-transform-es2015-function-name@^6.8.0:
|
||||
version "6.24.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b"
|
||||
dependencies:
|
||||
@@ -701,7 +701,7 @@ babel-plugin-transform-es2015-literals@^6.22.0, babel-plugin-transform-es2015-li
|
||||
dependencies:
|
||||
babel-runtime "^6.22.0"
|
||||
|
||||
babel-plugin-transform-es2015-modules-amd@^6.24.1:
|
||||
babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015-modules-amd@^6.24.1:
|
||||
version "6.24.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154"
|
||||
dependencies:
|
||||
@@ -709,7 +709,7 @@ babel-plugin-transform-es2015-modules-amd@^6.24.1:
|
||||
babel-runtime "^6.22.0"
|
||||
babel-template "^6.24.1"
|
||||
|
||||
babel-plugin-transform-es2015-modules-commonjs@6.x, babel-plugin-transform-es2015-modules-commonjs@^6.24.1, babel-plugin-transform-es2015-modules-commonjs@^6.5.0, babel-plugin-transform-es2015-modules-commonjs@^6.7.0, babel-plugin-transform-es2015-modules-commonjs@^6.8.0:
|
||||
babel-plugin-transform-es2015-modules-commonjs@6.x, babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-es2015-modules-commonjs@^6.24.1, babel-plugin-transform-es2015-modules-commonjs@^6.5.0, babel-plugin-transform-es2015-modules-commonjs@^6.7.0, babel-plugin-transform-es2015-modules-commonjs@^6.8.0:
|
||||
version "6.26.0"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a"
|
||||
dependencies:
|
||||
@@ -718,7 +718,7 @@ babel-plugin-transform-es2015-modules-commonjs@6.x, babel-plugin-transform-es201
|
||||
babel-template "^6.26.0"
|
||||
babel-types "^6.26.0"
|
||||
|
||||
babel-plugin-transform-es2015-modules-systemjs@^6.24.1:
|
||||
babel-plugin-transform-es2015-modules-systemjs@^6.23.0, babel-plugin-transform-es2015-modules-systemjs@^6.24.1:
|
||||
version "6.24.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23"
|
||||
dependencies:
|
||||
@@ -726,7 +726,7 @@ babel-plugin-transform-es2015-modules-systemjs@^6.24.1:
|
||||
babel-runtime "^6.22.0"
|
||||
babel-template "^6.24.1"
|
||||
|
||||
babel-plugin-transform-es2015-modules-umd@^6.24.1:
|
||||
babel-plugin-transform-es2015-modules-umd@^6.23.0, babel-plugin-transform-es2015-modules-umd@^6.24.1:
|
||||
version "6.24.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468"
|
||||
dependencies:
|
||||
@@ -734,14 +734,14 @@ babel-plugin-transform-es2015-modules-umd@^6.24.1:
|
||||
babel-runtime "^6.22.0"
|
||||
babel-template "^6.24.1"
|
||||
|
||||
babel-plugin-transform-es2015-object-super@^6.24.1, babel-plugin-transform-es2015-object-super@^6.6.5, babel-plugin-transform-es2015-object-super@^6.8.0:
|
||||
babel-plugin-transform-es2015-object-super@^6.22.0, babel-plugin-transform-es2015-object-super@^6.24.1, babel-plugin-transform-es2015-object-super@^6.6.5, babel-plugin-transform-es2015-object-super@^6.8.0:
|
||||
version "6.24.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d"
|
||||
dependencies:
|
||||
babel-helper-replace-supers "^6.24.1"
|
||||
babel-runtime "^6.22.0"
|
||||
|
||||
babel-plugin-transform-es2015-parameters@6.x, babel-plugin-transform-es2015-parameters@^6.24.1, babel-plugin-transform-es2015-parameters@^6.5.0, babel-plugin-transform-es2015-parameters@^6.7.0, babel-plugin-transform-es2015-parameters@^6.8.0:
|
||||
babel-plugin-transform-es2015-parameters@6.x, babel-plugin-transform-es2015-parameters@^6.23.0, babel-plugin-transform-es2015-parameters@^6.24.1, babel-plugin-transform-es2015-parameters@^6.5.0, babel-plugin-transform-es2015-parameters@^6.7.0, babel-plugin-transform-es2015-parameters@^6.8.0:
|
||||
version "6.24.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b"
|
||||
dependencies:
|
||||
@@ -752,7 +752,7 @@ babel-plugin-transform-es2015-parameters@6.x, babel-plugin-transform-es2015-para
|
||||
babel-traverse "^6.24.1"
|
||||
babel-types "^6.24.1"
|
||||
|
||||
babel-plugin-transform-es2015-shorthand-properties@6.x, babel-plugin-transform-es2015-shorthand-properties@^6.24.1, babel-plugin-transform-es2015-shorthand-properties@^6.5.0, babel-plugin-transform-es2015-shorthand-properties@^6.8.0:
|
||||
babel-plugin-transform-es2015-shorthand-properties@6.x, babel-plugin-transform-es2015-shorthand-properties@^6.22.0, babel-plugin-transform-es2015-shorthand-properties@^6.24.1, babel-plugin-transform-es2015-shorthand-properties@^6.5.0, babel-plugin-transform-es2015-shorthand-properties@^6.8.0:
|
||||
version "6.24.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0"
|
||||
dependencies:
|
||||
@@ -765,7 +765,7 @@ babel-plugin-transform-es2015-spread@6.x, babel-plugin-transform-es2015-spread@^
|
||||
dependencies:
|
||||
babel-runtime "^6.22.0"
|
||||
|
||||
babel-plugin-transform-es2015-sticky-regex@6.x, babel-plugin-transform-es2015-sticky-regex@^6.24.1:
|
||||
babel-plugin-transform-es2015-sticky-regex@6.x, babel-plugin-transform-es2015-sticky-regex@^6.22.0, babel-plugin-transform-es2015-sticky-regex@^6.24.1:
|
||||
version "6.24.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc"
|
||||
dependencies:
|
||||
@@ -779,13 +779,13 @@ babel-plugin-transform-es2015-template-literals@^6.22.0, babel-plugin-transform-
|
||||
dependencies:
|
||||
babel-runtime "^6.22.0"
|
||||
|
||||
babel-plugin-transform-es2015-typeof-symbol@^6.22.0:
|
||||
babel-plugin-transform-es2015-typeof-symbol@^6.22.0, babel-plugin-transform-es2015-typeof-symbol@^6.23.0:
|
||||
version "6.23.0"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372"
|
||||
dependencies:
|
||||
babel-runtime "^6.22.0"
|
||||
|
||||
babel-plugin-transform-es2015-unicode-regex@6.x, babel-plugin-transform-es2015-unicode-regex@^6.24.1:
|
||||
babel-plugin-transform-es2015-unicode-regex@6.x, babel-plugin-transform-es2015-unicode-regex@^6.22.0, babel-plugin-transform-es2015-unicode-regex@^6.24.1:
|
||||
version "6.24.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9"
|
||||
dependencies:
|
||||
@@ -805,7 +805,7 @@ babel-plugin-transform-es3-property-literals@^6.5.0, babel-plugin-transform-es3-
|
||||
dependencies:
|
||||
babel-runtime "^6.22.0"
|
||||
|
||||
babel-plugin-transform-exponentiation-operator@^6.24.1:
|
||||
babel-plugin-transform-exponentiation-operator@^6.22.0, babel-plugin-transform-exponentiation-operator@^6.24.1:
|
||||
version "6.24.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e"
|
||||
dependencies:
|
||||
@@ -875,7 +875,7 @@ babel-plugin-transform-react-jsx@^6.24.1, babel-plugin-transform-react-jsx@^6.5.
|
||||
babel-plugin-syntax-jsx "^6.8.0"
|
||||
babel-runtime "^6.22.0"
|
||||
|
||||
babel-plugin-transform-regenerator@^6.24.1, babel-plugin-transform-regenerator@^6.5.0:
|
||||
babel-plugin-transform-regenerator@^6.22.0, babel-plugin-transform-regenerator@^6.24.1, babel-plugin-transform-regenerator@^6.5.0:
|
||||
version "6.26.0"
|
||||
resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f"
|
||||
dependencies:
|
||||
@@ -908,6 +908,41 @@ babel-polyfill@^6.20.0, babel-polyfill@^6.26.0:
|
||||
core-js "^2.5.0"
|
||||
regenerator-runtime "^0.10.5"
|
||||
|
||||
babel-preset-env@1.6.1:
|
||||
version "1.6.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.6.1.tgz#a18b564cc9b9afdf4aae57ae3c1b0d99188e6f48"
|
||||
dependencies:
|
||||
babel-plugin-check-es2015-constants "^6.22.0"
|
||||
babel-plugin-syntax-trailing-function-commas "^6.22.0"
|
||||
babel-plugin-transform-async-to-generator "^6.22.0"
|
||||
babel-plugin-transform-es2015-arrow-functions "^6.22.0"
|
||||
babel-plugin-transform-es2015-block-scoped-functions "^6.22.0"
|
||||
babel-plugin-transform-es2015-block-scoping "^6.23.0"
|
||||
babel-plugin-transform-es2015-classes "^6.23.0"
|
||||
babel-plugin-transform-es2015-computed-properties "^6.22.0"
|
||||
babel-plugin-transform-es2015-destructuring "^6.23.0"
|
||||
babel-plugin-transform-es2015-duplicate-keys "^6.22.0"
|
||||
babel-plugin-transform-es2015-for-of "^6.23.0"
|
||||
babel-plugin-transform-es2015-function-name "^6.22.0"
|
||||
babel-plugin-transform-es2015-literals "^6.22.0"
|
||||
babel-plugin-transform-es2015-modules-amd "^6.22.0"
|
||||
babel-plugin-transform-es2015-modules-commonjs "^6.23.0"
|
||||
babel-plugin-transform-es2015-modules-systemjs "^6.23.0"
|
||||
babel-plugin-transform-es2015-modules-umd "^6.23.0"
|
||||
babel-plugin-transform-es2015-object-super "^6.22.0"
|
||||
babel-plugin-transform-es2015-parameters "^6.23.0"
|
||||
babel-plugin-transform-es2015-shorthand-properties "^6.22.0"
|
||||
babel-plugin-transform-es2015-spread "^6.22.0"
|
||||
babel-plugin-transform-es2015-sticky-regex "^6.22.0"
|
||||
babel-plugin-transform-es2015-template-literals "^6.22.0"
|
||||
babel-plugin-transform-es2015-typeof-symbol "^6.23.0"
|
||||
babel-plugin-transform-es2015-unicode-regex "^6.22.0"
|
||||
babel-plugin-transform-exponentiation-operator "^6.22.0"
|
||||
babel-plugin-transform-regenerator "^6.22.0"
|
||||
browserslist "^2.1.2"
|
||||
invariant "^2.2.2"
|
||||
semver "^5.3.0"
|
||||
|
||||
babel-preset-es2015-node@^6.1.1:
|
||||
version "6.1.1"
|
||||
resolved "https://registry.yarnpkg.com/babel-preset-es2015-node/-/babel-preset-es2015-node-6.1.1.tgz#60b23157024b0cfebf3a63554cb05ee035b4e55f"
|
||||
@@ -1371,6 +1406,13 @@ browser-stdout@1.3.0:
|
||||
version "1.3.0"
|
||||
resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f"
|
||||
|
||||
browserslist@^2.1.2:
|
||||
version "2.6.1"
|
||||
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.6.1.tgz#cc65a05ad6131ebda26f076f2822ba1bc826376b"
|
||||
dependencies:
|
||||
caniuse-lite "^1.0.30000755"
|
||||
electron-to-chromium "^1.3.27"
|
||||
|
||||
bser@1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/bser/-/bser-1.0.2.tgz#381116970b2a6deea5646dd15dd7278444b56169"
|
||||
@@ -1439,6 +1481,10 @@ camelcase@^4.1.0:
|
||||
version "4.1.0"
|
||||
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd"
|
||||
|
||||
caniuse-lite@^1.0.30000755:
|
||||
version "1.0.30000757"
|
||||
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000757.tgz#81e3bc029728a032933501994ef79db1c21159e3"
|
||||
|
||||
caseless@~0.12.0:
|
||||
version "0.12.0"
|
||||
resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
|
||||
@@ -2068,6 +2114,10 @@ ejs@^2.4.1:
|
||||
version "2.5.7"
|
||||
resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.5.7.tgz#cc872c168880ae3c7189762fd5ffc00896c9518a"
|
||||
|
||||
electron-to-chromium@^1.3.27:
|
||||
version "1.3.27"
|
||||
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.27.tgz#78ecb8a399066187bb374eede35d9c70565a803d"
|
||||
|
||||
encodeurl@~1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.1.tgz#79e3d58655346909fe6f0f45a5de68103b294d20"
|
||||
@@ -3880,11 +3930,12 @@ makeerror@1.0.x:
|
||||
dependencies:
|
||||
tmpl "1.0.x"
|
||||
|
||||
mattermost-redux@mattermost/mattermost-redux#master:
|
||||
version "0.0.1"
|
||||
resolved "https://codeload.github.com/mattermost/mattermost-redux/tar.gz/14b5f58c9be349c0f9514bc9e457ea4ac6bf2d03"
|
||||
mattermost-redux@mattermost/mattermost-redux#rn-release-1.4:
|
||||
version "1.0.1"
|
||||
resolved "https://codeload.github.com/mattermost/mattermost-redux/tar.gz/367a08ef62fd7127b98e797a8d5ad08b7b7cbe6a"
|
||||
dependencies:
|
||||
deep-equal "1.0.1"
|
||||
form-data "2.3.1"
|
||||
harmony-reflect "1.5.1"
|
||||
isomorphic-fetch "2.2.1"
|
||||
mime-db "1.30.0"
|
||||
@@ -4976,8 +5027,8 @@ react-native-navigation@1.1.216:
|
||||
lodash "4.x.x"
|
||||
|
||||
react-native-notifications@enahum/react-native-notifications.git:
|
||||
version "1.1.15"
|
||||
resolved "https://codeload.github.com/enahum/react-native-notifications/tar.gz/37dd26bd0d900e32db0fccc0ace698b3f6844900"
|
||||
version "1.1.17"
|
||||
resolved "https://codeload.github.com/enahum/react-native-notifications/tar.gz/2300824b1cbd5fff33d20847b3cc75f304613927"
|
||||
dependencies:
|
||||
core-js "^1.0.0"
|
||||
uuid "^2.0.3"
|
||||
@@ -5273,8 +5324,8 @@ redux-persist@4.9.1:
|
||||
lodash-es "^4.17.4"
|
||||
|
||||
redux-persist@^4.5.0:
|
||||
version "4.10.1"
|
||||
resolved "https://registry.yarnpkg.com/redux-persist/-/redux-persist-4.10.1.tgz#4fb2b789942f10f56d51cc7ad068d9d6beb46124"
|
||||
version "4.10.2"
|
||||
resolved "https://registry.yarnpkg.com/redux-persist/-/redux-persist-4.10.2.tgz#8efdb16cfe882c521a78a6d0bfdfef2437f49f96"
|
||||
dependencies:
|
||||
json-stringify-safe "^5.0.1"
|
||||
lodash "^4.17.4"
|
||||
|
||||
Reference in New Issue
Block a user