mirror of
https://github.com/dillonkearns/elm-pages.git
synced 2024-10-26 10:27:36 +03:00
Rename StaticData -> Data.
This commit is contained in:
parent
559c4b6337
commit
521c3c0cc7
@ -1,4 +1,4 @@
|
||||
module Page.Blog exposing (Model, Msg, StaticData, page)
|
||||
module Page.Blog exposing (Data, Model, Msg, page)
|
||||
|
||||
import Article
|
||||
import DataSource
|
||||
@ -18,35 +18,32 @@ type Msg
|
||||
= Msg
|
||||
|
||||
|
||||
page : PageWithState RouteParams StaticData Model Msg
|
||||
page : PageWithState RouteParams Data Model Msg
|
||||
page =
|
||||
Page.withStaticData
|
||||
Page.withData
|
||||
{ head = head
|
||||
, staticData = \_ -> staticData
|
||||
, data = \_ -> data
|
||||
, staticRoutes = DataSource.succeed []
|
||||
}
|
||||
|> Page.buildWithLocalState
|
||||
{ view = view
|
||||
, init = init
|
||||
, update = update
|
||||
|
||||
--\_ _ _ model -> ( model, Cmd.none )
|
||||
, subscriptions = \_ _ _ -> Sub.none
|
||||
}
|
||||
|
||||
|
||||
staticData : DataSource.DataSource StaticData
|
||||
staticData =
|
||||
--StaticFile.glob "content/blog/*.md"
|
||||
data : DataSource.DataSource Data
|
||||
data =
|
||||
Article.allMetadata
|
||||
|
||||
|
||||
type alias StaticData =
|
||||
type alias Data =
|
||||
List ( PagePath, Article.ArticleMetadata )
|
||||
|
||||
|
||||
init :
|
||||
StaticPayload StaticData RouteParams
|
||||
StaticPayload Data RouteParams
|
||||
-> ( Model, Cmd Msg )
|
||||
init _ =
|
||||
( Model, Cmd.none )
|
||||
@ -58,7 +55,7 @@ type alias RouteParams =
|
||||
|
||||
update :
|
||||
DynamicContext Shared.Model
|
||||
-> StaticPayload StaticData RouteParams
|
||||
-> StaticPayload Data RouteParams
|
||||
-> Msg
|
||||
-> Model
|
||||
-> ( Model, Cmd Msg )
|
||||
@ -73,7 +70,7 @@ type alias Model =
|
||||
view :
|
||||
Model
|
||||
-> Shared.Model
|
||||
-> StaticPayload StaticData {}
|
||||
-> StaticPayload Data {}
|
||||
-> Document Msg
|
||||
view thing model staticPayload =
|
||||
{ title = "elm-pages blog"
|
||||
@ -92,7 +89,7 @@ view thing model staticPayload =
|
||||
}
|
||||
|
||||
|
||||
head : StaticPayload StaticData {} -> List Head.Tag
|
||||
head : StaticPayload Data {} -> List Head.Tag
|
||||
head staticPayload =
|
||||
Seo.summary
|
||||
{ canonicalUrlOverride = Nothing
|
||||
|
@ -1,4 +1,4 @@
|
||||
module Page.Blog.Slug_ exposing (Model, Msg, StaticData, articlesRequest, page, routes, toRssItem)
|
||||
module Page.Blog.Slug_ exposing (Data, Model, Msg, articlesRequest, page, routes, toRssItem)
|
||||
|
||||
import Article
|
||||
import Cloudinary
|
||||
@ -46,10 +46,10 @@ type alias BlogPost =
|
||||
}
|
||||
|
||||
|
||||
page : Page RouteParams StaticData
|
||||
page : Page RouteParams Data
|
||||
page =
|
||||
Page.withStaticData
|
||||
{ staticData = staticData
|
||||
Page.withData
|
||||
{ data = data
|
||||
, head = head
|
||||
, staticRoutes = routes
|
||||
}
|
||||
@ -68,7 +68,7 @@ routes =
|
||||
|
||||
|
||||
view :
|
||||
StaticPayload StaticData RouteParams
|
||||
StaticPayload Data RouteParams
|
||||
-> Document msg
|
||||
view { static } =
|
||||
{ title = static.frontmatter.title
|
||||
@ -111,7 +111,7 @@ view { static } =
|
||||
|
||||
|
||||
head :
|
||||
StaticPayload StaticData RouteParams
|
||||
StaticPayload Data RouteParams
|
||||
-> List Head.Tag
|
||||
head { path, static } =
|
||||
let
|
||||
@ -175,17 +175,17 @@ articleImageView articleImage =
|
||||
}
|
||||
|
||||
|
||||
type alias StaticData =
|
||||
type alias Data =
|
||||
{ body : List (Element Msg)
|
||||
, frontmatter : ArticleMetadata
|
||||
}
|
||||
|
||||
|
||||
staticData : RouteParams -> DataSource.DataSource StaticData
|
||||
staticData route =
|
||||
data : RouteParams -> DataSource.DataSource Data
|
||||
data route =
|
||||
StaticFile.request
|
||||
("content/blog/" ++ route.slug ++ ".md")
|
||||
(OptimizedDecoder.map2 StaticData
|
||||
(OptimizedDecoder.map2 Data
|
||||
(StaticFile.body
|
||||
|> OptimizedDecoder.andThen
|
||||
(\rawBody ->
|
||||
|
@ -1,4 +1,4 @@
|
||||
module Page.Docs exposing (Model, Msg, StaticData, page)
|
||||
module Page.Docs exposing (Data, Model, Msg, page)
|
||||
|
||||
import Css.Global
|
||||
import DataSource exposing (DataSource)
|
||||
@ -35,19 +35,18 @@ type alias RouteParams =
|
||||
{}
|
||||
|
||||
|
||||
page : Page RouteParams StaticData
|
||||
page : Page RouteParams Data
|
||||
page =
|
||||
Page.withStaticData
|
||||
Page.withData
|
||||
{ head = head
|
||||
, staticRoutes = DataSource.succeed [ {} ]
|
||||
, staticData =
|
||||
\_ -> data
|
||||
, data = \_ -> data
|
||||
}
|
||||
|> Page.buildNoState { view = view }
|
||||
|
||||
|
||||
head :
|
||||
StaticPayload StaticData RouteParams
|
||||
StaticPayload Data RouteParams
|
||||
-> List Head.Tag
|
||||
head static =
|
||||
Seo.summary
|
||||
@ -66,12 +65,12 @@ head static =
|
||||
|> Seo.website
|
||||
|
||||
|
||||
type alias StaticData =
|
||||
type alias Data =
|
||||
List Markdown.Block.Block
|
||||
|
||||
|
||||
view :
|
||||
StaticPayload StaticData RouteParams
|
||||
StaticPayload Data RouteParams
|
||||
-> Document Msg
|
||||
view static =
|
||||
{ title = "TODO title"
|
||||
|
@ -1,4 +1,4 @@
|
||||
module Page.Hello.Name_ exposing (Model, Msg, StaticData, page)
|
||||
module Page.Hello.Name_ exposing (Data, Model, Msg, page)
|
||||
|
||||
import DataSource
|
||||
import Document exposing (Document)
|
||||
@ -25,7 +25,7 @@ type alias Route =
|
||||
|
||||
page : Page Route ()
|
||||
page =
|
||||
Page.noStaticData
|
||||
Page.noData
|
||||
{ head = head
|
||||
, staticRoutes = DataSource.succeed [ { name = "world" } ]
|
||||
}
|
||||
@ -52,12 +52,12 @@ head static =
|
||||
|> Seo.website
|
||||
|
||||
|
||||
type alias StaticData =
|
||||
type alias Data =
|
||||
()
|
||||
|
||||
|
||||
view :
|
||||
StaticPayload StaticData Route
|
||||
StaticPayload Data Route
|
||||
-> Document msg
|
||||
view static =
|
||||
{ title = "TODO title"
|
||||
|
@ -1,4 +1,4 @@
|
||||
module Page.Index exposing (Model, Msg, StaticData, page)
|
||||
module Page.Index exposing (Data, Model, Msg, page)
|
||||
|
||||
import DataSource
|
||||
import DataSource.File as StaticFile
|
||||
@ -27,22 +27,22 @@ type alias Route =
|
||||
{}
|
||||
|
||||
|
||||
type alias StaticData =
|
||||
type alias Data =
|
||||
List (Element.Element Msg)
|
||||
|
||||
|
||||
page : Page Route StaticData
|
||||
page : Page Route Data
|
||||
page =
|
||||
Page.withStaticData
|
||||
Page.withData
|
||||
{ head = head
|
||||
, staticRoutes = DataSource.succeed []
|
||||
, staticData = staticData
|
||||
, data = data
|
||||
}
|
||||
|> Page.buildNoState { view = view }
|
||||
|
||||
|
||||
head :
|
||||
StaticPayload StaticData Route
|
||||
StaticPayload Data Route
|
||||
-> List Head.Tag
|
||||
head static =
|
||||
Seo.summary
|
||||
@ -62,7 +62,7 @@ head static =
|
||||
|
||||
|
||||
view :
|
||||
StaticPayload StaticData Route
|
||||
StaticPayload Data Route
|
||||
-> Document Msg
|
||||
view static =
|
||||
{ title = "elm-pages - a statically typed site generator" -- metadata.title -- TODO
|
||||
@ -82,8 +82,8 @@ view static =
|
||||
}
|
||||
|
||||
|
||||
staticData : Route -> DataSource.DataSource (List (Element.Element msg))
|
||||
staticData route =
|
||||
data : Route -> DataSource.DataSource (List (Element.Element msg))
|
||||
data route =
|
||||
StaticFile.request
|
||||
"content/index.md"
|
||||
(StaticFile.body
|
||||
|
@ -1,4 +1,4 @@
|
||||
module Page.Showcase exposing (Model, Msg, StaticData, page)
|
||||
module Page.Showcase exposing (Data, Model, Msg, page)
|
||||
|
||||
import DataSource
|
||||
import Document exposing (Document)
|
||||
@ -19,18 +19,18 @@ type alias Msg =
|
||||
Never
|
||||
|
||||
|
||||
page : PageWithState {} StaticData () Msg
|
||||
page : PageWithState {} Data () Msg
|
||||
page =
|
||||
Page.withStaticData
|
||||
Page.withData
|
||||
{ head = head
|
||||
, staticRoutes = DataSource.succeed []
|
||||
, staticData = \_ -> staticData
|
||||
, data = \_ -> data
|
||||
}
|
||||
|> Page.buildNoState { view = view }
|
||||
|
||||
|
||||
staticData : DataSource.DataSource StaticData
|
||||
staticData =
|
||||
data : DataSource.DataSource Data
|
||||
data =
|
||||
Showcase.staticRequest
|
||||
|
||||
|
||||
@ -45,12 +45,12 @@ type alias DataFromFile =
|
||||
{ body : List (Element Msg), title : String }
|
||||
|
||||
|
||||
type alias StaticData =
|
||||
type alias Data =
|
||||
List Showcase.Entry
|
||||
|
||||
|
||||
view :
|
||||
StaticPayload StaticData {}
|
||||
StaticPayload Data {}
|
||||
-> Document Msg
|
||||
view static =
|
||||
{ title = "elm-pages blog"
|
||||
@ -67,7 +67,7 @@ view static =
|
||||
}
|
||||
|
||||
|
||||
head : StaticPayload StaticData {} -> List Head.Tag
|
||||
head : StaticPayload Data {} -> List Head.Tag
|
||||
head staticPayload =
|
||||
Seo.summary
|
||||
{ canonicalUrlOverride = Nothing
|
||||
|
@ -1,4 +1,4 @@
|
||||
module Page.Time exposing (Model, Msg, StaticData, page)
|
||||
module Page.Time exposing (Data, Model, Msg, page)
|
||||
|
||||
import DataSource
|
||||
import Document exposing (Document)
|
||||
@ -18,21 +18,26 @@ type alias Msg =
|
||||
Never
|
||||
|
||||
|
||||
type alias StaticData =
|
||||
type alias Data =
|
||||
String
|
||||
|
||||
|
||||
page : Page {} StaticData
|
||||
type alias RouteParams =
|
||||
{}
|
||||
|
||||
|
||||
page : Page RouteParams Data
|
||||
page =
|
||||
Page.withStaticData
|
||||
Page.withData
|
||||
{ head = head
|
||||
, staticRoutes = DataSource.succeed []
|
||||
, staticData = staticData
|
||||
, data = data
|
||||
}
|
||||
|> Page.buildNoState { view = view }
|
||||
|
||||
|
||||
staticData routeParams =
|
||||
data : RouteParams -> DataSource.DataSource String
|
||||
data routeParams =
|
||||
DataSource.succeed "TIME RESPONSE"
|
||||
|
||||
|
||||
@ -42,7 +47,7 @@ staticData routeParams =
|
||||
|
||||
|
||||
head :
|
||||
StaticPayload StaticData {}
|
||||
StaticPayload Data {}
|
||||
-> List Head.Tag
|
||||
head static =
|
||||
Seo.summary
|
||||
@ -62,7 +67,7 @@ head static =
|
||||
|
||||
|
||||
view :
|
||||
StaticPayload StaticData {}
|
||||
StaticPayload Data {}
|
||||
-> Document msg
|
||||
view static =
|
||||
{ title = "TODO title"
|
||||
|
@ -1,4 +1,4 @@
|
||||
module Shared exposing (Model, Msg(..), SharedMsg(..), StaticData, template)
|
||||
module Shared exposing (Data, Model, Msg(..), SharedMsg(..), template)
|
||||
|
||||
import Browser.Navigation
|
||||
import DataSource
|
||||
@ -22,12 +22,12 @@ import Secrets
|
||||
import SharedTemplate exposing (SharedTemplate)
|
||||
|
||||
|
||||
template : SharedTemplate Msg Model StaticData msg
|
||||
template : SharedTemplate Msg Model Data msg
|
||||
template =
|
||||
{ init = init
|
||||
, update = update
|
||||
, view = view
|
||||
, staticData = staticData
|
||||
, data = data
|
||||
, subscriptions = subscriptions
|
||||
, onPageChange = Just OnPageChange
|
||||
}
|
||||
@ -44,7 +44,7 @@ type Msg
|
||||
| SharedMsg SharedMsg
|
||||
|
||||
|
||||
type alias StaticData =
|
||||
type alias Data =
|
||||
Int
|
||||
|
||||
|
||||
@ -103,14 +103,14 @@ subscriptions _ _ =
|
||||
Sub.none
|
||||
|
||||
|
||||
staticData : DataSource.DataSource StaticData
|
||||
staticData =
|
||||
data : DataSource.DataSource Data
|
||||
data =
|
||||
DataSource.Http.get (Secrets.succeed "https://api.github.com/repos/dillonkearns/elm-pages")
|
||||
(D.field "stargazers_count" D.int)
|
||||
|
||||
|
||||
view :
|
||||
StaticData
|
||||
Data
|
||||
->
|
||||
{ path : PagePath
|
||||
, frontmatter : route
|
||||
|
@ -8,7 +8,7 @@ import Pages.PagePath exposing (PagePath)
|
||||
import Route exposing (Route)
|
||||
|
||||
|
||||
type alias SharedTemplate sharedMsg sharedModel sharedStaticData mappedMsg =
|
||||
type alias SharedTemplate sharedMsg sharedModel sharedData mappedMsg =
|
||||
{ init :
|
||||
Maybe Browser.Navigation.Key
|
||||
->
|
||||
@ -23,7 +23,7 @@ type alias SharedTemplate sharedMsg sharedModel sharedStaticData mappedMsg =
|
||||
-> ( sharedModel, Cmd sharedMsg )
|
||||
, update : sharedMsg -> sharedModel -> ( sharedModel, Cmd sharedMsg )
|
||||
, view :
|
||||
sharedStaticData
|
||||
sharedData
|
||||
->
|
||||
{ path : PagePath
|
||||
, frontmatter : Maybe Route
|
||||
@ -32,7 +32,7 @@ type alias SharedTemplate sharedMsg sharedModel sharedStaticData mappedMsg =
|
||||
-> (sharedMsg -> mappedMsg)
|
||||
-> Document mappedMsg
|
||||
-> { body : Html mappedMsg, title : String }
|
||||
, staticData : DataSource.DataSource sharedStaticData
|
||||
, data : DataSource.DataSource sharedData
|
||||
, subscriptions : PagePath -> sharedModel -> Sub sharedMsg
|
||||
, onPageChange :
|
||||
Maybe
|
||||
|
@ -15,10 +15,10 @@ import SiteConfig exposing (SiteConfig)
|
||||
import Sitemap
|
||||
|
||||
|
||||
config : SiteConfig StaticData
|
||||
config : SiteConfig Data
|
||||
config =
|
||||
\routes ->
|
||||
{ staticData = staticData
|
||||
{ data = data
|
||||
, canonicalUrl = canonicalUrl
|
||||
, manifest = manifest
|
||||
, head = head
|
||||
@ -44,19 +44,19 @@ generateFiles allRoutes =
|
||||
]
|
||||
|
||||
|
||||
type alias StaticData =
|
||||
type alias Data =
|
||||
{ siteName : String
|
||||
}
|
||||
|
||||
|
||||
staticData : DataSource.DataSource StaticData
|
||||
staticData =
|
||||
DataSource.map StaticData
|
||||
data : DataSource.DataSource Data
|
||||
data =
|
||||
DataSource.map Data
|
||||
--(StaticFile.request "site-name.txt" StaticFile.body)
|
||||
(DataSource.succeed "site-name")
|
||||
|
||||
|
||||
head : StaticData -> List Head.Tag
|
||||
head : Data -> List Head.Tag
|
||||
head static =
|
||||
[ Head.icon [ ( 32, 32 ) ] MimeType.Png (cloudinaryIcon MimeType.Png 32)
|
||||
, Head.icon [ ( 16, 16 ) ] MimeType.Png (cloudinaryIcon MimeType.Png 16)
|
||||
@ -71,7 +71,7 @@ canonicalUrl =
|
||||
"https://elm-pages.com"
|
||||
|
||||
|
||||
manifest : StaticData -> Manifest.Config
|
||||
manifest : Data -> Manifest.Config
|
||||
manifest static =
|
||||
Manifest.init
|
||||
{ name = static.siteName
|
||||
|
@ -4,5 +4,5 @@ import Pages.SiteConfig
|
||||
import Route exposing (Route)
|
||||
|
||||
|
||||
type alias SiteConfig staticData =
|
||||
Pages.SiteConfig.SiteConfig (Maybe Route) staticData
|
||||
type alias SiteConfig data =
|
||||
Pages.SiteConfig.SiteConfig (Maybe Route) data
|
||||
|
@ -1,4 +1,4 @@
|
||||
module Page.Slide exposing (Model, Msg, StaticData, page)
|
||||
module Page.Slide exposing (Data, Model, Msg, page)
|
||||
|
||||
import DataSource
|
||||
import Document exposing (Document)
|
||||
@ -22,9 +22,9 @@ type alias RouteParams =
|
||||
{}
|
||||
|
||||
|
||||
page : Page RouteParams StaticData
|
||||
page : Page RouteParams Data
|
||||
page =
|
||||
Page.noStaticData
|
||||
Page.noData
|
||||
{ head = head
|
||||
, staticRoutes = DataSource.succeed [ {} ]
|
||||
}
|
||||
@ -32,7 +32,7 @@ page =
|
||||
|
||||
|
||||
head :
|
||||
StaticPayload StaticData RouteParams
|
||||
StaticPayload Data RouteParams
|
||||
-> List Head.Tag
|
||||
head static =
|
||||
Seo.summary
|
||||
@ -51,12 +51,12 @@ head static =
|
||||
|> Seo.website
|
||||
|
||||
|
||||
type alias StaticData =
|
||||
type alias Data =
|
||||
()
|
||||
|
||||
|
||||
view :
|
||||
StaticPayload StaticData RouteParams
|
||||
StaticPayload Data RouteParams
|
||||
-> Document Msg
|
||||
view static =
|
||||
{ title = "TODO title"
|
||||
|
@ -1,4 +1,4 @@
|
||||
module Page.Slide.Number_ exposing (Model, Msg, StaticData, page)
|
||||
module Page.Slide.Number_ exposing (Data, Model, Msg, page)
|
||||
|
||||
import Browser.Events
|
||||
import Browser.Navigation
|
||||
@ -33,9 +33,9 @@ type alias RouteParams =
|
||||
{ number : String }
|
||||
|
||||
|
||||
page : Page.PageWithState RouteParams StaticData Model Msg
|
||||
page : Page.PageWithState RouteParams Data Model Msg
|
||||
page =
|
||||
Page.withStaticData
|
||||
Page.withData
|
||||
{ head = head
|
||||
, staticRoutes =
|
||||
slideCount
|
||||
@ -45,7 +45,7 @@ page =
|
||||
|> List.map String.fromInt
|
||||
|> List.map RouteParams
|
||||
)
|
||||
, staticData = staticData
|
||||
, data = data
|
||||
}
|
||||
|> Page.buildWithLocalState
|
||||
{ view = view
|
||||
@ -114,9 +114,9 @@ toDirection string =
|
||||
Nothing
|
||||
|
||||
|
||||
staticData : RouteParams -> DataSource.DataSource StaticData
|
||||
staticData routeParams =
|
||||
DataSource.map2 StaticData
|
||||
data : RouteParams -> DataSource.DataSource Data
|
||||
data routeParams =
|
||||
DataSource.map2 Data
|
||||
(slideBody routeParams)
|
||||
slideCount
|
||||
|
||||
@ -208,7 +208,7 @@ markdownIndexedByHeading index markdownBlocks =
|
||||
|
||||
|
||||
head :
|
||||
StaticPayload StaticData RouteParams
|
||||
StaticPayload Data RouteParams
|
||||
-> List Head.Tag
|
||||
head static =
|
||||
Seo.summary
|
||||
@ -227,7 +227,7 @@ head static =
|
||||
|> Seo.website
|
||||
|
||||
|
||||
type alias StaticData =
|
||||
type alias Data =
|
||||
{ body : List (Html.Html Msg)
|
||||
, totalCount : Int
|
||||
}
|
||||
@ -236,7 +236,7 @@ type alias StaticData =
|
||||
view :
|
||||
Model
|
||||
-> Shared.Model
|
||||
-> StaticPayload StaticData RouteParams
|
||||
-> StaticPayload Data RouteParams
|
||||
-> Document Msg
|
||||
view model sharedModel static =
|
||||
{ title = "TODO title"
|
||||
|
@ -1,4 +1,4 @@
|
||||
module Shared exposing (Model, Msg(..), SharedMsg(..), StaticData, template)
|
||||
module Shared exposing (Data, Model, Msg(..), SharedMsg(..), template)
|
||||
|
||||
import Browser.Navigation
|
||||
import Css.Global
|
||||
@ -14,12 +14,12 @@ import SharedTemplate exposing (SharedTemplate)
|
||||
import Tailwind.Utilities
|
||||
|
||||
|
||||
template : SharedTemplate Msg Model StaticData msg
|
||||
template : SharedTemplate Msg Model Data msg
|
||||
template =
|
||||
{ init = init
|
||||
, update = update
|
||||
, view = view
|
||||
, staticData = staticData
|
||||
, data = data
|
||||
, subscriptions = subscriptions
|
||||
, onPageChange = Just OnPageChange
|
||||
}
|
||||
@ -34,7 +34,7 @@ type Msg
|
||||
| SharedMsg SharedMsg
|
||||
|
||||
|
||||
type alias StaticData =
|
||||
type alias Data =
|
||||
Int
|
||||
|
||||
|
||||
@ -80,14 +80,14 @@ subscriptions _ _ =
|
||||
Sub.none
|
||||
|
||||
|
||||
staticData : DataSource.DataSource StaticData
|
||||
staticData =
|
||||
data : DataSource.DataSource Data
|
||||
data =
|
||||
DataSource.Http.get (Secrets.succeed "https://api.github.com/repos/dillonkearns/elm-pages")
|
||||
(D.field "stargazers_count" D.int)
|
||||
|
||||
|
||||
view :
|
||||
StaticData
|
||||
Data
|
||||
->
|
||||
{ path : PagePath
|
||||
, frontmatter : route
|
||||
|
@ -8,7 +8,7 @@ import Pages.PagePath exposing (PagePath)
|
||||
import Route exposing (Route)
|
||||
|
||||
|
||||
type alias SharedTemplate sharedMsg sharedModel sharedStaticData mappedMsg =
|
||||
type alias SharedTemplate sharedMsg sharedModel sharedData mappedMsg =
|
||||
{ init :
|
||||
Maybe Browser.Navigation.Key
|
||||
->
|
||||
@ -23,7 +23,7 @@ type alias SharedTemplate sharedMsg sharedModel sharedStaticData mappedMsg =
|
||||
-> ( sharedModel, Cmd sharedMsg )
|
||||
, update : sharedMsg -> sharedModel -> ( sharedModel, Cmd sharedMsg )
|
||||
, view :
|
||||
sharedStaticData
|
||||
sharedData
|
||||
->
|
||||
{ path : PagePath
|
||||
, frontmatter : Maybe Route
|
||||
@ -32,7 +32,7 @@ type alias SharedTemplate sharedMsg sharedModel sharedStaticData mappedMsg =
|
||||
-> (sharedMsg -> mappedMsg)
|
||||
-> Document mappedMsg
|
||||
-> { body : Html mappedMsg, title : String }
|
||||
, staticData : DataSource.DataSource sharedStaticData
|
||||
, data : DataSource.DataSource sharedData
|
||||
, subscriptions : PagePath -> sharedModel -> Sub sharedMsg
|
||||
, onPageChange :
|
||||
Maybe
|
||||
|
@ -14,10 +14,10 @@ import SiteConfig exposing (SiteConfig)
|
||||
import Sitemap
|
||||
|
||||
|
||||
config : SiteConfig StaticData
|
||||
config : SiteConfig Data
|
||||
config =
|
||||
\routes ->
|
||||
{ staticData = staticData
|
||||
{ data = data
|
||||
, canonicalUrl = canonicalUrl
|
||||
, manifest = manifest
|
||||
, head = head
|
||||
@ -43,19 +43,19 @@ generateFiles allRoutes =
|
||||
]
|
||||
|
||||
|
||||
type alias StaticData =
|
||||
type alias Data =
|
||||
{ siteName : String
|
||||
}
|
||||
|
||||
|
||||
staticData : DataSource.DataSource StaticData
|
||||
staticData =
|
||||
DataSource.map StaticData
|
||||
data : DataSource.DataSource Data
|
||||
data =
|
||||
DataSource.map Data
|
||||
--(StaticFile.request "site-name.txt" StaticFile.body)
|
||||
(DataSource.succeed "site-name")
|
||||
|
||||
|
||||
head : StaticData -> List Head.Tag
|
||||
head : Data -> List Head.Tag
|
||||
head static =
|
||||
[ Head.icon [ ( 32, 32 ) ] MimeType.Png (cloudinaryIcon MimeType.Png 32)
|
||||
, Head.icon [ ( 16, 16 ) ] MimeType.Png (cloudinaryIcon MimeType.Png 16)
|
||||
@ -70,7 +70,7 @@ canonicalUrl =
|
||||
"https://elm-pages.com"
|
||||
|
||||
|
||||
manifest : StaticData -> Manifest.Config
|
||||
manifest : Data -> Manifest.Config
|
||||
manifest static =
|
||||
Manifest.init
|
||||
{ name = static.siteName
|
||||
|
@ -4,5 +4,5 @@ import Pages.SiteConfig
|
||||
import Route exposing (Route)
|
||||
|
||||
|
||||
type alias SiteConfig staticData =
|
||||
Pages.SiteConfig.SiteConfig (Maybe Route) staticData
|
||||
type alias SiteConfig data =
|
||||
Pages.SiteConfig.SiteConfig (Maybe Route) data
|
||||
|
@ -1,7 +1,7 @@
|
||||
module Page exposing
|
||||
( Builder(..)
|
||||
, StaticPayload
|
||||
, withStaticData, noStaticData
|
||||
, withData, noData
|
||||
, Page, buildNoState
|
||||
, PageWithState, buildWithLocalState, buildWithSharedState
|
||||
, DynamicContext
|
||||
@ -29,9 +29,9 @@ But before the user even requests the page, we have the following data:
|
||||
- `path` - these paths are static. In other words, we know every single path when we build an elm-pages site.
|
||||
- `metadata` - we have a decoded Elm value for the page's metadata.
|
||||
- `sharedStatic` - we can access any shared data between pages. For example, you may have fetched the name of a blog ("Jane's Blog") from the API for a Content Management System (CMS).
|
||||
- `static` - this is the static data for this specific page. If you use `noStaticData`, then this will be `()`, meaning there is no page-specific static data.
|
||||
- `static` - this is the static data for this specific page. If you use `noData`, then this will be `()`, meaning there is no page-specific static data.
|
||||
|
||||
@docs withStaticData, noStaticData
|
||||
@docs withData, noData
|
||||
|
||||
|
||||
## Stateless Page Modules
|
||||
@ -54,44 +54,44 @@ import Shared
|
||||
|
||||
|
||||
{-| -}
|
||||
type alias PageWithState routeParams templateStaticData templateModel templateMsg =
|
||||
{ staticData : routeParams -> DataSource templateStaticData
|
||||
type alias PageWithState routeParams templateData templateModel templateMsg =
|
||||
{ data : routeParams -> DataSource templateData
|
||||
, staticRoutes : DataSource (List routeParams)
|
||||
, view :
|
||||
templateModel
|
||||
-> Shared.Model
|
||||
-> StaticPayload templateStaticData routeParams
|
||||
-> StaticPayload templateData routeParams
|
||||
-> Document templateMsg
|
||||
, head :
|
||||
StaticPayload templateStaticData routeParams
|
||||
StaticPayload templateData routeParams
|
||||
-> List Head.Tag
|
||||
, init : StaticPayload templateStaticData routeParams -> ( templateModel, Cmd templateMsg )
|
||||
, update : StaticPayload templateStaticData routeParams -> Maybe Browser.Navigation.Key -> templateMsg -> templateModel -> Shared.Model -> ( templateModel, Cmd templateMsg, Maybe Shared.SharedMsg )
|
||||
, init : StaticPayload templateData routeParams -> ( templateModel, Cmd templateMsg )
|
||||
, update : StaticPayload templateData routeParams -> Maybe Browser.Navigation.Key -> templateMsg -> templateModel -> Shared.Model -> ( templateModel, Cmd templateMsg, Maybe Shared.SharedMsg )
|
||||
, subscriptions : routeParams -> PagePath -> templateModel -> Shared.Model -> Sub templateMsg
|
||||
}
|
||||
|
||||
|
||||
{-| -}
|
||||
type alias Page routeParams staticData =
|
||||
PageWithState routeParams staticData () Never
|
||||
type alias Page routeParams data =
|
||||
PageWithState routeParams data () Never
|
||||
|
||||
|
||||
{-| -}
|
||||
type alias StaticPayload staticData routeParams =
|
||||
{ static : staticData -- local
|
||||
, sharedStatic : Shared.StaticData -- share
|
||||
type alias StaticPayload data routeParams =
|
||||
{ static : data -- local
|
||||
, sharedStatic : Shared.Data -- share
|
||||
, routeParams : routeParams
|
||||
, path : PagePath
|
||||
}
|
||||
|
||||
|
||||
{-| -}
|
||||
type Builder routeParams templateStaticData
|
||||
= WithStaticData
|
||||
{ staticData : routeParams -> DataSource templateStaticData
|
||||
type Builder routeParams templateData
|
||||
= WithData
|
||||
{ data : routeParams -> DataSource templateData
|
||||
, staticRoutes : DataSource (List routeParams)
|
||||
, head :
|
||||
StaticPayload templateStaticData routeParams
|
||||
StaticPayload templateData routeParams
|
||||
-> List Head.Tag
|
||||
}
|
||||
|
||||
@ -99,17 +99,17 @@ type Builder routeParams templateStaticData
|
||||
{-| -}
|
||||
buildNoState :
|
||||
{ view :
|
||||
StaticPayload templateStaticData routeParams
|
||||
StaticPayload templateData routeParams
|
||||
-> Document Never
|
||||
}
|
||||
-> Builder routeParams templateStaticData
|
||||
-> PageWithState routeParams templateStaticData () Never
|
||||
-> Builder routeParams templateData
|
||||
-> PageWithState routeParams templateData () Never
|
||||
buildNoState { view } builderState =
|
||||
case builderState of
|
||||
WithStaticData record ->
|
||||
WithData record ->
|
||||
{ view = \() _ -> view
|
||||
, head = record.head
|
||||
, staticData = record.staticData
|
||||
, data = record.data
|
||||
, staticRoutes = record.staticRoutes
|
||||
, init = \_ -> ( (), Cmd.none )
|
||||
, update = \_ _ _ _ _ -> ( (), Cmd.none, Nothing )
|
||||
@ -122,22 +122,22 @@ buildWithLocalState :
|
||||
{ view :
|
||||
templateModel
|
||||
-> Shared.Model
|
||||
-> StaticPayload templateStaticData routeParams
|
||||
-> StaticPayload templateData routeParams
|
||||
-> Document templateMsg
|
||||
, init : StaticPayload templateStaticData routeParams -> ( templateModel, Cmd templateMsg )
|
||||
, update : DynamicContext Shared.Model -> StaticPayload templateStaticData routeParams -> templateMsg -> templateModel -> ( templateModel, Cmd templateMsg )
|
||||
, init : StaticPayload templateData routeParams -> ( templateModel, Cmd templateMsg )
|
||||
, update : DynamicContext Shared.Model -> StaticPayload templateData routeParams -> templateMsg -> templateModel -> ( templateModel, Cmd templateMsg )
|
||||
, subscriptions : routeParams -> PagePath -> templateModel -> Sub templateMsg
|
||||
}
|
||||
-> Builder routeParams templateStaticData
|
||||
-> PageWithState routeParams templateStaticData templateModel templateMsg
|
||||
-> Builder routeParams templateData
|
||||
-> PageWithState routeParams templateData templateModel templateMsg
|
||||
buildWithLocalState config builderState =
|
||||
case builderState of
|
||||
WithStaticData record ->
|
||||
WithData record ->
|
||||
{ view =
|
||||
\model sharedModel staticPayload ->
|
||||
config.view model sharedModel staticPayload
|
||||
, head = record.head
|
||||
, staticData = record.staticData
|
||||
, data = record.data
|
||||
, staticRoutes = record.staticRoutes
|
||||
, init = config.init
|
||||
, update =
|
||||
@ -171,20 +171,20 @@ buildWithSharedState :
|
||||
{ view :
|
||||
templateModel
|
||||
-> Shared.Model
|
||||
-> StaticPayload templateStaticData routeParams
|
||||
-> StaticPayload templateData routeParams
|
||||
-> Document templateMsg
|
||||
, init : StaticPayload templateStaticData routeParams -> ( templateModel, Cmd templateMsg )
|
||||
, update : DynamicContext Shared.Model -> StaticPayload templateStaticData routeParams -> templateMsg -> templateModel -> ( templateModel, Cmd templateMsg, Maybe Shared.SharedMsg )
|
||||
, init : StaticPayload templateData routeParams -> ( templateModel, Cmd templateMsg )
|
||||
, update : DynamicContext Shared.Model -> StaticPayload templateData routeParams -> templateMsg -> templateModel -> ( templateModel, Cmd templateMsg, Maybe Shared.SharedMsg )
|
||||
, subscriptions : routeParams -> PagePath -> templateModel -> Shared.Model -> Sub templateMsg
|
||||
}
|
||||
-> Builder routeParams templateStaticData
|
||||
-> PageWithState routeParams templateStaticData templateModel templateMsg
|
||||
-> Builder routeParams templateData
|
||||
-> PageWithState routeParams templateData templateModel templateMsg
|
||||
buildWithSharedState config builderState =
|
||||
case builderState of
|
||||
WithStaticData record ->
|
||||
WithData record ->
|
||||
{ view = config.view
|
||||
, head = record.head
|
||||
, staticData = record.staticData
|
||||
, data = record.data
|
||||
, staticRoutes = record.staticRoutes
|
||||
, init = config.init
|
||||
, update =
|
||||
@ -201,29 +201,29 @@ buildWithSharedState config builderState =
|
||||
|
||||
|
||||
{-| -}
|
||||
withStaticData :
|
||||
{ staticData : routeParams -> DataSource templateStaticData
|
||||
withData :
|
||||
{ data : routeParams -> DataSource templateData
|
||||
, staticRoutes : DataSource (List routeParams)
|
||||
, head : StaticPayload templateStaticData routeParams -> List Head.Tag
|
||||
, head : StaticPayload templateData routeParams -> List Head.Tag
|
||||
}
|
||||
-> Builder routeParams templateStaticData
|
||||
withStaticData { staticData, head, staticRoutes } =
|
||||
WithStaticData
|
||||
{ staticData = staticData
|
||||
-> Builder routeParams templateData
|
||||
withData { data, head, staticRoutes } =
|
||||
WithData
|
||||
{ data = data
|
||||
, staticRoutes = staticRoutes
|
||||
, head = head
|
||||
}
|
||||
|
||||
|
||||
{-| -}
|
||||
noStaticData :
|
||||
noData :
|
||||
{ head : StaticPayload () routeParams -> List Head.Tag
|
||||
, staticRoutes : DataSource (List routeParams)
|
||||
}
|
||||
-> Builder routeParams ()
|
||||
noStaticData { head, staticRoutes } =
|
||||
WithStaticData
|
||||
{ staticData = \_ -> DataSource.succeed ()
|
||||
noData { head, staticRoutes } =
|
||||
WithData
|
||||
{ data = \_ -> DataSource.succeed ()
|
||||
, staticRoutes = staticRoutes
|
||||
, head = head
|
||||
}
|
||||
|
@ -20,7 +20,7 @@ async function run({ moduleName }) {
|
||||
* @param {string} pageModuleName
|
||||
*/
|
||||
function fileContent(pageModuleName) {
|
||||
return `module Page.${pageModuleName} exposing (Model, Msg, StaticData, page)
|
||||
return `module Page.${pageModuleName} exposing (Model, Msg, Data, page)
|
||||
|
||||
import Element exposing (Element)
|
||||
import Document exposing (Document)
|
||||
@ -42,9 +42,9 @@ type alias Msg =
|
||||
type alias RouteParams =
|
||||
${routeHelpers.paramsRecord(pageModuleName.split("."))}
|
||||
|
||||
page : Page RouteParams StaticData
|
||||
page : Page RouteParams Data
|
||||
page =
|
||||
Page.noStaticData
|
||||
Page.noData
|
||||
{ head = head
|
||||
, staticRoutes = DataSource.succeed [{}]
|
||||
}
|
||||
@ -53,7 +53,7 @@ page =
|
||||
|
||||
|
||||
head :
|
||||
StaticPayload StaticData RouteParams
|
||||
StaticPayload Data RouteParams
|
||||
-> List Head.Tag
|
||||
head static =
|
||||
Seo.summary
|
||||
@ -72,12 +72,12 @@ head static =
|
||||
|> Seo.website
|
||||
|
||||
|
||||
type alias StaticData =
|
||||
type alias Data =
|
||||
()
|
||||
|
||||
|
||||
view :
|
||||
StaticPayload StaticData RouteParams
|
||||
StaticPayload Data RouteParams
|
||||
-> Document Msg
|
||||
view static =
|
||||
{ title = "TODO title"
|
||||
|
@ -103,14 +103,12 @@ type Msg
|
||||
.join(" | ")}
|
||||
|
||||
|
||||
type PageStaticData
|
||||
type PageData
|
||||
= Data404NotFoundPage____
|
||||
| ${templates
|
||||
.map(
|
||||
(name) =>
|
||||
`Data${pathNormalizedName(name)} Page.${moduleName(
|
||||
name
|
||||
)}.StaticData\n`
|
||||
`Data${pathNormalizedName(name)} Page.${moduleName(name)}.Data\n`
|
||||
)
|
||||
.join(" | ")}
|
||||
|
||||
@ -120,14 +118,14 @@ view :
|
||||
{ path : PagePath
|
||||
, frontmatter : Maybe Route
|
||||
}
|
||||
-> Shared.StaticData
|
||||
-> PageStaticData
|
||||
-> Shared.Data
|
||||
-> PageData
|
||||
->
|
||||
{ view : Model -> { title : String, body : Html Msg }
|
||||
, head : List Head.Tag
|
||||
}
|
||||
view page globalData staticData =
|
||||
case ( page.frontmatter, staticData ) of
|
||||
view page globalData pageData =
|
||||
case ( page.frontmatter, pageData ) of
|
||||
${templates
|
||||
.map(
|
||||
(name) =>
|
||||
@ -188,8 +186,8 @@ view page globalData staticData =
|
||||
|
||||
init :
|
||||
Maybe Shared.Model
|
||||
-> Shared.StaticData
|
||||
-> PageStaticData
|
||||
-> Shared.Data
|
||||
-> PageData
|
||||
-> Maybe Browser.Navigation.Key
|
||||
->
|
||||
Maybe
|
||||
@ -201,13 +199,13 @@ init :
|
||||
, metadata : Maybe Route
|
||||
}
|
||||
-> ( Model, Cmd Msg )
|
||||
init currentGlobalModel sharedStaticData pageStaticData navigationKey maybePagePath =
|
||||
init currentGlobalModel sharedData pageData navigationKey maybePagePath =
|
||||
let
|
||||
( sharedModel, globalCmd ) =
|
||||
currentGlobalModel |> Maybe.map (\\m -> ( m, Cmd.none )) |> Maybe.withDefault (Shared.template.init navigationKey maybePagePath)
|
||||
|
||||
( templateModel, templateCmd ) =
|
||||
case ( ( Maybe.map2 Tuple.pair (maybePagePath |> Maybe.andThen .metadata) (maybePagePath |> Maybe.map .path) ), pageStaticData ) of
|
||||
case ( ( Maybe.map2 Tuple.pair (maybePagePath |> Maybe.andThen .metadata) (maybePagePath |> Maybe.map .path) ), pageData ) of
|
||||
${templates
|
||||
.map(
|
||||
(name) => `( Just ( (Route.${routeHelpers.routeVariant(
|
||||
@ -217,7 +215,7 @@ init currentGlobalModel sharedStaticData pageStaticData navigationKey maybePageP
|
||||
)} thisPageData ) ->
|
||||
Page.${moduleName(name)}.page.init
|
||||
{ static = thisPageData
|
||||
, sharedStatic = sharedStaticData
|
||||
, sharedStatic = sharedData
|
||||
, routeParams = routeParams
|
||||
, path = justPath.path
|
||||
}
|
||||
@ -242,8 +240,8 @@ init currentGlobalModel sharedStaticData pageStaticData navigationKey maybePageP
|
||||
|
||||
|
||||
|
||||
update : Shared.StaticData -> PageStaticData -> Maybe Browser.Navigation.Key -> Msg -> Model -> ( Model, Cmd Msg )
|
||||
update sharedStaticData pageStaticData navigationKey msg model =
|
||||
update : Shared.Data -> PageData -> Maybe Browser.Navigation.Key -> Msg -> Model -> ( Model, Cmd Msg )
|
||||
update sharedData pageData navigationKey msg model =
|
||||
case msg of
|
||||
MsgGlobal msg_ ->
|
||||
let
|
||||
@ -255,7 +253,7 @@ update sharedStaticData pageStaticData navigationKey msg model =
|
||||
)
|
||||
|
||||
OnPageChange record ->
|
||||
(init (Just model.global) sharedStaticData pageStaticData navigationKey <|
|
||||
(init (Just model.global) sharedData pageData navigationKey <|
|
||||
Just
|
||||
{ path =
|
||||
{ path = record.path
|
||||
@ -296,7 +294,7 @@ update sharedStaticData pageStaticData navigationKey msg model =
|
||||
Msg${pathNormalizedName(name)} msg_ ->
|
||||
let
|
||||
( updatedPageModel, pageCmd, ( newGlobalModel, newGlobalCmd ) ) =
|
||||
case ( model.page, pageStaticData, Maybe.map2 Tuple.pair (model.current |> Maybe.andThen .metadata) (model.current |> Maybe.map .path) ) of
|
||||
case ( model.page, pageData, Maybe.map2 Tuple.pair (model.current |> Maybe.andThen .metadata) (model.current |> Maybe.map .path) ) of
|
||||
( Model${pathNormalizedName(
|
||||
name
|
||||
)} pageModel, Data${pathNormalizedName(
|
||||
@ -306,7 +304,7 @@ update sharedStaticData pageStaticData navigationKey msg model =
|
||||
)} routeParams), justPage ) ) ->
|
||||
Page.${moduleName(name)}.page.update
|
||||
{ static = thisPageData
|
||||
, sharedStatic = sharedStaticData
|
||||
, sharedStatic = sharedData
|
||||
, routeParams = routeParams
|
||||
, path = justPage.path
|
||||
}
|
||||
@ -370,7 +368,7 @@ templateSubscriptions route path model =
|
||||
|
||||
main : ${
|
||||
phase === "browser"
|
||||
? "Pages.Internal.Platform.Program Model Msg PageStaticData Shared.StaticData"
|
||||
? "Pages.Internal.Platform.Program Model Msg PageData Shared.Data"
|
||||
: "Pages.Internal.Platform.Cli.Program (Maybe Route)"
|
||||
}
|
||||
main =
|
||||
@ -396,8 +394,8 @@ main =
|
||||
, onPageChange = OnPageChange
|
||||
, toJsPort = toJsPort
|
||||
, fromJsPort = fromJsPort identity
|
||||
, staticData = staticDataForRoute
|
||||
, sharedStaticData = Shared.template.staticData
|
||||
, data = dataForRoute
|
||||
, sharedData = Shared.template.data
|
||||
, generateFiles =
|
||||
getStaticRoutes
|
||||
|> DataSource.andThen
|
||||
@ -413,8 +411,8 @@ main =
|
||||
)
|
||||
}
|
||||
|
||||
staticDataForRoute : Maybe Route -> DataSource PageStaticData
|
||||
staticDataForRoute route =
|
||||
dataForRoute : Maybe Route -> DataSource PageData
|
||||
dataForRoute route =
|
||||
case route of
|
||||
Nothing ->
|
||||
DataSource.succeed Data404NotFoundPage____
|
||||
@ -425,7 +423,7 @@ staticDataForRoute route =
|
||||
name
|
||||
)} routeParams) ->\n Page.${name.join(
|
||||
"."
|
||||
)}.page.staticData routeParams |> DataSource.map Data${routeHelpers.routeVariant(
|
||||
)}.page.data routeParams |> DataSource.map Data${routeHelpers.routeVariant(
|
||||
name
|
||||
)}`
|
||||
)
|
||||
@ -474,7 +472,7 @@ getStaticRoutes =
|
||||
manifestGenerator : List ( Maybe Route ) -> DataSource (Result anyError { path : List String, content : String })
|
||||
manifestGenerator resolvedRoutes =
|
||||
Site.config resolvedRoutes
|
||||
|> .staticData
|
||||
|> .data
|
||||
|> DataSource.map
|
||||
(\\data ->
|
||||
(Site.config resolvedRoutes |> .manifest) data
|
||||
|
@ -32,9 +32,9 @@ type alias Msg =
|
||||
Never
|
||||
|
||||
|
||||
template : TemplateDocument BlogPost StaticData Model Msg
|
||||
template : TemplateDocument BlogPost Data Model Msg
|
||||
template =
|
||||
Template.withStaticData staticData head
|
||||
Template.withData staticData head
|
||||
|> Template.buildNoState { view = view }
|
||||
|
||||
|
||||
@ -88,17 +88,17 @@ findMatchingImage imageAssetPath =
|
||||
|
||||
|
||||
|
||||
staticData : a -> StaticHttp.Request StaticData
|
||||
staticData : a -> StaticHttp.Request Data
|
||||
staticData siteMetadata =
|
||||
StaticHttp.get (Secrets.succeed "https://api.github.com/repos/dillonkearns/elm-pages")
|
||||
(D.field "stargazers_count" D.int)
|
||||
|
||||
|
||||
type alias StaticData =
|
||||
type alias Data =
|
||||
Int
|
||||
|
||||
|
||||
view : List ( PagePath, TemplateType.Metadata ) -> StaticData -> Model -> BlogPost -> ( a, List (Element msg) ) -> { title : String, body : Element msg }
|
||||
view : List ( PagePath, TemplateType.Metadata ) -> Data -> Model -> BlogPost -> ( a, List (Element msg) ) -> { title : String, body : Element msg }
|
||||
view allMetadata static model blogPost rendered =
|
||||
{ title = blogPost.title
|
||||
, body =
|
||||
@ -131,7 +131,7 @@ view allMetadata static model blogPost rendered =
|
||||
}
|
||||
|
||||
|
||||
head : StaticData -> PagePath.PagePath -> BlogPost -> List (Head.Tag Pages.PathKey)
|
||||
head : Data -> PagePath.PagePath -> BlogPost -> List (Head.Tag Pages.PathKey)
|
||||
head static currentPath meta =
|
||||
Head.structuredData
|
||||
(StructuredData.article
|
||||
|
@ -19,13 +19,13 @@ import Task
|
||||
import Url exposing (Url)
|
||||
|
||||
|
||||
type alias Program userModel userMsg pageStaticData sharedStaticData =
|
||||
Platform.Program Flags (Model userModel pageStaticData sharedStaticData) (Msg userMsg)
|
||||
type alias Program userModel userMsg pageData sharedData =
|
||||
Platform.Program Flags (Model userModel pageData sharedData) (Msg userMsg)
|
||||
|
||||
|
||||
mainView :
|
||||
ProgramConfig userMsg userModel route siteStaticData pageStaticData sharedStaticData
|
||||
-> Model userModel pageStaticData sharedStaticData
|
||||
ProgramConfig userMsg userModel route siteData pageData sharedData
|
||||
-> Model userModel pageData sharedData
|
||||
-> { title : String, body : Html userMsg }
|
||||
mainView config model =
|
||||
let
|
||||
@ -47,8 +47,8 @@ mainView config model =
|
||||
{ path = ContentCache.pathForUrl urls |> PagePath.build
|
||||
, frontmatter = config.urlToRoute model.url
|
||||
}
|
||||
pageData.sharedStaticData
|
||||
pageData.pageStaticData
|
||||
pageData.sharedData
|
||||
pageData.pageData
|
||||
|> .view
|
||||
)
|
||||
pageData.userModel
|
||||
@ -85,8 +85,8 @@ urlsToPagePath urls =
|
||||
|
||||
|
||||
view :
|
||||
ProgramConfig userMsg userModel route siteStaticData pageStaticData sharedStaticData
|
||||
-> Model userModel pageStaticData sharedStaticData
|
||||
ProgramConfig userMsg userModel route siteData pageData sharedData
|
||||
-> Model userModel pageData sharedData
|
||||
-> Browser.Document (Msg userMsg)
|
||||
view config model =
|
||||
let
|
||||
@ -132,11 +132,11 @@ contentJsonDecoder =
|
||||
|
||||
|
||||
init :
|
||||
ProgramConfig userMsg userModel route staticData pageStaticData sharedStaticData
|
||||
ProgramConfig userMsg userModel route staticData pageData sharedData
|
||||
-> Flags
|
||||
-> Url
|
||||
-> Browser.Navigation.Key
|
||||
-> ( Model userModel pageStaticData sharedStaticData, Cmd (Msg userMsg) )
|
||||
-> ( Model userModel pageData sharedData, Cmd (Msg userMsg) )
|
||||
init config flags url key =
|
||||
let
|
||||
contentCache =
|
||||
@ -172,25 +172,25 @@ init config flags url key =
|
||||
case contentJson |> Maybe.map .staticData of
|
||||
Just justContentJson ->
|
||||
let
|
||||
pageStaticDataResult : Result BuildError pageStaticData
|
||||
pageStaticDataResult =
|
||||
pageDataResult : Result BuildError pageData
|
||||
pageDataResult =
|
||||
StaticHttpRequest.resolve ApplicationType.Browser
|
||||
(config.staticData (config.urlToRoute url))
|
||||
(config.data (config.urlToRoute url))
|
||||
justContentJson
|
||||
|> Result.mapError (StaticHttpRequest.toBuildError url.path)
|
||||
|
||||
sharedStaticDataResult : Result BuildError sharedStaticData
|
||||
sharedStaticDataResult =
|
||||
sharedDataResult : Result BuildError sharedData
|
||||
sharedDataResult =
|
||||
StaticHttpRequest.resolve ApplicationType.Browser
|
||||
config.sharedStaticData
|
||||
config.sharedData
|
||||
justContentJson
|
||||
|> Result.mapError (StaticHttpRequest.toBuildError url.path)
|
||||
|
||||
pagePath =
|
||||
urlsToPagePath urls
|
||||
in
|
||||
case Result.map2 Tuple.pair sharedStaticDataResult pageStaticDataResult of
|
||||
Ok ( sharedStaticData, pageStaticData ) ->
|
||||
case Result.map2 Tuple.pair sharedDataResult pageDataResult of
|
||||
Ok ( sharedData, pageData ) ->
|
||||
let
|
||||
( userModel, userCmd ) =
|
||||
Just
|
||||
@ -201,7 +201,7 @@ init config flags url key =
|
||||
}
|
||||
, metadata = config.urlToRoute url
|
||||
}
|
||||
|> config.init sharedStaticData pageStaticData (Just key)
|
||||
|> config.init sharedData pageData (Just key)
|
||||
|
||||
cmd =
|
||||
[ userCmd
|
||||
@ -221,8 +221,8 @@ init config flags url key =
|
||||
, contentCache = contentCache
|
||||
, pageData =
|
||||
Ok
|
||||
{ pageStaticData = pageStaticData
|
||||
, sharedStaticData = sharedStaticData
|
||||
{ pageData = pageData
|
||||
, sharedData = sharedData
|
||||
, userModel = userModel
|
||||
}
|
||||
}
|
||||
@ -261,7 +261,7 @@ type Msg userMsg
|
||||
| NoOp
|
||||
|
||||
|
||||
type alias Model userModel pageStaticData sharedStaticData =
|
||||
type alias Model userModel pageData sharedData =
|
||||
{ key : Browser.Navigation.Key
|
||||
, url : Url
|
||||
, baseUrl : Url
|
||||
@ -270,17 +270,17 @@ type alias Model userModel pageStaticData sharedStaticData =
|
||||
Result
|
||||
String
|
||||
{ userModel : userModel
|
||||
, pageStaticData : pageStaticData
|
||||
, sharedStaticData : sharedStaticData
|
||||
, pageData : pageData
|
||||
, sharedData : sharedData
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
update :
|
||||
ProgramConfig userMsg userModel route siteStaticData pageStaticData sharedStaticData
|
||||
ProgramConfig userMsg userModel route siteData pageData sharedData
|
||||
-> Msg userMsg
|
||||
-> Model userModel pageStaticData sharedStaticData
|
||||
-> ( Model userModel pageStaticData sharedStaticData, Cmd (Msg userMsg) )
|
||||
-> Model userModel pageData sharedData
|
||||
-> ( Model userModel pageData sharedData, Cmd (Msg userMsg) )
|
||||
update config appMsg model =
|
||||
case appMsg of
|
||||
LinkClicked urlRequest ->
|
||||
@ -331,7 +331,7 @@ update config appMsg model =
|
||||
Ok pageData ->
|
||||
let
|
||||
( userModel, userCmd ) =
|
||||
config.update pageData.sharedStaticData pageData.pageStaticData (Just model.key) userMsg pageData.userModel
|
||||
config.update pageData.sharedData pageData.pageData (Just model.key) userMsg pageData.userModel
|
||||
|
||||
updatedPageData =
|
||||
Ok { pageData | userModel = userModel }
|
||||
@ -367,21 +367,21 @@ update config appMsg model =
|
||||
|> Result.map
|
||||
(\pageStaticData ->
|
||||
{ userModel = userModel
|
||||
, sharedStaticData = pageData.sharedStaticData
|
||||
, pageStaticData = pageStaticData
|
||||
, sharedData = pageData.sharedData
|
||||
, pageData = pageStaticData
|
||||
}
|
||||
)
|
||||
|
||||
updatedPageStaticData =
|
||||
StaticHttpRequest.resolve ApplicationType.Browser
|
||||
(config.staticData (config.urlToRoute url))
|
||||
(config.data (config.urlToRoute url))
|
||||
contentJson.staticData
|
||||
|> Result.mapError (\_ -> "Http error")
|
||||
|
||||
( userModel, userCmd ) =
|
||||
config.update
|
||||
pageData.sharedStaticData
|
||||
(updatedPageStaticData |> Result.withDefault pageData.pageStaticData)
|
||||
pageData.sharedData
|
||||
(updatedPageStaticData |> Result.withDefault pageData.pageData)
|
||||
(Just model.key)
|
||||
(config.onPageChange
|
||||
{ path = urlToPagePath url model.baseUrl
|
||||
@ -415,17 +415,17 @@ update config appMsg model =
|
||||
urls =
|
||||
{ currentUrl = model.url, baseUrl = model.baseUrl }
|
||||
|
||||
pageStaticDataResult : Result BuildError pageStaticData
|
||||
pageStaticDataResult =
|
||||
pageDataResult : Result BuildError pageData
|
||||
pageDataResult =
|
||||
StaticHttpRequest.resolve ApplicationType.Browser
|
||||
(config.staticData (config.urlToRoute model.url))
|
||||
(config.data (config.urlToRoute model.url))
|
||||
contentJson.staticData
|
||||
|> Result.mapError (StaticHttpRequest.toBuildError model.url.path)
|
||||
|
||||
sharedStaticDataResult : Result BuildError sharedStaticData
|
||||
sharedStaticDataResult =
|
||||
sharedDataResult : Result BuildError sharedData
|
||||
sharedDataResult =
|
||||
StaticHttpRequest.resolve ApplicationType.Browser
|
||||
config.sharedStaticData
|
||||
config.sharedData
|
||||
contentJson.staticData
|
||||
|> Result.mapError (StaticHttpRequest.toBuildError model.url.path)
|
||||
|
||||
@ -436,16 +436,16 @@ update config appMsg model =
|
||||
was404 =
|
||||
ContentCache.is404 model.contentCache urls
|
||||
in
|
||||
case Result.map2 Tuple.pair sharedStaticDataResult pageStaticDataResult of
|
||||
Ok ( sharedStaticData, pageStaticData ) ->
|
||||
case Result.map2 Tuple.pair sharedDataResult pageDataResult of
|
||||
Ok ( sharedData, pageData ) ->
|
||||
let
|
||||
updateResult =
|
||||
if from404ToNon404 then
|
||||
case model.pageData of
|
||||
Ok pageData ->
|
||||
Ok pageData_ ->
|
||||
config.update
|
||||
sharedStaticData
|
||||
pageStaticData
|
||||
sharedData
|
||||
pageData
|
||||
(Just model.key)
|
||||
(config.onPageChange
|
||||
{ path = urlToPagePath model.url model.baseUrl
|
||||
@ -454,7 +454,7 @@ update config appMsg model =
|
||||
, metadata = config.urlToRoute model.url
|
||||
}
|
||||
)
|
||||
pageData.userModel
|
||||
pageData_.userModel
|
||||
|> Just
|
||||
|
||||
Err error ->
|
||||
@ -469,8 +469,8 @@ update config appMsg model =
|
||||
| contentCache = ContentCache.init (Just ( urls, contentJson ))
|
||||
, pageData =
|
||||
Ok
|
||||
{ pageStaticData = pageStaticData
|
||||
, sharedStaticData = sharedStaticData
|
||||
{ pageData = pageData
|
||||
, sharedData = sharedData
|
||||
, userModel = userModel
|
||||
}
|
||||
}
|
||||
@ -487,8 +487,8 @@ update config appMsg model =
|
||||
model.pageData
|
||||
|> Result.map
|
||||
(\previousPageData ->
|
||||
{ pageStaticData = pageStaticData
|
||||
, sharedStaticData = sharedStaticData
|
||||
{ pageData = pageData
|
||||
, sharedData = sharedData
|
||||
, userModel = previousPageData.userModel
|
||||
}
|
||||
)
|
||||
@ -509,8 +509,8 @@ update config appMsg model =
|
||||
|
||||
|
||||
application :
|
||||
ProgramConfig userMsg userModel route staticData pageStaticData sharedStaticData
|
||||
-> Platform.Program Flags (Model userModel pageStaticData sharedStaticData) (Msg userMsg)
|
||||
ProgramConfig userMsg userModel route staticData pageData sharedData
|
||||
-> Platform.Program Flags (Model userModel pageData sharedData) (Msg userMsg)
|
||||
application config =
|
||||
Browser.application
|
||||
{ init =
|
||||
|
@ -69,7 +69,7 @@ type alias Program route =
|
||||
|
||||
|
||||
cliApplication :
|
||||
ProgramConfig userMsg userModel route siteStaticData pageStaticData sharedStaticData
|
||||
ProgramConfig userMsg userModel route siteData pageData sharedData
|
||||
-> Program route
|
||||
cliApplication config =
|
||||
let
|
||||
@ -184,12 +184,12 @@ asJsonView x =
|
||||
|
||||
|
||||
|
||||
--perform : RenderRequest route -> ProgramConfig userMsg userModel route siteStaticData pageStaticData sharedStaticData -> (Json.Encode.Value -> Cmd Msg) -> Effect -> Cmd Msg
|
||||
--perform : RenderRequest route -> ProgramConfig userMsg userModel route siteData pageData sharedData -> (Json.Encode.Value -> Cmd Msg) -> Effect -> Cmd Msg
|
||||
|
||||
|
||||
perform :
|
||||
RenderRequest route
|
||||
-> ProgramConfig userMsg userModel route siteStaticData pageStaticData sharedStaticData
|
||||
-> ProgramConfig userMsg userModel route siteData pageData sharedData
|
||||
-> (Codec.Value -> Cmd Never)
|
||||
-> Effect
|
||||
-> Cmd Msg
|
||||
@ -347,7 +347,7 @@ flagsDecoder =
|
||||
init :
|
||||
RenderRequest route
|
||||
-> ContentCache
|
||||
-> ProgramConfig userMsg userModel route siteStaticData pageStaticData sharedStaticData
|
||||
-> ProgramConfig userMsg userModel route siteData pageData sharedData
|
||||
-> Decode.Value
|
||||
-> ( Model route, Effect )
|
||||
init renderRequest contentCache config flags =
|
||||
@ -381,7 +381,7 @@ initLegacy :
|
||||
RenderRequest route
|
||||
-> { a | secrets : SecretsDict, mode : Mode, staticHttpCache : Dict String (Maybe String) }
|
||||
-> ContentCache
|
||||
-> ProgramConfig userMsg userModel route siteStaticData pageStaticData sharedStaticData
|
||||
-> ProgramConfig userMsg userModel route siteData pageData sharedData
|
||||
-> Decode.Value
|
||||
-> ( Model route, Effect )
|
||||
initLegacy renderRequest { secrets, mode, staticHttpCache } contentCache config flags =
|
||||
@ -393,8 +393,8 @@ initLegacy renderRequest { secrets, mode, staticHttpCache } contentCache config
|
||||
StaticResponses.renderSingleRoute config
|
||||
serverRequestPayload
|
||||
(DataSource.map2 (\_ _ -> ())
|
||||
(config.staticData serverRequestPayload.frontmatter)
|
||||
config.sharedStaticData
|
||||
(config.data serverRequestPayload.frontmatter)
|
||||
config.sharedData
|
||||
)
|
||||
(config.handleRoute serverRequestPayload.frontmatter)
|
||||
|
||||
@ -437,7 +437,7 @@ initLegacy renderRequest { secrets, mode, staticHttpCache } contentCache config
|
||||
|
||||
updateAndSendPortIfDone :
|
||||
ContentCache
|
||||
-> ProgramConfig userMsg userModel route siteStaticData pageStaticData sharedStaticData
|
||||
-> ProgramConfig userMsg userModel route siteData pageData sharedData
|
||||
-> Model route
|
||||
-> ( Model route, Effect )
|
||||
updateAndSendPortIfDone contentCache config model =
|
||||
@ -450,7 +450,7 @@ updateAndSendPortIfDone contentCache config model =
|
||||
|
||||
update :
|
||||
ContentCache
|
||||
-> ProgramConfig userMsg userModel route siteStaticData pageStaticData sharedStaticData
|
||||
-> ProgramConfig userMsg userModel route siteData pageData sharedData
|
||||
-> Msg
|
||||
-> Model route
|
||||
-> ( Model route, Effect )
|
||||
@ -620,7 +620,7 @@ update contentCache config msg model =
|
||||
|
||||
nextStepToEffect :
|
||||
ContentCache
|
||||
-> ProgramConfig userMsg userModel route siteStaticData pageStaticData sharedStaticData
|
||||
-> ProgramConfig userMsg userModel route siteData pageData sharedData
|
||||
-> Model route
|
||||
-> ( StaticResponses, StaticResponses.NextStep route )
|
||||
-> ( Model route, Effect )
|
||||
@ -745,7 +745,7 @@ nextStepToEffect contentCache config model ( updatedStaticResponsesModel, nextSt
|
||||
|
||||
sendSinglePageProgress :
|
||||
ToJsSuccessPayload
|
||||
-> ProgramConfig userMsg userModel route siteStaticData pageStaticData sharedStaticData
|
||||
-> ProgramConfig userMsg userModel route siteData pageData sharedData
|
||||
-> Model route
|
||||
-> ( PagePath, route )
|
||||
-> Effect
|
||||
@ -786,17 +786,17 @@ sendSinglePageProgress toJsPayload config model =
|
||||
currentPage =
|
||||
{ path = page, frontmatter = config.urlToRoute currentUrl }
|
||||
|
||||
pageStaticDataResult : Result BuildError pageStaticData
|
||||
pageStaticDataResult =
|
||||
pageDataResult : Result BuildError pageData
|
||||
pageDataResult =
|
||||
StaticHttpRequest.resolve ApplicationType.Browser
|
||||
(config.staticData (config.urlToRoute currentUrl))
|
||||
(config.data (config.urlToRoute currentUrl))
|
||||
(staticData |> Dict.map (\_ v -> Just v))
|
||||
|> Result.mapError (StaticHttpRequest.toBuildError currentUrl.path)
|
||||
|
||||
sharedStaticDataResult : Result BuildError sharedStaticData
|
||||
sharedStaticDataResult =
|
||||
sharedDataResult : Result BuildError sharedData
|
||||
sharedDataResult =
|
||||
StaticHttpRequest.resolve ApplicationType.Browser
|
||||
config.sharedStaticData
|
||||
config.sharedData
|
||||
(staticData |> Dict.map (\_ v -> Just v))
|
||||
|> Result.mapError (StaticHttpRequest.toBuildError currentUrl.path)
|
||||
|
||||
@ -813,14 +813,14 @@ sendSinglePageProgress toJsPayload config model =
|
||||
, fragment = Nothing
|
||||
}
|
||||
in
|
||||
case Result.map2 Tuple.pair sharedStaticDataResult pageStaticDataResult of
|
||||
Ok ( sharedStaticData, pageStaticData ) ->
|
||||
case Result.map2 Tuple.pair sharedDataResult pageDataResult of
|
||||
Ok ( sharedData, pageData ) ->
|
||||
let
|
||||
pageModel : userModel
|
||||
pageModel =
|
||||
config.init
|
||||
sharedStaticData
|
||||
pageStaticData
|
||||
sharedData
|
||||
pageData
|
||||
Nothing
|
||||
(Just
|
||||
{ path =
|
||||
@ -835,11 +835,11 @@ sendSinglePageProgress toJsPayload config model =
|
||||
|
||||
viewValue : { title : String, body : Html userMsg }
|
||||
viewValue =
|
||||
(config.view currentPage sharedStaticData pageStaticData |> .view) pageModel
|
||||
(config.view currentPage sharedData pageData |> .view) pageModel
|
||||
|
||||
headTags : List Head.Tag
|
||||
headTags =
|
||||
config.view currentPage sharedStaticData pageStaticData |> .head
|
||||
config.view currentPage sharedData pageData |> .head
|
||||
in
|
||||
{ route = page |> PagePath.toString
|
||||
, contentJson =
|
||||
|
@ -36,9 +36,9 @@ error =
|
||||
init :
|
||||
{ config
|
||||
| getStaticRoutes : DataSource.DataSource (List route)
|
||||
, site : SiteConfig route siteStaticData
|
||||
, staticData : route -> DataSource.DataSource pageStaticData
|
||||
, sharedStaticData : DataSource.DataSource sharedStaticData
|
||||
, site : SiteConfig route siteData
|
||||
, data : route -> DataSource.DataSource pageData
|
||||
, sharedData : DataSource.DataSource sharedData
|
||||
, generateFiles :
|
||||
DataSource.DataSource
|
||||
(List
|
||||
@ -57,11 +57,11 @@ init config =
|
||||
(config.getStaticRoutes
|
||||
|> DataSource.andThen
|
||||
(\resolvedRoutes ->
|
||||
config.site resolvedRoutes |> .staticData
|
||||
config.site resolvedRoutes |> .data
|
||||
)
|
||||
)
|
||||
config.generateFiles
|
||||
config.sharedStaticData
|
||||
config.sharedData
|
||||
)
|
||||
Dict.empty
|
||||
|> GettingInitialData
|
||||
@ -157,9 +157,9 @@ nextStep :
|
||||
{ config
|
||||
| getStaticRoutes : DataSource.DataSource (List route)
|
||||
, routeToPath : route -> List String
|
||||
, staticData : route -> DataSource.DataSource pageStaticData
|
||||
, sharedStaticData : DataSource.DataSource sharedStaticData
|
||||
, site : SiteConfig route siteStaticData
|
||||
, data : route -> DataSource.DataSource pageData
|
||||
, sharedData : DataSource.DataSource sharedData
|
||||
, site : SiteConfig route siteData
|
||||
, generateFiles :
|
||||
DataSource.DataSource
|
||||
(List
|
||||
@ -393,7 +393,7 @@ nextStep config ({ mode, secrets, allRawResponses, errors } as model) maybeRoute
|
||||
)
|
||||
config.getStaticRoutes
|
||||
config.generateFiles
|
||||
config.sharedStaticData
|
||||
config.sharedData
|
||||
)
|
||||
(allRawResponses |> Dict.Extra.filterMap (\_ value -> Just value))
|
||||
in
|
||||
@ -408,8 +408,8 @@ nextStep config ({ mode, secrets, allRawResponses, errors } as model) maybeRoute
|
||||
entry =
|
||||
NotFetched
|
||||
(DataSource.map2 (\_ _ -> ())
|
||||
config.sharedStaticData
|
||||
(config.staticData route)
|
||||
config.sharedData
|
||||
(config.data route)
|
||||
)
|
||||
Dict.empty
|
||||
in
|
||||
|
@ -11,10 +11,10 @@ import Pages.SiteConfig exposing (SiteConfig)
|
||||
import Url exposing (Url)
|
||||
|
||||
|
||||
type alias ProgramConfig userMsg userModel route siteStaticData pageStaticData sharedStaticData =
|
||||
type alias ProgramConfig userMsg userModel route siteData pageData sharedData =
|
||||
{ init :
|
||||
sharedStaticData
|
||||
-> pageStaticData
|
||||
sharedData
|
||||
-> pageData
|
||||
-> Maybe Browser.Navigation.Key
|
||||
->
|
||||
Maybe
|
||||
@ -26,16 +26,16 @@ type alias ProgramConfig userMsg userModel route siteStaticData pageStaticData s
|
||||
, metadata : route
|
||||
}
|
||||
-> ( userModel, Cmd userMsg )
|
||||
, update : sharedStaticData -> pageStaticData -> Maybe Browser.Navigation.Key -> userMsg -> userModel -> ( userModel, Cmd userMsg )
|
||||
, update : sharedData -> pageData -> Maybe Browser.Navigation.Key -> userMsg -> userModel -> ( userModel, Cmd userMsg )
|
||||
, subscriptions : route -> PagePath -> userModel -> Sub userMsg
|
||||
, sharedStaticData : DataSource.DataSource sharedStaticData
|
||||
, staticData : route -> DataSource.DataSource pageStaticData
|
||||
, sharedData : DataSource.DataSource sharedData
|
||||
, data : route -> DataSource.DataSource pageData
|
||||
, view :
|
||||
{ path : PagePath
|
||||
, frontmatter : route
|
||||
}
|
||||
-> sharedStaticData
|
||||
-> pageStaticData
|
||||
-> sharedData
|
||||
-> pageData
|
||||
->
|
||||
{ view : userModel -> { title : String, body : Html userMsg }
|
||||
, head : List Head.Tag
|
||||
@ -44,7 +44,7 @@ type alias ProgramConfig userMsg userModel route siteStaticData pageStaticData s
|
||||
, getStaticRoutes : DataSource.DataSource (List route)
|
||||
, urlToRoute : Url -> route
|
||||
, routeToPath : route -> List String
|
||||
, site : SiteConfig route siteStaticData
|
||||
, site : SiteConfig route siteData
|
||||
, toJsPort : Json.Encode.Value -> Cmd Never
|
||||
, fromJsPort : Sub Decode.Value
|
||||
, generateFiles :
|
||||
|
@ -5,14 +5,14 @@ import Head
|
||||
import Pages.Manifest
|
||||
|
||||
|
||||
type alias SiteConfig route staticData =
|
||||
type alias SiteConfig route data =
|
||||
List route
|
||||
->
|
||||
{ staticData : DataSource.DataSource staticData
|
||||
{ data : DataSource.DataSource data
|
||||
, canonicalUrl : String
|
||||
, manifest : staticData -> Pages.Manifest.Config
|
||||
, manifest : data -> Pages.Manifest.Config
|
||||
, head :
|
||||
staticData
|
||||
data
|
||||
-> List Head.Tag
|
||||
, generateFiles :
|
||||
DataSource.DataSource
|
||||
|
@ -41,7 +41,7 @@ type ServerOrBuild
|
||||
|
||||
|
||||
decoder :
|
||||
ProgramConfig userMsg userModel route siteStaticData pageStaticData sharedStaticData
|
||||
ProgramConfig userMsg userModel route siteData pageData sharedData
|
||||
-> Decode.Decoder (RenderRequest route)
|
||||
decoder config =
|
||||
optionalField "request"
|
||||
@ -91,7 +91,7 @@ decoder config =
|
||||
|
||||
|
||||
requestPayloadDecoder :
|
||||
ProgramConfig userMsg userModel route siteStaticData pageStaticData sharedStaticData
|
||||
ProgramConfig userMsg userModel route siteData pageData sharedData
|
||||
-> Decode.Decoder (RequestPayload route)
|
||||
requestPayloadDecoder config =
|
||||
(Decode.string
|
||||
|
@ -879,7 +879,7 @@ startLowLevel generateFiles documentBodyResult staticHttpCache pages =
|
||||
Debug.todo <| "Couldn't find page: " ++ Debug.toString page ++ "\npages: " ++ Debug.toString pages
|
||||
, subscriptions = \_ _ _ -> Sub.none
|
||||
, routeToPath = \(Route route) -> route |> String.split "/"
|
||||
, sharedStaticData = DataSource.succeed ()
|
||||
, sharedData = DataSource.succeed ()
|
||||
, onPageChange = \_ -> Continue
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user