Sha256: b47bfb593b77a136866aef2685d88241e3e2e375688d281a58a3d99c95b05e77

Contents?: true

Size: 1.73 KB

Versions: 7

Compression:

Stored size: 1.73 KB

Contents

// Calculate margin
// -------------------------------------------------------------------------------
// @param $key [string] : key for lookup
// @param $span [number] : span value of element
// @param $context [number] : context value of element
// -------------------------------------------------------------------------------
// @return calculated value | false

@function flint-calc-margin($key, $span, $context: null) {
	$result: false;

	// Check to see if value has been cached
	@if map-has-key($flint__cached-values, "#{$key, $span, $context}::margin") and $context != "auto" {
		@return map-get($flint__cached-values, "#{$key, $span, $context}::margin");
	}

	@if flint-get-value("settings", "grid") == "fluid" {

		@if $key == "container" or $span == "container" {

			$result: 0;

		} @else if $context == null {

			$result: flint-fluid-width(flint-get-value("settings", "gutter"), flint-get-value($key, "breakpoint"));

		} @else if $context <= flint-get-value($key, "columns") {

			$result: flint-fluid-width(flint-get-value("settings", "gutter"), ((flint-get-value($key, "breakpoint") / flint-get-value($key, "columns") * $context)));

		} @else {

			$result: flint-fluid-width(flint-get-value("settings", "gutter") / flint-get-value($key, "columns") * $context, ((flint-get-value($key, "breakpoint") / flint-get-value($key, "columns") * $context)));

		}

	} @if flint-get-value("settings", "grid") == "fixed" {

		@if $key == "container" or $span == "container" {

			$result: 0;

		} @else {

			$result: flint-get-value("settings", "gutter");
		}

	}

	// Save result to cache
	@if $context != "auto" {
		$flint__cached-values: map-merge($flint__cached-values, ("#{$key, $span, $context}::margin": $result));
	}

	// Return result
	@return $result;
}

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
flint-gs-1.12.0 stylesheets/flint/functions/lib/_calc-margin.scss
flint-gs-1.11.2 stylesheets/flint/functions/lib/_calc-margin.scss
flint-gs-1.10.0 stylesheets/flint/functions/lib/_calc-margin.scss
flint-gs-1.9.1 stylesheets/flint/functions/lib/_calc-margin.scss
flint-gs-1.8.0 stylesheets/flint/functions/lib/_calc-margin.scss
flint-gs-1.7.2 stylesheets/flint/functions/lib/_calc-margin.scss
flint-gs-1.7.0 stylesheets/flint/functions/lib/_calc-margin.scss