From 365c56edcc36b5b92902bac01ce44b43d01e8685 Mon Sep 17 00:00:00 2001 From: Volpeon Date: Fri, 18 Oct 2024 18:08:24 +0200 Subject: Refactoring --- src/_functions.scss | 51 ++++++++++++--------------------------------------- 1 file changed, 12 insertions(+), 39 deletions(-) (limited to 'src/_functions.scss') diff --git a/src/_functions.scss b/src/_functions.scss index 4807cc1..ad45975 100644 --- a/src/_functions.scss +++ b/src/_functions.scss @@ -4,67 +4,40 @@ @use 'sass:list'; @use 'sass:meta'; -@use 'iro-sass/src/index' as iro; -@use 'iro-sass/src/easing' as easing; -@use 'functions/colors' as iro-colors; -@use 'palettes'; - -@function font-prop($data, $overrides, $key, $prop) { - @if (map.has-key($overrides, $prop)) { - @return map.get($overrides, $prop); - } @else if (map.has-key($data, $prop)) { - @return global-dim(--font $key $prop); - } - @return null; -} - -@function set-font($key, $overrides: ()) { - $font: iro.props-get-static(list.join(--dims --font, $key), $global: true); - - $map: ( - font-family: font-prop($font, $overrides, $key, --family), - font-size: font-prop($font, $overrides, $key, --size), - font-weight: font-prop($font, $overrides, $key, --weight), - font-style: font-prop($font, $overrides, $key, --style), - line-height: font-prop($font, $overrides, $key, --line-height), - text-transform: font-prop($font, $overrides, $key, --transform), - letter-spacing: font-prop($font, $overrides, $key, --spacing), - font-variant-alternates: font-prop($font, $overrides, $key, --variant-alternates), - font-feature-settings: font-prop($font, $overrides, $key, --feature-settings), - ); - - @return $map; -} +@use 'iro-sass/src/iro-sass' as iro; +@use 'iro-sass/src/easing'; +@use 'apca'; +@use 'themes'; @function palette($base-color, $contrasts, $chroma-range: 1, $ref-color: $base-color) { $base-lch: color.to-space($base-color, oklch); $ref-lch: color.to-space($ref-color, oklch); $ref-l: color.channel($ref-lch, 'lightness'); - $ref-y: iro-colors.apca_sRGB_to_Y($ref-lch); + $ref-y: apca.sRGB_to_Y($ref-lch); $cmax: math.max(map.values($contrasts)...); $cmax: math.max($cmax, math.abs(math.min(map.values($contrasts)...))); - $black-y: iro-colors.apca_sRGB_to_Y(#000); - $white-y: iro-colors.apca_sRGB_to_Y(#fff); + $black-y: apca.sRGB_to_Y(#000); + $white-y: apca.sRGB_to_Y(#fff); $chroma-inv: false; @if $chroma-range < 0 { $chroma-inv: true; $chroma-range: -1 * $chroma-range; } - $chroma-easing: meta.get-function(palettes.$palette-chroma-easing, $module: easing); + $chroma-easing: meta.get-function(themes.$palette-chroma-easing, $module: easing); $palette: (); @each $key, $contrast in $contrasts { - $y: iro-colors.apcaReverse($contrast, $ref-y); + $y: apca.reverse($contrast, $ref-y); $l: color.channel($base-lch, 'lightness'); $c: 1; @if $y != false { - $l: color.channel(iro-colors.apca_Y_to_sRGB($y), 'lightness', oklch); + $l: color.channel(apca.Y_to_sRGB($y), 'lightness', oklch); } @else { $y: $ref-y; } @@ -80,8 +53,8 @@ $color: oklch($l ($c * color.channel($base-lch, 'chroma')) color.channel($base-lch, 'hue')); - $contrast-black: iro-colors.apcaContrast($black-y, $y); - $contrast-white: iro-colors.apcaContrast($white-y, $y); + $contrast-black: apca.contrast($black-y, $y); + $contrast-white: apca.contrast($white-y, $y); $palette: map.set($palette, $key, $color); $palette: map.set($palette, #{$key}-text, if(math.abs($contrast-black) > math.abs($contrast-white), #000, #fff)); -- cgit v1.3.1