genFontMapToken.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435
  1. import genFontSizes from './genFontSizes';
  2. const genFontMapToken = fontSize => {
  3. const fontSizePairs = genFontSizes(fontSize);
  4. const fontSizes = fontSizePairs.map(pair => pair.size);
  5. const lineHeights = fontSizePairs.map(pair => pair.lineHeight);
  6. const fontSizeMD = fontSizes[1];
  7. const fontSizeSM = fontSizes[0];
  8. const fontSizeLG = fontSizes[2];
  9. const lineHeight = lineHeights[1];
  10. const lineHeightSM = lineHeights[0];
  11. const lineHeightLG = lineHeights[2];
  12. return {
  13. fontSizeSM,
  14. fontSize: fontSizeMD,
  15. fontSizeLG,
  16. fontSizeXL: fontSizes[3],
  17. fontSizeHeading1: fontSizes[6],
  18. fontSizeHeading2: fontSizes[5],
  19. fontSizeHeading3: fontSizes[4],
  20. fontSizeHeading4: fontSizes[3],
  21. fontSizeHeading5: fontSizes[2],
  22. lineHeight,
  23. lineHeightLG,
  24. lineHeightSM,
  25. fontHeight: Math.round(lineHeight * fontSizeMD),
  26. fontHeightLG: Math.round(lineHeightLG * fontSizeLG),
  27. fontHeightSM: Math.round(lineHeightSM * fontSizeSM),
  28. lineHeightHeading1: lineHeights[6],
  29. lineHeightHeading2: lineHeights[5],
  30. lineHeightHeading3: lineHeights[4],
  31. lineHeightHeading4: lineHeights[3],
  32. lineHeightHeading5: lineHeights[2]
  33. };
  34. };
  35. export default genFontMapToken;