From ba6021400b332c61e3c94b1fe094a5badb5075be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20FAMIBELLE-PRONZOLA?= Date: Sun, 14 Apr 2024 07:05:56 +0400 Subject: [PATCH] Create LicensesInfos component --- components/cc/licenses-infos.js | 96 +++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 components/cc/licenses-infos.js diff --git a/components/cc/licenses-infos.js b/components/cc/licenses-infos.js new file mode 100644 index 0000000..c861a79 --- /dev/null +++ b/components/cc/licenses-infos.js @@ -0,0 +1,96 @@ +/* eslint-disable import/extensions */ + +import Image from 'next/image' +import PropTypes from 'prop-types' +import Typography from '@mui/material/Typography' +import Box from '@mui/material/Box' +import List from '@mui/material/List' +import ListItem from '@mui/material/ListItem' +import ListItemText from '@mui/material/ListItemText' +import Button from '@mui/material/Button' +import Link from '@mui/material/Link' +import OpenInNewIcon from '@mui/icons-material/OpenInNew' + +import licencesData from './data.json' +import licensesConditions from './conditions.json' + +export default function LicensesInfo({license}) { + const licenseInfo = licencesData.find(item => item.license === license) + const licenseList = licenseInfo.license.split('-') + + const conditions = licenseList.map(license => licensesConditions[license]) + + return ( + + + + {license} + + {licenseList.map(license => ( + + {license} + + ))} + + {licenseInfo.title} + {licenseInfo.subtitle} + Vous êtes autorisé à : + + {Object.entries(licenseInfo.allowed).map(([action, description]) => ( + + + {action} + + {action}} + secondary={{description}} + /> + + ))} + + Conditions : + + {conditions.map(({name, description}, index) => ( + + + {licenseList[index]} + + {name}} + secondary={{description}} + /> + + ))} + + + + + + ) +} + +LicensesInfo.propTypes = { + license: PropTypes.string.isRequired +}