[{"name":"Game.Area","comment":"\n\n@docs new, toHtml\n\n@docs map, mapPosition, mapPositionRandomly, mapRotation, mapRotationRandomly, mapZIndex\n\n@docs draggable, hoverable\n\n\n# Piles\n\n@docs pileAbove, withLinearRotation, withPolarPosition\n\n","unions":[],"aliases":[],"values":[{"name":"draggable","comment":" assigns three events: onMouseUp, onMouseDown and onClick (useful for touch screens).\n\nonClick will perform the onPress action and if that does not exist, it will perform the onRelease action instead.\n\n","type":"{ onPress : Maybe.Maybe msg, onRelease : Maybe.Maybe msg } -> List.List (Html.Attribute msg)"},{"name":"hoverable","comment":" Define hover events\n","type":"{ onEnter : Maybe.Maybe msg, onLeave : Maybe.Maybe msg } -> List.List (Html.Attribute msg)"},{"name":"map","comment":" Map the contents of a list of entities\n","type":"(Basics.Int -> a -> b) -> List.List (Game.Entity.Entity a) -> List.List (Game.Entity.Entity b)"},{"name":"mapPosition","comment":" Map the position of each entity in a list\n","type":"(Basics.Int -> a -> ( Basics.Float, Basics.Float ) -> ( Basics.Float, Basics.Float )) -> List.List (Game.Entity.Entity a) -> List.List (Game.Entity.Entity a)"},{"name":"mapPositionRandomly","comment":" Move each element of the list to a random position.\n","type":"(Basics.Int -> a -> ( Basics.Float, Basics.Float ) -> Random.Generator ( Basics.Float, Basics.Float )) -> List.List (Game.Entity.Entity a) -> Random.Generator (List.List (Game.Entity.Entity a))"},{"name":"mapRotation","comment":" Map the rotation of each entity in a list\n","type":"(Basics.Int -> a -> Basics.Float -> Basics.Float) -> List.List (Game.Entity.Entity a) -> List.List (Game.Entity.Entity a)"},{"name":"mapRotationRandomly","comment":" Apply a random rotation to each element of the list.\n","type":"(Basics.Int -> a -> Basics.Float -> Random.Generator Basics.Float) -> List.List (Game.Entity.Entity a) -> Random.Generator (List.List (Game.Entity.Entity a))"},{"name":"mapZIndex","comment":" Map the z-Index of each entity in a list\n","type":"(Basics.Int -> a -> Basics.Int -> Basics.Int) -> List.List (Game.Entity.Entity a) -> List.List (Game.Entity.Entity a)"},{"name":"new","comment":" create a new entity in an area using a position and a key(string).\n","type":"( Basics.Float, Basics.Float ) -> List.List ( String.String, List.List (Html.Attribute msg) -> Html.Html msg ) -> List.List (Game.Entity.Entity ( String.String, List.List (Html.Attribute msg) -> Html.Html msg ))"},{"name":"pileAbove","comment":" Create a pile in an area.\n","type":"( Basics.Float, Basics.Float ) -> ( String.String, List.List (Html.Attribute msg) -> Html.Html msg ) -> List.List (Game.Entity.Entity ( String.String, List.List (Html.Attribute msg) -> Html.Html msg )) -> List.List (Game.Entity.Entity ( String.String, List.List (Html.Attribute msg) -> Html.Html msg ))"},{"name":"toHtml","comment":" Turn the area into Html. Animation can only happen within an area. If an entity should move from one area into another, you have to use `pileAbove` to define the sub-areas.\n\nYou can change the transition speed:\n\n    speedInSec =\n        0.5\n\n    toHtml [Html.Attributes.style \"transition\" (\"transform \" ++ String.fromInt speedInSec ++ \"s\")]\n\n","type":"List.List (Html.Attribute msg) -> List.List (Game.Entity.Entity ( String.String, List.List (Html.Attribute msg) -> Html.Html msg )) -> Html.Html msg"},{"name":"withLinearRotation","comment":" rotate each element of a list evenly within a given interval.\n","type":"{ min : Basics.Float, max : Basics.Float } -> List.List (Game.Entity.Entity a) -> List.List (Game.Entity.Entity a)"},{"name":"withPolarPosition","comment":" move each element in a list evenly with respect to angle and distance of the original position.\n","type":"{ minAngle : Basics.Float, maxAngle : Basics.Float, minDistance : Basics.Float, maxDistance : Basics.Float } -> List.List (Game.Entity.Entity a) -> List.List (Game.Entity.Entity a)"}],"binops":[]},{"name":"Game.Card","comment":" This module contains functions to display cards.\n\n\n# Styles\n\n@docs default, empty, back, coin\n\n\n# Parts\n\n@docs element, row, fillingImage\n\n\n# Attributes\n\n@docs ratio, backgroundImage\n\n","unions":[],"aliases":[],"values":[{"name":"back","comment":" Displays a card with the content centered. Use this to design your card backs.\n","type":"List.List (Html.Attribute msg) -> Html.Html msg -> Html.Html msg"},{"name":"backgroundImage","comment":" Sets the background to an image\n","type":"String.String -> List.List (Html.Attribute msg)"},{"name":"coin","comment":" Displays a coin.\n","type":"List.List (Html.Attribute msg) -> Html.Html msg -> Html.Html msg"},{"name":"default","comment":" Displays an default view of a card.\n","type":"List.List (Html.Attribute msg) -> List.List (Html.Html msg) -> Html.Html msg"},{"name":"element","comment":" Displays a content with a padding\n","type":"List.List (Html.Attribute msg) -> Html.Html msg -> Html.Html msg"},{"name":"empty","comment":" Display an empty card-sized space with some text\n","type":"List.List (Html.Attribute msg) -> String.String -> Html.Html msg"},{"name":"fillingImage","comment":" Displays a image that will take up as much space as possible\n","type":"List.List (Html.Attribute msg) -> String.String -> Html.Html msg"},{"name":"ratio","comment":" Defines a aspect-ratio of an element. The ratio is `width/height`.\n","type":"Basics.Float -> Html.Attribute msg"},{"name":"row","comment":" A row on top of the card. It uses flexbox.\n","type":"List.List (Html.Attribute msg) -> List.List (Html.Html msg) -> Html.Html msg"}],"binops":[]},{"name":"Game.Entity","comment":" module for working with entities.\n\n\n# Entity\n\n@docs Entity, new, toAttributes, toHtml, pileAbove\n\n@docs move, rotate\n\n@docs map, mapCustomTransformations, mapPosition, mapRotation, mapZIndex\n\n@docs flippable, perspective\n\n\n# Transformation\n\n@docs Transformation, transform, scale, moveTransformation, rotateTransformation, flipTransformation\n\n","unions":[],"aliases":[{"name":"Entity","comment":" A entity allows for different relative transformations like rotating or moving by a relative amount.\n","args":["a"],"type":"{ position : ( Basics.Float, Basics.Float ), rotation : Basics.Float, customTransformations : List.List Game.Entity.Transformation, zIndex : Basics.Int, content : a }"},{"name":"Transformation","comment":" A transformation string\n","args":[],"type":"String.String"}],"values":[{"name":"flipTransformation","comment":" Flip the card. Only works if the outer div has a `perspective` Attribute\n","type":"Basics.Float -> Game.Entity.Transformation"},{"name":"flippable","comment":" Create an entity that can be flipped\n\n**For technical reasons we needed to provide a width. Default is a ratio of 2/3**\n\nYou can overrule the default by providing a width:\n\n    height = 200\n\n    ratio = 2/3\n\n    flippable [Html.Attributes.style \"width\" (String.fromFloat (height * ratio) ++ \"px\")]\n\n","type":"List.List (Html.Attribute msg) -> { front : Game.Entity.Entity (List.List (Html.Attribute msg) -> Html.Html msg), back : Game.Entity.Entity (List.List (Html.Attribute msg) -> Html.Html msg), faceUp : Basics.Bool } -> Game.Entity.Entity (List.List (Html.Attribute msg) -> Html.Html msg)"},{"name":"map","comment":" map the content of a entity\n","type":"(a -> b) -> Game.Entity.Entity a -> Game.Entity.Entity b"},{"name":"mapCustomTransformations","comment":" map custom transformations\n","type":"(List.List Game.Entity.Transformation -> List.List Game.Entity.Transformation) -> Game.Entity.Entity a -> Game.Entity.Entity a"},{"name":"mapPosition","comment":" map position\n","type":"(( Basics.Float, Basics.Float ) -> ( Basics.Float, Basics.Float )) -> Game.Entity.Entity a -> Game.Entity.Entity a"},{"name":"mapRotation","comment":" map rotation\n","type":"(Basics.Float -> Basics.Float) -> Game.Entity.Entity a -> Game.Entity.Entity a"},{"name":"mapZIndex","comment":" map z-index\n","type":"(Basics.Int -> Basics.Int) -> Game.Entity.Entity a -> Game.Entity.Entity a"},{"name":"move","comment":" move a entity\n","type":"( Basics.Float, Basics.Float ) -> Game.Entity.Entity a -> Game.Entity.Entity a"},{"name":"moveTransformation","comment":" Move the card\n","type":"( Basics.Float, Basics.Float ) -> Game.Entity.Transformation"},{"name":"new","comment":" construct a entity\n","type":"a -> Game.Entity.Entity a"},{"name":"perspective","comment":" Activates a 3d-effect for the child notes. Should be used in combination with `flip`\n","type":"Html.Attribute msg"},{"name":"pileAbove","comment":" Group Entities into a pile\n","type":"Html.Html msg -> List.List (Game.Entity.Entity (List.List (Html.Attribute msg) -> Html.Html msg)) -> Game.Entity.Entity (List.List (Html.Attribute msg) -> Html.Html msg)"},{"name":"rotate","comment":" rotate a entity\n","type":"Basics.Float -> Game.Entity.Entity a -> Game.Entity.Entity a"},{"name":"rotateTransformation","comment":" Rotate the card by a radial.\n","type":"Basics.Float -> Game.Entity.Transformation"},{"name":"scale","comment":" Scale the card\n","type":"Basics.Float -> Game.Entity.Transformation"},{"name":"toAttributes","comment":" Attributes of a Entity\n","type":"Game.Entity.Entity a -> ( a, List.List (Html.Attribute msg) )"},{"name":"toHtml","comment":" turn the entity into html\n","type":"List.List (Html.Attribute msg) -> Game.Entity.Entity (List.List (Html.Attribute msg) -> Html.Html msg) -> Html.Html msg"},{"name":"transform","comment":" Add transformations to a card\n","type":"List.List Game.Entity.Transformation -> Html.Attribute msg"}],"binops":[]}]