jsaddle-dom-0.10.0.0: src/JSDOM/Generated/SVGPathElement.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from svg-paths (webref). Do not edit.
module JSDOM.Generated.SVGPathElement
(getPointAtLength, getPointAtLength_, getTotalLength, getTotalLength_, getPathLength, SVGPathElement(..), gTypeSVGPathElement)
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/SVGPathElement/getPointAtLength MDN SVGPathElement.getPointAtLength documentation>
getPointAtLength :: (MonadDOM m) => SVGPathElement -> Float -> m DOMPoint
getPointAtLength self distance = liftDOM (((self ^. jsf "getPointAtLength" [toJSVal distance]) >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/SVGPathElement/getPointAtLength MDN SVGPathElement.getPointAtLength documentation>
getPointAtLength_ :: (MonadDOM m) => SVGPathElement -> Float -> m ()
getPointAtLength_ self distance = liftDOM (void (self ^. jsf "getPointAtLength" [toJSVal distance]))
-- | <https://developer.mozilla.org/docs/Web/API/SVGPathElement/getTotalLength MDN SVGPathElement.getTotalLength documentation>
getTotalLength :: (MonadDOM m) => SVGPathElement -> m Float
getTotalLength self = liftDOM ((P.realToFrac <$> ((self ^. jsf "getTotalLength" ()) >>= valToNumber)))
-- | <https://developer.mozilla.org/docs/Web/API/SVGPathElement/getTotalLength MDN SVGPathElement.getTotalLength documentation>
getTotalLength_ :: (MonadDOM m) => SVGPathElement -> m ()
getTotalLength_ self = liftDOM (void (self ^. jsf "getTotalLength" ()))
-- | <https://developer.mozilla.org/docs/Web/API/SVGPathElement/pathLength MDN SVGPathElement.pathLength documentation>
getPathLength :: (MonadDOM m) => SVGPathElement -> m SVGAnimatedNumber
getPathLength self = liftDOM (((self ^. js "pathLength") >>= fromJSValUnchecked))