mirror of
https://github.com/shlinkio/shlink-web-client.git
synced 2025-01-10 18:27:25 +03:00
Moved version link to common component, and fixed coding styles
This commit is contained in:
parent
feeb212259
commit
474239c151
1 changed files with 18 additions and 3 deletions
|
@ -2,11 +2,12 @@ import React from 'react';
|
|||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import { pipe } from 'ramda';
|
||||
import { ExternalLink } from 'react-external-link';
|
||||
import { serverType } from '../servers/prop-types';
|
||||
import { versionToPrintable, versionToSemVer } from '../utils/helpers/version';
|
||||
import { ExternalLink } from 'react-external-link';
|
||||
|
||||
const SHLINK_WEB_CLIENT_VERSION = '%_VERSION_%';
|
||||
const normalizeVersion = pipe(versionToSemVer(), versionToPrintable);
|
||||
|
||||
const propTypes = {
|
||||
selectedServer: serverType,
|
||||
|
@ -14,13 +15,27 @@ const propTypes = {
|
|||
clientVersion: PropTypes.string,
|
||||
};
|
||||
|
||||
const versionLinkPropTypes = {
|
||||
project: PropTypes.oneOf([ 'shlink', 'shlink-web-client' ]).isRequired,
|
||||
version: PropTypes.string.isRequired,
|
||||
};
|
||||
|
||||
const VersionLink = ({ project, version }) => (
|
||||
<ExternalLink href={`https://github.com/shlinkio/${project}/releases/${version}`} className="text-muted">
|
||||
<b>{version}</b>
|
||||
</ExternalLink>
|
||||
);
|
||||
|
||||
VersionLink.propTypes = versionLinkPropTypes;
|
||||
|
||||
const ShlinkVersions = ({ selectedServer, className, clientVersion = SHLINK_WEB_CLIENT_VERSION }) => {
|
||||
const { printableVersion: serverVersion } = selectedServer;
|
||||
const normalizedClientVersion = pipe(versionToSemVer(), versionToPrintable)(clientVersion);
|
||||
const normalizedClientVersion = normalizeVersion(clientVersion);
|
||||
|
||||
return (
|
||||
<small className={classNames('text-muted', className)}>
|
||||
Client: {<ExternalLink href="https://github.com/shlinkio/shlink-web-client/releases/" className="text-muted"><b>{normalizedClientVersion}</b></ExternalLink>} - Server: {<ExternalLink href="https://github.com/shlinkio/shlink/releases/" className="text-muted"><b>{serverVersion}</b></ExternalLink>}
|
||||
Client: <VersionLink project="shlink-web-client" version={normalizedClientVersion} /> -
|
||||
Server: <VersionLink project="shlink" version={serverVersion} />
|
||||
</small>
|
||||
);
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue