[{"name":"Cropper","comment":" Fluid width/responsive image cropper UI\n\n\n# TEA\n\n@docs init, view, update, subscriptions\n\n\n## Types\n\n@docs Model, Msg, ImageData, CropData\n\n\n# Helpers\n\n\n## Getters\n\n@docs cropData, imageSize, cropOrigin\n\n\n## Setters\n\n@docs zoom, pivotX, pivotY, crop\n\n","unions":[],"aliases":[{"name":"CropData","comment":" Helper type intended for wrapping data sent to javascript via port\nExample:\nport cropperData : CropData -> Cmd msg\n","args":[],"type":"Cropper.Types.CropData"},{"name":"ImageData","comment":" Helper type intended for wrapping data from javascript via port\nExample:\nport cropperWithImage : (ImageData -> msg) -> Sub msg\n","args":[],"type":"Cropper.Types.ImageData"},{"name":"Model","comment":" State of the cropper\n","args":[],"type":"Cropper.Types.Model"},{"name":"Msg","comment":" Messages\n","args":[],"type":"Cropper.Types.Msg"}],"values":[{"name":"crop","comment":" Set crop size. Will be limited to image size.\n","type":"Cropper.Model -> { width : Basics.Int, height : Basics.Int } -> Cropper.Model"},{"name":"cropData","comment":" Get all data required (by CanvasRenderingContext2D.drawImage) to crop the image\n","type":"Cropper.Model -> Cropper.CropData"},{"name":"cropOrigin","comment":" Get starting point of crop area over imageSize\n","type":"Cropper.Model -> Cropper.Types.Vector"},{"name":"imageSize","comment":" Get image size\n","type":"Cropper.Model -> Cropper.Types.Vector"},{"name":"init","comment":" Use this function to initialize the module with url to image and a crop size.\n","type":"{ url : String.String, crop : { width : Basics.Int, height : Basics.Int } } -> Cropper.Model"},{"name":"pivotX","comment":" Set horizontal pivot (clamped to 0.0...1.0)\n","type":"Cropper.Model -> Basics.Float -> Cropper.Model"},{"name":"pivotY","comment":" Set vertical pivot (clamped to 0.0...1.0)\n","type":"Cropper.Model -> Basics.Float -> Cropper.Model"},{"name":"subscriptions","comment":" TEA subscriptions needs to be hooked up for mouse dragging\n","type":"Cropper.Model -> Platform.Sub.Sub Cropper.Msg"},{"name":"update","comment":" TEA update function\n","type":"Cropper.Msg -> Cropper.Model -> ( Cropper.Model, Platform.Cmd.Cmd Cropper.Msg )"},{"name":"view","comment":" TEA View\n","type":"Cropper.Model -> Html.Html Cropper.Msg"},{"name":"zoom","comment":" Set zoom (clamped to 0.0...1.0)\n","type":"Cropper.Model -> Basics.Float -> Cropper.Model"}],"binops":[]},{"name":"Cropper.Types","comment":" Types\n\n# Types\n\n@docs CropData, Drag, Image, ImageData, Model\n@docs Msg(..)\n@docs Point, Position, Rect\n@docs Rectangle, Vector, decodeImage\n\n","unions":[{"name":"Msg","comment":" the REAL message type....(wow)\n","args":[],"cases":[["ImageLoaded",["Cropper.Types.Image"]],["Measure",["DOM.Rectangle"]],["Zoom",["Basics.Float"]],["DragStart",["Cropper.Types.Position"]],["DragAt",["Cropper.Types.Position"]],["DragEnd",["Cropper.Types.Position"]],["OnTouchStart",["( Basics.Float, Basics.Float )"]],["OnTouchMove",["( Basics.Float, Basics.Float )"]],["OnTouchEnd",["( Basics.Float, Basics.Float )"]]]}],"aliases":[{"name":"CropData","comment":" crop data\n","args":[],"type":"{ url : String.String, size : Cropper.Types.Rect, crop : Cropper.Types.Rect, resized : Cropper.Types.Rect, origin : Cropper.Types.Point }"},{"name":"Drag","comment":" filling out these docs is a drag\n","args":[],"type":"{ start : Cropper.Types.Position, current : Cropper.Types.Position }"},{"name":"Image","comment":" image object\n","args":[],"type":"{ src : String.String, width : Basics.Int, height : Basics.Int }"},{"name":"ImageData","comment":" image data\n","args":[],"type":"{ url : String.String, crop : Cropper.Types.Rect }"},{"name":"Model","comment":" mobel\n","args":[],"type":"{ url : String.String, crop : Cropper.Types.Rect, image : Maybe.Maybe Cropper.Types.Image, boundingClientRect : Cropper.Types.Rectangle, pivot : Cropper.Types.Vector, zoom : Basics.Float, drag : Maybe.Maybe Cropper.Types.Drag }"},{"name":"Point","comment":" point. x, y, all that business\n","args":[],"type":"{ x : Basics.Int, y : Basics.Int }"},{"name":"Position","comment":" pozition\n","args":[],"type":"{ x : Basics.Int, y : Basics.Int }"},{"name":"Rect","comment":" Rectangle..... TWO!!!!!!!!\n","args":[],"type":"{ width : Basics.Int, height : Basics.Int }"},{"name":"Rectangle","comment":" grectangle\n","args":[],"type":"DOM.Rectangle"},{"name":"Vector","comment":" vegtor\n","args":[],"type":"{ x : Basics.Float, y : Basics.Float }"}],"values":[{"name":"decodeImage","comment":" decode image object\n","type":"Json.Decode.Decoder Cropper.Types.Image"}],"binops":[]}]