packages feed

jsaddle-dom-0.10.0.0: src/JSDOM/Generated/SVGGeometryElement.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.SVGGeometryElement
       (getPointAtLength, getPointAtLength_, getTotalLength, getTotalLength_, isPointInFill, isPointInFill_, isPointInStroke, isPointInStroke_, getPathLength, SVGGeometryElement(..), gTypeSVGGeometryElement, IsSVGGeometryElement, toSVGGeometryElement)
       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/SVGGeometryElement/getPointAtLength MDN SVGGeometryElement.getPointAtLength documentation>
getPointAtLength :: (MonadDOM m, IsSVGGeometryElement self) => self -> Float -> m DOMPoint
getPointAtLength self distance = liftDOM ((((Types.toSVGGeometryElement self) ^. jsf "getPointAtLength" [toJSVal distance]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/getPointAtLength MDN SVGGeometryElement.getPointAtLength documentation>
getPointAtLength_ :: (MonadDOM m, IsSVGGeometryElement self) => self -> Float -> m ()
getPointAtLength_ self distance = liftDOM (void ((Types.toSVGGeometryElement self) ^. jsf "getPointAtLength" [toJSVal distance]))

-- | <https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/getTotalLength MDN SVGGeometryElement.getTotalLength documentation>
getTotalLength :: (MonadDOM m, IsSVGGeometryElement self) => self -> m Float
getTotalLength self = liftDOM ((P.realToFrac <$> (((Types.toSVGGeometryElement self) ^. jsf "getTotalLength" ()) >>= valToNumber)))

-- | <https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/getTotalLength MDN SVGGeometryElement.getTotalLength documentation>
getTotalLength_ :: (MonadDOM m, IsSVGGeometryElement self) => self -> m ()
getTotalLength_ self = liftDOM (void ((Types.toSVGGeometryElement self) ^. jsf "getTotalLength" ()))

-- | <https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/isPointInFill MDN SVGGeometryElement.isPointInFill documentation>
isPointInFill :: (MonadDOM m, IsSVGGeometryElement self) => self -> Maybe DOMPointInit -> m Bool
isPointInFill self point = liftDOM ((((Types.toSVGGeometryElement self) ^. jsf "isPointInFill" [P.maybe (P.return jsUndefined) toJSVal point]) >>= valToBool))

-- | <https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/isPointInFill MDN SVGGeometryElement.isPointInFill documentation>
isPointInFill_ :: (MonadDOM m, IsSVGGeometryElement self) => self -> Maybe DOMPointInit -> m ()
isPointInFill_ self point = liftDOM (void ((Types.toSVGGeometryElement self) ^. jsf "isPointInFill" [P.maybe (P.return jsUndefined) toJSVal point]))

-- | <https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/isPointInStroke MDN SVGGeometryElement.isPointInStroke documentation>
isPointInStroke :: (MonadDOM m, IsSVGGeometryElement self) => self -> Maybe DOMPointInit -> m Bool
isPointInStroke self point = liftDOM ((((Types.toSVGGeometryElement self) ^. jsf "isPointInStroke" [P.maybe (P.return jsUndefined) toJSVal point]) >>= valToBool))

-- | <https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/isPointInStroke MDN SVGGeometryElement.isPointInStroke documentation>
isPointInStroke_ :: (MonadDOM m, IsSVGGeometryElement self) => self -> Maybe DOMPointInit -> m ()
isPointInStroke_ self point = liftDOM (void ((Types.toSVGGeometryElement self) ^. jsf "isPointInStroke" [P.maybe (P.return jsUndefined) toJSVal point]))

-- | <https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/pathLength MDN SVGGeometryElement.pathLength documentation>
getPathLength :: (MonadDOM m, IsSVGGeometryElement self) => self -> m SVGAnimatedNumber
getPathLength self = liftDOM ((((Types.toSVGGeometryElement self) ^. js "pathLength") >>= fromJSValUnchecked))