footer.js 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. const html = require('choo/html');
  2. const Component = require('choo/component');
  3. const version = require('../../package.json').version;
  4. const { browserName } = require('../utils');
  5. class Footer extends Component {
  6. constructor(name, state) {
  7. super(name);
  8. this.state = state;
  9. }
  10. update() {
  11. return false;
  12. }
  13. createElement() {
  14. const translate = this.state.translate;
  15. const browser = browserName();
  16. const feedbackUrl = `https://qsurvey.mozilla.com/s3/Firefox-Send-Product-Feedback?ver=${version}&browser=${browser}`;
  17. return html`
  18. <footer
  19. class="flex flex-col md:flex-row items-start w-full flex-none self-start p-6 md:p-8 font-medium text-xs text-grey-60 dark:text-grey-40 md:items-center justify-between"
  20. >
  21. <a class="mozilla-logo m-2" href="https://www.mozilla.org/">
  22. Mozilla
  23. </a>
  24. <ul
  25. class="flex flex-col md:flex-row items-start md:items-center md:justify-end"
  26. >
  27. <li class="m-2">
  28. <a href="https://www.mozilla.org/about/legal/terms/services/#send">
  29. ${translate('footerLinkLegal')}
  30. </a>
  31. </li>
  32. <li class="m-2">
  33. <a href="/legal"> ${translate('footerLinkPrivacy')} </a>
  34. </li>
  35. <li class="m-2">
  36. <a href="https://www.mozilla.org/privacy/websites/#cookies">
  37. ${translate('footerLinkCookies')}
  38. </a>
  39. </li>
  40. <li class="m-2">
  41. <a href="https://github.com/mozilla/send">GitHub </a>
  42. </li>
  43. <li class="m-2">
  44. <a
  45. href="${feedbackUrl}"
  46. rel="noreferrer noopener"
  47. class="feedback-link"
  48. alt="Feedback"
  49. target="_blank"
  50. >
  51. ${translate('siteFeedback')}
  52. </a>
  53. </li>
  54. </ul>
  55. </footer>
  56. `;
  57. }
  58. }
  59. module.exports = Footer;