feat: refactored a shit ton of stuff

This commit is contained in:
Nick 2024-12-09 19:53:09 -06:00
parent 68be562bd3
commit fbdfde8680
232 changed files with 2614 additions and 2532 deletions

View file

@ -1 +0,0 @@
module Blog.Types exposing (..)

View file

@ -0,0 +1,8 @@
module Config.Data.Hashtags.Helpers exposing (..)
import Config.Data.Hashtags.Types exposing (..)
hashtagMaker : List a
hashtagMaker =
[]

View file

@ -1,4 +1,4 @@
module Hashtags.Types exposing (..) module Config.Data.Hashtags.Types exposing (..)
type Hashtags type Hashtags

View file

@ -1,4 +1,4 @@
module Config.Identity exposing (..) module Config.Data.Identity exposing (..)
type alias PageInput = type alias PageInput =

View file

@ -1,181 +0,0 @@
module Config.Format exposing (..)
import Config.Colour exposing (..)
import Element as E exposing (..)
import Element.Background as B
import Element.Border as D exposing (..)
import Element.Font as F
import Html exposing (col)
import Html.Attributes as H exposing (style)
topLevelContainer : Element msg -> Element msg
topLevelContainer =
el
[ E.width fill
, height fill
, centerX
, B.color colourTheme.backgroundLightGrey
, E.height E.fill
, scrollbarY
]
transitionStyle : Attribute msg
transitionStyle =
htmlAttribute <| style "transition" "all 0.3s ease-in-out"
transitionHighlightedLinkHover : Element msg -> Element msg
transitionHighlightedLinkHover =
el
[ mouseOver [ F.color colourTheme.textDarkOrange ]
, transitionStyle
]
transitionNonHighlightedLinkHover : Element msg -> Element msg
transitionNonHighlightedLinkHover =
el
[ mouseOver [ F.color colourTheme.textLightOrange ]
, transitionStyle
]
transitionNonHighlightedLinkHoverWithMove : Element msg -> Element msg
transitionNonHighlightedLinkHoverWithMove content =
el
[ E.width fill
, height (px 30)
]
(el
[ centerX
, centerY
, mouseOver [ F.color colourTheme.textLightOrange, F.size 25 ]
, transitionStyle
]
content
)
spartanFont : F.Font
spartanFont =
F.typeface "League Spartan"
navBarLinkFormat : List (Attr () msg)
navBarLinkFormat =
[ F.size 17
]
titleFormat : List (Attr () msg)
titleFormat =
[ F.size 23
, F.bold
]
nonHighlightedTitleFormat : List (Attr () msg)
nonHighlightedTitleFormat =
[ F.color colourTheme.textLightGrey
]
++ titleFormat
highlightedTitleFormat : List (Attr () msg)
highlightedTitleFormat =
[ F.color colourTheme.textLightOrange
]
++ titleFormat
paragraphFontSize : Attr decorative msg
paragraphFontSize =
F.size 17
paragraphLinkFormat : { url : String, label : Element msg } -> Element msg
paragraphLinkFormat =
newTabLink
[ paragraphFontSize
, F.color colourTheme.textLightOrange
]
paragraphSpacing : Attribute msg
paragraphSpacing =
spacing 3
paragraphText : List (Attr () msg)
paragraphText =
[ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
]
paragraphHightlightedBoldText : List (Attr () msg)
paragraphHightlightedBoldText =
[ F.color colourTheme.textLightOrange
, F.bold
, paragraphSpacing
, paragraphFontSize
]
paragraphFormat : List (Attr () msg)
paragraphFormat =
[]
++ paragraphText
paragraphBoldFormat : List (Attr () msg)
paragraphBoldFormat =
[ F.bold ]
++ paragraphText
paragraphAlignLeft : List (Attr () msg)
paragraphAlignLeft =
[ alignLeft ]
++ paragraphText
paragraphAlignCenter : List (Attr () msg)
paragraphAlignCenter =
[ centerX ]
++ paragraphText
basicDivider : Element msg
basicDivider =
el
[ E.width fill
, centerX
, D.widthEach { bottom = 1, top = 0, left = 0, right = 0 }
, D.color (rgb255 200 200 200)
, paddingEach { top = 40, bottom = 0, left = 0, right = 0 }
]
none
formatName : String -> String
formatName name =
name
|> String.toLower
|> String.replace " " ""
|> String.replace "'" ""
|> String.replace "." ""
|> String.replace "-" ""
glow : Attr decorative msg
glow =
D.glow colourTheme.backgroundDeepDarkGrey 8
glowHighlight : Attr decorative msg
glowHighlight =
D.glow colourTheme.textDeepDarkOrange 5

View file

@ -1,19 +1,32 @@
module Config.CardFormat exposing (..) module Config.Format.CardFormat exposing (..)
import Config.Colour exposing (..) import Config.Data.Identity
import Config.Format exposing (..) exposing
import Debate.Cuckery.Types exposing (..) ( pageNames
import Effect exposing (Effect) , url
)
import Config.Format.Format
exposing
( paragraphFontSize
, paragraphSpacing
)
import Config.Helpers.Converters exposing (formatName)
import Config.Style.Colour exposing (colourTheme)
import Config.Style.Glow
exposing
( glowDeepDarkGrey
, glowDeepDarkOrange
)
import Config.Style.Transitions
exposing
( transitionStyleMedium
, transitionStyleSlow
)
import Element as E exposing (..) import Element as E exposing (..)
import Element.Background as B exposing (..) import Element.Background as B
import Element.Border as D import Element.Border as D
import Element.Font as F import Element.Font as F
import Html.Attributes as H exposing (style) import Html.Attributes as H
import Layouts
import Page exposing (Page)
import Route exposing (Route)
import Shared
import View exposing (View)
topLevelBox = topLevelBox =
@ -38,7 +51,7 @@ cardMaker =
, centerX , centerX
, D.color colourTheme.backgroundDarkGrey , D.color colourTheme.backgroundDarkGrey
, D.rounded 32 , D.rounded 32
, glow , glowDeepDarkGrey
] ]
@ -68,7 +81,10 @@ cardFormatter =
cardSubTitleMaker : List (Element msg) -> Element msg cardSubTitleMaker : List (Element msg) -> Element msg
cardSubTitleMaker = cardSubTitleMaker =
paragraph paragraph
(paragraphFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
]
++ [ F.size 18 ++ [ F.size 18
, centerX , centerX
, F.center , F.center
@ -91,7 +107,7 @@ cardContentSpacing =
cardImageMaker : { src : String, description : String } -> String -> Element msg cardImageMaker : { src : String, description : String } -> String -> Element msg
cardImageMaker image url = cardImageMaker image urlLink =
column column
[ E.width <| px 115 [ E.width <| px 115
, E.height <| px 115 , E.height <| px 115
@ -101,18 +117,41 @@ cardImageMaker image url =
[ column [ column
[ D.rounded 100 [ D.rounded 100
, D.width 5 , D.width 5
, glow , glowDeepDarkGrey
, D.color colourTheme.backgroundDarkGrey , D.color colourTheme.backgroundDarkGrey
, B.color colourTheme.backgroundDarkGrey , B.color colourTheme.backgroundDarkGrey
, mouseOver , mouseOver
[ D.color colourTheme.textDarkOrange [ D.color colourTheme.textDarkOrange
, B.color colourTheme.textDarkOrange , B.color colourTheme.textDarkOrange
, glowHighlight , glowDeepDarkOrange
] ]
, htmlAttribute <| style "transition" "all 0.3s ease-in-out" , transitionStyleSlow
] ]
[ newTabLink [] [ if
{ url = url urlLink
== (url ++ formatName pageNames.pageArguments)
|| urlLink
== (url ++ formatName pageNames.pageCucks)
|| urlLink
== (url ++ formatName pageNames.pageGibberish)
then
link []
{ url = urlLink
, label =
E.image
[ alignRight
, alignTop
, D.rounded 100
, clip
, E.width <| px 90
, E.height <| px 90
]
image
}
else
newTabLink []
{ url = urlLink
, label = , label =
E.image E.image
[ alignRight [ alignRight
@ -129,7 +168,7 @@ cardImageMaker image url =
cardImageMakerMobile : { src : String, description : String } -> String -> Element msg cardImageMakerMobile : { src : String, description : String } -> String -> Element msg
cardImageMakerMobile image url = cardImageMakerMobile image urlLink =
column column
[ alignTop [ alignTop
, centerX , centerX
@ -146,18 +185,18 @@ cardImageMakerMobile image url =
, D.width 5 , D.width 5
, centerX , centerX
, alignBottom , alignBottom
, glow , glowDeepDarkGrey
, D.color colourTheme.backgroundDeepDarkGrey , D.color colourTheme.backgroundDeepDarkGrey
, B.color colourTheme.backgroundDeepDarkGrey , B.color colourTheme.backgroundDeepDarkGrey
, mouseOver , mouseOver
[ D.color colourTheme.textDarkOrange [ D.color colourTheme.textDarkOrange
, B.color colourTheme.textDarkOrange , B.color colourTheme.textDarkOrange
, glowHighlight , glowDeepDarkOrange
] ]
, htmlAttribute <| style "transition" "all 0.3s ease-in-out" , transitionStyleSlow
] ]
[ newTabLink [] [ newTabLink []
{ url = url { url = urlLink
, label = , label =
E.image E.image
[ D.rounded 100 [ D.rounded 100
@ -175,14 +214,15 @@ cardImageMakerMobile image url =
cardTitleMaker : String -> Element msg cardTitleMaker : String -> Element msg
cardTitleMaker title = cardTitleMaker title =
paragraph paragraph
(nonHighlightedTitleFormat [ F.size 20
++ [ F.size 20 , F.bold
, F.color colourTheme.textLightGrey
, B.color colourTheme.textDarkOrange , B.color colourTheme.textDarkOrange
, paddingEach , paddingEach
{ top = 6 { top = 6
, bottom = 3 , bottom = 3
, left = 25 , left = 0
, right = 15 , right = 0
} }
, alignBottom , alignBottom
, width fill , width fill
@ -195,7 +235,6 @@ cardTitleMaker title =
, bottomLeft = 0 , bottomLeft = 0
} }
] ]
)
[ text title ] [ text title ]

View file

@ -0,0 +1,13 @@
module Config.Format.Format exposing (..)
import Element exposing (..)
import Element.Font as F
paragraphFontSize : Attr decorative msg
paragraphFontSize =
F.size 17
paragraphSpacing : Attribute msg
paragraphSpacing =
spacing 3

View file

@ -0,0 +1,30 @@
module Config.Format.Response exposing (..)
import Config.Style.Colour exposing (colourTheme)
import Element as E exposing (..)
import Element.Background as B
topLevelContainer : Element msg -> Element msg
topLevelContainer =
el
[ width fill
, height fill
, centerX
, B.color colourTheme.backgroundLightGrey
, height fill
, scrollbarY
]
pageListDesktop : List (Attribute msg)
pageListDesktop =
[ spacing 30
, centerX
, alignTop
, height fill
, paddingEach { top = 30, bottom = 30, left = 30, right = 30 }
, width (fill |> minimum 100)
, width (fill |> maximum 875)
, scrollbarY
]

View file

@ -0,0 +1,21 @@
module Config.Helpers.Converters exposing (..)
formatName : String -> String
formatName name =
name
|> String.toLower
|> String.replace " " ""
|> String.replace "'" ""
|> String.replace "." ""
|> String.replace "-" ""
|> String.replace "_" ""
formatSocial : String -> String
formatSocial name =
name
|> String.replace "https://x.com/" "@"
|> String.replace "https://www.threads.net/@" "@"
|> String.replace "https://bsky.app/profile/" "@"
|> String.replace "https://www.instagram.com/" "@"

View file

@ -1,20 +1,10 @@
module Config.StrengthBar exposing (..) module Config.Helpers.StrengthBar exposing (..)
import Config.Colour exposing (..) import Config.Helpers.ToolTip exposing (..)
import Config.Format exposing (..) import Config.Style.Colour exposing (..)
import Config.ToolTip exposing (..)
import Debate.Cuckery.Types exposing (..)
import Effect exposing (Effect)
import Element as E exposing (..) import Element as E exposing (..)
import Element.Background as B exposing (..) import Element.Background as B
import Element.Border as D import Element.Border as D
import Element.Font as F
import Html.Attributes as H exposing (style)
import Layouts
import Page exposing (Page)
import Route exposing (Route)
import Shared
import View exposing (View)
barMaker : (Int -> String) -> Int -> Element msg barMaker : (Int -> String) -> Int -> Element msg

View file

@ -1,24 +1,24 @@
module Config.ToolTip exposing (..) module Config.Helpers.ToolTip exposing (..)
import Config.Colour exposing (..) import Config.Style.Colour exposing (..)
import Config.Style.Transitions exposing (transitionStyleSlow)
import Element as E exposing (..) import Element as E exposing (..)
import Element.Background as B import Element.Background as B
import Element.Border as D exposing (..) import Element.Border as D
import Element.Font as F import Element.Font as F
import Html exposing (col) import Html.Attributes as H
import Html.Attributes as H exposing (style)
tooltip : String -> Attribute msg tooltip : String -> Attribute msg
tooltip content = tooltip content =
inFront <| inFront <|
el el
[ E.width fill [ width fill
, height fill , height fill
, transparent True , transparent True
, mouseOver [ transparent False ] , mouseOver [ transparent False ]
, htmlAttribute <| H.style "z-index" "4" , htmlAttribute <| H.style "z-index" "4"
, htmlAttribute <| style "transition" "all 0.3s ease-in-out" , transitionStyleSlow
, below <| , below <|
el [ htmlAttribute (H.style "pointerEvents" "none") ] <| el [ htmlAttribute (H.style "pointerEvents" "none") ] <|
el el

View file

@ -0,0 +1,13 @@
module Config.Helpers.Viewport exposing (..)
import Browser.Dom as Dom exposing (setViewport)
import Task exposing (perform)
type Msg
= NoOp
resetViewport : Cmd Msg
resetViewport =
Task.perform (\_ -> NoOp) (Dom.setViewport 0 0)

View file

@ -1,25 +1,35 @@
module Contact.Helpers exposing (..) module Config.Pages.Contact.Helpers exposing (..)
import Config.CardFormat exposing (..) import Config.Format.CardFormat exposing (..)
import Config.Colour exposing (..) import Config.Format.Format exposing (..)
import Config.Format exposing (..) import Config.Helpers.StrengthBar
import Config.StrengthBar exposing (..) exposing
import Config.ToolTip exposing (..) ( barMaker
import Contact.Methods.Discord exposing (contactDiscord) , barPadding
import Contact.Types exposing (..) )
import Config.Helpers.ToolTip exposing (..)
import Config.Style.Colour exposing (..)
import Config.Style.Transitions
exposing
( hoverFontDarkOrange
, transitionStyleFast
, transitionStyleSlow
)
import Config.Pages.Contact.Methods.Discord exposing (contactDiscord)
import Config.Pages.Contact.Types exposing (..)
import Effect exposing (Effect) import Effect exposing (Effect)
import Element as E exposing (..) import Element exposing (..)
import Element.Background as B exposing (..) import Element.Background as B exposing (..)
import Element.Border as D import Element.Border as D
import Element.Events exposing (onClick) import Element.Events exposing (onClick)
import Element.Font as F import Element.Font as F
import Headers.Types exposing (..) import Config.Pages.Headers.Types exposing (..)
import Html.Attributes as H exposing (style) import Html.Attributes as H exposing (style)
import Html.Events exposing (onMouseOver) import Html.Events exposing (onMouseOver)
import Interviews.Types exposing (..) import Config.Pages.Interviews.Types exposing (..)
import Layouts import Layouts
import Page exposing (Page) import Page exposing (Page)
import Products.Types exposing (..) import Config.Pages.Products.Types exposing (..)
import Route exposing (Route) import Route exposing (Route)
import Shared import Shared
import View exposing (View) import View exposing (View)
@ -90,14 +100,27 @@ makeDescription method =
linkMaker : Contact -> Element msg linkMaker : Contact -> Element msg
linkMaker contact = linkMaker contact =
paragraph paragraph
(paragraphBoldFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
, F.bold
]
++ [ F.size 18 ++ [ F.size 18
, spacing 8 , spacing 8
] ]
) )
[ paragraphLinkFormat [ newTabLink
[ paragraphFontSize
, F.color colourTheme.textLightOrange
]
{ url = contact.contactLink { url = contact.contactLink
, label = transitionHighlightedLinkHover <| text contact.contactLinkLabel , label =
el
[ transitionStyleSlow
, hoverFontDarkOrange
]
<|
text contact.contactLinkLabel
} }
] ]
@ -133,21 +156,31 @@ instructionBody =
} }
] ]
[ paragraph [ paragraph
(paragraphFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
]
++ [ F.alignLeft ++ [ F.alignLeft
, width fill , width fill
] ]
) )
[ text "The following terms may seem unreasonable to some, but after years on a large platform, I've learned the importance of filtering the criticisms I receive. Most feedback I receive is just vague gesturing and lacks substance, making some sort of quality filter essential. Thank you for your patience and understanding." ] [ text "The following terms may seem unreasonable to some, but after years on a large platform, I've learned the importance of filtering the criticisms I receive. Most feedback I receive is just vague gesturing and lacks substance, making some sort of quality filter essential. Thank you for your patience and understanding." ]
, paragraph , paragraph
(paragraphFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
]
++ [ F.alignLeft ++ [ F.alignLeft
, width fill , width fill
] ]
) )
[ text "Please keep in mind that any failure to comply with the following terms and conditions will forfeit your access to my time and attention. I ask that you respect my time and read these terms carefully. You are the one requesting an audience with me, and my time is mine to donate as I see fit. If you wish to submit your criticisms, you must do so on my terms, following the rules and conditions that streamline the process for me." ] [ text "Please keep in mind that any failure to comply with the following terms and conditions will forfeit your access to my time and attention. I ask that you respect my time and read these terms carefully. You are the one requesting an audience with me, and my time is mine to donate as I see fit. If you wish to submit your criticisms, you must do so on my terms, following the rules and conditions that streamline the process for me." ]
, paragraph , paragraph
(paragraphBoldFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
, F.bold
]
++ [ F.center ++ [ F.center
, width fill , width fill
, paddingEach , paddingEach
@ -193,7 +226,11 @@ instructionBody =
) )
termsAndConditions termsAndConditions
, paragraph , paragraph
(paragraphBoldFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
, F.bold
]
++ [ F.center ++ [ F.center
, width fill , width fill
, paddingEach , paddingEach
@ -212,7 +249,10 @@ instructionBody =
text "Additional Clarifications" text "Additional Clarifications"
] ]
, paragraph , paragraph
(paragraphFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
]
++ [ F.alignLeft ++ [ F.alignLeft
, width fill , width fill
] ]
@ -226,21 +266,30 @@ instructionBody =
, text " channel. You may post an additional criticism only after the previous one has been addressed and resolved to my satisfaction. This policy aims to reduce spamming, rambling, and Gish galloping, and to encourage linear discourse." , text " channel. You may post an additional criticism only after the previous one has been addressed and resolved to my satisfaction. This policy aims to reduce spamming, rambling, and Gish galloping, and to encourage linear discourse."
] ]
, paragraph , paragraph
(paragraphFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
]
++ [ F.alignLeft ++ [ F.alignLeft
, width fill , width fill
] ]
) )
[ text " ", text "You may or may not be asked to voice chat about your criticism. While your willingness to engage in voice chat is a necessary condition for submitting your criticism, it does not guarantee that a voice chat will be requested. If your initial criticism is clear and I agree with it, then no voice chat will be required." ] [ text " ", text "You may or may not be asked to voice chat about your criticism. While your willingness to engage in voice chat is a necessary condition for submitting your criticism, it does not guarantee that a voice chat will be requested. If your initial criticism is clear and I agree with it, then no voice chat will be required." ]
, paragraph , paragraph
(paragraphFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
]
++ [ F.alignLeft ++ [ F.alignLeft
, width fill , width fill
] ]
) )
[ text " ", text "You may or may not be asked to have your criticism formalized. While your willingness to have your criticism formalized is a necessary condition for submitting your criticism, it does not guarantee that a formalization will be requested. If your initial criticism is clear and I agree with it, then no formalization will be required." ] [ text " ", text "You may or may not be asked to have your criticism formalized. While your willingness to have your criticism formalized is a necessary condition for submitting your criticism, it does not guarantee that a formalization will be requested. If your initial criticism is clear and I agree with it, then no formalization will be required." ]
, paragraph , paragraph
(paragraphFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
]
++ [ F.alignLeft ++ [ F.alignLeft
, width fill , width fill
] ]
@ -254,7 +303,10 @@ instructionBody =
, text " channel. There we can then engage in a text-based discussion and/or ping other users if needed." , text " channel. There we can then engage in a text-based discussion and/or ping other users if needed."
] ]
, paragraph , paragraph
(paragraphFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
]
++ [ F.alignLeft ++ [ F.alignLeft
, width fill , width fill
] ]
@ -272,7 +324,7 @@ orangeFormat : List (Attr () msg)
orangeFormat = orangeFormat =
[ F.color colourTheme.textLightOrange [ F.color colourTheme.textLightOrange
, mouseOver [ F.color colourTheme.textDarkOrange ] , mouseOver [ F.color colourTheme.textDarkOrange ]
, htmlAttribute <| style "transition" "all 0.1s ease-in-out" , transitionStyleFast
] ]

View file

@ -1,7 +1,7 @@
module Contact.Methods.Discord exposing (..) module Config.Pages.Contact.Methods.Discord exposing (..)
import Contact.Types exposing (..) import Config.Helpers.Converters exposing (formatName)
import Element exposing (paragraph, text) import Config.Pages.Contact.Types exposing (..)
contactDiscord : Contact contactDiscord : Contact

View file

@ -1,9 +1,7 @@
module Contact.Methods.Email exposing (..) module Config.Pages.Contact.Methods.Email exposing (..)
import Config.Colour exposing (colourTheme) import Config.Helpers.Converters exposing (formatName)
import Contact.Types exposing (..) import Config.Pages.Contact.Types exposing (..)
import Element exposing (paragraph, text)
import Element.Font as F
contactEmail : Contact contactEmail : Contact

View file

@ -1,4 +1,4 @@
module Contact.Types exposing (..) module Config.Pages.Contact.Types exposing (..)
type alias Contact = type alias Contact =
@ -14,13 +14,3 @@ type alias Method =
{ contactInstructions : String { contactInstructions : String
} }
type alias FormattedName =
String
formatName : String -> FormattedName
formatName name =
name
|> String.toLower
|> String.replace " " ""

View file

@ -1,75 +1,81 @@
module Debate.Arguments.Helpers exposing (..) module Config.Pages.Debate.Arguments.Helpers exposing (..)
import Config.CardFormat exposing (..) import Config.Format.CardFormat exposing (..)
import Config.Colour as T exposing (..) import Config.Format.Format
import Config.Format as O exposing (..) exposing
import Config.StrengthBar exposing (..) ( paragraphFontSize
import Config.ToolTip exposing (..) , paragraphSpacing
import Debate.Arguments.Inferences.Abortion exposing (..) )
import Debate.Arguments.Inferences.Agnosticism exposing (..) import Config.Helpers.StrengthBar
import Debate.Arguments.Inferences.AgriculturalPredation exposing (..) exposing
import Debate.Arguments.Inferences.AnabolicKeto exposing (..) ( barMaker
import Debate.Arguments.Inferences.AnimalRights exposing (..) , barPadding
import Debate.Arguments.Inferences.AntagonisticPleiotropy exposing (..) )
import Debate.Arguments.Inferences.AntiRewilding exposing (..) import Config.Helpers.ToolTip exposing (tooltip)
import Debate.Arguments.Inferences.AntiVandalism exposing (..) import Config.Pages.Debate.Arguments.Inferences.Abortion exposing (..)
import Debate.Arguments.Inferences.ApoBCVD exposing (..) import Config.Pages.Debate.Arguments.Inferences.Agnosticism exposing (..)
import Debate.Arguments.Inferences.BoobyTrapPagers exposing (..) import Config.Pages.Debate.Arguments.Inferences.AgriculturalPredation exposing (..)
import Debate.Arguments.Inferences.CarbsObesity exposing (..) import Config.Pages.Debate.Arguments.Inferences.AnabolicKeto exposing (..)
import Debate.Arguments.Inferences.ColonizingNature exposing (..) import Config.Pages.Debate.Arguments.Inferences.AnimalRights exposing (..)
import Debate.Arguments.Inferences.CropDeaths exposing (..) import Config.Pages.Debate.Arguments.Inferences.AntagonisticPleiotropy exposing (..)
import Debate.Arguments.Inferences.DairyCowRape exposing (..) import Config.Pages.Debate.Arguments.Inferences.AntiRewilding exposing (..)
import Debate.Arguments.Inferences.DietaryCholesterol exposing (..) import Config.Pages.Debate.Arguments.Inferences.AntiVandalism exposing (..)
import Debate.Arguments.Inferences.EfilismPatrolSquad exposing (..) import Config.Pages.Debate.Arguments.Inferences.ApoBCVD exposing (..)
import Debate.Arguments.Inferences.EpidemiologyCausality exposing (..) import Config.Pages.Debate.Arguments.Inferences.BoobyTrapPagers exposing (..)
import Debate.Arguments.Inferences.EthicalSlurs exposing (..) import Config.Pages.Debate.Arguments.Inferences.CarbsObesity exposing (..)
import Debate.Arguments.Inferences.FineTuning exposing (..) import Config.Pages.Debate.Arguments.Inferences.ColonizingNature exposing (..)
import Debate.Arguments.Inferences.FlatEarthDebunk exposing (..) import Config.Pages.Debate.Arguments.Inferences.CropDeaths exposing (..)
import Debate.Arguments.Inferences.FructoseNAFLD exposing (..) import Config.Pages.Debate.Arguments.Inferences.DairyCowRape exposing (..)
import Debate.Arguments.Inferences.HealthPromotingFoods exposing (..) import Config.Pages.Debate.Arguments.Inferences.DietaryCholesterol exposing (..)
import Debate.Arguments.Inferences.HealthSeeker exposing (..) import Config.Pages.Debate.Arguments.Inferences.EfilismPatrolSquad exposing (..)
import Debate.Arguments.Inferences.HealthyChocolate exposing (..) import Config.Pages.Debate.Arguments.Inferences.EpidemiologyCausality exposing (..)
import Debate.Arguments.Inferences.HealthyDairy exposing (..) import Config.Pages.Debate.Arguments.Inferences.EthicalSlurs exposing (..)
import Debate.Arguments.Inferences.HealthyFattyFish exposing (..) import Config.Pages.Debate.Arguments.Inferences.FineTuning exposing (..)
import Debate.Arguments.Inferences.HealthyFibre exposing (..) import Config.Pages.Debate.Arguments.Inferences.FlatEarthDebunk exposing (..)
import Debate.Arguments.Inferences.HealthyFood exposing (..) import Config.Pages.Debate.Arguments.Inferences.FructoseNAFLD exposing (..)
import Debate.Arguments.Inferences.HealthyPlantFoods exposing (..) import Config.Pages.Debate.Arguments.Inferences.HealthPromotingFoods exposing (..)
import Debate.Arguments.Inferences.HealthySeedOils exposing (..) import Config.Pages.Debate.Arguments.Inferences.HealthSeeker exposing (..)
import Debate.Arguments.Inferences.HealthySoy exposing (..) import Config.Pages.Debate.Arguments.Inferences.HealthyChocolate exposing (..)
import Debate.Arguments.Inferences.ImmortalityReductio exposing (..) import Config.Pages.Debate.Arguments.Inferences.HealthyDairy exposing (..)
import Debate.Arguments.Inferences.Malondialdehyde exposing (..) import Config.Pages.Debate.Arguments.Inferences.HealthyFattyFish exposing (..)
import Debate.Arguments.Inferences.OddOrderPredators exposing (..) import Config.Pages.Debate.Arguments.Inferences.HealthyFibre exposing (..)
import Debate.Arguments.Inferences.Omega3Omega6Ratio exposing (..) import Config.Pages.Debate.Arguments.Inferences.HealthyFood exposing (..)
import Debate.Arguments.Inferences.Ostroveganism exposing (..) import Config.Pages.Debate.Arguments.Inferences.HealthyPlantFoods exposing (..)
import Debate.Arguments.Inferences.PlantBasedCVDReversal exposing (..) import Config.Pages.Debate.Arguments.Inferences.HealthySeedOils exposing (..)
import Debate.Arguments.Inferences.PollinationReductio exposing (..) import Config.Pages.Debate.Arguments.Inferences.HealthySoy exposing (..)
import Debate.Arguments.Inferences.PolyphenolReductio exposing (..) import Config.Pages.Debate.Arguments.Inferences.ImmortalityReductio exposing (..)
import Debate.Arguments.Inferences.ScratcherPioneers exposing (..) import Config.Pages.Debate.Arguments.Inferences.Malondialdehyde exposing (..)
import Debate.Arguments.Inferences.SodiumCVD exposing (..) import Config.Pages.Debate.Arguments.Inferences.OddOrderPredators exposing (..)
import Debate.Arguments.Inferences.TMAOCausality exposing (..) import Config.Pages.Debate.Arguments.Inferences.Omega3Omega6Ratio exposing (..)
import Debate.Arguments.Inferences.Template exposing (argument) import Config.Pages.Debate.Arguments.Inferences.Ostroveganism exposing (..)
import Debate.Arguments.Inferences.TransPeople exposing (..) import Config.Pages.Debate.Arguments.Inferences.PlantBasedCVDReversal exposing (..)
import Debate.Arguments.Inferences.TruncatedMeta exposing (..) import Config.Pages.Debate.Arguments.Inferences.PollinationReductio exposing (..)
import Debate.Arguments.Inferences.UnhealthyCoconutOil exposing (..) import Config.Pages.Debate.Arguments.Inferences.PolyphenolReductio exposing (..)
import Debate.Arguments.Inferences.UnhealthyProcessedMeat exposing (..) import Config.Pages.Debate.Arguments.Inferences.ScratcherPioneers exposing (..)
import Debate.Arguments.Inferences.UnhealthyRedMeat exposing (..) import Config.Pages.Debate.Arguments.Inferences.SodiumCVD exposing (..)
import Debate.Arguments.Inferences.UnhealthySaturatedFat exposing (..) import Config.Pages.Debate.Arguments.Inferences.TMAOCausality exposing (..)
import Debate.Arguments.Inferences.VeganSocietyReductio exposing (..) import Config.Pages.Debate.Arguments.Inferences.Template exposing (argument)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Inferences.TransPeople exposing (..)
import Effect exposing (Effect) import Config.Pages.Debate.Arguments.Inferences.TruncatedMeta exposing (..)
import Config.Pages.Debate.Arguments.Inferences.UnhealthyCoconutOil exposing (..)
import Config.Pages.Debate.Arguments.Inferences.UnhealthyProcessedMeat exposing (..)
import Config.Pages.Debate.Arguments.Inferences.UnhealthyRedMeat exposing (..)
import Config.Pages.Debate.Arguments.Inferences.UnhealthySaturatedFat exposing (..)
import Config.Pages.Debate.Arguments.Inferences.VeganSocietyReductio exposing (..)
import Config.Pages.Debate.Arguments.Types exposing (..)
import Config.Style.Colour exposing (colourTheme)
import Config.Style.Glow
exposing
( glowDeepDarkGrey
, glowDeepDarkOrange
)
import Config.Style.Transitions exposing (transitionStyleSlow)
import Element as E exposing (..) import Element as E exposing (..)
import Element.Background as B exposing (..) import Element.Background as B
import Element.Border as D exposing (..) import Element.Border as D
import Element.Events as V exposing (..) import Element.Font as F
import Element.Font as F exposing (..)
import Html exposing (div, hr) import Html exposing (div, hr)
import Html.Attributes as H exposing (style, title, wrap) import Html.Attributes as H exposing (style, title, wrap)
import Json.Decode exposing (field)
import Layouts
import Page exposing (Page)
import Route exposing (Route)
import Shared
import View exposing (View)
argumentMaker : Argument -> Element msg argumentMaker : Argument -> Element msg
@ -89,8 +95,6 @@ argumentMaker argument =
, strengthMakerDesktop argument , strengthMakerDesktop argument
, tableMaker argument , tableMaker argument
, desktopFormalizationMaker argument , desktopFormalizationMaker argument
-- , proofTreeMaker argument
] ]
] ]
] ]
@ -120,8 +124,6 @@ argumentMakerMobile argument =
, strengthMakerMobile argument , strengthMakerMobile argument
, tableMaker argument , tableMaker argument
, mobileFormalizationMaker argument , mobileFormalizationMaker argument
-- , proofTreeMaker argument
] ]
] ]
] ]
@ -166,7 +168,11 @@ propositionMaker =
column column
[ E.alignTop, E.alignLeft ] [ E.alignTop, E.alignLeft ]
[ paragraph [ paragraph
(paragraphBoldFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
, F.bold
]
++ [ F.size 18 ++ [ F.size 18
, infoSpacing , infoSpacing
] ]
@ -185,7 +191,14 @@ propositionTitleMaker : Argument -> Element msg
propositionTitleMaker argument = propositionTitleMaker argument =
column column
[ E.width fill, E.alignLeft ] [ E.width fill, E.alignLeft ]
[ paragraph (paragraphBoldFormat ++ [ F.size 18 ]) [ paragraph
([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
, F.bold
]
++ [ F.size 18 ]
)
[ text argument.propositionTitle [ text argument.propositionTitle
|> el |> el
[ F.color colourTheme.textLightGrey [ F.color colourTheme.textLightGrey
@ -229,7 +242,11 @@ reductioMaker =
column column
[ E.alignTop, E.alignLeft ] [ E.alignTop, E.alignLeft ]
[ paragraph [ paragraph
(paragraphBoldFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
, F.bold
]
++ [ F.size 18 ++ [ F.size 18
, infoSpacing , infoSpacing
] ]
@ -248,7 +265,10 @@ reductioMakerTitle : String -> Element msg
reductioMakerTitle reductio = reductioMakerTitle reductio =
column [ E.width fill, E.alignLeft ] column [ E.width fill, E.alignLeft ]
[ paragraph [ paragraph
(paragraphFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
]
++ [ F.size 16 ++ [ F.size 16
, spacing 3 , spacing 3
] ]
@ -280,7 +300,11 @@ summaryMaker =
, E.alignLeft , E.alignLeft
] ]
[ paragraph [ paragraph
(paragraphBoldFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
, F.bold
]
++ [ F.size 18 ++ [ F.size 18
, infoSpacing , infoSpacing
] ]
@ -302,7 +326,11 @@ summaryMakerTitle argument =
, E.alignLeft , E.alignLeft
] ]
[ paragraph [ paragraph
(paragraphBoldFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
, F.bold
]
++ [ F.size 18 ++ [ F.size 18
, spacing 3 , spacing 3
] ]
@ -340,7 +368,11 @@ strengthMaker =
, E.alignLeft , E.alignLeft
] ]
[ paragraph [ paragraph
(paragraphBoldFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
, F.bold
]
++ [ F.size 18 ++ [ F.size 18
, E.width fill , E.width fill
] ]
@ -418,7 +450,11 @@ tableMaker argument =
, E.width fill , E.width fill
] ]
[ wrappedRow [ wrappedRow
(paragraphBoldFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
, F.bold
]
++ [ E.alignLeft ++ [ E.alignLeft
, E.width fill , E.width fill
, htmlAttribute <| H.style "position" "relative" , htmlAttribute <| H.style "position" "relative"
@ -511,106 +547,28 @@ tableMaker argument =
] ]
argumentDesktopPadding : Attribute msg
argumentDesktopPadding =
paddingXY 40 3
argumentMobilePadding : Attribute msg
argumentMobilePadding =
paddingXY 0 3
desktopFormalizationMaker : Argument -> Element msg desktopFormalizationMaker : Argument -> Element msg
desktopFormalizationMaker argument = desktopFormalizationMaker argument =
let formalizationMaker argument argumentDesktopPadding
argumentFormatting : List (Attribute msg)
argumentFormatting =
[ centerX
, F.center
, spacing 3
, E.width fill
]
in
column
[ centerX
, E.width fill
, spacing 10
]
(List.indexedMap
(\index argumentEntry ->
column
(paragraphFormat
++ [ spacing 3
, centerX
, E.width fill
, paddingXY 40 3
]
)
(List.indexedMap
(\premiseIndex premiseWithNotation ->
column
(argumentFormatting ++ [ E.width fill ])
[ paragraph paragraphHightlightedBoldText
[ text ("P" ++ String.fromInt (premiseIndex + 1) ++ ")")
, text premiseWithNotation.premise
|> el
[ F.color colourTheme.textLightGrey
, F.regular
, E.width fill
, paddingEach
{ top = 0
, right = 0
, bottom = 0
, left = 5
}
]
]
, paragraph
(argumentFormatting
++ [ F.color colourTheme.textLightOrange
, F.bold
]
)
[ text ("(" ++ premiseWithNotation.notation ++ ")")
]
]
)
argumentEntry.premises
++ [ column
(argumentFormatting ++ [ E.width fill ])
[ paragraph paragraphHightlightedBoldText
[ text "C)"
, text argumentEntry.conclusion
|> el
[ F.color colourTheme.textLightGrey
, F.regular
, E.width fill
, paddingEach
{ top = 0
, right = 0
, bottom = 0
, left = 5
}
]
]
, paragraph
(argumentFormatting
++ [ F.color colourTheme.textLightOrange
, F.bold
]
)
[ text ("(" ++ argumentEntry.conclusionNotation ++ ")")
]
]
]
)
)
argument.argumentFormalization
)
mobileFormalizationMaker : Argument -> Element msg mobileFormalizationMaker : Argument -> Element msg
mobileFormalizationMaker argument = mobileFormalizationMaker argument =
let formalizationMaker argument argumentDesktopPadding
argumentFormatting : List (Attribute msg)
argumentFormatting =
[ centerX formalizationMaker : Argument -> Attribute msg -> Element msg
, F.center formalizationMaker argument padding =
, spacing 3
, E.width fill
]
in
column column
[ centerX [ centerX
, E.width fill , E.width fill
@ -619,20 +577,44 @@ mobileFormalizationMaker argument =
(List.indexedMap (List.indexedMap
(\index argumentEntry -> (\index argumentEntry ->
column column
(paragraphFormat ([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
]
++ [ spacing 3 ++ [ spacing 3
, centerX , centerX
, E.width fill , E.width fill
, paddingXY 0 3 , padding
] ]
) )
(List.indexedMap (List.indexedMap
(\premiseIndex premiseWithNotation -> (\entryIndex entryWithNotation ->
column column
(argumentFormatting ++ [ E.width fill ]) [ centerX
[ paragraph paragraphHightlightedBoldText , F.center
[ text ("P" ++ String.fromInt (premiseIndex + 1) ++ ")") , spacing 3
, text premiseWithNotation.premise , E.width fill
]
[ paragraph
[ F.color colourTheme.textLightOrange
, F.bold
, spacing 3
, F.size 17
]
[ text
(if entryIndex < List.length argumentEntry.premises then
"P" ++ String.fromInt (entryIndex + 1) ++ ")"
else
"C)"
)
, text
(if entryIndex < List.length argumentEntry.premises then
entryWithNotation.premise
else
argumentEntry.conclusion
)
|> el |> el
[ F.color colourTheme.textLightGrey [ F.color colourTheme.textLightGrey
, F.regular , F.regular
@ -646,91 +628,30 @@ mobileFormalizationMaker argument =
] ]
] ]
, paragraph , paragraph
(argumentFormatting [ centerX
++ [ F.color colourTheme.textLightOrange , F.center
, F.bold , spacing 3
]
)
[ text ("(" ++ premiseWithNotation.notation ++ ")")
]
]
)
argumentEntry.premises
++ [ column
(argumentFormatting ++ [ E.width fill ])
[ paragraph paragraphHightlightedBoldText
[ text "C)"
, text argumentEntry.conclusion
|> el
[ F.color colourTheme.textLightGrey
, F.regular
, E.width fill , E.width fill
, paddingEach , F.color colourTheme.textLightOrange
{ top = 0
, right = 0
, bottom = 0
, left = 5
}
]
]
, paragraph
(argumentFormatting
++ [ F.color colourTheme.textLightOrange
, F.bold , F.bold
] ]
[ text
(if entryIndex < List.length argumentEntry.premises then
"(" ++ entryWithNotation.notation ++ ")"
else
"(" ++ argumentEntry.conclusionNotation ++ ")"
) )
[ text ("(" ++ argumentEntry.conclusionNotation ++ ")")
]
] ]
] ]
) )
(argumentEntry.premises ++ [ { premise = argumentEntry.conclusion, notation = argumentEntry.conclusionNotation } ])
)
) )
argument.argumentFormalization argument.argumentFormalization
) )
proofTreeMaker : Argument -> Element msg
proofTreeMaker argument =
row
[ paddingEach
{ top = 10
, right = 0
, bottom = 10
, left = 0
}
, centerX
, E.width fill
]
[ column [ E.alignRight ]
[ newTabLink
(paragraphBoldFormat
++ [ F.size 18
, F.color colourTheme.textLightGrey
, B.color colourTheme.textDarkOrange
, paddingEach
{ top = 6
, bottom = 2
, left = 12
, right = 12
}
, D.rounded 10
, F.center
, E.alignRight
, transitionStyle
, O.glow
, mouseOver
[ B.color colourTheme.textDeepDarkOrange
, F.color colourTheme.textDarkGrey
]
]
)
{ url = argument.proofLink
, label = text "Proof Tree"
}
]
]
argumentList : List Argument argumentList : List Argument
argumentList = argumentList =
[ argumentApoBCVD [ argumentApoBCVD

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.Abortion exposing (..) module Config.Pages.Debate.Arguments.Inferences.Abortion exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentAbortion : Argument argumentAbortion : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.Agnosticism exposing (..) module Config.Pages.Debate.Arguments.Inferences.Agnosticism exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentAgnosticism : Argument argumentAgnosticism : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.AgriculturalPredation exposing (..) module Config.Pages.Debate.Arguments.Inferences.AgriculturalPredation exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentAgriculturalPredation : Argument argumentAgriculturalPredation : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.AnabolicKeto exposing (..) module Config.Pages.Debate.Arguments.Inferences.AnabolicKeto exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentAnabolicKeto : Argument argumentAnabolicKeto : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.AnimalRights exposing (..) module Config.Pages.Debate.Arguments.Inferences.AnimalRights exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentAnimalRights : Argument argumentAnimalRights : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.AntagonisticPleiotropy exposing (..) module Config.Pages.Debate.Arguments.Inferences.AntagonisticPleiotropy exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentAntagonisticPleiotropy : Argument argumentAntagonisticPleiotropy : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.AntiRewilding exposing (..) module Config.Pages.Debate.Arguments.Inferences.AntiRewilding exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentAntiRewilding : Argument argumentAntiRewilding : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.AntiVandalism exposing (..) module Config.Pages.Debate.Arguments.Inferences.AntiVandalism exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentAntiVandalism : Argument argumentAntiVandalism : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.ApoBCVD exposing (..) module Config.Pages.Debate.Arguments.Inferences.ApoBCVD exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentApoBCVD : Argument argumentApoBCVD : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.BoobyTrapPagers exposing (..) module Config.Pages.Debate.Arguments.Inferences.BoobyTrapPagers exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentBoobyTrapPagers : Argument argumentBoobyTrapPagers : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.CarbsObesity exposing (..) module Config.Pages.Debate.Arguments.Inferences.CarbsObesity exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentCarbsObesity : Argument argumentCarbsObesity : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.ColonizingNature exposing (..) module Config.Pages.Debate.Arguments.Inferences.ColonizingNature exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentColonizingNature : Argument argumentColonizingNature : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.CropDeaths exposing (..) module Config.Pages.Debate.Arguments.Inferences.CropDeaths exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentCropDeaths : Argument argumentCropDeaths : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.DairyCowRape exposing (..) module Config.Pages.Debate.Arguments.Inferences.DairyCowRape exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentDairyCowRape : Argument argumentDairyCowRape : Argument
@ -8,7 +8,7 @@ argumentDairyCowRape =
{ argumentTitle = "Argument for Animal Sex Counting as Rape" { argumentTitle = "Argument for Animal Sex Counting as Rape"
, propositionTitle = "An animal mating with another animal qualifies as rape." , propositionTitle = "An animal mating with another animal qualifies as rape."
, propositionReductio = "" , propositionReductio = ""
, propositionSummary = "It's not clear that non-human animal procreation isn't an example of rape if we take sexual interaction in the absence of informed concent to be rape. So, it seems to follow that a bull mating with a cow is rape, for example." , propositionSummary = "It's not clear that non-human animal procreation isn't an example of rape if we take sexual interaction in the absence of informed consent to be rape. So, it seems to follow that a bull mating with a cow is rape, for example."
, proofLink = "https://www.umsu.de/trees/#(~6x~6y(Px~4(Qxy~1~3Ryx))),(Qae),(~3Rea)|=(Pa)" , proofLink = "https://www.umsu.de/trees/#(~6x~6y(Px~4(Qxy~1~3Ryx))),(Qae),(~3Rea)|=(Pa)"
, argumentCertainty = 10 , argumentCertainty = 10
, argumentImage = "cowrape" , argumentImage = "cowrape"

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.DietaryCholesterol exposing (..) module Config.Pages.Debate.Arguments.Inferences.DietaryCholesterol exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentDietaryCholesterol : Argument argumentDietaryCholesterol : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.EfilismPatrolSquad exposing (..) module Config.Pages.Debate.Arguments.Inferences.EfilismPatrolSquad exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentEfilismPatrolSquad : Argument argumentEfilismPatrolSquad : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.EpidemiologyCausality exposing (..) module Config.Pages.Debate.Arguments.Inferences.EpidemiologyCausality exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentEpidemiologyCausality : Argument argumentEpidemiologyCausality : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.EthicalSlurs exposing (..) module Config.Pages.Debate.Arguments.Inferences.EthicalSlurs exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentEthicalSlurs : Argument argumentEthicalSlurs : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.FineTuning exposing (..) module Config.Pages.Debate.Arguments.Inferences.FineTuning exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentFineTuning : Argument argumentFineTuning : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.FlatEarthDebunk exposing (..) module Config.Pages.Debate.Arguments.Inferences.FlatEarthDebunk exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentFlatEarthDebunk : Argument argumentFlatEarthDebunk : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.FructoseNAFLD exposing (..) module Config.Pages.Debate.Arguments.Inferences.FructoseNAFLD exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentFructoseNAFLD : Argument argumentFructoseNAFLD : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.HealthPromotingFoods exposing (..) module Config.Pages.Debate.Arguments.Inferences.HealthPromotingFoods exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentHealthPromotingFoods : Argument argumentHealthPromotingFoods : Argument
argumentHealthPromotingFoods = argumentHealthPromotingFoods =

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.HealthSeeker exposing (..) module Config.Pages.Debate.Arguments.Inferences.HealthSeeker exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentHealthSeeker : Argument argumentHealthSeeker : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.HealthyChocolate exposing (..) module Config.Pages.Debate.Arguments.Inferences.HealthyChocolate exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentHealthyChocolate : Argument argumentHealthyChocolate : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.HealthyDairy exposing (..) module Config.Pages.Debate.Arguments.Inferences.HealthyDairy exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentHealthyDairy : Argument argumentHealthyDairy : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.HealthyFattyFish exposing (..) module Config.Pages.Debate.Arguments.Inferences.HealthyFattyFish exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentHealthyFattyFish : Argument argumentHealthyFattyFish : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.HealthyFibre exposing (..) module Config.Pages.Debate.Arguments.Inferences.HealthyFibre exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentHealthyFibre : Argument argumentHealthyFibre : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.HealthyFood exposing (..) module Config.Pages.Debate.Arguments.Inferences.HealthyFood exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentHealthyFood : Argument argumentHealthyFood : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.HealthyPlantFoods exposing (..) module Config.Pages.Debate.Arguments.Inferences.HealthyPlantFoods exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentHealthyPlantFoods : Argument argumentHealthyPlantFoods : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.HealthySeedOils exposing (..) module Config.Pages.Debate.Arguments.Inferences.HealthySeedOils exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentHealthySeedOils : Argument argumentHealthySeedOils : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.HealthySoy exposing (..) module Config.Pages.Debate.Arguments.Inferences.HealthySoy exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentHealthySoy : Argument argumentHealthySoy : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.ImmortalityReductio exposing (..) module Config.Pages.Debate.Arguments.Inferences.ImmortalityReductio exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentImmortalityReductio : Argument argumentImmortalityReductio : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.Malondialdehyde exposing (..) module Config.Pages.Debate.Arguments.Inferences.Malondialdehyde exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentMalondialdehyde : Argument argumentMalondialdehyde : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.OddOrderPredators exposing (..) module Config.Pages.Debate.Arguments.Inferences.OddOrderPredators exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentOddOrderPredators : Argument argumentOddOrderPredators : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.Omega3Omega6Ratio exposing (..) module Config.Pages.Debate.Arguments.Inferences.Omega3Omega6Ratio exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentOmega3Omega6Ratio : Argument argumentOmega3Omega6Ratio : Argument
argumentOmega3Omega6Ratio = argumentOmega3Omega6Ratio =

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.Ostroveganism exposing (..) module Config.Pages.Debate.Arguments.Inferences.Ostroveganism exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentOstroveganism : Argument argumentOstroveganism : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.PlantBasedCVDReversal exposing (..) module Config.Pages.Debate.Arguments.Inferences.PlantBasedCVDReversal exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentPlantBasedCVDReversal : Argument argumentPlantBasedCVDReversal : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.PollinationReductio exposing (..) module Config.Pages.Debate.Arguments.Inferences.PollinationReductio exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentPollinationReductio : Argument argumentPollinationReductio : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.PolyphenolReductio exposing (..) module Config.Pages.Debate.Arguments.Inferences.PolyphenolReductio exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentPolyphenolReductio : Argument argumentPolyphenolReductio : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.ScratcherPioneers exposing (..) module Config.Pages.Debate.Arguments.Inferences.ScratcherPioneers exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentScratcherPioneers : Argument argumentScratcherPioneers : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.SodiumCVD exposing (..) module Config.Pages.Debate.Arguments.Inferences.SodiumCVD exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentSodiumCVD : Argument argumentSodiumCVD : Argument
argumentSodiumCVD = argumentSodiumCVD =

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.TMAOCausality exposing (..) module Config.Pages.Debate.Arguments.Inferences.TMAOCausality exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentTMAOCausality : Argument argumentTMAOCausality : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.Template exposing (..) module Config.Pages.Debate.Arguments.Inferences.Template exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argument : Argument argument : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.TransPeople exposing (..) module Config.Pages.Debate.Arguments.Inferences.TransPeople exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentTransPeople : Argument argumentTransPeople : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.TruncatedMeta exposing (..) module Config.Pages.Debate.Arguments.Inferences.TruncatedMeta exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentTruncatedMeta : Argument argumentTruncatedMeta : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.UnhealthyCoconutOil exposing (..) module Config.Pages.Debate.Arguments.Inferences.UnhealthyCoconutOil exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentUnhealthyCoconutOil : Argument argumentUnhealthyCoconutOil : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.UnhealthyProcessedMeat exposing (..) module Config.Pages.Debate.Arguments.Inferences.UnhealthyProcessedMeat exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentUnhealthyProcessedMeat : Argument argumentUnhealthyProcessedMeat : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.UnhealthyRedMeat exposing (..) module Config.Pages.Debate.Arguments.Inferences.UnhealthyRedMeat exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentUnhealthyRedMeat : Argument argumentUnhealthyRedMeat : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.UnhealthySaturatedFat exposing (..) module Config.Pages.Debate.Arguments.Inferences.UnhealthySaturatedFat exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentUnhealthySaturatedFat : Argument argumentUnhealthySaturatedFat : Argument

View file

@ -1,6 +1,6 @@
module Debate.Arguments.Inferences.VeganSocietyReductio exposing (..) module Config.Pages.Debate.Arguments.Inferences.VeganSocietyReductio exposing (..)
import Debate.Arguments.Types exposing (..) import Config.Pages.Debate.Arguments.Types exposing (..)
argumentVeganSocietyReductio : Argument argumentVeganSocietyReductio : Argument

View file

@ -1,4 +1,4 @@
module Debate.Arguments.Types exposing (..) module Config.Pages.Debate.Arguments.Types exposing (..)
-- ARGUMENTS -- ARGUMENTS

View file

@ -1,6 +1,8 @@
module Debate.Cuckery.CuckList.AdamSinger exposing (..) module Config.Pages.Debate.Cuckery.CuckList.AdamSinger exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Helpers.Converters exposing (formatName)
import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckAdamSinger : Cuck cuckAdamSinger : Cuck
@ -10,7 +12,7 @@ cuckAdamSinger =
name = name =
"Adam Singer" "Adam Singer"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/AdamSinger" , cuckSocial = "https://x.com/AdamSinger"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.AmberOHearn exposing (..) module Config.Pages.Debate.Cuckery.CuckList.AmberOHearn exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckAmberOHearn : Cuck cuckAmberOHearn : Cuck
@ -10,7 +11,7 @@ cuckAmberOHearn =
name = name =
"Amber O Hearn" "Amber O Hearn"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/KetoCarnivore" , cuckSocial = "https://x.com/KetoCarnivore"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.AnnChilders exposing (..) module Config.Pages.Debate.Cuckery.CuckList.AnnChilders exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckAnnChilders : Cuck cuckAnnChilders : Cuck
@ -10,7 +11,7 @@ cuckAnnChilders =
name = name =
"Ann Childers" "Ann Childers"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/AnnChildersMD" , cuckSocial = "https://x.com/AnnChildersMD"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.AnthonyGustin exposing (..) module Config.Pages.Debate.Cuckery.CuckList.AnthonyGustin exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckAnthonyGustin : Cuck cuckAnthonyGustin : Cuck
@ -10,7 +11,7 @@ cuckAnthonyGustin =
name = name =
"Anthony Gustin" "Anthony Gustin"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/dranthonygustin" , cuckSocial = "https://x.com/dranthonygustin"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.AshwaniGarg exposing (..) module Config.Pages.Debate.Cuckery.CuckList.AshwaniGarg exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckAshwaniGarg : Cuck cuckAshwaniGarg : Cuck
@ -10,7 +11,7 @@ cuckAshwaniGarg =
name = name =
"Ashwani Garg" "Ashwani Garg"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/agargmd" , cuckSocial = "https://x.com/agargmd"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.AustinHerbert exposing (..) module Config.Pages.Debate.Cuckery.CuckList.AustinHerbert exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckAustinHerbert : Cuck cuckAustinHerbert : Cuck
@ -10,7 +11,7 @@ cuckAustinHerbert =
name = name =
"Austin Herbert" "Austin Herbert"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/_AustinHerbert" , cuckSocial = "https://x.com/_AustinHerbert"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.BartKay exposing (..) module Config.Pages.Debate.Cuckery.CuckList.BartKay exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckBartKay : Cuck cuckBartKay : Cuck
@ -10,7 +11,7 @@ cuckBartKay =
name = name =
"Bart Kay" "Bart Kay"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/Bart_WT_Kay" , cuckSocial = "https://x.com/Bart_WT_Kay"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.BenBikman exposing (..) module Config.Pages.Debate.Cuckery.CuckList.BenBikman exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckBenBikman : Cuck cuckBenBikman : Cuck
@ -10,7 +11,7 @@ cuckBenBikman =
name = name =
"Ben Bikman" "Ben Bikman"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/BenBikmanPhD" , cuckSocial = "https://x.com/BenBikmanPhD"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.BennyMalone exposing (..) module Config.Pages.Debate.Cuckery.CuckList.BennyMalone exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckBennyMalone : Cuck cuckBennyMalone : Cuck
@ -10,7 +11,7 @@ cuckBennyMalone =
name = name =
"Benny Malone" "Benny Malone"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/bennymaloneUK" , cuckSocial = "https://x.com/bennymaloneUK"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.BradCampbell exposing (..) module Config.Pages.Debate.Cuckery.CuckList.BradCampbell exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckBradCampbell : Cuck cuckBradCampbell : Cuck
@ -10,7 +11,7 @@ cuckBradCampbell =
name = name =
"Brad Campbell" "Brad Campbell"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/DrBradCampbell" , cuckSocial = "https://x.com/DrBradCampbell"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.BradCohn exposing (..) module Config.Pages.Debate.Cuckery.CuckList.BradCohn exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckBradCohn : Cuck cuckBradCohn : Cuck
@ -10,7 +11,7 @@ cuckBradCohn =
name = name =
"Brad Cohn" "Brad Cohn"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/BradCohn" , cuckSocial = "https://x.com/BradCohn"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.BradMarshall exposing (..) module Config.Pages.Debate.Cuckery.CuckList.BradMarshall exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckBradMarshall : Cuck cuckBradMarshall : Cuck
@ -10,7 +11,7 @@ cuckBradMarshall =
name = name =
"Brad Marshall" "Brad Marshall"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/fire_bottle" , cuckSocial = "https://x.com/fire_bottle"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.BretWeinstein exposing (..) module Config.Pages.Debate.Cuckery.CuckList.BretWeinstein exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckBretWeinstein : Cuck cuckBretWeinstein : Cuck
@ -10,7 +11,7 @@ cuckBretWeinstein =
name = name =
"Bret Weinstein" "Bret Weinstein"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/BretWeinstein" , cuckSocial = "https://x.com/BretWeinstein"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.BrianKerley exposing (..) module Config.Pages.Debate.Cuckery.CuckList.BrianKerley exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckBrianKerley : Cuck cuckBrianKerley : Cuck
@ -10,7 +11,7 @@ cuckBrianKerley =
name = name =
"Brian Kerley" "Brian Kerley"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/SeedOilDsrspctr" , cuckSocial = "https://x.com/SeedOilDsrspctr"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.CarnivoreAurelius exposing (..) module Config.Pages.Debate.Cuckery.CuckList.CarnivoreAurelius exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckCarnivoreAurelius : Cuck cuckCarnivoreAurelius : Cuck
@ -10,7 +11,7 @@ cuckCarnivoreAurelius =
name = name =
"Carnivore Aurelius" "Carnivore Aurelius"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/AlpacaAurelius" , cuckSocial = "https://x.com/AlpacaAurelius"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.CateShanahan exposing (..) module Config.Pages.Debate.Cuckery.CuckList.CateShanahan exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckCateShanahan : Cuck cuckCateShanahan : Cuck
@ -10,7 +11,7 @@ cuckCateShanahan =
name = name =
"Cate Shanahan" "Cate Shanahan"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/drcateshanahan" , cuckSocial = "https://x.com/drcateshanahan"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.ChrisBoettcher exposing (..) module Config.Pages.Debate.Cuckery.CuckList.ChrisBoettcher exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckChrisBoettcher : Cuck cuckChrisBoettcher : Cuck
@ -10,7 +11,7 @@ cuckChrisBoettcher =
name = name =
"Chris Boettcher" "Chris Boettcher"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/chrisboettcher9" , cuckSocial = "https://x.com/chrisboettcher9"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.ClaraAboel exposing (..) module Config.Pages.Debate.Cuckery.CuckList.ClaraAboel exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckClaraAboel : Cuck cuckClaraAboel : Cuck
@ -10,7 +11,7 @@ cuckClaraAboel =
name = name =
"Clara Aboel" "Clara Aboel"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/AIWellnessCoach" , cuckSocial = "https://x.com/AIWellnessCoach"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.CliffHarvey exposing (..) module Config.Pages.Debate.Cuckery.CuckList.CliffHarvey exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckCliffHarvey : Cuck cuckCliffHarvey : Cuck
@ -10,7 +11,7 @@ cuckCliffHarvey =
name = name =
"Cliff Harvey" "Cliff Harvey"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/CarbAppropriate" , cuckSocial = "https://x.com/CarbAppropriate"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.DaveFeldman exposing (..) module Config.Pages.Debate.Cuckery.CuckList.DaveFeldman exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckDaveFeldman : Cuck cuckDaveFeldman : Cuck
@ -10,7 +11,7 @@ cuckDaveFeldman =
name = name =
"Dave Feldman" "Dave Feldman"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/realDaveFeldman" , cuckSocial = "https://x.com/realDaveFeldman"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.DavidDiamond exposing (..) module Config.Pages.Debate.Cuckery.CuckList.DavidDiamond exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckDavidDiamond : Cuck cuckDavidDiamond : Cuck
@ -14,7 +15,7 @@ cuckDavidDiamond =
statinProp = statinProp =
"Statin therapy is not warranted for a person high LDL-C on a low-carb diet." "Statin therapy is not warranted for a person high LDL-C on a low-carb diet."
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/LDLSkeptic" , cuckSocial = "https://x.com/LDLSkeptic"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.DavidGornoski exposing (..) module Config.Pages.Debate.Cuckery.CuckList.DavidGornoski exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckDavidGornoski : Cuck cuckDavidGornoski : Cuck
@ -10,7 +11,7 @@ cuckDavidGornoski =
name = name =
"David Gornoski" "David Gornoski"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/DavidGornoski" , cuckSocial = "https://x.com/DavidGornoski"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.DianaRodgers exposing (..) module Config.Pages.Debate.Cuckery.CuckList.DianaRodgers exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckDianaRodgers : Cuck cuckDianaRodgers : Cuck
@ -10,7 +11,7 @@ cuckDianaRodgers =
name = name =
"Diana Rodgers" "Diana Rodgers"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/sustainabledish" , cuckSocial = "https://x.com/sustainabledish"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.EdwardGoeke exposing (..) module Config.Pages.Debate.Cuckery.CuckList.EdwardGoeke exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckEdwardGoeke : Cuck cuckEdwardGoeke : Cuck
@ -13,7 +14,7 @@ cuckEdwardGoeke =
propSeedOils = propSeedOils =
"Seed oils are inflammatory." "Seed oils are inflammatory."
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/GoekeEddie" , cuckSocial = "https://x.com/GoekeEddie"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.ElieJarrouge exposing (..) module Config.Pages.Debate.Cuckery.CuckList.ElieJarrouge exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckElieJarrouge : Cuck cuckElieJarrouge : Cuck
@ -10,7 +11,7 @@ cuckElieJarrouge =
name = name =
"Elie Jarrouge" "Elie Jarrouge"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/ElieJarrougeMD" , cuckSocial = "https://x.com/ElieJarrougeMD"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.GaryBrecka exposing (..) module Config.Pages.Debate.Cuckery.CuckList.GaryBrecka exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckGaryBrecka : Cuck cuckGaryBrecka : Cuck
@ -10,7 +11,7 @@ cuckGaryBrecka =
name = name =
"Gary Brecka" "Gary Brecka"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/garybrecka1" , cuckSocial = "https://x.com/garybrecka1"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.GaryFettke exposing (..) module Config.Pages.Debate.Cuckery.CuckList.GaryFettke exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckGaryFettke : Cuck cuckGaryFettke : Cuck
@ -10,7 +11,7 @@ cuckGaryFettke =
name = name =
"Gary Fettke" "Gary Fettke"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/FructoseNo" , cuckSocial = "https://x.com/FructoseNo"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.GaryTaubes exposing (..) module Config.Pages.Debate.Cuckery.CuckList.GaryTaubes exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckGaryTaubes : Cuck cuckGaryTaubes : Cuck
@ -10,7 +11,7 @@ cuckGaryTaubes =
name = name =
"Gary Taubes" "Gary Taubes"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/garytaubes" , cuckSocial = "https://x.com/garytaubes"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.GeorgeMartin exposing (..) module Config.Pages.Debate.Cuckery.CuckList.GeorgeMartin exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckGeorgeMartin : Cuck cuckGeorgeMartin : Cuck
@ -10,7 +11,7 @@ cuckGeorgeMartin =
name = name =
"George Martin" "George Martin"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/CarnismDebunked" , cuckSocial = "https://x.com/CarnismDebunked"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.GuyAustin exposing (..) module Config.Pages.Debate.Cuckery.CuckList.GuyAustin exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckGuyAustin : Cuck cuckGuyAustin : Cuck
@ -10,7 +11,7 @@ cuckGuyAustin =
name = name =
"Guy Austin" "Guy Austin"
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/GuyNAustin" , cuckSocial = "https://x.com/GuyNAustin"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.IvorCummins exposing (..) module Config.Pages.Debate.Cuckery.CuckList.IvorCummins exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckIvorCummins : Cuck cuckIvorCummins : Cuck
@ -13,7 +14,7 @@ cuckIvorCummins =
propLDL = propLDL =
"LDL does not cause coronary heart disease." "LDL does not cause coronary heart disease."
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/FatEmperor" , cuckSocial = "https://x.com/FatEmperor"
, cuckDodges = , cuckDodges =

View file

@ -1,6 +1,7 @@
module Debate.Cuckery.CuckList.JakeMey exposing (..) module Config.Pages.Debate.Cuckery.CuckList.JakeMey exposing (..)
import Debate.Cuckery.Types exposing (..) import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckJakeMey : Cuck cuckJakeMey : Cuck
@ -13,7 +14,7 @@ cuckJakeMey =
propReason = propReason =
"Vegan Fridays would only change childrens' diets by <1% annually, and, if anything, this is more likely a positive change than a negative one." "Vegan Fridays would only change childrens' diets by <1% annually, and, if anything, this is more likely a positive change than a negative one."
in in
{ cuckImage = formatCuckName name { cuckImage = formatName name
, cuckName = name , cuckName = name
, cuckSocial = "https://x.com/CakeNutrition" , cuckSocial = "https://x.com/CakeNutrition"
, cuckDodges = , cuckDodges =

Some files were not shown because too many files have changed in this diff Show more