@@ -28,13 +28,15 @@ module Playwright
29 , devtools
29 , devtools
34import Prelude
36import Prelude
35import Effect (Effect)
37import Effect (Effect)
36import Control.Promise (Promise, toAffE)
38import Control.Promise (Promise, toAffE)
37−import Data.Options (Option, Options, opt)
39+import Data.Options (Option, Options, opt, options)
38import Effect.Aff (Aff)
40import Effect.Aff (Aff)
39import Foreign (Foreign)
41import Foreign (Foreign)
40import Foreign.Object (Object)
42import Foreign.Object (Object)
@@ -46,10 +48,10 @@ foreign import firefox :: BrowserType
46foreign import chromium :: BrowserType
48foreign import chromium :: BrowserType
47foreign import webkit :: BrowserType
49foreign import webkit :: BrowserType
49−foreign import _launch :: BrowserType -> Options LaunchOptions -> Effect (Promise Browser)
51+foreign import _launch :: BrowserType -> Foreign -> Effect (Promise Browser)
51launch :: BrowserType -> Options LaunchOptions -> Aff Browser
53launch :: BrowserType -> Options LaunchOptions -> Aff Browser
52−launch bt = toAffE <<< _launch bt
54+launch bt opts = toAffE $ _launch bt (options opts)
54foreign import data LaunchOptions :: Type
56foreign import data LaunchOptions :: Type
@@ -111,3 +113,8 @@ devtools = opt "devtools"
112slowMo :: Option LaunchOptions Number
114slowMo :: Option LaunchOptions Number
113slowMo = opt "slowMo"
115slowMo = opt "slowMo"
117+close :: Browser -> Aff Unit
118+close = toAffE <<< _close
120+foreign import _close :: Browser -> Effect (Promise Unit)