From 302007e7cfe365001bd20d17a48b8522cad90649 Mon Sep 17 00:00:00 2001 From: Tudor Stanciu Date: Tue, 7 Sep 2021 09:42:48 +0300 Subject: [PATCH] about component --- config.js | 7 ++ public/images/reverse-proxy2.jpg | Bin 0 -> 39463 bytes public/locales/en/translations.json | 13 +++ public/locales/ro/translations.json | 13 +++ .../about/components/AboutComponent.js | 79 +++++++++--------- .../about/components/AboutContainer.js | 8 +- .../about/components/TechnologiesComponent.js | 15 +++- webpack.config.dev.js | 13 +-- 8 files changed, 99 insertions(+), 49 deletions(-) create mode 100644 config.js create mode 100644 public/images/reverse-proxy2.jpg diff --git a/config.js b/config.js new file mode 100644 index 0000000..5f64db1 --- /dev/null +++ b/config.js @@ -0,0 +1,7 @@ +const dev = { + REVERSE_PROXY_API_URL: "https://toodle.ddns.net/reverse-proxy-api", + CHATBOT_API_URL: "http://localhost:5061", + REVERSE_PROXY_DOCS_URL: "https://toodle.ddns.net/docs/books/reverse-proxy" +}; + +module.exports = { dev }; diff --git a/public/images/reverse-proxy2.jpg b/public/images/reverse-proxy2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d43579a7efe5a9788c36ad5d2b7b009b68a32729 GIT binary patch literal 39463 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 MLGd4EIR2dc2M%dvF8}}l literal 0 HcmV?d00001 diff --git a/public/locales/en/translations.json b/public/locales/en/translations.json index 7275270..8b7fa01 100644 --- a/public/locales/en/translations.json +++ b/public/locales/en/translations.json @@ -127,5 +127,18 @@ "Message7": "I don't think I understand '{previousValue}'. You mean, like, flowers?", "Message9": "I think you're wasting my time. Farewell!" } + }, + "About": { + "Title": "Overview", + "Subtitle": "Expand to see details", + "Content1": "A reverse proxy is a server that accepts a request from a client, forwards the request to another one of many other servers and returns the results from the server that actually processed the request to the client as if the proxy server had processed the request itself.", + "Content2": "A reverse proxy is a type of proxy server. Unlike a traditional proxy server, which is used to protect clients, a reverse proxy is used to protect servers.", + "Content3": "The client only communicates directly with the reverse proxy server and it does not know that some other server actually processed its request.", + "Actions": { + "Documentation": "Documentation" + }, + "Technologies": { + "Title": "Technologies" + } } } diff --git a/public/locales/ro/translations.json b/public/locales/ro/translations.json index 4f86fb1..5735cdd 100644 --- a/public/locales/ro/translations.json +++ b/public/locales/ro/translations.json @@ -118,5 +118,18 @@ "Message7": "Nu cred că am înțeles '{previousValue}'. Vrei să spui, cum ar fi, flori?", "Message9": "Cred că îmi irosesti timpul. Ramas bun!" } + }, + "About": { + "Title": "Prezentare generală", + "Subtitle": "Extindeţi pentru a vedea detalii", + "Content1": "Un proxy invers este un server care acceptă o cerere de la un client, redirecționează cererea către altul din multe alte servere și returnează rezultatele de la serverul care a procesat efectiv solicitarea către client ca și cum serverul proxy ar fi procesat solicitarea de unul singur.", + "Content2": "Un proxy invers este un tip de server proxy. Spre deosebire de un server proxy tradițional, care este utilizat pentru a proteja clienții, un proxy invers este utilizat pentru a proteja serverele.", + "Content3": "Clientul comunică direct cu serverul proxy invers și nu știe că un alt server i-a procesat cererea.", + "Actions": { + "Documentation": "Documentație" + }, + "Technologies": { + "Title": "Tehnologii" + } } } diff --git a/src/features/about/components/AboutComponent.js b/src/features/about/components/AboutComponent.js index a07f090..533e370 100644 --- a/src/features/about/components/AboutComponent.js +++ b/src/features/about/components/AboutComponent.js @@ -1,4 +1,5 @@ import React from "react"; +import PropTypes from "prop-types"; import { makeStyles } from "@material-ui/core/styles"; import clsx from "clsx"; import { @@ -9,18 +10,21 @@ import { Collapse, Avatar, IconButton, - Typography + Typography, + Grid, + Tooltip } from "@material-ui/core"; -import FavoriteIcon from "@material-ui/icons/Favorite"; -import ShareIcon from "@material-ui/icons/Share"; import ExpandMoreIcon from "@material-ui/icons/ExpandMore"; import MoreVertIcon from "@material-ui/icons/MoreVert"; +import LibraryBooksIcon from "@material-ui/icons/LibraryBooks"; import styles from "../../../components/common/styles/expandableCardStyles"; +import { useTranslation } from "react-i18next"; const useStyles = makeStyles(styles); -const AboutComponent = () => { +const AboutComponent = ({ onOpenDocumentation }) => { const classes = useStyles(); + const { t } = useTranslation(); const [expanded, setExpanded] = React.useState(false); const handleExpandClick = () => { @@ -40,22 +44,20 @@ const AboutComponent = () => { } - title="Shrimp and Chorizo Paella" - subheader="September 14, 2016" + title={t("About.Title")} + subheader={t("About.Subtitle")} /> - Aici se va descrie la ce e bun reverse proxy-ul asta si ce face el in - 2 3 linii. Poate contine si o poza. + {t("About.Content1")} - - - - - - + + + + + { - Method: - - Aici se va descrie tehnic si detaliat ce e un reverse proxy. Poate - contine si o poza. Link catre swagger pe undeva - - - Heat oil in a (14- to 16-inch) paella pan or a large, deep skillet - over medium-high heat. Add chicken, shrimp and chorizo, and cook, - stirring occasionally until lightly browned, 6 to 8 minutes. - Transfer shrimp to a large plate and set aside, leaving chicken and - chorizo in the pan. Add pimentón, bay leaves, garlic, tomatoes, - onion, salt and pepper, and cook, stirring often until thickened and - fragrant, about 10 minutes. Add saffron broth and remaining 4 1/2 - cups chicken broth; bring to a boil. - - - Add rice and stir very gently to distribute. Top with artichokes and - peppers, and cook without stirring, until most of the liquid is - absorbed, 15 to 18 minutes. Reduce heat to medium-low, add reserved - shrimp and mussels, tucking them down into the rice, and cook again - without stirring, until mussels have opened and rice is just tender, - 5 to 7 minutes more. (Discard any mussels that don’t open.) - - - Set aside off of the heat to let rest for 10 minutes, and then - serve. - + + + {t("About.Content2")} + + + + ... + + + + {t("About.Content1")} {t("About.Content3")} + + + ); }; +AboutComponent.propTypes = { + onOpenDocumentation: PropTypes.func.isRequired +}; + export default AboutComponent; diff --git a/src/features/about/components/AboutContainer.js b/src/features/about/components/AboutContainer.js index 42b0bc5..d8f8ee8 100644 --- a/src/features/about/components/AboutContainer.js +++ b/src/features/about/components/AboutContainer.js @@ -6,9 +6,15 @@ import AboutComponent from "./AboutComponent"; import TechnologiesComponent from "./TechnologiesComponent"; const AboutContainer = () => { + const handleOpenDocumentation = event => { + const url = process.env.REVERSE_PROXY_DOCS_URL; + window.open(url, "_blank"); + event.preventDefault(); + }; + return ( <> - +

diff --git a/src/features/about/components/TechnologiesComponent.js b/src/features/about/components/TechnologiesComponent.js index a3d2ba4..8a56c09 100644 --- a/src/features/about/components/TechnologiesComponent.js +++ b/src/features/about/components/TechnologiesComponent.js @@ -16,11 +16,24 @@ import ShareIcon from "@material-ui/icons/Share"; import ExpandMoreIcon from "@material-ui/icons/ExpandMore"; import MoreVertIcon from "@material-ui/icons/MoreVert"; import styles from "../../../components/common/styles/expandableCardStyles"; +import { useTranslation } from "react-i18next"; const useStyles = makeStyles(styles); +/* +https://codepen.io/emreavcilar/pen/eYmejLP +https://codepen.io/ajaykarwal/pen/bqwWNy +https://www.npmjs.com/package/react-skills-bars +https://www.npmjs.com/package/react-skillbars +https://kevincastejon.github.io/react-skills/documentation/ + + + +*/ + const TechnologiesComponent = () => { const classes = useStyles(); + const { t } = useTranslation(); const [expanded, setExpanded] = React.useState(false); const handleExpandClick = () => { @@ -40,7 +53,7 @@ const TechnologiesComponent = () => { } - title="Technologies" + title={t("About.Technologies.Title")} subheader="September 14, 2016" /> diff --git a/webpack.config.dev.js b/webpack.config.dev.js index 088acf8..ea7e902 100644 --- a/webpack.config.dev.js +++ b/webpack.config.dev.js @@ -1,9 +1,15 @@ const webpack = require("webpack"); const path = require("path"); +const config = require("./config"); const HtmlWebpackPlugin = require("html-webpack-plugin"); process.env.NODE_ENV = "development"; +let configs = {}; +Object.keys(config.dev).forEach(z => { + configs[`process.env.${z}`] = JSON.stringify(config.dev[z]); +}); + module.exports = { mode: "development", target: "web", @@ -23,12 +29,7 @@ module.exports = { https: false }, plugins: [ - new webpack.DefinePlugin({ - "process.env.REVERSE_PROXY_API_URL": JSON.stringify( - "http://localhost:5050" - ), - "process.env.CHATBOT_API_URL": JSON.stringify("http://localhost:5061") - }), + new webpack.DefinePlugin(configs), new HtmlWebpackPlugin({ template: "src/index.html", favicon: "src/favicon.ico"