feat: added feldwitz article skeleton

This commit is contained in:
Nick 2025-04-11 17:06:38 -05:00
parent c4db6a0617
commit e1091356ff
4 changed files with 156 additions and 2 deletions

View file

@ -1 +1 @@
/nix/store/si1f73qc72k63h6kqdb5yz230p0vlnm4-pre-commit-config.json /nix/store/szka9nhkbpqrp6fjyrwrdshk3qmc8sxz-pre-commit-config.json

View file

@ -0,0 +1,33 @@
module Config.Pages.Blog.Records.FeldwitzFuckery exposing (..)
import Config.Pages.Blog.Types exposing (BlogArticle)
import Route.Path as Path
articleFeldwitzFuckery : BlogArticle
articleFeldwitzFuckery =
{ articleName = ""
, articleLink = Path.toString Path.Blog_Feldwitzfuckery
, articleAuthor = "Nick Hiebert"
, isNewTabLink = False
, hasReferences = True
, hasTableOfContents = True
, articleImage = ""
, articlePublished = ""
, articleBody = """
![][image1]
[image1]: /blog/feldwitzfuckery/image1.png
Thank you for reading! If you like what you've read and want help me create more content like this, consider pledging your [Support](https://www.uprootnutrition.com/donate). Every little bit helps! I hope you found the content interesting!"""
, articleReferences =
[ { author = ""
, title = ""
, journal = ""
, year = ""
, link = ""
}
]
}

View file

@ -32,6 +32,7 @@ import Config.Helpers.Response
import Config.Helpers.Viewport exposing (resetViewport) import Config.Helpers.Viewport exposing (resetViewport)
import Config.Pages.Blog.Records.BigFatSurprise exposing (articleBigFatSurprise) import Config.Pages.Blog.Records.BigFatSurprise exposing (articleBigFatSurprise)
import Config.Pages.Blog.Records.EverettVegans exposing (articleEverettVegans) import Config.Pages.Blog.Records.EverettVegans exposing (articleEverettVegans)
import Config.Pages.Blog.Records.FeldwitzFuckery exposing (articleFeldwitzFuckery)
import Config.Pages.Blog.Records.HunterGatherers exposing (articleHunterGatherers) import Config.Pages.Blog.Records.HunterGatherers exposing (articleHunterGatherers)
import Config.Pages.Blog.Records.MeatApologetics exposing (articleMeatApologetics) import Config.Pages.Blog.Records.MeatApologetics exposing (articleMeatApologetics)
import Config.Pages.Blog.Records.NagraGoodrich exposing (articleNagraGoodrich) import Config.Pages.Blog.Records.NagraGoodrich exposing (articleNagraGoodrich)
@ -171,7 +172,8 @@ blogList device =
(\article -> (\article ->
cardMaker device (C.BlogCard article) (contentList device article) cardMaker device (C.BlogCard article) (contentList device article)
) )
[ articleShenanigans [ articleFeldwitzFuckery
, articleShenanigans
, articleSweetDeception , articleSweetDeception
, articleEverettVegans , articleEverettVegans
, articleQuackSmashing , articleQuackSmashing

View file

@ -0,0 +1,119 @@
module Pages.Blog.Feldwitzfuckery exposing (..)
import Config.Data.Identity exposing (pageNames)
import Config.Helpers.Articles.Article exposing (contentList)
import Config.Helpers.Cards.Outer.Helpers exposing (cardMaker)
import Config.Helpers.Cards.Outer.Types as C exposing (Cardable(..))
import Config.Helpers.Headers.Types exposing (Header)
import Config.Helpers.Response
exposing
( pageList
, topLevelContainer
)
import Config.Helpers.Viewport exposing (resetViewport)
import Config.Pages.Blog.Records.FeldwitzFuckery exposing (articleFeldwitzFuckery)
import Effect exposing (Effect)
import Element as E
exposing
( Device
, Element
, column
)
import Layouts
import Page exposing (Page)
import Route exposing (Route)
import Shared exposing (Model)
import View exposing (View)
page : Shared.Model -> Route () -> Page Model Msg
page shared route =
Page.new
{ init = init
, update = update
, subscriptions = subscriptions
, view = view shared
}
|> Page.withLayout toLayout
toLayout : Model -> Layouts.Layout Msg
toLayout model =
Layouts.Navbar {}
-- INIT
type alias Model =
{}
init : () -> ( Model, Effect Msg )
init () =
( {}
, Effect.map
(\_ -> NoOp)
(Effect.sendCmd resetViewport)
)
-- UPDATE
type Msg
= NoOp
update : Msg -> Model -> ( Model, Effect Msg )
update msg model =
case msg of
NoOp ->
( model
, Effect.none
)
-- SUBSCRIPTIONS
subscriptions : Model -> Sub Msg
subscriptions model =
Sub.none
-- VIEW
view : Shared.Model -> Model -> View Msg
view shared model =
{ title = pageNames.pageHyperBlog ++ " (feldwitzFuckery)"
, attributes = []
, element = articleContainer shared.device
}
articleContainer : Device -> Element msg
articleContainer device =
topLevelContainer (articleList device)
articleList : Device -> Element msg
articleList device =
column
(case ( device.class, device.orientation ) of
_ ->
pageList device
)
<|
List.concat
[ List.map
(\article ->
cardMaker device (C.BlogArticle article) (contentList article [])
)
[ articleFeldwitzFuckery ]
]