mattermost-mobile/app/screens/about/server_version.tsx
Avinash Lingaloo 0ef1dd44ea
Gekidou about screen (#5591)
* Added about screen

* Remove TS error

* Needs clean up

* Testing login flow

* Converted About screen to functional component

* Improvements

* Sort imports

* Prevents double tapping

* Apply suggestions from code review

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>

* Code clean up

* Adding translation keys

* Added some keys

* Updated AppVersion component

* Missed translation key

Co-authored-by: Avinash Lingaloo <>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2021-08-04 21:48:36 -07:00

59 lines
1.5 KiB
TypeScript

// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
import React from 'react';
import FormattedText from '@components/formatted_text';
import {useTheme} from '@context/theme';
import {t} from '@i18n';
import {makeStyleSheetFromTheme} from '@utils/theme';
import type SystemModel from '@typings/database/models/servers/system';
type ServerVersionProps = {
config: SystemModel;
}
const ServerVersion = ({config}: ServerVersionProps) => {
const buildNumber = config.value.BuildNumber;
const version = config.value.Version;
const theme = useTheme();
const style = getStyleSheet(theme);
let id = t('mobile.about.serverVersion');
let defaultMessage = 'Server Version: {version} (Build {number})';
let values = {
version,
number: buildNumber,
};
if (buildNumber === version) {
id = t('mobile.about.serverVersionNoBuild');
defaultMessage = 'Server Version: {version}';
values = {
version,
number: undefined,
};
}
return (
<FormattedText
id={id}
defaultMessage={defaultMessage}
style={style.info}
values={values}
testID='about.server_version'
/>
);
};
const getStyleSheet = makeStyleSheetFromTheme((theme) => {
return {
info: {
color: theme.centerChannelColor,
fontSize: 16,
lineHeight: 19,
},
};
});
export default ServerVersion;