From 3054a81adb76e92e86a48ec06570c36ce7bd3bf8 Mon Sep 17 00:00:00 2001 From: "Yann Esposito (Yogsototh)" Date: Wed, 30 Oct 2019 00:27:37 +0100 Subject: [PATCH] demo working level --- ui/assets/app.js | 7529 +++++++++++++++++++++++++++-------------- ui/assets/index.html | 12 + ui/dev.sh | 4 +- ui/spago.dhall | 6 +- ui/src/Main.purs | 4 +- ui/src/Solaryzed.purs | 92 + 6 files changed, 5194 insertions(+), 2453 deletions(-) create mode 100644 ui/src/Solaryzed.purs diff --git a/ui/assets/app.js b/ui/assets/app.js index 5e5cb82..66d8eb2 100644 --- a/ui/assets/app.js +++ b/ui/assets/app.js @@ -1,19 +1,38 @@ // Generated by purs bundle 0.13.3 var PS = {}; +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["CSS.String"] = $PS["CSS.String"] || {}; + var exports = $PS["CSS.String"]; + var IsString = function (fromString) { + this.fromString = fromString; + }; + var fromString = function (dict) { + return dict.fromString; + }; + exports["fromString"] = fromString; + exports["IsString"] = IsString; +})(PS); (function(exports) { "use strict"; - exports.arrayMap = function (f) { - return function (arr) { - var l = arr.length; - var result = new Array(l); + exports.arrayApply = function (fs) { + return function (xs) { + var l = fs.length; + var k = xs.length; + var result = new Array(l*k); + var n = 0; for (var i = 0; i < l; i++) { - result[i] = f(arr[i]); + var f = fs[i]; + for (var j = 0; j < k; j++) { + result[n++] = f(xs[j]); + } } return result; }; }; -})(PS["Data.Functor"] = PS["Data.Functor"] || {}); +})(PS["Control.Apply"] = PS["Control.Apply"] || {}); (function($PS) { // Generated by purs version 0.13.3 "use strict"; @@ -35,6 +54,27 @@ var PS = {}; exports["compose"] = compose; exports["semigroupoidFn"] = semigroupoidFn; })(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Control.Category"] = $PS["Control.Category"] || {}; + var exports = $PS["Control.Category"]; + var Control_Semigroupoid = $PS["Control.Semigroupoid"]; + var Category = function (Semigroupoid0, identity) { + this.Semigroupoid0 = Semigroupoid0; + this.identity = identity; + }; + var identity = function (dict) { + return dict.identity; + }; + var categoryFn = new Category(function () { + return Control_Semigroupoid.semigroupoidFn; + }, function (x) { + return x; + }); + exports["identity"] = identity; + exports["categoryFn"] = categoryFn; +})(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; @@ -52,12 +92,32 @@ var PS = {}; return a; }; }; + var applyFlipped = function (x) { + return function (f) { + return f(x); + }; + }; exports["flip"] = flip; exports["const"] = $$const; + exports["applyFlipped"] = applyFlipped; })(PS); (function(exports) { "use strict"; + exports.arrayMap = function (f) { + return function (arr) { + var l = arr.length; + var result = new Array(l); + for (var i = 0; i < l; i++) { + result[i] = f(arr[i]); + } + return result; + }; + }; +})(PS["Data.Functor"] = PS["Data.Functor"] || {}); +(function(exports) { + "use strict"; + exports.unit = {}; })(PS["Data.Unit"] = PS["Data.Unit"] || {}); (function($PS) { @@ -102,97 +162,22 @@ var PS = {}; exports["functorFn"] = functorFn; exports["functorArray"] = functorArray; })(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.Tuple"] = $PS["Data.Tuple"] || {}; - var exports = $PS["Data.Tuple"]; - var Data_Functor = $PS["Data.Functor"]; - var Tuple = (function () { - function Tuple(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - Tuple.create = function (value0) { - return function (value1) { - return new Tuple(value0, value1); - }; - }; - return Tuple; - })(); - var snd = function (v) { - return v.value1; - }; - var functorTuple = new Data_Functor.Functor(function (f) { - return function (m) { - return new Tuple(m.value0, f(m.value1)); - }; - }); - var fst = function (v) { - return v.value0; - }; - exports["Tuple"] = Tuple; - exports["fst"] = fst; - exports["snd"] = snd; - exports["functorTuple"] = functorTuple; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Control.Monad.State.Class"] = $PS["Control.Monad.State.Class"] || {}; - var exports = $PS["Control.Monad.State.Class"]; - var Data_Tuple = $PS["Data.Tuple"]; - var Data_Unit = $PS["Data.Unit"]; - var MonadState = function (Monad0, state) { - this.Monad0 = Monad0; - this.state = state; - }; - var state = function (dict) { - return dict.state; - }; - var modify_ = function (dictMonadState) { - return function (f) { - return state(dictMonadState)(function (s) { - return new Data_Tuple.Tuple(Data_Unit.unit, f(s)); - }); - }; - }; - exports["MonadState"] = MonadState; - exports["modify_"] = modify_; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Control.Category"] = $PS["Control.Category"] || {}; - var exports = $PS["Control.Category"]; - var Control_Semigroupoid = $PS["Control.Semigroupoid"]; - var Category = function (Semigroupoid0, identity) { - this.Semigroupoid0 = Semigroupoid0; - this.identity = identity; - }; - var identity = function (dict) { - return dict.identity; - }; - var categoryFn = new Category(function () { - return Control_Semigroupoid.semigroupoidFn; - }, function (x) { - return x; - }); - exports["identity"] = identity; - exports["categoryFn"] = categoryFn; -})(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; $PS["Control.Apply"] = $PS["Control.Apply"] || {}; var exports = $PS["Control.Apply"]; + var $foreign = $PS["Control.Apply"]; var Control_Category = $PS["Control.Category"]; var Data_Function = $PS["Data.Function"]; var Data_Functor = $PS["Data.Functor"]; var Apply = function (Functor0, apply) { this.Functor0 = Functor0; this.apply = apply; - }; + }; + var applyArray = new Apply(function () { + return Data_Functor.functorArray; + }, $foreign.arrayApply); var apply = function (dict) { return dict.apply; }; @@ -216,183 +201,7 @@ var PS = {}; exports["apply"] = apply; exports["applySecond"] = applySecond; exports["lift2"] = lift2; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Control.Bind"] = $PS["Control.Bind"] || {}; - var exports = $PS["Control.Bind"]; - var Data_Function = $PS["Data.Function"]; - var Discard = function (discard) { - this.discard = discard; - }; - var Bind = function (Apply0, bind) { - this.Apply0 = Apply0; - this.bind = bind; - }; - var discard = function (dict) { - return dict.discard; - }; - var bind = function (dict) { - return dict.bind; - }; - var bindFlipped = function (dictBind) { - return Data_Function.flip(bind(dictBind)); - }; - var composeKleisliFlipped = function (dictBind) { - return function (f) { - return function (g) { - return function (a) { - return bindFlipped(dictBind)(f)(g(a)); - }; - }; - }; - }; - var discardUnit = new Discard(function (dictBind) { - return bind(dictBind); - }); - exports["Bind"] = Bind; - exports["bind"] = bind; - exports["bindFlipped"] = bindFlipped; - exports["discard"] = discard; - exports["composeKleisliFlipped"] = composeKleisliFlipped; - exports["discardUnit"] = discardUnit; -})(PS); -(function(exports) { - "use strict"; - - var refEq = function (r1) { - return function (r2) { - return r1 === r2; - }; - }; - - exports.eqBooleanImpl = refEq; - exports.eqIntImpl = refEq; - exports.eqStringImpl = refEq; -})(PS["Data.Eq"] = PS["Data.Eq"] || {}); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.Eq"] = $PS["Data.Eq"] || {}; - var exports = $PS["Data.Eq"]; - var $foreign = $PS["Data.Eq"]; - var Eq = function (eq) { - this.eq = eq; - }; - var eqString = new Eq($foreign.eqStringImpl); - var eqInt = new Eq($foreign.eqIntImpl); - var eqBoolean = new Eq($foreign.eqBooleanImpl); - var eq = function (dict) { - return dict.eq; - }; - exports["Eq"] = Eq; - exports["eq"] = eq; - exports["eqBoolean"] = eqBoolean; - exports["eqInt"] = eqInt; - exports["eqString"] = eqString; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.Maybe"] = $PS["Data.Maybe"] || {}; - var exports = $PS["Data.Maybe"]; - var Control_Apply = $PS["Control.Apply"]; - var Control_Bind = $PS["Control.Bind"]; - var Control_Category = $PS["Control.Category"]; - var Data_Eq = $PS["Data.Eq"]; - var Data_Function = $PS["Data.Function"]; - var Data_Functor = $PS["Data.Functor"]; - var Nothing = (function () { - function Nothing() { - - }; - Nothing.value = new Nothing(); - return Nothing; - })(); - var Just = (function () { - function Just(value0) { - this.value0 = value0; - }; - Just.create = function (value0) { - return new Just(value0); - }; - return Just; - })(); - var maybe = function (v) { - return function (v1) { - return function (v2) { - if (v2 instanceof Nothing) { - return v; - }; - if (v2 instanceof Just) { - return v1(v2.value0); - }; - throw new Error("Failed pattern match at Data.Maybe (line 217, column 1 - line 217, column 51): " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]); - }; - }; - }; - var isNothing = maybe(true)(Data_Function["const"](false)); - var isJust = maybe(false)(Data_Function["const"](true)); - var functorMaybe = new Data_Functor.Functor(function (v) { - return function (v1) { - if (v1 instanceof Just) { - return new Just(v(v1.value0)); - }; - return Nothing.value; - }; - }); - var fromMaybe = function (a) { - return maybe(a)(Control_Category.identity(Control_Category.categoryFn)); - }; - var eqMaybe = function (dictEq) { - return new Data_Eq.Eq(function (x) { - return function (y) { - if (x instanceof Nothing && y instanceof Nothing) { - return true; - }; - if (x instanceof Just && y instanceof Just) { - return Data_Eq.eq(dictEq)(x.value0)(y.value0); - }; - return false; - }; - }); - }; - var applyMaybe = new Control_Apply.Apply(function () { - return functorMaybe; - }, function (v) { - return function (v1) { - if (v instanceof Just) { - return Data_Functor.map(functorMaybe)(v.value0)(v1); - }; - if (v instanceof Nothing) { - return Nothing.value; - }; - throw new Error("Failed pattern match at Data.Maybe (line 67, column 1 - line 69, column 30): " + [ v.constructor.name, v1.constructor.name ]); - }; - }); - var bindMaybe = new Control_Bind.Bind(function () { - return applyMaybe; - }, function (v) { - return function (v1) { - if (v instanceof Just) { - return v1(v.value0); - }; - if (v instanceof Nothing) { - return Nothing.value; - }; - throw new Error("Failed pattern match at Data.Maybe (line 125, column 1 - line 127, column 28): " + [ v.constructor.name, v1.constructor.name ]); - }; - }); - exports["Nothing"] = Nothing; - exports["Just"] = Just; - exports["maybe"] = maybe; - exports["fromMaybe"] = fromMaybe; - exports["isJust"] = isJust; - exports["isNothing"] = isNothing; - exports["functorMaybe"] = functorMaybe; - exports["bindMaybe"] = bindMaybe; - exports["eqMaybe"] = eqMaybe; + exports["applyArray"] = applyArray; })(PS); (function($PS) { // Generated by purs version 0.13.3 @@ -450,100 +259,378 @@ var PS = {}; (function(exports) { "use strict"; - // module Unsafe.Coerce - - exports.unsafeCoerce = function (x) { - return x; + exports.arrayBind = function (arr) { + return function (f) { + var result = []; + for (var i = 0, l = arr.length; i < l; i++) { + Array.prototype.push.apply(result, f(arr[i])); + } + return result; + }; }; -})(PS["Unsafe.Coerce"] = PS["Unsafe.Coerce"] || {}); +})(PS["Control.Bind"] = PS["Control.Bind"] || {}); (function($PS) { // Generated by purs version 0.13.3 "use strict"; - $PS["Unsafe.Coerce"] = $PS["Unsafe.Coerce"] || {}; - var exports = $PS["Unsafe.Coerce"]; - var $foreign = $PS["Unsafe.Coerce"]; - exports["unsafeCoerce"] = $foreign.unsafeCoerce; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.Exists"] = $PS["Data.Exists"] || {}; - var exports = $PS["Data.Exists"]; - var Unsafe_Coerce = $PS["Unsafe.Coerce"]; - var runExists = Unsafe_Coerce.unsafeCoerce; - var mkExists = Unsafe_Coerce.unsafeCoerce; - exports["mkExists"] = mkExists; - exports["runExists"] = runExists; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.Coyoneda"] = $PS["Data.Coyoneda"] || {}; - var exports = $PS["Data.Coyoneda"]; + $PS["Control.Bind"] = $PS["Control.Bind"] || {}; + var exports = $PS["Control.Bind"]; + var $foreign = $PS["Control.Bind"]; + var Control_Apply = $PS["Control.Apply"]; var Control_Category = $PS["Control.Category"]; - var Data_Exists = $PS["Data.Exists"]; - var Data_Functor = $PS["Data.Functor"]; - var CoyonedaF = (function () { - function CoyonedaF(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - CoyonedaF.create = function (value0) { - return function (value1) { - return new CoyonedaF(value0, value1); + var Data_Function = $PS["Data.Function"]; + var Discard = function (discard) { + this.discard = discard; + }; + var Bind = function (Apply0, bind) { + this.Apply0 = Apply0; + this.bind = bind; + }; + var discard = function (dict) { + return dict.discard; + }; + var bindArray = new Bind(function () { + return Control_Apply.applyArray; + }, $foreign.arrayBind); + var bind = function (dict) { + return dict.bind; + }; + var bindFlipped = function (dictBind) { + return Data_Function.flip(bind(dictBind)); + }; + var composeKleisliFlipped = function (dictBind) { + return function (f) { + return function (g) { + return function (a) { + return bindFlipped(dictBind)(f)(g(a)); + }; }; }; - return CoyonedaF; + }; + var composeKleisli = function (dictBind) { + return function (f) { + return function (g) { + return function (a) { + return bind(dictBind)(f(a))(g); + }; + }; + }; + }; + var discardUnit = new Discard(function (dictBind) { + return bind(dictBind); + }); + var join = function (dictBind) { + return function (m) { + return bind(dictBind)(m)(Control_Category.identity(Control_Category.categoryFn)); + }; + }; + exports["Bind"] = Bind; + exports["bind"] = bind; + exports["bindFlipped"] = bindFlipped; + exports["discard"] = discard; + exports["join"] = join; + exports["composeKleisli"] = composeKleisli; + exports["composeKleisliFlipped"] = composeKleisliFlipped; + exports["bindArray"] = bindArray; + exports["discardUnit"] = discardUnit; +})(PS); +(function(exports) { + "use strict"; + + exports.fromFoldableImpl = (function () { + function Cons(head, tail) { + this.head = head; + this.tail = tail; + } + var emptyList = {}; + + function curryCons(head) { + return function (tail) { + return new Cons(head, tail); + }; + } + + function listToArray(list) { + var result = []; + var count = 0; + var xs = list; + while (xs !== emptyList) { + result[count++] = xs.head; + xs = xs.tail; + } + return result; + } + + return function (foldr) { + return function (xs) { + return listToArray(foldr(curryCons)(emptyList)(xs)); + }; + }; })(); - var Coyoneda = function (x) { - return x; + + //------------------------------------------------------------------------------ + // Array size ------------------------------------------------------------------ + //------------------------------------------------------------------------------ + + exports.length = function (xs) { + return xs.length; }; - var unCoyoneda = function (f) { - return function (v) { - return Data_Exists.runExists(function (v1) { - return f(v1.value0)(v1.value1); - })(v); + + //------------------------------------------------------------------------------ + // Indexed operations ---------------------------------------------------------- + //------------------------------------------------------------------------------ + + exports.indexImpl = function (just) { + return function (nothing) { + return function (xs) { + return function (i) { + return i < 0 || i >= xs.length ? nothing : just(xs[i]); + }; + }; + }; + }; +})(PS["Data.Array"] = PS["Data.Array"] || {}); +(function(exports) { + "use strict"; + + exports.foldrArray = function (f) { + return function (init) { + return function (xs) { + var acc = init; + var len = xs.length; + for (var i = len - 1; i >= 0; i--) { + acc = f(xs[i])(acc); + } + return acc; + }; + }; + }; + + exports.foldlArray = function (f) { + return function (init) { + return function (xs) { + var acc = init; + var len = xs.length; + for (var i = 0; i < len; i++) { + acc = f(acc)(xs[i]); + } + return acc; + }; + }; + }; +})(PS["Data.Foldable"] = PS["Data.Foldable"] || {}); +(function(exports) { + "use strict"; + + var refEq = function (r1) { + return function (r2) { + return r1 === r2; + }; + }; + + exports.eqBooleanImpl = refEq; + exports.eqIntImpl = refEq; + exports.eqCharImpl = refEq; + exports.eqStringImpl = refEq; +})(PS["Data.Eq"] = PS["Data.Eq"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Eq"] = $PS["Data.Eq"] || {}; + var exports = $PS["Data.Eq"]; + var $foreign = $PS["Data.Eq"]; + var Eq = function (eq) { + this.eq = eq; + }; + var eqString = new Eq($foreign.eqStringImpl); + var eqInt = new Eq($foreign.eqIntImpl); + var eqChar = new Eq($foreign.eqCharImpl); + var eqBoolean = new Eq($foreign.eqBooleanImpl); + var eq = function (dict) { + return dict.eq; + }; + exports["Eq"] = Eq; + exports["eq"] = eq; + exports["eqBoolean"] = eqBoolean; + exports["eqInt"] = eqInt; + exports["eqChar"] = eqChar; + exports["eqString"] = eqString; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Maybe"] = $PS["Data.Maybe"] || {}; + var exports = $PS["Data.Maybe"]; + var Control_Applicative = $PS["Control.Applicative"]; + var Control_Apply = $PS["Control.Apply"]; + var Control_Bind = $PS["Control.Bind"]; + var Control_Category = $PS["Control.Category"]; + var Data_Eq = $PS["Data.Eq"]; + var Data_Function = $PS["Data.Function"]; + var Data_Functor = $PS["Data.Functor"]; + var Nothing = (function () { + function Nothing() { + + }; + Nothing.value = new Nothing(); + return Nothing; + })(); + var Just = (function () { + function Just(value0) { + this.value0 = value0; + }; + Just.create = function (value0) { + return new Just(value0); + }; + return Just; + })(); + var maybe = function (v) { + return function (v1) { + return function (v2) { + if (v2 instanceof Nothing) { + return v; + }; + if (v2 instanceof Just) { + return v1(v2.value0); + }; + throw new Error("Failed pattern match at Data.Maybe (line 217, column 1 - line 217, column 51): " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]); + }; }; }; - var coyoneda = function (k) { - return function (fi) { - return Coyoneda(Data_Exists.mkExists(new CoyonedaF(k, fi))); - }; - }; - var functorCoyoneda = new Data_Functor.Functor(function (f) { - return function (v) { - return Data_Exists.runExists(function (v1) { - return coyoneda(function ($85) { - return f(v1.value0($85)); - })(v1.value1); - })(v); + var isNothing = maybe(true)(Data_Function["const"](false)); + var isJust = maybe(false)(Data_Function["const"](true)); + var functorMaybe = new Data_Functor.Functor(function (v) { + return function (v1) { + if (v1 instanceof Just) { + return new Just(v(v1.value0)); + }; + return Nothing.value; }; }); - var liftCoyoneda = coyoneda(Control_Category.identity(Control_Category.categoryFn)); - exports["unCoyoneda"] = unCoyoneda; - exports["liftCoyoneda"] = liftCoyoneda; - exports["functorCoyoneda"] = functorCoyoneda; + var fromMaybe = function (a) { + return maybe(a)(Control_Category.identity(Control_Category.categoryFn)); + }; + var fromJust = function (dictPartial) { + return function (v) { + if (v instanceof Just) { + return v.value0; + }; + throw new Error("Failed pattern match at Data.Maybe (line 268, column 1 - line 268, column 46): " + [ v.constructor.name ]); + }; + }; + var eqMaybe = function (dictEq) { + return new Data_Eq.Eq(function (x) { + return function (y) { + if (x instanceof Nothing && y instanceof Nothing) { + return true; + }; + if (x instanceof Just && y instanceof Just) { + return Data_Eq.eq(dictEq)(x.value0)(y.value0); + }; + return false; + }; + }); + }; + var applyMaybe = new Control_Apply.Apply(function () { + return functorMaybe; + }, function (v) { + return function (v1) { + if (v instanceof Just) { + return Data_Functor.map(functorMaybe)(v.value0)(v1); + }; + if (v instanceof Nothing) { + return Nothing.value; + }; + throw new Error("Failed pattern match at Data.Maybe (line 67, column 1 - line 69, column 30): " + [ v.constructor.name, v1.constructor.name ]); + }; + }); + var bindMaybe = new Control_Bind.Bind(function () { + return applyMaybe; + }, function (v) { + return function (v1) { + if (v instanceof Just) { + return v1(v.value0); + }; + if (v instanceof Nothing) { + return Nothing.value; + }; + throw new Error("Failed pattern match at Data.Maybe (line 125, column 1 - line 127, column 28): " + [ v.constructor.name, v1.constructor.name ]); + }; + }); + var applicativeMaybe = new Control_Applicative.Applicative(function () { + return applyMaybe; + }, Just.create); + exports["Nothing"] = Nothing; + exports["Just"] = Just; + exports["maybe"] = maybe; + exports["fromMaybe"] = fromMaybe; + exports["isJust"] = isJust; + exports["isNothing"] = isNothing; + exports["fromJust"] = fromJust; + exports["functorMaybe"] = functorMaybe; + exports["applicativeMaybe"] = applicativeMaybe; + exports["bindMaybe"] = bindMaybe; + exports["eqMaybe"] = eqMaybe; +})(PS); +(function(exports) { + "use strict"; + + exports.concatArray = function (xs) { + return function (ys) { + if (xs.length === 0) return ys; + if (ys.length === 0) return xs; + return xs.concat(ys); + }; + }; +})(PS["Data.Semigroup"] = PS["Data.Semigroup"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Semigroup"] = $PS["Data.Semigroup"] || {}; + var exports = $PS["Data.Semigroup"]; + var $foreign = $PS["Data.Semigroup"]; + var Semigroup = function (append) { + this.append = append; + }; + var semigroupArray = new Semigroup($foreign.concatArray); + var append = function (dict) { + return dict.append; + }; + exports["Semigroup"] = Semigroup; + exports["append"] = append; + exports["semigroupArray"] = semigroupArray; })(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; $PS["Data.Monoid"] = $PS["Data.Monoid"] || {}; var exports = $PS["Data.Monoid"]; + var Data_Semigroup = $PS["Data.Semigroup"]; + var Monoid = function (Semigroup0, mempty) { + this.Semigroup0 = Semigroup0; + this.mempty = mempty; + }; + var monoidArray = new Monoid(function () { + return Data_Semigroup.semigroupArray; + }, [ ]); var mempty = function (dict) { return dict.mempty; }; + exports["Monoid"] = Monoid; exports["mempty"] = mempty; + exports["monoidArray"] = monoidArray; })(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; $PS["Data.Foldable"] = $PS["Data.Foldable"] || {}; var exports = $PS["Data.Foldable"]; + var $foreign = $PS["Data.Foldable"]; var Control_Applicative = $PS["Control.Applicative"]; var Control_Apply = $PS["Control.Apply"]; var Data_Function = $PS["Data.Function"]; var Data_Maybe = $PS["Data.Maybe"]; var Data_Monoid = $PS["Data.Monoid"]; + var Data_Semigroup = $PS["Data.Semigroup"]; var Data_Unit = $PS["Data.Unit"]; var Foldable = function (foldMap, foldl, foldr) { this.foldMap = foldMap; @@ -610,6 +697,20 @@ var PS = {}; }; }; }); + var foldMapDefaultR = function (dictFoldable) { + return function (dictMonoid) { + return function (f) { + return foldr(dictFoldable)(function (x) { + return function (acc) { + return Data_Semigroup.append(dictMonoid.Semigroup0())(f(x))(acc); + }; + })(Data_Monoid.mempty(dictMonoid)); + }; + }; + }; + var foldableArray = new Foldable(function (dictMonoid) { + return foldMapDefaultR(foldableArray)(dictMonoid); + }, $foreign.foldlArray, $foreign.foldrArray); var foldMap = function (dict) { return dict.foldMap; }; @@ -619,8 +720,1742 @@ var PS = {}; exports["foldMap"] = foldMap; exports["traverse_"] = traverse_; exports["for_"] = for_; + exports["foldableArray"] = foldableArray; exports["foldableMaybe"] = foldableMaybe; })(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Array"] = $PS["Data.Array"] || {}; + var exports = $PS["Data.Array"]; + var $foreign = $PS["Data.Array"]; + var Control_Bind = $PS["Control.Bind"]; + var Data_Foldable = $PS["Data.Foldable"]; + var Data_Function = $PS["Data.Function"]; + var Data_Maybe = $PS["Data.Maybe"]; + var singleton = function (a) { + return [ a ]; + }; + var index = $foreign.indexImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value); + var fromFoldable = function (dictFoldable) { + return $foreign.fromFoldableImpl(Data_Foldable.foldr(dictFoldable)); + }; + var concatMap = Data_Function.flip(Control_Bind.bind(Control_Bind.bindArray)); + var mapMaybe = function (f) { + return concatMap((function () { + var $123 = Data_Maybe.maybe([ ])(singleton); + return function ($124) { + return $123(f($124)); + }; + })()); + }; + exports["fromFoldable"] = fromFoldable; + exports["singleton"] = singleton; + exports["index"] = index; + exports["concatMap"] = concatMap; + exports["mapMaybe"] = mapMaybe; + exports["length"] = $foreign.length; +})(PS); +(function(exports) { + "use strict"; + + // module Unsafe.Coerce + + exports.unsafeCoerce = function (x) { + return x; + }; +})(PS["Unsafe.Coerce"] = PS["Unsafe.Coerce"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Unsafe.Coerce"] = $PS["Unsafe.Coerce"] || {}; + var exports = $PS["Unsafe.Coerce"]; + var $foreign = $PS["Unsafe.Coerce"]; + exports["unsafeCoerce"] = $foreign.unsafeCoerce; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Array.NonEmpty"] = $PS["Data.Array.NonEmpty"] || {}; + var exports = $PS["Data.Array.NonEmpty"]; + var Data_Array = $PS["Data.Array"]; + var Unsafe_Coerce = $PS["Unsafe.Coerce"]; + var toArray = Unsafe_Coerce.unsafeCoerce; + var adaptAny = function (f) { + return function ($67) { + return f(toArray($67)); + }; + }; + var index = adaptAny(Data_Array.index); + exports["index"] = index; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Boolean"] = $PS["Data.Boolean"] || {}; + var exports = $PS["Data.Boolean"]; + var otherwise = true; + exports["otherwise"] = otherwise; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Bifunctor"] = $PS["Data.Bifunctor"] || {}; + var exports = $PS["Data.Bifunctor"]; + var Control_Category = $PS["Control.Category"]; + var Bifunctor = function (bimap) { + this.bimap = bimap; + }; + var bimap = function (dict) { + return dict.bimap; + }; + var rmap = function (dictBifunctor) { + return bimap(dictBifunctor)(Control_Category.identity(Control_Category.categoryFn)); + }; + exports["bimap"] = bimap; + exports["Bifunctor"] = Bifunctor; + exports["rmap"] = rmap; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Either"] = $PS["Data.Either"] || {}; + var exports = $PS["Data.Either"]; + var Control_Apply = $PS["Control.Apply"]; + var Data_Bifunctor = $PS["Data.Bifunctor"]; + var Data_Foldable = $PS["Data.Foldable"]; + var Data_Functor = $PS["Data.Functor"]; + var Data_Monoid = $PS["Data.Monoid"]; + var Left = (function () { + function Left(value0) { + this.value0 = value0; + }; + Left.create = function (value0) { + return new Left(value0); + }; + return Left; + })(); + var Right = (function () { + function Right(value0) { + this.value0 = value0; + }; + Right.create = function (value0) { + return new Right(value0); + }; + return Right; + })(); + var functorEither = new Data_Functor.Functor(function (f) { + return function (m) { + if (m instanceof Left) { + return new Left(m.value0); + }; + if (m instanceof Right) { + return new Right(f(m.value0)); + }; + throw new Error("Failed pattern match at Data.Either (line 38, column 1 - line 38, column 52): " + [ m.constructor.name ]); + }; + }); + var foldableEither = new Data_Foldable.Foldable(function (dictMonoid) { + return function (f) { + return function (v) { + if (v instanceof Left) { + return Data_Monoid.mempty(dictMonoid); + }; + if (v instanceof Right) { + return f(v.value0); + }; + throw new Error("Failed pattern match at Data.Either (line 187, column 1 - line 193, column 28): " + [ f.constructor.name, v.constructor.name ]); + }; + }; + }, function (v) { + return function (z) { + return function (v1) { + if (v1 instanceof Left) { + return z; + }; + if (v1 instanceof Right) { + return v(z)(v1.value0); + }; + throw new Error("Failed pattern match at Data.Either (line 187, column 1 - line 193, column 28): " + [ v.constructor.name, z.constructor.name, v1.constructor.name ]); + }; + }; + }, function (v) { + return function (z) { + return function (v1) { + if (v1 instanceof Left) { + return z; + }; + if (v1 instanceof Right) { + return v(v1.value0)(z); + }; + throw new Error("Failed pattern match at Data.Either (line 187, column 1 - line 193, column 28): " + [ v.constructor.name, z.constructor.name, v1.constructor.name ]); + }; + }; + }); + var either = function (v) { + return function (v1) { + return function (v2) { + if (v2 instanceof Left) { + return v(v2.value0); + }; + if (v2 instanceof Right) { + return v1(v2.value0); + }; + throw new Error("Failed pattern match at Data.Either (line 238, column 1 - line 238, column 64): " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]); + }; + }; + }; + var bifunctorEither = new Data_Bifunctor.Bifunctor(function (v) { + return function (v1) { + return function (v2) { + if (v2 instanceof Left) { + return new Left(v(v2.value0)); + }; + if (v2 instanceof Right) { + return new Right(v1(v2.value0)); + }; + throw new Error("Failed pattern match at Data.Either (line 46, column 1 - line 48, column 36): " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]); + }; + }; + }); + var applyEither = new Control_Apply.Apply(function () { + return functorEither; + }, function (v) { + return function (v1) { + if (v instanceof Left) { + return new Left(v.value0); + }; + if (v instanceof Right) { + return Data_Functor.map(functorEither)(v.value0)(v1); + }; + throw new Error("Failed pattern match at Data.Either (line 82, column 1 - line 84, column 30): " + [ v.constructor.name, v1.constructor.name ]); + }; + }); + exports["Left"] = Left; + exports["Right"] = Right; + exports["either"] = either; + exports["functorEither"] = functorEither; + exports["bifunctorEither"] = bifunctorEither; + exports["applyEither"] = applyEither; + exports["foldableEither"] = foldableEither; +})(PS); +(function(exports) { + "use strict"; + + exports.fromNumberImpl = function (just) { + return function (nothing) { + return function (n) { + /* jshint bitwise: false */ + return (n | 0) === n ? just(n) : nothing; + }; + }; + }; + + exports.toNumber = function (n) { + return n; + }; + + exports.fromStringAsImpl = function (just) { + return function (nothing) { + return function (radix) { + var digits; + if (radix < 11) { + digits = "[0-" + (radix - 1).toString() + "]"; + } else if (radix === 11) { + digits = "[0-9a]"; + } else { + digits = "[0-9a-" + String.fromCharCode(86 + radix) + "]"; + } + var pattern = new RegExp("^[\\+\\-]?" + digits + "+$", "i"); + + return function (s) { + /* jshint bitwise: false */ + if (pattern.test(s)) { + var i = parseInt(s, radix); + return (i | 0) === i ? just(i) : nothing; + } else { + return nothing; + } + }; + }; + }; + }; + + exports.toStringAs = function (radix) { + return function (i) { + return i.toString(radix); + }; + }; +})(PS["Data.Int"] = PS["Data.Int"] || {}); +(function(exports) { + "use strict"; + + exports.topInt = 2147483647; + exports.bottomInt = -2147483648; + + exports.topChar = String.fromCharCode(65535); + exports.bottomChar = String.fromCharCode(0); +})(PS["Data.Bounded"] = PS["Data.Bounded"] || {}); +(function(exports) { + "use strict"; + + var unsafeCompareImpl = function (lt) { + return function (eq) { + return function (gt) { + return function (x) { + return function (y) { + return x < y ? lt : x === y ? eq : gt; + }; + }; + }; + }; + }; + exports.ordIntImpl = unsafeCompareImpl; + exports.ordStringImpl = unsafeCompareImpl; + exports.ordCharImpl = unsafeCompareImpl; +})(PS["Data.Ord"] = PS["Data.Ord"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Ordering"] = $PS["Data.Ordering"] || {}; + var exports = $PS["Data.Ordering"]; + var LT = (function () { + function LT() { + + }; + LT.value = new LT(); + return LT; + })(); + var GT = (function () { + function GT() { + + }; + GT.value = new GT(); + return GT; + })(); + var EQ = (function () { + function EQ() { + + }; + EQ.value = new EQ(); + return EQ; + })(); + exports["LT"] = LT; + exports["GT"] = GT; + exports["EQ"] = EQ; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Ord"] = $PS["Data.Ord"] || {}; + var exports = $PS["Data.Ord"]; + var $foreign = $PS["Data.Ord"]; + var Data_Eq = $PS["Data.Eq"]; + var Data_Ordering = $PS["Data.Ordering"]; + var Ord = function (Eq0, compare) { + this.Eq0 = Eq0; + this.compare = compare; + }; + var ordString = new Ord(function () { + return Data_Eq.eqString; + }, $foreign.ordStringImpl(Data_Ordering.LT.value)(Data_Ordering.EQ.value)(Data_Ordering.GT.value)); + var ordInt = new Ord(function () { + return Data_Eq.eqInt; + }, $foreign.ordIntImpl(Data_Ordering.LT.value)(Data_Ordering.EQ.value)(Data_Ordering.GT.value)); + var ordChar = new Ord(function () { + return Data_Eq.eqChar; + }, $foreign.ordCharImpl(Data_Ordering.LT.value)(Data_Ordering.EQ.value)(Data_Ordering.GT.value)); + var compare = function (dict) { + return dict.compare; + }; + var max = function (dictOrd) { + return function (x) { + return function (y) { + var v = compare(dictOrd)(x)(y); + if (v instanceof Data_Ordering.LT) { + return y; + }; + if (v instanceof Data_Ordering.EQ) { + return x; + }; + if (v instanceof Data_Ordering.GT) { + return x; + }; + throw new Error("Failed pattern match at Data.Ord (line 167, column 3 - line 170, column 12): " + [ v.constructor.name ]); + }; + }; + }; + var min = function (dictOrd) { + return function (x) { + return function (y) { + var v = compare(dictOrd)(x)(y); + if (v instanceof Data_Ordering.LT) { + return x; + }; + if (v instanceof Data_Ordering.EQ) { + return x; + }; + if (v instanceof Data_Ordering.GT) { + return y; + }; + throw new Error("Failed pattern match at Data.Ord (line 158, column 3 - line 161, column 12): " + [ v.constructor.name ]); + }; + }; + }; + var clamp = function (dictOrd) { + return function (low) { + return function (hi) { + return function (x) { + return min(dictOrd)(hi)(max(dictOrd)(low)(x)); + }; + }; + }; + }; + exports["compare"] = compare; + exports["min"] = min; + exports["max"] = max; + exports["clamp"] = clamp; + exports["ordInt"] = ordInt; + exports["ordString"] = ordString; + exports["ordChar"] = ordChar; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Bounded"] = $PS["Data.Bounded"] || {}; + var exports = $PS["Data.Bounded"]; + var $foreign = $PS["Data.Bounded"]; + var Data_Ord = $PS["Data.Ord"]; + var Bounded = function (Ord0, bottom, top) { + this.Ord0 = Ord0; + this.bottom = bottom; + this.top = top; + }; + var top = function (dict) { + return dict.top; + }; + var boundedInt = new Bounded(function () { + return Data_Ord.ordInt; + }, $foreign.bottomInt, $foreign.topInt); + var boundedChar = new Bounded(function () { + return Data_Ord.ordChar; + }, $foreign.bottomChar, $foreign.topChar); + var bottom = function (dict) { + return dict.bottom; + }; + exports["bottom"] = bottom; + exports["top"] = top; + exports["boundedInt"] = boundedInt; + exports["boundedChar"] = boundedChar; +})(PS); +(function(exports) { + /* globals exports */ + "use strict"; + + exports.infinity = Infinity; +})(PS["Global"] = PS["Global"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Global"] = $PS["Global"] || {}; + var exports = $PS["Global"]; + var $foreign = $PS["Global"]; + exports["infinity"] = $foreign.infinity; +})(PS); +(function(exports) { + "use strict"; + + // module Math + + exports.abs = Math.abs; + + exports.pow = function (n) { + return function (p) { + return Math.pow(n, p); + }; + }; + + exports.remainder = function (n) { + return function (m) { + return n % m; + }; + }; + + exports.round = Math.round; +})(PS["Math"] = PS["Math"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Math"] = $PS["Math"] || {}; + var exports = $PS["Math"]; + var $foreign = $PS["Math"]; + exports["abs"] = $foreign.abs; + exports["pow"] = $foreign.pow; + exports["round"] = $foreign.round; + exports["remainder"] = $foreign.remainder; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Int"] = $PS["Data.Int"] || {}; + var exports = $PS["Data.Int"]; + var $foreign = $PS["Data.Int"]; + var Data_Boolean = $PS["Data.Boolean"]; + var Data_Bounded = $PS["Data.Bounded"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Global = $PS["Global"]; + var $$Math = $PS["Math"]; + var hexadecimal = 16; + var fromStringAs = $foreign.fromStringAsImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value); + var fromNumber = $foreign.fromNumberImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value); + var unsafeClamp = function (x) { + if (x === Global.infinity) { + return 0; + }; + if (x === -Global.infinity) { + return 0; + }; + if (x >= $foreign.toNumber(Data_Bounded.top(Data_Bounded.boundedInt))) { + return Data_Bounded.top(Data_Bounded.boundedInt); + }; + if (x <= $foreign.toNumber(Data_Bounded.bottom(Data_Bounded.boundedInt))) { + return Data_Bounded.bottom(Data_Bounded.boundedInt); + }; + if (Data_Boolean.otherwise) { + return Data_Maybe.fromMaybe(0)(fromNumber(x)); + }; + throw new Error("Failed pattern match at Data.Int (line 66, column 1 - line 66, column 29): " + [ x.constructor.name ]); + }; + var round = function ($23) { + return unsafeClamp($$Math.round($23)); + }; + exports["round"] = round; + exports["hexadecimal"] = hexadecimal; + exports["fromStringAs"] = fromStringAs; + exports["toNumber"] = $foreign.toNumber; + exports["toStringAs"] = $foreign.toStringAs; +})(PS); +(function(exports) { + "use strict"; + + exports.showNumberImpl = function (n) { + var str = n.toString(); + return isNaN(str + ".0") ? str : str + ".0"; + }; +})(PS["Data.Show"] = PS["Data.Show"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Show"] = $PS["Data.Show"] || {}; + var exports = $PS["Data.Show"]; + var $foreign = $PS["Data.Show"]; + var Show = function (show) { + this.show = show; + }; + var showNumber = new Show($foreign.showNumberImpl); + var show = function (dict) { + return dict.show; + }; + exports["show"] = show; + exports["showNumber"] = showNumber; +})(PS); +(function(exports) { + "use strict"; + /* global Symbol */ + + var hasArrayFrom = typeof Array.from === "function"; + var hasStringIterator = + typeof Symbol !== "undefined" && + Symbol != null && + typeof Symbol.iterator !== "undefined" && + typeof String.prototype[Symbol.iterator] === "function"; + var hasFromCodePoint = typeof String.prototype.fromCodePoint === "function"; + var hasCodePointAt = typeof String.prototype.codePointAt === "function"; + + exports._unsafeCodePointAt0 = function (fallback) { + return hasCodePointAt + ? function (str) { return str.codePointAt(0); } + : fallback; + }; + + exports._singleton = function (fallback) { + return hasFromCodePoint ? String.fromCodePoint : fallback; + }; + + exports._take = function (fallback) { + return function (n) { + if (hasStringIterator) { + return function (str) { + var accum = ""; + var iter = str[Symbol.iterator](); + for (var i = 0; i < n; ++i) { + var o = iter.next(); + if (o.done) return accum; + accum += o.value; + } + return accum; + }; + } + return fallback(n); + }; + }; + + exports._toCodePointArray = function (fallback) { + return function (unsafeCodePointAt0) { + if (hasArrayFrom) { + return function (str) { + return Array.from(str, unsafeCodePointAt0); + }; + } + return fallback; + }; + }; +})(PS["Data.String.CodePoints"] = PS["Data.String.CodePoints"] || {}); +(function(exports) { + "use strict"; + + exports.toCharCode = function (c) { + return c.charCodeAt(0); + }; + + exports.fromCharCode = function (c) { + return String.fromCharCode(c); + }; +})(PS["Data.Enum"] = PS["Data.Enum"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Enum"] = $PS["Data.Enum"] || {}; + var exports = $PS["Data.Enum"]; + var $foreign = $PS["Data.Enum"]; + var Data_Bounded = $PS["Data.Bounded"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_Ord = $PS["Data.Ord"]; + var Enum = function (Ord0, pred, succ) { + this.Ord0 = Ord0; + this.pred = pred; + this.succ = succ; + }; + var BoundedEnum = function (Bounded0, Enum1, cardinality, fromEnum, toEnum) { + this.Bounded0 = Bounded0; + this.Enum1 = Enum1; + this.cardinality = cardinality; + this.fromEnum = fromEnum; + this.toEnum = toEnum; + }; + var toEnum = function (dict) { + return dict.toEnum; + }; + var fromEnum = function (dict) { + return dict.fromEnum; + }; + var toEnumWithDefaults = function (dictBoundedEnum) { + return function (low) { + return function (high) { + return function (x) { + var v = toEnum(dictBoundedEnum)(x); + if (v instanceof Data_Maybe.Just) { + return v.value0; + }; + if (v instanceof Data_Maybe.Nothing) { + var $54 = x < fromEnum(dictBoundedEnum)(Data_Bounded.bottom(dictBoundedEnum.Bounded0())); + if ($54) { + return low; + }; + return high; + }; + throw new Error("Failed pattern match at Data.Enum (line 158, column 33 - line 160, column 62): " + [ v.constructor.name ]); + }; + }; + }; + }; + var defaultSucc = function (toEnum$prime) { + return function (fromEnum$prime) { + return function (a) { + return toEnum$prime(fromEnum$prime(a) + 1 | 0); + }; + }; + }; + var defaultPred = function (toEnum$prime) { + return function (fromEnum$prime) { + return function (a) { + return toEnum$prime(fromEnum$prime(a) - 1 | 0); + }; + }; + }; + var charToEnum = function (v) { + if (v >= Data_Bounded.bottom(Data_Bounded.boundedInt) && v <= Data_Bounded.top(Data_Bounded.boundedInt)) { + return new Data_Maybe.Just($foreign.fromCharCode(v)); + }; + return Data_Maybe.Nothing.value; + }; + var enumChar = new Enum(function () { + return Data_Ord.ordChar; + }, defaultPred(charToEnum)($foreign.toCharCode), defaultSucc(charToEnum)($foreign.toCharCode)); + var boundedEnumChar = new BoundedEnum(function () { + return Data_Bounded.boundedChar; + }, function () { + return enumChar; + }, $foreign.toCharCode(Data_Bounded.top(Data_Bounded.boundedChar)) - $foreign.toCharCode(Data_Bounded.bottom(Data_Bounded.boundedChar)) | 0, $foreign.toCharCode, charToEnum); + exports["fromEnum"] = fromEnum; + exports["toEnumWithDefaults"] = toEnumWithDefaults; + exports["boundedEnumChar"] = boundedEnumChar; +})(PS); +(function(exports) { + "use strict"; + + exports.intDegree = function (x) { + return Math.min(Math.abs(x), 2147483647); + }; + + // See the Euclidean definition in + // https://en.m.wikipedia.org/wiki/Modulo_operation. + exports.intDiv = function (x) { + return function (y) { + if (y === 0) return 0; + return y > 0 ? Math.floor(x / y) : -Math.floor(x / -y); + }; + }; + + exports.intMod = function (x) { + return function (y) { + if (y === 0) return 0; + var yy = Math.abs(y); + return ((x % yy) + yy) % yy; + }; + }; +})(PS["Data.EuclideanRing"] = PS["Data.EuclideanRing"] || {}); +(function(exports) { + "use strict"; + + exports.intSub = function (x) { + return function (y) { + /* jshint bitwise: false */ + return x - y | 0; + }; + }; +})(PS["Data.Ring"] = PS["Data.Ring"] || {}); +(function(exports) { + "use strict"; + + exports.intAdd = function (x) { + return function (y) { + /* jshint bitwise: false */ + return x + y | 0; + }; + }; + + exports.intMul = function (x) { + return function (y) { + /* jshint bitwise: false */ + return x * y | 0; + }; + }; +})(PS["Data.Semiring"] = PS["Data.Semiring"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Semiring"] = $PS["Data.Semiring"] || {}; + var exports = $PS["Data.Semiring"]; + var $foreign = $PS["Data.Semiring"]; + var Semiring = function (add, mul, one, zero) { + this.add = add; + this.mul = mul; + this.one = one; + this.zero = zero; + }; + var semiringInt = new Semiring($foreign.intAdd, $foreign.intMul, 1, 0); + exports["semiringInt"] = semiringInt; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Ring"] = $PS["Data.Ring"] || {}; + var exports = $PS["Data.Ring"]; + var $foreign = $PS["Data.Ring"]; + var Data_Semiring = $PS["Data.Semiring"]; + var Ring = function (Semiring0, sub) { + this.Semiring0 = Semiring0; + this.sub = sub; + }; + var ringInt = new Ring(function () { + return Data_Semiring.semiringInt; + }, $foreign.intSub); + exports["ringInt"] = ringInt; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.CommutativeRing"] = $PS["Data.CommutativeRing"] || {}; + var exports = $PS["Data.CommutativeRing"]; + var Data_Ring = $PS["Data.Ring"]; + var CommutativeRing = function (Ring0) { + this.Ring0 = Ring0; + }; + var commutativeRingInt = new CommutativeRing(function () { + return Data_Ring.ringInt; + }); + exports["commutativeRingInt"] = commutativeRingInt; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.EuclideanRing"] = $PS["Data.EuclideanRing"] || {}; + var exports = $PS["Data.EuclideanRing"]; + var $foreign = $PS["Data.EuclideanRing"]; + var Data_CommutativeRing = $PS["Data.CommutativeRing"]; + var EuclideanRing = function (CommutativeRing0, degree, div, mod) { + this.CommutativeRing0 = CommutativeRing0; + this.degree = degree; + this.div = div; + this.mod = mod; + }; + var mod = function (dict) { + return dict.mod; + }; + var euclideanRingInt = new EuclideanRing(function () { + return Data_CommutativeRing.commutativeRingInt; + }, $foreign.intDegree, $foreign.intDiv, $foreign.intMod); + var div = function (dict) { + return dict.div; + }; + exports["div"] = div; + exports["mod"] = mod; + exports["euclideanRingInt"] = euclideanRingInt; +})(PS); +(function(exports) { + "use strict"; + + exports.singleton = function (c) { + return c; + }; + + exports.length = function (s) { + return s.length; + }; + + exports._indexOf = function (just) { + return function (nothing) { + return function (x) { + return function (s) { + var i = s.indexOf(x); + return i === -1 ? nothing : just(i); + }; + }; + }; + }; + + exports.drop = function (n) { + return function (s) { + return s.substring(n); + }; + }; +})(PS["Data.String.CodeUnits"] = PS["Data.String.CodeUnits"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.String.CodeUnits"] = $PS["Data.String.CodeUnits"] || {}; + var exports = $PS["Data.String.CodeUnits"]; + var $foreign = $PS["Data.String.CodeUnits"]; + var Data_Maybe = $PS["Data.Maybe"]; + var indexOf = $foreign["_indexOf"](Data_Maybe.Just.create)(Data_Maybe.Nothing.value); + var contains = function (pat) { + var $16 = indexOf(pat); + return function ($17) { + return Data_Maybe.isJust($16($17)); + }; + }; + exports["contains"] = contains; + exports["singleton"] = $foreign.singleton; + exports["length"] = $foreign.length; + exports["drop"] = $foreign.drop; +})(PS); +(function(exports) { + "use strict"; + + exports.charAt = function (i) { + return function (s) { + if (i >= 0 && i < s.length) return s.charAt(i); + throw new Error("Data.String.Unsafe.charAt: Invalid index."); + }; + }; +})(PS["Data.String.Unsafe"] = PS["Data.String.Unsafe"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.String.Unsafe"] = $PS["Data.String.Unsafe"] || {}; + var exports = $PS["Data.String.Unsafe"]; + var $foreign = $PS["Data.String.Unsafe"]; + exports["charAt"] = $foreign.charAt; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Newtype"] = $PS["Data.Newtype"] || {}; + var exports = $PS["Data.Newtype"]; + var Newtype = function (unwrap, wrap) { + this.unwrap = unwrap; + this.wrap = wrap; + }; + var unwrap = function (dict) { + return dict.unwrap; + }; + exports["unwrap"] = unwrap; + exports["Newtype"] = Newtype; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Maybe.First"] = $PS["Data.Maybe.First"] || {}; + var exports = $PS["Data.Maybe.First"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_Monoid = $PS["Data.Monoid"]; + var Data_Newtype = $PS["Data.Newtype"]; + var Data_Semigroup = $PS["Data.Semigroup"]; + var First = function (x) { + return x; + }; + var semigroupFirst = new Data_Semigroup.Semigroup(function (v) { + return function (v1) { + if (v instanceof Data_Maybe.Just) { + return v; + }; + return v1; + }; + }); + var newtypeFirst = new Data_Newtype.Newtype(function (n) { + return n; + }, First); + var monoidFirst = new Data_Monoid.Monoid(function () { + return semigroupFirst; + }, Data_Maybe.Nothing.value); + exports["newtypeFirst"] = newtypeFirst; + exports["monoidFirst"] = monoidFirst; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Tuple"] = $PS["Data.Tuple"] || {}; + var exports = $PS["Data.Tuple"]; + var Data_Eq = $PS["Data.Eq"]; + var Data_Foldable = $PS["Data.Foldable"]; + var Data_Functor = $PS["Data.Functor"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_Maybe_First = $PS["Data.Maybe.First"]; + var Data_Newtype = $PS["Data.Newtype"]; + var Tuple = (function () { + function Tuple(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + Tuple.create = function (value0) { + return function (value1) { + return new Tuple(value0, value1); + }; + }; + return Tuple; + })(); + var snd = function (v) { + return v.value1; + }; + var lookup = function (dictFoldable) { + return function (dictEq) { + return function (a) { + var $312 = Data_Newtype.unwrap(Data_Maybe_First.newtypeFirst); + var $313 = Data_Foldable.foldMap(dictFoldable)(Data_Maybe_First.monoidFirst)(function (v) { + var $163 = Data_Eq.eq(dictEq)(a)(v.value0); + if ($163) { + return new Data_Maybe.Just(v.value1); + }; + return Data_Maybe.Nothing.value; + }); + return function ($314) { + return $312($313($314)); + }; + }; + }; + }; + var functorTuple = new Data_Functor.Functor(function (f) { + return function (m) { + return new Tuple(m.value0, f(m.value1)); + }; + }); + var fst = function (v) { + return v.value0; + }; + exports["Tuple"] = Tuple; + exports["fst"] = fst; + exports["snd"] = snd; + exports["lookup"] = lookup; + exports["functorTuple"] = functorTuple; +})(PS); +(function(exports) { + "use strict"; + + exports.unfoldrArrayImpl = function (isNothing) { + return function (fromJust) { + return function (fst) { + return function (snd) { + return function (f) { + return function (b) { + var result = []; + var value = b; + while (true) { // eslint-disable-line no-constant-condition + var maybe = f(value); + if (isNothing(maybe)) return result; + var tuple = fromJust(maybe); + result.push(fst(tuple)); + value = snd(tuple); + } + }; + }; + }; + }; + }; + }; +})(PS["Data.Unfoldable"] = PS["Data.Unfoldable"] || {}); +(function(exports) { + "use strict"; + + exports.unfoldr1ArrayImpl = function (isNothing) { + return function (fromJust) { + return function (fst) { + return function (snd) { + return function (f) { + return function (b) { + var result = []; + var value = b; + while (true) { // eslint-disable-line no-constant-condition + var tuple = f(value); + result.push(fst(tuple)); + var maybe = snd(tuple); + if (isNothing(maybe)) return result; + value = fromJust(maybe); + } + }; + }; + }; + }; + }; + }; +})(PS["Data.Unfoldable1"] = PS["Data.Unfoldable1"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Unfoldable1"] = $PS["Data.Unfoldable1"] || {}; + var exports = $PS["Data.Unfoldable1"]; + var $foreign = $PS["Data.Unfoldable1"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_Tuple = $PS["Data.Tuple"]; + var Unfoldable1 = function (unfoldr1) { + this.unfoldr1 = unfoldr1; + }; + var unfoldable1Array = new Unfoldable1($foreign.unfoldr1ArrayImpl(Data_Maybe.isNothing)(Data_Maybe.fromJust())(Data_Tuple.fst)(Data_Tuple.snd)); + exports["unfoldable1Array"] = unfoldable1Array; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Unfoldable"] = $PS["Data.Unfoldable"] || {}; + var exports = $PS["Data.Unfoldable"]; + var $foreign = $PS["Data.Unfoldable"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_Tuple = $PS["Data.Tuple"]; + var Data_Unfoldable1 = $PS["Data.Unfoldable1"]; + var Unfoldable = function (Unfoldable10, unfoldr) { + this.Unfoldable10 = Unfoldable10; + this.unfoldr = unfoldr; + }; + var unfoldr = function (dict) { + return dict.unfoldr; + }; + var unfoldableArray = new Unfoldable(function () { + return Data_Unfoldable1.unfoldable1Array; + }, $foreign.unfoldrArrayImpl(Data_Maybe.isNothing)(Data_Maybe.fromJust())(Data_Tuple.fst)(Data_Tuple.snd)); + exports["unfoldr"] = unfoldr; + exports["unfoldableArray"] = unfoldableArray; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.String.CodePoints"] = $PS["Data.String.CodePoints"] || {}; + var exports = $PS["Data.String.CodePoints"]; + var $foreign = $PS["Data.String.CodePoints"]; + var Data_Array = $PS["Data.Array"]; + var Data_Bounded = $PS["Data.Bounded"]; + var Data_Enum = $PS["Data.Enum"]; + var Data_EuclideanRing = $PS["Data.EuclideanRing"]; + var Data_Functor = $PS["Data.Functor"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_String_CodeUnits = $PS["Data.String.CodeUnits"]; + var Data_String_Unsafe = $PS["Data.String.Unsafe"]; + var Data_Tuple = $PS["Data.Tuple"]; + var Data_Unfoldable = $PS["Data.Unfoldable"]; + var unsurrogate = function (lead) { + return function (trail) { + return (((lead - 55296 | 0) * 1024 | 0) + (trail - 56320 | 0) | 0) + 65536 | 0; + }; + }; + var isTrail = function (cu) { + return 56320 <= cu && cu <= 57343; + }; + var isLead = function (cu) { + return 55296 <= cu && cu <= 56319; + }; + var uncons = function (s) { + var v = Data_String_CodeUnits.length(s); + if (v === 0) { + return Data_Maybe.Nothing.value; + }; + if (v === 1) { + return new Data_Maybe.Just({ + head: Data_Enum.fromEnum(Data_Enum.boundedEnumChar)(Data_String_Unsafe.charAt(0)(s)), + tail: "" + }); + }; + var cu1 = Data_Enum.fromEnum(Data_Enum.boundedEnumChar)(Data_String_Unsafe.charAt(1)(s)); + var cu0 = Data_Enum.fromEnum(Data_Enum.boundedEnumChar)(Data_String_Unsafe.charAt(0)(s)); + var $21 = isLead(cu0) && isTrail(cu1); + if ($21) { + return new Data_Maybe.Just({ + head: unsurrogate(cu0)(cu1), + tail: Data_String_CodeUnits.drop(2)(s) + }); + }; + return new Data_Maybe.Just({ + head: cu0, + tail: Data_String_CodeUnits.drop(1)(s) + }); + }; + var unconsButWithTuple = function (s) { + return Data_Functor.map(Data_Maybe.functorMaybe)(function (v) { + return new Data_Tuple.Tuple(v.head, v.tail); + })(uncons(s)); + }; + var toCodePointArrayFallback = function (s) { + return Data_Unfoldable.unfoldr(Data_Unfoldable.unfoldableArray)(unconsButWithTuple)(s); + }; + var unsafeCodePointAt0Fallback = function (s) { + var cu0 = Data_Enum.fromEnum(Data_Enum.boundedEnumChar)(Data_String_Unsafe.charAt(0)(s)); + var $25 = isLead(cu0) && Data_String_CodeUnits.length(s) > 1; + if ($25) { + var cu1 = Data_Enum.fromEnum(Data_Enum.boundedEnumChar)(Data_String_Unsafe.charAt(1)(s)); + var $26 = isTrail(cu1); + if ($26) { + return unsurrogate(cu0)(cu1); + }; + return cu0; + }; + return cu0; + }; + var unsafeCodePointAt0 = $foreign["_unsafeCodePointAt0"](unsafeCodePointAt0Fallback); + var toCodePointArray = $foreign["_toCodePointArray"](toCodePointArrayFallback)(unsafeCodePointAt0); + var length = function ($52) { + return Data_Array.length(toCodePointArray($52)); + }; + var fromCharCode = (function () { + var $53 = Data_Enum.toEnumWithDefaults(Data_Enum.boundedEnumChar)(Data_Bounded.bottom(Data_Bounded.boundedChar))(Data_Bounded.top(Data_Bounded.boundedChar)); + return function ($54) { + return Data_String_CodeUnits.singleton($53($54)); + }; + })(); + var singletonFallback = function (v) { + if (v <= 65535) { + return fromCharCode(v); + }; + var lead = Data_EuclideanRing.div(Data_EuclideanRing.euclideanRingInt)(v - 65536 | 0)(1024) + 55296 | 0; + var trail = Data_EuclideanRing.mod(Data_EuclideanRing.euclideanRingInt)(v - 65536 | 0)(1024) + 56320 | 0; + return fromCharCode(lead) + fromCharCode(trail); + }; + var singleton = $foreign["_singleton"](singletonFallback); + var takeFallback = function (n) { + return function (v) { + if (n < 1) { + return ""; + }; + var v1 = uncons(v); + if (v1 instanceof Data_Maybe.Just) { + return singleton(v1.value0.head) + takeFallback(n - 1 | 0)(v1.value0.tail); + }; + return v; + }; + }; + var take = $foreign["_take"](takeFallback); + var drop = function (n) { + return function (s) { + return Data_String_CodeUnits.drop(Data_String_CodeUnits.length(take(n)(s)))(s); + }; + }; + exports["length"] = length; +})(PS); +(function(exports) { + "use strict"; + + exports["regex'"] = function (left) { + return function (right) { + return function (s1) { + return function (s2) { + try { + return right(new RegExp(s1, s2)); + } catch (e) { + return left(e.message); + } + }; + }; + }; + }; + + exports._match = function (just) { + return function (nothing) { + return function (r) { + return function (s) { + var m = s.match(r); + if (m == null || m.length === 0) { + return nothing; + } else { + for (var i = 0; i < m.length; i++) { + m[i] = m[i] == null ? nothing : just(m[i]); + } + return just(m); + } + }; + }; + }; + }; +})(PS["Data.String.Regex"] = PS["Data.String.Regex"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.String.Regex.Flags"] = $PS["Data.String.Regex.Flags"] || {}; + var exports = $PS["Data.String.Regex.Flags"]; + var RegexFlags = (function () { + function RegexFlags(value0) { + this.value0 = value0; + }; + RegexFlags.create = function (value0) { + return new RegexFlags(value0); + }; + return RegexFlags; + })(); + exports["RegexFlags"] = RegexFlags; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.String.Regex"] = $PS["Data.String.Regex"] || {}; + var exports = $PS["Data.String.Regex"]; + var $foreign = $PS["Data.String.Regex"]; + var Data_Either = $PS["Data.Either"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_String_CodeUnits = $PS["Data.String.CodeUnits"]; + var Data_String_Regex_Flags = $PS["Data.String.Regex.Flags"]; + var renderFlags = function (v) { + return (function () { + if (v.value0.global) { + return "g"; + }; + return ""; + })() + ((function () { + if (v.value0.ignoreCase) { + return "i"; + }; + return ""; + })() + ((function () { + if (v.value0.multiline) { + return "m"; + }; + return ""; + })() + ((function () { + if (v.value0.sticky) { + return "y"; + }; + return ""; + })() + (function () { + if (v.value0.unicode) { + return "u"; + }; + return ""; + })()))); + }; + var regex = function (s) { + return function (f) { + return $foreign["regex'"](Data_Either.Left.create)(Data_Either.Right.create)(s)(renderFlags(f)); + }; + }; + var parseFlags = function (s) { + return new Data_String_Regex_Flags.RegexFlags({ + global: Data_String_CodeUnits.contains("g")(s), + ignoreCase: Data_String_CodeUnits.contains("i")(s), + multiline: Data_String_CodeUnits.contains("m")(s), + sticky: Data_String_CodeUnits.contains("y")(s), + unicode: Data_String_CodeUnits.contains("u")(s) + }); + }; + var match = $foreign["_match"](Data_Maybe.Just.create)(Data_Maybe.Nothing.value); + exports["regex"] = regex; + exports["parseFlags"] = parseFlags; + exports["match"] = match; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Color"] = $PS["Color"] || {}; + var exports = $PS["Color"]; + var Control_Applicative = $PS["Control.Applicative"]; + var Control_Bind = $PS["Control.Bind"]; + var Data_Array_NonEmpty = $PS["Data.Array.NonEmpty"]; + var Data_Boolean = $PS["Data.Boolean"]; + var Data_Either = $PS["Data.Either"]; + var Data_Function = $PS["Data.Function"]; + var Data_Functor = $PS["Data.Functor"]; + var Data_Int = $PS["Data.Int"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_Ord = $PS["Data.Ord"]; + var Data_Show = $PS["Data.Show"]; + var Data_String_CodePoints = $PS["Data.String.CodePoints"]; + var Data_String_Regex = $PS["Data.String.Regex"]; + var $$Math = $PS["Math"]; + var HSLA = (function () { + function HSLA(value0, value1, value2, value3) { + this.value0 = value0; + this.value1 = value1; + this.value2 = value2; + this.value3 = value3; + }; + HSLA.create = function (value0) { + return function (value1) { + return function (value2) { + return function (value3) { + return new HSLA(value0, value1, value2, value3); + }; + }; + }; + }; + return HSLA; + })(); + var modPos = function (x) { + return function (y) { + return $$Math.remainder($$Math.remainder(x)(y) + y)(y); + }; + }; + var rgba = function (red$prime) { + return function (green$prime) { + return function (blue$prime) { + return function (alpha) { + var red = Data_Ord.clamp(Data_Ord.ordInt)(0)(255)(red$prime); + var r = Data_Int.toNumber(red) / 255.0; + var green = Data_Ord.clamp(Data_Ord.ordInt)(0)(255)(green$prime); + var g = Data_Int.toNumber(green) / 255.0; + var blue = Data_Ord.clamp(Data_Ord.ordInt)(0)(255)(blue$prime); + var maxChroma = Data_Ord.max(Data_Ord.ordInt)(Data_Ord.max(Data_Ord.ordInt)(red)(green))(blue); + var minChroma = Data_Ord.min(Data_Ord.ordInt)(Data_Ord.min(Data_Ord.ordInt)(red)(green))(blue); + var chroma = maxChroma - minChroma | 0; + var chroma$prime = Data_Int.toNumber(chroma) / 255.0; + var lightness = Data_Int.toNumber(maxChroma + minChroma | 0) / (255.0 * 2.0); + var saturation = (function () { + if (chroma === 0) { + return 0.0; + }; + if (Data_Boolean.otherwise) { + return chroma$prime / (1.0 - $$Math.abs(2.0 * lightness - 1.0)); + }; + throw new Error("Failed pattern match at Color (line 157, column 5 - line 158, column 75): " + [ ]); + })(); + var b = Data_Int.toNumber(blue) / 255.0; + var hue$prime = function (v) { + if (v === 0) { + return 0.0; + }; + if (maxChroma === red) { + return modPos((g - b) / chroma$prime)(6.0); + }; + if (maxChroma === green) { + return (b - r) / chroma$prime + 2.0; + }; + if (Data_Boolean.otherwise) { + return (r - g) / chroma$prime + 4.0; + }; + throw new Error("Failed pattern match at Color (line 148, column 5 - line 148, column 17): " + [ v.constructor.name ]); + }; + var hue = 60.0 * hue$prime(chroma); + return new HSLA(hue, saturation, lightness, alpha); + }; + }; + }; + }; + var rgb = function (r) { + return function (g) { + return function (b) { + return rgba(r)(g)(b)(1.0); + }; + }; + }; + var rgba$prime = function (r) { + return function (g) { + return function (b) { + return function (a) { + return rgba(Data_Int.round(r * 255.0))(Data_Int.round(g * 255.0))(Data_Int.round(b * 255.0))(a); + }; + }; + }; + }; + var rgb$prime = function (r) { + return function (g) { + return function (b) { + return rgba$prime(r)(g)(b)(1.0); + }; + }; + }; + var xyz = function (x) { + return function (y) { + return function (z) { + var f = function (c) { + if (c <= 3.1308e-3) { + return 12.92 * c; + }; + if (Data_Boolean.otherwise) { + return 1.055 * $$Math.pow(c)(1.0 / 2.4) - 5.5e-2; + }; + throw new Error("Failed pattern match at Color (line 224, column 5 - line 225, column 65): " + [ c.constructor.name ]); + }; + var g = f(-0.9689 * x + 1.8758 * y + 4.15e-2 * z); + var r = f(3.2406 * x - 1.5372 * y - 0.4986 * z); + var b = f((5.57e-2 * x - 0.204 * y) + 1.057 * z); + return rgb$prime(r)(g)(b); + }; + }; + }; + var fromHexString = function (str) { + var parseHex = (function () { + var $111 = Data_Maybe.fromMaybe(0); + var $112 = Data_Int.fromStringAs(Data_Int.hexadecimal); + return function ($113) { + return $111($112($113)); + }; + })(); + var isShort = Data_String_CodePoints.length(str) === 4; + var hush = Data_Either.either(Data_Function["const"](Data_Maybe.Nothing.value))(Data_Maybe.Just.create); + var pair = "(" + ("[0-9a-f]" + ("[0-9a-f]" + ")")); + var single = "(" + ("[0-9a-f]" + ")"); + var variant = (function () { + if (isShort) { + return single + (single + single); + }; + return pair + (pair + pair); + })(); + var mPattern = Data_String_Regex.regex("^#(?:" + (variant + ")$"))(Data_String_Regex.parseFlags("i")); + return Control_Bind.bind(Data_Maybe.bindMaybe)(hush(mPattern))(function (v) { + return Control_Bind.bind(Data_Maybe.bindMaybe)(Data_String_Regex.match(v)(str))(function (v1) { + return Control_Bind.bind(Data_Maybe.bindMaybe)(Data_Functor.map(Data_Maybe.functorMaybe)(parseHex)(Control_Bind.join(Data_Maybe.bindMaybe)(Data_Array_NonEmpty.index(v1)(1))))(function (v2) { + return Control_Bind.bind(Data_Maybe.bindMaybe)(Data_Functor.map(Data_Maybe.functorMaybe)(parseHex)(Control_Bind.join(Data_Maybe.bindMaybe)(Data_Array_NonEmpty.index(v1)(2))))(function (v3) { + return Control_Bind.bind(Data_Maybe.bindMaybe)(Data_Functor.map(Data_Maybe.functorMaybe)(parseHex)(Control_Bind.join(Data_Maybe.bindMaybe)(Data_Array_NonEmpty.index(v1)(3))))(function (v4) { + if (isShort) { + return Control_Applicative.pure(Data_Maybe.applicativeMaybe)(rgb((16 * v2 | 0) + v2 | 0)((16 * v3 | 0) + v3 | 0)((16 * v4 | 0) + v4 | 0)); + }; + return Control_Applicative.pure(Data_Maybe.applicativeMaybe)(rgb(v2)(v3)(v4)); + }); + }); + }); + }); + }); + }; + var d65 = { + xn: 0.95047, + yn: 1.0, + zn: 1.08883 + }; + var lab = function (l) { + return function (a) { + return function (b) { + var l$prime = (l + 16.0) / 116.0; + var delta = 6.0 / 29.0; + var finv = function (t) { + if (t > delta) { + return $$Math.pow(t)(3.0); + }; + if (Data_Boolean.otherwise) { + return 3.0 * delta * delta * (t - 4.0 / 29.0); + }; + throw new Error("Failed pattern match at Color (line 249, column 5 - line 250, column 64): " + [ t.constructor.name ]); + }; + var x = d65.xn * finv(l$prime + a / 500.0); + var y = d65.yn * finv(l$prime); + var z = d65.zn * finv(l$prime - b / 200.0); + return xyz(x)(y)(z); + }; + }; + }; + var cssStringHSLA = function (v) { + var toString = function (n) { + return Data_Show.show(Data_Show.showNumber)(Data_Int.toNumber(Data_Int.round(100.0 * n)) / 100.0); + }; + var saturation = toString(v.value1 * 100.0) + "%"; + var lightness = toString(v.value2 * 100.0) + "%"; + var hue = toString(v.value0); + var alpha = Data_Show.show(Data_Show.showNumber)(v.value3); + var $69 = v.value3 === 1.0; + if ($69) { + return "hsl(" + (hue + (", " + (saturation + (", " + (lightness + ")"))))); + }; + return "hsla(" + (hue + (", " + (saturation + (", " + (lightness + (", " + (alpha + ")"))))))); + }; + var clipHue = function (v) { + var $75 = 360.0 === v; + if ($75) { + return v; + }; + return modPos(v)(360.0); + }; + var toRGBA$prime = function (v) { + var h$prime = clipHue(v.value0) / 60.0; + var chr = (1.0 - $$Math.abs(2.0 * v.value2 - 1.0)) * v.value1; + var m = v.value2 - chr / 2.0; + var x = chr * (1.0 - $$Math.abs($$Math.remainder(h$prime)(2.0) - 1.0)); + var col = (function () { + if (h$prime < 1.0) { + return { + r: chr, + g: x, + b: 0.0 + }; + }; + if (1.0 <= h$prime && h$prime < 2.0) { + return { + r: x, + g: chr, + b: 0.0 + }; + }; + if (2.0 <= h$prime && h$prime < 3.0) { + return { + r: 0.0, + g: chr, + b: x + }; + }; + if (3.0 <= h$prime && h$prime < 4.0) { + return { + r: 0.0, + g: x, + b: chr + }; + }; + if (4.0 <= h$prime && h$prime < 5.0) { + return { + r: x, + g: 0.0, + b: chr + }; + }; + if (Data_Boolean.otherwise) { + return { + r: chr, + g: 0.0, + b: x + }; + }; + throw new Error("Failed pattern match at Color (line 342, column 5 - line 347, column 61): " + [ ]); + })(); + return { + r: col.r + m, + g: col.g + m, + b: col.b + m, + a: v.value3 + }; + }; + var toRGBA = function (col) { + var c = toRGBA$prime(col); + var g = Data_Int.round(255.0 * c.g); + var r = Data_Int.round(255.0 * c.r); + var b = Data_Int.round(255.0 * c.b); + return { + r: r, + g: g, + b: b, + a: c.a + }; + }; + var toHexString = function (color) { + var toHex = function (num) { + var repr = Data_Int.toStringAs(Data_Int.hexadecimal)(num); + var $103 = Data_String_CodePoints.length(repr) === 1; + if ($103) { + return "0" + repr; + }; + return repr; + }; + var c = toRGBA(color); + return "#" + (toHex(c.r) + (toHex(c.g) + toHex(c.b))); + }; + exports["lab"] = lab; + exports["fromHexString"] = fromHexString; + exports["toHexString"] = toHexString; + exports["cssStringHSLA"] = cssStringHSLA; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Profunctor"] = $PS["Data.Profunctor"] || {}; + var exports = $PS["Data.Profunctor"]; + var Control_Category = $PS["Control.Category"]; + var Profunctor = function (dimap) { + this.dimap = dimap; + }; + var profunctorFn = new Profunctor(function (a2b) { + return function (c2d) { + return function (b2c) { + return function ($9) { + return c2d(b2c(a2b($9))); + }; + }; + }; + }); + var dimap = function (dict) { + return dict.dimap; + }; + var rmap = function (dictProfunctor) { + return function (b2c) { + return dimap(dictProfunctor)(Control_Category.identity(Control_Category.categoryFn))(b2c); + }; + }; + exports["dimap"] = dimap; + exports["Profunctor"] = Profunctor; + exports["rmap"] = rmap; + exports["profunctorFn"] = profunctorFn; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Profunctor.Strong"] = $PS["Data.Profunctor.Strong"] || {}; + var exports = $PS["Data.Profunctor.Strong"]; + var Data_Functor = $PS["Data.Functor"]; + var Data_Profunctor = $PS["Data.Profunctor"]; + var Data_Tuple = $PS["Data.Tuple"]; + var Strong = function (Profunctor0, first, second) { + this.Profunctor0 = Profunctor0; + this.first = first; + this.second = second; + }; + var strongFn = new Strong(function () { + return Data_Profunctor.profunctorFn; + }, function (a2b) { + return function (v) { + return new Data_Tuple.Tuple(a2b(v.value0), v.value1); + }; + }, Data_Functor.map(Data_Tuple.functorTuple)); + var second = function (dict) { + return dict.second; + }; + exports["second"] = second; + exports["strongFn"] = strongFn; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["CSS.Property"] = $PS["CSS.Property"] || {}; + var exports = $PS["CSS.Property"]; + var CSS_String = $PS["CSS.String"]; + var Color = $PS["Color"]; + var Data_Functor = $PS["Data.Functor"]; + var Data_Profunctor_Strong = $PS["Data.Profunctor.Strong"]; + var Data_Semigroup = $PS["Data.Semigroup"]; + var Data_Show = $PS["Data.Show"]; + var Prefixed = (function () { + function Prefixed(value0) { + this.value0 = value0; + }; + Prefixed.create = function (value0) { + return new Prefixed(value0); + }; + return Prefixed; + })(); + var Plain = (function () { + function Plain(value0) { + this.value0 = value0; + }; + Plain.create = function (value0) { + return new Plain(value0); + }; + return Plain; + })(); + var Value = function (x) { + return x; + }; + var Key = function (x) { + return x; + }; + var Val = function (value) { + this.value = value; + }; + var value = function (dict) { + return dict.value; + }; + var semigroupPrefixed = new Data_Semigroup.Semigroup(function (v) { + return function (v1) { + if (v instanceof Plain && v1 instanceof Plain) { + return Plain.create(v.value0 + v1.value0); + }; + if (v instanceof Plain && v1 instanceof Prefixed) { + return Prefixed.create(Data_Functor.map(Data_Functor.functorArray)(Data_Profunctor_Strong.second(Data_Profunctor_Strong.strongFn)(function (v2) { + return v.value0 + v2; + }))(v1.value0)); + }; + if (v instanceof Prefixed && v1 instanceof Plain) { + return Prefixed.create(Data_Functor.map(Data_Functor.functorArray)(Data_Profunctor_Strong.second(Data_Profunctor_Strong.strongFn)(function (v2) { + return v1.value0 + v2; + }))(v.value0)); + }; + if (v instanceof Prefixed && v1 instanceof Prefixed) { + return Prefixed.create(Data_Semigroup.append(Data_Semigroup.semigroupArray)(v.value0)(v1.value0)); + }; + throw new Error("Failed pattern match at CSS.Property (line 25, column 1 - line 29, column 59): " + [ v.constructor.name, v1.constructor.name ]); + }; + }); + var semigroupValue = new Data_Semigroup.Semigroup(function (v) { + return function (v1) { + return Value(Data_Semigroup.append(semigroupPrefixed)(v)(v1)); + }; + }); + var isStringPrefixed = new CSS_String.IsString(Plain.create); + var isStringValue = new CSS_String.IsString((function () { + var $123 = CSS_String.fromString(isStringPrefixed); + return function ($124) { + return Value($123($124)); + }; + })()); + var valColor = new Val((function () { + var $127 = CSS_String.fromString(isStringValue); + return function ($128) { + return $127(Color.cssStringHSLA($128)); + }; + })()); + var valNumber = new Val((function () { + var $134 = CSS_String.fromString(isStringValue); + var $135 = Data_Show.show(Data_Show.showNumber); + return function ($136) { + return $134($135($136)); + }; + })()); + var isStringKey = new CSS_String.IsString((function () { + var $137 = CSS_String.fromString(isStringPrefixed); + return function ($138) { + return Key($137($138)); + }; + })()); + var cast = function (v) { + return v; + }; + exports["value"] = value; + exports["Prefixed"] = Prefixed; + exports["Plain"] = Plain; + exports["cast"] = cast; + exports["Val"] = Val; + exports["isStringKey"] = isStringKey; + exports["isStringValue"] = isStringValue; + exports["semigroupValue"] = semigroupValue; + exports["valNumber"] = valNumber; + exports["valColor"] = valColor; +})(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; @@ -656,188 +2491,388 @@ var PS = {}; exports["ap"] = ap; exports["unlessM"] = unlessM; })(PS); -(function(exports) { - "use strict"; - - exports.pureE = function (a) { - return function () { - return a; - }; - }; - - exports.bindE = function (a) { - return function (f) { - return function () { - return f(a())(); - }; - }; - }; -})(PS["Effect"] = PS["Effect"] || {}); (function($PS) { // Generated by purs version 0.13.3 "use strict"; - $PS["Effect"] = $PS["Effect"] || {}; - var exports = $PS["Effect"]; - var $foreign = $PS["Effect"]; + $PS["Control.Monad.Writer.Class"] = $PS["Control.Monad.Writer.Class"] || {}; + var exports = $PS["Control.Monad.Writer.Class"]; + var MonadTell = function (Monad0, tell) { + this.Monad0 = Monad0; + this.tell = tell; + }; + var tell = function (dict) { + return dict.tell; + }; + exports["tell"] = tell; + exports["MonadTell"] = MonadTell; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Control.Monad.Writer.Trans"] = $PS["Control.Monad.Writer.Trans"] || {}; + var exports = $PS["Control.Monad.Writer.Trans"]; var Control_Applicative = $PS["Control.Applicative"]; var Control_Apply = $PS["Control.Apply"]; var Control_Bind = $PS["Control.Bind"]; var Control_Monad = $PS["Control.Monad"]; - var Data_Functor = $PS["Data.Functor"]; - var monadEffect = new Control_Monad.Monad(function () { - return applicativeEffect; - }, function () { - return bindEffect; - }); - var bindEffect = new Control_Bind.Bind(function () { - return applyEffect; - }, $foreign.bindE); - var applyEffect = new Control_Apply.Apply(function () { - return functorEffect; - }, Control_Monad.ap(monadEffect)); - var applicativeEffect = new Control_Applicative.Applicative(function () { - return applyEffect; - }, $foreign.pureE); - var functorEffect = new Data_Functor.Functor(Control_Applicative.liftA1(applicativeEffect)); - exports["functorEffect"] = functorEffect; - exports["applicativeEffect"] = applicativeEffect; - exports["bindEffect"] = bindEffect; - exports["monadEffect"] = monadEffect; -})(PS); -(function(exports) { - "use strict"; - - exports.new = function (val) { - return function () { - return { value: val }; - }; - }; - - exports.read = function (ref) { - return function () { - return ref.value; - }; - }; - - exports["modify'"] = function (f) { - return function (ref) { - return function () { - var t = f(ref.value); - ref.value = t.state; - return t.value; - }; - }; - }; - - exports.write = function (val) { - return function (ref) { - return function () { - ref.value = val; - return {}; - }; - }; - }; -})(PS["Effect.Ref"] = PS["Effect.Ref"] || {}); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Effect.Ref"] = $PS["Effect.Ref"] || {}; - var exports = $PS["Effect.Ref"]; - var $foreign = $PS["Effect.Ref"]; + var Control_Monad_Writer_Class = $PS["Control.Monad.Writer.Class"]; var Data_Functor = $PS["Data.Functor"]; - var Effect = $PS["Effect"]; - var modify = function (f) { - return $foreign["modify'"](function (s) { - var s$prime = f(s); - return { - state: s$prime, - value: s$prime - }; + var Data_Monoid = $PS["Data.Monoid"]; + var Data_Semigroup = $PS["Data.Semigroup"]; + var Data_Tuple = $PS["Data.Tuple"]; + var Data_Unit = $PS["Data.Unit"]; + var WriterT = function (x) { + return x; + }; + var runWriterT = function (v) { + return v; + }; + var mapWriterT = function (f) { + return function (v) { + return f(v); + }; + }; + var functorWriterT = function (dictFunctor) { + return new Data_Functor.Functor(function (f) { + return mapWriterT(Data_Functor.map(dictFunctor)(function (v) { + return new Data_Tuple.Tuple(f(v.value0), v.value1); + })); }); }; - var modify_ = function (f) { - return function (s) { - return Data_Functor["void"](Effect.functorEffect)(modify(f)(s)); + var applyWriterT = function (dictSemigroup) { + return function (dictApply) { + return new Control_Apply.Apply(function () { + return functorWriterT(dictApply.Functor0()); + }, function (v) { + return function (v1) { + var k = function (v3) { + return function (v4) { + return new Data_Tuple.Tuple(v3.value0(v4.value0), Data_Semigroup.append(dictSemigroup)(v3.value1)(v4.value1)); + }; + }; + return Control_Apply.apply(dictApply)(Data_Functor.map(dictApply.Functor0())(k)(v))(v1); + }; + }); }; }; - exports["modify_"] = modify_; - exports["new"] = $foreign["new"]; - exports["read"] = $foreign.read; - exports["modify'"] = $foreign["modify'"]; - exports["write"] = $foreign.write; + var bindWriterT = function (dictSemigroup) { + return function (dictBind) { + return new Control_Bind.Bind(function () { + return applyWriterT(dictSemigroup)(dictBind.Apply0()); + }, function (v) { + return function (k) { + return WriterT(Control_Bind.bind(dictBind)(v)(function (v1) { + var v2 = k(v1.value0); + return Data_Functor.map((dictBind.Apply0()).Functor0())(function (v3) { + return new Data_Tuple.Tuple(v3.value0, Data_Semigroup.append(dictSemigroup)(v1.value1)(v3.value1)); + })(v2); + })); + }; + }); + }; + }; + var applicativeWriterT = function (dictMonoid) { + return function (dictApplicative) { + return new Control_Applicative.Applicative(function () { + return applyWriterT(dictMonoid.Semigroup0())(dictApplicative.Apply0()); + }, function (a) { + return WriterT(Control_Applicative.pure(dictApplicative)(new Data_Tuple.Tuple(a, Data_Monoid.mempty(dictMonoid)))); + }); + }; + }; + var monadWriterT = function (dictMonoid) { + return function (dictMonad) { + return new Control_Monad.Monad(function () { + return applicativeWriterT(dictMonoid)(dictMonad.Applicative0()); + }, function () { + return bindWriterT(dictMonoid.Semigroup0())(dictMonad.Bind1()); + }); + }; + }; + var monadTellWriterT = function (dictMonoid) { + return function (dictMonad) { + return new Control_Monad_Writer_Class.MonadTell(function () { + return monadWriterT(dictMonoid)(dictMonad); + }, (function () { + var $126 = Control_Applicative.pure(dictMonad.Applicative0()); + var $127 = Data_Tuple.Tuple.create(Data_Unit.unit); + return function ($128) { + return WriterT($126($127($128))); + }; + })()); + }; + }; + exports["runWriterT"] = runWriterT; + exports["functorWriterT"] = functorWriterT; + exports["applyWriterT"] = applyWriterT; + exports["bindWriterT"] = bindWriterT; + exports["monadTellWriterT"] = monadTellWriterT; })(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; - $PS["Control.Monad.Rec.Class"] = $PS["Control.Monad.Rec.Class"] || {}; - var exports = $PS["Control.Monad.Rec.Class"]; + $PS["Data.Identity"] = $PS["Data.Identity"] || {}; + var exports = $PS["Data.Identity"]; + var Control_Applicative = $PS["Control.Applicative"]; + var Control_Apply = $PS["Control.Apply"]; var Control_Bind = $PS["Control.Bind"]; + var Control_Monad = $PS["Control.Monad"]; var Data_Functor = $PS["Data.Functor"]; - var Effect = $PS["Effect"]; - var Effect_Ref = $PS["Effect.Ref"]; - var Loop = (function () { - function Loop(value0) { - this.value0 = value0; - }; - Loop.create = function (value0) { - return new Loop(value0); - }; - return Loop; - })(); - var Done = (function () { - function Done(value0) { - this.value0 = value0; - }; - Done.create = function (value0) { - return new Done(value0); - }; - return Done; - })(); - var MonadRec = function (Monad0, tailRecM) { - this.Monad0 = Monad0; - this.tailRecM = tailRecM; + var Data_Newtype = $PS["Data.Newtype"]; + var Identity = function (x) { + return x; }; - var tailRecM = function (dict) { - return dict.tailRecM; - }; - var monadRecEffect = new MonadRec(function () { - return Effect.monadEffect; - }, function (f) { - return function (a) { - var fromDone = function (v) { - if (v instanceof Done) { - return v.value0; - }; - throw new Error("Failed pattern match at Control.Monad.Rec.Class (line 111, column 30 - line 111, column 44): " + [ v.constructor.name ]); - }; - return function __do() { - var v = Control_Bind.bindFlipped(Effect.bindEffect)(Effect_Ref["new"])(f(a))(); - (function () { - while (!(function __do() { - var v1 = Effect_Ref.read(v)(); - if (v1 instanceof Loop) { - var v2 = f(v1.value0)(); - var v3 = Effect_Ref.write(v2)(v)(); - return false; - }; - if (v1 instanceof Done) { - return true; - }; - throw new Error("Failed pattern match at Control.Monad.Rec.Class (line 102, column 22 - line 107, column 28): " + [ v1.constructor.name ]); - })()) { - - }; - return {}; - })(); - return Data_Functor.map(Effect.functorEffect)(fromDone)(Effect_Ref.read(v))(); - }; + var newtypeIdentity = new Data_Newtype.Newtype(function (n) { + return n; + }, Identity); + var functorIdentity = new Data_Functor.Functor(function (f) { + return function (m) { + return f(m); }; }); - exports["Loop"] = Loop; - exports["Done"] = Done; - exports["MonadRec"] = MonadRec; - exports["tailRecM"] = tailRecM; - exports["monadRecEffect"] = monadRecEffect; + var applyIdentity = new Control_Apply.Apply(function () { + return functorIdentity; + }, function (v) { + return function (v1) { + return v(v1); + }; + }); + var bindIdentity = new Control_Bind.Bind(function () { + return applyIdentity; + }, function (v) { + return function (f) { + return f(v); + }; + }); + var applicativeIdentity = new Control_Applicative.Applicative(function () { + return applyIdentity; + }, Identity); + var monadIdentity = new Control_Monad.Monad(function () { + return applicativeIdentity; + }, function () { + return bindIdentity; + }); + exports["newtypeIdentity"] = newtypeIdentity; + exports["functorIdentity"] = functorIdentity; + exports["applyIdentity"] = applyIdentity; + exports["applicativeIdentity"] = applicativeIdentity; + exports["bindIdentity"] = bindIdentity; + exports["monadIdentity"] = monadIdentity; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Control.Monad.Writer"] = $PS["Control.Monad.Writer"] || {}; + var exports = $PS["Control.Monad.Writer"]; + var Control_Monad_Writer_Trans = $PS["Control.Monad.Writer.Trans"]; + var Data_Identity = $PS["Data.Identity"]; + var Data_Newtype = $PS["Data.Newtype"]; + var Data_Tuple = $PS["Data.Tuple"]; + var runWriter = (function () { + var $2 = Data_Newtype.unwrap(Data_Identity.newtypeIdentity); + return function ($3) { + return $2(Control_Monad_Writer_Trans.runWriterT($3)); + }; + })(); + var execWriter = function (m) { + return Data_Tuple.snd(runWriter(m)); + }; + exports["execWriter"] = execWriter; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["CSS.Stylesheet"] = $PS["CSS.Stylesheet"] || {}; + var exports = $PS["CSS.Stylesheet"]; + var CSS_Property = $PS["CSS.Property"]; + var Control_Apply = $PS["Control.Apply"]; + var Control_Bind = $PS["Control.Bind"]; + var Control_Monad_Writer = $PS["Control.Monad.Writer"]; + var Control_Monad_Writer_Class = $PS["Control.Monad.Writer.Class"]; + var Control_Monad_Writer_Trans = $PS["Control.Monad.Writer.Trans"]; + var Data_Array = $PS["Data.Array"]; + var Data_Functor = $PS["Data.Functor"]; + var Data_Identity = $PS["Data.Identity"]; + var Data_Monoid = $PS["Data.Monoid"]; + var Data_Semigroup = $PS["Data.Semigroup"]; + var Property = (function () { + function Property(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + Property.create = function (value0) { + return function (value1) { + return new Property(value0, value1); + }; + }; + return Property; + })(); + var S = function (x) { + return x; + }; + var runS = function (v) { + return Control_Monad_Writer.execWriter(v); + }; + var rule = (function () { + var $403 = Control_Monad_Writer_Class.tell(Control_Monad_Writer_Trans.monadTellWriterT(Data_Monoid.monoidArray)(Data_Identity.monadIdentity)); + return function ($404) { + return S($403(Data_Array.singleton($404))); + }; + })(); + var key = function (dictVal) { + return function (k) { + return function (v) { + return rule(new Property(CSS_Property.cast(k), CSS_Property.value(dictVal)(v))); + }; + }; + }; + var functorStyleM = new Data_Functor.Functor(function (f) { + return function (v) { + return S(Data_Functor.map(Control_Monad_Writer_Trans.functorWriterT(Data_Identity.functorIdentity))(f)(v)); + }; + }); + var applyStyleM = new Control_Apply.Apply(function () { + return functorStyleM; + }, function (v) { + return function (v1) { + return S(Control_Apply.apply(Control_Monad_Writer_Trans.applyWriterT(Data_Semigroup.semigroupArray)(Data_Identity.applyIdentity))(v)(v1)); + }; + }); + var bindStyleM = new Control_Bind.Bind(function () { + return applyStyleM; + }, function (v) { + return function (f) { + return S(Control_Bind.bind(Control_Monad_Writer_Trans.bindWriterT(Data_Semigroup.semigroupArray)(Data_Identity.bindIdentity))(v)(function ($409) { + return (function (v1) { + return v1; + })(f($409)); + })); + }; + }); + exports["Property"] = Property; + exports["runS"] = runS; + exports["key"] = key; + exports["bindStyleM"] = bindStyleM; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["CSS.Background"] = $PS["CSS.Background"] || {}; + var exports = $PS["CSS.Background"]; + var CSS_Property = $PS["CSS.Property"]; + var CSS_String = $PS["CSS.String"]; + var CSS_Stylesheet = $PS["CSS.Stylesheet"]; + var Background = function (Val0, background) { + this.Val0 = Val0; + this.background = background; + }; + var backgroundColor$prime = new Background(function () { + return CSS_Property.valColor; + }, CSS_Stylesheet.key(CSS_Property.valColor)(CSS_String.fromString(CSS_Property.isStringKey)("background"))); + var background = function (dict) { + return dict.background; + }; + exports["background"] = background; + exports["backgroundColor'"] = backgroundColor$prime; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["CSS.Size"] = $PS["CSS.Size"] || {}; + var exports = $PS["CSS.Size"]; + var CSS_Property = $PS["CSS.Property"]; + var CSS_String = $PS["CSS.String"]; + var Data_Semigroup = $PS["Data.Semigroup"]; + var valSize = new CSS_Property.Val(function (v) { + return v; + }); + var px = function (i) { + return Data_Semigroup.append(CSS_Property.semigroupValue)(CSS_Property.value(CSS_Property.valNumber)(i))(CSS_String.fromString(CSS_Property.isStringValue)("px")); + }; + exports["px"] = px; + exports["valSize"] = valSize; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["CSS.Geometry"] = $PS["CSS.Geometry"] || {}; + var exports = $PS["CSS.Geometry"]; + var CSS_Property = $PS["CSS.Property"]; + var CSS_Size = $PS["CSS.Size"]; + var CSS_String = $PS["CSS.String"]; + var CSS_Stylesheet = $PS["CSS.Stylesheet"]; + var width = CSS_Stylesheet.key(CSS_Size.valSize)(CSS_String.fromString(CSS_Property.isStringKey)("width")); + var lineHeight = CSS_Stylesheet.key(CSS_Size.valSize)(CSS_String.fromString(CSS_Property.isStringKey)("line-height")); + var height = CSS_Stylesheet.key(CSS_Size.valSize)(CSS_String.fromString(CSS_Property.isStringKey)("height")); + exports["width"] = width; + exports["height"] = height; + exports["lineHeight"] = lineHeight; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["CSS.Render"] = $PS["CSS.Render"] || {}; + var exports = $PS["CSS.Render"]; + var CSS_Property = $PS["CSS.Property"]; + var Data_Either = $PS["Data.Either"]; + var Data_Eq = $PS["Data.Eq"]; + var Data_Foldable = $PS["Data.Foldable"]; + var Data_Functor = $PS["Data.Functor"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_Tuple = $PS["Data.Tuple"]; + var collect$prime = function (v) { + return function (v1) { + if (v instanceof CSS_Property.Plain && v1 instanceof CSS_Property.Plain) { + return [ new Data_Either.Right(new Data_Tuple.Tuple(v.value0, v1.value0)) ]; + }; + if (v instanceof CSS_Property.Prefixed && v1 instanceof CSS_Property.Plain) { + return Data_Functor.map(Data_Functor.functorArray)(function (v3) { + return Data_Either.Right.create(new Data_Tuple.Tuple(v3.value0 + v3.value1, v1.value0)); + })(v.value0); + }; + if (v instanceof CSS_Property.Plain && v1 instanceof CSS_Property.Prefixed) { + return Data_Functor.map(Data_Functor.functorArray)(function (v2) { + return Data_Either.Right.create(new Data_Tuple.Tuple(v.value0, v2.value0 + v2.value1)); + })(v1.value0); + }; + if (v instanceof CSS_Property.Prefixed && v1 instanceof CSS_Property.Prefixed) { + return Data_Functor.map(Data_Functor.functorArray)(function (v2) { + return Data_Maybe.maybe(new Data_Either.Left(v2.value0 + v2.value1))((function () { + var $182 = Data_Tuple.Tuple.create(v2.value0 + v2.value1); + return function ($183) { + return Data_Either.Right.create($182((function (v3) { + return v2.value0 + v3; + })($183))); + }; + })())(Data_Tuple.lookup(Data_Foldable.foldableArray)(Data_Eq.eqString)(v2.value0)(v1.value0)); + })(v.value0); + }; + throw new Error("Failed pattern match at CSS.Render (line 158, column 1 - line 158, column 80): " + [ v.constructor.name, v1.constructor.name ]); + }; + }; + var collect = function (v) { + return collect$prime(v.value0)(v.value1); + }; + exports["collect"] = collect; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["CSS.TextAlign"] = $PS["CSS.TextAlign"] || {}; + var exports = $PS["CSS.TextAlign"]; + var CSS_Property = $PS["CSS.Property"]; + var CSS_String = $PS["CSS.String"]; + var CSS_Stylesheet = $PS["CSS.Stylesheet"]; + var TextAlign = function (x) { + return x; + }; + var valTextAlign = new CSS_Property.Val(function (v) { + return v; + }); + var textAlign = CSS_Stylesheet.key(valTextAlign)(CSS_String.fromString(CSS_Property.isStringKey)("text-align")); + var center = TextAlign(CSS_String.fromString(CSS_Property.isStringValue)("center")); + exports["textAlign"] = textAlign; + exports["center"] = center; })(PS); (function($PS) { // Generated by purs version 0.13.3 @@ -865,20 +2900,6 @@ var PS = {}; exports["Plus"] = Plus; exports["empty"] = empty; })(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.Semigroup"] = $PS["Data.Semigroup"] || {}; - var exports = $PS["Data.Semigroup"]; - var Semigroup = function (append) { - this.append = append; - }; - var append = function (dict) { - return dict.append; - }; - exports["Semigroup"] = Semigroup; - exports["append"] = append; -})(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; @@ -1048,1837 +3069,6 @@ var PS = {}; exports["applicativeList"] = applicativeList; exports["plusList"] = plusList; })(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.List"] = $PS["Data.List"] || {}; - var exports = $PS["Data.List"]; - var Data_List_Types = $PS["Data.List.Types"]; - var reverse = (function () { - var go = function ($copy_acc) { - return function ($copy_v) { - var $tco_var_acc = $copy_acc; - var $tco_done = false; - var $tco_result; - function $tco_loop(acc, v) { - if (v instanceof Data_List_Types.Nil) { - $tco_done = true; - return acc; - }; - if (v instanceof Data_List_Types.Cons) { - $tco_var_acc = new Data_List_Types.Cons(v.value0, acc); - $copy_v = v.value1; - return; - }; - throw new Error("Failed pattern match at Data.List (line 368, column 3 - line 368, column 19): " + [ acc.constructor.name, v.constructor.name ]); - }; - while (!$tco_done) { - $tco_result = $tco_loop($tco_var_acc, $copy_v); - }; - return $tco_result; - }; - }; - return go(Data_List_Types.Nil.value); - })(); - var $$null = function (v) { - if (v instanceof Data_List_Types.Nil) { - return true; - }; - return false; - }; - exports["null"] = $$null; - exports["reverse"] = reverse; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.CatQueue"] = $PS["Data.CatQueue"] || {}; - var exports = $PS["Data.CatQueue"]; - var Data_List = $PS["Data.List"]; - var Data_List_Types = $PS["Data.List.Types"]; - var Data_Maybe = $PS["Data.Maybe"]; - var Data_Tuple = $PS["Data.Tuple"]; - var CatQueue = (function () { - function CatQueue(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - CatQueue.create = function (value0) { - return function (value1) { - return new CatQueue(value0, value1); - }; - }; - return CatQueue; - })(); - var uncons = function ($copy_v) { - var $tco_done = false; - var $tco_result; - function $tco_loop(v) { - if (v.value0 instanceof Data_List_Types.Nil && v.value1 instanceof Data_List_Types.Nil) { - $tco_done = true; - return Data_Maybe.Nothing.value; - }; - if (v.value0 instanceof Data_List_Types.Nil) { - $copy_v = new CatQueue(Data_List.reverse(v.value1), Data_List_Types.Nil.value); - return; - }; - if (v.value0 instanceof Data_List_Types.Cons) { - $tco_done = true; - return new Data_Maybe.Just(new Data_Tuple.Tuple(v.value0.value0, new CatQueue(v.value0.value1, v.value1))); - }; - throw new Error("Failed pattern match at Data.CatQueue (line 83, column 1 - line 83, column 63): " + [ v.constructor.name ]); - }; - while (!$tco_done) { - $tco_result = $tco_loop($copy_v); - }; - return $tco_result; - }; - var snoc = function (v) { - return function (a) { - return new CatQueue(v.value0, new Data_List_Types.Cons(a, v.value1)); - }; - }; - var $$null = function (v) { - if (v.value0 instanceof Data_List_Types.Nil && v.value1 instanceof Data_List_Types.Nil) { - return true; - }; - return false; - }; - var empty = new CatQueue(Data_List_Types.Nil.value, Data_List_Types.Nil.value); - exports["empty"] = empty; - exports["null"] = $$null; - exports["snoc"] = snoc; - exports["uncons"] = uncons; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.CatList"] = $PS["Data.CatList"] || {}; - var exports = $PS["Data.CatList"]; - var Data_CatQueue = $PS["Data.CatQueue"]; - var Data_List_Types = $PS["Data.List.Types"]; - var Data_Maybe = $PS["Data.Maybe"]; - var Data_Semigroup = $PS["Data.Semigroup"]; - var Data_Tuple = $PS["Data.Tuple"]; - var CatNil = (function () { - function CatNil() { - - }; - CatNil.value = new CatNil(); - return CatNil; - })(); - var CatCons = (function () { - function CatCons(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - CatCons.create = function (value0) { - return function (value1) { - return new CatCons(value0, value1); - }; - }; - return CatCons; - })(); - var link = function (v) { - return function (v1) { - if (v instanceof CatNil) { - return v1; - }; - if (v1 instanceof CatNil) { - return v; - }; - if (v instanceof CatCons) { - return new CatCons(v.value0, Data_CatQueue.snoc(v.value1)(v1)); - }; - throw new Error("Failed pattern match at Data.CatList (line 109, column 1 - line 109, column 54): " + [ v.constructor.name, v1.constructor.name ]); - }; - }; - var foldr = function (k) { - return function (b) { - return function (q) { - var foldl = function ($copy_v) { - return function ($copy_c) { - return function ($copy_v1) { - var $tco_var_v = $copy_v; - var $tco_var_c = $copy_c; - var $tco_done = false; - var $tco_result; - function $tco_loop(v, c, v1) { - if (v1 instanceof Data_List_Types.Nil) { - $tco_done = true; - return c; - }; - if (v1 instanceof Data_List_Types.Cons) { - $tco_var_v = v; - $tco_var_c = v(c)(v1.value0); - $copy_v1 = v1.value1; - return; - }; - throw new Error("Failed pattern match at Data.CatList (line 125, column 3 - line 125, column 59): " + [ v.constructor.name, c.constructor.name, v1.constructor.name ]); - }; - while (!$tco_done) { - $tco_result = $tco_loop($tco_var_v, $tco_var_c, $copy_v1); - }; - return $tco_result; - }; - }; - }; - var go = function ($copy_xs) { - return function ($copy_ys) { - var $tco_var_xs = $copy_xs; - var $tco_done = false; - var $tco_result; - function $tco_loop(xs, ys) { - var v = Data_CatQueue.uncons(xs); - if (v instanceof Data_Maybe.Nothing) { - $tco_done = true; - return foldl(function (x) { - return function (i) { - return i(x); - }; - })(b)(ys); - }; - if (v instanceof Data_Maybe.Just) { - $tco_var_xs = v.value0.value1; - $copy_ys = new Data_List_Types.Cons(k(v.value0.value0), ys); - return; - }; - throw new Error("Failed pattern match at Data.CatList (line 121, column 14 - line 123, column 67): " + [ v.constructor.name ]); - }; - while (!$tco_done) { - $tco_result = $tco_loop($tco_var_xs, $copy_ys); - }; - return $tco_result; - }; - }; - return go(q)(Data_List_Types.Nil.value); - }; - }; - }; - var uncons = function (v) { - if (v instanceof CatNil) { - return Data_Maybe.Nothing.value; - }; - if (v instanceof CatCons) { - return new Data_Maybe.Just(new Data_Tuple.Tuple(v.value0, (function () { - var $44 = Data_CatQueue["null"](v.value1); - if ($44) { - return CatNil.value; - }; - return foldr(link)(CatNil.value)(v.value1); - })())); - }; - throw new Error("Failed pattern match at Data.CatList (line 100, column 1 - line 100, column 61): " + [ v.constructor.name ]); - }; - var empty = CatNil.value; - var append = link; - var semigroupCatList = new Data_Semigroup.Semigroup(append); - var snoc = function (cat) { - return function (a) { - return append(cat)(new CatCons(a, Data_CatQueue.empty)); - }; - }; - exports["empty"] = empty; - exports["snoc"] = snoc; - exports["uncons"] = uncons; - exports["semigroupCatList"] = semigroupCatList; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Control.Monad.Free"] = $PS["Control.Monad.Free"] || {}; - var exports = $PS["Control.Monad.Free"]; - var Control_Applicative = $PS["Control.Applicative"]; - var Control_Apply = $PS["Control.Apply"]; - var Control_Bind = $PS["Control.Bind"]; - var Control_Monad = $PS["Control.Monad"]; - var Control_Monad_Rec_Class = $PS["Control.Monad.Rec.Class"]; - var Data_CatList = $PS["Data.CatList"]; - var Data_Functor = $PS["Data.Functor"]; - var Data_Maybe = $PS["Data.Maybe"]; - var Data_Semigroup = $PS["Data.Semigroup"]; - var Free = (function () { - function Free(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - Free.create = function (value0) { - return function (value1) { - return new Free(value0, value1); - }; - }; - return Free; - })(); - var Return = (function () { - function Return(value0) { - this.value0 = value0; - }; - Return.create = function (value0) { - return new Return(value0); - }; - return Return; - })(); - var Bind = (function () { - function Bind(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - Bind.create = function (value0) { - return function (value1) { - return new Bind(value0, value1); - }; - }; - return Bind; - })(); - var toView = function ($copy_v) { - var $tco_done = false; - var $tco_result; - function $tco_loop(v) { - var runExpF = function (v2) { - return v2; - }; - var concatF = function (v2) { - return function (r) { - return new Free(v2.value0, Data_Semigroup.append(Data_CatList.semigroupCatList)(v2.value1)(r)); - }; - }; - if (v.value0 instanceof Return) { - var v2 = Data_CatList.uncons(v.value1); - if (v2 instanceof Data_Maybe.Nothing) { - $tco_done = true; - return new Return(v.value0.value0); - }; - if (v2 instanceof Data_Maybe.Just) { - $copy_v = concatF(runExpF(v2.value0.value0)(v.value0.value0))(v2.value0.value1); - return; - }; - throw new Error("Failed pattern match at Control.Monad.Free (line 227, column 7 - line 231, column 64): " + [ v2.constructor.name ]); - }; - if (v.value0 instanceof Bind) { - $tco_done = true; - return new Bind(v.value0.value0, function (a) { - return concatF(v.value0.value1(a))(v.value1); - }); - }; - throw new Error("Failed pattern match at Control.Monad.Free (line 225, column 3 - line 233, column 56): " + [ v.value0.constructor.name ]); - }; - while (!$tco_done) { - $tco_result = $tco_loop($copy_v); - }; - return $tco_result; - }; - var fromView = function (f) { - return new Free(f, Data_CatList.empty); - }; - var freeMonad = new Control_Monad.Monad(function () { - return freeApplicative; - }, function () { - return freeBind; - }); - var freeFunctor = new Data_Functor.Functor(function (k) { - return function (f) { - return Control_Bind.bindFlipped(freeBind)((function () { - var $120 = Control_Applicative.pure(freeApplicative); - return function ($121) { - return $120(k($121)); - }; - })())(f); - }; - }); - var freeBind = new Control_Bind.Bind(function () { - return freeApply; - }, function (v) { - return function (k) { - return new Free(v.value0, Data_CatList.snoc(v.value1)(k)); - }; - }); - var freeApply = new Control_Apply.Apply(function () { - return freeFunctor; - }, Control_Monad.ap(freeMonad)); - var freeApplicative = new Control_Applicative.Applicative(function () { - return freeApply; - }, function ($122) { - return fromView(Return.create($122)); - }); - var liftF = function (f) { - return fromView(new Bind(f, (function () { - var $123 = Control_Applicative.pure(freeApplicative); - return function ($124) { - return $123($124); - }; - })())); - }; - var foldFree = function (dictMonadRec) { - return function (k) { - var go = function (f) { - var v = toView(f); - if (v instanceof Return) { - return Data_Functor.map((((dictMonadRec.Monad0()).Bind1()).Apply0()).Functor0())(Control_Monad_Rec_Class.Done.create)(Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0())(v.value0)); - }; - if (v instanceof Bind) { - return Data_Functor.map((((dictMonadRec.Monad0()).Bind1()).Apply0()).Functor0())(function ($136) { - return Control_Monad_Rec_Class.Loop.create(v.value1($136)); - })(k(v.value0)); - }; - throw new Error("Failed pattern match at Control.Monad.Free (line 158, column 10 - line 160, column 37): " + [ v.constructor.name ]); - }; - return Control_Monad_Rec_Class.tailRecM(dictMonadRec)(go); - }; - }; - exports["liftF"] = liftF; - exports["foldFree"] = foldFree; - exports["freeFunctor"] = freeFunctor; - exports["freeApplicative"] = freeApplicative; - exports["freeMonad"] = freeMonad; -})(PS); -(function(exports) { - "use strict"; - - var unsafeCompareImpl = function (lt) { - return function (eq) { - return function (gt) { - return function (x) { - return function (y) { - return x < y ? lt : x === y ? eq : gt; - }; - }; - }; - }; - }; - exports.ordIntImpl = unsafeCompareImpl; - exports.ordStringImpl = unsafeCompareImpl; -})(PS["Data.Ord"] = PS["Data.Ord"] || {}); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.Ordering"] = $PS["Data.Ordering"] || {}; - var exports = $PS["Data.Ordering"]; - var LT = (function () { - function LT() { - - }; - LT.value = new LT(); - return LT; - })(); - var GT = (function () { - function GT() { - - }; - GT.value = new GT(); - return GT; - })(); - var EQ = (function () { - function EQ() { - - }; - EQ.value = new EQ(); - return EQ; - })(); - exports["LT"] = LT; - exports["GT"] = GT; - exports["EQ"] = EQ; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.Ord"] = $PS["Data.Ord"] || {}; - var exports = $PS["Data.Ord"]; - var $foreign = $PS["Data.Ord"]; - var Data_Eq = $PS["Data.Eq"]; - var Data_Ordering = $PS["Data.Ordering"]; - var Ord = function (Eq0, compare) { - this.Eq0 = Eq0; - this.compare = compare; - }; - var ordString = new Ord(function () { - return Data_Eq.eqString; - }, $foreign.ordStringImpl(Data_Ordering.LT.value)(Data_Ordering.EQ.value)(Data_Ordering.GT.value)); - var ordInt = new Ord(function () { - return Data_Eq.eqInt; - }, $foreign.ordIntImpl(Data_Ordering.LT.value)(Data_Ordering.EQ.value)(Data_Ordering.GT.value)); - var compare = function (dict) { - return dict.compare; - }; - exports["compare"] = compare; - exports["ordInt"] = ordInt; - exports["ordString"] = ordString; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Halogen.Query.HalogenM"] = $PS["Halogen.Query.HalogenM"] || {}; - var exports = $PS["Halogen.Query.HalogenM"]; - var Control_Monad_Free = $PS["Control.Monad.Free"]; - var Control_Monad_State_Class = $PS["Control.Monad.State.Class"]; - var Data_Ord = $PS["Data.Ord"]; - var SubscriptionId = function (x) { - return x; - }; - var ForkId = function (x) { - return x; - }; - var State = (function () { - function State(value0) { - this.value0 = value0; - }; - State.create = function (value0) { - return new State(value0); - }; - return State; - })(); - var Subscribe = (function () { - function Subscribe(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - Subscribe.create = function (value0) { - return function (value1) { - return new Subscribe(value0, value1); - }; - }; - return Subscribe; - })(); - var Unsubscribe = (function () { - function Unsubscribe(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - Unsubscribe.create = function (value0) { - return function (value1) { - return new Unsubscribe(value0, value1); - }; - }; - return Unsubscribe; - })(); - var Lift = (function () { - function Lift(value0) { - this.value0 = value0; - }; - Lift.create = function (value0) { - return new Lift(value0); - }; - return Lift; - })(); - var ChildQuery = (function () { - function ChildQuery(value0) { - this.value0 = value0; - }; - ChildQuery.create = function (value0) { - return new ChildQuery(value0); - }; - return ChildQuery; - })(); - var Raise = (function () { - function Raise(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - Raise.create = function (value0) { - return function (value1) { - return new Raise(value0, value1); - }; - }; - return Raise; - })(); - var Par = (function () { - function Par(value0) { - this.value0 = value0; - }; - Par.create = function (value0) { - return new Par(value0); - }; - return Par; - })(); - var Fork = (function () { - function Fork(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - Fork.create = function (value0) { - return function (value1) { - return new Fork(value0, value1); - }; - }; - return Fork; - })(); - var Kill = (function () { - function Kill(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - Kill.create = function (value0) { - return function (value1) { - return new Kill(value0, value1); - }; - }; - return Kill; - })(); - var GetRef = (function () { - function GetRef(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - GetRef.create = function (value0) { - return function (value1) { - return new GetRef(value0, value1); - }; - }; - return GetRef; - })(); - var HalogenM = function (x) { - return x; - }; - var ordSubscriptionId = Data_Ord.ordInt; - var ordForkId = Data_Ord.ordInt; - var monadHalogenM = Control_Monad_Free.freeMonad; - var monadStateHalogenM = new Control_Monad_State_Class.MonadState(function () { - return monadHalogenM; - }, function ($137) { - return HalogenM(Control_Monad_Free.liftF(State.create($137))); - }); - var functorHalogenM = Control_Monad_Free.freeFunctor; - var applicativeHalogenM = Control_Monad_Free.freeApplicative; - exports["State"] = State; - exports["Subscribe"] = Subscribe; - exports["Unsubscribe"] = Unsubscribe; - exports["Lift"] = Lift; - exports["ChildQuery"] = ChildQuery; - exports["Raise"] = Raise; - exports["Par"] = Par; - exports["Fork"] = Fork; - exports["Kill"] = Kill; - exports["GetRef"] = GetRef; - exports["SubscriptionId"] = SubscriptionId; - exports["ForkId"] = ForkId; - exports["functorHalogenM"] = functorHalogenM; - exports["applicativeHalogenM"] = applicativeHalogenM; - exports["monadStateHalogenM"] = monadStateHalogenM; - exports["ordSubscriptionId"] = ordSubscriptionId; - exports["ordForkId"] = ordForkId; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Halogen.Query.HalogenQ"] = $PS["Halogen.Query.HalogenQ"] || {}; - var exports = $PS["Halogen.Query.HalogenQ"]; - var Initialize = (function () { - function Initialize(value0) { - this.value0 = value0; - }; - Initialize.create = function (value0) { - return new Initialize(value0); - }; - return Initialize; - })(); - var Finalize = (function () { - function Finalize(value0) { - this.value0 = value0; - }; - Finalize.create = function (value0) { - return new Finalize(value0); - }; - return Finalize; - })(); - var Receive = (function () { - function Receive(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - Receive.create = function (value0) { - return function (value1) { - return new Receive(value0, value1); - }; - }; - return Receive; - })(); - var Action = (function () { - function Action(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - Action.create = function (value0) { - return function (value1) { - return new Action(value0, value1); - }; - }; - return Action; - })(); - var Query = (function () { - function Query(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - Query.create = function (value0) { - return function (value1) { - return new Query(value0, value1); - }; - }; - return Query; - })(); - exports["Initialize"] = Initialize; - exports["Finalize"] = Finalize; - exports["Receive"] = Receive; - exports["Action"] = Action; - exports["Query"] = Query; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Halogen.Component"] = $PS["Halogen.Component"] || {}; - var exports = $PS["Halogen.Component"]; - var Control_Applicative = $PS["Control.Applicative"]; - var Data_Coyoneda = $PS["Data.Coyoneda"]; - var Data_Foldable = $PS["Data.Foldable"]; - var Data_Function = $PS["Data.Function"]; - var Data_Functor = $PS["Data.Functor"]; - var Data_Maybe = $PS["Data.Maybe"]; - var Data_Unit = $PS["Data.Unit"]; - var Halogen_Query_HalogenM = $PS["Halogen.Query.HalogenM"]; - var Halogen_Query_HalogenQ = $PS["Halogen.Query.HalogenQ"]; - var Unsafe_Coerce = $PS["Unsafe.Coerce"]; - var ComponentSlot = (function () { - function ComponentSlot(value0) { - this.value0 = value0; - }; - ComponentSlot.create = function (value0) { - return new ComponentSlot(value0); - }; - return ComponentSlot; - })(); - var ThunkSlot = (function () { - function ThunkSlot(value0) { - this.value0 = value0; - }; - ThunkSlot.create = function (value0) { - return new ThunkSlot(value0); - }; - return ThunkSlot; - })(); - var unComponentSlot = Unsafe_Coerce.unsafeCoerce; - var unComponent = Unsafe_Coerce.unsafeCoerce; - var mkEval = function (args) { - return function (v) { - if (v instanceof Halogen_Query_HalogenQ.Initialize) { - return Data_Functor.voidLeft(Halogen_Query_HalogenM.functorHalogenM)(Data_Foldable.traverse_(Halogen_Query_HalogenM.applicativeHalogenM)(Data_Foldable.foldableMaybe)(args.handleAction)(args.initialize))(v.value0); - }; - if (v instanceof Halogen_Query_HalogenQ.Finalize) { - return Data_Functor.voidLeft(Halogen_Query_HalogenM.functorHalogenM)(Data_Foldable.traverse_(Halogen_Query_HalogenM.applicativeHalogenM)(Data_Foldable.foldableMaybe)(args.handleAction)(args.finalize))(v.value0); - }; - if (v instanceof Halogen_Query_HalogenQ.Receive) { - return Data_Functor.voidLeft(Halogen_Query_HalogenM.functorHalogenM)(Data_Foldable.traverse_(Halogen_Query_HalogenM.applicativeHalogenM)(Data_Foldable.foldableMaybe)(args.handleAction)(args.receive(v.value0)))(v.value1); - }; - if (v instanceof Halogen_Query_HalogenQ.Action) { - return Data_Functor.voidLeft(Halogen_Query_HalogenM.functorHalogenM)(args.handleAction(v.value0))(v.value1); - }; - if (v instanceof Halogen_Query_HalogenQ.Query) { - return Data_Coyoneda.unCoyoneda(function (g) { - var $28 = Data_Functor.map(Halogen_Query_HalogenM.functorHalogenM)(Data_Maybe.maybe(v.value1(Data_Unit.unit))(g)); - return function ($29) { - return $28(args.handleQuery($29)); - }; - })(v.value0); - }; - throw new Error("Failed pattern match at Halogen.Component (line 172, column 15 - line 182, column 70): " + [ v.constructor.name ]); - }; - }; - var mkComponent = Unsafe_Coerce.unsafeCoerce; - var defaultEval = { - handleAction: Data_Function["const"](Control_Applicative.pure(Halogen_Query_HalogenM.applicativeHalogenM)(Data_Unit.unit)), - handleQuery: Data_Function["const"](Control_Applicative.pure(Halogen_Query_HalogenM.applicativeHalogenM)(Data_Maybe.Nothing.value)), - receive: Data_Function["const"](Data_Maybe.Nothing.value), - initialize: Data_Maybe.Nothing.value, - finalize: Data_Maybe.Nothing.value - }; - exports["mkComponent"] = mkComponent; - exports["unComponent"] = unComponent; - exports["mkEval"] = mkEval; - exports["defaultEval"] = defaultEval; - exports["ComponentSlot"] = ComponentSlot; - exports["ThunkSlot"] = ThunkSlot; - exports["unComponentSlot"] = unComponentSlot; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.Newtype"] = $PS["Data.Newtype"] || {}; - var exports = $PS["Data.Newtype"]; - var Newtype = function (unwrap, wrap) { - this.unwrap = unwrap; - this.wrap = wrap; - }; - var unwrap = function (dict) { - return dict.unwrap; - }; - exports["unwrap"] = unwrap; - exports["Newtype"] = Newtype; -})(PS); -(function(exports) { - "use strict"; - - exports["null"] = null; - - exports.nullable = function (a, r, f) { - return a == null ? r : f(a); - }; - - exports.notNull = function (x) { - return x; - }; -})(PS["Data.Nullable"] = PS["Data.Nullable"] || {}); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.Nullable"] = $PS["Data.Nullable"] || {}; - var exports = $PS["Data.Nullable"]; - var $foreign = $PS["Data.Nullable"]; - var Data_Maybe = $PS["Data.Maybe"]; - var toNullable = Data_Maybe.maybe($foreign["null"])($foreign.notNull); - var toMaybe = function (n) { - return $foreign.nullable(n, Data_Maybe.Nothing.value, Data_Maybe.Just.create); - }; - exports["toMaybe"] = toMaybe; - exports["toNullable"] = toNullable; -})(PS); -(function(exports) { - "use strict"; - - exports.typeOf = function (value) { - return typeof value; - }; -})(PS["Foreign"] = PS["Foreign"] || {}); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Foreign"] = $PS["Foreign"] || {}; - var exports = $PS["Foreign"]; - var $foreign = $PS["Foreign"]; - exports["typeOf"] = $foreign.typeOf; -})(PS); -(function(exports) { - "use strict"; - - exports._lookup = function (no, yes, k, m) { - return k in m ? yes(m[k]) : no; - }; - - function toArrayWithKey(f) { - return function (m) { - var r = []; - for (var k in m) { - if (hasOwnProperty.call(m, k)) { - r.push(f(k)(m[k])); - } - } - return r; - }; - } -})(PS["Foreign.Object"] = PS["Foreign.Object"] || {}); -(function(exports) { - "use strict"; - - exports.runFn4 = function (fn) { - return function (a) { - return function (b) { - return function (c) { - return function (d) { - return fn(a, b, c, d); - }; - }; - }; - }; - }; -})(PS["Data.Function.Uncurried"] = PS["Data.Function.Uncurried"] || {}); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.Function.Uncurried"] = $PS["Data.Function.Uncurried"] || {}; - var exports = $PS["Data.Function.Uncurried"]; - var $foreign = $PS["Data.Function.Uncurried"]; - exports["runFn4"] = $foreign.runFn4; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Foreign.Object"] = $PS["Foreign.Object"] || {}; - var exports = $PS["Foreign.Object"]; - var $foreign = $PS["Foreign.Object"]; - var Data_Function_Uncurried = $PS["Data.Function.Uncurried"]; - var Data_Maybe = $PS["Data.Maybe"]; - var lookup = Data_Function_Uncurried.runFn4($foreign["_lookup"])(Data_Maybe.Nothing.value)(Data_Maybe.Just.create); - exports["lookup"] = lookup; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Halogen.VDom.Machine"] = $PS["Halogen.VDom.Machine"] || {}; - var exports = $PS["Halogen.VDom.Machine"]; - var Unsafe_Coerce = $PS["Unsafe.Coerce"]; - var Step = (function () { - function Step(value0, value1, value2, value3) { - this.value0 = value0; - this.value1 = value1; - this.value2 = value2; - this.value3 = value3; - }; - Step.create = function (value0) { - return function (value1) { - return function (value2) { - return function (value3) { - return new Step(value0, value1, value2, value3); - }; - }; - }; - }; - return Step; - })(); - var unStep = Unsafe_Coerce.unsafeCoerce; - var step = function (v, a) { - return v.value2(v.value1, a); - }; - var mkStep = Unsafe_Coerce.unsafeCoerce; - var halt = function (v) { - return v.value3(v.value1); - }; - var extract = unStep(function (v) { - return v.value0; - }); - exports["Step"] = Step; - exports["mkStep"] = mkStep; - exports["unStep"] = unStep; - exports["extract"] = extract; - exports["step"] = step; - exports["halt"] = halt; -})(PS); -(function(exports) { - "use strict"; - - exports.unsafeGetAny = function (key, obj) { - return obj[key]; - }; - - exports.unsafeHasAny = function (key, obj) { - return obj.hasOwnProperty(key); - }; - - exports.unsafeSetAny = function (key, val, obj) { - obj[key] = val; - }; - - exports.forE = function (a, f) { - var b = []; - for (var i = 0; i < a.length; i++) { - b.push(f(i, a[i])); - } - return b; - }; - - exports.forEachE = function (a, f) { - for (var i = 0; i < a.length; i++) { - f(a[i]); - } - }; - - exports.forInE = function (o, f) { - var ks = Object.keys(o); - for (var i = 0; i < ks.length; i++) { - var k = ks[i]; - f(k, o[k]); - } - }; - - exports.diffWithIxE = function (a1, a2, f1, f2, f3) { - var a3 = []; - var l1 = a1.length; - var l2 = a2.length; - var i = 0; - while (1) { - if (i < l1) { - if (i < l2) { - a3.push(f1(i, a1[i], a2[i])); - } else { - f2(i, a1[i]); - } - } else if (i < l2) { - a3.push(f3(i, a2[i])); - } else { - break; - } - i++; - } - return a3; - }; - - exports.strMapWithIxE = function (as, fk, f) { - var o = {}; - for (var i = 0; i < as.length; i++) { - var a = as[i]; - var k = fk(a); - o[k] = f(k, i, a); - } - return o; - }; - - exports.diffWithKeyAndIxE = function (o1, as, fk, f1, f2, f3) { - var o2 = {}; - for (var i = 0; i < as.length; i++) { - var a = as[i]; - var k = fk(a); - if (o1.hasOwnProperty(k)) { - o2[k] = f1(k, i, o1[k], a); - } else { - o2[k] = f3(k, i, a); - } - } - for (var k in o1) { - if (k in o2) { - continue; - } - f2(k, o1[k]); - } - return o2; - }; - - exports.refEq = function (a, b) { - return a === b; - }; - - exports.createTextNode = function (s, doc) { - return doc.createTextNode(s); - }; - - exports.setTextContent = function (s, n) { - n.textContent = s; - }; - - exports.createElement = function (ns, name, doc) { - if (ns != null) { - return doc.createElementNS(ns, name); - } else { - return doc.createElement(name) - } - }; - - exports.insertChildIx = function (i, a, b) { - var n = b.childNodes.item(i) || null; - if (n !== a) { - b.insertBefore(a, n); - } - }; - - exports.removeChild = function (a, b) { - if (b && a.parentNode === b) { - b.removeChild(a); - } - }; - - exports.parentNode = function (a) { - return a.parentNode; - }; - - exports.setAttribute = function (ns, attr, val, el) { - if (ns != null) { - el.setAttributeNS(ns, attr, val); - } else { - el.setAttribute(attr, val); - } - }; - - exports.removeAttribute = function (ns, attr, el) { - if (ns != null) { - el.removeAttributeNS(ns, attr); - } else { - el.removeAttribute(attr); - } - }; - - exports.addEventListener = function (ev, listener, el) { - el.addEventListener(ev, listener, false); - }; - - exports.removeEventListener = function (ev, listener, el) { - el.removeEventListener(ev, listener, false); - }; - - exports.jsUndefined = void 0; -})(PS["Halogen.VDom.Util"] = PS["Halogen.VDom.Util"] || {}); -(function(exports) { - "use strict"; - - exports["new"] = function () { - return {}; - }; -})(PS["Foreign.Object.ST"] = PS["Foreign.Object.ST"] || {}); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Foreign.Object.ST"] = $PS["Foreign.Object.ST"] || {}; - var exports = $PS["Foreign.Object.ST"]; - var $foreign = $PS["Foreign.Object.ST"]; - exports["new"] = $foreign["new"]; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Halogen.VDom.Util"] = $PS["Halogen.VDom.Util"] || {}; - var exports = $PS["Halogen.VDom.Util"]; - var $foreign = $PS["Halogen.VDom.Util"]; - var Foreign_Object_ST = $PS["Foreign.Object.ST"]; - var Unsafe_Coerce = $PS["Unsafe.Coerce"]; - var unsafeLookup = $foreign.unsafeGetAny; - var unsafeFreeze = Unsafe_Coerce.unsafeCoerce; - var pokeMutMap = $foreign.unsafeSetAny; - var newMutMap = Foreign_Object_ST["new"]; - exports["newMutMap"] = newMutMap; - exports["pokeMutMap"] = pokeMutMap; - exports["unsafeFreeze"] = unsafeFreeze; - exports["unsafeLookup"] = unsafeLookup; - exports["unsafeGetAny"] = $foreign.unsafeGetAny; - exports["unsafeHasAny"] = $foreign.unsafeHasAny; - exports["unsafeSetAny"] = $foreign.unsafeSetAny; - exports["forE"] = $foreign.forE; - exports["forEachE"] = $foreign.forEachE; - exports["forInE"] = $foreign.forInE; - exports["diffWithIxE"] = $foreign.diffWithIxE; - exports["diffWithKeyAndIxE"] = $foreign.diffWithKeyAndIxE; - exports["strMapWithIxE"] = $foreign.strMapWithIxE; - exports["refEq"] = $foreign.refEq; - exports["createTextNode"] = $foreign.createTextNode; - exports["setTextContent"] = $foreign.setTextContent; - exports["createElement"] = $foreign.createElement; - exports["insertChildIx"] = $foreign.insertChildIx; - exports["removeChild"] = $foreign.removeChild; - exports["parentNode"] = $foreign.parentNode; - exports["setAttribute"] = $foreign.setAttribute; - exports["removeAttribute"] = $foreign.removeAttribute; - exports["addEventListener"] = $foreign.addEventListener; - exports["removeEventListener"] = $foreign.removeEventListener; - exports["jsUndefined"] = $foreign.jsUndefined; -})(PS); -(function(exports) { - "use strict"; - - exports.eventListener = function (fn) { - return function () { - return function (event) { - return fn(event)(); - }; - }; - }; - - exports.addEventListener = function (type) { - return function (listener) { - return function (useCapture) { - return function (target) { - return function () { - return target.addEventListener(type, listener, useCapture); - }; - }; - }; - }; - }; - - exports.removeEventListener = function (type) { - return function (listener) { - return function (useCapture) { - return function (target) { - return function () { - return target.removeEventListener(type, listener, useCapture); - }; - }; - }; - }; - }; -})(PS["Web.Event.EventTarget"] = PS["Web.Event.EventTarget"] || {}); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Web.Event.EventTarget"] = $PS["Web.Event.EventTarget"] || {}; - var exports = $PS["Web.Event.EventTarget"]; - var $foreign = $PS["Web.Event.EventTarget"]; - exports["eventListener"] = $foreign.eventListener; - exports["addEventListener"] = $foreign.addEventListener; - exports["removeEventListener"] = $foreign.removeEventListener; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Halogen.VDom.DOM.Prop"] = $PS["Halogen.VDom.DOM.Prop"] || {}; - var exports = $PS["Halogen.VDom.DOM.Prop"]; - var Data_Maybe = $PS["Data.Maybe"]; - var Data_Nullable = $PS["Data.Nullable"]; - var Data_Tuple = $PS["Data.Tuple"]; - var Data_Unit = $PS["Data.Unit"]; - var Effect_Ref = $PS["Effect.Ref"]; - var Foreign = $PS["Foreign"]; - var Foreign_Object = $PS["Foreign.Object"]; - var Halogen_VDom_Machine = $PS["Halogen.VDom.Machine"]; - var Halogen_VDom_Util = $PS["Halogen.VDom.Util"]; - var Unsafe_Coerce = $PS["Unsafe.Coerce"]; - var Web_Event_EventTarget = $PS["Web.Event.EventTarget"]; - var Created = (function () { - function Created(value0) { - this.value0 = value0; - }; - Created.create = function (value0) { - return new Created(value0); - }; - return Created; - })(); - var Removed = (function () { - function Removed(value0) { - this.value0 = value0; - }; - Removed.create = function (value0) { - return new Removed(value0); - }; - return Removed; - })(); - var Attribute = (function () { - function Attribute(value0, value1, value2) { - this.value0 = value0; - this.value1 = value1; - this.value2 = value2; - }; - Attribute.create = function (value0) { - return function (value1) { - return function (value2) { - return new Attribute(value0, value1, value2); - }; - }; - }; - return Attribute; - })(); - var Property = (function () { - function Property(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - Property.create = function (value0) { - return function (value1) { - return new Property(value0, value1); - }; - }; - return Property; - })(); - var Handler = (function () { - function Handler(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - Handler.create = function (value0) { - return function (value1) { - return new Handler(value0, value1); - }; - }; - return Handler; - })(); - var Ref = (function () { - function Ref(value0) { - this.value0 = value0; - }; - Ref.create = function (value0) { - return new Ref(value0); - }; - return Ref; - })(); - var unsafeGetProperty = Halogen_VDom_Util.unsafeGetAny; - var setProperty = Halogen_VDom_Util.unsafeSetAny; - var removeProperty = function (key, el) { - var v = Foreign.typeOf(Halogen_VDom_Util.unsafeGetAny(key, el)); - if (v === "string") { - return Halogen_VDom_Util.unsafeSetAny(key, "", el); - }; - if (key === "rowSpan") { - return Halogen_VDom_Util.unsafeSetAny(key, 1, el); - }; - if (key === "colSpan") { - return Halogen_VDom_Util.unsafeSetAny(key, 1, el); - }; - return Halogen_VDom_Util.unsafeSetAny(key, Halogen_VDom_Util.jsUndefined, el); - }; - var propToStrKey = function (v) { - if (v instanceof Attribute && v.value0 instanceof Data_Maybe.Just) { - return "attr/" + (v.value0.value0 + (":" + v.value1)); - }; - if (v instanceof Attribute) { - return "attr/:" + v.value1; - }; - if (v instanceof Property) { - return "prop/" + v.value0; - }; - if (v instanceof Handler) { - return "handler/" + v.value0; - }; - if (v instanceof Ref) { - return "ref"; - }; - throw new Error("Failed pattern match at Halogen.VDom.DOM.Prop (line 182, column 16 - line 187, column 16): " + [ v.constructor.name ]); - }; - var propFromString = Unsafe_Coerce.unsafeCoerce; - var buildProp = function (emit) { - return function (el) { - var removeProp = function (prevEvents) { - return function (v, v1) { - if (v1 instanceof Attribute) { - return Halogen_VDom_Util.removeAttribute(Data_Nullable.toNullable(v1.value0), v1.value1, el); - }; - if (v1 instanceof Property) { - return removeProperty(v1.value0, el); - }; - if (v1 instanceof Handler) { - var handler = Halogen_VDom_Util.unsafeLookup(v1.value0, prevEvents); - return Halogen_VDom_Util.removeEventListener(v1.value0, Data_Tuple.fst(handler), el); - }; - if (v1 instanceof Ref) { - return Data_Unit.unit; - }; - throw new Error("Failed pattern match at Halogen.VDom.DOM.Prop (line 169, column 5 - line 179, column 18): " + [ v1.constructor.name ]); - }; - }; - var mbEmit = function (v) { - if (v instanceof Data_Maybe.Just) { - return emit(v.value0)(); - }; - return Data_Unit.unit; - }; - var haltProp = function (state) { - var v = Foreign_Object.lookup("ref")(state.props); - if (v instanceof Data_Maybe.Just && v.value0 instanceof Ref) { - return mbEmit(v.value0.value0(new Removed(el))); - }; - return Data_Unit.unit; - }; - var diffProp = function (prevEvents, events) { - return function (v, v1, v11, v2) { - if (v11 instanceof Attribute && v2 instanceof Attribute) { - var $61 = v11.value2 === v2.value2; - if ($61) { - return v2; - }; - Halogen_VDom_Util.setAttribute(Data_Nullable.toNullable(v2.value0), v2.value1, v2.value2, el); - return v2; - }; - if (v11 instanceof Property && v2 instanceof Property) { - var v4 = Halogen_VDom_Util.refEq(v11.value1, v2.value1); - if (v4) { - return v2; - }; - if (v2.value0 === "value") { - var elVal = unsafeGetProperty("value", el); - var $70 = Halogen_VDom_Util.refEq(elVal, v2.value1); - if ($70) { - return v2; - }; - setProperty(v2.value0, v2.value1, el); - return v2; - }; - setProperty(v2.value0, v2.value1, el); - return v2; - }; - if (v11 instanceof Handler && v2 instanceof Handler) { - var handler = Halogen_VDom_Util.unsafeLookup(v2.value0, prevEvents); - Effect_Ref.write(v2.value1)(Data_Tuple.snd(handler))(); - Halogen_VDom_Util.pokeMutMap(v2.value0, handler, events); - return v2; - }; - return v2; - }; - }; - var applyProp = function (events) { - return function (v, v1, v2) { - if (v2 instanceof Attribute) { - Halogen_VDom_Util.setAttribute(Data_Nullable.toNullable(v2.value0), v2.value1, v2.value2, el); - return v2; - }; - if (v2 instanceof Property) { - setProperty(v2.value0, v2.value1, el); - return v2; - }; - if (v2 instanceof Handler) { - var v3 = Halogen_VDom_Util.unsafeGetAny(v2.value0, events); - if (Halogen_VDom_Util.unsafeHasAny(v2.value0, events)) { - Effect_Ref.write(v2.value1)(Data_Tuple.snd(v3))(); - return v2; - }; - var v4 = Effect_Ref["new"](v2.value1)(); - var v5 = Web_Event_EventTarget.eventListener(function (ev) { - return function __do() { - var v5 = Effect_Ref.read(v4)(); - return mbEmit(v5(ev)); - }; - })(); - Halogen_VDom_Util.pokeMutMap(v2.value0, new Data_Tuple.Tuple(v5, v4), events); - Halogen_VDom_Util.addEventListener(v2.value0, v5, el); - return v2; - }; - if (v2 instanceof Ref) { - mbEmit(v2.value0(new Created(el))); - return v2; - }; - throw new Error("Failed pattern match at Halogen.VDom.DOM.Prop (line 113, column 5 - line 135, column 15): " + [ v2.constructor.name ]); - }; - }; - var patchProp = function (state, ps2) { - var v = Halogen_VDom_Util.newMutMap(); - var onThis = removeProp(state.events); - var onThese = diffProp(state.events, v); - var onThat = applyProp(v); - var v1 = Halogen_VDom_Util.diffWithKeyAndIxE(state.props, ps2, propToStrKey, onThese, onThis, onThat); - var nextState = { - events: Halogen_VDom_Util.unsafeFreeze(v), - props: v1 - }; - return Halogen_VDom_Machine.mkStep(new Halogen_VDom_Machine.Step(Data_Unit.unit, nextState, patchProp, haltProp)); - }; - var renderProp = function (ps1) { - var v = Halogen_VDom_Util.newMutMap(); - var v1 = Halogen_VDom_Util.strMapWithIxE(ps1, propToStrKey, applyProp(v)); - var state = { - events: Halogen_VDom_Util.unsafeFreeze(v), - props: v1 - }; - return Halogen_VDom_Machine.mkStep(new Halogen_VDom_Machine.Step(Data_Unit.unit, state, patchProp, haltProp)); - }; - return renderProp; - }; - }; - exports["Property"] = Property; - exports["Handler"] = Handler; - exports["propFromString"] = propFromString; - exports["buildProp"] = buildProp; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.Bifunctor"] = $PS["Data.Bifunctor"] || {}; - var exports = $PS["Data.Bifunctor"]; - var Control_Category = $PS["Control.Category"]; - var Bifunctor = function (bimap) { - this.bimap = bimap; - }; - var bimap = function (dict) { - return dict.bimap; - }; - var rmap = function (dictBifunctor) { - return bimap(dictBifunctor)(Control_Category.identity(Control_Category.categoryFn)); - }; - exports["bimap"] = bimap; - exports["Bifunctor"] = Bifunctor; - exports["rmap"] = rmap; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Halogen.VDom.Types"] = $PS["Halogen.VDom.Types"] || {}; - var exports = $PS["Halogen.VDom.Types"]; - var Data_Bifunctor = $PS["Data.Bifunctor"]; - var Data_Functor = $PS["Data.Functor"]; - var Data_Tuple = $PS["Data.Tuple"]; - var Unsafe_Coerce = $PS["Unsafe.Coerce"]; - var Text = (function () { - function Text(value0) { - this.value0 = value0; - }; - Text.create = function (value0) { - return new Text(value0); - }; - return Text; - })(); - var Elem = (function () { - function Elem(value0, value1, value2, value3) { - this.value0 = value0; - this.value1 = value1; - this.value2 = value2; - this.value3 = value3; - }; - Elem.create = function (value0) { - return function (value1) { - return function (value2) { - return function (value3) { - return new Elem(value0, value1, value2, value3); - }; - }; - }; - }; - return Elem; - })(); - var Keyed = (function () { - function Keyed(value0, value1, value2, value3) { - this.value0 = value0; - this.value1 = value1; - this.value2 = value2; - this.value3 = value3; - }; - Keyed.create = function (value0) { - return function (value1) { - return function (value2) { - return function (value3) { - return new Keyed(value0, value1, value2, value3); - }; - }; - }; - }; - return Keyed; - })(); - var Widget = (function () { - function Widget(value0) { - this.value0 = value0; - }; - Widget.create = function (value0) { - return new Widget(value0); - }; - return Widget; - })(); - var Grafted = (function () { - function Grafted(value0) { - this.value0 = value0; - }; - Grafted.create = function (value0) { - return new Grafted(value0); - }; - return Grafted; - })(); - var Graft = (function () { - function Graft(value0, value1, value2) { - this.value0 = value0; - this.value1 = value1; - this.value2 = value2; - }; - Graft.create = function (value0) { - return function (value1) { - return function (value2) { - return new Graft(value0, value1, value2); - }; - }; - }; - return Graft; - })(); - var unGraft = function (f) { - return function ($58) { - return f($58); - }; - }; - var graft = Unsafe_Coerce.unsafeCoerce; - var bifunctorGraft = new Data_Bifunctor.Bifunctor(function (f) { - return function (g) { - return unGraft(function (v) { - return graft(new Graft(function ($60) { - return f(v.value0($60)); - }, function ($61) { - return g(v.value1($61)); - }, v.value2)); - }); - }; - }); - var runGraft = unGraft(function (v) { - var go = function (v2) { - if (v2 instanceof Text) { - return new Text(v2.value0); - }; - if (v2 instanceof Elem) { - return new Elem(v2.value0, v2.value1, v.value0(v2.value2), Data_Functor.map(Data_Functor.functorArray)(go)(v2.value3)); - }; - if (v2 instanceof Keyed) { - return new Keyed(v2.value0, v2.value1, v.value0(v2.value2), Data_Functor.map(Data_Functor.functorArray)(Data_Functor.map(Data_Tuple.functorTuple)(go))(v2.value3)); - }; - if (v2 instanceof Widget) { - return new Widget(v.value1(v2.value0)); - }; - if (v2 instanceof Grafted) { - return new Grafted(Data_Bifunctor.bimap(bifunctorGraft)(v.value0)(v.value1)(v2.value0)); - }; - throw new Error("Failed pattern match at Halogen.VDom.Types (line 86, column 7 - line 86, column 27): " + [ v2.constructor.name ]); - }; - return go(v.value2); - }); - exports["Text"] = Text; - exports["Elem"] = Elem; - exports["Keyed"] = Keyed; - exports["Widget"] = Widget; - exports["Grafted"] = Grafted; - exports["runGraft"] = runGraft; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Halogen.HTML.Core"] = $PS["Halogen.HTML.Core"] || {}; - var exports = $PS["Halogen.HTML.Core"]; - var Data_Newtype = $PS["Data.Newtype"]; - var Halogen_VDom_DOM_Prop = $PS["Halogen.VDom.DOM.Prop"]; - var Halogen_VDom_Types = $PS["Halogen.VDom.Types"]; - var HTML = function (x) { - return x; - }; - var IsProp = function (toPropValue) { - this.toPropValue = toPropValue; - }; - var toPropValue = function (dict) { - return dict.toPropValue; - }; - var text = function ($31) { - return HTML(Halogen_VDom_Types.Text.create($31)); - }; - var prop = function (dictIsProp) { - return function (v) { - var $33 = Halogen_VDom_DOM_Prop.Property.create(v); - var $34 = toPropValue(dictIsProp); - return function ($35) { - return $33($34($35)); - }; - }; - }; - var newtypeHTML = new Data_Newtype.Newtype(function (n) { - return n; - }, HTML); - var isPropString = new IsProp(Halogen_VDom_DOM_Prop.propFromString); - var handler = Halogen_VDom_DOM_Prop.Handler.create; - var element = function (ns) { - return function (name) { - return function (props) { - return function (children) { - return new Halogen_VDom_Types.Elem(ns, name, props, children); - }; - }; - }; - }; - exports["text"] = text; - exports["element"] = element; - exports["prop"] = prop; - exports["handler"] = handler; - exports["newtypeHTML"] = newtypeHTML; - exports["isPropString"] = isPropString; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Halogen.HTML.Elements"] = $PS["Halogen.HTML.Elements"] || {}; - var exports = $PS["Halogen.HTML.Elements"]; - var Data_Maybe = $PS["Data.Maybe"]; - var Halogen_HTML_Core = $PS["Halogen.HTML.Core"]; - var element = Halogen_HTML_Core.element(Data_Maybe.Nothing.value); - var button = element("button"); - exports["button"] = button; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Halogen.Query.Input"] = $PS["Halogen.Query.Input"] || {}; - var exports = $PS["Halogen.Query.Input"]; - var RefUpdate = (function () { - function RefUpdate(value0, value1) { - this.value0 = value0; - this.value1 = value1; - }; - RefUpdate.create = function (value0) { - return function (value1) { - return new RefUpdate(value0, value1); - }; - }; - return RefUpdate; - })(); - var Action = (function () { - function Action(value0) { - this.value0 = value0; - }; - Action.create = function (value0) { - return new Action(value0); - }; - return Action; - })(); - exports["RefUpdate"] = RefUpdate; - exports["Action"] = Action; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Web.UIEvent.MouseEvent.EventTypes"] = $PS["Web.UIEvent.MouseEvent.EventTypes"] || {}; - var exports = $PS["Web.UIEvent.MouseEvent.EventTypes"]; - var click = "click"; - exports["click"] = click; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Halogen.HTML.Events"] = $PS["Halogen.HTML.Events"] || {}; - var exports = $PS["Halogen.HTML.Events"]; - var Data_Functor = $PS["Data.Functor"]; - var Data_Maybe = $PS["Data.Maybe"]; - var Halogen_HTML_Core = $PS["Halogen.HTML.Core"]; - var Halogen_Query_Input = $PS["Halogen.Query.Input"]; - var Unsafe_Coerce = $PS["Unsafe.Coerce"]; - var Web_UIEvent_MouseEvent_EventTypes = $PS["Web.UIEvent.MouseEvent.EventTypes"]; - var mouseHandler = Unsafe_Coerce.unsafeCoerce; - var handler = function (et) { - var $0 = Halogen_HTML_Core.handler(et); - var $1 = Data_Functor.map(Data_Functor.functorFn)(Data_Functor.map(Data_Maybe.functorMaybe)(Halogen_Query_Input.Action.create)); - return function ($2) { - return $0($1($2)); - }; - }; - var onClick = (function () { - var $3 = handler(Web_UIEvent_MouseEvent_EventTypes.click); - return function ($4) { - return $3(mouseHandler($4)); - }; - })(); - exports["onClick"] = onClick; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Halogen.HTML.Properties"] = $PS["Halogen.HTML.Properties"] || {}; - var exports = $PS["Halogen.HTML.Properties"]; - var Halogen_HTML_Core = $PS["Halogen.HTML.Core"]; - var prop = function (dictIsProp) { - return Halogen_HTML_Core.prop(dictIsProp); - }; - var title = prop(Halogen_HTML_Core.isPropString)("title"); - exports["title"] = title; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Button"] = $PS["Button"] || {}; - var exports = $PS["Button"]; - var Control_Monad_State_Class = $PS["Control.Monad.State.Class"]; - var Data_Maybe = $PS["Data.Maybe"]; - var Halogen_Component = $PS["Halogen.Component"]; - var Halogen_HTML_Core = $PS["Halogen.HTML.Core"]; - var Halogen_HTML_Elements = $PS["Halogen.HTML.Elements"]; - var Halogen_HTML_Events = $PS["Halogen.HTML.Events"]; - var Halogen_HTML_Properties = $PS["Halogen.HTML.Properties"]; - var Halogen_Query_HalogenM = $PS["Halogen.Query.HalogenM"]; - var Toggle = (function () { - function Toggle() { - - }; - Toggle.value = new Toggle(); - return Toggle; - })(); - var render = function (state) { - var label = (function () { - if (state.enabled) { - return "On"; - }; - return "Off"; - })(); - return Halogen_HTML_Elements.button([ Halogen_HTML_Properties.title(label), Halogen_HTML_Events.onClick(function (v) { - return new Data_Maybe.Just(Toggle.value); - }) ])([ Halogen_HTML_Core.text(label) ]); - }; - var initialState = function (v) { - return { - enabled: false - }; - }; - var handleAction = function (v) { - return Control_Monad_State_Class.modify_(Halogen_Query_HalogenM.monadStateHalogenM)(function (st) { - var $7 = {}; - for (var $8 in st) { - if ({}.hasOwnProperty.call(st, $8)) { - $7[$8] = st[$8]; - }; - }; - $7.enabled = !st.enabled; - return $7; - }); - }; - var component = Halogen_Component.mkComponent({ - initialState: initialState, - render: render, - "eval": Halogen_Component.mkEval({ - handleAction: handleAction, - handleQuery: Halogen_Component.defaultEval.handleQuery, - receive: Halogen_Component.defaultEval.receive, - initialize: Halogen_Component.defaultEval.initialize, - finalize: Halogen_Component.defaultEval.finalize - }) - }); - exports["component"] = component; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.Either"] = $PS["Data.Either"] || {}; - var exports = $PS["Data.Either"]; - var Control_Apply = $PS["Control.Apply"]; - var Data_Bifunctor = $PS["Data.Bifunctor"]; - var Data_Functor = $PS["Data.Functor"]; - var Left = (function () { - function Left(value0) { - this.value0 = value0; - }; - Left.create = function (value0) { - return new Left(value0); - }; - return Left; - })(); - var Right = (function () { - function Right(value0) { - this.value0 = value0; - }; - Right.create = function (value0) { - return new Right(value0); - }; - return Right; - })(); - var functorEither = new Data_Functor.Functor(function (f) { - return function (m) { - if (m instanceof Left) { - return new Left(m.value0); - }; - if (m instanceof Right) { - return new Right(f(m.value0)); - }; - throw new Error("Failed pattern match at Data.Either (line 38, column 1 - line 38, column 52): " + [ m.constructor.name ]); - }; - }); - var either = function (v) { - return function (v1) { - return function (v2) { - if (v2 instanceof Left) { - return v(v2.value0); - }; - if (v2 instanceof Right) { - return v1(v2.value0); - }; - throw new Error("Failed pattern match at Data.Either (line 238, column 1 - line 238, column 64): " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]); - }; - }; - }; - var bifunctorEither = new Data_Bifunctor.Bifunctor(function (v) { - return function (v1) { - return function (v2) { - if (v2 instanceof Left) { - return new Left(v(v2.value0)); - }; - if (v2 instanceof Right) { - return new Right(v1(v2.value0)); - }; - throw new Error("Failed pattern match at Data.Either (line 46, column 1 - line 48, column 36): " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]); - }; - }; - }); - var applyEither = new Control_Apply.Apply(function () { - return functorEither; - }, function (v) { - return function (v1) { - if (v instanceof Left) { - return new Left(v.value0); - }; - if (v instanceof Right) { - return Data_Functor.map(functorEither)(v.value0)(v1); - }; - throw new Error("Failed pattern match at Data.Either (line 82, column 1 - line 84, column 30): " + [ v.constructor.name, v1.constructor.name ]); - }; - }); - exports["Left"] = Left; - exports["Right"] = Right; - exports["either"] = either; - exports["functorEither"] = functorEither; - exports["bifunctorEither"] = bifunctorEither; - exports["applyEither"] = applyEither; -})(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; @@ -3149,6 +3339,43 @@ var PS = {}; exports["retractFreeAp"] = retractFreeAp; exports["hoistFreeAp"] = hoistFreeAp; })(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Control.Monad.Error.Class"] = $PS["Control.Monad.Error.Class"] || {}; + var exports = $PS["Control.Monad.Error.Class"]; + var Control_Applicative = $PS["Control.Applicative"]; + var Data_Either = $PS["Data.Either"]; + var Data_Functor = $PS["Data.Functor"]; + var MonadThrow = function (Monad0, throwError) { + this.Monad0 = Monad0; + this.throwError = throwError; + }; + var MonadError = function (MonadThrow0, catchError) { + this.MonadThrow0 = MonadThrow0; + this.catchError = catchError; + }; + var throwError = function (dict) { + return dict.throwError; + }; + var catchError = function (dict) { + return dict.catchError; + }; + var $$try = function (dictMonadError) { + return function (a) { + return catchError(dictMonadError)(Data_Functor.map(((((dictMonadError.MonadThrow0()).Monad0()).Bind1()).Apply0()).Functor0())(Data_Either.Right.create)(a))((function () { + var $21 = Control_Applicative.pure(((dictMonadError.MonadThrow0()).Monad0()).Applicative0()); + return function ($22) { + return $21(Data_Either.Left.create($22)); + }; + })()); + }; + }; + exports["throwError"] = throwError; + exports["MonadThrow"] = MonadThrow; + exports["MonadError"] = MonadError; + exports["try"] = $$try; +})(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; @@ -3158,6 +3385,7 @@ var PS = {}; var Control_Apply = $PS["Control.Apply"]; var Control_Bind = $PS["Control.Bind"]; var Control_Monad = $PS["Control.Monad"]; + var Control_Monad_Error_Class = $PS["Control.Monad.Error.Class"]; var Data_Either = $PS["Data.Either"]; var Data_Functor = $PS["Data.Functor"]; var ExceptT = function (x) { @@ -3215,10 +3443,204 @@ var PS = {}; }; })()); }; + var monadThrowExceptT = function (dictMonad) { + return new Control_Monad_Error_Class.MonadThrow(function () { + return monadExceptT(dictMonad); + }, (function () { + var $110 = Control_Applicative.pure(dictMonad.Applicative0()); + return function ($111) { + return ExceptT($110(Data_Either.Left.create($111))); + }; + })()); + }; exports["ExceptT"] = ExceptT; exports["runExceptT"] = runExceptT; exports["applicativeExceptT"] = applicativeExceptT; exports["bindExceptT"] = bindExceptT; + exports["monadThrowExceptT"] = monadThrowExceptT; +})(PS); +(function(exports) { + "use strict"; + + exports.pureE = function (a) { + return function () { + return a; + }; + }; + + exports.bindE = function (a) { + return function (f) { + return function () { + return f(a())(); + }; + }; + }; +})(PS["Effect"] = PS["Effect"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Effect"] = $PS["Effect"] || {}; + var exports = $PS["Effect"]; + var $foreign = $PS["Effect"]; + var Control_Applicative = $PS["Control.Applicative"]; + var Control_Apply = $PS["Control.Apply"]; + var Control_Bind = $PS["Control.Bind"]; + var Control_Monad = $PS["Control.Monad"]; + var Data_Functor = $PS["Data.Functor"]; + var monadEffect = new Control_Monad.Monad(function () { + return applicativeEffect; + }, function () { + return bindEffect; + }); + var bindEffect = new Control_Bind.Bind(function () { + return applyEffect; + }, $foreign.bindE); + var applyEffect = new Control_Apply.Apply(function () { + return functorEffect; + }, Control_Monad.ap(monadEffect)); + var applicativeEffect = new Control_Applicative.Applicative(function () { + return applyEffect; + }, $foreign.pureE); + var functorEffect = new Data_Functor.Functor(Control_Applicative.liftA1(applicativeEffect)); + exports["functorEffect"] = functorEffect; + exports["applicativeEffect"] = applicativeEffect; + exports["bindEffect"] = bindEffect; + exports["monadEffect"] = monadEffect; +})(PS); +(function(exports) { + "use strict"; + + exports.new = function (val) { + return function () { + return { value: val }; + }; + }; + + exports.read = function (ref) { + return function () { + return ref.value; + }; + }; + + exports["modify'"] = function (f) { + return function (ref) { + return function () { + var t = f(ref.value); + ref.value = t.state; + return t.value; + }; + }; + }; + + exports.write = function (val) { + return function (ref) { + return function () { + ref.value = val; + return {}; + }; + }; + }; +})(PS["Effect.Ref"] = PS["Effect.Ref"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Effect.Ref"] = $PS["Effect.Ref"] || {}; + var exports = $PS["Effect.Ref"]; + var $foreign = $PS["Effect.Ref"]; + var Data_Functor = $PS["Data.Functor"]; + var Effect = $PS["Effect"]; + var modify = function (f) { + return $foreign["modify'"](function (s) { + var s$prime = f(s); + return { + state: s$prime, + value: s$prime + }; + }); + }; + var modify_ = function (f) { + return function (s) { + return Data_Functor["void"](Effect.functorEffect)(modify(f)(s)); + }; + }; + exports["modify_"] = modify_; + exports["new"] = $foreign["new"]; + exports["read"] = $foreign.read; + exports["modify'"] = $foreign["modify'"]; + exports["write"] = $foreign.write; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Control.Monad.Rec.Class"] = $PS["Control.Monad.Rec.Class"] || {}; + var exports = $PS["Control.Monad.Rec.Class"]; + var Control_Bind = $PS["Control.Bind"]; + var Data_Functor = $PS["Data.Functor"]; + var Effect = $PS["Effect"]; + var Effect_Ref = $PS["Effect.Ref"]; + var Loop = (function () { + function Loop(value0) { + this.value0 = value0; + }; + Loop.create = function (value0) { + return new Loop(value0); + }; + return Loop; + })(); + var Done = (function () { + function Done(value0) { + this.value0 = value0; + }; + Done.create = function (value0) { + return new Done(value0); + }; + return Done; + })(); + var MonadRec = function (Monad0, tailRecM) { + this.Monad0 = Monad0; + this.tailRecM = tailRecM; + }; + var tailRecM = function (dict) { + return dict.tailRecM; + }; + var monadRecEffect = new MonadRec(function () { + return Effect.monadEffect; + }, function (f) { + return function (a) { + var fromDone = function (v) { + if (v instanceof Done) { + return v.value0; + }; + throw new Error("Failed pattern match at Control.Monad.Rec.Class (line 111, column 30 - line 111, column 44): " + [ v.constructor.name ]); + }; + return function __do() { + var v = Control_Bind.bindFlipped(Effect.bindEffect)(Effect_Ref["new"])(f(a))(); + (function () { + while (!(function __do() { + var v1 = Effect_Ref.read(v)(); + if (v1 instanceof Loop) { + var v2 = f(v1.value0)(); + var v3 = Effect_Ref.write(v2)(v)(); + return false; + }; + if (v1 instanceof Done) { + return true; + }; + throw new Error("Failed pattern match at Control.Monad.Rec.Class (line 102, column 22 - line 107, column 28): " + [ v1.constructor.name ]); + })()) { + + }; + return {}; + })(); + return Data_Functor.map(Effect.functorEffect)(fromDone)(Effect_Ref.read(v))(); + }; + }; + }); + exports["Loop"] = Loop; + exports["Done"] = Done; + exports["MonadRec"] = MonadRec; + exports["tailRecM"] = tailRecM; + exports["monadRecEffect"] = monadRecEffect; })(PS); (function($PS) { // Generated by purs version 0.13.3 @@ -3234,6 +3656,17 @@ var PS = {}; exports["lift"] = lift; exports["MonadTrans"] = MonadTrans; })(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Exists"] = $PS["Data.Exists"] || {}; + var exports = $PS["Data.Exists"]; + var Unsafe_Coerce = $PS["Unsafe.Coerce"]; + var runExists = Unsafe_Coerce.unsafeCoerce; + var mkExists = Unsafe_Coerce.unsafeCoerce; + exports["mkExists"] = mkExists; + exports["runExists"] = runExists; +})(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; @@ -3481,71 +3914,6 @@ var PS = {}; exports["sequential"] = sequential; exports["Parallel"] = Parallel; })(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.Identity"] = $PS["Data.Identity"] || {}; - var exports = $PS["Data.Identity"]; - var Control_Applicative = $PS["Control.Applicative"]; - var Control_Apply = $PS["Control.Apply"]; - var Data_Functor = $PS["Data.Functor"]; - var Data_Newtype = $PS["Data.Newtype"]; - var Identity = function (x) { - return x; - }; - var newtypeIdentity = new Data_Newtype.Newtype(function (n) { - return n; - }, Identity); - var functorIdentity = new Data_Functor.Functor(function (f) { - return function (m) { - return f(m); - }; - }); - var applyIdentity = new Control_Apply.Apply(function () { - return functorIdentity; - }, function (v) { - return function (v1) { - return v(v1); - }; - }); - var applicativeIdentity = new Control_Applicative.Applicative(function () { - return applyIdentity; - }, Identity); - exports["newtypeIdentity"] = newtypeIdentity; - exports["functorIdentity"] = functorIdentity; - exports["applicativeIdentity"] = applicativeIdentity; -})(PS); -(function($PS) { - // Generated by purs version 0.13.3 - "use strict"; - $PS["Data.Profunctor"] = $PS["Data.Profunctor"] || {}; - var exports = $PS["Data.Profunctor"]; - var Control_Category = $PS["Control.Category"]; - var Profunctor = function (dimap) { - this.dimap = dimap; - }; - var profunctorFn = new Profunctor(function (a2b) { - return function (c2d) { - return function (b2c) { - return function ($9) { - return c2d(b2c(a2b($9))); - }; - }; - }; - }); - var dimap = function (dict) { - return dict.dimap; - }; - var rmap = function (dictProfunctor) { - return function (b2c) { - return dimap(dictProfunctor)(Control_Category.identity(Control_Category.categoryFn))(b2c); - }; - }; - exports["dimap"] = dimap; - exports["Profunctor"] = Profunctor; - exports["rmap"] = rmap; - exports["profunctorFn"] = profunctorFn; -})(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; @@ -3728,39 +4096,18 @@ var PS = {}; (function($PS) { // Generated by purs version 0.13.3 "use strict"; - $PS["Control.Monad.Error.Class"] = $PS["Control.Monad.Error.Class"] || {}; - var exports = $PS["Control.Monad.Error.Class"]; - var Control_Applicative = $PS["Control.Applicative"]; - var Data_Either = $PS["Data.Either"]; - var Data_Functor = $PS["Data.Functor"]; - var MonadThrow = function (Monad0, throwError) { - this.Monad0 = Monad0; - this.throwError = throwError; - }; - var MonadError = function (MonadThrow0, catchError) { - this.MonadThrow0 = MonadThrow0; - this.catchError = catchError; - }; - var throwError = function (dict) { - return dict.throwError; - }; - var catchError = function (dict) { - return dict.catchError; - }; - var $$try = function (dictMonadError) { - return function (a) { - return catchError(dictMonadError)(Data_Functor.map(((((dictMonadError.MonadThrow0()).Monad0()).Bind1()).Apply0()).Functor0())(Data_Either.Right.create)(a))((function () { - var $21 = Control_Applicative.pure(((dictMonadError.MonadThrow0()).Monad0()).Applicative0()); - return function ($22) { - return $21(Data_Either.Left.create($22)); - }; - })()); + $PS["Control.Monad.Except"] = $PS["Control.Monad.Except"] || {}; + var exports = $PS["Control.Monad.Except"]; + var Control_Monad_Except_Trans = $PS["Control.Monad.Except.Trans"]; + var Data_Identity = $PS["Data.Identity"]; + var Data_Newtype = $PS["Data.Newtype"]; + var runExcept = (function () { + var $0 = Data_Newtype.unwrap(Data_Identity.newtypeIdentity); + return function ($1) { + return $0(Control_Monad_Except_Trans.runExceptT($1)); }; - }; - exports["throwError"] = throwError; - exports["MonadThrow"] = MonadThrow; - exports["MonadError"] = MonadError; - exports["try"] = $$try; + })(); + exports["runExcept"] = runExcept; })(PS); (function(exports) { /* globals setImmediate, clearImmediate, setTimeout, clearTimeout */ @@ -5177,6 +5524,445 @@ var PS = {}; exports["fork"] = fork; exports["monadForkAff"] = monadForkAff; })(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.List"] = $PS["Data.List"] || {}; + var exports = $PS["Data.List"]; + var Data_List_Types = $PS["Data.List.Types"]; + var reverse = (function () { + var go = function ($copy_acc) { + return function ($copy_v) { + var $tco_var_acc = $copy_acc; + var $tco_done = false; + var $tco_result; + function $tco_loop(acc, v) { + if (v instanceof Data_List_Types.Nil) { + $tco_done = true; + return acc; + }; + if (v instanceof Data_List_Types.Cons) { + $tco_var_acc = new Data_List_Types.Cons(v.value0, acc); + $copy_v = v.value1; + return; + }; + throw new Error("Failed pattern match at Data.List (line 368, column 3 - line 368, column 19): " + [ acc.constructor.name, v.constructor.name ]); + }; + while (!$tco_done) { + $tco_result = $tco_loop($tco_var_acc, $copy_v); + }; + return $tco_result; + }; + }; + return go(Data_List_Types.Nil.value); + })(); + var $$null = function (v) { + if (v instanceof Data_List_Types.Nil) { + return true; + }; + return false; + }; + exports["null"] = $$null; + exports["reverse"] = reverse; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.CatQueue"] = $PS["Data.CatQueue"] || {}; + var exports = $PS["Data.CatQueue"]; + var Data_List = $PS["Data.List"]; + var Data_List_Types = $PS["Data.List.Types"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_Tuple = $PS["Data.Tuple"]; + var CatQueue = (function () { + function CatQueue(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + CatQueue.create = function (value0) { + return function (value1) { + return new CatQueue(value0, value1); + }; + }; + return CatQueue; + })(); + var uncons = function ($copy_v) { + var $tco_done = false; + var $tco_result; + function $tco_loop(v) { + if (v.value0 instanceof Data_List_Types.Nil && v.value1 instanceof Data_List_Types.Nil) { + $tco_done = true; + return Data_Maybe.Nothing.value; + }; + if (v.value0 instanceof Data_List_Types.Nil) { + $copy_v = new CatQueue(Data_List.reverse(v.value1), Data_List_Types.Nil.value); + return; + }; + if (v.value0 instanceof Data_List_Types.Cons) { + $tco_done = true; + return new Data_Maybe.Just(new Data_Tuple.Tuple(v.value0.value0, new CatQueue(v.value0.value1, v.value1))); + }; + throw new Error("Failed pattern match at Data.CatQueue (line 83, column 1 - line 83, column 63): " + [ v.constructor.name ]); + }; + while (!$tco_done) { + $tco_result = $tco_loop($copy_v); + }; + return $tco_result; + }; + var snoc = function (v) { + return function (a) { + return new CatQueue(v.value0, new Data_List_Types.Cons(a, v.value1)); + }; + }; + var $$null = function (v) { + if (v.value0 instanceof Data_List_Types.Nil && v.value1 instanceof Data_List_Types.Nil) { + return true; + }; + return false; + }; + var empty = new CatQueue(Data_List_Types.Nil.value, Data_List_Types.Nil.value); + exports["empty"] = empty; + exports["null"] = $$null; + exports["snoc"] = snoc; + exports["uncons"] = uncons; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.CatList"] = $PS["Data.CatList"] || {}; + var exports = $PS["Data.CatList"]; + var Data_CatQueue = $PS["Data.CatQueue"]; + var Data_List_Types = $PS["Data.List.Types"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_Semigroup = $PS["Data.Semigroup"]; + var Data_Tuple = $PS["Data.Tuple"]; + var CatNil = (function () { + function CatNil() { + + }; + CatNil.value = new CatNil(); + return CatNil; + })(); + var CatCons = (function () { + function CatCons(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + CatCons.create = function (value0) { + return function (value1) { + return new CatCons(value0, value1); + }; + }; + return CatCons; + })(); + var link = function (v) { + return function (v1) { + if (v instanceof CatNil) { + return v1; + }; + if (v1 instanceof CatNil) { + return v; + }; + if (v instanceof CatCons) { + return new CatCons(v.value0, Data_CatQueue.snoc(v.value1)(v1)); + }; + throw new Error("Failed pattern match at Data.CatList (line 109, column 1 - line 109, column 54): " + [ v.constructor.name, v1.constructor.name ]); + }; + }; + var foldr = function (k) { + return function (b) { + return function (q) { + var foldl = function ($copy_v) { + return function ($copy_c) { + return function ($copy_v1) { + var $tco_var_v = $copy_v; + var $tco_var_c = $copy_c; + var $tco_done = false; + var $tco_result; + function $tco_loop(v, c, v1) { + if (v1 instanceof Data_List_Types.Nil) { + $tco_done = true; + return c; + }; + if (v1 instanceof Data_List_Types.Cons) { + $tco_var_v = v; + $tco_var_c = v(c)(v1.value0); + $copy_v1 = v1.value1; + return; + }; + throw new Error("Failed pattern match at Data.CatList (line 125, column 3 - line 125, column 59): " + [ v.constructor.name, c.constructor.name, v1.constructor.name ]); + }; + while (!$tco_done) { + $tco_result = $tco_loop($tco_var_v, $tco_var_c, $copy_v1); + }; + return $tco_result; + }; + }; + }; + var go = function ($copy_xs) { + return function ($copy_ys) { + var $tco_var_xs = $copy_xs; + var $tco_done = false; + var $tco_result; + function $tco_loop(xs, ys) { + var v = Data_CatQueue.uncons(xs); + if (v instanceof Data_Maybe.Nothing) { + $tco_done = true; + return foldl(function (x) { + return function (i) { + return i(x); + }; + })(b)(ys); + }; + if (v instanceof Data_Maybe.Just) { + $tco_var_xs = v.value0.value1; + $copy_ys = new Data_List_Types.Cons(k(v.value0.value0), ys); + return; + }; + throw new Error("Failed pattern match at Data.CatList (line 121, column 14 - line 123, column 67): " + [ v.constructor.name ]); + }; + while (!$tco_done) { + $tco_result = $tco_loop($tco_var_xs, $copy_ys); + }; + return $tco_result; + }; + }; + return go(q)(Data_List_Types.Nil.value); + }; + }; + }; + var uncons = function (v) { + if (v instanceof CatNil) { + return Data_Maybe.Nothing.value; + }; + if (v instanceof CatCons) { + return new Data_Maybe.Just(new Data_Tuple.Tuple(v.value0, (function () { + var $44 = Data_CatQueue["null"](v.value1); + if ($44) { + return CatNil.value; + }; + return foldr(link)(CatNil.value)(v.value1); + })())); + }; + throw new Error("Failed pattern match at Data.CatList (line 100, column 1 - line 100, column 61): " + [ v.constructor.name ]); + }; + var empty = CatNil.value; + var append = link; + var semigroupCatList = new Data_Semigroup.Semigroup(append); + var snoc = function (cat) { + return function (a) { + return append(cat)(new CatCons(a, Data_CatQueue.empty)); + }; + }; + exports["empty"] = empty; + exports["snoc"] = snoc; + exports["uncons"] = uncons; + exports["semigroupCatList"] = semigroupCatList; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Control.Monad.Free"] = $PS["Control.Monad.Free"] || {}; + var exports = $PS["Control.Monad.Free"]; + var Control_Applicative = $PS["Control.Applicative"]; + var Control_Apply = $PS["Control.Apply"]; + var Control_Bind = $PS["Control.Bind"]; + var Control_Monad = $PS["Control.Monad"]; + var Control_Monad_Rec_Class = $PS["Control.Monad.Rec.Class"]; + var Data_CatList = $PS["Data.CatList"]; + var Data_Functor = $PS["Data.Functor"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_Semigroup = $PS["Data.Semigroup"]; + var Free = (function () { + function Free(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + Free.create = function (value0) { + return function (value1) { + return new Free(value0, value1); + }; + }; + return Free; + })(); + var Return = (function () { + function Return(value0) { + this.value0 = value0; + }; + Return.create = function (value0) { + return new Return(value0); + }; + return Return; + })(); + var Bind = (function () { + function Bind(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + Bind.create = function (value0) { + return function (value1) { + return new Bind(value0, value1); + }; + }; + return Bind; + })(); + var toView = function ($copy_v) { + var $tco_done = false; + var $tco_result; + function $tco_loop(v) { + var runExpF = function (v2) { + return v2; + }; + var concatF = function (v2) { + return function (r) { + return new Free(v2.value0, Data_Semigroup.append(Data_CatList.semigroupCatList)(v2.value1)(r)); + }; + }; + if (v.value0 instanceof Return) { + var v2 = Data_CatList.uncons(v.value1); + if (v2 instanceof Data_Maybe.Nothing) { + $tco_done = true; + return new Return(v.value0.value0); + }; + if (v2 instanceof Data_Maybe.Just) { + $copy_v = concatF(runExpF(v2.value0.value0)(v.value0.value0))(v2.value0.value1); + return; + }; + throw new Error("Failed pattern match at Control.Monad.Free (line 227, column 7 - line 231, column 64): " + [ v2.constructor.name ]); + }; + if (v.value0 instanceof Bind) { + $tco_done = true; + return new Bind(v.value0.value0, function (a) { + return concatF(v.value0.value1(a))(v.value1); + }); + }; + throw new Error("Failed pattern match at Control.Monad.Free (line 225, column 3 - line 233, column 56): " + [ v.value0.constructor.name ]); + }; + while (!$tco_done) { + $tco_result = $tco_loop($copy_v); + }; + return $tco_result; + }; + var fromView = function (f) { + return new Free(f, Data_CatList.empty); + }; + var freeMonad = new Control_Monad.Monad(function () { + return freeApplicative; + }, function () { + return freeBind; + }); + var freeFunctor = new Data_Functor.Functor(function (k) { + return function (f) { + return Control_Bind.bindFlipped(freeBind)((function () { + var $120 = Control_Applicative.pure(freeApplicative); + return function ($121) { + return $120(k($121)); + }; + })())(f); + }; + }); + var freeBind = new Control_Bind.Bind(function () { + return freeApply; + }, function (v) { + return function (k) { + return new Free(v.value0, Data_CatList.snoc(v.value1)(k)); + }; + }); + var freeApply = new Control_Apply.Apply(function () { + return freeFunctor; + }, Control_Monad.ap(freeMonad)); + var freeApplicative = new Control_Applicative.Applicative(function () { + return freeApply; + }, function ($122) { + return fromView(Return.create($122)); + }); + var liftF = function (f) { + return fromView(new Bind(f, (function () { + var $123 = Control_Applicative.pure(freeApplicative); + return function ($124) { + return $123($124); + }; + })())); + }; + var foldFree = function (dictMonadRec) { + return function (k) { + var go = function (f) { + var v = toView(f); + if (v instanceof Return) { + return Data_Functor.map((((dictMonadRec.Monad0()).Bind1()).Apply0()).Functor0())(Control_Monad_Rec_Class.Done.create)(Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0())(v.value0)); + }; + if (v instanceof Bind) { + return Data_Functor.map((((dictMonadRec.Monad0()).Bind1()).Apply0()).Functor0())(function ($136) { + return Control_Monad_Rec_Class.Loop.create(v.value1($136)); + })(k(v.value0)); + }; + throw new Error("Failed pattern match at Control.Monad.Free (line 158, column 10 - line 160, column 37): " + [ v.constructor.name ]); + }; + return Control_Monad_Rec_Class.tailRecM(dictMonadRec)(go); + }; + }; + exports["liftF"] = liftF; + exports["foldFree"] = foldFree; + exports["freeFunctor"] = freeFunctor; + exports["freeApplicative"] = freeApplicative; + exports["freeMonad"] = freeMonad; +})(PS); +(function(exports) { + "use strict"; + + exports.map_ = function (f) { + return function (a) { + return function () { + return f(a()); + }; + }; + }; + + exports.foreach = function (as) { + return function (f) { + return function () { + for (var i = 0, l = as.length; i < l; i++) { + f(as[i])(); + } + }; + }; + }; +})(PS["Control.Monad.ST.Internal"] = PS["Control.Monad.ST.Internal"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Control.Monad.ST.Internal"] = $PS["Control.Monad.ST.Internal"] || {}; + var exports = $PS["Control.Monad.ST.Internal"]; + var $foreign = $PS["Control.Monad.ST.Internal"]; + var Data_Functor = $PS["Data.Functor"]; + var functorST = new Data_Functor.Functor($foreign.map_); + exports["functorST"] = functorST; + exports["foreach"] = $foreign.foreach; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Control.Monad.State.Class"] = $PS["Control.Monad.State.Class"] || {}; + var exports = $PS["Control.Monad.State.Class"]; + var Data_Tuple = $PS["Data.Tuple"]; + var Data_Unit = $PS["Data.Unit"]; + var MonadState = function (Monad0, state) { + this.Monad0 = Monad0; + this.state = state; + }; + var state = function (dict) { + return dict.state; + }; + var modify_ = function (dictMonadState) { + return function (f) { + return state(dictMonadState)(function (s) { + return new Data_Tuple.Tuple(Data_Unit.unit, f(s)); + }); + }; + }; + exports["MonadState"] = MonadState; + exports["modify_"] = modify_; +})(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; @@ -5208,32 +5994,308 @@ var PS = {}; }; exports["parSequence_"] = parSequence_; })(PS); -(function(exports) { - "use strict"; - - //------------------------------------------------------------------------------ - // Array size ------------------------------------------------------------------ - //------------------------------------------------------------------------------ - - exports.length = function (xs) { - return xs.length; - }; -})(PS["Data.Array"] = PS["Data.Array"] || {}); (function($PS) { // Generated by purs version 0.13.3 "use strict"; - $PS["Data.Array"] = $PS["Data.Array"] || {}; - var exports = $PS["Data.Array"]; - var $foreign = $PS["Data.Array"]; - exports["length"] = $foreign.length; + $PS["DOM.HTML.Indexed.InputType"] = $PS["DOM.HTML.Indexed.InputType"] || {}; + var exports = $PS["DOM.HTML.Indexed.InputType"]; + var InputButton = (function () { + function InputButton() { + + }; + InputButton.value = new InputButton(); + return InputButton; + })(); + var InputCheckbox = (function () { + function InputCheckbox() { + + }; + InputCheckbox.value = new InputCheckbox(); + return InputCheckbox; + })(); + var InputColor = (function () { + function InputColor() { + + }; + InputColor.value = new InputColor(); + return InputColor; + })(); + var InputDate = (function () { + function InputDate() { + + }; + InputDate.value = new InputDate(); + return InputDate; + })(); + var InputDatetimeLocal = (function () { + function InputDatetimeLocal() { + + }; + InputDatetimeLocal.value = new InputDatetimeLocal(); + return InputDatetimeLocal; + })(); + var InputEmail = (function () { + function InputEmail() { + + }; + InputEmail.value = new InputEmail(); + return InputEmail; + })(); + var InputFile = (function () { + function InputFile() { + + }; + InputFile.value = new InputFile(); + return InputFile; + })(); + var InputHidden = (function () { + function InputHidden() { + + }; + InputHidden.value = new InputHidden(); + return InputHidden; + })(); + var InputImage = (function () { + function InputImage() { + + }; + InputImage.value = new InputImage(); + return InputImage; + })(); + var InputMonth = (function () { + function InputMonth() { + + }; + InputMonth.value = new InputMonth(); + return InputMonth; + })(); + var InputNumber = (function () { + function InputNumber() { + + }; + InputNumber.value = new InputNumber(); + return InputNumber; + })(); + var InputPassword = (function () { + function InputPassword() { + + }; + InputPassword.value = new InputPassword(); + return InputPassword; + })(); + var InputRadio = (function () { + function InputRadio() { + + }; + InputRadio.value = new InputRadio(); + return InputRadio; + })(); + var InputRange = (function () { + function InputRange() { + + }; + InputRange.value = new InputRange(); + return InputRange; + })(); + var InputReset = (function () { + function InputReset() { + + }; + InputReset.value = new InputReset(); + return InputReset; + })(); + var InputSearch = (function () { + function InputSearch() { + + }; + InputSearch.value = new InputSearch(); + return InputSearch; + })(); + var InputSubmit = (function () { + function InputSubmit() { + + }; + InputSubmit.value = new InputSubmit(); + return InputSubmit; + })(); + var InputTel = (function () { + function InputTel() { + + }; + InputTel.value = new InputTel(); + return InputTel; + })(); + var InputText = (function () { + function InputText() { + + }; + InputText.value = new InputText(); + return InputText; + })(); + var InputTime = (function () { + function InputTime() { + + }; + InputTime.value = new InputTime(); + return InputTime; + })(); + var InputUrl = (function () { + function InputUrl() { + + }; + InputUrl.value = new InputUrl(); + return InputUrl; + })(); + var InputWeek = (function () { + function InputWeek() { + + }; + InputWeek.value = new InputWeek(); + return InputWeek; + })(); + var renderInputType = function (v) { + if (v instanceof InputButton) { + return "button"; + }; + if (v instanceof InputCheckbox) { + return "checkbox"; + }; + if (v instanceof InputColor) { + return "color"; + }; + if (v instanceof InputDate) { + return "date"; + }; + if (v instanceof InputDatetimeLocal) { + return "datetime-local"; + }; + if (v instanceof InputEmail) { + return "email"; + }; + if (v instanceof InputFile) { + return "file"; + }; + if (v instanceof InputHidden) { + return "hidden"; + }; + if (v instanceof InputImage) { + return "image"; + }; + if (v instanceof InputMonth) { + return "month"; + }; + if (v instanceof InputNumber) { + return "number"; + }; + if (v instanceof InputPassword) { + return "password"; + }; + if (v instanceof InputRadio) { + return "radio"; + }; + if (v instanceof InputRange) { + return "range"; + }; + if (v instanceof InputReset) { + return "reset"; + }; + if (v instanceof InputSearch) { + return "search"; + }; + if (v instanceof InputSubmit) { + return "submit"; + }; + if (v instanceof InputTel) { + return "tel"; + }; + if (v instanceof InputText) { + return "text"; + }; + if (v instanceof InputTime) { + return "time"; + }; + if (v instanceof InputUrl) { + return "url"; + }; + if (v instanceof InputWeek) { + return "week"; + }; + throw new Error("Failed pattern match at DOM.HTML.Indexed.InputType (line 28, column 19 - line 50, column 22): " + [ v.constructor.name ]); + }; + exports["InputColor"] = InputColor; + exports["renderInputType"] = renderInputType; })(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; - $PS["Data.Boolean"] = $PS["Data.Boolean"] || {}; - var exports = $PS["Data.Boolean"]; - var otherwise = true; - exports["otherwise"] = otherwise; + $PS["Data.Coyoneda"] = $PS["Data.Coyoneda"] || {}; + var exports = $PS["Data.Coyoneda"]; + var Control_Category = $PS["Control.Category"]; + var Data_Exists = $PS["Data.Exists"]; + var Data_Functor = $PS["Data.Functor"]; + var CoyonedaF = (function () { + function CoyonedaF(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + CoyonedaF.create = function (value0) { + return function (value1) { + return new CoyonedaF(value0, value1); + }; + }; + return CoyonedaF; + })(); + var Coyoneda = function (x) { + return x; + }; + var unCoyoneda = function (f) { + return function (v) { + return Data_Exists.runExists(function (v1) { + return f(v1.value0)(v1.value1); + })(v); + }; + }; + var coyoneda = function (k) { + return function (fi) { + return Coyoneda(Data_Exists.mkExists(new CoyonedaF(k, fi))); + }; + }; + var functorCoyoneda = new Data_Functor.Functor(function (f) { + return function (v) { + return Data_Exists.runExists(function (v1) { + return coyoneda(function ($85) { + return f(v1.value0($85)); + })(v1.value1); + })(v); + }; + }); + var liftCoyoneda = coyoneda(Control_Category.identity(Control_Category.categoryFn)); + exports["unCoyoneda"] = unCoyoneda; + exports["liftCoyoneda"] = liftCoyoneda; + exports["functorCoyoneda"] = functorCoyoneda; +})(PS); +(function(exports) { + "use strict"; + + exports.runFn4 = function (fn) { + return function (a) { + return function (b) { + return function (c) { + return function (d) { + return fn(a, b, c, d); + }; + }; + }; + }; + }; +})(PS["Data.Function.Uncurried"] = PS["Data.Function.Uncurried"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Function.Uncurried"] = $PS["Data.Function.Uncurried"] || {}; + var exports = $PS["Data.Function.Uncurried"]; + var $foreign = $PS["Data.Function.Uncurried"]; + exports["runFn4"] = $foreign.runFn4; })(PS); (function(exports) { "use strict"; @@ -6056,6 +7118,50 @@ var PS = {}; exports["functorMap"] = functorMap; exports["foldableMap"] = foldableMap; })(PS); +(function(exports) { + "use strict"; + + exports["null"] = null; + + exports.nullable = function (a, r, f) { + return a == null ? r : f(a); + }; + + exports.notNull = function (x) { + return x; + }; +})(PS["Data.Nullable"] = PS["Data.Nullable"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.Nullable"] = $PS["Data.Nullable"] || {}; + var exports = $PS["Data.Nullable"]; + var $foreign = $PS["Data.Nullable"]; + var Data_Maybe = $PS["Data.Maybe"]; + var toNullable = Data_Maybe.maybe($foreign["null"])($foreign.notNull); + var toMaybe = function (n) { + return $foreign.nullable(n, Data_Maybe.Nothing.value, Data_Maybe.Just.create); + }; + exports["toMaybe"] = toMaybe; + exports["toNullable"] = toNullable; +})(PS); +(function(exports) { + "use strict"; + + exports.joinWith = function (s) { + return function (xs) { + return xs.join(s); + }; + }; +})(PS["Data.String.Common"] = PS["Data.String.Common"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Data.String.Common"] = $PS["Data.String.Common"] || {}; + var exports = $PS["Data.String.Common"]; + var $foreign = $PS["Data.String.Common"]; + exports["joinWith"] = $foreign.joinWith; +})(PS); (function(exports) { /* globals exports, setTimeout */ "use strict"; @@ -6451,6 +7557,212 @@ var PS = {}; exports["error"] = $foreign.error; exports["throwException"] = $foreign.throwException; })(PS); +(function(exports) { + "use strict"; + + exports.unsafeToForeign = function (value) { + return value; + }; + + exports.unsafeFromForeign = function (value) { + return value; + }; + + exports.typeOf = function (value) { + return typeof value; + }; + + exports.tagOf = function (value) { + return Object.prototype.toString.call(value).slice(8, -1); + }; +})(PS["Foreign"] = PS["Foreign"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Foreign"] = $PS["Foreign"] || {}; + var exports = $PS["Foreign"]; + var $foreign = $PS["Foreign"]; + var Control_Applicative = $PS["Control.Applicative"]; + var Control_Monad_Error_Class = $PS["Control.Monad.Error.Class"]; + var Control_Monad_Except_Trans = $PS["Control.Monad.Except.Trans"]; + var Data_Boolean = $PS["Data.Boolean"]; + var Data_Identity = $PS["Data.Identity"]; + var Data_List_NonEmpty = $PS["Data.List.NonEmpty"]; + var TypeMismatch = (function () { + function TypeMismatch(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + TypeMismatch.create = function (value0) { + return function (value1) { + return new TypeMismatch(value0, value1); + }; + }; + return TypeMismatch; + })(); + var fail = (function () { + var $107 = Control_Monad_Error_Class.throwError(Control_Monad_Except_Trans.monadThrowExceptT(Data_Identity.monadIdentity)); + return function ($108) { + return $107(Data_List_NonEmpty.singleton($108)); + }; + })(); + var unsafeReadTagged = function (tag) { + return function (value) { + if ($foreign.tagOf(value) === tag) { + return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))($foreign.unsafeFromForeign(value)); + }; + if (Data_Boolean.otherwise) { + return fail(new TypeMismatch(tag, $foreign.tagOf(value))); + }; + throw new Error("Failed pattern match at Foreign (line 106, column 1 - line 106, column 55): " + [ tag.constructor.name, value.constructor.name ]); + }; + }; + var readString = unsafeReadTagged("String"); + exports["TypeMismatch"] = TypeMismatch; + exports["readString"] = readString; + exports["fail"] = fail; + exports["unsafeToForeign"] = $foreign.unsafeToForeign; + exports["typeOf"] = $foreign.typeOf; +})(PS); +(function(exports) { + "use strict"; + + exports.unsafeReadPropImpl = function (f, s, key, value) { + return value == null ? f : s(value[key]); + }; +})(PS["Foreign.Index"] = PS["Foreign.Index"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Foreign.Index"] = $PS["Foreign.Index"] || {}; + var exports = $PS["Foreign.Index"]; + var $foreign = $PS["Foreign.Index"]; + var Control_Applicative = $PS["Control.Applicative"]; + var Control_Monad_Except_Trans = $PS["Control.Monad.Except.Trans"]; + var Data_Identity = $PS["Data.Identity"]; + var Foreign = $PS["Foreign"]; + var unsafeReadProp = function (k) { + return function (value) { + return $foreign.unsafeReadPropImpl(Foreign.fail(new Foreign.TypeMismatch("object", Foreign.typeOf(value))), Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity)), k, value); + }; + }; + var readProp = unsafeReadProp; + exports["readProp"] = readProp; +})(PS); +(function(exports) { + "use strict"; + + exports.runST = function (f) { + return f(); + }; + + exports._foldM = function (bind) { + return function (f) { + return function (mz) { + return function (m) { + var acc = mz; + function g(k) { + return function (z) { + return f(z)(k)(m[k]); + }; + } + for (var k in m) { + if (hasOwnProperty.call(m, k)) { + acc = bind(acc)(g(k)); + } + } + return acc; + }; + }; + }; + }; + + exports._lookup = function (no, yes, k, m) { + return k in m ? yes(m[k]) : no; + }; + + function toArrayWithKey(f) { + return function (m) { + var r = []; + for (var k in m) { + if (hasOwnProperty.call(m, k)) { + r.push(f(k)(m[k])); + } + } + return r; + }; + } +})(PS["Foreign.Object"] = PS["Foreign.Object"] || {}); +(function(exports) { + "use strict"; + + exports["new"] = function () { + return {}; + }; + + exports.poke = function (k) { + return function (v) { + return function (m) { + return function () { + m[k] = v; + return m; + }; + }; + }; + }; +})(PS["Foreign.Object.ST"] = PS["Foreign.Object.ST"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Foreign.Object.ST"] = $PS["Foreign.Object.ST"] || {}; + var exports = $PS["Foreign.Object.ST"]; + var $foreign = $PS["Foreign.Object.ST"]; + exports["new"] = $foreign["new"]; + exports["poke"] = $foreign.poke; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Foreign.Object"] = $PS["Foreign.Object"] || {}; + var exports = $PS["Foreign.Object"]; + var $foreign = $PS["Foreign.Object"]; + var Control_Monad_ST_Internal = $PS["Control.Monad.ST.Internal"]; + var Data_Array = $PS["Data.Array"]; + var Data_Function = $PS["Data.Function"]; + var Data_Function_Uncurried = $PS["Data.Function.Uncurried"]; + var Data_Functor = $PS["Data.Functor"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_Monoid = $PS["Data.Monoid"]; + var Data_Semigroup = $PS["Data.Semigroup"]; + var Foreign_Object_ST = $PS["Foreign.Object.ST"]; + var lookup = Data_Function_Uncurried.runFn4($foreign["_lookup"])(Data_Maybe.Nothing.value)(Data_Maybe.Just.create); + var fromFoldable = function (dictFoldable) { + return function (l) { + return $foreign.runST(function __do() { + var v = Foreign_Object_ST["new"](); + Control_Monad_ST_Internal.foreach(Data_Array.fromFoldable(dictFoldable)(l))(function (v1) { + return Data_Functor["void"](Control_Monad_ST_Internal.functorST)(Foreign_Object_ST.poke(v1.value0)(v1.value1)(v)); + })(); + return v; + }); + }; + }; + var fold = $foreign["_foldM"](Data_Function.applyFlipped); + var foldMap = function (dictMonoid) { + return function (f) { + return fold(function (acc) { + return function (k) { + return function (v) { + return Data_Semigroup.append(dictMonoid.Semigroup0())(acc)(f(k)(v)); + }; + }; + })(Data_Monoid.mempty(dictMonoid)); + }; + }; + exports["lookup"] = lookup; + exports["fromFoldable"] = fromFoldable; + exports["foldMap"] = foldMap; +})(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; @@ -6572,6 +7884,253 @@ var PS = {}; }; exports["finalize"] = finalize; })(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Halogen.Query.HalogenM"] = $PS["Halogen.Query.HalogenM"] || {}; + var exports = $PS["Halogen.Query.HalogenM"]; + var Control_Monad_Free = $PS["Control.Monad.Free"]; + var Control_Monad_State_Class = $PS["Control.Monad.State.Class"]; + var Data_Ord = $PS["Data.Ord"]; + var SubscriptionId = function (x) { + return x; + }; + var ForkId = function (x) { + return x; + }; + var State = (function () { + function State(value0) { + this.value0 = value0; + }; + State.create = function (value0) { + return new State(value0); + }; + return State; + })(); + var Subscribe = (function () { + function Subscribe(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + Subscribe.create = function (value0) { + return function (value1) { + return new Subscribe(value0, value1); + }; + }; + return Subscribe; + })(); + var Unsubscribe = (function () { + function Unsubscribe(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + Unsubscribe.create = function (value0) { + return function (value1) { + return new Unsubscribe(value0, value1); + }; + }; + return Unsubscribe; + })(); + var Lift = (function () { + function Lift(value0) { + this.value0 = value0; + }; + Lift.create = function (value0) { + return new Lift(value0); + }; + return Lift; + })(); + var ChildQuery = (function () { + function ChildQuery(value0) { + this.value0 = value0; + }; + ChildQuery.create = function (value0) { + return new ChildQuery(value0); + }; + return ChildQuery; + })(); + var Raise = (function () { + function Raise(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + Raise.create = function (value0) { + return function (value1) { + return new Raise(value0, value1); + }; + }; + return Raise; + })(); + var Par = (function () { + function Par(value0) { + this.value0 = value0; + }; + Par.create = function (value0) { + return new Par(value0); + }; + return Par; + })(); + var Fork = (function () { + function Fork(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + Fork.create = function (value0) { + return function (value1) { + return new Fork(value0, value1); + }; + }; + return Fork; + })(); + var Kill = (function () { + function Kill(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + Kill.create = function (value0) { + return function (value1) { + return new Kill(value0, value1); + }; + }; + return Kill; + })(); + var GetRef = (function () { + function GetRef(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + GetRef.create = function (value0) { + return function (value1) { + return new GetRef(value0, value1); + }; + }; + return GetRef; + })(); + var HalogenM = function (x) { + return x; + }; + var ordSubscriptionId = Data_Ord.ordInt; + var ordForkId = Data_Ord.ordInt; + var monadHalogenM = Control_Monad_Free.freeMonad; + var monadStateHalogenM = new Control_Monad_State_Class.MonadState(function () { + return monadHalogenM; + }, function ($137) { + return HalogenM(Control_Monad_Free.liftF(State.create($137))); + }); + var functorHalogenM = Control_Monad_Free.freeFunctor; + var applicativeHalogenM = Control_Monad_Free.freeApplicative; + exports["State"] = State; + exports["Subscribe"] = Subscribe; + exports["Unsubscribe"] = Unsubscribe; + exports["Lift"] = Lift; + exports["ChildQuery"] = ChildQuery; + exports["Raise"] = Raise; + exports["Par"] = Par; + exports["Fork"] = Fork; + exports["Kill"] = Kill; + exports["GetRef"] = GetRef; + exports["SubscriptionId"] = SubscriptionId; + exports["ForkId"] = ForkId; + exports["functorHalogenM"] = functorHalogenM; + exports["applicativeHalogenM"] = applicativeHalogenM; + exports["monadStateHalogenM"] = monadStateHalogenM; + exports["ordSubscriptionId"] = ordSubscriptionId; + exports["ordForkId"] = ordForkId; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Halogen.Query.HalogenQ"] = $PS["Halogen.Query.HalogenQ"] || {}; + var exports = $PS["Halogen.Query.HalogenQ"]; + var Initialize = (function () { + function Initialize(value0) { + this.value0 = value0; + }; + Initialize.create = function (value0) { + return new Initialize(value0); + }; + return Initialize; + })(); + var Finalize = (function () { + function Finalize(value0) { + this.value0 = value0; + }; + Finalize.create = function (value0) { + return new Finalize(value0); + }; + return Finalize; + })(); + var Receive = (function () { + function Receive(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + Receive.create = function (value0) { + return function (value1) { + return new Receive(value0, value1); + }; + }; + return Receive; + })(); + var Action = (function () { + function Action(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + Action.create = function (value0) { + return function (value1) { + return new Action(value0, value1); + }; + }; + return Action; + })(); + var Query = (function () { + function Query(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + Query.create = function (value0) { + return function (value1) { + return new Query(value0, value1); + }; + }; + return Query; + })(); + exports["Initialize"] = Initialize; + exports["Finalize"] = Finalize; + exports["Receive"] = Receive; + exports["Action"] = Action; + exports["Query"] = Query; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Halogen.Query.Input"] = $PS["Halogen.Query.Input"] || {}; + var exports = $PS["Halogen.Query.Input"]; + var RefUpdate = (function () { + function RefUpdate(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + RefUpdate.create = function (value0) { + return function (value1) { + return new RefUpdate(value0, value1); + }; + }; + return RefUpdate; + })(); + var Action = (function () { + function Action(value0) { + this.value0 = value0; + }; + Action.create = function (value0) { + return new Action(value0); + }; + return Action; + })(); + exports["RefUpdate"] = RefUpdate; + exports["Action"] = Action; +})(PS); (function(exports) { "use strict"; @@ -6878,6 +8437,82 @@ var PS = {}; exports["handleLifecycle"] = handleLifecycle; exports["queueOrRun"] = queueOrRun; })(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Halogen.Component"] = $PS["Halogen.Component"] || {}; + var exports = $PS["Halogen.Component"]; + var Control_Applicative = $PS["Control.Applicative"]; + var Data_Coyoneda = $PS["Data.Coyoneda"]; + var Data_Foldable = $PS["Data.Foldable"]; + var Data_Function = $PS["Data.Function"]; + var Data_Functor = $PS["Data.Functor"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_Unit = $PS["Data.Unit"]; + var Halogen_Query_HalogenM = $PS["Halogen.Query.HalogenM"]; + var Halogen_Query_HalogenQ = $PS["Halogen.Query.HalogenQ"]; + var Unsafe_Coerce = $PS["Unsafe.Coerce"]; + var ComponentSlot = (function () { + function ComponentSlot(value0) { + this.value0 = value0; + }; + ComponentSlot.create = function (value0) { + return new ComponentSlot(value0); + }; + return ComponentSlot; + })(); + var ThunkSlot = (function () { + function ThunkSlot(value0) { + this.value0 = value0; + }; + ThunkSlot.create = function (value0) { + return new ThunkSlot(value0); + }; + return ThunkSlot; + })(); + var unComponentSlot = Unsafe_Coerce.unsafeCoerce; + var unComponent = Unsafe_Coerce.unsafeCoerce; + var mkEval = function (args) { + return function (v) { + if (v instanceof Halogen_Query_HalogenQ.Initialize) { + return Data_Functor.voidLeft(Halogen_Query_HalogenM.functorHalogenM)(Data_Foldable.traverse_(Halogen_Query_HalogenM.applicativeHalogenM)(Data_Foldable.foldableMaybe)(args.handleAction)(args.initialize))(v.value0); + }; + if (v instanceof Halogen_Query_HalogenQ.Finalize) { + return Data_Functor.voidLeft(Halogen_Query_HalogenM.functorHalogenM)(Data_Foldable.traverse_(Halogen_Query_HalogenM.applicativeHalogenM)(Data_Foldable.foldableMaybe)(args.handleAction)(args.finalize))(v.value0); + }; + if (v instanceof Halogen_Query_HalogenQ.Receive) { + return Data_Functor.voidLeft(Halogen_Query_HalogenM.functorHalogenM)(Data_Foldable.traverse_(Halogen_Query_HalogenM.applicativeHalogenM)(Data_Foldable.foldableMaybe)(args.handleAction)(args.receive(v.value0)))(v.value1); + }; + if (v instanceof Halogen_Query_HalogenQ.Action) { + return Data_Functor.voidLeft(Halogen_Query_HalogenM.functorHalogenM)(args.handleAction(v.value0))(v.value1); + }; + if (v instanceof Halogen_Query_HalogenQ.Query) { + return Data_Coyoneda.unCoyoneda(function (g) { + var $28 = Data_Functor.map(Halogen_Query_HalogenM.functorHalogenM)(Data_Maybe.maybe(v.value1(Data_Unit.unit))(g)); + return function ($29) { + return $28(args.handleQuery($29)); + }; + })(v.value0); + }; + throw new Error("Failed pattern match at Halogen.Component (line 172, column 15 - line 182, column 70): " + [ v.constructor.name ]); + }; + }; + var mkComponent = Unsafe_Coerce.unsafeCoerce; + var defaultEval = { + handleAction: Data_Function["const"](Control_Applicative.pure(Halogen_Query_HalogenM.applicativeHalogenM)(Data_Unit.unit)), + handleQuery: Data_Function["const"](Control_Applicative.pure(Halogen_Query_HalogenM.applicativeHalogenM)(Data_Maybe.Nothing.value)), + receive: Data_Function["const"](Data_Maybe.Nothing.value), + initialize: Data_Maybe.Nothing.value, + finalize: Data_Maybe.Nothing.value + }; + exports["mkComponent"] = mkComponent; + exports["unComponent"] = unComponent; + exports["mkEval"] = mkEval; + exports["defaultEval"] = defaultEval; + exports["ComponentSlot"] = ComponentSlot; + exports["ThunkSlot"] = ThunkSlot; + exports["unComponentSlot"] = unComponentSlot; +})(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; @@ -7283,6 +8918,51 @@ var PS = {}; }; exports["querySelector"] = querySelector; })(PS); +(function(exports) { + "use strict"; + + exports.eventListener = function (fn) { + return function () { + return function (event) { + return fn(event)(); + }; + }; + }; + + exports.addEventListener = function (type) { + return function (listener) { + return function (useCapture) { + return function (target) { + return function () { + return target.addEventListener(type, listener, useCapture); + }; + }; + }; + }; + }; + + exports.removeEventListener = function (type) { + return function (listener) { + return function (useCapture) { + return function (target) { + return function () { + return target.removeEventListener(type, listener, useCapture); + }; + }; + }; + }; + }; +})(PS["Web.Event.EventTarget"] = PS["Web.Event.EventTarget"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Web.Event.EventTarget"] = $PS["Web.Event.EventTarget"] || {}; + var exports = $PS["Web.Event.EventTarget"]; + var $foreign = $PS["Web.Event.EventTarget"]; + exports["eventListener"] = $foreign.eventListener; + exports["addEventListener"] = $foreign.addEventListener; + exports["removeEventListener"] = $foreign.removeEventListener; +})(PS); (function(exports) { /* global window */ "use strict"; @@ -7305,6 +8985,8 @@ var PS = {}; $PS["Web.HTML.Event.EventTypes"] = $PS["Web.HTML.Event.EventTypes"] || {}; var exports = $PS["Web.HTML.Event.EventTypes"]; var domcontentloaded = "DOMContentLoaded"; + var change = "change"; + exports["change"] = change; exports["domcontentloaded"] = domcontentloaded; })(PS); (function(exports) { @@ -7492,6 +9174,827 @@ var PS = {}; exports["awaitBody"] = awaitBody; exports["runHalogenAff"] = runHalogenAff; })(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Halogen.VDom.Machine"] = $PS["Halogen.VDom.Machine"] || {}; + var exports = $PS["Halogen.VDom.Machine"]; + var Unsafe_Coerce = $PS["Unsafe.Coerce"]; + var Step = (function () { + function Step(value0, value1, value2, value3) { + this.value0 = value0; + this.value1 = value1; + this.value2 = value2; + this.value3 = value3; + }; + Step.create = function (value0) { + return function (value1) { + return function (value2) { + return function (value3) { + return new Step(value0, value1, value2, value3); + }; + }; + }; + }; + return Step; + })(); + var unStep = Unsafe_Coerce.unsafeCoerce; + var step = function (v, a) { + return v.value2(v.value1, a); + }; + var mkStep = Unsafe_Coerce.unsafeCoerce; + var halt = function (v) { + return v.value3(v.value1); + }; + var extract = unStep(function (v) { + return v.value0; + }); + exports["Step"] = Step; + exports["mkStep"] = mkStep; + exports["unStep"] = unStep; + exports["extract"] = extract; + exports["step"] = step; + exports["halt"] = halt; +})(PS); +(function(exports) { + "use strict"; + + exports.unsafeGetAny = function (key, obj) { + return obj[key]; + }; + + exports.unsafeHasAny = function (key, obj) { + return obj.hasOwnProperty(key); + }; + + exports.unsafeSetAny = function (key, val, obj) { + obj[key] = val; + }; + + exports.forE = function (a, f) { + var b = []; + for (var i = 0; i < a.length; i++) { + b.push(f(i, a[i])); + } + return b; + }; + + exports.forEachE = function (a, f) { + for (var i = 0; i < a.length; i++) { + f(a[i]); + } + }; + + exports.forInE = function (o, f) { + var ks = Object.keys(o); + for (var i = 0; i < ks.length; i++) { + var k = ks[i]; + f(k, o[k]); + } + }; + + exports.diffWithIxE = function (a1, a2, f1, f2, f3) { + var a3 = []; + var l1 = a1.length; + var l2 = a2.length; + var i = 0; + while (1) { + if (i < l1) { + if (i < l2) { + a3.push(f1(i, a1[i], a2[i])); + } else { + f2(i, a1[i]); + } + } else if (i < l2) { + a3.push(f3(i, a2[i])); + } else { + break; + } + i++; + } + return a3; + }; + + exports.strMapWithIxE = function (as, fk, f) { + var o = {}; + for (var i = 0; i < as.length; i++) { + var a = as[i]; + var k = fk(a); + o[k] = f(k, i, a); + } + return o; + }; + + exports.diffWithKeyAndIxE = function (o1, as, fk, f1, f2, f3) { + var o2 = {}; + for (var i = 0; i < as.length; i++) { + var a = as[i]; + var k = fk(a); + if (o1.hasOwnProperty(k)) { + o2[k] = f1(k, i, o1[k], a); + } else { + o2[k] = f3(k, i, a); + } + } + for (var k in o1) { + if (k in o2) { + continue; + } + f2(k, o1[k]); + } + return o2; + }; + + exports.refEq = function (a, b) { + return a === b; + }; + + exports.createTextNode = function (s, doc) { + return doc.createTextNode(s); + }; + + exports.setTextContent = function (s, n) { + n.textContent = s; + }; + + exports.createElement = function (ns, name, doc) { + if (ns != null) { + return doc.createElementNS(ns, name); + } else { + return doc.createElement(name) + } + }; + + exports.insertChildIx = function (i, a, b) { + var n = b.childNodes.item(i) || null; + if (n !== a) { + b.insertBefore(a, n); + } + }; + + exports.removeChild = function (a, b) { + if (b && a.parentNode === b) { + b.removeChild(a); + } + }; + + exports.parentNode = function (a) { + return a.parentNode; + }; + + exports.setAttribute = function (ns, attr, val, el) { + if (ns != null) { + el.setAttributeNS(ns, attr, val); + } else { + el.setAttribute(attr, val); + } + }; + + exports.removeAttribute = function (ns, attr, el) { + if (ns != null) { + el.removeAttributeNS(ns, attr); + } else { + el.removeAttribute(attr); + } + }; + + exports.addEventListener = function (ev, listener, el) { + el.addEventListener(ev, listener, false); + }; + + exports.removeEventListener = function (ev, listener, el) { + el.removeEventListener(ev, listener, false); + }; + + exports.jsUndefined = void 0; +})(PS["Halogen.VDom.Util"] = PS["Halogen.VDom.Util"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Halogen.VDom.Util"] = $PS["Halogen.VDom.Util"] || {}; + var exports = $PS["Halogen.VDom.Util"]; + var $foreign = $PS["Halogen.VDom.Util"]; + var Foreign_Object_ST = $PS["Foreign.Object.ST"]; + var Unsafe_Coerce = $PS["Unsafe.Coerce"]; + var unsafeLookup = $foreign.unsafeGetAny; + var unsafeFreeze = Unsafe_Coerce.unsafeCoerce; + var pokeMutMap = $foreign.unsafeSetAny; + var newMutMap = Foreign_Object_ST["new"]; + exports["newMutMap"] = newMutMap; + exports["pokeMutMap"] = pokeMutMap; + exports["unsafeFreeze"] = unsafeFreeze; + exports["unsafeLookup"] = unsafeLookup; + exports["unsafeGetAny"] = $foreign.unsafeGetAny; + exports["unsafeHasAny"] = $foreign.unsafeHasAny; + exports["unsafeSetAny"] = $foreign.unsafeSetAny; + exports["forE"] = $foreign.forE; + exports["forEachE"] = $foreign.forEachE; + exports["forInE"] = $foreign.forInE; + exports["diffWithIxE"] = $foreign.diffWithIxE; + exports["diffWithKeyAndIxE"] = $foreign.diffWithKeyAndIxE; + exports["strMapWithIxE"] = $foreign.strMapWithIxE; + exports["refEq"] = $foreign.refEq; + exports["createTextNode"] = $foreign.createTextNode; + exports["setTextContent"] = $foreign.setTextContent; + exports["createElement"] = $foreign.createElement; + exports["insertChildIx"] = $foreign.insertChildIx; + exports["removeChild"] = $foreign.removeChild; + exports["parentNode"] = $foreign.parentNode; + exports["setAttribute"] = $foreign.setAttribute; + exports["removeAttribute"] = $foreign.removeAttribute; + exports["addEventListener"] = $foreign.addEventListener; + exports["removeEventListener"] = $foreign.removeEventListener; + exports["jsUndefined"] = $foreign.jsUndefined; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Halogen.VDom.DOM.Prop"] = $PS["Halogen.VDom.DOM.Prop"] || {}; + var exports = $PS["Halogen.VDom.DOM.Prop"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_Nullable = $PS["Data.Nullable"]; + var Data_Tuple = $PS["Data.Tuple"]; + var Data_Unit = $PS["Data.Unit"]; + var Effect_Ref = $PS["Effect.Ref"]; + var Foreign = $PS["Foreign"]; + var Foreign_Object = $PS["Foreign.Object"]; + var Halogen_VDom_Machine = $PS["Halogen.VDom.Machine"]; + var Halogen_VDom_Util = $PS["Halogen.VDom.Util"]; + var Unsafe_Coerce = $PS["Unsafe.Coerce"]; + var Web_Event_EventTarget = $PS["Web.Event.EventTarget"]; + var Created = (function () { + function Created(value0) { + this.value0 = value0; + }; + Created.create = function (value0) { + return new Created(value0); + }; + return Created; + })(); + var Removed = (function () { + function Removed(value0) { + this.value0 = value0; + }; + Removed.create = function (value0) { + return new Removed(value0); + }; + return Removed; + })(); + var Attribute = (function () { + function Attribute(value0, value1, value2) { + this.value0 = value0; + this.value1 = value1; + this.value2 = value2; + }; + Attribute.create = function (value0) { + return function (value1) { + return function (value2) { + return new Attribute(value0, value1, value2); + }; + }; + }; + return Attribute; + })(); + var Property = (function () { + function Property(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + Property.create = function (value0) { + return function (value1) { + return new Property(value0, value1); + }; + }; + return Property; + })(); + var Handler = (function () { + function Handler(value0, value1) { + this.value0 = value0; + this.value1 = value1; + }; + Handler.create = function (value0) { + return function (value1) { + return new Handler(value0, value1); + }; + }; + return Handler; + })(); + var Ref = (function () { + function Ref(value0) { + this.value0 = value0; + }; + Ref.create = function (value0) { + return new Ref(value0); + }; + return Ref; + })(); + var unsafeGetProperty = Halogen_VDom_Util.unsafeGetAny; + var setProperty = Halogen_VDom_Util.unsafeSetAny; + var removeProperty = function (key, el) { + var v = Foreign.typeOf(Halogen_VDom_Util.unsafeGetAny(key, el)); + if (v === "string") { + return Halogen_VDom_Util.unsafeSetAny(key, "", el); + }; + if (key === "rowSpan") { + return Halogen_VDom_Util.unsafeSetAny(key, 1, el); + }; + if (key === "colSpan") { + return Halogen_VDom_Util.unsafeSetAny(key, 1, el); + }; + return Halogen_VDom_Util.unsafeSetAny(key, Halogen_VDom_Util.jsUndefined, el); + }; + var propToStrKey = function (v) { + if (v instanceof Attribute && v.value0 instanceof Data_Maybe.Just) { + return "attr/" + (v.value0.value0 + (":" + v.value1)); + }; + if (v instanceof Attribute) { + return "attr/:" + v.value1; + }; + if (v instanceof Property) { + return "prop/" + v.value0; + }; + if (v instanceof Handler) { + return "handler/" + v.value0; + }; + if (v instanceof Ref) { + return "ref"; + }; + throw new Error("Failed pattern match at Halogen.VDom.DOM.Prop (line 182, column 16 - line 187, column 16): " + [ v.constructor.name ]); + }; + var propFromString = Unsafe_Coerce.unsafeCoerce; + var buildProp = function (emit) { + return function (el) { + var removeProp = function (prevEvents) { + return function (v, v1) { + if (v1 instanceof Attribute) { + return Halogen_VDom_Util.removeAttribute(Data_Nullable.toNullable(v1.value0), v1.value1, el); + }; + if (v1 instanceof Property) { + return removeProperty(v1.value0, el); + }; + if (v1 instanceof Handler) { + var handler = Halogen_VDom_Util.unsafeLookup(v1.value0, prevEvents); + return Halogen_VDom_Util.removeEventListener(v1.value0, Data_Tuple.fst(handler), el); + }; + if (v1 instanceof Ref) { + return Data_Unit.unit; + }; + throw new Error("Failed pattern match at Halogen.VDom.DOM.Prop (line 169, column 5 - line 179, column 18): " + [ v1.constructor.name ]); + }; + }; + var mbEmit = function (v) { + if (v instanceof Data_Maybe.Just) { + return emit(v.value0)(); + }; + return Data_Unit.unit; + }; + var haltProp = function (state) { + var v = Foreign_Object.lookup("ref")(state.props); + if (v instanceof Data_Maybe.Just && v.value0 instanceof Ref) { + return mbEmit(v.value0.value0(new Removed(el))); + }; + return Data_Unit.unit; + }; + var diffProp = function (prevEvents, events) { + return function (v, v1, v11, v2) { + if (v11 instanceof Attribute && v2 instanceof Attribute) { + var $61 = v11.value2 === v2.value2; + if ($61) { + return v2; + }; + Halogen_VDom_Util.setAttribute(Data_Nullable.toNullable(v2.value0), v2.value1, v2.value2, el); + return v2; + }; + if (v11 instanceof Property && v2 instanceof Property) { + var v4 = Halogen_VDom_Util.refEq(v11.value1, v2.value1); + if (v4) { + return v2; + }; + if (v2.value0 === "value") { + var elVal = unsafeGetProperty("value", el); + var $70 = Halogen_VDom_Util.refEq(elVal, v2.value1); + if ($70) { + return v2; + }; + setProperty(v2.value0, v2.value1, el); + return v2; + }; + setProperty(v2.value0, v2.value1, el); + return v2; + }; + if (v11 instanceof Handler && v2 instanceof Handler) { + var handler = Halogen_VDom_Util.unsafeLookup(v2.value0, prevEvents); + Effect_Ref.write(v2.value1)(Data_Tuple.snd(handler))(); + Halogen_VDom_Util.pokeMutMap(v2.value0, handler, events); + return v2; + }; + return v2; + }; + }; + var applyProp = function (events) { + return function (v, v1, v2) { + if (v2 instanceof Attribute) { + Halogen_VDom_Util.setAttribute(Data_Nullable.toNullable(v2.value0), v2.value1, v2.value2, el); + return v2; + }; + if (v2 instanceof Property) { + setProperty(v2.value0, v2.value1, el); + return v2; + }; + if (v2 instanceof Handler) { + var v3 = Halogen_VDom_Util.unsafeGetAny(v2.value0, events); + if (Halogen_VDom_Util.unsafeHasAny(v2.value0, events)) { + Effect_Ref.write(v2.value1)(Data_Tuple.snd(v3))(); + return v2; + }; + var v4 = Effect_Ref["new"](v2.value1)(); + var v5 = Web_Event_EventTarget.eventListener(function (ev) { + return function __do() { + var v5 = Effect_Ref.read(v4)(); + return mbEmit(v5(ev)); + }; + })(); + Halogen_VDom_Util.pokeMutMap(v2.value0, new Data_Tuple.Tuple(v5, v4), events); + Halogen_VDom_Util.addEventListener(v2.value0, v5, el); + return v2; + }; + if (v2 instanceof Ref) { + mbEmit(v2.value0(new Created(el))); + return v2; + }; + throw new Error("Failed pattern match at Halogen.VDom.DOM.Prop (line 113, column 5 - line 135, column 15): " + [ v2.constructor.name ]); + }; + }; + var patchProp = function (state, ps2) { + var v = Halogen_VDom_Util.newMutMap(); + var onThis = removeProp(state.events); + var onThese = diffProp(state.events, v); + var onThat = applyProp(v); + var v1 = Halogen_VDom_Util.diffWithKeyAndIxE(state.props, ps2, propToStrKey, onThese, onThis, onThat); + var nextState = { + events: Halogen_VDom_Util.unsafeFreeze(v), + props: v1 + }; + return Halogen_VDom_Machine.mkStep(new Halogen_VDom_Machine.Step(Data_Unit.unit, nextState, patchProp, haltProp)); + }; + var renderProp = function (ps1) { + var v = Halogen_VDom_Util.newMutMap(); + var v1 = Halogen_VDom_Util.strMapWithIxE(ps1, propToStrKey, applyProp(v)); + var state = { + events: Halogen_VDom_Util.unsafeFreeze(v), + props: v1 + }; + return Halogen_VDom_Machine.mkStep(new Halogen_VDom_Machine.Step(Data_Unit.unit, state, patchProp, haltProp)); + }; + return renderProp; + }; + }; + exports["Attribute"] = Attribute; + exports["Property"] = Property; + exports["Handler"] = Handler; + exports["propFromString"] = propFromString; + exports["buildProp"] = buildProp; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Halogen.VDom.Types"] = $PS["Halogen.VDom.Types"] || {}; + var exports = $PS["Halogen.VDom.Types"]; + var Data_Bifunctor = $PS["Data.Bifunctor"]; + var Data_Functor = $PS["Data.Functor"]; + var Data_Tuple = $PS["Data.Tuple"]; + var Unsafe_Coerce = $PS["Unsafe.Coerce"]; + var Text = (function () { + function Text(value0) { + this.value0 = value0; + }; + Text.create = function (value0) { + return new Text(value0); + }; + return Text; + })(); + var Elem = (function () { + function Elem(value0, value1, value2, value3) { + this.value0 = value0; + this.value1 = value1; + this.value2 = value2; + this.value3 = value3; + }; + Elem.create = function (value0) { + return function (value1) { + return function (value2) { + return function (value3) { + return new Elem(value0, value1, value2, value3); + }; + }; + }; + }; + return Elem; + })(); + var Keyed = (function () { + function Keyed(value0, value1, value2, value3) { + this.value0 = value0; + this.value1 = value1; + this.value2 = value2; + this.value3 = value3; + }; + Keyed.create = function (value0) { + return function (value1) { + return function (value2) { + return function (value3) { + return new Keyed(value0, value1, value2, value3); + }; + }; + }; + }; + return Keyed; + })(); + var Widget = (function () { + function Widget(value0) { + this.value0 = value0; + }; + Widget.create = function (value0) { + return new Widget(value0); + }; + return Widget; + })(); + var Grafted = (function () { + function Grafted(value0) { + this.value0 = value0; + }; + Grafted.create = function (value0) { + return new Grafted(value0); + }; + return Grafted; + })(); + var Graft = (function () { + function Graft(value0, value1, value2) { + this.value0 = value0; + this.value1 = value1; + this.value2 = value2; + }; + Graft.create = function (value0) { + return function (value1) { + return function (value2) { + return new Graft(value0, value1, value2); + }; + }; + }; + return Graft; + })(); + var unGraft = function (f) { + return function ($58) { + return f($58); + }; + }; + var graft = Unsafe_Coerce.unsafeCoerce; + var bifunctorGraft = new Data_Bifunctor.Bifunctor(function (f) { + return function (g) { + return unGraft(function (v) { + return graft(new Graft(function ($60) { + return f(v.value0($60)); + }, function ($61) { + return g(v.value1($61)); + }, v.value2)); + }); + }; + }); + var runGraft = unGraft(function (v) { + var go = function (v2) { + if (v2 instanceof Text) { + return new Text(v2.value0); + }; + if (v2 instanceof Elem) { + return new Elem(v2.value0, v2.value1, v.value0(v2.value2), Data_Functor.map(Data_Functor.functorArray)(go)(v2.value3)); + }; + if (v2 instanceof Keyed) { + return new Keyed(v2.value0, v2.value1, v.value0(v2.value2), Data_Functor.map(Data_Functor.functorArray)(Data_Functor.map(Data_Tuple.functorTuple)(go))(v2.value3)); + }; + if (v2 instanceof Widget) { + return new Widget(v.value1(v2.value0)); + }; + if (v2 instanceof Grafted) { + return new Grafted(Data_Bifunctor.bimap(bifunctorGraft)(v.value0)(v.value1)(v2.value0)); + }; + throw new Error("Failed pattern match at Halogen.VDom.Types (line 86, column 7 - line 86, column 27): " + [ v2.constructor.name ]); + }; + return go(v.value2); + }); + exports["Text"] = Text; + exports["Elem"] = Elem; + exports["Keyed"] = Keyed; + exports["Widget"] = Widget; + exports["Grafted"] = Grafted; + exports["runGraft"] = runGraft; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Halogen.HTML.Core"] = $PS["Halogen.HTML.Core"] || {}; + var exports = $PS["Halogen.HTML.Core"]; + var DOM_HTML_Indexed_InputType = $PS["DOM.HTML.Indexed.InputType"]; + var Data_Newtype = $PS["Data.Newtype"]; + var Halogen_VDom_DOM_Prop = $PS["Halogen.VDom.DOM.Prop"]; + var Halogen_VDom_Types = $PS["Halogen.VDom.Types"]; + var HTML = function (x) { + return x; + }; + var IsProp = function (toPropValue) { + this.toPropValue = toPropValue; + }; + var toPropValue = function (dict) { + return dict.toPropValue; + }; + var text = function ($31) { + return HTML(Halogen_VDom_Types.Text.create($31)); + }; + var prop = function (dictIsProp) { + return function (v) { + var $33 = Halogen_VDom_DOM_Prop.Property.create(v); + var $34 = toPropValue(dictIsProp); + return function ($35) { + return $33($34($35)); + }; + }; + }; + var newtypeHTML = new Data_Newtype.Newtype(function (n) { + return n; + }, HTML); + var isPropString = new IsProp(Halogen_VDom_DOM_Prop.propFromString); + var isPropInputType = new IsProp(function ($49) { + return Halogen_VDom_DOM_Prop.propFromString(DOM_HTML_Indexed_InputType.renderInputType($49)); + }); + var handler = Halogen_VDom_DOM_Prop.Handler.create; + var element = function (ns) { + return function (name) { + return function (props) { + return function (children) { + return new Halogen_VDom_Types.Elem(ns, name, props, children); + }; + }; + }; + }; + var attr = function (ns) { + return function (v) { + return Halogen_VDom_DOM_Prop.Attribute.create(ns)(v); + }; + }; + exports["text"] = text; + exports["element"] = element; + exports["prop"] = prop; + exports["attr"] = attr; + exports["handler"] = handler; + exports["newtypeHTML"] = newtypeHTML; + exports["isPropString"] = isPropString; + exports["isPropInputType"] = isPropInputType; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Halogen.HTML.Properties"] = $PS["Halogen.HTML.Properties"] || {}; + var exports = $PS["Halogen.HTML.Properties"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Halogen_HTML_Core = $PS["Halogen.HTML.Core"]; + var prop = function (dictIsProp) { + return Halogen_HTML_Core.prop(dictIsProp); + }; + var type_ = function (dictIsProp) { + return prop(dictIsProp)("type"); + }; + var value = prop(Halogen_HTML_Core.isPropString)("value"); + var id_ = prop(Halogen_HTML_Core.isPropString)("id"); + var attr = Halogen_HTML_Core.attr(Data_Maybe.Nothing.value); + exports["attr"] = attr; + exports["id_"] = id_; + exports["type_"] = type_; + exports["value"] = value; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Halogen.HTML.CSS"] = $PS["Halogen.HTML.CSS"] || {}; + var exports = $PS["Halogen.HTML.CSS"]; + var CSS_Render = $PS["CSS.Render"]; + var CSS_Stylesheet = $PS["CSS.Stylesheet"]; + var Control_Bind = $PS["Control.Bind"]; + var Data_Array = $PS["Data.Array"]; + var Data_Either = $PS["Data.Either"]; + var Data_Foldable = $PS["Data.Foldable"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Data_Monoid = $PS["Data.Monoid"]; + var Data_String_Common = $PS["Data.String.Common"]; + var Data_Tuple = $PS["Data.Tuple"]; + var Foreign_Object = $PS["Foreign.Object"]; + var Halogen_HTML_Properties = $PS["Halogen.HTML.Properties"]; + var style = (function () { + var toString = (function () { + var $4 = Data_String_Common.joinWith("; "); + var $5 = Foreign_Object.foldMap(Data_Monoid.monoidArray)(function (key) { + return function (val) { + return [ key + (": " + val) ]; + }; + }); + return function ($6) { + return $4($5($6)); + }; + })(); + var rights = Data_Array.concatMap(Data_Foldable.foldMap(Data_Either.foldableEither)(Data_Monoid.monoidArray)(Data_Array.singleton)); + var property = function (v) { + if (v instanceof CSS_Stylesheet.Property) { + return new Data_Maybe.Just(new Data_Tuple.Tuple(v.value0, v.value1)); + }; + return Data_Maybe.Nothing.value; + }; + var rules = function (rs) { + var properties = Control_Bind.bind(Control_Bind.bindArray)(Data_Array.mapMaybe(property)(rs))(function ($7) { + return rights(CSS_Render.collect($7)); + }); + return Foreign_Object.fromFoldable(Data_Foldable.foldableArray)(properties); + }; + var $8 = Halogen_HTML_Properties.attr("style"); + return function ($9) { + return $8(toString(rules(CSS_Stylesheet.runS($9)))); + }; + })(); + exports["style"] = style; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Halogen.HTML.Elements"] = $PS["Halogen.HTML.Elements"] || {}; + var exports = $PS["Halogen.HTML.Elements"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Halogen_HTML_Core = $PS["Halogen.HTML.Core"]; + var element = Halogen_HTML_Core.element(Data_Maybe.Nothing.value); + var input = function (props) { + return element("input")(props)([ ]); + }; + var div = element("div"); + exports["div"] = div; + exports["input"] = input; +})(PS); +(function(exports) { + "use strict"; + + exports._currentTarget = function (e) { + return e.currentTarget; + }; +})(PS["Web.Event.Event"] = PS["Web.Event.Event"] || {}); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Web.Event.Event"] = $PS["Web.Event.Event"] || {}; + var exports = $PS["Web.Event.Event"]; + var $foreign = $PS["Web.Event.Event"]; + var Data_Nullable = $PS["Data.Nullable"]; + var currentTarget = function ($8) { + return Data_Nullable.toMaybe($foreign["_currentTarget"]($8)); + }; + exports["currentTarget"] = currentTarget; +})(PS); +(function($PS) { + // Generated by purs version 0.13.3 + "use strict"; + $PS["Halogen.HTML.Events"] = $PS["Halogen.HTML.Events"] || {}; + var exports = $PS["Halogen.HTML.Events"]; + var Control_Bind = $PS["Control.Bind"]; + var Control_Monad_Except = $PS["Control.Monad.Except"]; + var Control_Monad_Except_Trans = $PS["Control.Monad.Except.Trans"]; + var Data_Either = $PS["Data.Either"]; + var Data_Function = $PS["Data.Function"]; + var Data_Functor = $PS["Data.Functor"]; + var Data_Identity = $PS["Data.Identity"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Foreign = $PS["Foreign"]; + var Foreign_Index = $PS["Foreign.Index"]; + var Halogen_HTML_Core = $PS["Halogen.HTML.Core"]; + var Halogen_Query_Input = $PS["Halogen.Query.Input"]; + var Web_Event_Event = $PS["Web.Event.Event"]; + var Web_HTML_Event_EventTypes = $PS["Web.HTML.Event.EventTypes"]; + var handler = function (et) { + var $0 = Halogen_HTML_Core.handler(et); + var $1 = Data_Functor.map(Data_Functor.functorFn)(Data_Functor.map(Data_Maybe.functorMaybe)(Halogen_Query_Input.Action.create)); + return function ($2) { + return $0($1($2)); + }; + }; + var addForeignPropHandler = function (key) { + return function (prop) { + return function (reader) { + return function (f) { + var go = function (a) { + return Control_Bind.composeKleisliFlipped(Control_Monad_Except_Trans.bindExceptT(Data_Identity.monadIdentity))(reader)(Foreign_Index.readProp(prop))(Foreign.unsafeToForeign(a)); + }; + return handler(key)(Control_Bind.composeKleisli(Data_Maybe.bindMaybe)(Web_Event_Event.currentTarget)(function (e) { + return Data_Either.either(Data_Function["const"](Data_Maybe.Nothing.value))(f)(Control_Monad_Except.runExcept(go(e))); + })); + }; + }; + }; + }; + var onValueChange = addForeignPropHandler(Web_HTML_Event_EventTypes.change)("value")(Foreign.readString); + exports["onValueChange"] = onValueChange; +})(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; @@ -8063,19 +10566,149 @@ var PS = {}; }; exports["runUI"] = runUI; })(PS); +(function($PS) { + "use strict"; + $PS["Solaryzed"] = $PS["Solaryzed"] || {}; + var exports = $PS["Solaryzed"]; + var CSS_Background = $PS["CSS.Background"]; + var CSS_Geometry = $PS["CSS.Geometry"]; + var CSS_Size = $PS["CSS.Size"]; + var CSS_Stylesheet = $PS["CSS.Stylesheet"]; + var CSS_TextAlign = $PS["CSS.TextAlign"]; + var Color = $PS["Color"]; + var Control_Bind = $PS["Control.Bind"]; + var Control_Monad_State_Class = $PS["Control.Monad.State.Class"]; + var DOM_HTML_Indexed_InputType = $PS["DOM.HTML.Indexed.InputType"]; + var Data_Maybe = $PS["Data.Maybe"]; + var Halogen_Component = $PS["Halogen.Component"]; + var Halogen_HTML_CSS = $PS["Halogen.HTML.CSS"]; + var Halogen_HTML_Core = $PS["Halogen.HTML.Core"]; + var Halogen_HTML_Elements = $PS["Halogen.HTML.Elements"]; + var Halogen_HTML_Events = $PS["Halogen.HTML.Events"]; + var Halogen_HTML_Properties = $PS["Halogen.HTML.Properties"]; + var Halogen_Query_HalogenM = $PS["Halogen.Query.HalogenM"]; + var DarkChanged = (function () { + function DarkChanged(value0) { + this.value0 = value0; + }; + DarkChanged.create = function (value0) { + return new DarkChanged(value0); + }; + return DarkChanged; + })(); + var LightChanged = (function () { + function LightChanged(value0) { + this.value0 = value0; + }; + LightChanged.create = function (value0) { + return new LightChanged(value0); + }; + return LightChanged; + })(); + var AccentChanged = (function () { + function AccentChanged(value0) { + this.value0 = value0; + }; + AccentChanged.create = function (value0) { + return new AccentChanged(value0); + }; + return AccentChanged; + })(); + var solyellow = Color.lab(60.0)(10.0)(65.0); + var solbase3 = Color.lab(97.0)(0.0)(10.0); + var solbase03 = Color.lab(15.0)(-12.0)(-12.0); + var render = function (state) { + var cssBackground = function (c) { + return Halogen_HTML_CSS.style(Control_Bind.discard(Control_Bind.discardUnit)(CSS_Stylesheet.bindStyleM)(CSS_Background.background(CSS_Background["backgroundColor'"])(c))(function () { + return Control_Bind.discard(Control_Bind.discardUnit)(CSS_Stylesheet.bindStyleM)(CSS_Geometry.height(CSS_Size.px(80.0)))(function () { + return Control_Bind.discard(Control_Bind.discardUnit)(CSS_Stylesheet.bindStyleM)(CSS_Geometry.width(CSS_Size.px(80.0)))(function () { + return Control_Bind.discard(Control_Bind.discardUnit)(CSS_Stylesheet.bindStyleM)(CSS_Geometry.lineHeight(CSS_Size.px(80.0)))(function () { + return CSS_TextAlign.textAlign(CSS_TextAlign.center); + }); + }); + }); + })); + }; + return Halogen_HTML_Elements.div([ Halogen_HTML_Properties.id_("container") ])([ Halogen_HTML_Elements.div([ Halogen_HTML_Properties.id_("selectors") ])([ Halogen_HTML_Elements.input([ Halogen_HTML_Properties.type_(Halogen_HTML_Core.isPropInputType)(DOM_HTML_Indexed_InputType.InputColor.value), Halogen_HTML_Events.onValueChange(function (c) { + return Data_Maybe.Just.create(new DarkChanged(Data_Maybe.fromMaybe(solbase03)(Color.fromHexString(c)))); + }), Halogen_HTML_Properties.value(Color.toHexString(state.dark)) ]), Halogen_HTML_Elements.input([ Halogen_HTML_Properties.type_(Halogen_HTML_Core.isPropInputType)(DOM_HTML_Indexed_InputType.InputColor.value), Halogen_HTML_Events.onValueChange(function (c) { + return Data_Maybe.Just.create(new LightChanged(Data_Maybe.fromMaybe(solbase03)(Color.fromHexString(c)))); + }), Halogen_HTML_Properties.value(Color.toHexString(state.light)) ]), Halogen_HTML_Elements.input([ Halogen_HTML_Properties.type_(Halogen_HTML_Core.isPropInputType)(DOM_HTML_Indexed_InputType.InputColor.value), Halogen_HTML_Events.onValueChange(function (c) { + return Data_Maybe.Just.create(new AccentChanged(Data_Maybe.fromMaybe(solbase03)(Color.fromHexString(c)))); + }), Halogen_HTML_Properties.value(Color.toHexString(state.accent)) ]) ]), Halogen_HTML_Elements.div([ Halogen_HTML_Properties.id_("colors") ])([ Halogen_HTML_Elements.div([ cssBackground(state.dark), Halogen_HTML_Properties.id_("dark") ])([ Halogen_HTML_Core.text("DARK") ]), Halogen_HTML_Elements.div([ cssBackground(state.light), Halogen_HTML_Properties.id_("light") ])([ Halogen_HTML_Core.text("LIGHT") ]), Halogen_HTML_Elements.div([ cssBackground(state.accent), Halogen_HTML_Properties.id_("accent") ])([ Halogen_HTML_Core.text("ACCENT") ]) ]) ]); + }; + var initialState = function (v) { + return { + dark: solbase03, + light: solbase3, + accent: solyellow + }; + }; + var handleAction = function (v) { + if (v instanceof DarkChanged) { + return Control_Monad_State_Class.modify_(Halogen_Query_HalogenM.monadStateHalogenM)(function (st) { + var $7 = {}; + for (var $8 in st) { + if ({}.hasOwnProperty.call(st, $8)) { + $7[$8] = st[$8]; + }; + }; + $7.dark = v.value0; + return $7; + }); + }; + if (v instanceof LightChanged) { + return Control_Monad_State_Class.modify_(Halogen_Query_HalogenM.monadStateHalogenM)(function (st) { + var $11 = {}; + for (var $12 in st) { + if ({}.hasOwnProperty.call(st, $12)) { + $11[$12] = st[$12]; + }; + }; + $11.light = v.value0; + return $11; + }); + }; + if (v instanceof AccentChanged) { + return Control_Monad_State_Class.modify_(Halogen_Query_HalogenM.monadStateHalogenM)(function (st) { + var $15 = {}; + for (var $16 in st) { + if ({}.hasOwnProperty.call(st, $16)) { + $15[$16] = st[$16]; + }; + }; + $15.accent = v.value0; + return $15; + }); + }; + throw new Error("Failed pattern match at Solaryzed (line 89, column 16 - line 92, column 56): " + [ v.constructor.name ]); + }; + var component = Halogen_Component.mkComponent({ + initialState: initialState, + render: render, + "eval": Halogen_Component.mkEval({ + handleAction: handleAction, + handleQuery: Halogen_Component.defaultEval.handleQuery, + receive: Halogen_Component.defaultEval.receive, + initialize: Halogen_Component.defaultEval.initialize, + finalize: Halogen_Component.defaultEval.finalize + }) + }); + exports["component"] = component; +})(PS); (function($PS) { // Generated by purs version 0.13.3 "use strict"; $PS["Main"] = $PS["Main"] || {}; var exports = $PS["Main"]; - var Button = $PS["Button"]; var Control_Bind = $PS["Control.Bind"]; var Data_Unit = $PS["Data.Unit"]; var Effect_Aff = $PS["Effect.Aff"]; var Halogen_Aff_Util = $PS["Halogen.Aff.Util"]; - var Halogen_VDom_Driver = $PS["Halogen.VDom.Driver"]; + var Halogen_VDom_Driver = $PS["Halogen.VDom.Driver"]; + var Solaryzed = $PS["Solaryzed"]; var main = Halogen_Aff_Util.runHalogenAff(Control_Bind.bind(Effect_Aff.bindAff)(Halogen_Aff_Util.awaitBody)(function (v) { - return Halogen_VDom_Driver.runUI(Button.component)(Data_Unit.unit)(v); + return Halogen_VDom_Driver.runUI(Solaryzed.component)(Data_Unit.unit)(v); })); exports["main"] = main; })(PS); diff --git a/ui/assets/index.html b/ui/assets/index.html index 47e712a..9173623 100644 --- a/ui/assets/index.html +++ b/ui/assets/index.html @@ -3,6 +3,18 @@ Solaryzed + diff --git a/ui/dev.sh b/ui/dev.sh index 3385707..8b13baf 100755 --- a/ui/dev.sh +++ b/ui/dev.sh @@ -1,3 +1,3 @@ #!/bin/bash -spago bundle-app --main Main --to assets/app.js --watch & -parcel serve assets/index.html -o index--parelified.html --open +parcel serve assets/index.html -o index--parelified.html --open & +spago bundle-app --main Main --to assets/app.js --watch diff --git a/ui/spago.dhall b/ui/spago.dhall index b96b04e..4da4875 100644 --- a/ui/spago.dhall +++ b/ui/spago.dhall @@ -6,9 +6,13 @@ You can edit this file as you like. "solaryzed" , dependencies = [ "aff" + , "colors" , "console" + , "css" + , "dom-indexed" , "effect" , "halogen" + , "halogen-css" , "profunctor-lenses" , "maybe" , "psci-support" @@ -17,4 +21,4 @@ You can edit this file as you like. ./packages.dhall , sources = [ "src/**/*.purs", "test/**/*.purs" ] -} +} \ No newline at end of file diff --git a/ui/src/Main.purs b/ui/src/Main.purs index 7c0cbc8..24c62a7 100644 --- a/ui/src/Main.purs +++ b/ui/src/Main.purs @@ -6,9 +6,9 @@ import Effect (Effect) import Halogen.Aff as HA import Halogen.VDom.Driver (runUI) -import Button as Button +import Solaryzed as Solaryzed main :: Effect Unit main = HA.runHalogenAff do body <- HA.awaitBody - runUI Button.component unit body + runUI Solaryzed.component unit body diff --git a/ui/src/Solaryzed.purs b/ui/src/Solaryzed.purs new file mode 100644 index 0000000..bef1c24 --- /dev/null +++ b/ui/src/Solaryzed.purs @@ -0,0 +1,92 @@ +module Solaryzed (component) where + +import Prelude + +import CSS as CSS +import CSS.Size (px) +import CSS.TextAlign (center, textAlign) +import Color (Color, lab, toHexString, fromHexString) +import DOM.HTML.Indexed.InputType (InputType(InputColor)) +import Data.Maybe (fromMaybe,Maybe(..)) +import Halogen as H +import Halogen.HTML as HH +import Halogen.HTML.CSS as HCSS +import Halogen.HTML.Events as HE +import Halogen.HTML.Properties as HP + +type State = { dark :: Color + , light :: Color + , accent :: Color } + +data Action = DarkChanged Color + | LightChanged Color + | AccentChanged Color + +component :: forall q i o m. H.Component HH.HTML q i o m +component = + H.mkComponent + { initialState + , render + , eval: H.mkEval $ H.defaultEval { handleAction = handleAction } + } + +solbase03 :: Color +solbase03 = lab 15.0 (-12.0) (-12.0) +solbase3 :: Color +solbase3 = lab 97.0 0.0 10.0 +solyellow :: Color +solyellow = lab 60.0 10.0 65.0 + +initialState :: forall i. i -> State +initialState _ = { dark: solbase03 + , light: solbase3 + , accent: solyellow + } + +render :: forall m. State -> H.ComponentHTML Action () m +render state = + HH.div + [ HP.id_ "container" ] + [ HH.div + [ HP.id_ "selectors"] + [ HH.input [ HP.type_ InputColor + , HE.onValueChange \ c -> Just $ DarkChanged (fromMaybe solbase03 (fromHexString c)) + , HP.value (toHexString state.dark) + ] + , HH.input [ HP.type_ InputColor + , HE.onValueChange \ c -> Just $ LightChanged (fromMaybe solbase03 (fromHexString c)) + , HP.value (toHexString state.light) + ] + , HH.input [ HP.type_ InputColor + , HE.onValueChange \ c -> Just $ AccentChanged (fromMaybe solbase03 (fromHexString c)) + , HP.value (toHexString state.accent) + ] + ] + , HH.div + [ HP.id_ "colors" ] + [ HH.div + [ cssBackground state.dark + , HP.id_ "dark" ] + [ HH.text "DARK" ] + , HH.div + [ cssBackground state.light + , HP.id_ "light" ] + [ HH.text "LIGHT" ] + , HH.div + [ cssBackground state.accent + , HP.id_ "accent" ] + [ HH.text "ACCENT" ] + ]] + where + cssBackground c = HCSS.style $ do + CSS.background c + CSS.height (px 80.0) + CSS.width (px 80.0) + CSS.lineHeight (px 80.0) + textAlign center + +handleAction ∷ forall o m. Action → H.HalogenM State Action () o m Unit +handleAction = case _ of + DarkChanged c -> H.modify_ \st -> st { dark = c } + LightChanged c -> H.modify_ \st -> st { light = c } + AccentChanged c -> H.modify_ \st -> st { accent = c }