feat: version 1 done?
|
@ -14,6 +14,7 @@ import Config.Helpers.Format
|
||||||
, paragraphFontSize
|
, paragraphFontSize
|
||||||
, paragraphSpacing
|
, paragraphSpacing
|
||||||
)
|
)
|
||||||
|
import Config.Helpers.ImageFolders as M exposing (..)
|
||||||
import Config.Helpers.Response exposing (contentContainer)
|
import Config.Helpers.Response exposing (contentContainer)
|
||||||
import Config.Pages.Debate.Arguments.Records.Template exposing (argument)
|
import Config.Pages.Debate.Arguments.Records.Template exposing (argument)
|
||||||
import Config.Style.Colour exposing (colourTheme)
|
import Config.Style.Colour exposing (colourTheme)
|
||||||
|
@ -57,7 +58,7 @@ cardMaker device cardable contents =
|
||||||
True
|
True
|
||||||
|
|
||||||
C.Argument _ ->
|
C.Argument _ ->
|
||||||
True
|
False
|
||||||
|
|
||||||
C.Gibberish _ ->
|
C.Gibberish _ ->
|
||||||
True
|
True
|
||||||
|
@ -265,10 +266,21 @@ cardMaker device cardable contents =
|
||||||
|
|
||||||
cardImageMaker : String -> Element msg
|
cardImageMaker : String -> Element msg
|
||||||
cardImageMaker image =
|
cardImageMaker image =
|
||||||
|
let
|
||||||
|
mobileImageSize =
|
||||||
|
[ E.width <| px 45
|
||||||
|
, E.height <| px 45
|
||||||
|
]
|
||||||
|
in
|
||||||
el
|
el
|
||||||
[ alignRight
|
[ alignRight
|
||||||
, alignTop
|
, alignTop
|
||||||
, padding 10
|
, paddingEach
|
||||||
|
{ top = 20
|
||||||
|
, bottom = 0
|
||||||
|
, left = 30
|
||||||
|
, right = 0
|
||||||
|
}
|
||||||
]
|
]
|
||||||
<|
|
<|
|
||||||
el
|
el
|
||||||
|
@ -287,14 +299,10 @@ cardMaker device cardable contents =
|
||||||
]
|
]
|
||||||
++ (case ( device.class, device.orientation ) of
|
++ (case ( device.class, device.orientation ) of
|
||||||
( Phone, Portrait ) ->
|
( Phone, Portrait ) ->
|
||||||
[ E.width <| px 45
|
mobileImageSize
|
||||||
, E.height <| px 45
|
|
||||||
]
|
|
||||||
|
|
||||||
( Tablet, Portrait ) ->
|
( Tablet, Portrait ) ->
|
||||||
[ E.width <| px 45
|
mobileImageSize
|
||||||
, E.height <| px 45
|
|
||||||
]
|
|
||||||
|
|
||||||
_ ->
|
_ ->
|
||||||
[ E.width <| px 90
|
[ E.width <| px 90
|
||||||
|
@ -464,7 +472,7 @@ cardMaker device cardable contents =
|
||||||
C.Cuck cuck ->
|
C.Cuck cuck ->
|
||||||
cardWithImage
|
cardWithImage
|
||||||
cuck.cuckName
|
cuck.cuckName
|
||||||
("/cucks/" ++ cuck.cuckImage ++ "/" ++ cuck.cuckImage ++ ".png")
|
(imagePathMaker M.Cuck cuck.cuckImage)
|
||||||
contents
|
contents
|
||||||
|
|
||||||
C.BlogArticle blogArticle ->
|
C.BlogArticle blogArticle ->
|
||||||
|
@ -476,22 +484,20 @@ cardMaker device cardable contents =
|
||||||
cardWithImageWithLink
|
cardWithImageWithLink
|
||||||
blogArticle.isNewTabLink
|
blogArticle.isNewTabLink
|
||||||
blogArticle.articleName
|
blogArticle.articleName
|
||||||
("/blog/" ++ blogArticle.articleImage ++ "thumb.png")
|
(imagePathMaker M.BlogCard blogArticle.articleImage)
|
||||||
blogArticle.articleLink
|
blogArticle.articleLink
|
||||||
contents
|
contents
|
||||||
|
|
||||||
C.Argument argument ->
|
C.Argument argument ->
|
||||||
cardWithNoImageWithLink
|
cardWithNoImage
|
||||||
argument.isNewTabLink
|
|
||||||
argument.argumentTitle
|
argument.argumentTitle
|
||||||
argument.proofLink
|
|
||||||
contents
|
contents
|
||||||
|
|
||||||
C.Gibberish gibberish ->
|
C.Gibberish gibberish ->
|
||||||
cardWithImageWithLink
|
cardWithImageWithLink
|
||||||
gibberish.isNewTabLink
|
gibberish.isNewTabLink
|
||||||
gibberish.gibberishTitle
|
gibberish.gibberishTitle
|
||||||
("/gibberish/" ++ gibberish.gibberishImage ++ ".png")
|
(imagePathMaker M.Gibberish gibberish.gibberishImage)
|
||||||
gibberish.gibberishLink
|
gibberish.gibberishLink
|
||||||
contents
|
contents
|
||||||
|
|
||||||
|
@ -499,7 +505,7 @@ cardMaker device cardable contents =
|
||||||
cardWithImageWithLink
|
cardWithImageWithLink
|
||||||
service.isNewTabLink
|
service.isNewTabLink
|
||||||
service.serviceName
|
service.serviceName
|
||||||
("/services/" ++ service.serviceImage ++ ".png")
|
(imagePathMaker M.Service service.serviceImage)
|
||||||
service.serviceLink
|
service.serviceLink
|
||||||
contents
|
contents
|
||||||
|
|
||||||
|
@ -507,7 +513,7 @@ cardMaker device cardable contents =
|
||||||
cardWithImageWithLink
|
cardWithImageWithLink
|
||||||
debate.isNewTabLink
|
debate.isNewTabLink
|
||||||
debate.debateTitle
|
debate.debateTitle
|
||||||
("/debate/" ++ debate.debateImage ++ ".png")
|
(imagePathMaker M.Debate debate.debateImage)
|
||||||
debate.debateLink
|
debate.debateLink
|
||||||
contents
|
contents
|
||||||
|
|
||||||
|
@ -515,14 +521,14 @@ cardMaker device cardable contents =
|
||||||
cardWithImageWithLink
|
cardWithImageWithLink
|
||||||
donate.isNewTabLink
|
donate.isNewTabLink
|
||||||
donate.donateName
|
donate.donateName
|
||||||
("/donate/" ++ donate.donateImage ++ ".png")
|
(imagePathMaker M.Donate donate.donateImage)
|
||||||
donate.donateLink
|
donate.donateLink
|
||||||
contents
|
contents
|
||||||
|
|
||||||
C.Interview interview ->
|
C.Interview interview ->
|
||||||
cardWithImage
|
cardWithImage
|
||||||
interview.interviewName
|
interview.interviewName
|
||||||
("/interviews/" ++ interview.interviewImage ++ ".png")
|
(imagePathMaker M.Interviews interview.interviewImage)
|
||||||
contents
|
contents
|
||||||
|
|
||||||
C.NutriDex nutriDex ->
|
C.NutriDex nutriDex ->
|
||||||
|
|
62
frontend/src/Config/Helpers/ImageFolders.elm
Normal file
|
@ -0,0 +1,62 @@
|
||||||
|
module Config.Helpers.ImageFolders exposing (..)
|
||||||
|
|
||||||
|
|
||||||
|
imagePathMaker : ImageFolder -> String -> String
|
||||||
|
imagePathMaker imageFolder name =
|
||||||
|
case imageFolder of
|
||||||
|
Cuck ->
|
||||||
|
"/" ++ getImageFolderString imageFolder ++ "/" ++ name ++ "/" ++ name ++ ".png"
|
||||||
|
|
||||||
|
_ ->
|
||||||
|
"/" ++ getImageFolderString imageFolder ++ "/" ++ name ++ ".png"
|
||||||
|
|
||||||
|
|
||||||
|
getImageFolderString : ImageFolder -> String
|
||||||
|
getImageFolderString imageFolder =
|
||||||
|
case imageFolder of
|
||||||
|
Interviews ->
|
||||||
|
"interviews"
|
||||||
|
|
||||||
|
Gibberish ->
|
||||||
|
"gibberish"
|
||||||
|
|
||||||
|
Cuck ->
|
||||||
|
"cucks"
|
||||||
|
|
||||||
|
BlogArticle ->
|
||||||
|
"blog"
|
||||||
|
|
||||||
|
BlogCard ->
|
||||||
|
"blog/thumbs"
|
||||||
|
|
||||||
|
Argument ->
|
||||||
|
"arguments"
|
||||||
|
|
||||||
|
Service ->
|
||||||
|
"services"
|
||||||
|
|
||||||
|
Debate ->
|
||||||
|
"debate"
|
||||||
|
|
||||||
|
Donate ->
|
||||||
|
"donate"
|
||||||
|
|
||||||
|
NutriDex ->
|
||||||
|
"nutridex"
|
||||||
|
|
||||||
|
ServicePage ->
|
||||||
|
"services"
|
||||||
|
|
||||||
|
|
||||||
|
type ImageFolder
|
||||||
|
= Interviews
|
||||||
|
| Gibberish
|
||||||
|
| Cuck
|
||||||
|
| BlogArticle
|
||||||
|
| BlogCard
|
||||||
|
| Argument
|
||||||
|
| Service
|
||||||
|
| Debate
|
||||||
|
| Donate
|
||||||
|
| NutriDex
|
||||||
|
| ServicePage
|
51
frontend/src/Config/Helpers/Price.elm
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
module Config.Helpers.Price exposing (..)
|
||||||
|
|
||||||
|
import Config.Style.Colour exposing (colourTheme)
|
||||||
|
import Config.Style.Transitions exposing (hoverPageButtonDeepDarkOrange, transitionStyleMedium)
|
||||||
|
import Element as E exposing (..)
|
||||||
|
import Element.Background as B exposing (color)
|
||||||
|
import Element.Border as D exposing (rounded)
|
||||||
|
import Element.Font as F exposing (center)
|
||||||
|
import Config.Style.Glow exposing (glowDeepDarkGrey)
|
||||||
|
|
||||||
|
|
||||||
|
buyButton : String -> String -> Element msg
|
||||||
|
buyButton price url =
|
||||||
|
el
|
||||||
|
[ D.width 5
|
||||||
|
, D.rounded 30
|
||||||
|
, centerX
|
||||||
|
, glowDeepDarkGrey
|
||||||
|
, D.color colourTheme.backgroundLightGrey
|
||||||
|
, B.color colourTheme.backgroundLightGrey
|
||||||
|
]
|
||||||
|
<|
|
||||||
|
el
|
||||||
|
[ B.color colourTheme.textDarkOrange
|
||||||
|
, D.rounded 30
|
||||||
|
, F.size 25
|
||||||
|
, F.bold
|
||||||
|
, transitionStyleMedium
|
||||||
|
, hoverPageButtonDeepDarkOrange
|
||||||
|
, paddingEach
|
||||||
|
{ top = 10
|
||||||
|
, right = 25
|
||||||
|
, bottom = 10
|
||||||
|
, left = 25
|
||||||
|
}
|
||||||
|
]
|
||||||
|
<|
|
||||||
|
newTabLink []
|
||||||
|
{ url = url
|
||||||
|
, label =
|
||||||
|
row
|
||||||
|
[ F.center
|
||||||
|
, paddingEach
|
||||||
|
{ top = 3
|
||||||
|
, right = 0
|
||||||
|
, bottom = 0
|
||||||
|
, left = 0
|
||||||
|
}
|
||||||
|
]
|
||||||
|
[ text price ]
|
||||||
|
}
|
|
@ -10,7 +10,7 @@ import Element.Border as D
|
||||||
barMaker : (Int -> String) -> Int -> Element msg
|
barMaker : (Int -> String) -> Int -> Element msg
|
||||||
barMaker getTooltip num =
|
barMaker getTooltip num =
|
||||||
el
|
el
|
||||||
([ height <| px 12
|
[ height <| px 12
|
||||||
, width fill
|
, width fill
|
||||||
, D.rounded 10
|
, D.rounded 10
|
||||||
, D.color colourTheme.textDarkGrey
|
, D.color colourTheme.textDarkGrey
|
||||||
|
@ -23,9 +23,8 @@ barMaker getTooltip num =
|
||||||
, List.repeat (10 - num) colourTheme.barRed
|
, List.repeat (10 - num) colourTheme.barRed
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
, tooltip (getTooltip num)
|
||||||
]
|
]
|
||||||
++ [ tooltip (getTooltip num) ]
|
|
||||||
)
|
|
||||||
none
|
none
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@ servicesElmBuilds =
|
||||||
let
|
let
|
||||||
name : String
|
name : String
|
||||||
name =
|
name =
|
||||||
"Custom Elm Sites"
|
"Front End Development"
|
||||||
in
|
in
|
||||||
{ serviceImage = formatName name
|
{ serviceImage = formatName name
|
||||||
, serviceLink = Path.toString Path.Services_Elm
|
, serviceLink = Path.toString Path.Services_Elm
|
||||||
|
@ -41,8 +41,8 @@ servicesElmBuilds =
|
||||||
, title10 = ""
|
, title10 = ""
|
||||||
}
|
}
|
||||||
, articleParagraph =
|
, articleParagraph =
|
||||||
{ paragraph1 = [ text "The site that you're currently viewing this on was written by me in the Elm programming language. I end , chunkMaker servicesElmBuilds.serviceArticle.articleParagraph.paragraph2e. After a while, I realized that I could create high quality work with it, so I'm offering it as a service." ]
|
{ paragraph1 = [ text "The site that you're currently viewing this on was written by me in the Elm programming language. In the process of programming this website, I realized that I could create reasonably high quality work with Elm, so I'm offering it as a service at a fee that reflects my skill level. ", text "If you're in the market for a new frontend for your website, please inquire at ", el [ F.bold, F.color colourTheme.textLightOrange ] <| text "nick@upRootNutrition.com", text "." ]
|
||||||
, paragraph2 = [ text "Below is an example of a function that I wrote in Elm. In this case, it's the function that is used all over my website to make the strength meters." ]
|
, paragraph2 = [text "Below is an example of a function that I wrote for this site. This particular function renders all of the circular images on all of the site's information cards. Any time you see one of those images, this function is responsible for it."]
|
||||||
, paragraph3 =
|
, paragraph3 =
|
||||||
[ text "The source code for this website is viewable on "
|
[ text "The source code for this website is viewable on "
|
||||||
, newTabLink []
|
, newTabLink []
|
||||||
|
|
|
@ -41,8 +41,8 @@ servicesNixBuilds =
|
||||||
, title10 = ""
|
, title10 = ""
|
||||||
}
|
}
|
||||||
, articleParagraph =
|
, articleParagraph =
|
||||||
{ paragraph1 = [ text "NixOS has become popular in my community, with many people choosing to explore it over Windows, MacOS, and other Linux distributions. Naturally, as a consequence of this, I receive numerous requests for help regarding the Nix programming language and NixOS system configuration. So, to fast-track newcomers and to make my life a little bit easier for both of us, I'm offering to build custom NixOS configurations for interested clients." ]
|
{ paragraph1 = [ text "NixOS has become popular in my community, with many people choosing to explore it over Windows, MacOS, and other Linux distributions. Naturally, as a consequence of this, I receive numerous requests for help regarding the Nix programming language and NixOS system configuration. So, to fast-track newcomers and to make my life a little bit easier for both of us, I'm offering to build custom NixOS configurations for interested clients. ", text "If you're interested in having a custom Nix configuration, or having a pre-existing configuration refactored, please inquire at ", el [ F.bold, F.color colourTheme.textLightOrange ] <| text "nick@upRootNutrition.com", text "." ]
|
||||||
, paragraph2 = [ text "Below is an example of a nix flake that I wrote. In this case, it's the flake that was used to build the development shell for the production of this very website." ]
|
, paragraph2 = [ text "Below is an example of a nix flake that I wrote for the devshell that I used to manage and isolate the development environment for this site. All of the packages, pre-defined settings, and tooling used for this site are managed through this flake." ]
|
||||||
, paragraph3 =
|
, paragraph3 =
|
||||||
[ text "The source code for this website's server is viewable on "
|
[ text "The source code for this website's server is viewable on "
|
||||||
, newTabLink []
|
, newTabLink []
|
||||||
|
|
|
@ -18,6 +18,7 @@ type alias Theme =
|
||||||
, backgroundDarkGrey : Color
|
, backgroundDarkGrey : Color
|
||||||
, backgroundDeepDarkGrey : Color
|
, backgroundDeepDarkGrey : Color
|
||||||
, backgroundSpreadsheet : Color
|
, backgroundSpreadsheet : Color
|
||||||
|
, backgroundSpreadsheetDark : Color
|
||||||
, shadow : Color
|
, shadow : Color
|
||||||
, barGreen : Color
|
, barGreen : Color
|
||||||
, barRed : Color
|
, barRed : Color
|
||||||
|
@ -48,6 +49,7 @@ colourTheme =
|
||||||
, backgroundDarkGrey = rgb255 30 30 30
|
, backgroundDarkGrey = rgb255 30 30 30
|
||||||
, backgroundDeepDarkGrey = rgb255 20 20 20
|
, backgroundDeepDarkGrey = rgb255 20 20 20
|
||||||
, backgroundSpreadsheet = rgb255 36 36 36
|
, backgroundSpreadsheet = rgb255 36 36 36
|
||||||
|
, backgroundSpreadsheetDark = rgb255 26 26 26
|
||||||
, shadow = rgb255 10 10 10
|
, shadow = rgb255 10 10 10
|
||||||
, barGreen = rgb255 0 102 0
|
, barGreen = rgb255 0 102 0
|
||||||
, barRed = rgb255 102 0 0
|
, barRed = rgb255 102 0 0
|
||||||
|
|
|
@ -900,18 +900,16 @@ construction =
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
construction2 : SvgTypes.OuterPart msg -> Element msg
|
leaving : SvgTypes.OuterPart msg -> Element msg
|
||||||
construction2 inner =
|
leaving inner =
|
||||||
HeSvg.buildSvg inner
|
HeSvg.buildSvg inner
|
||||||
{ svgAttributes =
|
{ svgAttributes =
|
||||||
[ SvgAttr.viewBox "0 0 576 512"
|
[ SvgAttr.viewBox "0 0 576 512"
|
||||||
|
|
||||||
-- Using elm-svg because typed-svg has no way of setting the fill to currentColor.
|
|
||||||
, SvgAttr.fill "currentColor"
|
, SvgAttr.fill "currentColor"
|
||||||
]
|
]
|
||||||
, svg =
|
, svg =
|
||||||
[ path
|
[ path
|
||||||
[ SvgAttr.d "M208 64a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zM9.8 214.8c5.1-12.2 19.1-18 31.4-12.9L60.7 210l22.9-38.1C99.9 144.6 129.3 128 161 128c51.4 0 97 32.9 113.3 81.7l34.6 103.7 79.3 33.1 34.2-45.6c6.4-8.5 16.6-13.3 27.2-12.8s20.3 6.4 25.8 15.5l96 160c5.9 9.9 6.1 22.2 .4 32.2s-16.3 16.2-27.8 16.2l-256 0c-11.1 0-21.4-5.7-27.2-15.2s-6.4-21.2-1.4-31.1l16-32c5.4-10.8 16.5-17.7 28.6-17.7l32 0 22.5-30L22.8 246.2c-12.2-5.1-18-19.1-12.9-31.4zm82.8 91.8l112 48c11.8 5 19.4 16.6 19.4 29.4l0 96c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-74.9-60.6-26-37 111c-5.6 16.8-23.7 25.8-40.5 20.2S-3.9 486.6 1.6 469.9l48-144 11-33 32 13.7z"
|
[ SvgAttr.d "M320 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l82.7 0L201.4 265.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L448 109.3l0 82.7c0 17.7 14.3 32 32 32s32-14.3 32-32l0-160c0-17.7-14.3-32-32-32L320 0zM80 32C35.8 32 0 67.8 0 112L0 432c0 44.2 35.8 80 80 80l320 0c44.2 0 80-35.8 80-80l0-112c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 112c0 8.8-7.2 16-16 16L80 448c-8.8 0-16-7.2-16-16l0-320c0-8.8 7.2-16 16-16l112 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L80 32z"
|
||||||
]
|
]
|
||||||
[]
|
[]
|
||||||
]
|
]
|
||||||
|
|
|
@ -21,6 +21,7 @@ import Config.Style.Icons.Icons
|
||||||
, home
|
, home
|
||||||
, hyperBlog
|
, hyperBlog
|
||||||
, interviews
|
, interviews
|
||||||
|
, leaving
|
||||||
, lock
|
, lock
|
||||||
, mastodon
|
, mastodon
|
||||||
, nutriDex
|
, nutriDex
|
||||||
|
@ -608,6 +609,12 @@ makeItem input route =
|
||||||
)
|
)
|
||||||
[ itemIcon input route
|
[ itemIcon input route
|
||||||
, itemText input route
|
, itemText input route
|
||||||
|
, case route.isNewTabLink of
|
||||||
|
True ->
|
||||||
|
itemLeavingIcon input route
|
||||||
|
|
||||||
|
False ->
|
||||||
|
none
|
||||||
]
|
]
|
||||||
, url = route.url
|
, url = route.url
|
||||||
}
|
}
|
||||||
|
@ -648,6 +655,27 @@ itemIcon input route =
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
itemLeavingIcon : NavbarInput contentMsg -> RowInput contentMsg -> Element contentMsg
|
||||||
|
itemLeavingIcon input route =
|
||||||
|
el
|
||||||
|
[ height <| px 50
|
||||||
|
, width <| px 20
|
||||||
|
, E.alignRight
|
||||||
|
, paddingXY 10 0
|
||||||
|
]
|
||||||
|
<|
|
||||||
|
leaving
|
||||||
|
{ elementAttributes =
|
||||||
|
[ E.alignRight
|
||||||
|
, E.alignTop
|
||||||
|
, centerY
|
||||||
|
]
|
||||||
|
, sharedModel = route.sharedModel
|
||||||
|
, svgAttributes =
|
||||||
|
[ SvgAttr.width "15" ]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
itemText : NavbarInput contentMsg -> RowInput contentMsg -> Element contentMsg
|
itemText : NavbarInput contentMsg -> RowInput contentMsg -> Element contentMsg
|
||||||
itemText input route =
|
itemText input route =
|
||||||
el
|
el
|
||||||
|
@ -658,6 +686,12 @@ itemText input route =
|
||||||
else
|
else
|
||||||
transparent True
|
transparent True
|
||||||
, F.bold
|
, F.bold
|
||||||
|
, paddingEach
|
||||||
|
{ top = 6
|
||||||
|
, right = 0
|
||||||
|
, bottom = 3
|
||||||
|
, left = 0
|
||||||
|
}
|
||||||
]
|
]
|
||||||
<|
|
<|
|
||||||
text route.name
|
text route.name
|
||||||
|
|
|
@ -6,12 +6,14 @@ import Config.Helpers.Cards.Types as C
|
||||||
import Config.Helpers.Converters exposing (toTitleCase)
|
import Config.Helpers.Converters exposing (toTitleCase)
|
||||||
import Config.Helpers.Format
|
import Config.Helpers.Format
|
||||||
exposing
|
exposing
|
||||||
( paragraphFontSize
|
( headerFontSizeSmall
|
||||||
|
, paragraphFontSize
|
||||||
, paragraphSpacing
|
, paragraphSpacing
|
||||||
)
|
)
|
||||||
import Config.Helpers.Headers.Helpers exposing (..)
|
import Config.Helpers.Headers.Helpers exposing (..)
|
||||||
import Config.Helpers.Headers.Records exposing (argumentHeader)
|
import Config.Helpers.Headers.Records exposing (argumentHeader)
|
||||||
import Config.Helpers.Headers.Types as R exposing (..)
|
import Config.Helpers.Headers.Types as R exposing (..)
|
||||||
|
import Config.Helpers.ImageFolders as M exposing (..)
|
||||||
import Config.Helpers.Response
|
import Config.Helpers.Response
|
||||||
exposing
|
exposing
|
||||||
( pageList
|
( pageList
|
||||||
|
@ -141,19 +143,117 @@ debateList device =
|
||||||
[ [ headerMaker (R.Arguments argumentHeader) ]
|
[ [ headerMaker (R.Arguments argumentHeader) ]
|
||||||
, List.map
|
, List.map
|
||||||
(\argument ->
|
(\argument ->
|
||||||
cardMaker device (C.Argument argument) (contentList argument)
|
cardMaker device (C.Argument argument) (contentList device argument)
|
||||||
)
|
)
|
||||||
argumentList
|
argumentList
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
contentList : Argument -> List (Element msg)
|
contentList : Device -> Argument -> List (Element msg)
|
||||||
contentList argument =
|
contentList device argument =
|
||||||
|
[ row
|
||||||
|
[ width fill
|
||||||
|
, paddingEach
|
||||||
|
{ top =
|
||||||
|
case ( device.class, device.orientation ) of
|
||||||
|
( Phone, Portrait ) ->
|
||||||
|
8
|
||||||
|
|
||||||
|
( Tablet, Portrait ) ->
|
||||||
|
8
|
||||||
|
|
||||||
|
_ ->
|
||||||
|
0
|
||||||
|
, right = 0
|
||||||
|
, bottom = 0
|
||||||
|
, left = 0
|
||||||
|
}
|
||||||
|
]
|
||||||
|
[ column [ width fill, spacing 8 ]
|
||||||
[ summaryMakerDesktop argument
|
[ summaryMakerDesktop argument
|
||||||
, strengthBar argument
|
, strengthBar argument
|
||||||
, tableMaker argument
|
|
||||||
, desktopFormalizationMaker argument
|
|
||||||
]
|
]
|
||||||
|
, case ( device.class, device.orientation ) of
|
||||||
|
( Phone, Portrait ) ->
|
||||||
|
none
|
||||||
|
|
||||||
|
( Tablet, Portrait ) ->
|
||||||
|
none
|
||||||
|
|
||||||
|
_ ->
|
||||||
|
argumentImageMaker argument
|
||||||
|
]
|
||||||
|
, tableMaker device argument
|
||||||
|
, desktopFormalizationMaker argument
|
||||||
|
, proofTreeButton argument.proofLink
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
argumentImageMaker : Argument -> Element msg
|
||||||
|
argumentImageMaker argument =
|
||||||
|
el
|
||||||
|
[ alignRight
|
||||||
|
, alignTop
|
||||||
|
, centerY
|
||||||
|
, paddingEach
|
||||||
|
{ top = 0
|
||||||
|
, right = 0
|
||||||
|
, bottom = 0
|
||||||
|
, left = 20
|
||||||
|
}
|
||||||
|
]
|
||||||
|
<|
|
||||||
|
el
|
||||||
|
[ D.rounded 10
|
||||||
|
, D.width 3
|
||||||
|
, D.color colourTheme.backgroundLightGrey
|
||||||
|
, B.color colourTheme.backgroundLightGrey
|
||||||
|
]
|
||||||
|
<|
|
||||||
|
E.image
|
||||||
|
[ alignRight
|
||||||
|
, alignTop
|
||||||
|
, D.rounded 10
|
||||||
|
, clip
|
||||||
|
, E.width <| px 65
|
||||||
|
, E.height <| px 65
|
||||||
|
]
|
||||||
|
{ src = imagePathMaker M.Argument argument.argumentImage
|
||||||
|
, description = ""
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
proofTreeButton : String -> Element msg
|
||||||
|
proofTreeButton url =
|
||||||
|
newTabLink
|
||||||
|
[ alignTop
|
||||||
|
, alignRight
|
||||||
|
, paddingXY 0 5
|
||||||
|
]
|
||||||
|
{ url = url
|
||||||
|
, label =
|
||||||
|
el
|
||||||
|
[ F.color colourTheme.textLightGrey
|
||||||
|
, B.color colourTheme.textDarkOrange
|
||||||
|
, D.rounded 10
|
||||||
|
, paddingEach
|
||||||
|
{ top = 6
|
||||||
|
, bottom = 3
|
||||||
|
, left = 10
|
||||||
|
, right = 10
|
||||||
|
}
|
||||||
|
, mouseOver
|
||||||
|
[ F.color colourTheme.textLightOrange
|
||||||
|
, B.color colourTheme.textDeepDarkOrange
|
||||||
|
]
|
||||||
|
, transitionStyleSlow
|
||||||
|
, headerFontSizeSmall
|
||||||
|
, F.bold
|
||||||
|
]
|
||||||
|
<|
|
||||||
|
text
|
||||||
|
"Proof Tree"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
infoSpacing =
|
infoSpacing =
|
||||||
|
@ -165,15 +265,12 @@ propositionMaker =
|
||||||
column
|
column
|
||||||
[ E.alignTop, E.alignLeft ]
|
[ E.alignTop, E.alignLeft ]
|
||||||
[ paragraph
|
[ paragraph
|
||||||
([ F.color colourTheme.textLightGrey
|
[ F.color colourTheme.textLightGrey
|
||||||
, paragraphSpacing
|
, paragraphSpacing
|
||||||
, paragraphFontSize
|
, headerFontSizeSmall
|
||||||
, F.bold
|
, F.bold
|
||||||
]
|
|
||||||
++ [ F.size 18
|
|
||||||
, infoSpacing
|
, infoSpacing
|
||||||
]
|
]
|
||||||
)
|
|
||||||
[ el
|
[ el
|
||||||
[ tooltip
|
[ tooltip
|
||||||
"A proposition is a declarative statement that can be evaluated as either true or false, and which serves as the basis for debate."
|
"A proposition is a declarative statement that can be evaluated as either true or false, and which serves as the basis for debate."
|
||||||
|
@ -432,8 +529,8 @@ getConfidenceTooltip num =
|
||||||
"Confidence level out of expected range."
|
"Confidence level out of expected range."
|
||||||
|
|
||||||
|
|
||||||
tableMaker : Argument -> Element msg
|
tableMaker : Device -> Argument -> Element msg
|
||||||
tableMaker argument =
|
tableMaker device argument =
|
||||||
let
|
let
|
||||||
cellPadding : Attribute msg
|
cellPadding : Attribute msg
|
||||||
cellPadding =
|
cellPadding =
|
||||||
|
@ -454,12 +551,22 @@ tableMaker argument =
|
||||||
]
|
]
|
||||||
<|
|
<|
|
||||||
E.table
|
E.table
|
||||||
[ D.rounded 10
|
([ D.rounded 10
|
||||||
, D.width 2
|
, D.width 2
|
||||||
, D.color colourTheme.textDarkGrey
|
, D.color colourTheme.textDarkGrey
|
||||||
, clip
|
, clip
|
||||||
, B.color colourTheme.backgroundSpreadsheet
|
|
||||||
]
|
]
|
||||||
|
++ (case ( device.class, device.orientation ) of
|
||||||
|
( Phone, Portrait ) ->
|
||||||
|
[ B.color colourTheme.backgroundSpreadsheet ]
|
||||||
|
|
||||||
|
( Tablet, Portrait ) ->
|
||||||
|
[ B.color colourTheme.backgroundSpreadsheet ]
|
||||||
|
|
||||||
|
_ ->
|
||||||
|
[]
|
||||||
|
)
|
||||||
|
)
|
||||||
{ data = argument.definitionTable
|
{ data = argument.definitionTable
|
||||||
, columns =
|
, columns =
|
||||||
[ { header =
|
[ { header =
|
||||||
|
|
|
@ -391,13 +391,23 @@ tableMaker donate device =
|
||||||
]
|
]
|
||||||
<|
|
<|
|
||||||
E.table
|
E.table
|
||||||
[ spacing 0
|
([ spacing 0
|
||||||
, D.rounded 10
|
, D.rounded 10
|
||||||
, D.width 2
|
, D.width 2
|
||||||
, D.color colourTheme.textDarkGrey
|
, D.color colourTheme.textDarkGrey
|
||||||
, B.color colourTheme.backgroundSpreadsheet
|
|
||||||
, clip
|
, clip
|
||||||
]
|
]
|
||||||
|
++ (case ( device.class, device.orientation ) of
|
||||||
|
( Phone, Portrait ) ->
|
||||||
|
[ B.color colourTheme.backgroundSpreadsheet ]
|
||||||
|
|
||||||
|
( Tablet, Portrait ) ->
|
||||||
|
[ B.color colourTheme.backgroundSpreadsheet ]
|
||||||
|
|
||||||
|
_ ->
|
||||||
|
[]
|
||||||
|
)
|
||||||
|
)
|
||||||
{ data = donate.donateFeatures
|
{ data = donate.donateFeatures
|
||||||
, columns =
|
, columns =
|
||||||
List.map createColumn
|
List.map createColumn
|
||||||
|
|
|
@ -17,8 +17,7 @@ import Config.Style.Colour exposing (colourTheme)
|
||||||
import Config.Style.Glow exposing (glowDeepDarkGrey)
|
import Config.Style.Glow exposing (glowDeepDarkGrey)
|
||||||
import Config.Style.Icons.Icons
|
import Config.Style.Icons.Icons
|
||||||
exposing
|
exposing
|
||||||
( construction2
|
( upRootLarge
|
||||||
, upRootLarge
|
|
||||||
, upRootMedium
|
, upRootMedium
|
||||||
, upRootSmall
|
, upRootSmall
|
||||||
)
|
)
|
||||||
|
|
|
@ -14,6 +14,7 @@ import Config.Helpers.Format
|
||||||
import Config.Helpers.Headers.Helpers exposing (..)
|
import Config.Helpers.Headers.Helpers exposing (..)
|
||||||
import Config.Helpers.Headers.Records exposing (nutriDexHeader)
|
import Config.Helpers.Headers.Records exposing (nutriDexHeader)
|
||||||
import Config.Helpers.Headers.Types as R exposing (..)
|
import Config.Helpers.Headers.Types as R exposing (..)
|
||||||
|
import Config.Helpers.Price exposing (buyButton)
|
||||||
import Config.Helpers.Response
|
import Config.Helpers.Response
|
||||||
exposing
|
exposing
|
||||||
( pageList
|
( pageList
|
||||||
|
@ -37,6 +38,7 @@ import Config.Style.Transitions
|
||||||
, hoverPageButtonDeepDarkOrange
|
, hoverPageButtonDeepDarkOrange
|
||||||
, transitionStyleFast
|
, transitionStyleFast
|
||||||
, transitionStyleMedium
|
, transitionStyleMedium
|
||||||
|
, transitionStyleSlow
|
||||||
)
|
)
|
||||||
import Effect exposing (Effect)
|
import Effect exposing (Effect)
|
||||||
import Element as E exposing (..)
|
import Element as E exposing (..)
|
||||||
|
@ -266,31 +268,7 @@ featureList nutridex device =
|
||||||
]
|
]
|
||||||
[ html nutriDexLogo
|
[ html nutriDexLogo
|
||||||
]
|
]
|
||||||
, row
|
, buyButton "$20" "https://uprootnutrition.myshopify.com/cart/31192710807615:1?channel=buy_button"
|
||||||
[ D.width 5
|
|
||||||
, D.rounded 30
|
|
||||||
, centerX
|
|
||||||
, glowDeepDarkGrey
|
|
||||||
, D.color colourTheme.backgroundLightGrey
|
|
||||||
, B.color colourTheme.backgroundLightGrey
|
|
||||||
]
|
|
||||||
[ row
|
|
||||||
[ B.color colourTheme.textDarkOrange
|
|
||||||
, D.rounded 30
|
|
||||||
, F.size 25
|
|
||||||
, F.bold
|
|
||||||
, transitionStyleMedium
|
|
||||||
, hoverPageButtonDeepDarkOrange
|
|
||||||
, paddingEach
|
|
||||||
{ top = 10
|
|
||||||
, right = 25
|
|
||||||
, bottom = 10
|
|
||||||
, left = 25
|
|
||||||
}
|
|
||||||
]
|
|
||||||
[ price
|
|
||||||
]
|
|
||||||
]
|
|
||||||
, column
|
, column
|
||||||
[ centerX ]
|
[ centerX ]
|
||||||
[ column
|
[ column
|
||||||
|
@ -348,8 +326,11 @@ linkFormat =
|
||||||
[ F.color colourTheme.textLightGrey
|
[ F.color colourTheme.textLightGrey
|
||||||
, paragraphSpacing
|
, paragraphSpacing
|
||||||
, paragraphFontSize
|
, paragraphFontSize
|
||||||
|
, F.color colourTheme.textLightOrange
|
||||||
|
, mouseOver
|
||||||
|
[ F.color colourTheme.textDarkOrange
|
||||||
]
|
]
|
||||||
++ [ F.color colourTheme.textLightOrange
|
, transitionStyleMedium
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -4,9 +4,11 @@ import Config.Helpers.Cards.Helpers exposing (cardMaker)
|
||||||
import Config.Helpers.Cards.Types as C exposing (..)
|
import Config.Helpers.Cards.Types as C exposing (..)
|
||||||
import Config.Helpers.Format exposing (..)
|
import Config.Helpers.Format exposing (..)
|
||||||
import Config.Helpers.Headers.Types exposing (Header)
|
import Config.Helpers.Headers.Types exposing (Header)
|
||||||
|
import Config.Helpers.Price exposing (buyButton)
|
||||||
import Config.Helpers.Response exposing (pageList, topLevelContainer)
|
import Config.Helpers.Response exposing (pageList, topLevelContainer)
|
||||||
import Config.Helpers.ServiceFormat exposing (..)
|
import Config.Helpers.ServiceFormat exposing (..)
|
||||||
import Config.Helpers.ToolTip exposing (..)
|
import Config.Helpers.ToolTip exposing (..)
|
||||||
|
import Config.Helpers.Viewport exposing (resetViewport)
|
||||||
import Config.Pages.Services.Records.DebateAnalysis exposing (..)
|
import Config.Pages.Services.Records.DebateAnalysis exposing (..)
|
||||||
import Config.Style.Colour exposing (colourTheme)
|
import Config.Style.Colour exposing (colourTheme)
|
||||||
import Config.Style.Transitions
|
import Config.Style.Transitions
|
||||||
|
@ -28,7 +30,6 @@ import Route exposing (Route)
|
||||||
import Route.Path as Path
|
import Route.Path as Path
|
||||||
import Shared
|
import Shared
|
||||||
import View exposing (View)
|
import View exposing (View)
|
||||||
import Config.Helpers.Viewport exposing (resetViewport)
|
|
||||||
|
|
||||||
|
|
||||||
page : Shared.Model -> Route () -> Page Model Msg
|
page : Shared.Model -> Route () -> Page Model Msg
|
||||||
|
@ -65,7 +66,6 @@ init () =
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- UPDATE
|
-- UPDATE
|
||||||
|
|
||||||
|
|
||||||
|
@ -136,5 +136,6 @@ contentList =
|
||||||
, numberMaker servicesDebateAnalysis.serviceArticle.articleListEntries.list1
|
, numberMaker servicesDebateAnalysis.serviceArticle.articleListEntries.list1
|
||||||
, titleMaker servicesDebateAnalysis.serviceArticle.articleTitles.title2
|
, titleMaker servicesDebateAnalysis.serviceArticle.articleTitles.title2
|
||||||
, bulletPointMaker servicesDebateAnalysis.serviceArticle.articleListEntries.list2
|
, bulletPointMaker servicesDebateAnalysis.serviceArticle.articleListEntries.list2
|
||||||
|
, buyButton "Book!" "https://buy.stripe.com/14k3dr4Zh8p6c3mbIJ"
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
|
|
|
@ -5,6 +5,7 @@ import Config.Helpers.Cards.Types as C
|
||||||
import Config.Helpers.Format exposing (..)
|
import Config.Helpers.Format exposing (..)
|
||||||
import Config.Helpers.Headers.Helpers exposing (..)
|
import Config.Helpers.Headers.Helpers exposing (..)
|
||||||
import Config.Helpers.Headers.Types exposing (Header)
|
import Config.Helpers.Headers.Types exposing (Header)
|
||||||
|
import Config.Helpers.Price exposing (buyButton)
|
||||||
import Config.Helpers.Response
|
import Config.Helpers.Response
|
||||||
exposing
|
exposing
|
||||||
( pageList
|
( pageList
|
||||||
|
@ -12,6 +13,7 @@ import Config.Helpers.Response
|
||||||
)
|
)
|
||||||
import Config.Helpers.ServiceFormat exposing (..)
|
import Config.Helpers.ServiceFormat exposing (..)
|
||||||
import Config.Helpers.ToolTip exposing (..)
|
import Config.Helpers.ToolTip exposing (..)
|
||||||
|
import Config.Helpers.Viewport exposing (resetViewport)
|
||||||
import Config.Pages.Services.Records.DebateCoaching exposing (servicesDebateCoaching)
|
import Config.Pages.Services.Records.DebateCoaching exposing (servicesDebateCoaching)
|
||||||
import Config.Style.Colour exposing (colourTheme)
|
import Config.Style.Colour exposing (colourTheme)
|
||||||
import Config.Style.Transitions
|
import Config.Style.Transitions
|
||||||
|
@ -33,7 +35,6 @@ import Route exposing (Route)
|
||||||
import Route.Path as Path
|
import Route.Path as Path
|
||||||
import Shared
|
import Shared
|
||||||
import View exposing (View)
|
import View exposing (View)
|
||||||
import Config.Helpers.Viewport exposing (resetViewport)
|
|
||||||
|
|
||||||
|
|
||||||
page : Shared.Model -> Route () -> Page Model Msg
|
page : Shared.Model -> Route () -> Page Model Msg
|
||||||
|
@ -70,7 +71,6 @@ init () =
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- UPDATE
|
-- UPDATE
|
||||||
|
|
||||||
|
|
||||||
|
@ -147,5 +147,6 @@ contentList =
|
||||||
, highlightedBlockMaker servicesDebateCoaching.serviceArticle.articleTitles.title6 servicesDebateCoaching.serviceArticle.articleListEntries.list6
|
, highlightedBlockMaker servicesDebateCoaching.serviceArticle.articleTitles.title6 servicesDebateCoaching.serviceArticle.articleListEntries.list6
|
||||||
, highlightedBlockMaker servicesDebateCoaching.serviceArticle.articleTitles.title7 servicesDebateCoaching.serviceArticle.articleListEntries.list7
|
, highlightedBlockMaker servicesDebateCoaching.serviceArticle.articleTitles.title7 servicesDebateCoaching.serviceArticle.articleListEntries.list7
|
||||||
, highlightedBlockMaker servicesDebateCoaching.serviceArticle.articleTitles.title8 servicesDebateCoaching.serviceArticle.articleListEntries.list8
|
, highlightedBlockMaker servicesDebateCoaching.serviceArticle.articleTitles.title8 servicesDebateCoaching.serviceArticle.articleListEntries.list8
|
||||||
|
, buyButton "Book!" "https://buy.stripe.com/14k01f3Vd6gY6J2146"
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
|
|
|
@ -12,6 +12,7 @@ import Config.Helpers.Response
|
||||||
)
|
)
|
||||||
import Config.Helpers.ServiceFormat exposing (..)
|
import Config.Helpers.ServiceFormat exposing (..)
|
||||||
import Config.Helpers.ToolTip exposing (..)
|
import Config.Helpers.ToolTip exposing (..)
|
||||||
|
import Config.Helpers.Viewport exposing (resetViewport)
|
||||||
import Config.Pages.Services.Records.ElmBuilds exposing (servicesElmBuilds)
|
import Config.Pages.Services.Records.ElmBuilds exposing (servicesElmBuilds)
|
||||||
import Config.Style.Colour exposing (..)
|
import Config.Style.Colour exposing (..)
|
||||||
import Config.Style.Transitions
|
import Config.Style.Transitions
|
||||||
|
@ -33,7 +34,6 @@ import Route exposing (Route)
|
||||||
import Route.Path as Path
|
import Route.Path as Path
|
||||||
import Shared
|
import Shared
|
||||||
import View exposing (View)
|
import View exposing (View)
|
||||||
import Config.Helpers.Viewport exposing (resetViewport)
|
|
||||||
|
|
||||||
|
|
||||||
page : Shared.Model -> Route () -> Page Model Msg
|
page : Shared.Model -> Route () -> Page Model Msg
|
||||||
|
@ -70,7 +70,6 @@ init () =
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- UPDATE
|
-- UPDATE
|
||||||
|
|
||||||
|
|
||||||
|
@ -170,24 +169,16 @@ elmCodeRenderer =
|
||||||
[ renderCodeLine syntaxTheme
|
[ renderCodeLine syntaxTheme
|
||||||
[ text ""
|
[ text ""
|
||||||
|> el [ paddingXY 0 0 ]
|
|> el [ paddingXY 0 0 ]
|
||||||
, text "barMaker"
|
, text "cardImageMaker"
|
||||||
|> el [ F.color syntaxTheme.key ]
|
|> el [ F.color syntaxTheme.key ]
|
||||||
, text " : "
|
, text " : "
|
||||||
|> el [ F.color syntaxTheme.operator ]
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
, text "("
|
, text "String"
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text "Int"
|
|
||||||
|> el [ F.color syntaxTheme.keyword ]
|
|> el [ F.color syntaxTheme.keyword ]
|
||||||
, text " -> "
|
, text " -> "
|
||||||
|> el [ F.color syntaxTheme.operator ]
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
, text "String"
|
, text "String"
|
||||||
|> el [ F.color syntaxTheme.keyword ]
|
|> el [ F.color syntaxTheme.keyword ]
|
||||||
, text ")"
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text " -> "
|
|
||||||
|> el [ F.color syntaxTheme.operator ]
|
|
||||||
, text "Int"
|
|
||||||
|> el [ F.color syntaxTheme.keyword ]
|
|
||||||
, text " -> "
|
, text " -> "
|
||||||
|> el [ F.color syntaxTheme.operator ]
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
, text "Element"
|
, text "Element"
|
||||||
|
@ -197,13 +188,67 @@ elmCodeRenderer =
|
||||||
, renderCodeLine syntaxTheme
|
, renderCodeLine syntaxTheme
|
||||||
[ text ""
|
[ text ""
|
||||||
|> el [ paddingXY 0 0 ]
|
|> el [ paddingXY 0 0 ]
|
||||||
, text "barMaker"
|
, text "cardImageMaker"
|
||||||
|> el [ F.color syntaxTheme.key ]
|
|> el [ F.color syntaxTheme.key ]
|
||||||
, text " getToolTip"
|
, text " image blurb"
|
||||||
, text " num"
|
|
||||||
, text " ="
|
, text " ="
|
||||||
|> el [ F.color syntaxTheme.operator ]
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
]
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 16 0 ]
|
||||||
|
, text "let"
|
||||||
|
|> el [ F.color syntaxTheme.keyword ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 32 0 ]
|
||||||
|
, text "mobileImageSize"
|
||||||
|
, text " ="
|
||||||
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 48 0 ]
|
||||||
|
, text "["
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " E"
|
||||||
|
, text "."
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text "width"
|
||||||
|
, text " <| "
|
||||||
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
|
, text "px"
|
||||||
|
, text " 45"
|
||||||
|
|> el [ F.color syntaxTheme.string ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 48 0 ]
|
||||||
|
, text ","
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " E"
|
||||||
|
, text "."
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text "height"
|
||||||
|
, text " <| "
|
||||||
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
|
, text "px"
|
||||||
|
, text " 45"
|
||||||
|
|> el [ F.color syntaxTheme.string ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 48 0 ]
|
||||||
|
, text "]"
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 16 0 ]
|
||||||
|
, text "in"
|
||||||
|
|> el [ F.color syntaxTheme.keyword ]
|
||||||
|
]
|
||||||
, renderCodeLine syntaxTheme
|
, renderCodeLine syntaxTheme
|
||||||
[ text ""
|
[ text ""
|
||||||
|> el [ paddingXY 16 0 ]
|
|> el [ paddingXY 16 0 ]
|
||||||
|
@ -211,197 +256,307 @@ elmCodeRenderer =
|
||||||
]
|
]
|
||||||
, renderCodeLine syntaxTheme
|
, renderCodeLine syntaxTheme
|
||||||
[ text ""
|
[ text ""
|
||||||
|> el [ paddingXY 28 0 ]
|
|> el [ paddingXY 32 0 ]
|
||||||
, text "("
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text "["
|
, text "["
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
, text " Element"
|
, text " alignRight"
|
||||||
|> el [ F.color syntaxTheme.keyword ]
|
|
||||||
, text "."
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text "height"
|
|
||||||
, text " <| "
|
|
||||||
|> el [ F.color syntaxTheme.operator ]
|
|
||||||
, text "px"
|
|
||||||
, text " 12"
|
|
||||||
|> el [ F.color syntaxTheme.string ]
|
|
||||||
]
|
]
|
||||||
, renderCodeLine syntaxTheme
|
, renderCodeLine syntaxTheme
|
||||||
[ text ""
|
[ text ""
|
||||||
|> el [ paddingXY 32 0 ]
|
|> el [ paddingXY 32 0 ]
|
||||||
, text ","
|
, text ","
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
, text " Element"
|
, text " alignTop"
|
||||||
|> el [ F.color syntaxTheme.keyword ]
|
|
||||||
, text "."
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text "width"
|
|
||||||
, text " fill"
|
|
||||||
]
|
]
|
||||||
, renderCodeLine syntaxTheme
|
, renderCodeLine syntaxTheme
|
||||||
[ text ""
|
[ text ""
|
||||||
|> el [ paddingXY 32 0 ]
|
|> el [ paddingXY 32 0 ]
|
||||||
, text ","
|
, text ","
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
, text " Border"
|
, text " padding"
|
||||||
|> el [ F.color syntaxTheme.keyword ]
|
|
||||||
, text "."
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text "rounded"
|
|
||||||
, text " 10"
|
, text " 10"
|
||||||
|> el [ F.color syntaxTheme.string ]
|
|> el [ F.color syntaxTheme.string ]
|
||||||
]
|
]
|
||||||
, renderCodeLine syntaxTheme
|
, renderCodeLine syntaxTheme
|
||||||
[ text ""
|
[ text ""
|
||||||
|> el [ paddingXY 32 0 ]
|
|> el [ paddingXY 32 0 ]
|
||||||
|
, text "]"
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 16 0 ]
|
||||||
|
, text "<|"
|
||||||
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 32 0 ]
|
||||||
|
, text "el"
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 48 0 ]
|
||||||
|
, text "["
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " D"
|
||||||
|
, text "."
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text "rounded"
|
||||||
|
, text " 100"
|
||||||
|
|> el [ F.color syntaxTheme.string ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 48 0 ]
|
||||||
, text ","
|
, text ","
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
, text " Border"
|
, text " D"
|
||||||
|> el [ F.color syntaxTheme.keyword ]
|
, text "."
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text "width"
|
||||||
|
, text " 5"
|
||||||
|
|> el [ F.color syntaxTheme.string ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 48 0 ]
|
||||||
|
, text ","
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " glowDeepDarkGrey"
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 48 0 ]
|
||||||
|
, text ","
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " D"
|
||||||
, text "."
|
, text "."
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
, text "color"
|
, text "color"
|
||||||
, text " colourTheme"
|
, text " colourTheme"
|
||||||
, text "."
|
, text "."
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
, text "textDarkGrey"
|
, text "backgroundDarkGrey"
|
||||||
]
|
|
||||||
, renderCodeLine syntaxTheme
|
|
||||||
[ text ""
|
|
||||||
|> el [ paddingXY 32 0 ]
|
|
||||||
, text ","
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text " Border"
|
|
||||||
|> el [ F.color syntaxTheme.keyword ]
|
|
||||||
, text "."
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text "width"
|
|
||||||
, text " 2"
|
|
||||||
]
|
|
||||||
, renderCodeLine syntaxTheme
|
|
||||||
[ text ""
|
|
||||||
|> el [ paddingXY 32 0 ]
|
|
||||||
, text ","
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text " Background"
|
|
||||||
|> el [ F.color syntaxTheme.keyword ]
|
|
||||||
, text "."
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text "gradient"
|
|
||||||
]
|
|
||||||
, renderCodeLine syntaxTheme
|
|
||||||
[ text ""
|
|
||||||
|> el [ paddingXY 48 0 ]
|
|
||||||
, text "{"
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text " angle"
|
|
||||||
, text " = "
|
|
||||||
|> el [ F.color syntaxTheme.operator ]
|
|
||||||
, text "1.57"
|
|
||||||
|> el [ F.color syntaxTheme.string ]
|
|
||||||
]
|
]
|
||||||
, renderCodeLine syntaxTheme
|
, renderCodeLine syntaxTheme
|
||||||
[ text ""
|
[ text ""
|
||||||
|> el [ paddingXY 48 0 ]
|
|> el [ paddingXY 48 0 ]
|
||||||
, text ","
|
, text ","
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
, text " steps"
|
, text " B"
|
||||||
, text " = "
|
|
||||||
]
|
|
||||||
, renderCodeLine syntaxTheme
|
|
||||||
[ text ""
|
|
||||||
|> el [ paddingXY 56 0 ]
|
|
||||||
, text "List"
|
|
||||||
|> el [ F.color syntaxTheme.keyword ]
|
|
||||||
, text "."
|
, text "."
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
, text "concat"
|
, text "color"
|
||||||
]
|
|
||||||
, renderCodeLine syntaxTheme
|
|
||||||
[ text ""
|
|
||||||
|> el [ paddingXY 62 0 ]
|
|
||||||
, text "[ "
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text "List"
|
|
||||||
|> el [ F.color syntaxTheme.keyword ]
|
|
||||||
, text "."
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text "repeat"
|
|
||||||
, text " num "
|
|
||||||
, text "colourTheme"
|
|
||||||
, text "."
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text "barGreen"
|
|
||||||
]
|
|
||||||
, renderCodeLine syntaxTheme
|
|
||||||
[ text ""
|
|
||||||
|> el [ paddingXY 62 0 ]
|
|
||||||
, text ", "
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text "List"
|
|
||||||
|> el [ F.color syntaxTheme.keyword ]
|
|
||||||
, text "."
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text "repeat"
|
|
||||||
, text " ("
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text "10"
|
|
||||||
|> el [ F.color syntaxTheme.string ]
|
|
||||||
, text " - "
|
|
||||||
|> el [ F.color syntaxTheme.operator ]
|
|
||||||
, text "num"
|
|
||||||
, text " )"
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text " colourTheme"
|
, text " colourTheme"
|
||||||
, text "."
|
, text "."
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
, text "barRed"
|
, text "backgroundDarkGrey"
|
||||||
]
|
]
|
||||||
, renderCodeLine syntaxTheme
|
, renderCodeLine syntaxTheme
|
||||||
[ text ""
|
[ text ""
|
||||||
|> el [ paddingXY 62 0 ]
|
|> el [ paddingXY 48 0 ]
|
||||||
, text "]"
|
, text "]"
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
]
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 32 0 ]
|
||||||
|
, text "<|"
|
||||||
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
|
]
|
||||||
, renderCodeLine syntaxTheme
|
, renderCodeLine syntaxTheme
|
||||||
[ text ""
|
[ text ""
|
||||||
|> el [ paddingXY 48 0 ]
|
|> el [ paddingXY 48 0 ]
|
||||||
|
, text "E"
|
||||||
|
, text "."
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text "image"
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 64 0 ]
|
||||||
|
, text "("
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text "["
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " alignRight"
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 64 0 ]
|
||||||
|
, text ","
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " alignTop"
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 64 0 ]
|
||||||
|
, text ","
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " D"
|
||||||
|
, text "."
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text "rounded"
|
||||||
|
, text " 100"
|
||||||
|
|> el [ F.color syntaxTheme.string ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 64 0 ]
|
||||||
|
, text ","
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " clip"
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 64 0 ]
|
||||||
|
, text "]"
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 64 0 ]
|
||||||
|
, text "++"
|
||||||
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
|
, text " ("
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text "case"
|
||||||
|
|> el [ F.color syntaxTheme.keyword ]
|
||||||
|
, text " ("
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " device"
|
||||||
|
, text "."
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text "class"
|
||||||
|
, text ","
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " device"
|
||||||
|
, text "."
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text "orientation"
|
||||||
|
, text " )"
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " of"
|
||||||
|
|> el [ F.color syntaxTheme.keyword ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 80 0 ]
|
||||||
|
, text "("
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " Phone"
|
||||||
|
, text ","
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " Portrait"
|
||||||
|
, text " )"
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " ->"
|
||||||
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 96 0 ]
|
||||||
|
, text "mobileImageSize"
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 80 0 ]
|
||||||
|
, text "("
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " Tablet"
|
||||||
|
, text ","
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " Portrait"
|
||||||
|
, text " )"
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " ->"
|
||||||
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 96 0 ]
|
||||||
|
, text "mobileImageSize"
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 80 0 ]
|
||||||
|
, text "_"
|
||||||
|
, text " ->"
|
||||||
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 96 0 ]
|
||||||
|
, text "["
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " E"
|
||||||
|
, text "."
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text "width"
|
||||||
|
, text " <| "
|
||||||
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
|
, text "px"
|
||||||
|
, text " 90"
|
||||||
|
|> el [ F.color syntaxTheme.string ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 96 0 ]
|
||||||
|
, text ","
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " E"
|
||||||
|
, text "."
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text "height"
|
||||||
|
, text " <| "
|
||||||
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
|
, text "px"
|
||||||
|
, text " 90"
|
||||||
|
|> el [ F.color syntaxTheme.string ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 96 0 ]
|
||||||
|
, text "]"
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 64 0 ]
|
||||||
|
, text ")"
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 64 0 ]
|
||||||
|
, text ")"
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 64 0 ]
|
||||||
|
, text "{"
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " src"
|
||||||
|
, text " = "
|
||||||
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
|
, text "image"
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 64 0 ]
|
||||||
|
, text ","
|
||||||
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
|
, text " description"
|
||||||
|
, text " = "
|
||||||
|
|> el [ F.color syntaxTheme.operator ]
|
||||||
|
, text "blurb"
|
||||||
|
]
|
||||||
|
, renderCodeLine syntaxTheme
|
||||||
|
[ text ""
|
||||||
|
|> el [ paddingXY 64 0 ]
|
||||||
, text "}"
|
, text "}"
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|> el [ F.color syntaxTheme.punctuation ]
|
||||||
]
|
]
|
||||||
, renderCodeLine syntaxTheme
|
|
||||||
[ text ""
|
|
||||||
|> el [ paddingXY 40 0 ]
|
|
||||||
, text "]"
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
]
|
|
||||||
, renderCodeLine syntaxTheme
|
|
||||||
[ text ""
|
|
||||||
|> el [ paddingXY 48 0 ]
|
|
||||||
, text "++"
|
|
||||||
|> el [ F.color syntaxTheme.operator ]
|
|
||||||
, text " [ "
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text "tooltip"
|
|
||||||
, text " ("
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text "getToolTip"
|
|
||||||
, text " num"
|
|
||||||
, text ")"
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
, text " ]"
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
]
|
|
||||||
, renderCodeLine syntaxTheme
|
|
||||||
[ text ""
|
|
||||||
|> el [ paddingXY 28 0 ]
|
|
||||||
, text ")"
|
|
||||||
|> el [ F.color syntaxTheme.punctuation ]
|
|
||||||
]
|
|
||||||
, renderCodeLine syntaxTheme
|
|
||||||
[ text ""
|
|
||||||
|> el [ paddingXY 28 0 ]
|
|
||||||
, text "none"
|
|
||||||
]
|
|
||||||
]
|
]
|
||||||
|
|
|
@ -12,6 +12,7 @@ import Config.Helpers.Response
|
||||||
)
|
)
|
||||||
import Config.Helpers.ServiceFormat exposing (..)
|
import Config.Helpers.ServiceFormat exposing (..)
|
||||||
import Config.Helpers.ToolTip exposing (..)
|
import Config.Helpers.ToolTip exposing (..)
|
||||||
|
import Config.Helpers.Viewport exposing (resetViewport)
|
||||||
import Config.Pages.Services.Records.NixBuilds exposing (servicesNixBuilds)
|
import Config.Pages.Services.Records.NixBuilds exposing (servicesNixBuilds)
|
||||||
import Config.Style.Colour exposing (..)
|
import Config.Style.Colour exposing (..)
|
||||||
import Config.Style.Transitions
|
import Config.Style.Transitions
|
||||||
|
@ -33,7 +34,6 @@ import Route exposing (Route)
|
||||||
import Route.Path as Path
|
import Route.Path as Path
|
||||||
import Shared
|
import Shared
|
||||||
import View exposing (View)
|
import View exposing (View)
|
||||||
import Config.Helpers.Viewport exposing (resetViewport)
|
|
||||||
|
|
||||||
|
|
||||||
page : Shared.Model -> Route () -> Page Model Msg
|
page : Shared.Model -> Route () -> Page Model Msg
|
||||||
|
@ -70,7 +70,6 @@ init () =
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- UPDATE
|
-- UPDATE
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -5,6 +5,7 @@ import Config.Helpers.Cards.Types as C
|
||||||
import Config.Helpers.Format exposing (..)
|
import Config.Helpers.Format exposing (..)
|
||||||
import Config.Helpers.Headers.Helpers exposing (..)
|
import Config.Helpers.Headers.Helpers exposing (..)
|
||||||
import Config.Helpers.Headers.Types exposing (Header)
|
import Config.Helpers.Headers.Types exposing (Header)
|
||||||
|
import Config.Helpers.Price exposing (buyButton)
|
||||||
import Config.Helpers.Response
|
import Config.Helpers.Response
|
||||||
exposing
|
exposing
|
||||||
( pageList
|
( pageList
|
||||||
|
@ -139,5 +140,6 @@ contentList =
|
||||||
, numberMaker servicesNutritionScience.serviceArticle.articleListEntries.list1
|
, numberMaker servicesNutritionScience.serviceArticle.articleListEntries.list1
|
||||||
, titleMaker servicesNutritionScience.serviceArticle.articleTitles.title2
|
, titleMaker servicesNutritionScience.serviceArticle.articleTitles.title2
|
||||||
, bulletPointMaker servicesNutritionScience.serviceArticle.articleListEntries.list2
|
, bulletPointMaker servicesNutritionScience.serviceArticle.articleListEntries.list2
|
||||||
|
, buyButton "Book!" "https://buy.stripe.com/5kA5lz77pdJq6J28wz"
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
|
|
Before Width: | Height: | Size: 851 KiB After Width: | Height: | Size: 851 KiB |
Before Width: | Height: | Size: 265 KiB After Width: | Height: | Size: 265 KiB |
Before Width: | Height: | Size: 879 KiB After Width: | Height: | Size: 879 KiB |
Before Width: | Height: | Size: 537 KiB After Width: | Height: | Size: 537 KiB |
Before Width: | Height: | Size: 614 KiB After Width: | Height: | Size: 614 KiB |
Before Width: | Height: | Size: 917 KiB After Width: | Height: | Size: 917 KiB |
Before Width: | Height: | Size: 148 KiB After Width: | Height: | Size: 148 KiB |
Before Width: | Height: | Size: 292 KiB After Width: | Height: | Size: 292 KiB |
Before Width: | Height: | Size: 584 KiB After Width: | Height: | Size: 584 KiB |
Before Width: | Height: | Size: 395 KiB After Width: | Height: | Size: 395 KiB |
Before Width: | Height: | Size: 826 KiB After Width: | Height: | Size: 826 KiB |
Before Width: | Height: | Size: 5.8 KiB After Width: | Height: | Size: 5.8 KiB |