From f61dfdf7871d9b2337184a0868464c37a95e6fbd Mon Sep 17 00:00:00 2001 From: "Juan Picado @jotadeveloper" Date: Sat, 15 Dec 2018 16:33:57 +0100 Subject: [PATCH] refactor: Footer according eslint rules --- .eslintrc | 10 ++--- src/webui/components/Footer/index.js | 61 ++++++++++++++++++---------- src/webui/utils/windows.js | 3 ++ 3 files changed, 47 insertions(+), 27 deletions(-) create mode 100644 src/webui/utils/windows.js diff --git a/.eslintrc b/.eslintrc index b57c4cbb4..35bb0bcd8 100644 --- a/.eslintrc +++ b/.eslintrc @@ -10,18 +10,18 @@ "extends": [ "eslint:recommended", "google", - "plugin:react/recommended", "plugin:flowtype/recommended", "plugin:jest/recommended", "plugin:prettier/recommended", + "plugin:react/recommended", "plugin:verdaccio/recommended", "plugin:jsx-a11y/recommended" ], "settings": { "react": { - "pragma": "React", // Pragma to use - "version": "16.4.2", // React version - "flowVersion": "0.81.0" // Flow version + "pragma": "React", + "version": "16.4.2", + "flowVersion": "0.81.0" } }, "parser": "babel-eslint", @@ -88,7 +88,7 @@ "react/jsx-no-duplicate-props": ["warn"], "react/jsx-no-literals": ["warn"], "react/jsx-no-undef": ["warn"], - "react/jsx-one-expression-per-line": ["warn", {"allow": "literal"}], + "react/jsx-one-expression-per-line": ["warn", {"allow": "single-child"}], "react/jsx-curly-brace-presence": ["warn", { "props": "always", "children": "ignore" }], "react/jsx-pascal-case": ["warn"], "react/jsx-props-no-multi-spaces": ["warn"], diff --git a/src/webui/components/Footer/index.js b/src/webui/components/Footer/index.js index 12d8da1f7..331c835ca 100644 --- a/src/webui/components/Footer/index.js +++ b/src/webui/components/Footer/index.js @@ -8,32 +8,49 @@ import type { Element } from 'react'; import { version } from '../../../../package.json'; import { Wrapper, Left, Right, Earth, Flags, Love, Flag, Logo, Inner, ToolTip } from './styles'; +import { goToVerdaccioWebsite } from '../../utils/windows.js'; + +const renderTooltip = () => ( + + + + + + + + + + + + +); +const POWERED_LABEL = 'Powered by'; +const MADEWITH_LABEL = ' Made with'; +const ON_LABEL = 'on'; +const HEARTH_EMOJI = '♥'; + +const renderRight = () => ( + + {POWERED_LABEL} + + {`/ ${version}`} + +); + +const renderLeft = () => ( + + {MADEWITH_LABEL} + {HEARTH_EMOJI} + {ON_LABEL} + {renderTooltip()} + +); const Footer = (): Element => ( - - Made with - - on - - - - - - - - - - - - - - - Powered by - window.open('http://www.verdaccio.org/', '_blank')} pointer={true} size={'md'} /> - {`/ ${version}`} - + {renderLeft()} + {renderRight()} ); diff --git a/src/webui/utils/windows.js b/src/webui/utils/windows.js new file mode 100644 index 000000000..9fb3b37fa --- /dev/null +++ b/src/webui/utils/windows.js @@ -0,0 +1,3 @@ +export function goToVerdaccioWebsite() { + window.open('https://www.verdaccio.org/', '_blank'); +}