├── .gitignore ├── elm.json ├── examples └── Logo.elm ├── src ├── Svg │ ├── Keyed.elm │ ├── Lazy.elm │ ├── Events.elm │ └── Attributes.elm └── Svg.elm ├── LICENSE └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | elm-stuff -------------------------------------------------------------------------------- /elm.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "package", 3 | "name": "elm/svg", 4 | "summary": "Fast SVG, rendered with virtual DOM diffing", 5 | "license": "BSD-3-Clause", 6 | "version": "1.0.1", 7 | "exposed-modules": { 8 | "SVG": [ 9 | "Svg", 10 | "Svg.Attributes", 11 | "Svg.Events" 12 | ], 13 | "Optimize": [ 14 | "Svg.Keyed", 15 | "Svg.Lazy" 16 | ] 17 | }, 18 | "elm-version": "0.19.0 <= v < 0.20.0", 19 | "dependencies": { 20 | "elm/core": "1.0.0 <= v < 2.0.0", 21 | "elm/html": "1.0.0 <= v < 2.0.0", 22 | "elm/json": "1.0.0 <= v < 2.0.0", 23 | "elm/virtual-dom": "1.0.0 <= v < 2.0.0" 24 | }, 25 | "test-dependencies": {} 26 | } -------------------------------------------------------------------------------- /examples/Logo.elm: -------------------------------------------------------------------------------- 1 | import Svg exposing (..) 2 | import Svg.Attributes exposing (..) 3 | 4 | main = 5 | svg 6 | [ version "1.1", x "0", y "0", viewBox "0 0 323.141 322.95" 7 | ] 8 | [ polygon [ fill "#F0AD00", points "161.649,152.782 231.514,82.916 91.783,82.916" ] [] 9 | , polygon [ fill "#7FD13B", points "8.867,0 79.241,70.375 232.213,70.375 161.838,0" ] [] 10 | , rect 11 | [ fill "#7FD13B", x "192.99", y "107.392", width "107.676", height "108.167" 12 | , transform "matrix(0.7071 0.7071 -0.7071 0.7071 186.4727 -127.2386)" 13 | ] 14 | [] 15 | , polygon [ fill "#60B5CC", points "323.298,143.724 323.298,0 179.573,0" ] [] 16 | , polygon [ fill "#5A6378", points "152.781,161.649 0,8.868 0,314.432" ] [] 17 | , polygon [ fill "#F0AD00", points "255.522,246.655 323.298,314.432 323.298,178.879" ] [] 18 | , polygon [ fill "#60B5CC", points "161.649,170.517 8.869,323.298 314.43,323.298" ] [] 19 | ] 20 | -------------------------------------------------------------------------------- /src/Svg/Keyed.elm: -------------------------------------------------------------------------------- 1 | module Svg.Keyed exposing ( node ) 2 | {-| A keyed node helps optimize cases where children are getting added, moved, 3 | removed, etc. Common examples include: 4 | 5 | - The user can delete items from a list. 6 | - The user can create new items in a list. 7 | - You can sort a list based on name or date or whatever. 8 | 9 | When you use a keyed node, every child is paired with a string identifier. This 10 | makes it possible for the underlying diffing algorithm to reuse nodes more 11 | efficiently. 12 | 13 | # Keyed Nodes 14 | @docs node 15 | 16 | -} 17 | 18 | 19 | import Svg exposing (Attribute, Svg) 20 | import VirtualDom 21 | import Json.Encode as Json 22 | 23 | 24 | {-| Works just like `Svg.node`, but you add a unique identifier to each child 25 | node. You want this when you have a list of nodes that is changing: adding 26 | nodes, removing nodes, etc. In these cases, the unique identifiers help make 27 | the DOM modifications more efficient. 28 | -} 29 | node : String -> List (Attribute msg) -> List ( String, Svg msg ) -> Svg msg 30 | node = 31 | VirtualDom.keyedNodeNS "http://www.w3.org/2000/svg" -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014-present, Evan Czaplicki 2 | 3 | All rights reserved. 4 | 5 | Redistribution and use in source and binary forms, with or without 6 | modification, are permitted provided that the following conditions are met: 7 | 8 | * Redistributions of source code must retain the above copyright 9 | notice, this list of conditions and the following disclaimer. 10 | 11 | * Redistributions in binary form must reproduce the above 12 | copyright notice, this list of conditions and the following 13 | disclaimer in the documentation and/or other materials provided 14 | with the distribution. 15 | 16 | * Neither the name of Evan Czaplicki nor the names of other 17 | contributors may be used to endorse or promote products derived 18 | from this software without specific prior written permission. 19 | 20 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 21 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 22 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 23 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 24 | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 25 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 26 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 27 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 28 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 29 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 30 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31 | -------------------------------------------------------------------------------- /src/Svg/Lazy.elm: -------------------------------------------------------------------------------- 1 | module Svg.Lazy exposing 2 | ( lazy, lazy2, lazy3, lazy4, lazy5, lazy6, lazy7, lazy8 3 | ) 4 | 5 | {-| Since all Elm functions are pure we have a guarantee that the same input 6 | will always result in the same output. This module gives us tools to be lazy 7 | about building `Svg` that utilize this fact. 8 | 9 | Rather than immediately applying functions to their arguments, the `lazy` 10 | functions just bundle the function and arguments up for later. When diffing 11 | the old and new virtual DOM, it checks to see if all the arguments are equal. 12 | If so, it skips calling the function! 13 | 14 | This is a really cheap test and often makes things a lot faster, but definitely 15 | benchmark to be sure! 16 | 17 | @docs lazy, lazy2, lazy3, lazy4, lazy5, lazy6, lazy7, lazy8 18 | -} 19 | 20 | import Svg exposing (Svg) 21 | import VirtualDom 22 | 23 | 24 | {-| A performance optimization that delays the building of virtual DOM nodes. 25 | 26 | Calling `(view model)` will definitely build some virtual DOM, perhaps a lot of 27 | it. Calling `(lazy view model)` delays the call until later. During diffing, we 28 | can check to see if `model` is referentially equal to the previous value used, 29 | and if so, we just stop. No need to build up the tree structure and diff it, 30 | we know if the input to `view` is the same, the output must be the same! 31 | -} 32 | lazy : (a -> Svg msg) -> a -> Svg msg 33 | lazy = 34 | VirtualDom.lazy 35 | 36 | 37 | {-| Same as `lazy` but checks on two arguments. 38 | -} 39 | lazy2 : (a -> b -> Svg msg) -> a -> b -> Svg msg 40 | lazy2 = 41 | VirtualDom.lazy2 42 | 43 | 44 | {-| Same as `lazy` but checks on three arguments. 45 | -} 46 | lazy3 : (a -> b -> c -> Svg msg) -> a -> b -> c -> Svg msg 47 | lazy3 = 48 | VirtualDom.lazy3 49 | 50 | 51 | {-| Same as `lazy` but checks on four arguments. 52 | -} 53 | lazy4 : (a -> b -> c -> d -> Svg msg) -> a -> b -> c -> d -> Svg msg 54 | lazy4 = 55 | VirtualDom.lazy4 56 | 57 | 58 | {-| Same as `lazy` but checks on five arguments. 59 | -} 60 | lazy5 : (a -> b -> c -> d -> e -> Svg msg) -> a -> b -> c -> d -> e -> Svg msg 61 | lazy5 = 62 | VirtualDom.lazy5 63 | 64 | 65 | {-| Same as `lazy` but checks on six arguments. 66 | -} 67 | lazy6 : (a -> b -> c -> d -> e -> f -> Svg msg) -> a -> b -> c -> d -> e -> f -> Svg msg 68 | lazy6 = 69 | VirtualDom.lazy6 70 | 71 | 72 | {-| Same as `lazy` but checks on seven arguments. 73 | -} 74 | lazy7 : (a -> b -> c -> d -> e -> f -> g -> Svg msg) -> a -> b -> c -> d -> e -> f -> g -> Svg msg 75 | lazy7 = 76 | VirtualDom.lazy7 77 | 78 | 79 | {-| Same as `lazy` but checks on eight arguments. 80 | -} 81 | lazy8 : (a -> b -> c -> d -> e -> f -> g -> h -> Svg msg) -> a -> b -> c -> d -> e -> f -> g -> h -> Svg msg 82 | lazy8 = 83 | VirtualDom.lazy8 84 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # SVG in Elm 2 | 3 | Scalable vector graphics (SVG) is a way to display lines, rectangles, circles, arcs, etc. 4 | 5 | The API is a bit wonky, but (1) it is manageable if you look through MDN docs like [these](https://developer.mozilla.org/en-US/docs/Web/SVG/Element/rect) and (2) you can attach event listeners to any shapes and lines you create! 6 | 7 | 8 | ## Example 9 | 10 | ```elm 11 | import Svg exposing (..) 12 | import Svg.Attributes exposing (..) 13 | 14 | main = 15 | svg 16 | [ width "120" 17 | , height "120" 18 | , viewBox "0 0 120 120" 19 | ] 20 | [ rect 21 | [ x "10" 22 | , y "10" 23 | , width "100" 24 | , height "100" 25 | , rx "15" 26 | , ry "15" 27 | ] 28 | [] 29 | , circle 30 | [ cx "50" 31 | , cy "50" 32 | , r "50" 33 | ] 34 | [] 35 | ] 36 | ``` 37 | 38 | I highly recommend consulting the MDN docs on SVG to learn how to draw various shapes! 39 | 40 | 41 | ## Make visualizations! 42 | 43 | SVG is great for data visualizations, and I really want people in the Elm community to explore more in that direction! My instinct is that functions like `view : data -> Svg msg` will be way easier to work with than what is available in other languages. Just give the data! No need to have data and interaction deeply interwoven in complex ways. 44 | 45 | ### Make visualization packages? 46 | 47 | I think [`terezka/line-charts`](https://terezka.github.io/line-charts/) is a really great effort in this direction. Notice that [the docs](https://package.elm-lang.org/packages/terezka/line-charts/1.0.0/LineChart) present a really smooth learning path. Getting something on screen is really simple, and then it builds on that basic understanding to give you more capabilities. There are tons of examples as well. I really love seeing work like this! 48 | 49 | So if you are interested in doing something like this, I recommend: 50 | 51 | - Reading [The Visual Display of Quantitative Information](https://www.edwardtufte.com/tufte/books_vdqi) by Edward Tufte. 52 | - Learning about [designing for color blindness](https://www.alanzucconi.com/2015/12/16/color-blindness/) 53 | - Learning about different color spaces, like [CIELUV](https://en.wikipedia.org/wiki/CIELUV) for changing colors without changing the perceived brightness, [cubehelix](https://www.mrao.cam.ac.uk/~dag/CUBEHELIX/) for heatmaps with nice brightness properties, and how to do [color conversions](https://www.cs.rit.edu/~ncs/color/t_convert.html) in general 54 | 55 | In other words, try to learn as much as possible first! Anyone can show dots on a grid, but a great package will build expertise into the API itself, quietly leading people towards better design and accessibility. Ideally it will help people learn the important principles as well, because it is not just about getting data on screen, it is about helping people understand complex information! 56 | 57 | 58 | ## Future Plans 59 | 60 | This package should only change to account for new SVG tags and attributes. 61 | 62 | Just like [`elm/html`](https://package.elm-lang.org/packages/elm/html/latest), this package is designed to be predictable. Every node takes two arguments (a list of attributes and a list of children) even though in many cases it is possible to do something nicer. So if you want nice helpers for simple shapes (for example) I recommend creating a separate package that builds upon this one. 63 | -------------------------------------------------------------------------------- /src/Svg/Events.elm: -------------------------------------------------------------------------------- 1 | module Svg.Events exposing 2 | ( onClick, onMouseDown, onMouseUp, onMouseOver, onMouseOut 3 | , on, stopPropagationOn, preventDefaultOn, custom 4 | ) 5 | 6 | 7 | {-| 8 | 9 | # Mouse 10 | @docs onClick, onMouseDown, onMouseUp, onMouseOver, onMouseOut 11 | 12 | # Custom 13 | @docs on, stopPropagationOn, preventDefaultOn, custom 14 | 15 | -} 16 | 17 | 18 | import Html.Events as Html 19 | import Json.Decode as Json 20 | import Svg exposing (Attribute) 21 | import VirtualDom 22 | 23 | 24 | 25 | -- MOUSE 26 | 27 | 28 | {-|-} 29 | onClick : msg -> Attribute msg 30 | onClick msg = 31 | Html.on "click" (Json.succeed msg) 32 | 33 | 34 | {-|-} 35 | onMouseDown : msg -> Attribute msg 36 | onMouseDown msg = 37 | Html.on "mousedown" (Json.succeed msg) 38 | 39 | 40 | {-|-} 41 | onMouseUp : msg -> Attribute msg 42 | onMouseUp msg = 43 | Html.on "mouseup" (Json.succeed msg) 44 | 45 | 46 | {-|-} 47 | onMouseOver : msg -> Attribute msg 48 | onMouseOver msg = 49 | Html.on "mouseover" (Json.succeed msg) 50 | 51 | 52 | {-|-} 53 | onMouseOut : msg -> Attribute msg 54 | onMouseOut msg = 55 | Html.on "mouseout" (Json.succeed msg) 56 | 57 | 58 | 59 | -- CUSTOM 60 | 61 | 62 | {-| Create a custom event listener. Normally this will not be necessary, but 63 | you have the power! Here is how `onClick` is defined for example: 64 | 65 | import Json.Decode as Decode 66 | 67 | onClick : msg -> Attribute msg 68 | onClick message = 69 | on "click" (Decode.succeed message) 70 | 71 | The first argument is the event name in the same format as with JavaScript's 72 | [`addEventListener`][aEL] function. 73 | 74 | The second argument is a JSON decoder. Read more about these [here][decoder]. 75 | When an event occurs, the decoder tries to turn the event object into an Elm 76 | value. If successful, the value is routed to your `update` function. In the 77 | case of `onClick` we always just succeed with the given `message`. 78 | 79 | If this is confusing, work through the [Elm Architecture Tutorial][tutorial]. 80 | It really helps! 81 | 82 | [aEL]: https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener 83 | [decoder]: /packages/elm/json/latest/Json-Decode 84 | [tutorial]: https://github.com/evancz/elm-architecture-tutorial/ 85 | 86 | **Note:** This creates a [passive][] event listener, enabling optimizations for 87 | touch, scroll, and wheel events in some browsers. 88 | 89 | [passive]: https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md 90 | -} 91 | on : String -> Json.Decoder msg -> Attribute msg 92 | on = 93 | Html.on 94 | 95 | 96 | {-| Create an event listener that may [`stopPropagation`][stop]. Your decoder 97 | must produce a message and a `Bool` that decides if `stopPropagation` should 98 | be called. 99 | 100 | [stop]: https://developer.mozilla.org/en-US/docs/Web/API/Event/stopPropagation 101 | 102 | **Note:** This creates a [passive][] event listener, enabling optimizations for 103 | touch, scroll, and wheel events in some browsers. 104 | 105 | [passive]: https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md 106 | -} 107 | stopPropagationOn : String -> Json.Decoder (msg, Bool) -> Attribute msg 108 | stopPropagationOn = 109 | Html.stopPropagationOn 110 | 111 | 112 | {-| Create an event listener that may [`preventDefault`][prevent]. Your decoder 113 | must produce a message and a `Bool` that decides if `preventDefault` should 114 | be called. 115 | 116 | For example, the `onSubmit` function in this library *always* prevents the 117 | default behavior: 118 | 119 | [prevent]: https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault 120 | 121 | onSubmit : msg -> Attribute msg 122 | onSubmit msg = 123 | preventDefaultOn "submit" (Json.map alwaysPreventDefault (Json.succeed msg)) 124 | 125 | alwaysPreventDefault : msg -> ( msg, Bool ) 126 | alwaysPreventDefault msg = 127 | ( msg, True ) 128 | -} 129 | preventDefaultOn : String -> Json.Decoder (msg, Bool) -> Attribute msg 130 | preventDefaultOn = 131 | Html.preventDefaultOn 132 | 133 | 134 | {-| Create an event listener that may [`stopPropagation`][stop] or 135 | [`preventDefault`][prevent]. 136 | 137 | [stop]: https://developer.mozilla.org/en-US/docs/Web/API/Event/stopPropagation 138 | [prevent]: https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault 139 | 140 | **Note:** If you need something even more custom (like capture phase) check 141 | out the lower-level event API in `elm/virtual-dom`. 142 | -} 143 | custom : String -> Json.Decoder { message : msg, stopPropagation : Bool, preventDefault : Bool } -> Attribute msg 144 | custom = 145 | Html.custom 146 | 147 | -------------------------------------------------------------------------------- /src/Svg.elm: -------------------------------------------------------------------------------- 1 | module Svg exposing 2 | ( Svg, Attribute, text, node, map 3 | , svg, foreignObject 4 | , circle, ellipse, image, line, path, polygon, polyline, rect, use 5 | , animate, animateColor, animateMotion, animateTransform, mpath, set 6 | , desc, metadata, title 7 | , a, defs, g, marker, mask, pattern, switch, symbol 8 | , altGlyph, altGlyphDef, altGlyphItem, glyph, glyphRef, textPath, text_ 9 | , tref, tspan 10 | , font 11 | , linearGradient, radialGradient, stop 12 | , feBlend, feColorMatrix, feComponentTransfer, feComposite 13 | , feConvolveMatrix, feDiffuseLighting, feDisplacementMap, feFlood, feFuncA 14 | , feFuncB, feFuncG, feFuncR, feGaussianBlur, feImage, feMerge, feMergeNode 15 | , feMorphology, feOffset, feSpecularLighting, feTile, feTurbulence 16 | , feDistantLight, fePointLight, feSpotLight 17 | , clipPath, colorProfile, cursor, filter, style, view 18 | ) 19 | 20 | {-| 21 | 22 | # SVG Nodes 23 | @docs Svg, Attribute, text, node, map 24 | 25 | # HTML Embedding 26 | @docs svg, foreignObject 27 | 28 | # Graphics elements 29 | @docs circle, ellipse, image, line, path, polygon, polyline, rect, use 30 | 31 | # Animation elements 32 | @docs animate, animateColor, animateMotion, animateTransform, mpath, set 33 | 34 | # Descriptive elements 35 | @docs desc, metadata, title 36 | 37 | # Containers 38 | @docs a, defs, g, marker, mask, pattern, switch, symbol 39 | 40 | # Text 41 | @docs altGlyph, altGlyphDef, altGlyphItem, glyph, glyphRef, textPath, text_, 42 | tref, tspan 43 | 44 | # Fonts 45 | @docs font 46 | 47 | # Gradients 48 | @docs linearGradient, radialGradient, stop 49 | 50 | # Filters 51 | @docs feBlend, feColorMatrix, feComponentTransfer, feComposite, 52 | feConvolveMatrix, feDiffuseLighting, feDisplacementMap, feFlood, feFuncA, 53 | feFuncB, feFuncG, feFuncR, feGaussianBlur, feImage, feMerge, feMergeNode, 54 | feMorphology, feOffset, feSpecularLighting, feTile, feTurbulence 55 | 56 | # Light source elements 57 | @docs feDistantLight, fePointLight, feSpotLight 58 | 59 | # Miscellaneous 60 | @docs clipPath, colorProfile, cursor, filter, style, view 61 | -} 62 | 63 | 64 | import Elm.Kernel.VirtualDom 65 | import Html 66 | import VirtualDom 67 | import Json.Encode as Json 68 | 69 | 70 | 71 | -- PRIMITIVES 72 | 73 | 74 | {-| The core building block to create SVG. This library is filled with helper 75 | functions to create these `Svg` values. 76 | 77 | This is backed by `VirtualDom.Node` in `elm/virtual-dom`, but you do not 78 | need to know any details about that to use this library! 79 | -} 80 | type alias Svg msg = 81 | VirtualDom.Node msg 82 | 83 | 84 | {-| Set attributes on your `Svg`. 85 | -} 86 | type alias Attribute msg = 87 | VirtualDom.Attribute msg 88 | 89 | 90 | {-| Create any SVG node. To create a `` helper function, you would write: 91 | 92 | rect : List (Attribute msg) -> List (Svg msg) -> Svg msg 93 | rect attributes children = 94 | node "rect" attributes children 95 | 96 | You should always be able to use the helper functions already defined in this 97 | library though! 98 | -} 99 | node : String -> List (Attribute msg) -> List (Svg msg) -> Svg msg 100 | node = 101 | VirtualDom.nodeNS "http://www.w3.org/2000/svg" 102 | 103 | 104 | {-| A simple text node, no tags at all. 105 | 106 | Warning: not to be confused with `text_` which produces the SVG `` tag! 107 | -} 108 | text : String -> Svg msg 109 | text = 110 | VirtualDom.text 111 | 112 | 113 | {-| Transform the messages produced by some `Svg`. 114 | -} 115 | map : (a -> msg) -> Svg a -> Svg msg 116 | map = 117 | VirtualDom.map 118 | 119 | 120 | 121 | -- HELPERS 122 | 123 | 124 | trustedNode : String -> List (Attribute msg) -> List (Svg msg) -> Svg msg 125 | trustedNode = 126 | Elm.Kernel.VirtualDom.nodeNS "http://www.w3.org/2000/svg" 127 | 128 | 129 | 130 | -- TAGS 131 | 132 | 133 | {-| The root `` node for any SVG scene. This example shows a scene 134 | containing a rounded rectangle: 135 | 136 | import Svg exposing (..) 137 | import Svg.Attributes exposing (..) 138 | 139 | roundRect = 140 | svg 141 | [ width "120", height "120", viewBox "0 0 120 120" ] 142 | [ rect [ x "10", y "10", width "100", height "100", rx "15", ry "15" ] [] ] 143 | -} 144 | svg : List (Html.Attribute msg) -> List (Svg msg) -> Html.Html msg 145 | svg = 146 | trustedNode "svg" 147 | 148 | 149 | {-|-} 150 | foreignObject : List (Attribute msg) -> List (Html.Html msg) -> Svg msg 151 | foreignObject = 152 | trustedNode "foreignObject" 153 | 154 | 155 | -- Animation elements 156 | 157 | 158 | {-|-} 159 | animate : List (Attribute msg) -> List (Svg msg) -> Svg msg 160 | animate = 161 | trustedNode "animate" 162 | 163 | 164 | {-|-} 165 | animateColor : List (Attribute msg) -> List (Svg msg) -> Svg msg 166 | animateColor = 167 | trustedNode "animateColor" 168 | 169 | 170 | {-|-} 171 | animateMotion : List (Attribute msg) -> List (Svg msg) -> Svg msg 172 | animateMotion = 173 | trustedNode "animateMotion" 174 | 175 | 176 | {-|-} 177 | animateTransform : List (Attribute msg) -> List (Svg msg) -> Svg msg 178 | animateTransform = 179 | trustedNode "animateTransform" 180 | 181 | 182 | {-|-} 183 | mpath : List (Attribute msg) -> List (Svg msg) -> Svg msg 184 | mpath = 185 | trustedNode "mpath" 186 | 187 | 188 | {-|-} 189 | set : List (Attribute msg) -> List (Svg msg) -> Svg msg 190 | set = 191 | trustedNode "set" 192 | 193 | 194 | 195 | -- Container elements 196 | 197 | 198 | {-| The SVG Anchor Element defines a hyperlink. 199 | -} 200 | a : List (Attribute msg) -> List (Svg msg) -> Svg msg 201 | a = 202 | trustedNode "a" 203 | 204 | 205 | {-|-} 206 | defs : List (Attribute msg) -> List (Svg msg) -> Svg msg 207 | defs = 208 | trustedNode "defs" 209 | 210 | 211 | {-|-} 212 | g : List (Attribute msg) -> List (Svg msg) -> Svg msg 213 | g = 214 | trustedNode "g" 215 | 216 | 217 | {-|-} 218 | marker : List (Attribute msg) -> List (Svg msg) -> Svg msg 219 | marker = 220 | trustedNode "marker" 221 | 222 | 223 | {-|-} 224 | mask : List (Attribute msg) -> List (Svg msg) -> Svg msg 225 | mask = 226 | trustedNode "mask" 227 | 228 | 229 | {-|-} 230 | pattern : List (Attribute msg) -> List (Svg msg) -> Svg msg 231 | pattern = 232 | trustedNode "pattern" 233 | 234 | 235 | {-|-} 236 | switch : List (Attribute msg) -> List (Svg msg) -> Svg msg 237 | switch = 238 | trustedNode "switch" 239 | 240 | 241 | {-|-} 242 | symbol : List (Attribute msg) -> List (Svg msg) -> Svg msg 243 | symbol = 244 | trustedNode "symbol" 245 | 246 | 247 | 248 | -- Descriptive elements 249 | 250 | 251 | {-|-} 252 | desc : List (Attribute msg) -> List (Svg msg) -> Svg msg 253 | desc = 254 | trustedNode "desc" 255 | 256 | 257 | {-|-} 258 | metadata : List (Attribute msg) -> List (Svg msg) -> Svg msg 259 | metadata = 260 | trustedNode "metadata" 261 | 262 | 263 | {-|-} 264 | title : List (Attribute msg) -> List (Svg msg) -> Svg msg 265 | title = 266 | trustedNode "title" 267 | 268 | 269 | 270 | -- Filter primitive elements 271 | 272 | 273 | {-|-} 274 | feBlend : List (Attribute msg) -> List (Svg msg) -> Svg msg 275 | feBlend = 276 | trustedNode "feBlend" 277 | 278 | 279 | {-|-} 280 | feColorMatrix : List (Attribute msg) -> List (Svg msg) -> Svg msg 281 | feColorMatrix = 282 | trustedNode "feColorMatrix" 283 | 284 | 285 | {-|-} 286 | feComponentTransfer : List (Attribute msg) -> List (Svg msg) -> Svg msg 287 | feComponentTransfer = 288 | trustedNode "feComponentTransfer" 289 | 290 | 291 | {-|-} 292 | feComposite : List (Attribute msg) -> List (Svg msg) -> Svg msg 293 | feComposite = 294 | trustedNode "feComposite" 295 | 296 | 297 | {-|-} 298 | feConvolveMatrix : List (Attribute msg) -> List (Svg msg) -> Svg msg 299 | feConvolveMatrix = 300 | trustedNode "feConvolveMatrix" 301 | 302 | 303 | {-|-} 304 | feDiffuseLighting : List (Attribute msg) -> List (Svg msg) -> Svg msg 305 | feDiffuseLighting = 306 | trustedNode "feDiffuseLighting" 307 | 308 | 309 | {-|-} 310 | feDisplacementMap : List (Attribute msg) -> List (Svg msg) -> Svg msg 311 | feDisplacementMap = 312 | trustedNode "feDisplacementMap" 313 | 314 | 315 | {-|-} 316 | feFlood : List (Attribute msg) -> List (Svg msg) -> Svg msg 317 | feFlood = 318 | trustedNode "feFlood" 319 | 320 | 321 | {-|-} 322 | feFuncA : List (Attribute msg) -> List (Svg msg) -> Svg msg 323 | feFuncA = 324 | trustedNode "feFuncA" 325 | 326 | 327 | {-|-} 328 | feFuncB : List (Attribute msg) -> List (Svg msg) -> Svg msg 329 | feFuncB = 330 | trustedNode "feFuncB" 331 | 332 | 333 | {-|-} 334 | feFuncG : List (Attribute msg) -> List (Svg msg) -> Svg msg 335 | feFuncG = 336 | trustedNode "feFuncG" 337 | 338 | 339 | {-|-} 340 | feFuncR : List (Attribute msg) -> List (Svg msg) -> Svg msg 341 | feFuncR = 342 | trustedNode "feFuncR" 343 | 344 | 345 | {-|-} 346 | feGaussianBlur : List (Attribute msg) -> List (Svg msg) -> Svg msg 347 | feGaussianBlur = 348 | trustedNode "feGaussianBlur" 349 | 350 | 351 | {-|-} 352 | feImage : List (Attribute msg) -> List (Svg msg) -> Svg msg 353 | feImage = 354 | trustedNode "feImage" 355 | 356 | 357 | {-|-} 358 | feMerge : List (Attribute msg) -> List (Svg msg) -> Svg msg 359 | feMerge = 360 | trustedNode "feMerge" 361 | 362 | 363 | {-|-} 364 | feMergeNode : List (Attribute msg) -> List (Svg msg) -> Svg msg 365 | feMergeNode = 366 | trustedNode "feMergeNode" 367 | 368 | 369 | {-|-} 370 | feMorphology : List (Attribute msg) -> List (Svg msg) -> Svg msg 371 | feMorphology = 372 | trustedNode "feMorphology" 373 | 374 | 375 | {-|-} 376 | feOffset : List (Attribute msg) -> List (Svg msg) -> Svg msg 377 | feOffset = 378 | trustedNode "feOffset" 379 | 380 | 381 | {-|-} 382 | feSpecularLighting : List (Attribute msg) -> List (Svg msg) -> Svg msg 383 | feSpecularLighting = 384 | trustedNode "feSpecularLighting" 385 | 386 | 387 | {-|-} 388 | feTile : List (Attribute msg) -> List (Svg msg) -> Svg msg 389 | feTile = 390 | trustedNode "feTile" 391 | 392 | 393 | {-|-} 394 | feTurbulence : List (Attribute msg) -> List (Svg msg) -> Svg msg 395 | feTurbulence = 396 | trustedNode "feTurbulence" 397 | 398 | 399 | 400 | -- Font elements 401 | 402 | 403 | {-|-} 404 | font : List (Attribute msg) -> List (Svg msg) -> Svg msg 405 | font = 406 | trustedNode "font" 407 | 408 | 409 | 410 | -- Gradient elements 411 | 412 | 413 | {-|-} 414 | linearGradient : List (Attribute msg) -> List (Svg msg) -> Svg msg 415 | linearGradient = 416 | trustedNode "linearGradient" 417 | 418 | 419 | {-|-} 420 | radialGradient : List (Attribute msg) -> List (Svg msg) -> Svg msg 421 | radialGradient = 422 | trustedNode "radialGradient" 423 | 424 | 425 | {-|-} 426 | stop : List (Attribute msg) -> List (Svg msg) -> Svg msg 427 | stop = 428 | trustedNode "stop" 429 | 430 | 431 | 432 | -- Graphics elements 433 | 434 | 435 | {-| The circle element is an SVG basic shape, used to create circles based on 436 | a center point and a radius. 437 | 438 | circle [ cx "60", cy "60", r "50" ] [] 439 | -} 440 | circle : List (Attribute msg) -> List (Svg msg) -> Svg msg 441 | circle = 442 | trustedNode "circle" 443 | 444 | 445 | {-|-} 446 | ellipse : List (Attribute msg) -> List (Svg msg) -> Svg msg 447 | ellipse = 448 | trustedNode "ellipse" 449 | 450 | 451 | {-|-} 452 | image : List (Attribute msg) -> List (Svg msg) -> Svg msg 453 | image = 454 | trustedNode "image" 455 | 456 | 457 | {-|-} 458 | line : List (Attribute msg) -> List (Svg msg) -> Svg msg 459 | line = 460 | trustedNode "line" 461 | 462 | 463 | {-|-} 464 | path : List (Attribute msg) -> List (Svg msg) -> Svg msg 465 | path = 466 | trustedNode "path" 467 | 468 | 469 | {-|-} 470 | polygon : List (Attribute msg) -> List (Svg msg) -> Svg msg 471 | polygon = 472 | trustedNode "polygon" 473 | 474 | 475 | {-| The polyline element is an SVG basic shape, used to create a series of 476 | straight lines connecting several points. Typically a polyline is used to 477 | create open shapes. 478 | 479 | polyline [ fill "none", stroke "black", points "20,100 40,60 70,80 100,20" ] [] 480 | -} 481 | polyline : List (Attribute msg) -> List (Svg msg) -> Svg msg 482 | polyline = 483 | trustedNode "polyline" 484 | 485 | 486 | {-|-} 487 | rect : List (Attribute msg) -> List (Svg msg) -> Svg msg 488 | rect = 489 | trustedNode "rect" 490 | 491 | 492 | {-|-} 493 | use : List (Attribute msg) -> List (Svg msg) -> Svg msg 494 | use = 495 | trustedNode "use" 496 | 497 | 498 | 499 | -- Light source elements 500 | 501 | 502 | {-|-} 503 | feDistantLight : List (Attribute msg) -> List (Svg msg) -> Svg msg 504 | feDistantLight = 505 | trustedNode "feDistantLight" 506 | 507 | 508 | {-|-} 509 | fePointLight : List (Attribute msg) -> List (Svg msg) -> Svg msg 510 | fePointLight = 511 | trustedNode "fePointLight" 512 | 513 | 514 | {-|-} 515 | feSpotLight : List (Attribute msg) -> List (Svg msg) -> Svg msg 516 | feSpotLight = 517 | trustedNode "feSpotLight" 518 | 519 | 520 | -- Text content elements 521 | 522 | 523 | {-|-} 524 | altGlyph : List (Attribute msg) -> List (Svg msg) -> Svg msg 525 | altGlyph = 526 | trustedNode "altGlyph" 527 | 528 | 529 | {-|-} 530 | altGlyphDef : List (Attribute msg) -> List (Svg msg) -> Svg msg 531 | altGlyphDef = 532 | trustedNode "altGlyphDef" 533 | 534 | 535 | {-|-} 536 | altGlyphItem : List (Attribute msg) -> List (Svg msg) -> Svg msg 537 | altGlyphItem = 538 | trustedNode "altGlyphItem" 539 | 540 | 541 | {-|-} 542 | glyph : List (Attribute msg) -> List (Svg msg) -> Svg msg 543 | glyph = 544 | trustedNode "glyph" 545 | 546 | 547 | {-|-} 548 | glyphRef : List (Attribute msg) -> List (Svg msg) -> Svg msg 549 | glyphRef = 550 | trustedNode "glyphRef" 551 | 552 | 553 | {-|-} 554 | textPath : List (Attribute msg) -> List (Svg msg) -> Svg msg 555 | textPath = 556 | trustedNode "textPath" 557 | 558 | 559 | {-|-} 560 | text_ : List (Attribute msg) -> List (Svg msg) -> Svg msg 561 | text_ = 562 | trustedNode "text" 563 | 564 | 565 | {-|-} 566 | tref : List (Attribute msg) -> List (Svg msg) -> Svg msg 567 | tref = 568 | trustedNode "tref" 569 | 570 | 571 | {-|-} 572 | tspan : List (Attribute msg) -> List (Svg msg) -> Svg msg 573 | tspan = 574 | trustedNode "tspan" 575 | 576 | 577 | -- Uncategorized elements 578 | 579 | 580 | {-|-} 581 | clipPath : List (Attribute msg) -> List (Svg msg) -> Svg msg 582 | clipPath = 583 | trustedNode "clipPath" 584 | 585 | 586 | {-|-} 587 | colorProfile : List (Attribute msg) -> List (Svg msg) -> Svg msg 588 | colorProfile = 589 | trustedNode "colorProfile" 590 | 591 | 592 | {-|-} 593 | cursor : List (Attribute msg) -> List (Svg msg) -> Svg msg 594 | cursor = 595 | trustedNode "cursor" 596 | 597 | 598 | {-|-} 599 | filter : List (Attribute msg) -> List (Svg msg) -> Svg msg 600 | filter = 601 | trustedNode "filter" 602 | 603 | 604 | {-|-} 605 | style : List (Attribute msg) -> List (Svg msg) -> Svg msg 606 | style = 607 | trustedNode "style" 608 | 609 | 610 | {-|-} 611 | view : List (Attribute msg) -> List (Svg msg) -> Svg msg 612 | view = 613 | trustedNode "view" 614 | 615 | 616 | -------------------------------------------------------------------------------- /src/Svg/Attributes.elm: -------------------------------------------------------------------------------- 1 | module Svg.Attributes exposing 2 | ( accentHeight, accelerate, accumulate, additive, alphabetic, allowReorder 3 | , amplitude, arabicForm, ascent, attributeName, attributeType, autoReverse 4 | , azimuth, baseFrequency, baseProfile, bbox, begin, bias, by, calcMode 5 | , capHeight, class, clipPathUnits, contentScriptType, contentStyleType, cx, cy 6 | , d, decelerate, descent, diffuseConstant, divisor, dur, dx, dy, edgeMode 7 | , elevation, end, exponent, externalResourcesRequired, filterRes, filterUnits 8 | , format, from, fx, fy, g1, g2, glyphName, glyphRef, gradientTransform 9 | , gradientUnits, hanging, height, horizAdvX, horizOriginX, horizOriginY, id 10 | , ideographic, in_, in2, intercept, k, k1, k2, k3, k4, kernelMatrix 11 | , kernelUnitLength, keyPoints, keySplines, keyTimes, lang, lengthAdjust 12 | , limitingConeAngle, local, markerHeight, markerUnits, markerWidth 13 | , maskContentUnits, maskUnits, mathematical, max, media, method, min, mode 14 | , name, numOctaves, offset, operator, order, orient, orientation, origin 15 | , overlinePosition, overlineThickness, panose1, path, pathLength 16 | , patternContentUnits, patternTransform, patternUnits, pointOrder, points 17 | , pointsAtX, pointsAtY, pointsAtZ, preserveAlpha, preserveAspectRatio 18 | , primitiveUnits, r, radius, refX, refY, renderingIntent, repeatCount 19 | , repeatDur, requiredExtensions, requiredFeatures, restart, result, rotate 20 | , rx, ry, scale, seed, slope, spacing, specularConstant, specularExponent 21 | , speed, spreadMethod, startOffset, stdDeviation, stemh, stemv, stitchTiles 22 | , strikethroughPosition, strikethroughThickness, string, style, surfaceScale 23 | , systemLanguage, tableValues, target, targetX, targetY, textLength, title, to 24 | , transform, type_, u1, u2, underlinePosition, underlineThickness, unicode 25 | , unicodeRange, unitsPerEm, vAlphabetic, vHanging, vIdeographic, vMathematical 26 | , values, version, vertAdvY, vertOriginX, vertOriginY, viewBox, viewTarget 27 | , width, widths, x, xHeight, x1, x2, xChannelSelector, xlinkActuate 28 | , xlinkArcrole, xlinkHref, xlinkRole, xlinkShow, xlinkTitle, xlinkType 29 | , xmlBase, xmlLang, xmlSpace, y, y1, y2, yChannelSelector, z, zoomAndPan 30 | 31 | , alignmentBaseline, baselineShift, clipPath, clipRule, clip 32 | , colorInterpolationFilters, colorInterpolation, colorProfile, colorRendering 33 | , color, cursor, direction, display, dominantBaseline, enableBackground 34 | , fillOpacity, fillRule, fill, filter, floodColor, floodOpacity, fontFamily 35 | , fontSizeAdjust, fontSize, fontStretch, fontStyle, fontVariant, fontWeight 36 | , glyphOrientationHorizontal, glyphOrientationVertical, imageRendering 37 | , kerning, letterSpacing, lightingColor, markerEnd, markerMid, markerStart 38 | , mask, opacity, overflow, pointerEvents, shapeRendering, stopColor 39 | , stopOpacity, strokeDasharray, strokeDashoffset, strokeLinecap 40 | , strokeLinejoin, strokeMiterlimit, strokeOpacity, strokeWidth, stroke 41 | , textAnchor, textDecoration, textRendering, unicodeBidi, visibility 42 | , wordSpacing, writingMode 43 | ) 44 | 45 | {-| 46 | 47 | # Regular attributes 48 | @docs accentHeight, accelerate, accumulate, additive, alphabetic, allowReorder, 49 | amplitude, arabicForm, ascent, attributeName, attributeType, autoReverse, 50 | azimuth, baseFrequency, baseProfile, bbox, begin, bias, by, calcMode, 51 | capHeight, class, clipPathUnits, contentScriptType, contentStyleType, cx, cy, 52 | d, decelerate, descent, diffuseConstant, divisor, dur, dx, dy, edgeMode, 53 | elevation, end, exponent, externalResourcesRequired, filterRes, filterUnits, 54 | format, from, fx, fy, g1, g2, glyphName, glyphRef, gradientTransform, 55 | gradientUnits, hanging, height, horizAdvX, horizOriginX, horizOriginY, id, 56 | ideographic, in_, in2, intercept, k, k1, k2, k3, k4, kernelMatrix, 57 | kernelUnitLength, keyPoints, keySplines, keyTimes, lang, lengthAdjust, 58 | limitingConeAngle, local, markerHeight, markerUnits, markerWidth, 59 | maskContentUnits, maskUnits, mathematical, max, media, method, min, mode, 60 | name, numOctaves, offset, operator, order, orient, orientation, origin, 61 | overlinePosition, overlineThickness, panose1, path, pathLength, 62 | patternContentUnits, patternTransform, patternUnits, pointOrder, points, 63 | pointsAtX, pointsAtY, pointsAtZ, preserveAlpha, preserveAspectRatio, 64 | primitiveUnits, r, radius, refX, refY, renderingIntent, repeatCount, 65 | repeatDur, requiredExtensions, requiredFeatures, restart, result, rotate, 66 | rx, ry, scale, seed, slope, spacing, specularConstant, specularExponent, 67 | speed, spreadMethod, startOffset, stdDeviation, stemh, stemv, stitchTiles, 68 | strikethroughPosition, strikethroughThickness, string, style, surfaceScale, 69 | systemLanguage, tableValues, target, targetX, targetY, textLength, title, to, 70 | transform, type_, u1, u2, underlinePosition, underlineThickness, unicode, 71 | unicodeRange, unitsPerEm, vAlphabetic, vHanging, vIdeographic, vMathematical, 72 | values, version, vertAdvY, vertOriginX, vertOriginY, viewBox, viewTarget, 73 | width, widths, x, xHeight, x1, x2, xChannelSelector, xlinkActuate, 74 | xlinkArcrole, xlinkHref, xlinkRole, xlinkShow, xlinkTitle, xlinkType, 75 | xmlBase, xmlLang, xmlSpace, y, y1, y2, yChannelSelector, z, zoomAndPan 76 | 77 | # Presentation attributes 78 | @docs alignmentBaseline, baselineShift, clipPath, clipRule, clip, 79 | colorInterpolationFilters, colorInterpolation, colorProfile, colorRendering, 80 | color, cursor, direction, display, dominantBaseline, enableBackground, 81 | fillOpacity, fillRule, fill, filter, floodColor, floodOpacity, fontFamily, 82 | fontSizeAdjust, fontSize, fontStretch, fontStyle, fontVariant, fontWeight, 83 | glyphOrientationHorizontal, glyphOrientationVertical, imageRendering, 84 | kerning, letterSpacing, lightingColor, markerEnd, markerMid, markerStart, 85 | mask, opacity, overflow, pointerEvents, shapeRendering, stopColor, 86 | stopOpacity, strokeDasharray, strokeDashoffset, strokeLinecap, 87 | strokeLinejoin, strokeMiterlimit, strokeOpacity, strokeWidth, stroke, 88 | textAnchor, textDecoration, textRendering, unicodeBidi, visibility, 89 | wordSpacing, writingMode 90 | 91 | -} 92 | 93 | 94 | import Elm.Kernel.VirtualDom 95 | import Svg exposing (Attribute) 96 | 97 | 98 | 99 | -- REGULAR ATTRIBUTES 100 | 101 | 102 | {-|-} 103 | accentHeight : String -> Attribute msg 104 | accentHeight = 105 | Elm.Kernel.VirtualDom.attribute "accent-height" 106 | 107 | 108 | {-|-} 109 | accelerate : String -> Attribute msg 110 | accelerate = 111 | Elm.Kernel.VirtualDom.attribute "accelerate" 112 | 113 | 114 | {-|-} 115 | accumulate : String -> Attribute msg 116 | accumulate = 117 | Elm.Kernel.VirtualDom.attribute "accumulate" 118 | 119 | 120 | {-|-} 121 | additive : String -> Attribute msg 122 | additive = 123 | Elm.Kernel.VirtualDom.attribute "additive" 124 | 125 | 126 | {-|-} 127 | alphabetic : String -> Attribute msg 128 | alphabetic = 129 | Elm.Kernel.VirtualDom.attribute "alphabetic" 130 | 131 | 132 | {-|-} 133 | allowReorder : String -> Attribute msg 134 | allowReorder = 135 | Elm.Kernel.VirtualDom.attribute "allowReorder" 136 | 137 | 138 | {-|-} 139 | amplitude : String -> Attribute msg 140 | amplitude = 141 | Elm.Kernel.VirtualDom.attribute "amplitude" 142 | 143 | 144 | {-|-} 145 | arabicForm : String -> Attribute msg 146 | arabicForm = 147 | Elm.Kernel.VirtualDom.attribute "arabic-form" 148 | 149 | 150 | {-|-} 151 | ascent : String -> Attribute msg 152 | ascent = 153 | Elm.Kernel.VirtualDom.attribute "ascent" 154 | 155 | 156 | {-|-} 157 | attributeName : String -> Attribute msg 158 | attributeName = 159 | Elm.Kernel.VirtualDom.attribute "attributeName" 160 | 161 | 162 | {-|-} 163 | attributeType : String -> Attribute msg 164 | attributeType = 165 | Elm.Kernel.VirtualDom.attribute "attributeType" 166 | 167 | 168 | {-|-} 169 | autoReverse : String -> Attribute msg 170 | autoReverse = 171 | Elm.Kernel.VirtualDom.attribute "autoReverse" 172 | 173 | 174 | {-|-} 175 | azimuth : String -> Attribute msg 176 | azimuth = 177 | Elm.Kernel.VirtualDom.attribute "azimuth" 178 | 179 | 180 | {-|-} 181 | baseFrequency : String -> Attribute msg 182 | baseFrequency = 183 | Elm.Kernel.VirtualDom.attribute "baseFrequency" 184 | 185 | 186 | {-|-} 187 | baseProfile : String -> Attribute msg 188 | baseProfile = 189 | Elm.Kernel.VirtualDom.attribute "baseProfile" 190 | 191 | 192 | {-|-} 193 | bbox : String -> Attribute msg 194 | bbox = 195 | Elm.Kernel.VirtualDom.attribute "bbox" 196 | 197 | 198 | {-|-} 199 | begin : String -> Attribute msg 200 | begin = 201 | Elm.Kernel.VirtualDom.attribute "begin" 202 | 203 | 204 | {-|-} 205 | bias : String -> Attribute msg 206 | bias = 207 | Elm.Kernel.VirtualDom.attribute "bias" 208 | 209 | 210 | {-|-} 211 | by : String -> Attribute msg 212 | by value = 213 | Elm.Kernel.VirtualDom.attribute "by" (Elm.Kernel.VirtualDom.noJavaScriptUri value) 214 | 215 | 216 | {-|-} 217 | calcMode : String -> Attribute msg 218 | calcMode = 219 | Elm.Kernel.VirtualDom.attribute "calcMode" 220 | 221 | 222 | {-|-} 223 | capHeight : String -> Attribute msg 224 | capHeight = 225 | Elm.Kernel.VirtualDom.attribute "cap-height" 226 | 227 | 228 | {-|-} 229 | class : String -> Attribute msg 230 | class = 231 | Elm.Kernel.VirtualDom.attribute "class" 232 | 233 | 234 | {-|-} 235 | clipPathUnits : String -> Attribute msg 236 | clipPathUnits = 237 | Elm.Kernel.VirtualDom.attribute "clipPathUnits" 238 | 239 | 240 | {-|-} 241 | contentScriptType : String -> Attribute msg 242 | contentScriptType = 243 | Elm.Kernel.VirtualDom.attribute "contentScriptType" 244 | 245 | 246 | {-|-} 247 | contentStyleType : String -> Attribute msg 248 | contentStyleType = 249 | Elm.Kernel.VirtualDom.attribute "contentStyleType" 250 | 251 | 252 | {-|-} 253 | cx : String -> Attribute msg 254 | cx = 255 | Elm.Kernel.VirtualDom.attribute "cx" 256 | 257 | 258 | {-|-} 259 | cy : String -> Attribute msg 260 | cy = 261 | Elm.Kernel.VirtualDom.attribute "cy" 262 | 263 | 264 | {-|-} 265 | d : String -> Attribute msg 266 | d = 267 | Elm.Kernel.VirtualDom.attribute "d" 268 | 269 | 270 | {-|-} 271 | decelerate : String -> Attribute msg 272 | decelerate = 273 | Elm.Kernel.VirtualDom.attribute "decelerate" 274 | 275 | 276 | {-|-} 277 | descent : String -> Attribute msg 278 | descent = 279 | Elm.Kernel.VirtualDom.attribute "descent" 280 | 281 | 282 | {-|-} 283 | diffuseConstant : String -> Attribute msg 284 | diffuseConstant = 285 | Elm.Kernel.VirtualDom.attribute "diffuseConstant" 286 | 287 | 288 | {-|-} 289 | divisor : String -> Attribute msg 290 | divisor = 291 | Elm.Kernel.VirtualDom.attribute "divisor" 292 | 293 | 294 | {-|-} 295 | dur : String -> Attribute msg 296 | dur = 297 | Elm.Kernel.VirtualDom.attribute "dur" 298 | 299 | 300 | {-|-} 301 | dx : String -> Attribute msg 302 | dx = 303 | Elm.Kernel.VirtualDom.attribute "dx" 304 | 305 | 306 | {-|-} 307 | dy : String -> Attribute msg 308 | dy = 309 | Elm.Kernel.VirtualDom.attribute "dy" 310 | 311 | 312 | {-|-} 313 | edgeMode : String -> Attribute msg 314 | edgeMode = 315 | Elm.Kernel.VirtualDom.attribute "edgeMode" 316 | 317 | 318 | {-|-} 319 | elevation : String -> Attribute msg 320 | elevation = 321 | Elm.Kernel.VirtualDom.attribute "elevation" 322 | 323 | 324 | {-|-} 325 | end : String -> Attribute msg 326 | end = 327 | Elm.Kernel.VirtualDom.attribute "end" 328 | 329 | 330 | {-|-} 331 | exponent : String -> Attribute msg 332 | exponent = 333 | Elm.Kernel.VirtualDom.attribute "exponent" 334 | 335 | 336 | {-|-} 337 | externalResourcesRequired : String -> Attribute msg 338 | externalResourcesRequired = 339 | Elm.Kernel.VirtualDom.attribute "externalResourcesRequired" 340 | 341 | 342 | {-|-} 343 | filterRes : String -> Attribute msg 344 | filterRes = 345 | Elm.Kernel.VirtualDom.attribute "filterRes" 346 | 347 | 348 | {-|-} 349 | filterUnits : String -> Attribute msg 350 | filterUnits = 351 | Elm.Kernel.VirtualDom.attribute "filterUnits" 352 | 353 | 354 | {-|-} 355 | format : String -> Attribute msg 356 | format = 357 | Elm.Kernel.VirtualDom.attribute "format" 358 | 359 | 360 | {-|-} 361 | from : String -> Attribute msg 362 | from value = 363 | Elm.Kernel.VirtualDom.attribute "from" (Elm.Kernel.VirtualDom.noJavaScriptUri value) 364 | 365 | 366 | {-|-} 367 | fx : String -> Attribute msg 368 | fx = 369 | Elm.Kernel.VirtualDom.attribute "fx" 370 | 371 | 372 | {-|-} 373 | fy : String -> Attribute msg 374 | fy = 375 | Elm.Kernel.VirtualDom.attribute "fy" 376 | 377 | 378 | {-|-} 379 | g1 : String -> Attribute msg 380 | g1 = 381 | Elm.Kernel.VirtualDom.attribute "g1" 382 | 383 | 384 | {-|-} 385 | g2 : String -> Attribute msg 386 | g2 = 387 | Elm.Kernel.VirtualDom.attribute "g2" 388 | 389 | 390 | {-|-} 391 | glyphName : String -> Attribute msg 392 | glyphName = 393 | Elm.Kernel.VirtualDom.attribute "glyph-name" 394 | 395 | 396 | {-|-} 397 | glyphRef : String -> Attribute msg 398 | glyphRef = 399 | Elm.Kernel.VirtualDom.attribute "glyphRef" 400 | 401 | 402 | {-|-} 403 | gradientTransform : String -> Attribute msg 404 | gradientTransform = 405 | Elm.Kernel.VirtualDom.attribute "gradientTransform" 406 | 407 | 408 | {-|-} 409 | gradientUnits : String -> Attribute msg 410 | gradientUnits = 411 | Elm.Kernel.VirtualDom.attribute "gradientUnits" 412 | 413 | 414 | {-|-} 415 | hanging : String -> Attribute msg 416 | hanging = 417 | Elm.Kernel.VirtualDom.attribute "hanging" 418 | 419 | 420 | {-|-} 421 | height : String -> Attribute msg 422 | height = 423 | Elm.Kernel.VirtualDom.attribute "height" 424 | 425 | 426 | {-|-} 427 | horizAdvX : String -> Attribute msg 428 | horizAdvX = 429 | Elm.Kernel.VirtualDom.attribute "horiz-adv-x" 430 | 431 | 432 | {-|-} 433 | horizOriginX : String -> Attribute msg 434 | horizOriginX = 435 | Elm.Kernel.VirtualDom.attribute "horiz-origin-x" 436 | 437 | 438 | {-|-} 439 | horizOriginY : String -> Attribute msg 440 | horizOriginY = 441 | Elm.Kernel.VirtualDom.attribute "horiz-origin-y" 442 | 443 | 444 | {-|-} 445 | id : String -> Attribute msg 446 | id = 447 | Elm.Kernel.VirtualDom.attribute "id" 448 | 449 | 450 | {-|-} 451 | ideographic : String -> Attribute msg 452 | ideographic = 453 | Elm.Kernel.VirtualDom.attribute "ideographic" 454 | 455 | 456 | {-|-} 457 | in_ : String -> Attribute msg 458 | in_ = 459 | Elm.Kernel.VirtualDom.attribute "in" 460 | 461 | 462 | {-|-} 463 | in2 : String -> Attribute msg 464 | in2 = 465 | Elm.Kernel.VirtualDom.attribute "in2" 466 | 467 | 468 | {-|-} 469 | intercept : String -> Attribute msg 470 | intercept = 471 | Elm.Kernel.VirtualDom.attribute "intercept" 472 | 473 | 474 | {-|-} 475 | k : String -> Attribute msg 476 | k = 477 | Elm.Kernel.VirtualDom.attribute "k" 478 | 479 | 480 | {-|-} 481 | k1 : String -> Attribute msg 482 | k1 = 483 | Elm.Kernel.VirtualDom.attribute "k1" 484 | 485 | 486 | {-|-} 487 | k2 : String -> Attribute msg 488 | k2 = 489 | Elm.Kernel.VirtualDom.attribute "k2" 490 | 491 | 492 | {-|-} 493 | k3 : String -> Attribute msg 494 | k3 = 495 | Elm.Kernel.VirtualDom.attribute "k3" 496 | 497 | 498 | {-|-} 499 | k4 : String -> Attribute msg 500 | k4 = 501 | Elm.Kernel.VirtualDom.attribute "k4" 502 | 503 | 504 | {-|-} 505 | kernelMatrix : String -> Attribute msg 506 | kernelMatrix = 507 | Elm.Kernel.VirtualDom.attribute "kernelMatrix" 508 | 509 | 510 | {-|-} 511 | kernelUnitLength : String -> Attribute msg 512 | kernelUnitLength = 513 | Elm.Kernel.VirtualDom.attribute "kernelUnitLength" 514 | 515 | 516 | {-|-} 517 | keyPoints : String -> Attribute msg 518 | keyPoints = 519 | Elm.Kernel.VirtualDom.attribute "keyPoints" 520 | 521 | 522 | {-|-} 523 | keySplines : String -> Attribute msg 524 | keySplines = 525 | Elm.Kernel.VirtualDom.attribute "keySplines" 526 | 527 | 528 | {-|-} 529 | keyTimes : String -> Attribute msg 530 | keyTimes = 531 | Elm.Kernel.VirtualDom.attribute "keyTimes" 532 | 533 | 534 | {-|-} 535 | lang : String -> Attribute msg 536 | lang = 537 | Elm.Kernel.VirtualDom.attribute "lang" 538 | 539 | 540 | {-|-} 541 | lengthAdjust : String -> Attribute msg 542 | lengthAdjust = 543 | Elm.Kernel.VirtualDom.attribute "lengthAdjust" 544 | 545 | 546 | {-|-} 547 | limitingConeAngle : String -> Attribute msg 548 | limitingConeAngle = 549 | Elm.Kernel.VirtualDom.attribute "limitingConeAngle" 550 | 551 | 552 | {-|-} 553 | local : String -> Attribute msg 554 | local = 555 | Elm.Kernel.VirtualDom.attribute "local" 556 | 557 | 558 | {-|-} 559 | markerHeight : String -> Attribute msg 560 | markerHeight = 561 | Elm.Kernel.VirtualDom.attribute "markerHeight" 562 | 563 | 564 | {-|-} 565 | markerUnits : String -> Attribute msg 566 | markerUnits = 567 | Elm.Kernel.VirtualDom.attribute "markerUnits" 568 | 569 | 570 | {-|-} 571 | markerWidth : String -> Attribute msg 572 | markerWidth = 573 | Elm.Kernel.VirtualDom.attribute "markerWidth" 574 | 575 | 576 | {-|-} 577 | maskContentUnits : String -> Attribute msg 578 | maskContentUnits = 579 | Elm.Kernel.VirtualDom.attribute "maskContentUnits" 580 | 581 | 582 | {-|-} 583 | maskUnits : String -> Attribute msg 584 | maskUnits = 585 | Elm.Kernel.VirtualDom.attribute "maskUnits" 586 | 587 | 588 | {-|-} 589 | mathematical : String -> Attribute msg 590 | mathematical = 591 | Elm.Kernel.VirtualDom.attribute "mathematical" 592 | 593 | 594 | {-|-} 595 | max : String -> Attribute msg 596 | max = 597 | Elm.Kernel.VirtualDom.attribute "max" 598 | 599 | 600 | {-|-} 601 | media : String -> Attribute msg 602 | media = 603 | Elm.Kernel.VirtualDom.attribute "media" 604 | 605 | 606 | {-|-} 607 | method : String -> Attribute msg 608 | method = 609 | Elm.Kernel.VirtualDom.attribute "method" 610 | 611 | 612 | {-|-} 613 | min : String -> Attribute msg 614 | min = 615 | Elm.Kernel.VirtualDom.attribute "min" 616 | 617 | 618 | {-|-} 619 | mode : String -> Attribute msg 620 | mode = 621 | Elm.Kernel.VirtualDom.attribute "mode" 622 | 623 | 624 | {-|-} 625 | name : String -> Attribute msg 626 | name = 627 | Elm.Kernel.VirtualDom.attribute "name" 628 | 629 | 630 | {-|-} 631 | numOctaves : String -> Attribute msg 632 | numOctaves = 633 | Elm.Kernel.VirtualDom.attribute "numOctaves" 634 | 635 | 636 | {-|-} 637 | offset : String -> Attribute msg 638 | offset = 639 | Elm.Kernel.VirtualDom.attribute "offset" 640 | 641 | 642 | {-|-} 643 | operator : String -> Attribute msg 644 | operator = 645 | Elm.Kernel.VirtualDom.attribute "operator" 646 | 647 | 648 | {-|-} 649 | order : String -> Attribute msg 650 | order = 651 | Elm.Kernel.VirtualDom.attribute "order" 652 | 653 | 654 | {-|-} 655 | orient : String -> Attribute msg 656 | orient = 657 | Elm.Kernel.VirtualDom.attribute "orient" 658 | 659 | 660 | {-|-} 661 | orientation : String -> Attribute msg 662 | orientation = 663 | Elm.Kernel.VirtualDom.attribute "orientation" 664 | 665 | 666 | {-|-} 667 | origin : String -> Attribute msg 668 | origin = 669 | Elm.Kernel.VirtualDom.attribute "origin" 670 | 671 | 672 | {-|-} 673 | overlinePosition : String -> Attribute msg 674 | overlinePosition = 675 | Elm.Kernel.VirtualDom.attribute "overline-position" 676 | 677 | 678 | {-|-} 679 | overlineThickness : String -> Attribute msg 680 | overlineThickness = 681 | Elm.Kernel.VirtualDom.attribute "overline-thickness" 682 | 683 | 684 | {-|-} 685 | panose1 : String -> Attribute msg 686 | panose1 = 687 | Elm.Kernel.VirtualDom.attribute "panose-1" 688 | 689 | 690 | {-|-} 691 | path : String -> Attribute msg 692 | path = 693 | Elm.Kernel.VirtualDom.attribute "path" 694 | 695 | 696 | {-|-} 697 | pathLength : String -> Attribute msg 698 | pathLength = 699 | Elm.Kernel.VirtualDom.attribute "pathLength" 700 | 701 | 702 | {-|-} 703 | patternContentUnits : String -> Attribute msg 704 | patternContentUnits = 705 | Elm.Kernel.VirtualDom.attribute "patternContentUnits" 706 | 707 | 708 | {-|-} 709 | patternTransform : String -> Attribute msg 710 | patternTransform = 711 | Elm.Kernel.VirtualDom.attribute "patternTransform" 712 | 713 | 714 | {-|-} 715 | patternUnits : String -> Attribute msg 716 | patternUnits = 717 | Elm.Kernel.VirtualDom.attribute "patternUnits" 718 | 719 | 720 | {-|-} 721 | pointOrder : String -> Attribute msg 722 | pointOrder = 723 | Elm.Kernel.VirtualDom.attribute "point-order" 724 | 725 | 726 | {-|-} 727 | points : String -> Attribute msg 728 | points = 729 | Elm.Kernel.VirtualDom.attribute "points" 730 | 731 | 732 | {-|-} 733 | pointsAtX : String -> Attribute msg 734 | pointsAtX = 735 | Elm.Kernel.VirtualDom.attribute "pointsAtX" 736 | 737 | 738 | {-|-} 739 | pointsAtY : String -> Attribute msg 740 | pointsAtY = 741 | Elm.Kernel.VirtualDom.attribute "pointsAtY" 742 | 743 | 744 | {-|-} 745 | pointsAtZ : String -> Attribute msg 746 | pointsAtZ = 747 | Elm.Kernel.VirtualDom.attribute "pointsAtZ" 748 | 749 | 750 | {-|-} 751 | preserveAlpha : String -> Attribute msg 752 | preserveAlpha = 753 | Elm.Kernel.VirtualDom.attribute "preserveAlpha" 754 | 755 | 756 | {-|-} 757 | preserveAspectRatio : String -> Attribute msg 758 | preserveAspectRatio = 759 | Elm.Kernel.VirtualDom.attribute "preserveAspectRatio" 760 | 761 | 762 | {-|-} 763 | primitiveUnits : String -> Attribute msg 764 | primitiveUnits = 765 | Elm.Kernel.VirtualDom.attribute "primitiveUnits" 766 | 767 | 768 | {-|-} 769 | r : String -> Attribute msg 770 | r = 771 | Elm.Kernel.VirtualDom.attribute "r" 772 | 773 | 774 | {-|-} 775 | radius : String -> Attribute msg 776 | radius = 777 | Elm.Kernel.VirtualDom.attribute "radius" 778 | 779 | 780 | {-|-} 781 | refX : String -> Attribute msg 782 | refX = 783 | Elm.Kernel.VirtualDom.attribute "refX" 784 | 785 | 786 | {-|-} 787 | refY : String -> Attribute msg 788 | refY = 789 | Elm.Kernel.VirtualDom.attribute "refY" 790 | 791 | 792 | {-|-} 793 | renderingIntent : String -> Attribute msg 794 | renderingIntent = 795 | Elm.Kernel.VirtualDom.attribute "rendering-intent" 796 | 797 | 798 | {-|-} 799 | repeatCount : String -> Attribute msg 800 | repeatCount = 801 | Elm.Kernel.VirtualDom.attribute "repeatCount" 802 | 803 | 804 | {-|-} 805 | repeatDur : String -> Attribute msg 806 | repeatDur = 807 | Elm.Kernel.VirtualDom.attribute "repeatDur" 808 | 809 | 810 | {-|-} 811 | requiredExtensions : String -> Attribute msg 812 | requiredExtensions = 813 | Elm.Kernel.VirtualDom.attribute "requiredExtensions" 814 | 815 | 816 | {-|-} 817 | requiredFeatures : String -> Attribute msg 818 | requiredFeatures = 819 | Elm.Kernel.VirtualDom.attribute "requiredFeatures" 820 | 821 | 822 | {-|-} 823 | restart : String -> Attribute msg 824 | restart = 825 | Elm.Kernel.VirtualDom.attribute "restart" 826 | 827 | 828 | {-|-} 829 | result : String -> Attribute msg 830 | result = 831 | Elm.Kernel.VirtualDom.attribute "result" 832 | 833 | 834 | {-|-} 835 | rotate : String -> Attribute msg 836 | rotate = 837 | Elm.Kernel.VirtualDom.attribute "rotate" 838 | 839 | 840 | {-|-} 841 | rx : String -> Attribute msg 842 | rx = 843 | Elm.Kernel.VirtualDom.attribute "rx" 844 | 845 | 846 | {-|-} 847 | ry : String -> Attribute msg 848 | ry = 849 | Elm.Kernel.VirtualDom.attribute "ry" 850 | 851 | 852 | {-|-} 853 | scale : String -> Attribute msg 854 | scale = 855 | Elm.Kernel.VirtualDom.attribute "scale" 856 | 857 | 858 | {-|-} 859 | seed : String -> Attribute msg 860 | seed = 861 | Elm.Kernel.VirtualDom.attribute "seed" 862 | 863 | 864 | {-|-} 865 | slope : String -> Attribute msg 866 | slope = 867 | Elm.Kernel.VirtualDom.attribute "slope" 868 | 869 | 870 | {-|-} 871 | spacing : String -> Attribute msg 872 | spacing = 873 | Elm.Kernel.VirtualDom.attribute "spacing" 874 | 875 | 876 | {-|-} 877 | specularConstant : String -> Attribute msg 878 | specularConstant = 879 | Elm.Kernel.VirtualDom.attribute "specularConstant" 880 | 881 | 882 | {-|-} 883 | specularExponent : String -> Attribute msg 884 | specularExponent = 885 | Elm.Kernel.VirtualDom.attribute "specularExponent" 886 | 887 | 888 | {-|-} 889 | speed : String -> Attribute msg 890 | speed = 891 | Elm.Kernel.VirtualDom.attribute "speed" 892 | 893 | 894 | {-|-} 895 | spreadMethod : String -> Attribute msg 896 | spreadMethod = 897 | Elm.Kernel.VirtualDom.attribute "spreadMethod" 898 | 899 | 900 | {-|-} 901 | startOffset : String -> Attribute msg 902 | startOffset = 903 | Elm.Kernel.VirtualDom.attribute "startOffset" 904 | 905 | 906 | {-|-} 907 | stdDeviation : String -> Attribute msg 908 | stdDeviation = 909 | Elm.Kernel.VirtualDom.attribute "stdDeviation" 910 | 911 | 912 | {-|-} 913 | stemh : String -> Attribute msg 914 | stemh = 915 | Elm.Kernel.VirtualDom.attribute "stemh" 916 | 917 | 918 | {-|-} 919 | stemv : String -> Attribute msg 920 | stemv = 921 | Elm.Kernel.VirtualDom.attribute "stemv" 922 | 923 | 924 | {-|-} 925 | stitchTiles : String -> Attribute msg 926 | stitchTiles = 927 | Elm.Kernel.VirtualDom.attribute "stitchTiles" 928 | 929 | 930 | {-|-} 931 | strikethroughPosition : String -> Attribute msg 932 | strikethroughPosition = 933 | Elm.Kernel.VirtualDom.attribute "strikethrough-position" 934 | 935 | 936 | {-|-} 937 | strikethroughThickness : String -> Attribute msg 938 | strikethroughThickness = 939 | Elm.Kernel.VirtualDom.attribute "strikethrough-thickness" 940 | 941 | 942 | {-|-} 943 | string : String -> Attribute msg 944 | string = 945 | Elm.Kernel.VirtualDom.attribute "string" 946 | 947 | 948 | {-|-} 949 | style : String -> Attribute msg 950 | style = 951 | Elm.Kernel.VirtualDom.attribute "style" 952 | 953 | 954 | {-|-} 955 | surfaceScale : String -> Attribute msg 956 | surfaceScale = 957 | Elm.Kernel.VirtualDom.attribute "surfaceScale" 958 | 959 | 960 | {-|-} 961 | systemLanguage : String -> Attribute msg 962 | systemLanguage = 963 | Elm.Kernel.VirtualDom.attribute "systemLanguage" 964 | 965 | 966 | {-|-} 967 | tableValues : String -> Attribute msg 968 | tableValues = 969 | Elm.Kernel.VirtualDom.attribute "tableValues" 970 | 971 | 972 | {-|-} 973 | target : String -> Attribute msg 974 | target = 975 | Elm.Kernel.VirtualDom.attribute "target" 976 | 977 | 978 | {-|-} 979 | targetX : String -> Attribute msg 980 | targetX = 981 | Elm.Kernel.VirtualDom.attribute "targetX" 982 | 983 | 984 | {-|-} 985 | targetY : String -> Attribute msg 986 | targetY = 987 | Elm.Kernel.VirtualDom.attribute "targetY" 988 | 989 | 990 | {-|-} 991 | textLength : String -> Attribute msg 992 | textLength = 993 | Elm.Kernel.VirtualDom.attribute "textLength" 994 | 995 | 996 | {-|-} 997 | title : String -> Attribute msg 998 | title = 999 | Elm.Kernel.VirtualDom.attribute "title" 1000 | 1001 | 1002 | {-|-} 1003 | to : String -> Attribute msg 1004 | to value = 1005 | Elm.Kernel.VirtualDom.attribute "to" (Elm.Kernel.VirtualDom.noJavaScriptUri value) 1006 | 1007 | 1008 | {-|-} 1009 | transform : String -> Attribute msg 1010 | transform = 1011 | Elm.Kernel.VirtualDom.attribute "transform" 1012 | 1013 | 1014 | {-|-} 1015 | type_ : String -> Attribute msg 1016 | type_ = 1017 | Elm.Kernel.VirtualDom.attribute "type" 1018 | 1019 | 1020 | {-|-} 1021 | u1 : String -> Attribute msg 1022 | u1 = 1023 | Elm.Kernel.VirtualDom.attribute "u1" 1024 | 1025 | 1026 | {-|-} 1027 | u2 : String -> Attribute msg 1028 | u2 = 1029 | Elm.Kernel.VirtualDom.attribute "u2" 1030 | 1031 | 1032 | {-|-} 1033 | underlinePosition : String -> Attribute msg 1034 | underlinePosition = 1035 | Elm.Kernel.VirtualDom.attribute "underline-position" 1036 | 1037 | 1038 | {-|-} 1039 | underlineThickness : String -> Attribute msg 1040 | underlineThickness = 1041 | Elm.Kernel.VirtualDom.attribute "underline-thickness" 1042 | 1043 | 1044 | {-|-} 1045 | unicode : String -> Attribute msg 1046 | unicode = 1047 | Elm.Kernel.VirtualDom.attribute "unicode" 1048 | 1049 | 1050 | {-|-} 1051 | unicodeRange : String -> Attribute msg 1052 | unicodeRange = 1053 | Elm.Kernel.VirtualDom.attribute "unicode-range" 1054 | 1055 | 1056 | {-|-} 1057 | unitsPerEm : String -> Attribute msg 1058 | unitsPerEm = 1059 | Elm.Kernel.VirtualDom.attribute "units-per-em" 1060 | 1061 | 1062 | {-|-} 1063 | vAlphabetic : String -> Attribute msg 1064 | vAlphabetic = 1065 | Elm.Kernel.VirtualDom.attribute "v-alphabetic" 1066 | 1067 | 1068 | {-|-} 1069 | vHanging : String -> Attribute msg 1070 | vHanging = 1071 | Elm.Kernel.VirtualDom.attribute "v-hanging" 1072 | 1073 | 1074 | {-|-} 1075 | vIdeographic : String -> Attribute msg 1076 | vIdeographic = 1077 | Elm.Kernel.VirtualDom.attribute "v-ideographic" 1078 | 1079 | 1080 | {-|-} 1081 | vMathematical : String -> Attribute msg 1082 | vMathematical = 1083 | Elm.Kernel.VirtualDom.attribute "v-mathematical" 1084 | 1085 | 1086 | {-|-} 1087 | values : String -> Attribute msg 1088 | values value = 1089 | Elm.Kernel.VirtualDom.attribute "values" (Elm.Kernel.VirtualDom.noJavaScriptUri value) 1090 | 1091 | 1092 | {-|-} 1093 | version : String -> Attribute msg 1094 | version = 1095 | Elm.Kernel.VirtualDom.attribute "version" 1096 | 1097 | 1098 | {-|-} 1099 | vertAdvY : String -> Attribute msg 1100 | vertAdvY = 1101 | Elm.Kernel.VirtualDom.attribute "vert-adv-y" 1102 | 1103 | 1104 | {-|-} 1105 | vertOriginX : String -> Attribute msg 1106 | vertOriginX = 1107 | Elm.Kernel.VirtualDom.attribute "vert-origin-x" 1108 | 1109 | 1110 | {-|-} 1111 | vertOriginY : String -> Attribute msg 1112 | vertOriginY = 1113 | Elm.Kernel.VirtualDom.attribute "vert-origin-y" 1114 | 1115 | 1116 | {-|-} 1117 | viewBox : String -> Attribute msg 1118 | viewBox = 1119 | Elm.Kernel.VirtualDom.attribute "viewBox" 1120 | 1121 | 1122 | {-|-} 1123 | viewTarget : String -> Attribute msg 1124 | viewTarget = 1125 | Elm.Kernel.VirtualDom.attribute "viewTarget" 1126 | 1127 | 1128 | {-|-} 1129 | width : String -> Attribute msg 1130 | width = 1131 | Elm.Kernel.VirtualDom.attribute "width" 1132 | 1133 | 1134 | {-|-} 1135 | widths : String -> Attribute msg 1136 | widths = 1137 | Elm.Kernel.VirtualDom.attribute "widths" 1138 | 1139 | 1140 | {-|-} 1141 | x : String -> Attribute msg 1142 | x = 1143 | Elm.Kernel.VirtualDom.attribute "x" 1144 | 1145 | 1146 | {-|-} 1147 | xHeight : String -> Attribute msg 1148 | xHeight = 1149 | Elm.Kernel.VirtualDom.attribute "x-height" 1150 | 1151 | 1152 | {-|-} 1153 | x1 : String -> Attribute msg 1154 | x1 = 1155 | Elm.Kernel.VirtualDom.attribute "x1" 1156 | 1157 | 1158 | {-|-} 1159 | x2 : String -> Attribute msg 1160 | x2 = 1161 | Elm.Kernel.VirtualDom.attribute "x2" 1162 | 1163 | 1164 | {-|-} 1165 | xChannelSelector : String -> Attribute msg 1166 | xChannelSelector = 1167 | Elm.Kernel.VirtualDom.attribute "xChannelSelector" 1168 | 1169 | 1170 | {-|-} 1171 | xlinkActuate : String -> Attribute msg 1172 | xlinkActuate = 1173 | Elm.Kernel.VirtualDom.attributeNS "http://www.w3.org/1999/xlink" "xlink:actuate" 1174 | 1175 | 1176 | {-|-} 1177 | xlinkArcrole : String -> Attribute msg 1178 | xlinkArcrole = 1179 | Elm.Kernel.VirtualDom.attributeNS "http://www.w3.org/1999/xlink" "xlink:arcrole" 1180 | 1181 | 1182 | {-|-} 1183 | xlinkHref : String -> Attribute msg 1184 | xlinkHref value = 1185 | Elm.Kernel.VirtualDom.attributeNS "http://www.w3.org/1999/xlink" "xlink:href" (Elm.Kernel.VirtualDom.noJavaScriptUri value) 1186 | 1187 | 1188 | {-|-} 1189 | xlinkRole : String -> Attribute msg 1190 | xlinkRole = 1191 | Elm.Kernel.VirtualDom.attributeNS "http://www.w3.org/1999/xlink" "xlink:role" 1192 | 1193 | 1194 | {-|-} 1195 | xlinkShow : String -> Attribute msg 1196 | xlinkShow = 1197 | Elm.Kernel.VirtualDom.attributeNS "http://www.w3.org/1999/xlink" "xlink:show" 1198 | 1199 | 1200 | {-|-} 1201 | xlinkTitle : String -> Attribute msg 1202 | xlinkTitle = 1203 | Elm.Kernel.VirtualDom.attributeNS "http://www.w3.org/1999/xlink" "xlink:title" 1204 | 1205 | 1206 | {-|-} 1207 | xlinkType : String -> Attribute msg 1208 | xlinkType = 1209 | Elm.Kernel.VirtualDom.attributeNS "http://www.w3.org/1999/xlink" "xlink:type" 1210 | 1211 | 1212 | {-|-} 1213 | xmlBase : String -> Attribute msg 1214 | xmlBase = 1215 | Elm.Kernel.VirtualDom.attributeNS "http://www.w3.org/XML/1998/namespace" "xml:base" 1216 | 1217 | 1218 | {-|-} 1219 | xmlLang : String -> Attribute msg 1220 | xmlLang = 1221 | Elm.Kernel.VirtualDom.attributeNS "http://www.w3.org/XML/1998/namespace" "xml:lang" 1222 | 1223 | 1224 | {-|-} 1225 | xmlSpace : String -> Attribute msg 1226 | xmlSpace = 1227 | Elm.Kernel.VirtualDom.attributeNS "http://www.w3.org/XML/1998/namespace" "xml:space" 1228 | 1229 | 1230 | {-|-} 1231 | y : String -> Attribute msg 1232 | y = 1233 | Elm.Kernel.VirtualDom.attribute "y" 1234 | 1235 | 1236 | {-|-} 1237 | y1 : String -> Attribute msg 1238 | y1 = 1239 | Elm.Kernel.VirtualDom.attribute "y1" 1240 | 1241 | 1242 | {-|-} 1243 | y2 : String -> Attribute msg 1244 | y2 = 1245 | Elm.Kernel.VirtualDom.attribute "y2" 1246 | 1247 | 1248 | {-|-} 1249 | yChannelSelector : String -> Attribute msg 1250 | yChannelSelector = 1251 | Elm.Kernel.VirtualDom.attribute "yChannelSelector" 1252 | 1253 | 1254 | {-|-} 1255 | z : String -> Attribute msg 1256 | z = 1257 | Elm.Kernel.VirtualDom.attribute "z" 1258 | 1259 | 1260 | {-|-} 1261 | zoomAndPan : String -> Attribute msg 1262 | zoomAndPan = 1263 | Elm.Kernel.VirtualDom.attribute "zoomAndPan" 1264 | 1265 | 1266 | 1267 | -- PRESENTATION ATTRIBUTES 1268 | 1269 | 1270 | {-|-} 1271 | alignmentBaseline : String -> Attribute msg 1272 | alignmentBaseline = 1273 | Elm.Kernel.VirtualDom.attribute "alignment-baseline" 1274 | 1275 | 1276 | {-|-} 1277 | baselineShift : String -> Attribute msg 1278 | baselineShift = 1279 | Elm.Kernel.VirtualDom.attribute "baseline-shift" 1280 | 1281 | 1282 | {-|-} 1283 | clipPath : String -> Attribute msg 1284 | clipPath = 1285 | Elm.Kernel.VirtualDom.attribute "clip-path" 1286 | 1287 | 1288 | {-|-} 1289 | clipRule : String -> Attribute msg 1290 | clipRule = 1291 | Elm.Kernel.VirtualDom.attribute "clip-rule" 1292 | 1293 | 1294 | {-|-} 1295 | clip : String -> Attribute msg 1296 | clip = 1297 | Elm.Kernel.VirtualDom.attribute "clip" 1298 | 1299 | 1300 | {-|-} 1301 | colorInterpolationFilters : String -> Attribute msg 1302 | colorInterpolationFilters = 1303 | Elm.Kernel.VirtualDom.attribute "color-interpolation-filters" 1304 | 1305 | 1306 | {-|-} 1307 | colorInterpolation : String -> Attribute msg 1308 | colorInterpolation = 1309 | Elm.Kernel.VirtualDom.attribute "color-interpolation" 1310 | 1311 | 1312 | {-|-} 1313 | colorProfile : String -> Attribute msg 1314 | colorProfile = 1315 | Elm.Kernel.VirtualDom.attribute "color-profile" 1316 | 1317 | 1318 | {-|-} 1319 | colorRendering : String -> Attribute msg 1320 | colorRendering = 1321 | Elm.Kernel.VirtualDom.attribute "color-rendering" 1322 | 1323 | 1324 | {-|-} 1325 | color : String -> Attribute msg 1326 | color = 1327 | Elm.Kernel.VirtualDom.attribute "color" 1328 | 1329 | 1330 | {-|-} 1331 | cursor : String -> Attribute msg 1332 | cursor = 1333 | Elm.Kernel.VirtualDom.attribute "cursor" 1334 | 1335 | 1336 | {-|-} 1337 | direction : String -> Attribute msg 1338 | direction = 1339 | Elm.Kernel.VirtualDom.attribute "direction" 1340 | 1341 | 1342 | {-|-} 1343 | display : String -> Attribute msg 1344 | display = 1345 | Elm.Kernel.VirtualDom.attribute "display" 1346 | 1347 | 1348 | {-|-} 1349 | dominantBaseline : String -> Attribute msg 1350 | dominantBaseline = 1351 | Elm.Kernel.VirtualDom.attribute "dominant-baseline" 1352 | 1353 | 1354 | {-|-} 1355 | enableBackground : String -> Attribute msg 1356 | enableBackground = 1357 | Elm.Kernel.VirtualDom.attribute "enable-background" 1358 | 1359 | 1360 | {-|-} 1361 | fillOpacity : String -> Attribute msg 1362 | fillOpacity = 1363 | Elm.Kernel.VirtualDom.attribute "fill-opacity" 1364 | 1365 | 1366 | {-|-} 1367 | fillRule : String -> Attribute msg 1368 | fillRule = 1369 | Elm.Kernel.VirtualDom.attribute "fill-rule" 1370 | 1371 | 1372 | {-|-} 1373 | fill : String -> Attribute msg 1374 | fill = 1375 | Elm.Kernel.VirtualDom.attribute "fill" 1376 | 1377 | 1378 | {-|-} 1379 | filter : String -> Attribute msg 1380 | filter = 1381 | Elm.Kernel.VirtualDom.attribute "filter" 1382 | 1383 | 1384 | {-|-} 1385 | floodColor : String -> Attribute msg 1386 | floodColor = 1387 | Elm.Kernel.VirtualDom.attribute "flood-color" 1388 | 1389 | 1390 | {-|-} 1391 | floodOpacity : String -> Attribute msg 1392 | floodOpacity = 1393 | Elm.Kernel.VirtualDom.attribute "flood-opacity" 1394 | 1395 | 1396 | {-|-} 1397 | fontFamily : String -> Attribute msg 1398 | fontFamily = 1399 | Elm.Kernel.VirtualDom.attribute "font-family" 1400 | 1401 | 1402 | {-|-} 1403 | fontSizeAdjust : String -> Attribute msg 1404 | fontSizeAdjust = 1405 | Elm.Kernel.VirtualDom.attribute "font-size-adjust" 1406 | 1407 | 1408 | {-|-} 1409 | fontSize : String -> Attribute msg 1410 | fontSize = 1411 | Elm.Kernel.VirtualDom.attribute "font-size" 1412 | 1413 | 1414 | {-|-} 1415 | fontStretch : String -> Attribute msg 1416 | fontStretch = 1417 | Elm.Kernel.VirtualDom.attribute "font-stretch" 1418 | 1419 | 1420 | {-|-} 1421 | fontStyle : String -> Attribute msg 1422 | fontStyle = 1423 | Elm.Kernel.VirtualDom.attribute "font-style" 1424 | 1425 | 1426 | {-|-} 1427 | fontVariant : String -> Attribute msg 1428 | fontVariant = 1429 | Elm.Kernel.VirtualDom.attribute "font-variant" 1430 | 1431 | 1432 | {-|-} 1433 | fontWeight : String -> Attribute msg 1434 | fontWeight = 1435 | Elm.Kernel.VirtualDom.attribute "font-weight" 1436 | 1437 | 1438 | {-|-} 1439 | glyphOrientationHorizontal : String -> Attribute msg 1440 | glyphOrientationHorizontal = 1441 | Elm.Kernel.VirtualDom.attribute "glyph-orientation-horizontal" 1442 | 1443 | 1444 | {-|-} 1445 | glyphOrientationVertical : String -> Attribute msg 1446 | glyphOrientationVertical = 1447 | Elm.Kernel.VirtualDom.attribute "glyph-orientation-vertical" 1448 | 1449 | 1450 | {-|-} 1451 | imageRendering : String -> Attribute msg 1452 | imageRendering = 1453 | Elm.Kernel.VirtualDom.attribute "image-rendering" 1454 | 1455 | 1456 | {-|-} 1457 | kerning : String -> Attribute msg 1458 | kerning = 1459 | Elm.Kernel.VirtualDom.attribute "kerning" 1460 | 1461 | 1462 | {-|-} 1463 | letterSpacing : String -> Attribute msg 1464 | letterSpacing = 1465 | Elm.Kernel.VirtualDom.attribute "letter-spacing" 1466 | 1467 | 1468 | {-|-} 1469 | lightingColor : String -> Attribute msg 1470 | lightingColor = 1471 | Elm.Kernel.VirtualDom.attribute "lighting-color" 1472 | 1473 | 1474 | {-|-} 1475 | markerEnd : String -> Attribute msg 1476 | markerEnd = 1477 | Elm.Kernel.VirtualDom.attribute "marker-end" 1478 | 1479 | 1480 | {-|-} 1481 | markerMid : String -> Attribute msg 1482 | markerMid = 1483 | Elm.Kernel.VirtualDom.attribute "marker-mid" 1484 | 1485 | 1486 | {-|-} 1487 | markerStart : String -> Attribute msg 1488 | markerStart = 1489 | Elm.Kernel.VirtualDom.attribute "marker-start" 1490 | 1491 | 1492 | {-|-} 1493 | mask : String -> Attribute msg 1494 | mask = 1495 | Elm.Kernel.VirtualDom.attribute "mask" 1496 | 1497 | 1498 | {-|-} 1499 | opacity : String -> Attribute msg 1500 | opacity = 1501 | Elm.Kernel.VirtualDom.attribute "opacity" 1502 | 1503 | 1504 | {-|-} 1505 | overflow : String -> Attribute msg 1506 | overflow = 1507 | Elm.Kernel.VirtualDom.attribute "overflow" 1508 | 1509 | 1510 | {-|-} 1511 | pointerEvents : String -> Attribute msg 1512 | pointerEvents = 1513 | Elm.Kernel.VirtualDom.attribute "pointer-events" 1514 | 1515 | 1516 | {-|-} 1517 | shapeRendering : String -> Attribute msg 1518 | shapeRendering = 1519 | Elm.Kernel.VirtualDom.attribute "shape-rendering" 1520 | 1521 | 1522 | {-|-} 1523 | stopColor : String -> Attribute msg 1524 | stopColor = 1525 | Elm.Kernel.VirtualDom.attribute "stop-color" 1526 | 1527 | 1528 | {-|-} 1529 | stopOpacity : String -> Attribute msg 1530 | stopOpacity = 1531 | Elm.Kernel.VirtualDom.attribute "stop-opacity" 1532 | 1533 | 1534 | {-|-} 1535 | strokeDasharray : String -> Attribute msg 1536 | strokeDasharray = 1537 | Elm.Kernel.VirtualDom.attribute "stroke-dasharray" 1538 | 1539 | 1540 | {-|-} 1541 | strokeDashoffset : String -> Attribute msg 1542 | strokeDashoffset = 1543 | Elm.Kernel.VirtualDom.attribute "stroke-dashoffset" 1544 | 1545 | 1546 | {-|-} 1547 | strokeLinecap : String -> Attribute msg 1548 | strokeLinecap = 1549 | Elm.Kernel.VirtualDom.attribute "stroke-linecap" 1550 | 1551 | 1552 | {-|-} 1553 | strokeLinejoin : String -> Attribute msg 1554 | strokeLinejoin = 1555 | Elm.Kernel.VirtualDom.attribute "stroke-linejoin" 1556 | 1557 | 1558 | {-|-} 1559 | strokeMiterlimit : String -> Attribute msg 1560 | strokeMiterlimit = 1561 | Elm.Kernel.VirtualDom.attribute "stroke-miterlimit" 1562 | 1563 | 1564 | {-|-} 1565 | strokeOpacity : String -> Attribute msg 1566 | strokeOpacity = 1567 | Elm.Kernel.VirtualDom.attribute "stroke-opacity" 1568 | 1569 | 1570 | {-|-} 1571 | strokeWidth : String -> Attribute msg 1572 | strokeWidth = 1573 | Elm.Kernel.VirtualDom.attribute "stroke-width" 1574 | 1575 | 1576 | {-|-} 1577 | stroke : String -> Attribute msg 1578 | stroke = 1579 | Elm.Kernel.VirtualDom.attribute "stroke" 1580 | 1581 | 1582 | {-|-} 1583 | textAnchor : String -> Attribute msg 1584 | textAnchor = 1585 | Elm.Kernel.VirtualDom.attribute "text-anchor" 1586 | 1587 | 1588 | {-|-} 1589 | textDecoration : String -> Attribute msg 1590 | textDecoration = 1591 | Elm.Kernel.VirtualDom.attribute "text-decoration" 1592 | 1593 | 1594 | {-|-} 1595 | textRendering : String -> Attribute msg 1596 | textRendering = 1597 | Elm.Kernel.VirtualDom.attribute "text-rendering" 1598 | 1599 | 1600 | {-|-} 1601 | unicodeBidi : String -> Attribute msg 1602 | unicodeBidi = 1603 | Elm.Kernel.VirtualDom.attribute "unicode-bidi" 1604 | 1605 | 1606 | {-|-} 1607 | visibility : String -> Attribute msg 1608 | visibility = 1609 | Elm.Kernel.VirtualDom.attribute "visibility" 1610 | 1611 | 1612 | {-|-} 1613 | wordSpacing : String -> Attribute msg 1614 | wordSpacing = 1615 | Elm.Kernel.VirtualDom.attribute "word-spacing" 1616 | 1617 | 1618 | {-|-} 1619 | writingMode : String -> Attribute msg 1620 | writingMode = 1621 | Elm.Kernel.VirtualDom.attribute "writing-mode" 1622 | 1623 | --------------------------------------------------------------------------------