No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.
 
 
 
 

37 líneas
1.3 KiB

  1. import './quick-facts.scss';
  2. import $ from 'jquery';
  3. import {QuickFactsData} from "./QuickFactsData";
  4. import {createElement, formatNumber} from "../../_global/scripts/helpers";
  5. import IHKQuickFacts from "./quick-facts";
  6. export const createQuickFacts = ({
  7. headline = 'Quick Facts',
  8. facts = QuickFactsData,
  9. }) => {
  10. const section = createElement('section', ['quick-facts']);
  11. const container = createElement('div', ['container'], null, section);
  12. if (headline && headline.length > 0) {
  13. createElement('h2', [], headline, container);
  14. }
  15. const slider = createElement('div', ['slider'], null, container);
  16. facts.map((fact) => {
  17. const slide = createElement('div', ['slide'], null, slider);
  18. if (fact.counter) {
  19. const p = createElement('p', [], null, slide);
  20. const targetValue = formatNumber(fact.counter.to, fact.counter.decimals);
  21. const counter = createElement('span', ['counter'], targetValue, p);
  22. counter.dataset.from = fact.counter.from;
  23. counter.dataset.to = fact.counter.to;
  24. counter.dataset.duration = fact.counter.duration;
  25. counter.dataset.decimals = fact.counter.decimals;
  26. createElement('span', ['fact-label'], fact.label, p);
  27. } else {
  28. createElement('p', ['like-h4'], fact.label, slide);
  29. }
  30. })
  31. new IHKQuickFacts($(section));
  32. return section;
  33. }