b50a0da58377321e58bade7cb0f4f513d0205f7a
[redakcja.git] /
1 #functions {
2   @var: 10;
3   @colors: #000, #fff;
4   color: _color("evil red"); // #660000
5   width: increment(15);
6   height: undefined("self");
7   border-width: add(2, 3);
8   variable: increment(@var);
9   background: linear-gradient(@colors);
10 }
11
12 #built-in {
13   @r: 32;
14   escaped: e("-Some::weird(#thing, y)");
15   lighten: lighten(#ff0000, 40%);
16   darken: darken(#ff0000, 40%);
17   saturate: saturate(#29332f, 20%);
18   desaturate: desaturate(#203c31, 20%);
19   greyscale: greyscale(#203c31);
20   hsl-clamp: hsl(380, 150%, 150%);
21   spin-p: spin(hsl(340, 50%, 50%), 40);
22   spin-n: spin(hsl(30, 50%, 50%), -40);
23   luma-white: luma(#fff);
24   luma-black: luma(#000);
25   luma-black-alpha: luma(rgba(0,0,0,0.5));
26   luma-red: luma(#ff0000);
27   luma-green: luma(#00ff00);
28   luma-blue: luma(#0000ff);
29   luma-yellow: luma(#ffff00);
30   luma-cyan: luma(#00ffff);
31   luma-white-alpha: luma(rgba(255,255,255,0.5));
32   contrast-filter: contrast(30%);
33   saturate-filter: saturate(5%);
34   contrast-white: contrast(#fff);
35   contrast-black: contrast(#000);
36   contrast-red: contrast(#ff0000);
37   contrast-green: contrast(#00ff00);
38   contrast-blue: contrast(#0000ff);
39   contrast-yellow: contrast(#ffff00);
40   contrast-cyan: contrast(#00ffff);
41   contrast-light: contrast(#fff, #111111, #eeeeee);
42   contrast-dark: contrast(#000, #111111, #eeeeee);
43   contrast-wrongorder: contrast(#fff, #eeeeee, #111111, 0.5);
44   contrast-light-thresh: contrast(#fff, #111111, #eeeeee, 0.5);
45   contrast-dark-thresh: contrast(#000, #111111, #eeeeee, 0.5);
46   contrast-high-thresh: contrast(#555, #111111, #eeeeee, 0.6);
47   contrast-low-thresh: contrast(#555, #111111, #eeeeee, 0.1);
48   contrast-light-thresh-per: contrast(#fff, #111111, #eeeeee, 50%);
49   contrast-dark-thresh-per: contrast(#000, #111111, #eeeeee, 50%);
50   contrast-high-thresh-per: contrast(#555, #111111, #eeeeee, 60%);
51   contrast-low-thresh-per: contrast(#555, #111111, #eeeeee, 10%);
52   format: %("rgb(%d, %d, %d)", @r, 128, 64);
53   format-string: %("hello %s", "world");
54   format-multiple: %("hello %s %d", "earth", 2);
55   format-url-encode: %('red is %A', #ff0000);
56   eformat: e(%("rgb(%d, %d, %d)", @r, 128, 64));
57   
58   unitless: unit(12px);
59   unit: unit((13px + 1px), em);
60
61   hue: hue(hsl(98, 12%, 95%));
62   saturation: saturation(hsl(98, 12%, 95%));
63   lightness: lightness(hsl(98, 12%, 95%));
64   hsvhue: hsvhue(hsv(98, 12%, 95%));
65   hsvsaturation: hsvsaturation(hsv(98, 12%, 95%));
66   hsvvalue: hsvvalue(hsv(98, 12%, 95%));
67   red: red(#f00);
68   green: green(#0f0);
69   blue: blue(#00f);
70   rounded: round((@r/3));
71   rounded-two: round((@r/3), 2);
72   roundedpx: round((10px / 3));
73   roundedpx-three: round((10px / 3), 3);
74   rounded-percentage: round(10.2%);
75   ceil: ceil(10.1px);
76   floor: floor(12.9px);
77   sqrt: sqrt(25px);
78   pi: pi();
79   mod: mod(13m, 11cm); // could take into account units, doesn't at the moment
80   abs: abs(-4%);
81   tan: tan(42deg);
82   sin: sin(10deg);
83   cos: cos(12);
84   atan: atan(tan(0.1rad));
85   atan: convert(acos(cos(34deg)), deg);
86   atan: convert(acos(cos(50grad)), deg);
87   pow: pow(8px, 2);
88   pow: pow(4, 3);
89   pow: pow(3, 3em);
90   min: min(0);
91   min: min("junk", 6, 5);
92   min: min(1pc, 3pt);
93   max: max(1, 3);
94   max: max(3%, 1cm, 8%, 2mm);
95   percentage: percentage((10px / 50));
96   color: color("#ff0011");
97   tint: tint(#777777, 13);
98   tint-full: tint(#777777, 100);
99   tint-percent: tint(#777777, 13%);
100   shade: shade(#777777, 13);
101   shade-full: shade(#777777, 100);
102   shade-percent: shade(#777777, 13%);
103
104   fade-out: fadeOut(red, 5%); // support fadeOut and fadeout
105   fade-in: fadein(fadeout(red, 10%), 5%);
106   
107   hsv: hsv(5, 50%, 30%);
108   hsva: hsva(3, 50%, 30%, 0.2);
109
110   mix: mix(#ff0000, #ffff00, 80);
111   mix-0: mix(#ff0000, #ffff00, 0);
112   mix-100: mix(#ff0000, #ffff00, 100);
113   mix-weightless: mix(#ff0000, #ffff00);
114   mixt: mix(#ff0000, transparent);
115
116   .is-a {
117     color: iscolor(#ddd);
118     color1: iscolor(red);
119     color2: iscolor(rgb(0, 0, 0));
120     color3: iscolor(transparent);
121     keyword: iskeyword(hello);
122     number: isnumber(32);
123     string: isstring("hello");
124     pixel: ispixel(32px);
125     percent: ispercentage(32%);
126     em: isem(32em);
127     cat: isunit(32cat, cat);
128   }
129 }
130
131 #alpha {
132   alpha: darken(hsla(25, 50%, 50%, 0.6), 10%);
133   alpha2: alpha(rgba(3, 4, 5, 0.5));
134   alpha3: alpha(transparent);
135 }
136
137 #blendmodes {
138   multiply: multiply(#f60000, #f60000);
139   screen: screen(#f60000, #0000f6);
140   overlay: overlay(#f60000, #0000f6);
141   softlight: softlight(#f60000, #ffffff);
142   hardlight: hardlight(#f60000, #0000f6);
143   difference: difference(#f60000, #0000f6);
144   exclusion: exclusion(#f60000, #0000f6);
145   average: average(#f60000, #0000f6);
146   negation: negation(#f60000, #313131);
147 }
148
149 #extract-and-length {
150   @anon: A B C 1 2 3;
151   extract: extract(@anon, 6) extract(@anon, 5) extract(@anon, 4) extract(@anon, 3) extract(@anon, 2) extract(@anon, 1);
152   length: length(@anon);
153 }