{-# LANGUAGE AllowAmbiguousTypes #-}
{-# LANGUAGE CPP                 #-}
{-# LANGUAGE FlexibleContexts    #-}
{-# LANGUAGE LambdaCase          #-}
{-# LANGUAGE OverloadedStrings   #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE TemplateHaskell     #-}
{-# LANGUAGE TypeApplications    #-}
module Shpadoinkle.Html.Event.Basic where
import           Control.Monad       (msum)
import           Shpadoinkle
import           Shpadoinkle.Html.TH
$(msum <$> mapM mkEventDSL
  [ "abort"
  , "afterprint"
  , "animationcancel"
  , "animationend"
  , "animationiteration"
  , "animationstart"
  , "beforeprint"
  , "beforeunload"
  , "blur"
  , "canplay"
  , "canplaythrough"
  , "change"
  , "click"
  , "contextmenu"
  , "copy"
  , "cut"
  , "dblclick"
  , "drag"
  , "dragend"
  , "dragenter"
  , "dragleave"
  , "dragover"
  , "dragstart"
  , "drop"
  , "durationchange"
  , "emptied"
  , "ended"
  , "error"
  , "focus"
  , "focusin"
  , "focusout"
  , "gotpointercapture"
  , "hashchange"
  , "invalid"
  , "load"
  , "loadeddata"
  , "loadedmetadata"
  , "loadstart"
  , "lostpointercapture"
  , "message"
  , "mousedown"
  , "mouseenter"
  , "mouseleave"
  , "mousemove"
  , "mouseout"
  , "mouseover"
  , "mouseup"
  , "mousewheel"
  , "offline"
  , "online"
  , "open"
  , "pagehide"
  , "pageshow"
  , "paste"
  , "pause"
  , "play"
  , "playing"
  , "pointercancel"
  , "pointerdown"
  , "pointerenter"
  , "pointerleave"
  , "pointermove"
  , "pointerout"
  , "pointerover"
  , "pointerup"
  , "popstate"
  , "progress"
  , "ratechange"
  , "reset"
  , "resize"
  , "scroll"
  , "search"
  , "seeked"
  , "seeking"
  , "select"
  , "show"
  , "stalled"
  , "storage"
  , "suspend"
  , "timeupdate"
  , "toggle"
  , "touchcancel"
  , "touchend"
  , "touchmove"
  , "touchstart"
  , "transitioncancel"
  , "transitionend"
  , "transitionrun"
  , "transitionstart"
  , "unload"
  , "volumechange"
  , "waiting"
  , "wheel" ])