Module
Payload.Client.Client
- Package
- purescript-payload
- Repository
- hoodunit/purescript-payload
#ClientApiList Source
class ClientApiList (routesSpecList :: RowList) (basePath :: Symbol) (baseParams :: Row Type) client | routesSpecList -> client where
Members
mkClientList :: Options -> RLProxy routesSpecList -> SProxy basePath -> Proxy (Record baseParams) -> client
Instances
ClientApiList Nil basePath baseParams (Record ())
(IsSymbol routeName, IsSymbol method, IsSymbol path, Cons routeName (ModifyRequest -> payload -> Aff (Either String res)) remClient client, Lacks routeName remClient, ClientQueryable (Route method path routeSpec) basePath baseParams payload res, ClientApiList remRoutes basePath baseParams (Record remClient)) => ClientApiList (Cons routeName (Route method path routeSpec) remRoutes) basePath baseParams (Record client)
(IsSymbol parentName, IsSymbol basePath, IsSymbol path, Union parentSpec DefaultParentRoute mergedSpec, Nub mergedSpec parentSpecWithDefaults, TypeEquals (Record parentSpecWithDefaults) { guards :: parentGuards, params :: Record parentParams | childRoutes }, Append basePath path childBasePath, Union baseParams parentParams childParams, EncodeUrl path parentParams, RowToList childRoutes childRoutesList, ClientApiList childRoutesList childBasePath childParams (Record childClient), Lacks parentName remClient, Cons parentName (Record childClient) remClient client, ClientApiList remRoutes basePath baseParams (Record remClient)) => ClientApiList (Cons parentName (Routes path (Record parentSpec)) remRoutes) basePath baseParams (Record client)
#ClientQueryable Source
class ClientQueryable route (basePath :: Symbol) (baseParams :: Row Type) payload res | route -> payload, route -> res where
Members
request :: route -> SProxy basePath -> Proxy (Record baseParams) -> Options -> ModifyRequest -> payload -> Aff (Either String res)
Instances
(Union route DefaultRequest mergedRoute, Nub mergedRoute routeWithDefaults, TypeEquals (Record routeWithDefaults) { params :: Record params, response :: res | r }, IsSymbol path, Append basePath path fullPath, EncodeUrl fullPath fullParams, Union baseParams params fullParams, ReadResponse res, ReadForeign res) => ClientQueryable (Route "GET" path (Record route)) basePath baseParams (Record fullParams) res
(Union route DefaultRequest mergedRoute, Nub mergedRoute routeWithDefaults, TypeEquals (Record routeWithDefaults) { body :: body, params :: Record params, response :: res | r }, Union baseParams params fullParams, TypeEquals (Record payload) { body :: body | fullParams }, Lacks "body" fullParams, IsSymbol path, Append basePath path fullPath, EncodeUrl fullPath fullParams, ReadResponse res, WriteForeign body, ReadForeign res) => ClientQueryable (Route "POST" path (Record route)) basePath baseParams (Record payload) res
#decodeResponse Source
decodeResponse :: forall res. ReadResponse res => (Response (Either ResponseFormatError String)) -> Either String res
- Modules
- Payload.
Client. Client - Payload.
Client. FromResponse - Payload.
ContentType - Payload.
Cookies - Payload.
FromData - Payload.
Guards - Payload.
Handleable - Payload.
Handlers - Payload.
Headers - Payload.
Internal. GuardParsing - Payload.
Internal. MimeTypes - Payload.
Internal. Query - Payload.
Internal. QueryParsing - Payload.
Internal. Querystring. Qs - Payload.
Internal. Request - Payload.
Internal. Route - Payload.
Internal. ServerResponse - Payload.
Internal. Trie - Payload.
Internal. TypeErrors - Payload.
Internal. Url - Payload.
Internal. UrlParsing - Payload.
Internal. UrlString - Payload.
Internal. Utils - Payload.
Params - Payload.
Path - Payload.
QueryParams - Payload.
Response - Payload.
Routable - Payload.
Server - Payload.
Spec - Payload.
Status