@@ -2,22 +2,21 @@ module Main where
22
33import Prelude
44
5+ import CSS (Selector , fromString )
6+ import Clipboard as C
57import Control.Monad.Eff (Eff )
6-
7- import Data.Maybe (fromMaybe )
8-
98import DOM (DOM )
10- import CSS (Selector , fromString )
119import DOM.Event.EventTarget (addEventListener , eventListener )
1210import DOM.HTML (window )
1311import DOM.HTML.Event.EventTypes (load )
1412import DOM.HTML.Types (windowToEventTarget , htmlDocumentToDocument )
1513import DOM.HTML.Window (document )
16- import DOM.Node.NonElementParentNode (getElementById )
17- import DOM.Node.Types (Element , ElementId (..), documentToNonElementParentNode )
1814import DOM.Node.Element (getAttribute )
19-
20- import Clipboard as C
15+ import DOM.Node.NonElementParentNode (getElementById )
16+ import DOM.Node.Types (Element , ElementId (ElementId), documentToNonElementParentNode )
17+ import Data.Maybe (fromJust , fromMaybe )
18+ import Data.Newtype (wrap )
19+ import Partial.Unsafe (unsafePartial )
2120
2221onLoad :: forall eff . (Eff (dom :: DOM | eff ) Unit ) -> Eff (dom :: DOM | eff ) Unit
2322onLoad action
@@ -34,10 +33,18 @@ testElement el = void $ C.fromElement el $ stringFromAttr "data-copy-text" el
3433testSelector :: forall eff . Selector -> Eff (dom :: DOM | eff ) Unit
3534testSelector sel = void $ C .fromCSSSelector sel $ stringFromAttr " data-copy-text"
3635
36+ testInputSelector :: forall eff . Eff (dom :: DOM | eff ) Unit
37+ testInputSelector = do
38+ doc <- documentToNonElementParentNode <<< htmlDocumentToDocument <$> (document =<< window)
39+ let getInput = unsafePartial fromJust <$> getElementById (wrap " input-selector" ) doc
40+ button <- unsafePartial fromJust <$> getElementById (wrap " input-button-selector" ) doc
41+ void $ C .fromElementWithTarget button getInput
42+
3743main :: forall eff . Eff (dom :: DOM | eff ) Unit
3844main = onLoad do
3945 win <- window
4046 doc <- documentToNonElementParentNode <<< htmlDocumentToDocument <$> document win
4147 element <- getElementById (ElementId " test-element" ) doc
4248 fromMaybe (pure unit) $ testElement <$> element
4349 testSelector $ fromString " .test-selector"
50+ testInputSelector
0 commit comments