git.iko.soy/rowtype-yoga/psfp
on fd4a42d help sign in
134 lines 9.9 kB history raw
1// Generated by purs version 0.13.6
2"use strict";
3var Color = require("../Color/index.js");
4var Control_Semigroupoid = require("../Control.Semigroupoid/index.js");
5var Data_Array_NonEmpty_Internal = require("../Data.Array.NonEmpty.Internal/index.js");
6var Data_Foldable = require("../Data.Foldable/index.js");
7var Data_Monoid = require("../Data.Monoid/index.js");
8var Data_Symbol = require("../Data.Symbol/index.js");
9var Record_Builder = require("../Record.Builder/index.js");
10var increaseContrast = function (contrastWith) {
11 var modify = (function () {
12 var $546 = Color.isLight(contrastWith);
13 if ($546) {
14 return Color.darken;
15 };
16 return Color.lighten;
17 })();
18 var go = function ($copy_i) {
19 return function ($copy_col) {
20 var $tco_var_i = $copy_i;
21 var $tco_done = false;
22 var $tco_result;
23 function $tco_loop(i, col) {
24 var $547 = Color.contrast(contrastWith)(col) >= 7.5 || i >= 20;
25 if ($547) {
26 $tco_done = true;
27 return col;
28 };
29 $tco_var_i = i + 1 | 0;
30 $copy_col = modify(0.1)(col);
31 return;
32 };
33 while (!$tco_done) {
34 $tco_result = $tco_loop($tco_var_i, $copy_col);
35 };
36 return $tco_result;
37 };
38 };
39 return go(0);
40};
41var f = Data_Symbol.SProxy.value;
42var fromTheme = function (theme) {
43 var isLightTheme = Color.isLight(theme.backgroundColour);
44 var lighter = (function () {
45 if (isLightTheme) {
46 return Color.lighten(4.0e-2);
47 };
48 return Color.lighten(2.0e-2);
49 })();
50 var darker = (function () {
51 if (isLightTheme) {
52 return Color.darken(1.0e-2);
53 };
54 return Color.darken(1.0e-2);
55 })();
56 return Record_Builder.build(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
57 return "backgroundColour";
58 }))(f)(Color.toHexString))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
59 return "backgroundColourLighter";
60 }))(f)(Color.toHexString(lighter(theme.backgroundColour))))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
61 return "backgroundColourLightest";
62 }))(f)(Color.toHexString(lighter(lighter(theme.backgroundColour)))))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
63 return "backgroundColourDarker";
64 }))(f)(Color.toHexString(darker(theme.backgroundColour))))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
65 return "backgroundColourDarkest";
66 }))(f)(Color.toHexString(darker(darker(theme.backgroundColour)))))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
67 return "interfaceColour";
68 }))(f)(Color.toHexString))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
69 return "interfaceColourLighter";
70 }))(f)(Color.toHexString(lighter(theme.interfaceColour))))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
71 return "interfaceColourLightest";
72 }))(f)((function ($550) {
73 return Color.toHexString(lighter($550));
74 })(lighter(theme.interfaceColour))))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
75 return "interfaceColourDarker";
76 }))(f)(Color.toHexString(darker(theme.interfaceColour))))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
77 return "interfaceColourDarkest";
78 }))(f)((function ($551) {
79 return Color.toHexString(darker($551));
80 })(darker(theme.interfaceColour))))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
81 return "textColour";
82 }))(f)(Color.toHexString))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
83 return "textColourLighter";
84 }))(f)(Color.toHexString(lighter(theme.textColour))))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
85 return "textColourLightest";
86 }))(f)((function ($552) {
87 return Color.toHexString(lighter($552));
88 })(lighter(theme.textColour))))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
89 return "textColourDarker";
90 }))(f)(Color.toHexString(darker(theme.textColour))))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
91 return "textColourDarkest";
92 }))(f)((function ($553) {
93 return Color.toHexString(darker($553));
94 })(darker(theme.textColour))))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
95 return "highlightColour";
96 }))(f)(Color.toHexString))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
97 return "highlightColourDark";
98 }))(f)(Color.toHexString(Color.rotateHue(-10.0)(Color.darken(0.2)(theme.highlightColour)))))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
99 return "altHighlightColour";
100 }))(f)(Color.toHexString))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
101 return "altHighlightColourDark";
102 }))(f)(Color.toHexString(Color.darken(0.2)(theme.altHighlightColour))))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
103 return "yellow";
104 }))(f)(Color.toHexString))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
105 return "green";
106 }))(f)(Color.toHexString))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
107 return "pink";
108 }))(f)(Color.toHexString))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
109 return "orange";
110 }))(f)(Color.toHexString))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
111 return "turquoise";
112 }))(f)(Color.toHexString))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
113 return "red";
114 }))(f)(Color.toHexString))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
115 return "blue";
116 }))(f)(Color.toHexString))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
117 return "white";
118 }))(f)(Color.toHexString))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
119 return "textFontFamily";
120 }))(f)(Data_Foldable.intercalate(Data_Array_NonEmpty_Internal.foldableNonEmptyArray)(Data_Monoid.monoidString)(",")))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
121 return "headingFontFamily";
122 }))(f)(Data_Foldable.intercalate(Data_Array_NonEmpty_Internal.foldableNonEmptyArray)(Data_Monoid.monoidString)(",")))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.modify()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
123 return "codeFontFamily";
124 }))(f)(Data_Foldable.intercalate(Data_Array_NonEmpty_Internal.foldableNonEmptyArray)(Data_Monoid.monoidString)(",")))(Control_Semigroupoid.composeFlipped(Record_Builder.semigroupoidBuilder)(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
125 return "isLight";
126 }))(f)(isLightTheme))(Record_Builder.insert()()(new Data_Symbol.IsSymbol(function ($dollar__unused) {
127 return "fontWeightBold";
128 }))(f)("300")))))))))))))))))))))))))))))))))(theme);
129};
130module.exports = {
131 increaseContrast: increaseContrast,
132 f: f,
133 fromTheme: fromTheme
134};