result.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. import {
  2. formatNumber
  3. } from '../utils/format-number.js';
  4. export default class Result {
  5. constructor(element) {
  6. this.calculator = element;
  7. this.main = element.querySelector(`.counter__result`);
  8. this.rezultCaloriesMin = this.main.querySelector(`#calories-minimal`);
  9. this.resultCaloriesNorm = this.main.querySelector(`#calories-norm`);
  10. this.resultCaloriesMax = this.main.querySelector(`#calories-maximal`);
  11. }
  12. show(calories) {
  13. this.rezultCaloriesMin.textContent = formatNumber(calories.min);
  14. this.resultCaloriesNorm.textContent = formatNumber(calories.norm);
  15. this.resultCaloriesMax.textContent = formatNumber(calories.max);
  16. this.main.classList.remove(`counter__result--hidden`);
  17. this.main.scrollIntoView({
  18. block: `center`,
  19. behavior: `smooth`
  20. });
  21. }
  22. hide() {
  23. this.resultCaloriesNorm.textContent = 0;
  24. this.rezultCaloriesMin.textContent = 0;
  25. this.resultCaloriesMax.textContent = 0;
  26. this.main.classList.add(`counter__result--hidden`);
  27. this.calculator.scrollIntoView({
  28. block: `start`,
  29. behavior: `smooth`
  30. });
  31. }
  32. }