module Mig.Extra.Server.Common (
Server (..),
Api (..),
Path (..),
PathItem (..),
Route (..),
Json,
AnyMedia,
OctetStream,
FormUrlEncoded,
ToServer (..),
ToRoute (..),
MediaType,
ToMediaType (..),
ToRespBody (..),
IsResp (..),
badReq,
internalServerError,
notImplemented,
redirect,
setHeader,
setCookie,
SetCookie (..),
defCookie,
Send (..),
IsMethod (..),
GET,
POST,
PUT,
DELETE,
PATCH,
OPTIONS,
HEAD,
TRACE,
UrlOf,
ToUrl (..),
Url (..),
renderUrl,
(:|) (..),
(/.),
Capture (..),
Query (..),
QueryFlag (..),
Optional (..),
Header (..),
OptionalHeader (..),
Cookie (..),
PathInfo (..),
FullPathInfo (..),
RawRequest (..),
staticFiles,
Plugin (..),
PluginFun,
ToPlugin (..),
applyPlugin,
($:),
prependServerAction,
appendServerAction,
processResponse,
Request,
Response,
okResponse,
badResponse,
badRequest,
ServerFun,
HasServer (..),
fromReader,
ToText (..),
mapRouteInfo,
mapServerFun,
mapResponse,
atPath,
filterPath,
getServerPaths,
addPathLink,
toOpenApi,
setDescription,
describeInputs,
setSummary,
module X,
) where
import Mig.Core hiding (
Delete,
Get,
Head,
Options,
Patch,
Post,
Put,
Resp,
RespOr,
Trace,
)
import Control.Monad.IO.Class as X
import Control.Monad.Trans.Class as X
import Data.Aeson as X (FromJSON (..), ToJSON (..))
import Data.Default as X
import Data.Maybe as X
import Data.OpenApi as X (OpenApi, ToParamSchema (..), ToSchema (..))
import Data.String as X
import Data.Text as X (Text)
import GHC.Generics as X (Generic)
import Mig.Extra.Derive as X
import Network.HTTP.Types.Header as X (RequestHeaders, ResponseHeaders)
import Network.HTTP.Types.Status as X
import Text.Blaze.Html as X (Html, ToMarkup (..))
import Web.FormUrlEncoded as X
import Web.HttpApiData as X