@@ -0,0 +1,90 @@
1+[38;2;249;38;114m@import[0m[38;2;248;248;242m [0m[38;2;230;219;116m'config'[0m
2+
3+[38;2;117;113;94m/*[0m
4+[38;2;117;113;94m * Implicit color stop position.[0m
5+[38;2;117;113;94m [0m[38;2;117;113;94m*/[0m
6+
7+[38;2;166;226;46mpos-in-stops[0m[38;2;248;248;242m([0m[38;2;255;255;255mi[0m[38;2;248;248;242m, [0m[38;2;255;255;255mstops[0m[38;2;248;248;242m)[0m
8+[38;2;248;248;242m [0m[38;2;255;255;255mlen[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;166;226;46mlength[0m[38;2;248;248;242m([0m[38;2;255;255;255mstops[0m[38;2;248;248;242m)[0m
9+[38;2;248;248;242m [0m[38;2;249;38;114mif[0m[38;2;248;248;242m [0m[38;2;255;255;255mlen[0m[38;2;248;248;242m [0m[38;2;249;38;114m-[0m[38;2;248;248;242m [0m[38;2;190;132;255m1[0m[38;2;248;248;242m [0m[38;2;249;38;114m==[0m[38;2;248;248;242m [0m[38;2;255;255;255mi[0m
10+[38;2;248;248;242m [0m[38;2;166;226;46m100%[0m
11+[38;2;248;248;242m [0m[38;2;249;38;114melse[0m[38;2;248;248;242m [0m[38;2;255;255;255mif[0m[38;2;248;248;242m [0m[38;2;255;255;255mi[0m
12+[38;2;248;248;242m [0m[38;2;166;226;46munit[0m[38;2;248;248;242m([0m[38;2;255;255;255mi[0m[38;2;248;248;242m [0m[38;2;249;38;114m/[0m[38;2;248;248;242m [0m[38;2;255;255;255mlen[0m[38;2;248;248;242m [0m[38;2;249;38;114m*[0m[38;2;248;248;242m [0m[38;2;190;132;255m100[0m[38;2;248;248;242m, [0m[38;2;230;219;116m'%'[0m[38;2;248;248;242m)[0m
13+[38;2;248;248;242m [0m[38;2;249;38;114melse[0m
14+[38;2;248;248;242m [0m[3;38;2;166;226;46m0[0m
15+
16+[38;2;117;113;94m/*[0m
17+[38;2;117;113;94m * Normalize color stops:[0m
18+[38;2;117;113;94m *[0m
19+[38;2;117;113;94m * - (color pos) -> (pos color)[0m
20+[38;2;117;113;94m * - (color) -> (implied-pos color)[0m
21+[38;2;117;113;94m *[0m
22+[38;2;117;113;94m [0m[38;2;117;113;94m*/[0m
23+
24+[38;2;166;226;46mnormalize-stops[0m[38;2;248;248;242m([0m[38;2;255;255;255mstops[0m[38;2;248;248;242m)[0m
25+[38;2;248;248;242m [0m[38;2;255;255;255mstops[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;166;226;46mclone[0m[38;2;248;248;242m([0m[38;2;255;255;255mstops[0m[38;2;248;248;242m)[0m
26+[38;2;248;248;242m [0m[38;2;249;38;114mfor[0m[38;2;248;248;242m [0m[38;2;255;255;255mstop[0m[38;2;248;248;242m, [0m[38;2;255;255;255mi[0m[38;2;249;38;114m in[0m[38;2;248;248;242m [0m[38;2;255;255;255mstops[0m
27+[38;2;248;248;242m [0m[38;2;249;38;114mif[0m[38;2;248;248;242m [0m[38;2;166;226;46mlength[0m[38;2;248;248;242m([0m[38;2;255;255;255mstop[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114m==[0m[38;2;248;248;242m [0m[38;2;190;132;255m1[0m
28+[38;2;248;248;242m [0m[38;2;255;255;255mcolor[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;255;255;255mstop[0m[38;2;248;248;242m[[0m[38;2;255;255;255m0[0m[38;2;248;248;242m][0m
29+[38;2;248;248;242m [0m[38;2;255;255;255mstop[0m[38;2;248;248;242m[[0m[38;2;255;255;255m0[0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;166;226;46mpos-in-stops[0m[38;2;248;248;242m([0m[38;2;255;255;255mi[0m[38;2;248;248;242m, [0m[38;2;255;255;255mstops[0m[38;2;248;248;242m)[0m
30+[38;2;248;248;242m [0m[38;2;255;255;255mstop[0m[38;2;248;248;242m[[0m[38;2;255;255;255m1[0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;255;255;255mcolor[0m
31+[38;2;248;248;242m [0m[38;2;249;38;114melse[0m[38;2;248;248;242m [0m[38;2;255;255;255mif[0m[38;2;248;248;242m [0m[38;2;166;226;46mtypeof[0m[38;2;248;248;242m([0m[38;2;255;255;255mstop[0m[38;2;248;248;242m[[0m[38;2;255;255;255m1[0m[38;2;248;248;242m][0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114m==[0m[38;2;248;248;242m [0m[38;2;230;219;116m'unit'[0m
32+[38;2;248;248;242m [0m[38;2;255;255;255mpos[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;255;255;255mstop[0m[38;2;248;248;242m[[0m[38;2;255;255;255m1[0m[38;2;248;248;242m][0m
33+[38;2;248;248;242m [0m[38;2;255;255;255mstop[0m[38;2;248;248;242m[[0m[38;2;255;255;255m1[0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;255;255;255mstop[0m[38;2;248;248;242m[[0m[38;2;255;255;255m0[0m[38;2;248;248;242m][0m
34+[38;2;248;248;242m [0m[38;2;255;255;255mstop[0m[38;2;248;248;242m[[0m[38;2;255;255;255m0[0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;255;255;255mpos[0m
35+[38;2;248;248;242m [0m[3;38;2;166;226;46ms[0m[3;38;2;166;226;46mt[0m[3;38;2;166;226;46mo[0m[3;38;2;166;226;46mp[0m[3;38;2;166;226;46ms[0m
36+
37+[38;2;117;113;94m/*[0m
38+[38;2;117;113;94m * Join color stops with the given translation function.[0m
39+[38;2;117;113;94m [0m[38;2;117;113;94m*/[0m
40+
41+[38;2;166;226;46mjoin-stops[0m[38;2;248;248;242m([0m[38;2;255;255;255mstops[0m[38;2;248;248;242m, [0m[38;2;255;255;255mtranslate[0m[38;2;248;248;242m)[0m
42+[38;2;248;248;242m [0m[38;2;255;255;255mstr[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;230;219;116m''[0m
43+[38;2;248;248;242m [0m[38;2;255;255;255mlen[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;166;226;46mlength[0m[38;2;248;248;242m([0m[38;2;255;255;255mstops[0m[38;2;248;248;242m)[0m
44+[38;2;248;248;242m [0m[38;2;249;38;114mfor[0m[38;2;248;248;242m [0m[38;2;255;255;255mstop[0m[38;2;248;248;242m, [0m[38;2;255;255;255mi[0m[38;2;249;38;114m in[0m[38;2;248;248;242m [0m[38;2;255;255;255mstops[0m
45+[38;2;248;248;242m [0m[3;38;2;166;226;46ms[0m[3;38;2;166;226;46mt[0m[3;38;2;166;226;46mr[0m[38;2;248;248;242m [0m[38;2;249;38;114m+[0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;230;219;116m', '[0m[38;2;248;248;242m [0m[38;2;249;38;114mif[0m[38;2;248;248;242m [0m[38;2;255;255;255mi[0m
46+[38;2;248;248;242m [0m[38;2;255;255;255mpos[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;255;255;255mstop[0m[38;2;248;248;242m[[0m[38;2;255;255;255m0[0m[38;2;248;248;242m][0m
47+[38;2;248;248;242m [0m[38;2;255;255;255mcolor[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;255;255;255mstop[0m[38;2;248;248;242m[[0m[38;2;255;255;255m1[0m[38;2;248;248;242m][0m
48+[38;2;248;248;242m [0m[3;38;2;166;226;46ms[0m[3;38;2;166;226;46mt[0m[3;38;2;166;226;46mr[0m[38;2;248;248;242m [0m[38;2;249;38;114m+[0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;166;226;46mtranslate[0m[38;2;248;248;242m([0m[38;2;255;255;255mcolor[0m[38;2;248;248;242m, [0m[38;2;255;255;255mpos[0m[38;2;248;248;242m)[0m
49+[38;2;248;248;242m [0m[38;2;166;226;46munquote[0m[38;2;248;248;242m([0m[38;2;255;255;255mstr[0m[38;2;248;248;242m)[0m
50+
51+[38;2;117;113;94m/*[0m
52+[38;2;117;113;94m * Standard color stop.[0m
53+[38;2;117;113;94m [0m[38;2;117;113;94m*/[0m
54+
55+[38;2;166;226;46mstd-stop[0m[38;2;248;248;242m([0m[38;2;255;255;255mcolor[0m[38;2;248;248;242m, [0m[38;2;255;255;255mpos[0m[38;2;248;248;242m)[0m
56+[38;2;248;248;242m [0m[38;2;230;219;116m'%s %s'[0m[38;2;248;248;242m [0m[38;2;249;38;114m%[0m[38;2;248;248;242m (color pos)[0m
57+
58+[38;2;117;113;94m/*[0m
59+[38;2;117;113;94m * Create a linear gradient with the given start position[0m
60+[38;2;117;113;94m * and variable number of color stops.[0m
61+[38;2;117;113;94m *[0m
62+[38;2;117;113;94m * Examples:[0m
63+[38;2;117;113;94m *[0m
64+[38;2;117;113;94m * background: linear-gradient(top, red, green, blue)[0m
65+[38;2;117;113;94m * background: linear-gradient(bottom, red, green 50%, blue)[0m
66+[38;2;117;113;94m * background: linear-gradient(bottom, red, 50% green, blue)[0m
67+[38;2;117;113;94m * background: linear-gradient(bottom, red, 50% green, 90% white, blue)[0m
68+[38;2;117;113;94m *[0m
69+[38;2;117;113;94m [0m[38;2;117;113;94m*/[0m
70+
71+[38;2;166;226;46mlinear-gradient[0m[38;2;248;248;242m([0m[38;2;255;255;255mstart[0m[38;2;248;248;242m, [0m[38;2;255;255;255mstops[0m[38;2;248;248;242m.[0m[38;2;248;248;242m.[0m[38;2;248;248;242m.[0m[38;2;248;248;242m)[0m
72+[38;2;248;248;242m [0m[38;2;166;226;46merror[0m[38;2;248;248;242m([0m[38;2;230;219;116m'color stops required'[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114munless[0m[38;2;248;248;242m [0m[38;2;166;226;46mlength[0m[38;2;248;248;242m([0m[38;2;255;255;255mstops[0m[38;2;248;248;242m)[0m
73+
74+[38;2;248;248;242m [0m[38;2;166;226;46munquote[0m[38;2;248;248;242m([0m[38;2;230;219;116m'linear-gradient('[0m[38;2;248;248;242m [0m[38;2;249;38;114m+[0m[38;2;248;248;242m [0m[38;2;166;226;46mjoin[0m[38;2;248;248;242m([0m[38;2;230;219;116m', '[0m[38;2;248;248;242m,[0m[38;2;255;255;255marguments[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114m+[0m[38;2;248;248;242m [0m[38;2;230;219;116m')'[0m[38;2;248;248;242m)[0m
75+
76+[38;2;117;113;94m/*[0m
77+[38;2;117;113;94m * Create a linear gradient image with the given start position[0m
78+[38;2;117;113;94m * and variable number of color stops.[0m
79+[38;2;117;113;94m [0m[38;2;117;113;94m*/[0m
80+
81+[38;2;166;226;46mlinear-gradient-image[0m[38;2;248;248;242m([0m[38;2;255;255;255mstart[0m[38;2;248;248;242m, [0m[38;2;255;255;255mstops[0m[38;2;248;248;242m.[0m[38;2;248;248;242m.[0m[38;2;248;248;242m.[0m[38;2;248;248;242m)[0m
82+[38;2;248;248;242m [0m[38;2;166;226;46merror[0m[38;2;248;248;242m([0m[38;2;230;219;116m'node-canvas is required for linear-gradient-image()'[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114munless[0m[38;2;248;248;242m [0m[38;2;255;255;255mhas-canvas[0m
83+[38;2;248;248;242m [0m[38;2;255;255;255mstops[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;255;255;255mstops[0m[38;2;248;248;242m[[0m[38;2;255;255;255m0[0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;249;38;114mif[0m[38;2;248;248;242m [0m[38;2;166;226;46mlength[0m[38;2;248;248;242m([0m[38;2;255;255;255mstops[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114m==[0m[38;2;248;248;242m [0m[38;2;190;132;255m1[0m
84+[38;2;248;248;242m [0m[38;2;166;226;46merror[0m[38;2;248;248;242m([0m[38;2;230;219;116m'gradient image size required'[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114munless[0m[38;2;248;248;242m [0m[38;2;255;255;255mstart[0m[38;2;248;248;242m[[0m[38;2;255;255;255m0[0m[38;2;248;248;242m][0m[38;2;249;38;114m is a[0m[38;2;248;248;242m [0m[38;2;230;219;116m'unit'[0m
85+[38;2;248;248;242m [0m[38;2;255;255;255msize[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;255;255;255mstart[0m[38;2;248;248;242m[[0m[38;2;255;255;255m0[0m[38;2;248;248;242m][0m
86+[38;2;248;248;242m [0m[38;2;255;255;255mstart[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;255;255;255mstart[0m[38;2;248;248;242m[[0m[38;2;255;255;255m1[0m[38;2;248;248;242m][0m[38;2;248;248;242m [0m[38;2;255;255;255mor[0m[38;2;248;248;242m [0m[38;2;230;219;116m'top'[0m
87+[38;2;248;248;242m [0m[38;2;255;255;255mgrad[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;166;226;46mcreate-gradient-image[0m[38;2;248;248;242m([0m[38;2;255;255;255msize[0m[38;2;248;248;242m, [0m[38;2;255;255;255mstart[0m[38;2;248;248;242m)[0m
88+[38;2;248;248;242m [0m[38;2;255;255;255mstops[0m[38;2;248;248;242m [0m[38;2;249;38;114m=[0m[38;2;248;248;242m [0m[38;2;166;226;46mnormalize-stops[0m[38;2;248;248;242m([0m[38;2;255;255;255mstops[0m[38;2;248;248;242m)[0m
89+[38;2;248;248;242m [0m[38;2;166;226;46madd-color-stop[0m[38;2;248;248;242m([0m[38;2;255;255;255mgrad[0m[38;2;248;248;242m, [0m[38;2;255;255;255mstop[0m[38;2;248;248;242m[[0m[38;2;255;255;255m0[0m[38;2;248;248;242m][0m[38;2;248;248;242m, [0m[38;2;255;255;255mstop[0m[38;2;248;248;242m[[0m[38;2;255;255;255m1[0m[38;2;248;248;242m][0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;249;38;114mfor[0m[38;2;248;248;242m [0m[38;2;255;255;255mstop[0m[38;2;249;38;114m in[0m[38;2;248;248;242m [0m[38;2;255;255;255mstops[0m
90+[38;2;248;248;242m [0m[38;2;230;219;116m'url(%s)'[0m[38;2;248;248;242m [0m[38;2;249;38;114m%[0m[38;2;248;248;242m [0m[38;2;166;226;46mgradient-data-uri[0m[38;2;248;248;242m([0m[38;2;255;255;255mgrad[0m[38;2;248;248;242m)[0m