@import "../themes/liberty.globals";

// Liberty Colors
// --------------------------------------------------
// Generates the color classes and variables based on the
// colors map

@mixin generate-color($color-name) {
  $value: map-get($colors, $color-name);

  $base: map-get($value, base);
  $contrast: map-get($value, contrast);
  $shade: map-get($value, shade);
  $tint: map-get($value, tint);

  --lu-color-base: var(--lu-color-#{$color-name}, #{$base}) !important;
  --lu-color-base-rgb: var(--lu-color-#{$color-name}-rgb, #{color-to-rgb-list($base)}) !important;
  --lu-color-contrast: var(--lu-color-#{$color-name}-contrast, #{$contrast}) !important;
  --lu-color-contrast-rgb: var(--lu-color-#{$color-name}-contrast-rgb, #{color-to-rgb-list($contrast)}) !important;
  --lu-color-shade: var(--lu-color-#{$color-name}-shade, #{$shade}) !important;
  --lu-color-tint: var(--lu-color-#{$color-name}-tint, #{$tint}) !important;
}

@each $color-name, $value in $colors {
  .lu-color-#{$color-name} {
    @include generate-color($color-name);
  }
}
