packages feed

espial-0.0.4: purs/src/Globals.purs

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)

type App =
    { csrfHeaderName :: String
    , csrfCookieName :: String
    , csrfParamName :: String
    , csrfToken :: String
    , homeR :: String
    , authRlogoutR :: String
    , userR :: 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