@@ -28,13 +28,15 @@ module Playwright
2828 , env
2929 , devtools
3030 , slowMo
31+
32+ , close
3133 )
3234where
3335
3436import Prelude
3537import Effect (Effect)
3638import Control.Promise (Promise, toAffE)
37−import Data.Options (Option, Options, opt)
39+import Data.Options (Option, Options, opt, options)
3840import Effect.Aff (Aff)
3941import Foreign (Foreign)
4042import Foreign.Object (Object)
@@ -46,10 +48,10 @@ foreign import firefox :: BrowserType
4648foreign import chromium :: BrowserType
4749foreign import webkit :: BrowserType
4850
49−foreign import _launch :: BrowserType -> Options LaunchOptions -> Effect (Promise Browser)
51+foreign import _launch :: BrowserType -> Foreign -> Effect (Promise Browser)
5052
5153launch :: BrowserType -> Options LaunchOptions -> Aff Browser
52−launch bt = toAffE <<< _launch bt
54+launch bt opts = toAffE $ _launch bt (options opts)
5355
5456foreign import data LaunchOptions :: Type
5557
@@ -111,3 +113,8 @@ devtools = opt "devtools"
111113
112114slowMo :: Option LaunchOptions Number
113115slowMo = opt "slowMo"
116+
117+close :: Browser -> Aff Unit
118+close = toAffE <<< _close
119+
120+foreign import _close :: Browser -> Effect (Promise Unit)