@use 'sass:map';
@use '../02-tokens/dimensions-primitive' as dimensions-primitive;

$font-size-list: ('2xs', 'xs', 's', 'm', 'l', 'xl', '2xl', '3xl', '4xl', '5xl', '6xl', '7xl', '8xl', '9xl');

$font-size-map: (
  '9xl': 6rem,      // 96px
  '8xl': 4rem,      // 64px
  '7xl': 3.25rem,   // 52px
  '6xl': 2.75rem,   // 44px
  '5xl': 2.25rem,   // 36px
  '4xl': 1.75rem,   // 28px
  '3xl': 1.5rem,    // 24px
  '2xl': 1.375rem,  // 22px
  'xl': 1.25rem,    // 20px
  'l': 1.125rem,    // 18px
  'm': 1rem,        // 16px
  's': 0.875rem,    // 14px 
  'xs': 0.75rem,    // 12px
  '2xs': 0.625rem   // 10px
);

// font weight map

$font-weight-map: (
    'light': 300,
    'regular': 400,
    'medium': 500,
    'semi-bold': 600,
    'bold': 700
);

$font-line-height-map: (
  '10xl': map.get(dimensions-primitive.$dimension-map, 96),
  '9xl': map.get(dimensions-primitive.$dimension-map, 64),
  '8xl': map.get(dimensions-primitive.$dimension-map, 60),
  '7xl': map.get(dimensions-primitive.$dimension-map, 56),
  '6xl': map.get(dimensions-primitive.$dimension-map, 52),
  '5xl': map.get(dimensions-primitive.$dimension-map, 48),
  '4xl': map.get(dimensions-primitive.$dimension-map, 44),
  '3xl': map.get(dimensions-primitive.$dimension-map, 40),
  '2xl': map.get(dimensions-primitive.$dimension-map, 36),
  'xl': map.get(dimensions-primitive.$dimension-map, 32),
  'l': map.get(dimensions-primitive.$dimension-map, 28),
  'm': map.get(dimensions-primitive.$dimension-map, 24),
  's': map.get(dimensions-primitive.$dimension-map, 20),
  'xs': map.get(dimensions-primitive.$dimension-map, 16),
  '2xs': map.get(dimensions-primitive.$dimension-map, 12)
);

// semantic font-size link to letter-spacing map
$font-size-letter-spacing-map: (
  '9xl': -2%,
  '8xl': -2%,
  '7xl': -2%,
  '6xl': -1%,
  '5xl': -1%,
  '4xl': -1%,
  '3xl': -1%,
  '2xl': normal,
  'xl': normal,
  'l': normal,
  'm': normal,
  's': normal,
  'xs': normal,
  '2xs': normal
);


