espial/purs/src/Globals.purs
Jon Schoning 2e3e7097e6 init
2019-01-30 20:54:47 -06:00

98 lines
3 KiB
Plaintext

module Globals where
import Data.Function.Uncurried
import Data.Maybe (Maybe(..))
import Data.Nullable (Nullable, toMaybe)
import Data.Tuple (Tuple(..))
import Effect (Effect)
import Model (Bookmark)
import Prelude (Unit, pure, ($))
import Web.DOM (Element, Node)
import Web.HTML (HTMLElement, HTMLFormElement, Window)
import Web.XHR.FormData (FormData)
import Data.Newtype (class Newtype)
type App =
{ csrfHeaderName :: String
, csrfCookieName :: String
, csrfParamName :: String
, csrfToken :: String
, homeR :: String
, authRlogoutR :: String
, userR :: Nullable String
, noteR :: Nullable String
, dat :: AppData
}
type AppData =
{ bmarks :: Array Bookmark
, bmark :: Bookmark
, isowner :: Boolean
}
foreign import _app :: Fn0 App
app' :: Unit -> App
app' _ = runFn0 _app
foreign import _closest :: forall a. Fn4 (a -> Maybe a) (Maybe a) String Node (Maybe Node)
closest :: String -> Node -> Effect (Maybe Node)
closest selector node = pure $ runFn4 _closest Just Nothing selector node
foreign import _moment8601 :: Fn2 (String -> String -> Tuple String String) String (Tuple String String)
moment8601 :: String -> Effect (Tuple String String)
moment8601 s = pure $ runFn2 _moment8601 Tuple s
foreign import _mmoment8601 :: forall a. Fn4 (a -> Maybe a) (Maybe a) (String -> String -> Tuple String String) String (Maybe (Tuple String String))
mmoment8601 :: String -> Maybe (Tuple String String)
mmoment8601 s = runFn4 _mmoment8601 Just Nothing Tuple s
foreign import _innerHtml :: Fn1 HTMLElement String
innerHtml :: HTMLElement -> Effect String
innerHtml n = pure $ runFn1 _innerHtml n
foreign import _setInnerHtml :: Fn2 String HTMLElement HTMLElement
setInnerHtml :: String -> HTMLElement -> Effect HTMLElement
setInnerHtml c n = pure $ runFn2 _setInnerHtml c n
foreign import _createFormData :: Fn1 HTMLFormElement FormData
createFormData :: HTMLFormElement -> FormData
createFormData f = runFn1 _createFormData f
foreign import _createFormString :: Fn1 HTMLFormElement String
createFormString :: HTMLFormElement -> String
createFormString f = runFn1 _createFormString f
foreign import _createFormArray :: Fn1 HTMLFormElement (Array (Array String))
createFormArray :: HTMLFormElement -> (Array (Array String))
createFormArray f = runFn1 _createFormArray f
foreign import _getDataAttribute :: Fn2 String Element (Nullable String)
getDataAttribute :: String -> Element -> Effect (Maybe String)
getDataAttribute k n = pure $ toMaybe $ runFn2 _getDataAttribute k n
foreign import _setDataAttribute :: Fn3 String String Element Unit
setDataAttribute :: String -> String -> Element -> Effect Unit
setDataAttribute k v n = pure $ runFn3 _setDataAttribute k v n
foreign import _closeWindow :: Fn1 Window Unit
closeWindow :: Window -> Effect Unit
closeWindow win = pure $ runFn1 _closeWindow win
newtype RawHTML = RawHTML String
derive instance newtypeRawHTML :: Newtype RawHTML _