| Total Complexity | 5 |
| Complexity/F | 1.67 |
| Lines of Code | 63 |
| Function Count | 3 |
| Duplicated Lines | 0 |
| Ratio | 0 % |
| Changes | 0 | ||
| 1 | import React from 'react'; |
||
| 2 | import clsx from 'clsx'; |
||
| 3 | import styles from './SponsorList.module.css'; |
||
| 4 | import DonationList from '../data/donations' |
||
| 5 | import SponsorList from '../data/sponsors' |
||
| 6 | |||
| 7 | function Sponsor({ title, Svg, image, url, description}) { |
||
| 8 | return ( |
||
| 9 | <div className={clsx('col col--4')}> |
||
| 10 | <div className="text--center"> |
||
| 11 | <a href={url}> |
||
| 12 | { |
||
| 13 | Svg ? <Svg className={styles.sponsorImage} alt={title} /> : null |
||
| 14 | } |
||
| 15 | { |
||
| 16 | image ? <img src={image} alt={title} className={styles.sponsorImage}/> : null |
||
| 17 | } |
||
| 18 | </a> |
||
| 19 | </div> |
||
| 20 | <div className="text--center padding-horiz--md"> |
||
| 21 | <h3>{title}</h3> |
||
| 22 | <p>{description}</p> |
||
| 23 | </div> |
||
| 24 | </div> |
||
| 25 | ); |
||
| 26 | } |
||
| 27 | |||
| 28 | function Donor({ name, message, amount, date}) { |
||
| 29 | return ( |
||
| 30 | <div className={clsx('col col--4')}> |
||
| 31 | <div className="text--center padding-horiz--md"> |
||
| 32 | <h3>{name}</h3> |
||
| 33 | <p>{message}</p> |
||
| 34 | <span>{amount}</span> |
||
| 35 | <span>{date}</span> |
||
| 36 | </div> |
||
| 37 | </div> |
||
| 38 | ); |
||
| 39 | } |
||
| 40 | |||
| 41 | export default function SponsorsList() { |
||
| 42 | return ( |
||
| 43 | <section className={styles.sponsors}> |
||
| 44 | <h2>Sponsors</h2> |
||
| 45 | <div className="container"> |
||
| 46 | <div className={`row ${styles.sponsorBlock} shadow--sm`}> |
||
| 47 | {SponsorList.map((props, idx) => ( |
||
| 48 | <Sponsor key={idx} {...props} /> |
||
| 49 | ))} |
||
| 50 | </div> |
||
| 51 | </div> |
||
| 52 | {/* <br /> |
||
| 53 | <div className="container"> |
||
| 54 | <div className="row"> |
||
| 55 | {DonationList.map((props, idx) => ( |
||
| 56 | <Donor key={idx} {...props} /> |
||
| 57 | ))} |
||
| 58 | </div> |
||
| 59 | </div> */} |
||
| 60 | </section> |
||
| 61 | ); |
||
| 62 | } |
||
| 63 |