packages feed

jsaddle-dom-0.10.0.0: src/JSDOM/Generated/SVGAngle.hs

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from SVG2 (webref). Do not edit.
module JSDOM.Generated.SVGAngle
       (convertToSpecifiedUnits, newValueSpecifiedUnits, getUnitType, setValue, getValue, setValueInSpecifiedUnits, getValueInSpecifiedUnits, setValueAsString, getValueAsString, pattern SVG_ANGLETYPE_UNKNOWN, pattern SVG_ANGLETYPE_UNSPECIFIED, pattern SVG_ANGLETYPE_DEG, pattern SVG_ANGLETYPE_RAD, pattern SVG_ANGLETYPE_GRAD, SVGAngle(..), gTypeSVGAngle)
       where
import Prelude ((.), (==), (>>=), (<$>), (++), Bool(..), Maybe(..), IO, Int, Word, Double, Float)
import qualified Prelude as P
import Control.Monad (void)
import Control.Lens.Operators ((^.))
import Language.Javascript.JSaddle (JSM, JSVal, JSString, toJSVal, valToBool, valToNumber, js, jss, jsf, jsg, new, function, asyncFunction, jsUndefined, jsNull)
import JSDOM.Types
import qualified JSDOM.Types as Types
import JSDOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import JSDOM.Generated.Enums

-- | <https://developer.mozilla.org/docs/Web/API/SVGAngle/convertToSpecifiedUnits MDN SVGAngle.convertToSpecifiedUnits documentation>
convertToSpecifiedUnits :: (MonadDOM m) => SVGAngle -> Word -> m ()
convertToSpecifiedUnits self unitType = liftDOM (void (self ^. jsf "convertToSpecifiedUnits" [toJSVal unitType]))

-- | <https://developer.mozilla.org/docs/Web/API/SVGAngle/newValueSpecifiedUnits MDN SVGAngle.newValueSpecifiedUnits documentation>
newValueSpecifiedUnits :: (MonadDOM m) => SVGAngle -> Word -> Float -> m ()
newValueSpecifiedUnits self unitType valueInSpecifiedUnits = liftDOM (void (self ^. jsf "newValueSpecifiedUnits" [toJSVal unitType, toJSVal valueInSpecifiedUnits]))

-- | <https://developer.mozilla.org/docs/Web/API/SVGAngle/unitType MDN SVGAngle.unitType documentation>
getUnitType :: (MonadDOM m) => SVGAngle -> m Word
getUnitType self = liftDOM ((P.round <$> ((self ^. js "unitType") >>= valToNumber)))

-- | <https://developer.mozilla.org/docs/Web/API/SVGAngle/value MDN SVGAngle.value documentation>
setValue :: (MonadDOM m) => SVGAngle -> Float -> m ()
setValue self val = liftDOM (void (self ^. jss "value" (toJSVal val)))

-- | <https://developer.mozilla.org/docs/Web/API/SVGAngle/value MDN SVGAngle.value documentation>
getValue :: (MonadDOM m) => SVGAngle -> m Float
getValue self = liftDOM ((P.realToFrac <$> ((self ^. js "value") >>= valToNumber)))

-- | <https://developer.mozilla.org/docs/Web/API/SVGAngle/valueInSpecifiedUnits MDN SVGAngle.valueInSpecifiedUnits documentation>
setValueInSpecifiedUnits :: (MonadDOM m) => SVGAngle -> Float -> m ()
setValueInSpecifiedUnits self val = liftDOM (void (self ^. jss "valueInSpecifiedUnits" (toJSVal val)))

-- | <https://developer.mozilla.org/docs/Web/API/SVGAngle/valueInSpecifiedUnits MDN SVGAngle.valueInSpecifiedUnits documentation>
getValueInSpecifiedUnits :: (MonadDOM m) => SVGAngle -> m Float
getValueInSpecifiedUnits self = liftDOM ((P.realToFrac <$> ((self ^. js "valueInSpecifiedUnits") >>= valToNumber)))

-- | <https://developer.mozilla.org/docs/Web/API/SVGAngle/valueAsString MDN SVGAngle.valueAsString documentation>
setValueAsString :: (MonadDOM m, ToJSString val) => SVGAngle -> val -> m ()
setValueAsString self val = liftDOM (void (self ^. jss "valueAsString" (toJSVal val)))

-- | <https://developer.mozilla.org/docs/Web/API/SVGAngle/valueAsString MDN SVGAngle.valueAsString documentation>
getValueAsString :: (MonadDOM m, FromJSString result) => SVGAngle -> m result
getValueAsString self = liftDOM (((self ^. js "valueAsString") >>= fromJSValUnchecked))

pattern SVG_ANGLETYPE_UNKNOWN = 0

pattern SVG_ANGLETYPE_UNSPECIFIED = 1

pattern SVG_ANGLETYPE_DEG = 2

pattern SVG_ANGLETYPE_RAD = 3

pattern SVG_ANGLETYPE_GRAD = 4