module Route.Blog.Slug_ exposing (ActionData, Data, Model, Msg, route) import BackendTask exposing (BackendTask) import FatalError exposing (FatalError) import Head import Head.Seo as Seo import Html import Pages.Url import PagesMsg exposing (PagesMsg) import RouteBuilder exposing (App, StatelessRoute) import Shared import View exposing (View) type alias Model = {} type alias Msg = () type alias RouteParams = { slug : String } route : StatelessRoute RouteParams Data ActionData route = RouteBuilder.preRender { head = head , pages = pages , data = data } |> RouteBuilder.buildNoState { view = view } pages : BackendTask FatalError (List RouteParams) pages = BackendTask.succeed [ { slug = "hello" } ] type alias Data = { something : String } type alias ActionData = {} data : RouteParams -> BackendTask FatalError Data data routeParams = BackendTask.map Data (BackendTask.succeed "Hi") head : App Data ActionData RouteParams -> List Head.Tag head app = Seo.summary { canonicalUrlOverride = Nothing , siteName = "elm-pages" , image = { url = Pages.Url.external "TODO" , alt = "elm-pages logo" , dimensions = Nothing , mimeType = Nothing } , description = "TODO" , locale = Nothing , title = "TODO title" -- metadata.title -- TODO } |> Seo.website view : App Data ActionData RouteParams -> Shared.Model -> View (PagesMsg Msg) view app sharedModel = { title = "Placeholder - Blog.Slug_" , body = [ Html.text "You're on the page Blog.Slug_" ] }