[
    {
        "name": "Cropper",
        "comment": " Fluid width/responsive image cropper UI\n\n# TEA\n@docs init, view, update, subscriptions\n\n## Types\n@docs Model, Msg\n\n# Helpers\n\n## Getters\n@docs cropData, imageSize, cropOrigin\n\n## Setters\n@docs zoom, pivotX, pivotY, crop\n",
        "unions": [],
        "aliases": [
            {
                "name": "Model",
                "comment": " State of the cropper\n",
                "args": [],
                "type": "Model"
            },
            {
                "name": "Msg",
                "comment": " Messages\n",
                "args": [],
                "type": "Msg"
            }
        ],
        "values": [
            {
                "name": "crop",
                "comment": " Set crop size. Will be limited to image size.\n",
                "type": "Model -> { width : Int, height : Int } -> Model"
            },
            {
                "name": "cropData",
                "comment": " Get all data required (by CanvasRenderingContext2D.drawImage) to crop the image\n",
                "type": "Model -> CropData"
            },
            {
                "name": "cropOrigin",
                "comment": " Get starting point of crop area over imageSize\n",
                "type": "Model -> Vector"
            },
            {
                "name": "imageSize",
                "comment": " Get image size\n",
                "type": "Model -> Vector"
            },
            {
                "name": "init",
                "comment": " Use this function to initialize the module with url to image and a crop size.\n",
                "type": "{ url : String, crop : { width : Int, height : Int } } -> Model"
            },
            {
                "name": "pivotX",
                "comment": " Set horizontal pivot (clamped to 0.0...1.0)\n",
                "type": "Model -> Float -> Model"
            },
            {
                "name": "pivotY",
                "comment": " Set vertical pivot (clamped to 0.0...1.0)\n",
                "type": "Model -> Float -> Model"
            },
            {
                "name": "subscriptions",
                "comment": " TEA subscriptions needs to be hooked up for mouse dragging\n",
                "type": "Model -> Sub Msg"
            },
            {
                "name": "update",
                "comment": " TEA update function\n",
                "type": "Msg -> Model -> ( Model, Cmd Msg )"
            },
            {
                "name": "view",
                "comment": " TEA View\n",
                "type": "Model -> Html Msg"
            },
            {
                "name": "zoom",
                "comment": " Set zoom (clamped to 0.0...1.0)\n",
                "type": "Model -> Float -> Model"
            }
        ],
        "binops": []
    }
]