File: input.scss

package info (click to toggle)
node-node-sass 9.0.0%2Bgit20240131.6081731%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 75,520 kB
  • sloc: javascript: 7,313; cpp: 1,495; perl: 428; makefile: 11
file content (85 lines) | stat: -rw-r--r-- 1,318 bytes parent folder | download | duplicates (16)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
$map: (
  1: 1,
  1px: 1px
);

foo {
  a: map-get($map, 1);
  b: map-get($map, 1px);
}

$type-scale: (
	-15:0.066667rem,
	-10:0.186rem,
	-9:0.211rem,
	-8:0.26rem,
	-7:0.295rem,
	-6:0.364rem,
	-5:0.413rem,
	-4:0.51rem,
	-3:0.578rem,
	-2:0.714rem,
	-1:0.809rem,
	0:1rem,
	1:1.133rem,
	2:1.4rem,
	3:1.586rem,
	4:1.96rem,
	5:2.221rem,
	6:2.744rem,
	7:3.109rem,
	8:3.842rem,
	9:4.353rem,
	10:5.378rem,
	11:6.094rem,
	12:7.53rem,
	13:8.531rem,
	14:10.541rem,
	15:11.943rem,
	16:14.758rem
);

@function get-size($size) {
	@if map-has-key($type-scale, $size) {
		@return map-get($type-scale, $size);
	}

	@warn "Not a valid size.";
	@return null;
}

@function scale-size($rem-size, $steps) {
	$size-key: get-key-for-value($type-scale, $rem-size);

	@if $size-key {
		$new-size: $size-key + $steps;
		@return get-size($new-size);
	}

	@warn "Not able to find size for " + $rem-size;
	@return null;
}

@function get-key-for-value($map, $value) {
	@each $map-key, $map-value in $map {
		@if $map-value == $value {
			@return $map-key
		}
	}

	@warn $value + " not found in " + $map;
	@return null;
}

$h1-font-size: get-size(5);


h1 {
  font-size: $h1-font-size;

  small {
    font-size: scale-size($h1-font-size, -2);
    color: red;
  }
}