feat: fixed receipts

This commit is contained in:
Nick 2024-12-19 01:43:02 -06:00
parent 2295c85fca
commit 97b9223223
18 changed files with 185 additions and 102 deletions

0
frontend/src/Config/Helpers/Articles/Article.elm Normal file → Executable file
View file

View file

@ -103,7 +103,11 @@ imageTransitionStyle =
, glowDeepDarkGrey
, D.color colourTheme.backgroundDarkGrey
, B.color colourTheme.backgroundDarkGrey
, hoverCircleButtonDarkOrange
, mouseOver
[ D.color colourTheme.textDarkOrange
, B.color colourTheme.textDarkOrange
, glowDeepDarkOrange
]
, transitionStyleMedium
]

0
frontend/src/Config/Helpers/Headers/Types.elm Normal file → Executable file
View file

View file

@ -57,7 +57,7 @@ titleMaker title =
, width fill
, F.color colourTheme.textLightOrange
, paddingEach
{ top = 10
{ top = 20
, bottom = 10
, left = 0
, right = 0

View file

@ -43,3 +43,48 @@ tooltip content =
(text content)
]
none
tooltipImage : String -> Attribute msg
tooltipImage content =
inFront <|
el
[ width fill
, height fill
, transparent True
, mouseOver [ transparent False ]
, htmlAttribute <| H.style "z-index" "4"
, transitionStyleSlow
, onRight <|
el
[ htmlAttribute (H.style "pointerEvents" "none")
, moveLeft 410
]
<|
el
[ width <| px 600
, htmlAttribute <| H.style "z-index" "4"
, B.color colourTheme.backgroundLightGrey
, padding 15
, D.color colourTheme.textLightOrange
, D.rounded 5
, D.width 2
, D.shadow
{ offset = ( 0, 3 )
, blur = 6
, size = 0
, color = rgba 0 0 0 0.32
}
]
(image
[ width fill
, height fill
, centerX
, centerY
]
{ src = content
, description = "Tooltip image"
}
)
]
none

View file

View file

@ -2,7 +2,6 @@ module Config.Pages.Debate.Cuckery.Records.AdamSinger exposing (..)
import Config.Helpers.Converters exposing (formatName)
import Config.Pages.Debate.Cuckery.Types exposing (..)
import Config.Helpers.Converters exposing (formatName)
cuckAdamSinger : Cuck
@ -19,8 +18,11 @@ cuckAdamSinger =
[ { dodgeLink = "https://x.com/TheNutrivore/status/1566491269194719232?s=20"
, dodgeDescription = VagueGesture
, dodgeProposition = "Seed oils cause inflammation and stomach pain."
, dodgeReceipts = [ "https://x.com/TheNutrivore/status/1566491269194719232?s=20" ]
, dodgeFallacy = Just (SpecificFallacy "")
, dodgeReceipts =
[ "receipt1"
, "receipt2"
]
, dodgeFallacy = Just MotteAndBailey
, dodgeNicksDoxasticState = Just Disbelief
, dodgeNicksDoxasticReason = SpecificPropReason commonPropReasons.propSeedOilsReason
}

View file

@ -18,7 +18,7 @@ cuckAmberOHearn =
[ { dodgeLink = "https://x.com/FusionProgGuy/status/1413888976281169922?s=20"
, dodgeDescription = VagueGesture
, dodgeProposition = noProposition
, dodgeReceipts = []
, dodgeReceipts = ["receipt1"]
, dodgeFallacy = Just (SpecificFallacy "")
, dodgeNicksDoxasticState = Nothing
, dodgeNicksDoxasticReason = NoProp

View file

@ -13,7 +13,7 @@ glowDeepDarkGrey =
glowDeepDarkOrange : Attr decorative msg
glowDeepDarkOrange =
D.glow colourTheme.shadow 4
D.glow colourTheme.textDeepDarkOrange 4
glowDeepDarkGreyNavbar : Attr decorative msg

View file

@ -535,6 +535,22 @@ hyperBlog inner =
}
video : SvgTypes.OuterPart msg -> Element msg
video inner =
HeSvg.buildSvg inner
{ svgAttributes =
[ SvgAttr.viewBox "0 0 512 512"
, SvgAttr.fill "currentColor"
]
, svg =
[ path
[ SvgAttr.d "M0 96C0 60.7 28.7 32 64 32l384 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96zM48 368l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm368-16c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zM48 240l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm368-16c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zM48 112l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16L64 96c-8.8 0-16 7.2-16 16zM416 96c-8.8 0-16 7.2-16 16l0 32c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l0-32c0-8.8-7.2-16-16-16l-32 0zM160 128l0 64c0 17.7 14.3 32 32 32l128 0c17.7 0 32-14.3 32-32l0-64c0-17.7-14.3-32-32-32L192 96c-17.7 0-32 14.3-32 32zm32 160c-17.7 0-32 14.3-32 32l0 64c0 17.7 14.3 32 32 32l128 0c17.7 0 32-14.3 32-32l0-64c0-17.7-14.3-32-32-32l-128 0z"
]
[]
]
}
debate : SvgTypes.OuterPart msg -> Element msg
debate inner =
HeSvg.buildSvg inner

View file

@ -29,6 +29,7 @@ import Config.Style.Icons.Icons
, upRootLarge
, upRootMedium
, upRootSmall
, video
)
import Config.Style.Icons.Types as TySvg exposing (..)
import Config.Style.Transitions
@ -418,6 +419,13 @@ items input =
, name = String.toUpper pageNames.pageHyperBlog
, url = Path.toString Path.Blog
}
, { icon = video
, isCurrent = False
, isNewTabLink = True
, isSubscriberOnly = False
, name = String.toUpper "Video"
, url = "https://video.uprootnutrition.com"
}
, { icon = debate
, isCurrent = input.route.path == Path.Debate
, isNewTabLink = False

View file

@ -263,7 +263,6 @@ articleMaker article =
, spacing 3
, F.regular
, F.alignLeft
, F.size 16
, paddingEach
{ top = 8
, bottom = 0
@ -313,7 +312,7 @@ articleRows article =
, infoRow "Duration:" (String.fromInt (wordCount article.articleBody // 225) ++ " minutes")
, infoRow "Words:" (String.fromInt (wordCount article.articleBody))
]
++ (if referenceCount > 2 then
++ (if referenceCount >= 2 then
[ infoRow "Sources:" (String.fromInt referenceCount) ]
else

View file

@ -19,7 +19,8 @@ import Config.Helpers.CardFormat
import Config.Helpers.Converters exposing (formatSocial)
import Config.Helpers.Format
exposing
( paragraphFontSize
( headerFontSizeSmall
, paragraphFontSize
, paragraphSpacing
)
import Config.Helpers.Headers.Header exposing (headerMaker)
@ -29,6 +30,7 @@ import Config.Helpers.Response
( pageList
, topLevelContainer
)
import Config.Helpers.ToolTip exposing (tooltipImage)
import Config.Helpers.Viewport exposing (resetViewport)
import Config.Pages.Debate.Cuckery.List
exposing
@ -249,7 +251,7 @@ dodgeMaker cuck =
, width fill
]
<|
List.map2 (\x y -> makeDodge x y)
List.map2 (\x y -> makeDodge cuck x y)
cuck.cuckDodges
(List.range 1 (List.length cuck.cuckDodges))
@ -293,8 +295,8 @@ dodgeTitle cuck =
[ text "Dodges: " ]
makeDodge : Dodge -> Int -> Element msg
makeDodge dodgeEntry index =
makeDodge : Cuck -> Dodge -> Int -> Element msg
makeDodge cuck dodge index =
column
[ F.color colourTheme.textLightGrey
, paragraphSpacing
@ -326,15 +328,15 @@ makeDodge dodgeEntry index =
[ spacing 3
, width fill
]
[ circumstanceMaker dodgeEntry
[ circumstanceMaker cuck dodge
, column
[ spacing 3
, width fill
]
[ propositionMaker dodgeEntry
, reductioMaker dodgeEntry
, attitudeMaker dodgeEntry
, reasonMaker dodgeEntry
[ propositionMaker dodge
, reductioMaker dodge
, attitudeMaker dodge
, reasonMaker dodge
]
]
]
@ -357,97 +359,104 @@ formatProposition proposition =
dodgeCounter : Int -> Element msg
dodgeCounter index =
column
([ F.color colourTheme.textLightGrey
, paragraphSpacing
, paragraphFontSize
]
++ [ F.size 18
]
)
[ F.color colourTheme.textLightGrey
, paragraphSpacing
, headerFontSizeSmall
]
[ text (String.fromInt index ++ ". ") ]
circumstanceMaker : Dodge -> Element msg
circumstanceMaker dodgeEntry =
column
[ width fill
circumstanceMaker : Cuck -> Dodge -> Element msg
circumstanceMaker cuck dodge =
el
[ spacing 5
]
[ newTabLink
<|
newTabLink
[ paragraphFontSize
, F.color colourTheme.textLightOrange
]
{ url = dodgeEntry.dodgeLink
{ url = dodge.dodgeLink
, label =
row [ F.size 18 ]
[ column [ width fill ]
[ paragraph []
[ el
[ transitionStyleSlow
, hoverFontDarkOrange
]
<|
text
(case dodgeEntry.dodgeDescription of
NoReply ->
"Debate invitation extended with no response"
RanAway ->
"Engaged in written debate and ran away when cornered"
GhostedMe ->
"Debate invitation accepted with no follow-up"
OutrightNo ->
"Debate invitation declined"
InTooDeep ->
"Debate invitation accepted and subsequently retracted"
KillScreen ->
"All further debate invitations preemptively declined"
VagueGesture ->
"Chose to gesture vaguely instead of engaging"
)
, paragraph [ F.color colourTheme.textLightGrey ] [ text "." ]
, column
[ spacing 5
, F.size 12
]
(List.indexedMap
(\index2 link ->
newTabLink
[ paddingEach
{ top = 0
, right = 0
, bottom = 0
, left = 5
}
]
{ url = link
, label =
row [ moveUp 5 ]
[ el
[ transitionStyleSlow
, hoverFontDarkOrange
]
<|
text (String.fromInt (index2 + 1))
, text ", " |> el [ F.color colourTheme.textLightGrey ]
]
}
)
dodgeEntry.dodgeReceipts
)
]
]
el
[ headerFontSizeSmall
]
<|
circumstance cuck dodge
}
circumstance : Cuck -> Dodge -> Element msg
circumstance cuck dodge =
paragraph
[]
[ el
[ transitionStyleSlow
, hoverFontDarkOrange
]
<|
case dodge.dodgeDescription of
NoReply ->
text "Debate invitation extended with no response"
RanAway ->
text "Engaged in written debate and ran away when cornered"
GhostedMe ->
text "Debate invitation accepted with no follow-up"
OutrightNo ->
text "Debate invitation declined"
InTooDeep ->
text "Debate invitation accepted and subsequently retracted"
KillScreen ->
text "All further debate invitations preemptively declined"
VagueGesture ->
text "Chose to gesture vaguely instead of engaging"
, el [ F.color colourTheme.textLightGrey ] <|
text "."
, receipts cuck dodge
]
receipts : Cuck -> Dodge -> Element msg
receipts cuck dodge =
row
[ spacing 3
, F.size 12
, paddingEach
{ top = 0
, right = 0
, bottom = 0
, left = 3
}
, htmlAttribute (H.style "position" "relative")
, htmlAttribute (H.style "top" "-5px")
]
<|
List.indexedMap
(\index2 link ->
paragraph
[ alignTop
, F.color colourTheme.textLightOrange
]
[ el
[ tooltipImage ("/cucks/" ++ cuck.cuckImage ++ "/" ++ "receipt" ++ String.fromInt (index2 + 1) ++ ".png")
, transitionStyleSlow
, hoverFontDarkOrange
]
(text (String.fromInt (index2 + 1)))
, text ", " |> el [ F.color colourTheme.textLightGrey ]
]
)
dodge.dodgeReceipts
propositionMaker : Dodge -> Element msg
propositionMaker dodgeEntry =
propositionMaker dodge =
row
[ F.color colourTheme.textLightGrey
, paragraphSpacing
@ -464,13 +473,13 @@ propositionMaker dodgeEntry =
[ E.width fill
, alignLeft
]
[ paragraph [ F.regular ] [ text (formatProposition dodgeEntry.dodgeProposition) ]
[ paragraph [ F.regular ] [ text (formatProposition dodge.dodgeProposition) ]
]
]
attitudeMaker : Dodge -> Element msg
attitudeMaker dodgeEntry =
attitudeMaker dodge =
row
([ F.color colourTheme.textLightGrey
, paragraphSpacing
@ -489,7 +498,7 @@ attitudeMaker dodgeEntry =
[ E.width fill
, alignLeft
]
[ case dodgeEntry.dodgeNicksDoxasticState of
[ case dodge.dodgeNicksDoxasticState of
Nothing ->
paragraph [ F.regular ] [ text "I don't form a doxastic state." ]
@ -514,8 +523,8 @@ attitudeMaker dodgeEntry =
reductioMaker : Dodge -> Element msg
reductioMaker dodgeEntry =
case dodgeEntry.dodgeFallacy of
reductioMaker dodge =
case dodge.dodgeFallacy of
Nothing ->
none
@ -560,7 +569,7 @@ reductioMaker dodgeEntry =
reasonMaker : Dodge -> Element msg
reasonMaker dodgeEntry =
reasonMaker dodge =
row
([ F.color colourTheme.textLightGrey
, paragraphSpacing
@ -577,7 +586,7 @@ reasonMaker dodgeEntry =
]
, paragraph [ F.regular ]
[ text <|
case dodgeEntry.dodgeNicksDoxasticReason of
case dodge.dodgeNicksDoxasticReason of
NoProp ->
"There is no proposition to evaluate."

0
frontend/static/arguments/luigiterrorist.png Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 102 KiB

After

Width:  |  Height:  |  Size: 102 KiB

Before After
Before After

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

0
frontend/static/services/debatecoaching.png Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 336 KiB

After

Width:  |  Height:  |  Size: 336 KiB

Before After
Before After