diff options
Diffstat (limited to 'scss/values/spacing/_spacing.scss')
| -rw-r--r-- | scss/values/spacing/_spacing.scss | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/scss/values/spacing/_spacing.scss b/scss/values/spacing/_spacing.scss new file mode 100644 index 0000000..4fd94e8 --- /dev/null +++ b/scss/values/spacing/_spacing.scss @@ -0,0 +1,32 @@ +@use 'sass:list'; +@use 'sass:map'; + +@use 'constants'; +@use 'grid'; + +/** + * - size: sm, md, lg + * - direction: inline, block + */ +@function spacing($direction, $size, $breakpoint: initial) { + $factor: map.get( + map.get(constants.$spacing-factor, $direction), + $size + ); + + @if list.index([xxl xl lg md sm], ($breakpoint)) { + @return grid.er-to-absolute($factor, $breakpoint); + } + @else if $breakpoint == xs { + @return clamp( + spacing($direction, $size, initial), + grid.er-to-absolute($factor, xs), + spacing($direction, $size, sm) + ); + } + @else if $breakpoint == initial { + @return calc($factor * 0.0625rem); + } + @error "Invalid breakpoint: #{$breakpoint}"; +} + |
