💀 remove old components

This commit is contained in:
Tessa Kelly 2020-06-22 17:46:20 -07:00
parent c57636c4eb
commit 3bf24352af
12 changed files with 28 additions and 1999 deletions

View File

@ -8,19 +8,16 @@
"Nri.Ui",
"Nri.Ui.Accordion.V1",
"Nri.Ui.AssetPath",
"Nri.Ui.AssignmentIcon.V1",
"Nri.Ui.AssignmentIcon.V2",
"Nri.Ui.Button.V10",
"Nri.Ui.Button.V5",
"Nri.Ui.Button.V8",
"Nri.Ui.Button.V5",
"Nri.Ui.Callout.V1",
"Nri.Ui.Checkbox.V3",
"Nri.Ui.Checkbox.V5",
"Nri.Ui.ClickableSvg.V1",
"Nri.Ui.ClickableText.V3",
"Nri.Ui.Colors.Extra",
"Nri.Ui.Colors.V1",
"Nri.Ui.Confetti.V1",
"Nri.Ui.Confetti.V2",
"Nri.Ui.CssVendorPrefix.V1",
"Nri.Ui.DisclosureIndicator.V2",
@ -59,8 +56,6 @@
"Nri.Ui.Svg.V1",
"Nri.Ui.Table.V4",
"Nri.Ui.Table.V5",
"Nri.Ui.Tabs.V3",
"Nri.Ui.Tabs.V4",
"Nri.Ui.Tabs.V5",
"Nri.Ui.Text.V2",
"Nri.Ui.Text.V4",
@ -94,4 +89,4 @@
"avh4/elm-program-test": "3.1.0 <= v < 4.0.0",
"elm-explorations/test": "1.2.0 <= v < 2.0.0"
}
}
}

View File

@ -1,15 +1,8 @@
filename,name,version
src/Nri/Ui/Tabs/V3.elm,Accessibility.Aria,DEPRECATED
src/Nri/Ui/Tabs/V3.elm,Accessibility.Key,DEPRECATED
src/Nri/Ui/Tabs/V3.elm,Accessibility.Role,DEPRECATED
src/Nri/Ui/Tabs/V3.elm,Accessibility.Widget,DEPRECATED
src/Nri/Ui/Page/V3.elm,Nri.Ui.Button,5
src/Nri/Ui/Page/V3.elm,Nri.Ui.Text,2
src/Nri/Ui/SlideModal/V2.elm,Nri.Ui.Button,8
src/Nri/Ui/SlideModal/V2.elm,Nri.Ui.Icon,3
src/Nri/Ui/SlideModal/V2.elm,Nri.Ui.Text,2
src/Nri/Ui/SortableTable/V1.elm,Nri.Ui.Table,4
src/Nri/Ui/AssignmentIcon/V1.elm,Nri.Ui.AssignmentIcon,1
src/Nri/Ui/Button/V8.elm,Html,DEPRECATED
src/Nri/Ui/Button/V5.elm,Nri.Ui.Icon,3
src/Nri/Ui/SegmentedControl/V6.elm,Nri.Ui.Icon,3

1 filename name version
src/Nri/Ui/Tabs/V3.elm Accessibility.Aria DEPRECATED
src/Nri/Ui/Tabs/V3.elm Accessibility.Key DEPRECATED
src/Nri/Ui/Tabs/V3.elm Accessibility.Role DEPRECATED
src/Nri/Ui/Tabs/V3.elm Accessibility.Widget DEPRECATED
src/Nri/Ui/Page/V3.elm Nri.Ui.Button 5
2 src/Nri/Ui/Page/V3.elm Nri.Ui.Text 2
3 src/Nri/Ui/SlideModal/V2.elm Nri.Ui.Button 8
src/Nri/Ui/SlideModal/V2.elm Nri.Ui.Icon 3
4 src/Nri/Ui/SlideModal/V2.elm Nri.Ui.Text 2
5 src/Nri/Ui/SortableTable/V1.elm Nri.Ui.Table 4
src/Nri/Ui/AssignmentIcon/V1.elm Nri.Ui.AssignmentIcon 1
6 src/Nri/Ui/Button/V8.elm Html DEPRECATED
7 src/Nri/Ui/Button/V5.elm Nri.Ui.Icon 3
8 src/Nri/Ui/SegmentedControl/V6.elm Nri.Ui.Icon 3

View File

@ -1,486 +0,0 @@
module Nri.Ui.AssignmentIcon.V1 exposing
( diagnostic, practice, quiz
, quickWrite, guidedDraft
, selfReview
, peerReview, submitting, rating, revising
, startPrimary, startSecondary
, allLibrary, assessment, assignArrow, home, passageQuiz, planningDiagnostic, practice2, quiz2, standards, unitDiagnostic, writing
)
{-|
@docs diagnostic, practice, quiz
@docs quickWrite, guidedDraft
@docs selfReview
@docs peerReview, submitting, rating, revising
@docs startPrimary, startSecondary
@docs allLibrary, assessment, assignArrow, home, passageQuiz, planningDiagnostic, practice2, quiz2, standards, unitDiagnostic, writing
import Html.Styled exposing (Html)
import Nri.Ui.AssignmentIcon.V1 as AssignmentIcon
import Nri.Ui.Colors.V1 as Colors
import Nri.Ui.Svg.V1 as Svg
view : Html msg
view =
AssignmentIcon.diagnostic
|> Svg.withColor Colors.lichen
|> Svg.toHtml
-}
import Nri.Ui.Svg.V1
import Svg.Styled as Svg
import Svg.Styled.Attributes as Attributes
{-| -}
diagnostic : Nri.Ui.Svg.V1.Svg
diagnostic =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 43.8 41"
, Attributes.fill "currentcolor"
]
[ Svg.path [ Attributes.d "M32.5,41c-1.1,0-2.1-0.4-2.9-1.1c-1.6-1.5-1.6-3.9-0.2-5.5c0,0,0,0,0,0l0.2-0.2c0.2-0.2,0.3-0.4,0.5-0.6H12.4l-0.1-0.1l0,0 l-0.1-0.1l0,0l-0.1-0.1l0,0L12,33l0,0c0,0,0-0.1,0-0.1l0,0c0,0,0-0.1,0-0.1v-0.1l0,0c0.1-0.9,0.5-1.8,1.2-2.4c0.9-0.8,1-2.2,0.1-3.1 c0,0-0.1-0.1-0.1-0.1c-1-0.9-2.6-0.9-3.6,0c-0.9,0.8-1,2.2-0.1,3.1l0.1,0.2c0.7,0.6,1.1,1.5,1.2,2.4c0.1,0.4-0.1,0.9-0.6,1 c0,0,0,0,0,0H10H0.8c-0.4,0-0.8-0.4-0.8-0.8v-11l0,0c0,0,0,0,0-0.1v-0.4l0.1-0.1h0.1h0.7c0.9,0.1,1.8,0.5,2.4,1.2 c0.4,0.5,1,0.7,1.6,0.7c0.6,0,1.2-0.3,1.6-0.7c0.9-1,0.9-2.6,0-3.7c-0.8-0.9-2.1-1-3-0.2c-0.1,0.1-0.1,0.1-0.2,0.2 c-0.6,0.7-1.5,1.2-2.5,1.2H0.2L0.1,20l0,0l-0.1-0.1l0,0L0,19.9l0,0v-0.1l0,0c0,0,0-0.1,0-0.1l0,0V8.2c0-0.4,0.4-0.8,0.8-0.8h8.1 C8.8,7.2,8.6,7,8.5,6.8C6.9,5.3,6.8,2.9,8.3,1.3l0.2-0.2c1.6-1.5,4.2-1.5,5.8,0c1.6,1.4,1.6,3.9,0.2,5.4l-0.2,0.2 c-0.2,0.2-0.3,0.4-0.5,0.6h17.7h0.1l0,0l0.1,0.1l0,0c0.2,0.2,0.2,0.4,0.2,0.7c-0.1,0.9-0.5,1.8-1.2,2.4c-0.9,0.9-1,2.3-0.1,3.3 c0,0,0.1,0.1,0.1,0.1c1,0.9,2.6,0.9,3.6,0c0.9-0.8,1-2.2,0.2-3.1l-0.2-0.1C33.5,10,33.1,9.2,33,8.3c0-0.1,0-0.2,0-0.2 c0-0.4,0.4-0.8,0.8-0.8H43c0.4,0,0.8,0.4,0.8,0.8v11c0,0,0,0.1,0,0.1l0,0v0.1l0,0v0.1l0,0l-0.1,0.1l0,0l-0.1,0.1l0,0l-0.1,0.1H43 c-0.9-0.1-1.8-0.5-2.4-1.2c-0.4-0.5-1-0.7-1.6-0.7c-0.6,0-1.2,0.3-1.6,0.7c-0.9,1-0.9,2.6,0,3.7c0.8,0.9,2.1,1,3,0.2 c0.1-0.1,0.2-0.1,0.2-0.2c0.6-0.6,1.5-1,2.4-1.1l0,0c0.4,0,0.8,0.3,0.8,0.8c0,0,0,0.1,0,0.1c0,0,0,0.1,0,0.1v10.9 c0,0.4-0.4,0.8-0.8,0.8h-8.1c0.1,0.2,0.3,0.4,0.4,0.6c1.6,1.4,1.6,3.9,0.2,5.4l-0.2,0.2C34.6,40.6,33.5,41,32.5,41z M31.9,33 c-0.1,0.9-0.5,1.8-1.2,2.4c-0.9,0.8-1,2.2-0.2,3.1l0.2,0.2c1,0.9,2.6,0.9,3.6,0c0.9-0.8,1-2.2,0.2-3.1l-0.2-0.2 c-0.7-0.6-1.1-1.5-1.2-2.4c0-0.1,0-0.1,0-0.2c0-0.2,0.1-0.4,0.2-0.5l0,0l0.1-0.1l0,0l0.1-0.1h8.7V23c-0.2,0.1-0.4,0.3-0.6,0.5 c-1.3,1.5-3.7,1.7-5.2,0.3c-0.1-0.1-0.2-0.2-0.3-0.3c-1.5-1.7-1.5-4.2,0-5.9c1.4-1.5,3.7-1.7,5.2-0.3c0.1,0.1,0.2,0.2,0.3,0.3 c0.2,0.2,0.4,0.3,0.6,0.5V9h-7.3c0.1,0.3,0.3,0.6,0.5,0.8c1.6,1.4,1.6,3.9,0.2,5.4l-0.2,0.2c-1.6,1.5-4.2,1.5-5.8,0 C28,14,27.9,11.5,29.4,10l0.2-0.2C29.8,9.6,29.9,9.3,30,9h-7.3v8.8c0.2-0.1,0.4-0.3,0.6-0.5c1.4-1.5,3.7-1.7,5.2-0.3 c0.1,0.1,0.2,0.2,0.3,0.3c1.5,1.7,1.5,4.2,0,5.9c-0.7,0.8-1.7,1.2-2.8,1.2c-1.1,0-2.1-0.5-2.8-1.2c-0.2-0.2-0.4-0.3-0.6-0.5V32h8.4 c0.1,0,0.3,0.1,0.4,0.1l0,0l0.1,0.1l0,0v0.1v0.1l0,0c0.1,0.1,0.1,0.3,0.1,0.4C31.7,32.8,31.8,32.9,31.9,33L31.9,33z M21.1,32V21.7 l0,0c0-0.4,0.3-0.8,0.7-0.8c0,0,0,0,0,0H22c1,0.1,1.8,0.5,2.5,1.2c0.4,0.5,1,0.7,1.6,0.7c0.6,0,1.2-0.3,1.6-0.7c0.9-1,0.9-2.6,0-3.7 c-0.8-0.9-2.1-1-3-0.2c-0.1,0.1-0.1,0.1-0.2,0.2c-0.6,0.7-1.5,1.2-2.5,1.2h-0.1c-0.4,0-0.8-0.3-0.8-0.8c0,0,0-0.1,0-0.1l0,0V9h-8.4 c-0.4,0-0.8-0.4-0.8-0.8l0,0c0.1-1,0.5-1.9,1.2-2.5c0.9-0.8,1-2.2,0.1-3.1l-0.1-0.1c-1-0.9-2.6-0.9-3.6,0c-0.9,0.8-1,2.2-0.1,3.1 l0.1,0.1c0.7,0.6,1.1,1.4,1.2,2.3c0,0.1,0,0.1,0,0.2C10.8,8.6,10.4,9,10,9H1.6v9c0.2-0.1,0.4-0.3,0.6-0.5c1.4-1.5,3.7-1.7,5.2-0.3 c0.1,0.1,0.2,0.2,0.3,0.3c1.5,1.7,1.5,4.2,0,5.9C7,24.2,6,24.7,5,24.7c-1.1,0-2.1-0.5-2.8-1.2c-0.2-0.2-0.4-0.3-0.6-0.5v9H9 c-0.1-0.2-0.3-0.4-0.5-0.6c-1.6-1.4-1.6-3.9-0.2-5.4l0.2-0.2c1.6-1.5,4.2-1.5,5.8,0c1.6,1.4,1.6,3.9,0.2,5.4l-0.2,0.2 c-0.2,0.2-0.3,0.4-0.5,0.6L21.1,32z" ] [] ]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
peerReview : Nri.Ui.Svg.V1.Svg
peerReview =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 57 58"
]
[ Svg.g
[ Attributes.fill "currentcolor"
, Attributes.fillRule "evenodd"
]
[ Svg.path [ Attributes.d "M16.441 43.288v-10.59l.002-.095v-3.781l-1.263 2.46c-.373.728-1.244 1.029-1.945.668-.7-.36-.966-1.243-.593-1.97l2.476-4.826c.044-.083.092-.162.147-.232a1.648 1.648 0 0 1 1.558-1.11h4.399l-2.218 4.32c-.723 1.414-.238 3.208 1.228 3.963.919.47 1.944.392 2.758-.08l.056-.036v11.309H20.16v-9.093h-.751v9.093h-2.968zm.45-23.648a2.95 2.95 0 1 1 5.903 0 2.953 2.953 0 0 1-2.952 2.952 2.952 2.952 0 0 1-2.95-2.952z" ] []
, Svg.path [ Attributes.d "M24.376 43.288v-11.55c0-.035 0-.07.002-.108V27.464l-1.392 2.71c-.412.805-1.373 1.135-2.146.739-.774-.396-1.064-1.371-.653-2.174l2.729-5.319c.047-.091.102-.176.162-.255a1.818 1.818 0 0 1 1.716-1.224h6.54c.796 0 1.472.512 1.717 1.224.06.079.114.164.161.255l2.73 5.32c.412.802.12 1.777-.654 2.173-.773.396-1.734.066-2.144-.739l-1.392-2.708v4.104c0 .054-.002.106-.008.158v11.56h-3.291v-9.901h-.786v9.9h-3.291zm3.744-29.2h.006a3.255 3.255 0 0 1 3.251 3.253 3.255 3.255 0 0 1-3.254 3.254 3.255 3.255 0 0 1-3.254-3.254 3.255 3.255 0 0 1 3.251-3.253z" ] []
, Svg.path [ Attributes.d "M33.073 43.288V31.972l.065.044c.815.47 1.84.55 2.758.079 1.468-.755 1.951-2.549 1.228-3.963l-2.217-4.32h4.398c.722 0 1.336.464 1.558 1.11.053.072.103.149.147.232l2.476 4.825c.373.728.108 1.612-.593 1.97-.7.362-1.572.06-1.947-.667l-1.261-2.46v3.725c0 .048-.002.095-.007.143V43.288h-2.967v-9.093h-.75v9.093h-2.888zm.37-23.648a2.951 2.951 0 1 1 5.902 0 2.953 2.953 0 0 1-2.951 2.952 2.953 2.953 0 0 1-2.952-2.952zM52.869 45.376c.773-.062 1.091.482 1.13.966.038.483-.191 1.072-.965 1.133l-4.29.343c-.01 0-.02-.005-.032-.004-.017.005-.035.012-.052.013-.483.038-1.07-.192-1.13-.968l-.342-4.303a1.053 1.053 0 0 1 .962-1.133 1.052 1.052 0 0 1 1.13.966l.155 1.953c6.516-8.931 6.1-23.482-1.259-31.686-.599-.663-.442-1.286-.099-1.634.336-.344.997-.505 1.661.226 8.007 8.926 8.49 24.528 1.453 34.262l1.678-.134zm-6.36-37.96c.004.018.011.035.012.053.039.484-.19 1.068-.966 1.13l-4.305.343a1.054 1.054 0 0 1-1.132-.963 1.051 1.051 0 0 1 .964-1.13l1.955-.155C34.105.178 19.554.593 11.35 7.954c-.662.6-1.285.441-1.633.097-.345-.335-.506-.994.227-1.66 8.925-8.008 24.527-8.489 34.26-1.452l-.133-1.678c-.062-.774.481-1.092.965-1.13.485-.04 1.072.19 1.133.963l.344 4.292c0 .01-.004.02-.004.03zm-.573 42.24c.343.34.503 1.001-.227 1.668-8.898 8.032-24.453 8.514-34.157 1.457l.133 1.683c.062.775-.479 1.094-.961 1.134-.483.038-1.068-.192-1.13-.967l-.342-4.304c-.001-.012.004-.022.003-.033-.002-.017-.011-.035-.012-.052-.039-.485.192-1.072.963-1.133l4.292-.343a1.052 1.052 0 0 1 .168 2.098l-1.932.154c8.905 6.53 23.398 6.119 31.573-1.26.66-.602 1.282-.445 1.63-.101zM6.848 15.622l-.154-1.954C.178 22.598.594 37.15 7.953 45.352c.6.663.442 1.288.099 1.634-.335.345-.996.506-1.66-.227-8.008-8.925-8.49-24.526-1.453-34.26l-1.679.134c-.772.062-1.091-.482-1.13-.966-.038-.485.19-1.071.964-1.133l4.292-.343c.01-.001.02.003.03.003.019 0 .036-.01.054-.012.483-.037 1.068.192 1.13.966l.342 4.306a1.052 1.052 0 0 1-.964 1.131 1.052 1.052 0 0 1-1.13-.964z" ] []
]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
practice : Nri.Ui.Svg.V1.Svg
practice =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 42.1 42"
, Attributes.fill "currentcolor"
]
[ Svg.path [ Attributes.d "M36.1,9.5l-1.9-0.3l2.9-2.9L39,6.6L36.1,9.5z M20.5,40c-3.7,0-7.2-1.1-10.3-3.1c-0.3-0.2-0.6-0.2-0.9-0.1l-6.7,2.5l2.5-6.7 c0.1-0.3,0.1-0.6-0.1-0.9c-5.7-8.5-3.4-20,5.1-25.6c6-4,13.7-4.2,19.9-0.5L26.7,9c-6.9-3.4-15.3-0.6-18.8,6.3s-0.6,15.3,6.3,18.8 c6.9,3.4,15.3,0.6,18.8-6.3c2-3.9,2-8.6,0-12.5l3.3-3.3c5.3,8.7,2.5,20.1-6.2,25.4C27.2,39.1,23.9,40,20.5,40z M31.5,14l-1.9-0.3 l2.9-2.9l1.9,0.3L31.5,14z M31.1,9.5l-2.9,2.9L28,10.5l2.9-2.9L31.1,9.5z M26.1,21.5c0,3.1-2.5,5.5-5.5,5.5c-3.1,0-5.5-2.5-5.5-5.5 c0-3.1,2.5-5.5,5.5-5.5c1.1,0,2.2,0.3,3.2,1l-3.4,3.4c-0.6,0.2-1,0.8-0.8,1.4c0.2,0.6,0.8,1,1.4,0.8c0.4-0.1,0.7-0.4,0.8-0.8 l3.4-3.4C25.7,19.3,26,20.4,26.1,21.5z M26.1,10.9l0.5,3.2l-1.5,1.5c-3.3-2.5-8-1.9-10.5,1.4c-2.5,3.3-1.9,8,1.4,10.5 s8,1.9,10.5-1.4c2.1-2.7,2.1-6.4,0-9.1l1.5-1.5l3.2,0.5c3.1,5.9,0.8,13.1-5,16.2c-5.9,3.1-13.1,0.8-16.2-5s-0.8-13.1,5-16.2 C18.4,9.1,22.6,9.1,26.1,10.9z M35.5,3l0.3,1.9l-2.9,2.9l-0.3-1.9L35.5,3z M42,5.5c-0.1-0.3-0.4-0.6-0.8-0.7l-3.5-0.5l-0.5-3.6 C37,0.3,36.5-0.1,36,0c-0.2,0-0.4,0.1-0.5,0.2l-4,4C22-1.8,9.4,0.9,3.3,10.4c-4.3,6.7-4.3,15.4,0,22.1l-3.1,8.2 c-0.2,0.5,0.1,1.1,0.7,1.2c0.1,0,0.2,0,0.3,0c0.1,0,0.2,0,0.3-0.1l8.2-3.1c9.5,6,22.2,3.2,28.2-6.4c4.2-6.7,4.2-15.2,0-21.9l4-4 C42,6.3,42.1,5.9,42,5.5L42,5.5z" ] [] ]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
quiz : Nri.Ui.Svg.V1.Svg
quiz =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 37.9 44.7"
, Attributes.fill "currentcolor"
]
[ Svg.path [ Attributes.d "M35.8,3.8l0.9,0.1l-0.9,8.5V3.8z M34.6,3.6v38.8H2.8V2.6h31.9L34.6,3.6z M1.2,40.8l0.5-3.1v3.1L1.2,40.8z M4.9,1.2L9,1.6 H4.9V1.2z M35.8,2.6V1.5H22.3L3.9,0L3.8,1.5H1.6v22.8L0,41.8l1.6,0.1v1.6h18.7L34,44.7l0.1-1.1h1.7V25.8l2.1-22.9L35.8,2.6z" ] []
, Svg.path [ Attributes.d "M9.5,8.1l-2.3,2.8l-0.7-1C6.3,9.6,6,9.5,5.7,9.7c-0.3,0.2-0.3,0.5-0.2,0.8l0,0l0,0l1.1,1.7c0.1,0.1,0.3,0.2,0.4,0.2l0,0 c0.2,0,0.3-0.1,0.4-0.2l2.8-3.3c0.2-0.2,0.2-0.6-0.1-0.8C10,7.8,9.6,7.9,9.5,8.1L9.5,8.1z" ] []
, Svg.path [ Attributes.d "M9.5,14.2l-2.3,2.8l-0.7-1c-0.2-0.3-0.5-0.3-0.8-0.2c-0.3,0.2-0.3,0.5-0.2,0.8l0,0l1.1,1.7c0.1,0.1,0.3,0.2,0.4,0.2l0,0 c0.2,0,0.3-0.1,0.4-0.2l2.8-3.3c0.2-0.2,0.2-0.6-0.1-0.8C10.1,14,10,14,9.9,14C9.7,14,9.6,14.1,9.5,14.2z" ] []
, Svg.path [ Attributes.d "M9.5,26.4l-2.3,2.8l-0.7-1c-0.2-0.3-0.5-0.3-0.8-0.2c-0.3,0.2-0.3,0.5-0.1,0.8l1.1,1.7c0.1,0.1,0.3,0.2,0.4,0.2l0,0 c0.2,0,0.3-0.1,0.4-0.2l2.8-3.3c0.2-0.2,0.2-0.6-0.1-0.8c-0.1-0.1-0.2-0.2-0.3-0.2C9.7,26.2,9.6,26.2,9.5,26.4z" ] []
, Svg.path [ Attributes.d "M9.5,32.4l-2.3,2.8l-0.7-1C6.3,33.9,6,33.9,5.7,34c-0.3,0.2-0.3,0.5-0.2,0.8l0,0l1.1,1.7c0.1,0.1,0.3,0.2,0.4,0.2l0,0 c0.2,0,0.3-0.1,0.4-0.2l2.8-3.3c0.2-0.2,0.2-0.6-0.1-0.8C10,32.2,9.6,32.2,9.5,32.4L9.5,32.4z" ] []
, Svg.path [ Attributes.d "M5.9,20.8C5.7,21,5.7,21.4,6,21.6l1.1,1l-1.1,1c-0.2,0.2-0.2,0.5-0.1,0.8c0.1,0.1,0.2,0.2,0.4,0.2c0.1,0,0.2,0,0.3-0.1 l1.2-1.1l1.2,1.1c0.1,0.1,0.2,0.1,0.3,0.1c0.2,0,0.3-0.1,0.4-0.2c0.2-0.2,0.2-0.6-0.1-0.8l-1.1-1l1.1-1c0.2-0.2,0.2-0.5,0.1-0.8 c-0.2-0.2-0.5-0.3-0.7-0.1l0,0l-1.2,1.1l-1.2-1.1c-0.1-0.1-0.3-0.1-0.4,0C6.1,20.6,6,20.7,5.9,20.8z" ] []
, Svg.path [ Attributes.d "M13.1,35.9c-0.6,0-1-0.4-1-1s0.4-1,1-1h6.2c0.6,0,1,0.4,1,1s-0.4,1-1,1H13.1z" ] []
, Svg.path [ Attributes.d "M13.1,29.5c-0.6,0-1-0.4-1-1s0.4-1,1-1H30c0.6,0,1,0.4,1,1s-0.4,1-1,1H13.1z" ] []
, Svg.path [ Attributes.d "M13.1,22.9c-0.6,0-1-0.4-1-1s0.4-1,1-1H30c0.6,0,1,0.4,1,1s-0.4,1-1,1H13.1z" ] []
, Svg.path [ Attributes.d "M13.1,16.5c-0.5,0-1-0.4-1-0.9v-0.1c0-0.6,0.4-1,1-1H30c0.6,0,1,0.4,1,1s-0.4,1-1,1L13.1,16.5z" ] []
, Svg.path [ Attributes.d "M13.1,10.1c-0.5,0-1-0.4-1-0.9V9c0-0.6,0.4-1,1-1H30c0.6,0,1,0.4,1,1s-0.4,1-1,1L13.1,10.1z" ] []
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
quickWrite : Nri.Ui.Svg.V1.Svg
quickWrite =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 48 37"
]
[ Svg.g
[ Attributes.fill "currentcolor"
, Attributes.fillRule "evenodd"
]
[ Svg.path
[ Attributes.d "M33.427 6.4l-2.666 2.667H0V6.4h33.427zm-5.333 5.333L25.427 14.4H5.867v-2.667h22.227zm-5.333 5.334l-2.667 2.666H2.134v-2.666H22.76zm-4.8 4.8l-2.667 2.666h-8.36v-2.666H17.96zM13.244 29.2l5.556 5.556-7.777 2.221 2.22-7.777zM47.717 5.854l-3.692 3.692-5.5-5.5L42.217.355l5.5 5.5zM14.935 27.558L36.933 5.561l5.5 5.5-21.998 21.997-5.5-5.5z"
]
[]
]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
guidedDraft : Nri.Ui.Svg.V1.Svg
guidedDraft =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 98 72"
, Attributes.fill "currentcolor"
]
[ Svg.path [ Attributes.d "M97.801,68.699 L97.80078,68.699 C98.10156,69.3006 98,69.9998 97.60156,70.4998 C97.30076,70.9998 96.70312,71.30058 96.10156,71.30058 L1.800561,71.30058 C1.199001,71.30058 0.601341,70.9998 0.300561,70.4998 C-0.0002189,69.8982 -0.1017789,69.30056 0.199001,68.699 L18.5,28.597 C18.8008,27.89384 19.49998,27.4954 20.1992,27.4954 L41.6992,27.4954 L44.3984,32.6946 C45.1992,34.4914 47,35.593 49,35.593 C50.9024,35.593 52.70316,34.4954 53.6016,32.6946 C53.8008,32.3938 54.9024,30.1946 56.3008,27.4954 L77.8008,27.4954 C78.60156,27.4954 79.19922,27.89778 79.5,28.597 L97.801,68.699 Z M24.60201,47.801 L25.80121,47.801 C26.90277,47.801 27.80121,46.9026 27.80121,45.801 C27.80121,44.69944 26.90281,43.801 25.80121,43.801 L24.60201,43.801 C23.50045,43.801 22.60201,44.6994 22.60201,45.801 C22.60201,46.90256 23.5004,47.801 24.60201,47.801 Z M33.8012,56.1018 L33.80124,56.10174 C34.10206,55.39864 33.69967,54.69943 33.00436,54.39474 C32.9028,54.39474 32.50436,54.19552 32.4028,54.19552 C31.0044,53.49632 29.7036,52.59792 28.7036,51.29712 C28.60594,51.29712 28.40672,50.89868 28.30516,50.79712 C27.90276,50.19556 27.10592,50.0979 26.50436,50.49634 C25.9028,50.89874 25.80514,51.69558 26.20358,52.29714 C26.30514,52.3987 26.70358,52.79714 26.70358,52.8987 C27.90278,54.5979 29.50438,55.79712 31.40278,56.5979 C31.50434,56.5979 32.102,56.89868 32.20356,56.89868 C32.30122,57.00024 32.50044,57.00024 32.602,57.00024 C33.10198,57.00024 33.60198,56.6018 33.8012,56.1018 Z M45.1022,55.80102 L45.10208,55.80104 C45.69974,55.50024 46.00052,54.69944 45.50052,54.19944 C45.19972,53.59788 44.40288,53.39866 43.80132,53.69944 C43.69976,53.801 43.19976,54.00022 43.19976,54.00022 C42.00056,54.60182 40.69976,54.9026 39.19976,55.10182 C39.00056,55.10182 37.90292,55.20338 37.80136,55.20338 C37.10216,55.20338 36.60216,55.80496 36.60216,56.50418 C36.60216,57.20338 37.20374,57.70338 37.90296,57.70338 C37.90296,57.70338 38.60218,57.60182 38.70374,57.60182 C39.00062,57.60182 39.3014,57.50026 39.60218,57.50026 C41.40298,57.30106 43.00458,56.89868 44.40298,56.19946 C44.40298,56.1018 45.00064,55.90258 45.1022,55.80102 Z M53.3014,46.19942 L53.30152,46.19942 C53.69995,45.60172 53.50073,44.80094 53.00464,44.59782 C52.40304,44.19938 51.60228,44.29704 51.20384,44.8986 C51.10618,45.00016 50.8054,45.3986 50.8054,45.50016 C50.40302,46.00016 50.00458,46.5978 49.7038,47.19936 C49.1022,48.10176 48.50456,49.10172 47.903,50.00016 C47.903,50.00016 47.60612,50.3986 47.50456,50.50016 C47.00456,51.10176 47.10222,51.90252 47.70378,52.30096 C48.00456,52.50018 48.20378,52.60174 48.50456,52.60174 C48.903,52.60174 49.20378,52.40252 49.50456,52.10174 C49.60612,52.00018 50.00456,51.60174 50.00456,51.50018 C50.70376,50.50018 51.3014,49.50018 51.90296,48.50018 C52.20374,47.90258 52.60218,47.30098 52.90296,46.80098 C53.00062,46.69942 53.19984,46.30098 53.3014,46.19942 Z M62.6022,41.60172 L62.60202,41.6018 C63.30125,41.6018 63.89891,41.00019 64.09422,40.5041 C64.09422,39.80486 63.49264,39.2033 62.79342,39.2033 L61.99264,39.2033 C61.19584,39.2033 60.39502,39.30096 59.59424,39.40252 C58.29744,39.60174 57.19584,39.90252 56.19584,40.40252 C56.19584,40.40252 55.59818,40.6994 55.49662,40.80096 C54.89506,41.10176 54.59818,41.8986 54.99662,42.50016 C55.19978,42.9025 55.69978,43.10172 56.09822,43.10172 C56.30134,43.10172 56.50056,43.00406 56.69978,42.9025 C56.69978,42.80094 57.19978,42.60172 57.19978,42.60172 C58.00058,42.19938 58.80138,41.9025 59.80138,41.80094 C60.50458,41.70328 61.20376,41.60172 61.90298,41.60172 L62.6022,41.60172 Z M67.3014,42.50016 L67.3014,42.50026 C67.39906,42.50026 67.8014,42.80104 67.8014,42.9026 C69.8014,43.9026 70.70376,45.30102 71.1022,46.1018 C71.1022,46.19946 71.30142,46.50024 71.30142,46.50024 C71.50062,47.00024 72.00062,47.30102 72.50062,47.30102 C72.59828,47.30102 72.7975,47.30102 72.89906,47.19946 C73.59828,46.99626 73.89906,46.29708 73.69984,45.59786 C73.69984,45.59786 73.39906,45.0002 73.39906,44.89864 C72.89906,43.89864 71.59826,41.99624 69.09826,40.59784 C69.09826,40.50018 68.5006,40.30096 68.39904,40.1994 C67.80144,39.90252 67.00062,40.1994 66.69984,40.80096 C66.40296,41.39856 66.69984,42.19938 67.3014,42.50016 Z M76.6998,56.00016 L76.69974,56.00016 C77.19974,55.39866 77.19974,54.60177 76.49662,54.09786 L74.79742,52.59786 L76.19582,50.89866 C76.59816,50.39866 76.4966,49.59786 75.9966,49.09786 C75.4966,48.69552 74.6958,48.79708 74.1958,49.29708 L72.895,50.89868 L71.4966,49.59788 C70.9966,49.09788 70.1958,49.19944 69.6958,49.69944 C69.1958,50.19944 69.29736,51.00024 69.79736,51.50024 L71.29736,52.89864 L69.89896,54.59784 C69.49662,55.09784 69.59818,55.89864 70.09818,56.39864 C70.2974,56.59786 70.59818,56.69942 70.89896,56.69942 C71.2974,56.69942 71.59818,56.5002 71.89896,56.19942 L73.19976,54.59782 L74.80136,56.09782 C75.09824,56.29704 75.39902,56.3986 75.6998,56.3986 C76.09824,56.3986 76.39902,56.30094 76.6998,56.00016 Z" ] []
, Svg.path [ Attributes.d "M47.602,31.199 L47.6023,31.1986 C47.6023,31.1986 42.2,20.6008 39.7,15.6946 C37.2,10.7966 39.2,4.3982 44.3016,1.7966 C49.3988,-0.801 55.598,1.2966 58.1996,6.3982 C59.6996,9.3982 59.6996,12.8006 58.1996,15.699 C56.6996,18.699 50.3012,31.199 50.3012,31.199 C49.8012,32.3006 48.20356,32.3006 47.602,31.199 Z M49.0004,5.601 C46.0004,5.601 43.602,8.101 43.602,10.9994 C43.602,13.9994 46.0004,16.3978 49.0004,16.3978 C52.0004,16.3978 54.3988,13.9994 54.3988,10.9994 C54.3988,7.9994 52.0004,5.601 49.0004,5.601 Z" ] []
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
selfReview : Nri.Ui.Svg.V1.Svg
selfReview =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 -7 64 84"
]
[ Svg.path [ Attributes.d "M62.16365,17.60935 C62.57365,17.60935 62.97265,17.76935 63.26565,18.06235 C63.55865,18.35535 63.72265,18.75035 63.72565,19.16435 C63.72565,38.98435 50.33265,55.21435 33.56165,56.16835 L33.56165,73.66435 L40.98365,73.66435 C41.84765,73.66435 42.54665,74.36335 42.54665,75.22635 C42.54665,76.08935 41.84765,76.78935 40.98365,76.78935 L22.82065,76.78935 C21.95665,76.78935 21.25765,76.08935 21.25765,75.22635 C21.25765,74.36335 21.95665,73.66435 22.82065,73.66435 L30.43765,73.66435 L30.43765,56.16835 C13.66465,55.21435 0.27365,38.98835 0.27365,19.16435 C0.27765,18.75035 0.44165,18.35535 0.73465,18.06235 C1.02765,17.76935 1.42565,17.60935 1.83565,17.60935 L8.17165,17.60935 L8.17165,20.73435 L3.42965,20.73435 C4.12065,38.70335 16.67165,53.10535 31.99965,53.10535 C47.32765,53.10535 59.87865,38.70335 60.56965,20.73435 L55.43665,20.73435 L55.43665,17.60935 L62.16365,17.60935 Z", Attributes.fill "currentcolor" ] []
, Svg.path [ Attributes.d "M31.99955,37.54295 C23.45655,37.54295 16.50755,29.24195 16.50755,19.03495 C16.50755,8.83195 23.45655,0.52695 31.99955,0.52695 C40.54255,0.52695 47.49155,8.83195 47.49155,19.03495 C47.49155,29.23795 40.54255,37.54295 31.99955,37.54295 Z M35.83955,15.34395 L35.83955,15.34795 C36.44855,14.73495 36.44855,13.74695 35.83955,13.13695 C35.22655,12.52795 34.23755,12.52795 33.62855,13.13695 L27.34755,19.41795 C26.73755,20.02795 26.73755,21.01595 27.34755,21.62595 C27.96055,22.23895 28.94855,22.23895 29.55855,21.62595 L35.83955,15.34395 Z M20.73755,12.80495 C20.12755,13.41795 20.12755,14.40695 20.73755,15.01595 C21.34655,15.62595 22.33855,15.62595 22.94855,15.01595 L29.22955,8.73895 C29.83855,8.12595 29.83855,7.13695 29.22955,6.52795 C28.61655,5.91795 27.62755,5.91795 27.01855,6.52795 L20.73755,12.80495 Z M21.83855,18.31295 L21.83855,18.31695 C21.22955,18.92595 21.22955,19.91495 21.83855,20.52395 C22.44855,21.13695 23.44055,21.13695 24.04955,20.52395 L34.73755,9.83995 C35.34755,9.23095 35.34755,8.23795 34.73755,7.62895 C34.12855,7.01995 33.13655,7.01995 32.52655,7.62895 L21.83855,18.31295 Z", Attributes.fill "currentcolor" ] []
, Svg.mask [ Attributes.fill "currentcolor" ] [ Svg.path [ Attributes.d "M31.99955,44.85935 C20.03055,44.85935 10.29255,33.27335 10.29255,19.03535 C10.29255,4.79735 20.03055,-6.78865 31.99955,-6.78865 C43.96855,-6.78865 53.70655,4.79735 53.70655,19.03535 C53.70655,33.27335 43.96855,44.85935 31.99955,44.85935 Z M31.99955,-2.59765 C21.73355,-2.59765 13.38255,7.10535 13.38255,19.03535 C13.38255,30.96435 21.73355,40.66835 31.99955,40.66835 C42.26555,40.66835 50.61655,30.96535 50.61655,19.03535 C50.61655,7.10535 42.26555,-2.59765 31.99955,-2.59765 Z" ] [] ]
, Svg.path [ Attributes.d "M31.99955,44.85935 C20.03055,44.85935 10.29255,33.27335 10.29255,19.03535 C10.29255,4.79735 20.03055,-6.78865 31.99955,-6.78865 C43.96855,-6.78865 53.70655,4.79735 53.70655,19.03535 C53.70655,33.27335 43.96855,44.85935 31.99955,44.85935 Z M31.99955,-2.59765 C21.73355,-2.59765 13.38255,7.10535 13.38255,19.03535 C13.38255,30.96435 21.73355,40.66835 31.99955,40.66835 C42.26555,40.66835 50.61655,30.96535 50.61655,19.03535 C50.61655,7.10535 42.26555,-2.59765 31.99955,-2.59765 Z", Attributes.fill "currentcolor" ] []
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
submitting : Nri.Ui.Svg.V1.Svg
submitting =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 25 25"
, Attributes.fill "currentcolor"
]
[ Svg.path
[ Attributes.fillOpacity ".5"
, Attributes.d "M0 1.875v1.406h22.5V1.875H0zm0 3.867v1.406h24.32V5.742H0zM0 9.61v1.407h15.117V9.609H0zm0 5.625v1.407h24.32v-1.407H0zm0 3.868v1.406h23.125v-1.406H0zm0 3.867v1.406h13.75v-1.406H0z"
]
[]
, Svg.path
[ Attributes.fill "#FFF"
, Attributes.d "M13.15 23.552l.867-5.111 6.325-12.527 1.15-.069.71-1.69 1.909.877-.702 1.715.338.924-6.827 12.878-3.178 3.069z"
]
[]
, Svg.path
[ Attributes.d "M24.32 5.78a.906.906 0 0 0-.405-1.249l-1.181-.602c-.237-.12-.444-.151-.711-.064-.268.087-.417.234-.538.47l-.481.945c-.178.058-.297-.002-.475.056-.267.087-.417.234-.537.47l-.662 1.3-.945-.482a.453.453 0 0 0-.624.203l-3.01 5.906a.453.453 0 0 0 .203.624c.058.179.236.12.325.092.09-.03.268-.087.328-.205l2.74-5.523.472.24-5.477 10.75c-.06.118-.031.208-.091.326l-.625 4.146c-.062.414.143.742.526 1.012.236.12.444.151.711.064.178-.058.268-.087.328-.205l2.987-2.942c.089-.029.15-.147.21-.265l6.62-12.995a.997.997 0 0 0-.169-1.127l.482-.945zm-2.008-1.024l1.182.602-.482.945-1.181-.602.481-.945zm-8.739 18.612l.591-3.642 2.127 1.083-2.718 2.559zm3.228-3.415L14.44 18.75l4.695-9.214 2.362 1.204-4.695 9.214zm5.116-10.041l-2.362-1.204 1.264-2.48 2.363 1.203-1.265 2.48z"
]
[]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
rating : Nri.Ui.Svg.V1.Svg
rating =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 25 25"
, Attributes.fill "currentcolor"
]
[ Svg.path
[ Attributes.fillRule "evenodd"
, Attributes.d "M4.961 19.785h-1.59C1.526 19.785 0 18.258 0 16.415V6.079c0-1.845 1.527-3.371 3.371-3.371H13.77c.318 0 .573.255.573.573a.571.571 0 0 1-.573.573H3.37c-1.21 0-2.195.986-2.195 2.195v10.336c0 1.21.986 2.195 2.195 2.195h2.194c.318 0 .574.255.574.573v3.56l4.165-4.006a.604.604 0 0 1 .415-.159h9.603c.891 0 1.718-.573 2.067-1.4a.586.586 0 0 1 .764-.318.586.586 0 0 1 .318.764 3.425 3.425 0 0 1-3.149 2.13h-9.35l-4.992 4.77a.604.604 0 0 1-.415.16c-.062 0-.159 0-.221-.032-.257-.035-.383-.257-.383-.48v-4.357zm20.036-11.99v.159l-.923 5.724c-.19 1.463-1.24 2.323-2.8 2.323h-6.806a2.36 2.36 0 0 1-1.652-.668c-.19.16-.446.255-.733.255H9.857a1.14 1.14 0 0 1-1.144-1.144V7.319a1.14 1.14 0 0 1 1.144-1.144h2.226c.35 0 .636.159.858.381h.032c.096-.032 2.513-.732 2.513-2.766V1.024c0-.255.159-.477.413-.54.064-.032 1.463-.446 2.482.318.636.477.985 1.272.985 2.385v2.29h3.212c1.368-.067 2.419.983 2.419 2.318zm-12.88-.509H9.922v7.124h2.195V7.286zm11.733.509c0-.7-.54-1.24-1.24-1.24h-3.785a.572.572 0 0 1-.573-.574V3.12c0-.699-.16-1.209-.509-1.431-.318-.222-.732-.255-1.017-.222v2.289c0 2.925-3.212 3.848-3.339 3.88h-.032v5.946c0 .667.54 1.24 1.241 1.24h6.806c1.494 0 1.622-.985 1.653-1.303v-.032l.795-5.691z"
]
[]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
revising : Nri.Ui.Svg.V1.Svg
revising =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 25 25"
, Attributes.fill "currentcolor"
]
[ Svg.path
[ Attributes.d "M23.056 12.001h.58C23.637 5.893 18.64.926 12.5.926a11.169 11.169 0 0 0-10.214 6.66L0 7.128 1.652 12 5.07 8.142l-2.206-.44C4.93 3.184 9.831.71 14.668 1.74c4.837 1.03 8.32 5.291 8.388 10.261zM12.5 23.49a10.593 10.593 0 0 0 9.637-6.215l-2.206-.441 3.417-3.858L25 17.845l-2.286-.457a11.169 11.169 0 0 1-10.214 6.66c-6.14 0-11.137-4.968-11.137-11.073h.581c.03 5.833 4.754 10.537 10.556 10.514z"
]
[]
, Svg.path
[ Attributes.fillOpacity ".5"
, Attributes.d "M5.833 13.348v1.068h13.555v-1.068H5.833zm0 2.938v1.068h12.652v-1.068H5.833zm0 2.938v1.068H11.4v-1.068H5.833z"
]
[]
, Svg.path
[ Attributes.fill "#FFF"
, Attributes.d "M10.958 19.656l.648-3.88 4.769-9.505.87-.051.533-1.282 1.445.668-.529 1.301.257.702-5.147 9.77-2.4 2.328z"
]
[]
, Svg.path
[ Attributes.d "M19.382 6.173a.691.691 0 0 0-.308-.948l-.894-.458a.642.642 0 0 0-.537-.05.642.642 0 0 0-.406.356l-.363.717c-.135.044-.224-.002-.359.042a.642.642 0 0 0-.406.356l-.499.986-.715-.366a.341.341 0 0 0-.472.153l-2.268 4.482a.346.346 0 0 0 .154.474c.044.135.179.091.246.07.067-.022.202-.066.248-.156l2.065-4.19.357.183-4.129 8.156c-.045.09-.023.158-.068.247l-.468 3.148c-.046.315.11.564.4.769a.642.642 0 0 0 .537.05c.135-.044.202-.066.247-.156L14 17.808c.067-.022.112-.112.158-.201l4.99-9.86a.76.76 0 0 0-.129-.856l.363-.718zm-1.52-.779l.895.459-.363.717-.894-.459.363-.717zm-6.585 14.122l.442-2.765 1.61.826-2.052 1.94zm2.436-2.589l-1.787-.917 3.539-6.99 1.788.916-3.54 6.991zM17.57 9.31l-1.788-.917.953-1.883 1.788.917-.953 1.883z"
]
[]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
startPrimary : Nri.Ui.Svg.V1.Svg
startPrimary =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 50 50"
]
[ Svg.path [ Attributes.fill "currentcolor", Attributes.d "M0,24.9999988 C0,38.8087481 11.19375,50 25,50 C38.80875,50 50,38.8087481 50,24.9999988 C50,11.1937494 38.80625,0 25,0 C11.19375,0 0,11.1937494 0,24.9999988 Z" ] []
, Svg.path [ Attributes.fill "#fff", Attributes.d "M21.0869565,33.8146977 C20.6577447,34.0617674 20.1248751,34.0617674 19.6956522,33.8146977 C19.2664403,33.5683165 19,33.1074898 19,32.61405 L19,17.38595 C19,16.889723 19.2664403,16.4316724 19.6956522,16.1853023 C20.1248751,15.9382326 20.6577447,15.9382326 21.0869565,16.1853023 L34.3043478,23.8007347 C34.7335708,24.0478044 35,24.5051666 35,25.002082 C35,25.4955219 34.7363534,25.9535725 34.3043478,26.1999537 L21.0869565,33.8146977 Z" ] []
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
startSecondary : Nri.Ui.Svg.V1.Svg
startSecondary =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 60 50 51"
, Attributes.fill "#fff"
]
[ Svg.g [ Attributes.transform "translate(0.000000, 60.000000)" ]
[ Svg.path
[ Attributes.d "M0,25.3650791 C0,39.1738284 11.19375,50.3650803 25,50.3650803 C38.80875,50.3650803 50,39.1738284 50,25.3650791 C50,11.5588298 38.80625,0.365080324 25,0.365080324 C11.19375,0.365080324 0,11.5588298 0,25.3650791 Z"
]
[]
, Svg.path
[ Attributes.stroke "currentcolor"
, Attributes.strokeWidth "3"
, Attributes.d "M1.5,25.3650791 C1.5,38.3445152 12.021291,48.8650803 25,48.8650803 C37.9803224,48.8650803 48.5,38.3454018 48.5,25.3650791 C48.5,12.3872569 37.9778229,1.86508032 25,1.86508032 C12.0221771,1.86508032 1.5,12.3872569 1.5,25.3650791 Z"
]
[]
, Svg.path
[ Attributes.fill "currentcolor"
, Attributes.d "M20.946522,34.4104003 C20.5071165,34.6639342 19.9615913,34.6639342 19.5221743,34.4104003 C19.0827687,34.1575729 18.8100004,33.6846894 18.8100004,33.1783395 L18.8100004,17.5518211 C18.8100004,17.0426111 19.0827687,16.5725764 19.5221743,16.3197604 C19.9615913,16.0662265 20.5071165,16.0662265 20.946522,16.3197604 L34.4778257,24.1344382 C34.9172427,24.3879721 35.1899996,24.8573004 35.1899996,25.3672168 C35.1899996,25.8735667 34.9200914,26.3436015 34.4778257,26.5964289 L20.946522,34.4104003 Z"
]
[]
]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
assessment : Nri.Ui.Svg.V1.Svg
assessment =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 70 70"
, Attributes.fill "currentcolor"
]
[ Svg.g
[ Attributes.fillRule "evenodd"
]
[ Svg.path [ Attributes.d "M35,69.3211972 C54.33,69.3211972 70,53.8719014 70,34.8141549 C70,15.7564085 54.33,0.307112676 35,0.307112676 C15.67,0.307112676 0,15.7564085 0,34.8141549 C0,53.8719014 15.67,69.3211972 35,69.3211972", Attributes.fill "currentcolor" ] []
, Svg.path [ Attributes.d "M21.2420883,54.5992195 C23.8522257,54.5992195 25.9681602,52.483285 25.9681602,49.8731476 L25.9681602,43.8936083 C25.9681602,41.2834709 23.8522257,39.1675364 21.2420883,39.1675364 C18.6319509,39.1675364 16.5160164,41.2834709 16.5160164,43.8936083 L16.5160164,49.8731476 C16.5160164,52.483285 18.6319509,54.5992195 21.2420883,54.5992195 Z", Attributes.fill "#FFFFFF" ] []
, Svg.path [ Attributes.d "M33.0968983,54.5992195 C35.6645087,54.5992195 37.7459682,52.51776 37.7459682,49.9501496 L37.7459682,34.344137 C37.7459682,31.7765266 35.6645087,29.695067 33.0968983,29.695067 C30.5292879,29.695067 28.4478284,31.7765266 28.4478284,34.344137 L28.4478284,49.9501496 C28.4478284,52.51776 30.5292879,54.5992195 33.0968983,54.5992195 Z", Attributes.fill "#FFFFFF" ] []
, Svg.path [ Attributes.d "M49.6798336,22.361242 L49.6798336,49.872327 C49.6798336,52.4829181 47.5635314,54.5992203 44.9529404,54.5992203 C42.3423493,54.5992203 40.2260471,52.4829181 40.2260471,49.872327 L40.2260471,22.361242 L40.2260471,22.361242 L36.2823138,22.361242 L45.0305583,13.1240141 L53.6231562,22.361242 L49.6798336,22.361242 Z", Attributes.fill "#FFFFFF" ] []
]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
practice2 : Nri.Ui.Svg.V1.Svg
practice2 =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 71 70"
, Attributes.fill "currentcolor"
]
[ Svg.g
[ Attributes.fillRule "evenodd" ]
[ Svg.path [ Attributes.d "M70,35 C70,15.67 54.33,0 35,0 C15.67,0 0,15.67 0,35 C0,54.33 15.67,70 35,70 C54.33,70 70,54.33 70,35 Z", Attributes.fill "currentcolor" ] []
, Svg.path [ Attributes.d "M56.9478,17.876 C56.8298,17.527 56.5288,17.271 56.1598,17.22 L52.5988,16.712 L52.0918,13.151 C52.0368,12.785 51.7828,12.48 51.4348,12.362 C51.0868,12.244 50.6978,12.335 50.4378,12.6 L46.4298,16.607 C43.1488,14.518 39.3778,13.4 35.4578,13.4 C24.1788,13.4 15.0028,22.577 15.0028,33.856 C15.0028,37.719 16.1048,41.483 18.1928,44.773 L15.0668,52.992 C14.9318,53.352 15.0168,53.757 15.2908,54.027 C15.4768,54.214 15.7268,54.312 15.9808,54.312 C16.0988,54.312 16.2138,54.291 16.3248,54.247 L24.5438,51.122 C27.8308,53.208 31.5948,54.312 35.4618,54.312 C46.7408,54.312 55.9168,45.136 55.9168,33.856 C55.9168,29.933 54.8008,26.161 52.7108,22.881 L56.7188,18.873 C56.9718,18.612 57.0628,18.228 56.9478,17.876 L56.9478,17.876 Z M50.4378,15.353 L50.7048,17.226 L47.8158,20.114 L47.5498,18.237 L50.4378,15.353 Z M41.0218,23.213 L41.4848,26.445 L39.9968,27.934 C38.7388,26.967 37.1658,26.382 35.4578,26.382 C31.3418,26.382 27.9898,29.733 27.9898,33.85 C27.9898,37.966 31.3418,41.317 35.4578,41.317 C39.5738,41.317 42.9258,37.966 42.9258,33.85 C42.9258,32.142 42.3438,30.568 41.3738,29.311 L42.8618,27.822 L46.0978,28.282 C46.9938,29.994 47.4708,31.904 47.4708,33.85 C47.4708,40.475 42.0838,45.862 35.4578,45.862 C28.8328,45.862 23.4448,40.475 23.4448,33.85 C23.4448,27.224 28.8358,21.836 35.4578,21.836 C37.3988,21.843 39.3138,22.32 41.0218,23.213 L41.0218,23.213 Z M40.9748,33.856 C40.9748,36.9 38.4988,39.376 35.4548,39.376 C32.4098,39.376 29.9348,36.9 29.9348,33.856 C29.9348,30.812 32.4098,28.337 35.4548,28.337 C36.6258,28.337 37.7108,28.705 38.6038,29.327 L35.1748,32.757 C34.6828,32.882 34.3188,33.325 34.3188,33.853 C34.3188,34.479 34.8258,34.989 35.4548,34.989 C35.9858,34.989 36.4288,34.624 36.5538,34.13 L39.9838,30.7 C40.6058,31.6 40.9748,32.686 40.9748,33.856 L40.9748,33.856 Z M46.0948,21.839 L43.2068,24.728 L42.9398,22.851 L45.8278,19.962 L46.0948,21.839 Z M46.4598,26.371 L44.5868,26.105 L47.4748,23.216 L49.3488,23.482 L46.4598,26.371 Z M35.4578,52.363 C31.8118,52.363 28.2638,51.277 25.1998,49.225 C24.9368,49.049 24.6078,49.012 24.3098,49.123 L17.6538,51.653 L20.1838,45 C20.2958,44.706 20.2588,44.374 20.0828,44.111 C18.0298,41.044 16.9438,37.499 16.9438,33.853 C16.9438,23.648 25.2468,15.346 35.4508,15.346 C38.8538,15.346 42.1348,16.269 45.0128,18.015 L41.6718,21.355 C39.7468,20.398 37.6158,19.892 35.4508,19.892 C27.7538,19.892 21.4898,26.154 21.4898,33.853 C21.4898,41.551 27.7538,47.814 35.4508,47.814 C43.1488,47.814 49.4128,41.551 49.4128,33.853 C49.4128,31.688 48.9058,29.554 47.9478,27.63 L51.2898,24.288 C53.0348,27.169 53.9578044,30.45 53.9578044,33.853 C53.9648,44.06 45.6618,52.363 35.4578,52.363 L35.4578,52.363 Z M51.0698,21.762 L49.1958,21.495 L52.0848,18.606 L53.9578,18.873 L51.0698,21.762 Z", Attributes.fill "#FFFFFF" ] []
]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
standards : Nri.Ui.Svg.V1.Svg
standards =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 70 70"
, Attributes.fill "currentcolor"
]
[ Svg.g
[ Attributes.fillRule "evenodd" ]
[ Svg.circle [ Attributes.fill "#FFFFFF", Attributes.cx "35", Attributes.cy "35", Attributes.r "27" ] []
, Svg.path [ Attributes.d "M35,0 C25.7166,0 16.814,3.68865 10.2515,10.2515 C3.689,16.81435 0,25.7173 0,35 C0,44.2827 3.68865,53.186 10.2515,59.7485 C16.81435,66.311 25.7173,70 35,70 C44.2827,70 53.186,66.31135 59.7485,59.7485 C66.311,53.18565 70,44.2827 70,35 C70,25.7173 66.31135,16.8161 59.7485,10.2515 C53.186,3.689 44.2827,0 35,0 Z M16.47751,48.90186 C15.922431,47.56472 16.228681,46.02255 17.25136,44.99992 C18.27672,43.97456 19.81623,43.66831 21.1533,44.22334 C22.49317,44.778419 23.36544,46.08268 23.36544,47.53196 C23.36544,48.48081 22.988098,49.3913 22.31544,50.064 C21.645519,50.733921 20.73498,51.11127 19.7834,51.11127 C18.33692,51.11127 17.02988,50.23893 16.47751,48.90186 Z M16.47751,36.37046 C15.922431,35.03332 16.228681,33.49388 17.25136,32.46852 C18.27672,31.44589 19.81623,31.13964 21.1533,31.69194 C22.49317,32.247019 23.36544,33.55128 23.36544,35.00056 C23.36544,35.94941 22.988098,36.8599 22.31544,37.5326 C21.645519,38.202521 20.73498,38.57987 19.7834,38.57987 C18.33692,38.57987 17.02988,37.70753 16.47751,36.37046 Z M16.47751,23.83899 C15.922431,22.50185 16.228681,20.96241 17.25136,19.93705 C18.27672,18.91442 19.81623,18.60817 21.1533,19.1632 C22.49317,19.715542 23.36544,21.02254 23.36544,22.46909 C23.36544,23.42067 22.988098,24.33123 22.31544,25.00113 C21.645519,25.673788 20.73498,26.05113 19.7834,26.05113 C18.33692,26.05113 17.02988,25.17886 16.47751,23.83899 Z M30.5242,51.11183 C28.54999,51.1091 26.94762,49.50673 26.94762,47.53252 C26.94762,45.55558 28.54999,43.95321 30.5242,43.95048 L50.2173,43.95048 C51.16615,43.95048 52.07944,44.327822 52.75207,44.99775 C53.421991,45.670408 53.80207,46.58094 53.80207,47.53252 C53.80207,48.48137 53.421991,49.39466 52.75207,50.06456 C52.079412,50.737218 51.16615,51.11183 50.2173,51.11183 L30.5242,51.11183 Z M50.2145,38.5777 L30.5242,38.58043 C28.54726,38.58043 26.94489,36.97806 26.94489,35.00112 C26.94489,33.02418 28.54726,31.42181 30.5242,31.42181 L50.2173,31.42181 C52.19424,31.42181 53.79661,33.02418 53.79661,35.00112 C53.79661,36.97806 52.19424,38.58043 50.2173,38.58043 L50.2145,38.5777 Z M50.2145,26.0463 L30.5242,26.051767 C28.54999,26.04903 26.94762,24.446667 26.94762,22.469727 C26.94762,20.495517 28.54999,18.893147 30.5242,18.890417 L50.2173,18.890417 C51.16615,18.890417 52.07944,19.265029 52.75207,19.937687 C53.421991,20.607608 53.80207,21.520877 53.80207,22.469727 C53.80207,23.421307 53.421991,24.331867 52.75207,25.004497 C52.079412,25.674418 51.16615,26.051767 50.2173,26.051767 L50.2145,26.0463 Z", Attributes.fill "currentcolor" ] []
]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
writing : Nri.Ui.Svg.V1.Svg
writing =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 70 70"
, Attributes.fill "currentcolor"
]
[ Svg.g
[ Attributes.fillRule "evenodd" ]
[ Svg.path [ Attributes.d "M35,69.3211972 C54.33,69.3211972 70,53.8719014 70,34.8141549 C70,15.7564085 54.33,0.307112676 35,0.307112676 C15.67,0.307112676 0,15.7564085 0,34.8141549 C0,53.8719014 15.67,69.3211972 35,69.3211972", Attributes.fill "currentcolor" ] []
, Svg.g [ Attributes.transform "translate(16.500000, 17.877535)", Attributes.fill "#FFFFFF" ]
[ Svg.path [ Attributes.d "M2.08125,0.183695707 L6.031,0.190211268 C7.08814286,0.20193662 7.95103571,1.06700704 7.94839891,2.11577465 L7.94839891,2.11577465 L7.90214286,26.4536972 C7.90214286,26.839331 7.80303571,27.2171479 7.61803571,27.5532746 L7.61803571,27.5532746 L4.54703571,33.0120775 C4.43207143,33.2114085 4.21932143,33.3390845 3.98807143,33.3455986 C3.75153571,33.3416901 3.53482143,33.2127113 3.42117857,33.0094718 L3.42117857,33.0094718 L0.367357143,27.536338 C0.183678571,27.2015141 0.0872142857,26.8223944 0.0898042575,26.440669 L0.0898042575,26.440669 L0.137428571,2.10014085 C0.137428571,1.04355634 1.00957143,0.182394366 2.08125,0.183695707 L2.08125,0.183695707 Z M2.38385714,2.24084507 C2.33760714,2.24084507 2.29003571,2.24605634 2.257,2.25257042 C1.92796429,2.32552817 1.69275,2.61605634 1.69671429,2.9521831 L1.71125,26.4849648 C1.71125,26.6295775 1.76146429,26.7728873 1.85,26.8862324 L1.88435714,26.9292254 L3.26525,29.4176056 L4.78092857,29.4176056 L6.26357143,26.7715845 C6.31775,26.6764789 6.34682143,26.5605282 6.34682143,26.4458803 L6.34682143,25.9729577 C5.65042857,26.1358099 4.93685714,26.2178873 4.22328571,26.2178873 L4.08717857,26.2165845 C3.96164286,26.2165845 3.84667857,26.2126761 3.76210714,26.2087676 L3.05778571,26.2074648 L3.05778571,2.91179577 C3.06042857,2.73330986 2.99039286,2.5665493 2.86221429,2.44017606 C2.73007143,2.30989437 2.56489286,2.24084507 2.38385714,2.24084507 Z" ] []
, Svg.path [ Attributes.d "M12.35615,31.837588 C11.57915,31.837588 10.9461857,31.2122359 10.9461857,30.4435739 C10.9461857,29.6788204 11.5765071,29.0534683 12.3521857,29.0534683 L20.8740786,29.0534683 C21.9140429,29.0534683 22.2840429,29.8038908 22.2840429,30.4461796 C22.2840429,31.0884683 21.9140429,31.837588 20.8740786,31.837588 L12.35615,31.837588 Z" ] []
, Svg.path [ Attributes.d "M12.35615,23.2128099 C11.5804714,23.2128099 10.9475071,22.5887606 10.9461857,21.8187958 C10.9461857,21.0540423 11.5765071,20.429993 12.3521857,20.429993 L35.5155071,20.429993 C36.5554714,20.429993 36.9254714,21.1791127 36.9254714,21.8214014 C36.9254714,22.4636901 36.5554714,23.2128099 35.5155071,23.2128099 L12.35615,23.2128099 Z" ] []
, Svg.path [ Attributes.d "M12.35615,14.2444789 C11.5804714,14.2444789 10.9475071,13.6204296 10.9461857,12.8504648 C10.9461857,12.0857113 11.5765071,11.461662 12.3521857,11.461662 L35.5155071,11.461662 C36.5554714,11.461662 36.9254714,12.2107817 36.9254714,12.8530704 C36.9254714,13.4953592 36.5554714,14.2444789 35.5155071,14.2444789 L12.35615,14.2444789 Z" ] []
, Svg.path [ Attributes.d "M12.35615,5.62347887 C11.6227571,5.62347887 11.0188643,5.06717606 10.9527929,4.35974648 L10.9527929,4.23207042 C10.9527929,3.46471127 11.5831143,2.83935915 12.3587929,2.83935915 L35.5155071,2.83935915 C36.5554714,2.83935915 36.9254714,3.58978169 36.9254714,4.23207042 C36.9254714,4.87435915 36.5554714,5.62347887 35.5155071,5.62347887 L12.35615,5.62347887 Z" ] []
]
]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
assignArrow : Nri.Ui.Svg.V1.Svg
assignArrow =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 30 30"
, Attributes.fill "currentcolor"
]
[ Svg.g
[ Attributes.fillRule "evenodd" ]
[ Svg.path [ Attributes.d "M15.0153,0 L30,15 L15.0153,30.0003 L9.6972,24.6822 L9.749948,24.629449 L9.89998116,24.4794159 C10.618401,23.7609967 13.1327192,21.2466827 15.6153,18.7641 L0,18.7641 L0,11.2431 L15.6153,11.2431 L9.6972,5.3181 L15.0153,0 Z" ] []
]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
home : Nri.Ui.Svg.V1.Svg
home =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 20 18"
, Attributes.fill "currentcolor"
]
[ Svg.g
[ Attributes.fillRule "evenodd" ]
[ Svg.path [ Attributes.d "M10.5916711,0.1316206 L10.67853,0.20566 L19.77453,9.411066 C20.1884706,9.82499711 19.9187834,10.5322989 19.3794595,10.6096104 L19.28157,10.616526 L17.30891,10.616526 L17.30891,17.082125 C17.30891,17.4337583 17.0325426,17.7394285 16.6910117,17.7879316 L16.59641,17.794625 L11.93943,17.794625 L11.93943,11.767226 L7.994034,11.767226 L7.994034,17.739825 C7.9524255,17.780925 7.8805005,17.7912 7.82406703,17.7937688 L7.774494,17.794625 L3.007294,17.794625 C2.65566067,17.794625 2.34999053,17.5181635 2.3014874,17.1766169 L2.294794,17.082013 L2.294794,10.616414 L0.7059516,10.616526 C0.0854307467,10.616526 -0.193638248,9.88344717 0.146485604,9.47884123 L0.2129916,9.411066 L9.69259,0.20566 C9.938686,-0.041138 10.3183024,-0.0658178 10.5916711,0.1316206 Z" ] []
]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
passageQuiz : Nri.Ui.Svg.V1.Svg
passageQuiz =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 71 70"
, Attributes.fill "currentcolor"
]
[ Svg.g [ Attributes.fillRule "evenodd" ]
[ Svg.path [ Attributes.d "M35,70 C54.33,70 70,54.33 70,35 C70,15.67 54.33,0 35,0 C15.67,0 0,15.67 0,35 C0,54.33 15.67,70 35,70", Attributes.fill "currentcolor" ] []
, Svg.path [ Attributes.d "M45.5,20.1885 L45.5,47.1885 C45.5,48.8135 46.875,50.1885 48.5,50.1885 L22.375,50.1885 C20.75,50.1885 19.375,48.8135 19.375,47.1885 L19.375,20.1885 L45.5,20.1885 Z M41.375,24.4385 L32.875,24.4385 L32.875,30.4385 L41.375,30.4385 L41.375,24.4385 Z M29.5,24.4385 L23.625,24.4385 C23.125,24.4385 22.75,24.8135 22.75,25.3135 C22.75,25.8135 23.125,26.1885 23.625,26.1885 L29.5,26.1885 C30,26.1885 30.375,25.8135 30.375,25.3135 C30.375,24.8135 30,24.4385 29.5,24.4385 L29.5,24.4385 Z M50.625,30.4385 L50.625,47.1885 C50.625,48.4385 49.75,49.3135 48.5,49.3135 C47.375,49.3135 46.375,48.3135 46.375,47.1885 L46.375,30.4385 L50.625,30.4385 Z M29.5,28.8135 L23.625,28.8135 C23.125,28.8135 22.75,29.1885 22.75,29.5635 C22.75,30.0635 23.125,30.4385 23.625,30.4385 L29.5,30.4385 C30,30.4385 30.375,30.0635 30.375,29.5635 C30.375,29.1885 30,28.8135 29.5,28.8135 L29.5,28.8135 Z M41.375,33.9385 L23.625,33.9385 C23.125,33.9385 22.75,34.3135 22.75,34.8135 C22.75,35.3135 23.125,35.6885 23.625,35.6885 L41.375,35.6885 C41.875,35.6885 42.25,35.3135 42.25,34.8135 C42.125,34.3135 41.75,33.9385 41.375,33.9385 L41.375,33.9385 Z M41.375,38.5635 L23.625,38.5635 C23.125,38.5635 22.75,38.9385 22.75,39.4385 C22.75,39.9385 23.125,40.3135 23.625,40.3135 L41.375,40.3135 C41.875,40.3135 42.25,39.9385 42.25,39.4385 C42.125,38.9385 41.75,38.5635 41.375,38.5635 L41.375,38.5635 Z M41.375,43.3135 L23.625,43.3135 C23.125,43.3135 22.75,43.6885 22.75,44.1885 C22.75,44.6885 23.125,45.0635 23.625,45.0635 L41.375,45.0635 C41.875,45.0635 42.25,44.6885 42.25,44.1885 C42.125,43.6885 41.75,43.3135 41.375,43.3135 L41.375,43.3135 Z", Attributes.fill "#FFFFFF", Attributes.fillRule "nonzero" ] []
]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
planningDiagnostic : Nri.Ui.Svg.V1.Svg
planningDiagnostic =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 70 71"
, Attributes.fill "currentcolor"
]
[ Svg.g [ Attributes.fillRule "evenodd" ]
[ Svg.path [ Attributes.d "M35,70.3115 C54.33,70.3115 70,54.6415 70,35.3115 C70,15.9815 54.33,0.3115 35,0.3115 C15.67,0.3115 0,15.9815 0,35.3115 C0,54.6415 15.67,70.3115 35,70.3115", Attributes.fill "currentcolor" ] []
, Svg.g [ Attributes.transform "translate(15.000000, 14.811500)", Attributes.fill "#FFFFFF" ]
[ Svg.path [ Attributes.d "M7.65053084,20.1507422 C7.68983075,20.1540161 7.72749159,20.1622031 7.76515662,20.1736682 C7.80281746,20.1851291 7.83884342,20.1982291 7.87323032,20.2178811 C7.90598234,20.234255 7.93381715,20.2555419 7.96329104,20.2784679 C7.99604306,20.3046679 8.02551694,20.3325069 8.05171688,20.3652547 C8.06317778,20.3799896 8.07955588,20.3881765 8.09101678,20.4029155 C8.10247769,20.4192895 8.10411675,20.4373024 8.11230371,20.4553154 C8.13195576,20.4913414 8.14669061,20.5273674 8.1581557,20.5666631 C8.1696166,20.605963 8.17780775,20.6436238 8.18271657,20.6845628 C8.18271657,20.7025758 8.19254259,20.7189497 8.19254259,20.7386017 C8.19254259,20.7582538 8.18271657,20.7746277 8.18108169,20.7926407 C8.17780775,20.8335797 8.1696166,20.8728796 8.15651663,20.9121795 C8.14505573,20.9482054 8.13195576,20.9825923 8.11558185,21.0153402 C8.09756887,21.0480922 8.07791682,21.0775661 8.05335594,21.1070399 C8.02715601,21.139792 7.999317,21.1676268 7.96820405,21.1938267 C7.95346501,21.2052876 7.94527805,21.2216657 7.92890414,21.2331266 C6.96768079,21.8848553 6.3945519,22.9623226 6.3945519,24.1183896 C6.3945519,26.0407944 7.95837383,27.6062512 9.88241348,27.6062512 C11.8048183,27.6062512 13.3702751,26.0424293 13.3702751,24.1183896 C13.3702751,22.9623226 12.7971462,21.8832205 11.8359228,21.2331266 C11.8195489,21.2216657 11.8113578,21.2052876 11.7966229,21.1938267 C11.7638709,21.1676268 11.7376751,21.1397878 11.7114752,21.1070399 C11.6869101,21.0775661 11.6672623,21.0480922 11.6492493,21.0153402 C11.6312363,20.9825923 11.6181364,20.9482012 11.6083103,20.9121795 C11.5968494,20.8728796 11.5886625,20.8335797 11.5837495,20.7926407 C11.5804755,20.7746277 11.5706495,20.7582538 11.5706495,20.7386017 C11.5706495,20.7189497 11.5804755,20.7025758 11.5821104,20.6829279 C11.5853885,20.6419889 11.5935755,20.6043281 11.6066755,20.5650282 C11.6181364,20.5257283 11.6328754,20.4897023 11.6525274,20.4536764 C11.6623493,20.4373024 11.6639883,20.4176504 11.6738144,20.4012765 C11.6852753,20.3849026 11.7016492,20.3767156 11.7131143,20.3636156 C11.7393142,20.3308636 11.7687881,20.3030288 11.8015401,20.2768289 C11.831014,20.2539029 11.858853,20.234255 11.8916008,20.216242 C11.9259877,20.1982291 11.9620137,20.1851291 11.9996745,20.1720291 C12.0373354,20.160564 12.0750004,20.1523771 12.1143003,20.1491031 C12.1323133,20.1491031 12.1503221,20.1392771 12.1699741,20.1392771 L19.2867158,20.1392771 L19.2867158,14.4930855 C18.4909084,15.08424 17.5215107,15.4182578 16.5046177,15.4182578 C13.9206331,15.4182578 11.8196495,13.3157232 11.8196495,10.7332895 C11.8196495,8.14930489 13.9221841,6.04832133 16.5046177,6.04832133 C17.5231456,6.04832133 18.4909084,6.38400752 19.2867158,6.97349356 L19.2867158,0.975174826 L1.28588876,0.975174826 C0.645646096,0.975174826 0.123282201,1.49753872 0.123282201,2.13778138 L0.123282201,20.1386106 L7.59340659,20.1386106 C7.61305864,20.1386106 7.63107162,20.1484324 7.65071948,20.1500715 L7.65053084,20.1507422 Z" ] []
, Svg.path [ Attributes.d "M38.4863913,0.975531145 L20.4855663,0.975531145 L20.4855663,8.44398084 C20.4855663,8.46362869 20.4757403,8.4800068 20.4741054,8.49801978 C20.4708273,8.53895876 20.4626404,8.57825866 20.4495404,8.61755857 C20.4380795,8.65358454 20.4249795,8.68797143 20.4086056,8.72071926 C20.3905926,8.75346709 20.3709406,8.78294516 20.3463797,8.81241904 C20.3201798,8.84516687 20.2923408,8.87300588 20.261232,8.89920582 C20.246493,8.91066672 20.238306,8.92704482 20.2219321,8.93850572 C20.205554,8.94996662 20.1875452,8.95160569 20.1695322,8.95979265 C20.1335062,8.9794447 20.0991194,8.99417955 20.0598194,9.00564464 C20.0205195,9.01710554 19.9812196,9.02529669 19.9402807,9.03020551 C19.9222677,9.03511852 19.9058938,9.04494455 19.8862417,9.04494455 C19.8665897,9.04494455 19.8518548,9.03511852 19.8322028,9.03348364 C19.7912638,9.03020551 19.7519639,9.02201855 19.712664,9.00891858 C19.676638,8.99745768 19.6422511,8.98435771 19.6095033,8.9679838 C19.5767513,8.94997082 19.5472774,8.92868389 19.5161644,8.9057579 C19.4834124,8.87955796 19.4555776,8.85171895 19.4293777,8.820606 C19.4179126,8.80586696 19.4015387,8.79768001 19.3900778,8.78130609 C18.738349,7.82008275 17.6608818,7.24695385 16.5048148,7.24695385 C14.58241,7.24695385 13.0169532,8.81077578 13.0169532,10.7348154 C13.0169532,12.6572202 14.5807751,14.222677 16.5048148,14.222677 C17.6608818,14.222677 18.7399839,13.6495481 19.3900778,12.6883248 C19.4015387,12.6719467 19.4179126,12.6637597 19.4293777,12.6506597 C19.4555776,12.6179119 19.4850515,12.5900729 19.5161644,12.565512 C19.5456383,12.5409512 19.5751122,12.5212991 19.6078642,12.5032861 C19.640612,12.4852732 19.6750031,12.4721732 19.712664,12.4607123 C19.7519639,12.4492514 19.7896247,12.4410644 19.8305637,12.4361514 C19.8502116,12.4345123 19.8665855,12.4246905 19.8846026,12.4246905 C19.9042505,12.4246905 19.9206244,12.4345123 19.9402765,12.4361514 C19.9795764,12.4394254 20.0172372,12.4476123 20.0565371,12.4590774 C20.095837,12.4705383 20.131863,12.4852773 20.1678848,12.5049294 C20.1842587,12.5147512 20.2039065,12.5147512 20.2186456,12.5262163 C20.2350195,12.5376772 20.2432064,12.5540511 20.2563064,12.5655162 C20.2890584,12.5917162 20.3152584,12.6195552 20.3414583,12.652303 C20.3660192,12.6817769 20.3856712,12.7112508 20.4036842,12.7440028 C20.4216972,12.7767506 20.4347972,12.8111417 20.4446232,12.8471635 C20.4560841,12.8864634 20.464271,12.9257633 20.4691841,12.9667023 C20.4757319,12.9863501 20.485558,13.0027282 20.485558,13.0223761 L20.485558,20.1391178 L26.1317495,20.1391178 C25.5405951,19.3433104 25.2049424,18.3739127 25.2049424,17.3553848 C25.2049424,14.7714001 27.307477,12.6704166 29.8899106,12.6704166 C32.4738953,12.6704166 34.5748789,14.7729512 34.5748789,17.3553848 C34.5748789,18.3739127 34.2391927,19.3433104 33.6480717,20.1391178 L39.6493249,20.1391178 L39.6493249,2.1382928 C39.6493249,1.49805014 39.126961,0.975531145 38.4867183,0.975531145 L38.4863913,0.975531145 Z" ] []
, Svg.path [ Attributes.d "M1.28579024,40.5015956 L19.2866152,40.5015956 L19.2866152,33.0314704 C19.2866152,33.0118183 19.2964413,32.9954444 19.2980803,32.9774314 C19.3013543,32.9364925 19.3095412,32.8971926 19.3226412,32.8578927 C19.3341021,32.8218667 19.3472021,32.7874798 19.3635802,32.754732 C19.381589,32.7219799 19.401241,32.6925061 19.4258061,32.6630322 C19.452006,32.6302802 19.479845,32.6024453 19.5109538,32.5762454 C19.5256886,32.5647803 19.5338756,32.5484064 19.5486146,32.5369455 C19.5649885,32.5254804 19.5830015,32.5238455 19.6010145,32.5156586 C19.6370405,32.4960065 19.6730664,32.4812675 19.7123663,32.4698066 C19.7516662,32.4583415 19.7893271,32.4501545 19.8302661,32.4468806 C19.8499139,32.4419676 19.866292,32.4321416 19.8859399,32.4321416 C19.9055877,32.4321416 19.9203268,32.4419676 19.9399788,32.4436066 C19.9809136,32.4468806 20.0202177,32.4550675 20.0595176,32.4681675 C20.0955436,32.4796284 20.1299305,32.4910935 20.1626783,32.5091065 C20.1970652,32.5271153 20.2265391,32.5484064 20.2560172,32.5713324 C20.288765,32.5975323 20.316604,32.6253713 20.3428039,32.6564843 C20.3542648,32.6712191 20.3706387,32.6794061 20.3821038,32.6957842 C21.0338326,33.6570075 22.1112998,34.2301364 23.2673668,34.2301364 C25.1897716,34.2301364 26.7552284,32.6663145 26.7552284,30.7422749 C26.7552284,28.8198701 25.1914065,27.2544133 23.2673668,27.2544133 C22.1112998,27.2544133 21.0321977,27.8275422 20.3821038,28.7887655 C20.3706387,28.8051394 20.3542648,28.8133264 20.3428039,28.8280654 C20.316604,28.8591742 20.288765,28.8870132 20.2560172,28.9132131 C20.2249042,28.937774 20.1954303,28.9590651 20.1610434,28.9770739 C20.1282914,28.9934478 20.0955436,29.0065478 20.0595176,29.0180087 C20.0185786,29.0311087 19.9792787,29.0392956 19.9367049,29.0425738 C19.920331,29.0442086 19.9039529,29.0540347 19.8859441,29.0540347 C19.866292,29.0540347 19.8499181,29.0442086 19.8319051,29.0425738 C19.7909662,29.0392956 19.7533053,29.0311087 19.7123663,29.0180087 C19.6730664,29.0065478 19.6370405,28.9918088 19.6026536,28.9721567 C19.5862797,28.9623307 19.5666276,28.9606958 19.5502537,28.9508698 C19.5338798,28.9394089 19.5256886,28.9230308 19.5109538,28.9115699 C19.4782018,28.8853699 19.452006,28.8575309 19.4258061,28.8247831 C19.401241,28.7953092 19.3815932,28.7658353 19.3635802,28.7330833 C19.3455672,28.7003355 19.3324672,28.6659444 19.3226412,28.6299226 C19.3111803,28.5906227 19.3029933,28.5513228 19.2980803,28.5103838 C19.2964413,28.490736 19.2866152,28.4743579 19.2866152,28.45471 L19.2866152,21.3379683 L13.6404279,21.3379683 C14.2315823,22.1337757 14.567235,23.1031734 14.567235,24.1217013 C14.567235,26.705686 12.4646962,28.8066695 9.88226676,28.8066695 C7.2982821,28.8066695 5.19729854,26.7041349 5.19729854,24.1217013 C5.19729854,23.1031734 5.53298473,22.1337757 6.12410565,21.3379683 L0.122850845,21.3379683 L0.122850845,39.338795 C0.122850845,39.9790376 0.64521474,40.5014015 1.2854574,40.5014015 L1.28579024,40.5015956 Z" ] []
, Svg.path [ Attributes.d "M32.1770269,21.3379138 C32.1049792,21.3379138 32.0362012,21.3215399 31.9690665,21.29534 C31.9559665,21.2904269 31.9428666,21.287153 31.9297666,21.2806009 C31.8691798,21.2527661 31.8151408,21.2167401 31.7660191,21.1692533 C31.756193,21.1594314 31.7480061,21.1479663 31.7381801,21.1381445 C31.7185322,21.1168534 31.6972453,21.0972055 31.6808672,21.0726447 C31.6694063,21.0562666 31.6677672,21.0382536 31.6595802,21.0202448 C31.6399324,20.9842188 31.6251934,20.9481929 31.6137283,20.9088971 C31.6022674,20.8695972 31.5940804,20.8319364 31.5891674,20.7909974 C31.5891674,20.7746193 31.5793414,20.7582454 31.5793414,20.7385975 C31.5793414,20.7189455 31.5891674,20.7025716 31.5908065,20.6845586 C31.5940804,20.6436196 31.6022674,20.6043197 31.6153673,20.5650198 C31.6268282,20.5289938 31.6399282,20.494607 31.6563063,20.4618591 C31.6743151,20.4291071 31.6939671,20.3996332 31.7185322,20.3701593 C31.7447321,20.3374073 31.7725712,20.3095725 31.8036841,20.2833726 C31.8184189,20.2719075 31.8266059,20.2555336 31.8413449,20.2440727 C32.8025683,19.5923439 33.3756972,18.5148767 33.3756972,17.3588097 C33.3756972,15.4364049 31.8118753,13.8709481 29.8878356,13.8709481 C27.9654308,13.8709481 26.399974,15.43477 26.399974,17.3588097 C26.399974,18.5148767 26.9731029,19.5939746 27.9343263,20.2440727 C27.9507002,20.2555336 27.9588871,20.2719075 27.9719871,20.2833726 C28.0047391,20.3095725 28.0309391,20.3374115 28.057139,20.3701593 C28.0816999,20.3996332 28.1013519,20.4291071 28.1193649,20.4618591 C28.1373779,20.4946111 28.1504779,20.528998 28.1603039,20.5650198 C28.1717648,20.6043197 28.1799517,20.6436196 28.1848647,20.6845586 C28.1914168,20.7025674 28.2012387,20.7189455 28.2012387,20.7385975 C28.2012387,20.7582454 28.1914168,20.7746193 28.1897778,20.7942714 C28.1865038,20.8352062 28.1783169,20.8728712 28.1652169,20.9121711 C28.1537518,20.951471 28.139017,20.987497 28.1193649,21.0235229 C28.1095389,21.0398968 28.1078998,21.0595447 28.098078,21.0759228 C28.0866129,21.0922967 28.070239,21.1004837 28.0587781,21.1135836 C28.0325781,21.1463315 28.0031042,21.1741705 27.9703522,21.2003704 C27.9408742,21.2232964 27.9114045,21.2445833 27.8786524,21.2625963 C27.8459004,21.2806093 27.8115135,21.2937093 27.7738527,21.3051702 C27.7345528,21.3166311 27.6968919,21.324818 27.655953,21.329731 C27.63794,21.3280962 27.6215619,21.337918 27.601914,21.337918 L20.4851723,21.337918 L20.4851723,26.9841096 C21.2809797,26.3929551 22.2503774,26.0589373 23.2672704,26.0589373 C25.8512551,26.0589373 27.9522386,28.1614719 27.9522386,30.7439055 C27.9522386,33.3278902 25.849704,35.4288738 23.2672704,35.4288738 C22.2487426,35.4288738 21.2809797,35.0931876 20.4851723,34.5037015 L20.4851723,40.5020215 L38.4859973,40.5020215 C39.12624,40.5020215 39.6486039,39.9796576 39.6486039,39.339415 L39.6486039,21.3385887 L32.1784774,21.3385887 L32.1768383,21.3385887 L32.1770269,21.3379138 Z" ] []
]
]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
quiz2 : Nri.Ui.Svg.V1.Svg
quiz2 =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 70 71"
, Attributes.fill "currentcolor"
]
[ Svg.g [ Attributes.fillRule "evenodd" ]
[ Svg.path [ Attributes.d "M35,70.3115 C54.33,70.3115 70,54.6415 70,35.3115 C70,15.9815 54.33,0.3115 35,0.3115 C15.67,0.3115 0,15.9815 0,35.3115 C0,54.6415 15.67,70.3115 35,70.3115", Attributes.fill "currentcolor" ] []
, Svg.path [ Attributes.d "M27.7066041,24.1406748 C26.993092,24.1406748 26.4038432,23.5928472 26.3383711,22.8940328 L26.3397072,22.7684333 C26.3397072,22.0108277 26.9543432,21.3948556 27.7092764,21.3948556 L50.2744322,21.3948556 C51.2872454,21.3948556 51.6466738,22.1350911 51.6466738,22.7684333 C51.6466738,23.4004394 51.2872454,24.1406748 50.2744322,24.1406748 L27.7066041,24.1406748 Z", Attributes.fill "#FFFFFF" ] []
, Svg.path [ Attributes.d "M20.3149812,24.9539297 C20.1485622,24.9539297 19.9879711,24.8898228 19.8675278,24.7742361 L18.0479274,23.0339599 C17.7892333,22.7869216 17.7801676,22.3770258 18.0275297,22.1186555 C18.2739204,21.8602852 18.68414,21.8508958 18.9428341,22.0982579 L20.2861654,23.3826627 L23.7243037,19.6583096 C23.9671329,19.3950828 24.3767049,19.3788941 24.6392843,19.6213996 C24.9021874,19.8642288 24.9186998,20.2738008 24.6761943,20.5363802 L20.7909265,24.7454204 C20.6727496,24.8733104 20.5089208,24.9481018 20.335055,24.953606 C20.3285796,24.9539297 20.3217804,24.9539297 20.3149812,24.9539297", Attributes.fill "#FFFFFF" ] []
, Svg.path [ Attributes.d "M20.3149812,32.9539297 C20.1485622,32.9539297 19.9879711,32.8898228 19.8675278,32.7742361 L18.0479274,31.0339599 C17.7892333,30.7869216 17.7801676,30.3770258 18.0275297,30.1186555 C18.2739204,29.8602852 18.68414,29.8508958 18.9428341,30.0982579 L20.2861654,31.3826627 L23.7243037,27.6583096 C23.9671329,27.3950828 24.3767049,27.3788941 24.6392843,27.6213996 C24.9021874,27.8642288 24.9186998,28.2738008 24.6761943,28.5363802 L20.7909265,32.7454204 C20.6727496,32.8733104 20.5089208,32.9481018 20.335055,32.953606 C20.3285796,32.9539297 20.3217804,32.9539297 20.3149812,32.9539297", Attributes.fill "#FFFFFF" ] []
, Svg.path [ Attributes.d "M20.3149812,49.5652859 C20.1485622,49.5652859 19.9879711,49.501179 19.8675278,49.3855923 L18.0479274,47.6453161 C17.7892333,47.3982778 17.7801676,46.988382 18.0275297,46.7300117 C18.2739204,46.4716414 18.68414,46.462252 18.9428341,46.7096141 L20.2861654,47.9940189 L23.7243037,44.2696659 C23.9671329,44.006439 24.3767049,43.9902503 24.6392843,44.2327558 C24.9021874,44.4755851 24.9186998,44.885157 24.6761943,45.1477364 L20.7909265,49.3567766 C20.6727496,49.4846666 20.5089208,49.559458 20.335055,49.5649622 C20.3285796,49.5652859 20.3217804,49.5652859 20.3149812,49.5652859", Attributes.fill "#FFFFFF" ] []
, Svg.path [ Attributes.d "M18.8324383,37.3886648 C18.5195828,37.0758093 18.5195828,36.6127831 18.8324383,36.2999276 C19.1452938,35.9870721 19.60832,35.9870721 19.9211755,36.2999276 L21.3227682,37.7015203 L22.724361,36.2999276 C23.0372165,35.9870721 23.5565566,35.9870721 23.863155,36.2999276 C24.1760106,36.6127831 24.1760106,37.1321233 23.863155,37.4387217 L22.4615623,38.8403144 L23.863155,40.2419071 C24.1760106,40.5547626 24.1760106,41.0177888 23.863155,41.3306443 C23.5502995,41.6434998 23.0872734,41.6434998 22.7744178,41.3306443 L21.3728251,39.9290516 L19.9712324,41.3306443 C19.6583769,41.6434998 19.1390367,41.6434998 18.8324383,41.3306443 C18.5195828,41.0177888 18.5195828,40.4984486 18.8324383,40.1918502 L20.234031,38.8403144 L18.8324383,37.3886648 Z", Attributes.fill "#FFFFFF" ] []
, Svg.path [ Attributes.d "M27.7066041,32.1644352 C26.993092,32.1644352 26.4038432,31.6179437 26.3383711,30.9191294 L26.3397072,30.7935298 C26.3397072,30.0359242 26.9543432,29.418616 27.7092764,29.418616 L50.2744322,29.418616 C51.2872454,29.418616 51.6466738,30.1588514 51.6466738,30.7935298 C51.6466738,31.4255359 51.2872454,32.1644352 50.2744322,32.1644352 L27.7066041,32.1644352 Z", Attributes.fill "#FFFFFF" ] []
, Svg.path [ Attributes.d "M27.7066041,48.2119559 C26.9516708,48.2119559 26.3343626,47.5959838 26.3330264,46.8370421 C26.3330264,46.083445 26.9476623,45.4661367 27.7025956,45.4661367 L50.2744322,45.4661367 C51.2872454,45.4661367 51.6466738,46.2063721 51.6466738,46.8410506 C51.6466738,47.4730566 51.2872454,48.2119559 50.2744322,48.2119559 L27.7066041,48.2119559 Z", Attributes.fill "#FFFFFF" ] []
, Svg.path [ Attributes.d "M27.7066041,40.1881956 C26.9516708,40.1881956 26.3343626,39.5708873 26.3330264,38.8132817 C26.3330264,38.0583484 26.9476623,37.4423763 27.7025956,37.4423763 L50.2744322,37.4423763 C51.2872454,37.4423763 51.6466738,38.1812756 51.6466738,38.815954 C51.6466738,39.4479601 51.2872454,40.1881956 50.2744322,40.1881956 L27.7066041,40.1881956 Z", Attributes.fill "#FFFFFF" ] []
]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
unitDiagnostic : Nri.Ui.Svg.V1.Svg
unitDiagnostic =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 71 71"
, Attributes.fill "currentcolor"
]
[ Svg.g [ Attributes.fillRule "evenodd" ]
[ Svg.path [ Attributes.d "M35,70.3115 C54.33,70.3115 70,54.6415 70,35.3115 C70,15.9815 54.33,0.3115 35,0.3115 C15.67,0.3115 0,15.9815 0,35.3115 C0,54.6415 15.67,70.3115 35,70.3115", Attributes.fill "currentcolor" ] []
, Svg.path [ Attributes.d "M37.9626487,27.1000681 C37.8614933,27.1000681 37.7649285,27.077079 37.6706709,27.0402942 C37.6522785,27.0333963 37.633886,27.0287996 37.6154936,27.0196005 C37.5304293,26.9805202 37.4545583,26.9299395 37.385591,26.8632676 C37.3717952,26.8494777 37.3603007,26.8333807 37.3465049,26.8195907 C37.3189191,26.7896979 37.2890322,26.7621121 37.2660372,26.7276285 C37.249946,26.7046336 37.2476447,26.6793432 37.2361502,26.6540588 C37.2085645,26.6034781 37.1878708,26.5528974 37.1717737,26.4977259 C37.1556825,26.4425486 37.144188,26.3896725 37.1372901,26.332194 C37.1372901,26.309199 37.1234943,26.2862099 37.1234943,26.2586242 C37.1234943,26.2310326 37.1372901,26.2080435 37.1395914,26.1827532 C37.144188,26.1252746 37.1556825,26.0700972 37.174075,26.0149199 C37.1901662,25.9643392 37.2085586,25.9160598 37.2315536,25.8700816 C37.256838,25.8240976 37.2844296,25.7827161 37.3189191,25.7413345 C37.355704,25.6953505 37.3947902,25.6562702 37.438473,25.6194853 C37.4591608,25.6033883 37.4706553,25.5803992 37.491349,25.564308 C38.8409129,24.6492766 39.6455896,23.1365056 39.6455896,21.5133799 C39.6455896,18.8143111 37.4499734,16.6163995 34.7486092,16.6163995 C32.0495403,16.6163995 29.8516287,18.8120157 29.8516287,21.5133799 C29.8516287,23.1365056 30.6563054,24.6515661 32.0058693,25.564308 C32.0288584,25.5803992 32.0403529,25.6033883 32.0587453,25.6194853 C32.1047294,25.6562702 32.1415143,25.6953564 32.1782992,25.7413345 C32.2127828,25.7827161 32.2403744,25.8240976 32.2656647,25.8700816 C32.2909551,25.9160657 32.3093475,25.9643451 32.3231433,26.0149199 C32.3392345,26.0700972 32.3507291,26.1252746 32.357627,26.1827532 C32.3668261,26.2080376 32.380616,26.2310326 32.380616,26.2586242 C32.380616,26.2862099 32.3668261,26.309199 32.3645249,26.3367906 C32.3599282,26.3942633 32.3484337,26.4471452 32.3300412,26.5023226 C32.3139442,26.5574999 32.2932563,26.6080806 32.2656647,26.6586613 C32.2518689,26.6816504 32.2495677,26.7092361 32.2357778,26.732231 C32.2196807,26.7552201 32.1966916,26.7667147 32.1806004,26.7851071 C32.1438155,26.8310853 32.102434,26.8701714 32.05645,26.9069563 C32.0150626,26.9391446 31.9736869,26.9690315 31.9277029,26.9943219 C31.8817188,27.0196122 31.8334394,27.0380047 31.7805633,27.0540958 C31.725386,27.070187 31.6725099,27.0816816 31.6150314,27.0885795 C31.589741,27.0862841 31.566746,27.100074 31.5391603,27.100074 L21.5472085,27.100074 L21.5472085,35.0273638 C22.6645273,34.1973791 24.025568,33.728416 25.4532924,33.728416 C29.0812237,33.728416 32.0310184,36.6803883 32.0310184,40.306142 C32.0310184,43.9340733 29.0790461,46.8838679 25.4532924,46.8838679 C24.0232726,46.8838679 22.6645273,46.4125623 21.5472085,45.5849201 L21.5472085,54.0066005 L46.8204843,54.0066005 C47.7193892,54.0066005 48.4527915,53.2731982 48.4527915,52.3742933 L48.4527915,27.1010157 L37.9646852,27.1010157 L37.9623839,27.1010157 L37.9626487,27.1000681 Z", Attributes.fill "#FFFFFF" ] []
]
]
|> Nri.Ui.Svg.V1.fromHtml
{-| -}
allLibrary : Nri.Ui.Svg.V1.Svg
allLibrary =
Svg.svg
[ Attributes.width "100%"
, Attributes.height "100%"
, Attributes.viewBox "0 0 25 21"
, Attributes.fill "currentcolor"
]
[ Svg.g [ Attributes.fillRule "evenodd" ]
[ Svg.path [ Attributes.d "M4.36725,18.19925 L4.36725,18.6592 L0,18.6592 L0,18.19925 L4.36725,18.19925 Z M4.36725,17.7393 L0,17.7393 L0,3.2608 L4.36725,3.2608 L4.36725,17.7393 Z M4.36725,19.1182 L4.36725,19.34867 C4.36725,19.72952 4.057675,20.03812 3.6778,20.03812 L0.68955,20.03812 C0.3087,20.03812 9.989738e-05,19.72952 9.989738e-05,19.34867 L9.989738e-05,19.1182 L4.36725,19.1182 Z M4.36725,2.34095 L4.36725,2.8009 L0,2.8009 L0,2.34095 L4.36725,2.34095 Z M4.36725,1.88198 L0,1.88198 L0,1.6515 C0,1.27065 0.3086,0.96205 0.68945,0.96205 L3.6777,0.96205 C4.057575,0.96205 4.36715,1.27065 4.36715,1.6515 L4.36725,1.88198 Z M0.919,3.71987 L0.919,6.0187 L3.44725,6.0187 L3.44725,3.71987 L0.919,3.71987 Z M9.423,18.199375 L9.423,18.659325 L5.05675,18.659325 L5.05675,18.199375 L9.423,18.199375 Z M9.423,17.739425 L5.05675,17.739425 L5.05675,3.26092 L9.423,3.26092 L9.423,17.739425 Z M9.423,19.118325 L9.423,19.348795 C9.423,19.729645 9.1144,20.038245 8.73355,20.038245 L5.7463,20.038245 C5.36545,20.038245 5.05685,19.729645 5.05685,19.348795 L5.05685,19.118325 L9.423,19.118325 Z M9.423,2.34107 L9.423,2.80102 L5.05675,2.80102 L5.05675,2.34107 L9.423,2.34107 Z M9.423,1.8821 L5.05675,1.8821 L5.05675,1.65163 C5.05675,1.27078 5.36535,0.96218 5.7462,0.96218 L8.73345,0.96218 C9.1143,0.96218 9.4229,1.27078 9.4229,1.65163 L9.423,1.8821 Z M5.97575,3.72 L5.97575,6.01882 L8.504,6.01882 L8.504,3.72 L5.97575,3.72 Z M14.47975,18.199497 L14.47975,18.659447 L10.1125,18.659447 L10.1125,18.199497 L14.47975,18.199497 Z M14.47975,17.739547 L10.1125,17.739547 L10.1125,3.26105 L14.47975,3.26105 L14.47975,17.739547 Z M14.47975,19.118447 L14.47975,19.348917 C14.47975,19.729767 14.17115,20.038367 13.7903,20.038367 L10.80205,20.038367 C10.4212,20.038367 10.1126,19.729767 10.1126,19.348917 L10.1126,19.118447 L14.47975,19.118447 Z M14.47975,2.3412 L14.47975,2.80115 L10.1125,2.80115 L10.1125,2.3412 L14.47975,2.3412 Z M14.47975,1.88222 L10.1125,1.88222 L10.1125,1.65175 C10.1125,1.2709 10.4211,0.9623 10.80195,0.9623 L13.7902,0.9623 C14.17105,0.9623 14.47965,1.2709 14.47965,1.65175 L14.47975,1.88222 Z M11.0325,3.72012 L11.0325,6.01895 L13.55975,6.01895 L13.55975,3.72012 L11.0325,3.72012 Z M24.56575,16.988622 L24.72298,17.420272 L20.61948,18.914422 L20.46225,18.481797 L24.56575,16.988622 Z M24.40852,16.556972 L20.30502,18.050147 L15.35277,4.44365 L19.45627,2.95047 L24.40852,16.556972 Z M24.8802,17.852872 L24.95832,18.068692 C25.08918,18.426117 24.90461,18.821617 24.54622,18.952492 L21.73872,19.973967 C21.3813,20.10385 20.9858,19.91928 20.85492,19.561867 L20.7768,19.346047 L24.8802,17.852872 Z M19.14195,2.08637 L19.29918,2.519 L15.19568,4.01217 L15.03845,3.58052 L19.14195,2.08637 Z M18.98472,1.65472 L14.88122,3.1479 L14.80212,2.93208 C14.67224,2.57465 14.85681,2.17915 15.21422,2.04828 L18.02172,1.0268 C18.38012,0.89692 18.77562,1.08149 18.90552,1.4389 L18.98472,1.65472 Z M16.37347,4.56197 L17.1596,6.72115 L19.53557,5.8569 L18.74945,3.69675 L16.37347,4.56197 Z" ] [] ]
]
|> Nri.Ui.Svg.V1.fromHtml

View File

@ -1,329 +0,0 @@
module Nri.Ui.Checkbox.V3 exposing
( Model, Theme(..), IsSelected(..)
, view, viewWithLabel, Assets
, selectedFromBool
)
{-|
@docs Model, Theme, IsSelected
@docs view, viewWithLabel, Assets
@docs selectedFromBool
-}
import Accessibility.Styled as Html
import Accessibility.Styled.Aria as Aria
import Accessibility.Styled.Style
import Accessibility.Styled.Widget as Widget
import Css exposing (..)
import Css.Global exposing (Snippet, children, descendants, everything, selector)
import Html.Events
import Html.Styled
import Html.Styled.Attributes as Attributes exposing (css)
import Html.Styled.Events as Events
import Json.Decode
import Nri.Ui.AssetPath exposing (Asset(..))
import Nri.Ui.AssetPath.Css
import Nri.Ui.Fonts.V1 as Fonts
import Nri.Ui.Html.Attributes.V2 as ExtraAttributes
import Nri.Ui.Html.V3 as HtmlExtra exposing (defaultOptions)
{-| -}
type alias Model msg =
{ identifier : String
, label : String
, setterMsg : Bool -> msg
, selected : IsSelected
, disabled : Bool
, theme : Theme
, noOpMsg : msg
}
{-|
= Selected -- Checked (rendered with a checkmark)
| NotSelected -- Not Checked (rendered blank)
| PartiallySelected -- Indeterminate (rendered dash)
-}
type IsSelected
= Selected
| NotSelected
| PartiallySelected
{-| -}
type Theme
= Square
| Locked
{-| If your selectedness is always selected or not selected,
you will likely store that state as a `Bool` in your model.
`selectedFromBool` lets you easily convert that into an `IsSelected` value
for use with `Nri.Ui.Checkbox`.
-}
selectedFromBool : Bool -> IsSelected
selectedFromBool isSelected =
case isSelected of
True ->
Selected
False ->
NotSelected
selectedToMaybe : IsSelected -> Maybe Bool
selectedToMaybe selected =
case selected of
Selected ->
Just True
NotSelected ->
Just False
PartiallySelected ->
Nothing
{-| Shows a checkbox (the label is only used for accessibility hints)
-}
view : Assets a -> Model msg -> Html.Html msg
view assets model =
buildCheckbox assets model <|
Html.span Accessibility.Styled.Style.invisible
[ Html.text model.label ]
{-| Shows a checkbox and its label text
-}
viewWithLabel : Assets a -> Model msg -> Html.Html msg
viewWithLabel assets model =
buildCheckbox assets model <|
Html.span [] [ Html.text model.label ]
buildCheckbox : Assets a -> Model msg -> Html.Html msg -> Html.Html msg
buildCheckbox assets model labelContent =
viewCheckbox model <|
case model.theme of
Square ->
{ containerClasses = toClassList [ "SquareClass" ]
, labelStyles =
squareLabelStyles model <|
case model.selected of
Selected ->
assets.checkboxChecked_svg
NotSelected ->
assets.checkboxUnchecked_svg
PartiallySelected ->
assets.checkboxCheckedPartially_svg
, labelClasses = labelClass model.selected
, labelContent = labelContent
}
Locked ->
{ containerClasses = toClassList [ "Locked" ]
, labelStyles = lockLabelStyles model assets.checkboxLockOnInside_svg
, labelClasses = labelClass model.selected
, labelContent = labelContent
}
squareLabelStyles : { b | disabled : Bool } -> Asset -> Html.Styled.Attribute msg
squareLabelStyles model image =
let
baseStyles =
[ positioning
, textStyle
, outline none
, addIcon image
]
in
css
(baseStyles
++ (if model.disabled then
[ cursor auto, checkboxImageSelector [ opacity (num 0.4) ] ]
else
[ cursor pointer ]
)
)
lockLabelStyles : { b | disabled : Bool } -> Asset -> Html.Styled.Attribute msg
lockLabelStyles model image =
let
baseStyles =
[ positioning
, textStyle
, outline none
, addIcon image
]
in
css
(baseStyles
++ (if model.disabled then
[ cursor auto
, checkboxImageSelector [ opacity (num 0.4) ]
]
else
[ cursor pointer ]
)
)
positioning : Style
positioning =
batch
[ display inlineBlock
, padding4 (px 13) zero (px 13) (px 35)
]
textStyle : Style
textStyle =
batch
[ Fonts.baseFont
, fontSize (px 16)
]
addIcon : Asset -> Style
addIcon icon =
batch
[ position relative
, checkboxImageSelector
[ backgroundImage icon
, backgroundRepeat noRepeat
, backgroundSize (px 24)
, property "content" "''"
, position absolute
, left zero
, top (px 10)
, width (px 24)
, height (px 24)
]
]
checkboxImageSelector : List Style -> Style
checkboxImageSelector =
before
labelClass : IsSelected -> Html.Styled.Attribute msg
labelClass isSelected =
case isSelected of
Selected ->
toClassList [ "Label", "Checked" ]
NotSelected ->
toClassList [ "Label", "Unchecked" ]
PartiallySelected ->
toClassList [ "Label", "Indeterminate" ]
toClassList : List String -> Html.Styled.Attribute msg
toClassList =
List.map (\a -> ( "checkbox-V3__" ++ a, True )) >> Attributes.classList
viewCheckbox :
Model msg
->
{ containerClasses : Html.Attribute msg
, labelStyles : Html.Attribute msg
, labelClasses : Html.Attribute msg
, labelContent : Html.Html msg
}
-> Html.Html msg
viewCheckbox model config =
let
toggledValue =
selectedToMaybe model.selected
|> Maybe.withDefault False
|> not
in
Html.Styled.span
[ css
[ display block
, height inherit
, descendants [ Css.Global.input [ display none ] ]
]
, config.containerClasses
, Attributes.id <| model.identifier ++ "-container"
, -- This is necessary to prevent event propagation.
-- See https://github.com/elm-lang/html/issues/96
Attributes.map (always model.noOpMsg) <|
Events.stopPropagationOn "click"
(Json.Decode.succeed ( "stop click propagation", True ))
]
[ Html.checkbox model.identifier
(selectedToMaybe model.selected)
[ Widget.label model.label
, Events.onCheck (\_ -> model.setterMsg toggledValue)
, Attributes.id model.identifier
, Attributes.disabled model.disabled
]
, viewLabel model config.labelContent config.labelClasses config.labelStyles
]
viewLabel : Model msg -> Html.Html msg -> Html.Attribute msg -> Html.Attribute msg -> Html.Html msg
viewLabel model content class theme =
Html.Styled.label
[ Attributes.for model.identifier
, Aria.controls model.identifier
, Widget.disabled model.disabled
, Widget.checked (selectedToMaybe model.selected)
, if not model.disabled then
Attributes.tabindex 0
else
ExtraAttributes.none
, if not model.disabled then
--TODO: the accessibility keyboard module might make this a tad more readable.
HtmlExtra.onKeyUp
{ defaultOptions | preventDefault = True }
(\keyCode ->
-- 32 is the space bar, 13 is enter
if (keyCode == 32 || keyCode == 13) && not model.disabled then
Just <| model.setterMsg (Maybe.map not (selectedToMaybe model.selected) |> Maybe.withDefault True)
else
Nothing
)
else
ExtraAttributes.none
, class
, theme
]
[ content ]
{-| The assets used in this module.
-}
type alias Assets r =
{ r
| checkboxUnchecked_svg : Asset
, checkboxChecked_svg : Asset
, checkboxCheckedPartially_svg : Asset
, checkboxLockOnInside_svg : Asset
}
backgroundImage : Asset -> Style
backgroundImage =
Nri.Ui.AssetPath.Css.url
>> property "background-image"

View File

@ -1,278 +0,0 @@
module Nri.Ui.Confetti.V1 exposing
( Model, init
, view
, Msg, burst, update, updatePageWidth, subscriptions
)
{-|
@docs Model, init
@docs view
@docs Msg, burst, update, updatePageWidth, subscriptions
-}
import Css exposing (Color)
import Html.Styled as Html
import Html.Styled.Attributes as Attributes exposing (css)
import Nri.Ui.Colors.V1 as Colors
import Particle exposing (Particle)
import Particle.System as ParticleSystem
import Random exposing (Generator)
import Random.Extra
import Random.Float exposing (normal)
-- MODEL
{-| -}
type Model
= System (ParticleSystem.System Confetti) Float
type Confetti
= Word
{ color : Color
, text : String
, rotations : Float
}
| Square
{ color : Color
, rotations : Float
, rotationOffset : Float
}
{-| -}
init : Float -> Model
init center =
System
(ParticleSystem.init (Random.initialSeed 0))
center
-- VIEW
{-| -}
view : Model -> Html.Html msg
view (System system _) =
system
|> ParticleSystem.viewCustom viewConfetti
(Html.div
[ Attributes.style "position" "absolute"
, Attributes.style "top" "0"
, Attributes.style "left" "0"
, Attributes.style "width" "100%"
, Attributes.style "height" "100vh"
, Attributes.style "pointer-events" "none"
]
)
viewConfetti : Particle Confetti -> Html.Html msg
viewConfetti particle =
let
lifetime =
Particle.lifetimePercent particle
in
case Particle.data particle of
Word { color, text, rotations } ->
Html.div
[ css
[ Css.backgroundColor color
, Css.padding (Css.px 4)
, Css.borderRadius (Css.px 4)
]
, Attributes.style "position" "absolute"
{-
There are important performance optimizations happening here:
- `transform: translate / scale / rotate` are the most performant for animations
- `will-change: transform` tells the browser our intent and it makes optimizations
for an upcoming `transform`
- Putting `rotate` after `translateX` and `translateY` is more performant
-}
, Attributes.style "left" "0px"
, Attributes.style "top" "0px"
, Attributes.style "transform-origin" "center"
, Attributes.style "will-change" "transform"
, Attributes.style "transform" <|
"translateX("
++ String.fromFloat (Particle.leftPixels particle)
++ "px) translateY("
++ String.fromFloat (Particle.topPixels particle)
++ "px) rotate("
++ String.fromFloat ((rotations * lifetime) * 360)
++ "deg)"
]
[ Html.text text ]
Square { color, rotationOffset, rotations } ->
Html.div
[ css
[ Css.backgroundColor color
, Css.width (Css.px 14)
, Css.height (Css.px 14)
]
, Attributes.style "position" "absolute"
, Attributes.style "left" "0px"
, Attributes.style "top" "0px"
, Attributes.style "transform-origin" "center"
, Attributes.style "will-change" "transform"
, Attributes.style "transform" <|
"translateX("
++ String.fromFloat (Particle.leftPixels particle)
++ "px) translateY("
++ String.fromFloat (Particle.topPixels particle)
++ "px) rotate("
++ String.fromFloat ((rotations * lifetime + rotationOffset) * 360)
++ "deg)"
]
[]
-- UPDATE
{-| `burst` BURSTS CONFETTI!!! Pass in a list of words that you'd like to have
in the confetti:
Confetti.burst
[ { color = Colors.highlightMagenta, text = "tree" }
, { color = Colors.highlightGreen, text = "bush" }
, { color = Colors.highlightCyan, text = "succulent" }
]
state.confetti
-}
burst : List { color : Color, text : String } -> Model -> Model
burst highlightedWords (System system center) =
System
(ParticleSystem.burst (particlesGenerator center highlightedWords) system)
center
particlesGenerator : Float -> List { color : Color, text : String } -> Generator (List (Particle Confetti))
particlesGenerator center highlightedWords =
Random.list 200 <|
particleGenerator
center
(Random.Extra.frequency
( 2 / 5, squareGenerator )
[ ( 3 / 5, confettiGenerator highlightedWords ) ]
)
confettiGenerator : List { color : Color, text : String } -> Generator Confetti
confettiGenerator highlightedWords =
Random.Extra.sample highlightedWords
|> Random.andThen
(\word ->
case word of
Just { color, text } ->
wordGenerator text color
Nothing ->
squareGenerator
)
squareGenerator : Generator Confetti
squareGenerator =
Random.map3
(\color rotations rotationOffset ->
Square
{ color = color
, rotations = rotations
, rotationOffset = rotationOffset
}
)
randomHighlightColor
(normal 1 1)
(Random.float 0 1)
randomHighlightColor : Generator Color
randomHighlightColor =
Random.weighted
( 1 / 20, Colors.highlightYellowDark )
[ ( 1 / 20, Colors.highlightCyanDark )
, ( 1 / 20, Colors.highlightMagentaDark )
, ( 1 / 20, Colors.highlightGreenDark )
, ( 1 / 20, Colors.highlightBlueDark )
, ( 1.5 / 10, Colors.highlightYellow )
, ( 1.5 / 10, Colors.highlightCyan )
, ( 1.5 / 10, Colors.highlightMagenta )
, ( 1.5 / 10, Colors.highlightGreen )
, ( 1.5 / 10, Colors.highlightBlue )
]
wordGenerator : String -> Color -> Generator Confetti
wordGenerator word color =
Random.map
(\rotations ->
Word
{ text = word
, color = color
, rotations = rotations
}
)
(normal 0.75 0.5)
particleGenerator : Float -> Generator Confetti -> Generator (Particle Confetti)
particleGenerator center generator =
Particle.init generator
|> Particle.withLifetime (normal 2.5 1)
|> Particle.withLocation (normal center (center / 2) |> Random.map (\x -> { x = x, y = -50 }))
|> Particle.withDirection (Random.constant (degrees 0))
|> Particle.withSpeed (Random.float 0 1000)
|> Particle.withGravity 600
|> Particle.withDrag
(\confetti ->
{ density = 0.001226
, coefficient = 1
, area =
case confetti of
Square _ ->
1
Word { text } ->
toFloat (String.length text)
}
)
{-| -}
type alias Msg =
ParticleSystem.Msg Confetti
{-| -}
update : ParticleSystem.Msg Confetti -> Model -> Model
update msg (System system center) =
System (ParticleSystem.update msg system) center
{-| You will need to watch for page resize events and update the confetti model
with the new width. If you don't, your confetti will be off-center.
Why is this not part of subscriptions? Your application may already be listening
for browser resize events -- we don't want to double-up listeners unnecessarily.
-}
updatePageWidth : Int -> Model -> Model
updatePageWidth width (System system _) =
System system (toFloat (width // 2))
{-| -}
subscriptions : (Msg -> msg) -> Model -> Sub msg
subscriptions confettiMsg (System system _) =
ParticleSystem.sub [] confettiMsg system

View File

@ -13,7 +13,7 @@ module Nri.Ui.Page.V3 exposing
import Css exposing (..)
import Html.Styled as Html exposing (Html)
import Html.Styled.Attributes as Attributes
import Nri.Ui.Button.V5 as Button
import Nri.Ui.Button.V10 as Button
import Nri.Ui.Text.V2 as Text
@ -112,14 +112,12 @@ view config =
, viewButton
[ viewExit config ]
, viewButton
[ Button.linkExternal
{ label = "Get help!"
, icon = Nothing
, url = "https://noredink.zendesk.com/hc/en-us"
, size = Button.Large
, style = Button.Secondary
, width = Button.WidthExact 260
}
[ Button.link "Get help!"
[ Button.linkExternal "https://noredink.zendesk.com/hc/en-us"
, Button.large
, Button.exactWidth 260
, Button.secondary
]
]
, case config.details of
Just details ->
@ -135,34 +133,27 @@ viewExit config =
case config.defaultPage of
Just defaultPage ->
Button.button
{ onClick = defaultPage.link
, size = Button.Large
, style = Button.Primary
, width = Button.WidthExact 260
}
{ label =
case defaultPage.recoveryText of
ReturnTo name ->
"Return to " ++ name
(case defaultPage.recoveryText of
ReturnTo name ->
"Return to " ++ name
Reload ->
"Try again"
Reload ->
"Try again"
Custom text ->
text
, state = Button.Enabled
, icon = Nothing
}
Custom text ->
text
)
[ Button.onClick defaultPage.link
, Button.large
, Button.exactWidth 260
]
Nothing ->
Button.link
{ label = "Return to dashboard"
, icon = Nothing
, url = "/"
, size = Button.Large
, style = Button.Primary
, width = Button.WidthExact 260
}
Button.link "Return to dashboard"
[ Button.href "/"
, Button.large
, Button.exactWidth 260
]
viewDetails : String -> Html msg

View File

@ -31,7 +31,6 @@ import Nri.Ui.Button.V8 as Button
import Nri.Ui.Colors.Extra
import Nri.Ui.Colors.V1 as Colors
import Nri.Ui.Fonts.V1 as Fonts
import Nri.Ui.Icon.V3 as Icon
import Nri.Ui.Slide.V1 as Slide exposing (AnimationDirection(..))
import Nri.Ui.Text.V2 as Text

View File

@ -1,368 +0,0 @@
module Nri.Ui.Tabs.V3 exposing
( Alignment(..)
, Config
, LinkConfig
, Tab
, TabLink
, links
, view
, viewCustom
, viewTabDefault
)
{-|
@docs Alignment
@docs Config
@docs LinkConfig
@docs Tab
@docs TabLink
@docs links
@docs view
@docs viewCustom
## Defaults
@docs viewTabDefault
-}
import Accessibility.Aria
import Accessibility.Key
import Accessibility.Role
import Accessibility.Widget
import Css exposing (Style)
import Html.Styled as Html exposing (Attribute, Html)
import Html.Styled.Attributes as Attributes
import Html.Styled.Events as Events
import Json.Decode
import List.Zipper exposing (Zipper)
import List.Zipper.Extra
import Nri.Ui.Colors.Extra
import Nri.Ui.Colors.V1
import Nri.Ui.Fonts.V1
{-| -}
type alias Config id msg =
{ title : Maybe String
, onSelect : id -> msg
, tabs : Zipper (Tab id)
, content : id -> Html msg
, alignment : Alignment
}
{-| Determines whether tabs are centered or floating to the left or right.
-}
type Alignment
= Left
| Center
| Right
{-| -}
type alias Tab id =
{ label : String
, id : id
}
{-| -}
view : Config id msg -> Html msg
view config =
viewCustom config viewTabDefault
{-| -}
viewTabDefault : Tab id -> Html msg
viewTabDefault tab =
Html.text tab.label
{-| -}
viewCustom : Config id msg -> (Tab id -> Html msg) -> Html msg
viewCustom config viewInnerTab =
let
selected =
List.Zipper.current config.tabs
viewTabs =
List.Zipper.toList config.tabs
|> List.map (viewTab config viewInnerTab selected)
in
Html.div
[]
[ Html.styled Html.div
[ Css.displayFlex
, Css.alignItems Css.flexEnd
, Css.borderBottom (Css.px 1)
, Css.borderBottomStyle Css.solid
, Css.borderBottomColor Nri.Ui.Colors.V1.navy
, Nri.Ui.Fonts.V1.baseFont
]
[]
[ config.title
|> Maybe.map viewTitle
|> Maybe.withDefault (Html.text "")
, Html.styled Html.ul
(stylesTabsAligned config.alignment)
[ Attributes.fromUnstyled <| Accessibility.Role.tabList
]
viewTabs
]
, Html.div
[ Attributes.fromUnstyled <| Accessibility.Role.tabPanel
, Attributes.fromUnstyled <| Accessibility.Aria.labelledBy (tabToId selected)
, Attributes.fromUnstyled <| Accessibility.Widget.hidden False
, Attributes.id (tabToBodyId selected)
]
[ config.content selected.id ]
]
viewTitle : String -> Html msg
viewTitle title =
Html.styled Html.h1
[ Css.flexGrow (Css.int 2)
, Css.fontSize (Css.px 30)
, Css.fontWeight Css.bold
, Css.margin Css.zero
, Css.marginTop (Css.px 5)
, Css.marginBottom (Css.px 10)
, Css.color Nri.Ui.Colors.V1.navy
, Css.width (Css.px 430)
]
[]
[ Html.text title ]
viewTab : Config id msg -> (Tab id -> Html msg) -> Tab id -> Tab id -> Html msg
viewTab { onSelect, tabs } viewInnerTab selected tab =
let
isSelected =
selected.id == tab.id
in
Html.styled Html.li
(stylesTabSelectable isSelected)
[ Events.onClick (onSelect tab.id)
, Attributes.fromUnstyled <| Accessibility.Key.onKeyDown [ Accessibility.Key.enter (onSelect tab.id) ]
, Events.onFocus (onSelect tab.id)
, Attributes.tabindex 0
, Attributes.fromUnstyled <| Accessibility.Role.presentation
, Attributes.id (tabToId tab)
, Attributes.fromUnstyled <| Accessibility.Aria.controls (tabToBodyId tab)
, Attributes.fromUnstyled <| Accessibility.Widget.selected (selected.id == tab.id)
, Events.on "keyup" <|
Json.Decode.andThen
(\keyCode ->
if keyCode == 39 then
tabs
|> List.Zipper.next
|> Maybe.map (List.Zipper.current >> .id >> onSelect >> Json.Decode.succeed)
|> Maybe.withDefault (Json.Decode.fail "No next tab")
else if keyCode == 37 then
tabs
|> List.Zipper.previous
|> Maybe.map (List.Zipper.current >> .id >> onSelect >> Json.Decode.succeed)
|> Maybe.withDefault (Json.Decode.fail "No previous tab")
else
Json.Decode.fail "Wrong key code"
)
Events.keyCode
]
[ Html.styled Html.div
[ Css.color Nri.Ui.Colors.V1.navy
, Css.hover [ Css.textDecoration Css.none ]
, Css.focus [ Css.textDecoration Css.none ]
, Css.display Css.inlineBlock
, Css.padding4 (Css.px 14) (Css.px 20) (Css.px 12) (Css.px 20)
, Css.position Css.relative
, Css.textDecoration Css.none
, Css.property "background" "none"
, Css.fontFamily Css.inherit
, Css.fontSize Css.inherit
, Css.cursor Css.pointer
]
[ Attributes.fromUnstyled <| Accessibility.Role.tab
, Attributes.tabindex -1
]
[ viewInnerTab tab ]
]
{-| Describe a tab that is meant to link to another page
-}
type alias TabLink =
{ label : String
, href : Maybe String
}
{-| Configure a set a tab links
-}
type alias LinkConfig msg =
{ title : Maybe String
, tabs : Zipper TabLink
, content : Html msg
, alignment : Alignment
}
{-| View a set of tab links
-}
links : LinkConfig msg -> Html msg
links config =
Html.div []
[ Html.styled Html.nav
[ Css.displayFlex
, Css.alignItems Css.flexEnd
, Css.borderBottom (Css.px 1)
, Css.borderBottomStyle Css.solid
, Css.borderBottomColor Nri.Ui.Colors.V1.navy
, Nri.Ui.Fonts.V1.baseFont
]
[]
[ config.title
|> Maybe.map viewTitle
|> Maybe.withDefault (Html.text "")
, Html.styled Html.ul
(stylesTabsAligned config.alignment)
[]
(config.tabs
|> mapWithCurrent (viewTabLink config)
|> List.Zipper.toList
)
]
, Html.div [] [ config.content ]
]
viewTabLink : LinkConfig msg -> Bool -> TabLink -> Html msg
viewTabLink config isSelected tabLink =
Html.styled Html.li
(stylesTabSelectable isSelected)
[ Attributes.fromUnstyled <| Accessibility.Role.presentation
, Attributes.id (tabToId tabLink)
]
[ case tabLink.href of
Just href ->
Html.styled Html.a
[ Css.color Nri.Ui.Colors.V1.navy
, Css.display Css.inlineBlock
, Css.padding4 (Css.px 14) (Css.px 20) (Css.px 12) (Css.px 20)
, Css.textDecoration Css.none
]
[ Attributes.href href ]
[ Html.text tabLink.label ]
Nothing ->
Html.styled Html.button
[ Css.color Nri.Ui.Colors.V1.navy
, Css.display Css.inlineBlock
, Css.padding4 (Css.px 14) (Css.px 20) (Css.px 12) (Css.px 20)
, Css.textDecoration Css.none
, Css.fontFamily Css.inherit
, Css.fontSize Css.inherit
, Css.border Css.zero
, Css.property "background" "none"
, Css.lineHeight (Css.num 1)
]
[]
[ Html.text tabLink.label ]
]
-- HELP
tabToId : { a | label : String } -> String
tabToId tab =
tab.label
tabToBodyId : { a | label : String } -> String
tabToBodyId tab =
"tab-body-" ++ tab.label
mapWithCurrent : (Bool -> a -> b) -> Zipper a -> Zipper b
mapWithCurrent fn zipper =
List.Zipper.Extra.from
(List.map (fn False) (List.Zipper.before zipper))
(fn True (List.Zipper.current zipper))
(List.map (fn False) (List.Zipper.after zipper))
-- STYLES
stylesTabsAligned : Alignment -> List Style
stylesTabsAligned alignment =
let
alignmentStyles =
case alignment of
Left ->
[ Css.justifyContent Css.flexStart ]
Center ->
[ Css.justifyContent Css.center ]
Right ->
[ Css.justifyContent Css.flexEnd ]
in
stylesTabs ++ alignmentStyles
stylesTabs : List Style
stylesTabs =
[ Css.listStyle Css.none
, Css.margin Css.zero
, Css.fontSize (Css.px 19)
, Css.displayFlex
, Css.flexGrow (Css.int 1)
, Css.marginRight (Css.px 10)
]
stylesTabSelectable : Bool -> List Style
stylesTabSelectable isSelected =
let
stylesDynamic =
if isSelected then
[ Css.backgroundColor Nri.Ui.Colors.V1.white
, Css.borderBottom (Css.px 1)
, Css.borderBottomStyle Css.solid
, Css.borderBottomColor Nri.Ui.Colors.V1.white
]
else
[ Css.backgroundColor Nri.Ui.Colors.V1.frost
, Css.backgroundImage <|
Css.linearGradient2 Css.toTop
(Css.stop2 (Nri.Ui.Colors.Extra.withAlpha 0.25 Nri.Ui.Colors.V1.azure) (Css.pct 0))
(Css.stop2 (Nri.Ui.Colors.Extra.withAlpha 0 Nri.Ui.Colors.V1.azure) (Css.pct 25))
[ Css.stop2 (Nri.Ui.Colors.Extra.withAlpha 0 Nri.Ui.Colors.V1.azure) (Css.pct 100) ]
]
in
stylesTab ++ stylesDynamic
stylesTab : List Style
stylesTab =
[ Css.display Css.inlineBlock
, Css.borderTopLeftRadius (Css.px 10)
, Css.borderTopRightRadius (Css.px 10)
, Css.border3 (Css.px 1) Css.solid Nri.Ui.Colors.V1.navy
, Css.marginBottom (Css.px -1)
, Css.marginLeft (Css.px 10)
, Css.cursor Css.pointer
, Css.firstChild
[ Css.marginLeft Css.zero
]
]

View File

@ -1,435 +0,0 @@
module Nri.Ui.Tabs.V4 exposing
( Alignment(..)
, Config
, LinkConfig
, Tab
, LinkTabConfig(..)
, links
, view
, viewCustom
, viewTabDefault
)
{-|
@docs Alignment
@docs Config
@docs LinkConfig
@docs Tab
@docs LinkTabConfig
@docs links
@docs view
@docs viewCustom
## Defaults
@docs viewTabDefault
-}
import Accessibility.Styled.Aria as Aria
import Accessibility.Styled.Key as Key
import Accessibility.Styled.Role as Role
import Accessibility.Styled.Widget as Widget
import Css exposing (..)
import EventExtras
import Html.Styled as Html exposing (Attribute, Html)
import Html.Styled.Attributes as Attributes
import Html.Styled.Events as Events
import Json.Decode
import List.Zipper exposing (Zipper)
import List.Zipper.Extra
import Nri.Ui
import Nri.Ui.Colors.Extra
import Nri.Ui.Colors.V1 as Colors
import Nri.Ui.Fonts.V1
{-| -}
type alias Config id msg =
{ title : Maybe String
, onSelect : id -> msg
, tabs : Zipper (Tab id)
, content : id -> Html msg
, alignment : Alignment
}
{-| Determines whether tabs are centered or floating to the left or right.
-}
type Alignment
= Left
| Center
| Right
{-| -}
type alias Tab id =
{ label : String
, id : id
}
{-| -}
view : Config id msg -> Html msg
view config =
viewCustom config viewTabDefault
{-| -}
viewTabDefault : Tab id -> Html msg
viewTabDefault tab =
Html.text tab.label
{-| -}
viewCustom : Config id msg -> (Tab id -> Html msg) -> Html msg
viewCustom config viewInnerTab =
let
selected =
List.Zipper.current config.tabs
viewTabs =
List.Zipper.toList config.tabs
|> List.map (viewTab config viewInnerTab selected)
in
Nri.Ui.styled Html.div
(styledName "container")
[]
[]
[ Html.styled Html.div
[ Css.displayFlex
, Css.alignItems Css.flexEnd
, Css.borderBottom (Css.px 1)
, Css.borderBottomStyle Css.solid
, Css.borderBottomColor Colors.navy
, Nri.Ui.Fonts.V1.baseFont
]
[]
[ config.title
|> Maybe.map viewTitle
|> Maybe.withDefault (Html.text "")
, Html.styled Html.ul
(stylesTabsAligned config.alignment)
[ Role.tabList
]
viewTabs
]
, Html.div
[ Role.tabPanel
, Aria.labelledBy (tabToId selected)
, Widget.hidden False
, Attributes.id (tabToBodyId selected)
]
[ config.content selected.id ]
]
viewTitle : String -> Html msg
viewTitle title =
Html.styled Html.h1
[ Css.flexGrow (Css.int 2)
, Css.fontSize (Css.px 30)
, Css.fontWeight Css.bold
, Css.margin Css.zero
, Css.marginTop (Css.px 5)
, Css.marginBottom (Css.px 10)
, Css.color Colors.navy
, Css.width (Css.px 430)
]
[]
[ Html.text title ]
viewTab : Config id msg -> (Tab id -> Html msg) -> Tab id -> Tab id -> Html msg
viewTab { onSelect, tabs } viewInnerTab selected tab =
let
isSelected =
selected.id == tab.id
tabIndex =
-- From recommendation at https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Tab_Role#Best_practices
if isSelected then
0
else
-1
in
Html.styled Html.button
(stylesTabSelectable isSelected)
[ Events.onClick (onSelect tab.id)
, Key.onKeyDown [ Key.enter (onSelect tab.id) ]
, Events.onFocus (onSelect tab.id)
, Attributes.tabindex tabIndex
, Widget.selected (selected.id == tab.id)
, Role.tab
, Attributes.id (tabToId tab)
, Events.on "keyup" <|
Json.Decode.andThen
(\keyCode ->
if keyCode == 39 then
tabs
|> List.Zipper.next
|> Maybe.map (List.Zipper.current >> .id >> onSelect >> Json.Decode.succeed)
|> Maybe.withDefault (Json.Decode.fail "No next tab")
else if keyCode == 37 then
tabs
|> List.Zipper.previous
|> Maybe.map (List.Zipper.current >> .id >> onSelect >> Json.Decode.succeed)
|> Maybe.withDefault (Json.Decode.fail "No previous tab")
else
Json.Decode.fail "Wrong key code"
)
Events.keyCode
, Attributes.css
[ Css.color Colors.navy
, Css.margin zero
, Css.padding4 (Css.px 14) (Css.px 20) (Css.px 12) (Css.px 20)
, Css.position Css.relative
, Css.textDecoration Css.none
, Css.property "background" "none"
, Css.fontFamily Css.inherit
, Css.fontSize Css.inherit
, Css.cursor Css.pointer
, Css.border zero
]
]
[ viewInnerTab tab
]
{-| The types of links that we can show.
- `NormalLink` - A link to another page.
- `SpaLink` - A link to another SPA page. The `msg` type should be used to handle
the navigation event.
-}
type LinkTabConfig msg
= NormalLink
{ label : String
, href : Maybe String
}
| SpaLink
{ label : String
, href : String
, msg : msg
}
{-| Configure a set a tab links
-}
type alias LinkConfig msg =
{ title : Maybe String
, tabs : Zipper (LinkTabConfig msg)
, content : Html msg
, alignment : Alignment
}
{-| View a set of tab links
-}
links : LinkConfig msg -> Html msg
links config =
Nri.Ui.styled Html.div
(styledName "container")
[]
[]
[ Html.styled Html.nav
[ Css.displayFlex
, Css.alignItems Css.flexEnd
, Css.borderBottom (Css.px 1)
, Css.borderBottomStyle Css.solid
, Css.borderBottomColor Colors.navy
, Nri.Ui.Fonts.V1.baseFont
]
[]
[ config.title
|> Maybe.map viewTitle
|> Maybe.withDefault (Html.text "")
, Html.styled Html.ul
(stylesTabsAligned config.alignment)
[ Role.tabList
]
(config.tabs
|> mapWithCurrent viewTabLink
|> List.Zipper.toList
)
]
, Html.div [] [ config.content ]
]
viewTabLink : Bool -> LinkTabConfig msg -> Html msg
viewTabLink isSelected tabConfig =
let
( tabLabel, tabHref, preventDefault ) =
case tabConfig of
NormalLink { label, href } ->
( label, href, [] )
SpaLink { label, href, msg } ->
( label
, Just href
, [ EventExtras.onClickPreventDefaultForLinkWithHref msg ]
)
currentPage =
if isSelected then
[ Aria.currentPage ]
else
[]
in
Html.styled Html.li
(stylesTabSelectable isSelected)
[ Role.presentation
, Attributes.id (tabToId { label = tabLabel })
]
[ case tabHref of
Just href ->
Html.styled Html.a
[ Css.color Colors.navy
, Css.display Css.inlineBlock
, Css.padding4 (Css.px 14) (Css.px 20) (Css.px 12) (Css.px 20)
, Css.textDecoration Css.none
, hover
[ textDecoration none
]
, focus
[ textDecoration none
]
]
(List.concat
[ [ Attributes.href href
, Role.tab
]
, preventDefault
, currentPage
]
)
[ Html.text tabLabel ]
Nothing ->
Html.styled Html.button
[ Css.color Colors.navy
, Css.display Css.inlineBlock
, Css.padding4 (Css.px 14) (Css.px 20) (Css.px 12) (Css.px 20)
, Css.textDecoration Css.none
, Css.fontFamily Css.inherit
, Css.fontSize Css.inherit
, Css.border Css.zero
, Css.property "background" "none"
, Css.lineHeight (Css.num 1)
]
(List.concat
[ [ Role.tab ]
, currentPage
]
)
[ Html.text tabLabel ]
]
-- HELP
tabToId : { a | label : String } -> String
tabToId tab =
String.replace " " "-" tab.label
tabToBodyId : { a | label : String } -> String
tabToBodyId tab =
"tab-body-" ++ tabToId tab
mapWithCurrent : (Bool -> a -> b) -> Zipper a -> Zipper b
mapWithCurrent fn zipper =
List.Zipper.Extra.from
(List.map (fn False) (List.Zipper.before zipper))
(fn True (List.Zipper.current zipper))
(List.map (fn False) (List.Zipper.after zipper))
styledName : String -> String
styledName suffix =
"Nri-Ui-Tabs-V4-" ++ suffix
-- STYLES
stylesTabsAligned : Alignment -> List Style
stylesTabsAligned alignment =
let
alignmentStyles =
case alignment of
Left ->
[ Css.justifyContent Css.flexStart ]
Center ->
[ Css.justifyContent Css.center ]
Right ->
[ Css.justifyContent Css.flexEnd ]
in
stylesTabs ++ alignmentStyles
stylesTabs : List Style
stylesTabs =
[ Css.listStyle Css.none
, Css.margin Css.zero
, Css.fontSize (Css.px 19)
, Css.displayFlex
, Css.flexGrow (Css.int 1)
, Css.padding Css.zero
]
stylesTabSelectable : Bool -> List Style
stylesTabSelectable isSelected =
let
stylesDynamic =
if isSelected then
[ Css.backgroundColor Colors.white
, Css.borderBottom (Css.px 1)
, Css.borderBottomStyle Css.solid
, Css.borderBottomColor Colors.white
]
else
[ Css.backgroundColor Colors.frost
, Css.backgroundImage <|
Css.linearGradient2 Css.toTop
(Css.stop2 (Nri.Ui.Colors.Extra.withAlpha 0.25 Colors.azure) (Css.pct 0))
(Css.stop2 (Nri.Ui.Colors.Extra.withAlpha 0 Colors.azure) (Css.pct 25))
[ Css.stop2 (Nri.Ui.Colors.Extra.withAlpha 0 Colors.azure) (Css.pct 100) ]
]
in
stylesTab ++ stylesDynamic
stylesTab : List Style
stylesTab =
[ Css.display Css.inlineBlock
, Css.borderTopLeftRadius (Css.px 10)
, Css.borderTopRightRadius (Css.px 10)
, Css.border3 (Css.px 1) Css.solid Colors.navy
, Css.marginBottom (Css.px -1)
, Css.marginLeft (Css.px 10)
, Css.cursor Css.pointer
, Css.firstChild
[ Css.marginLeft Css.zero
]
, property "transition" "background-color 0.2s"
, hover
[ backgroundColor Colors.white
]
]

View File

@ -10,7 +10,7 @@ import Category exposing (Category(..))
import Css exposing (..)
import Example exposing (Example)
import Html.Styled as Html
import Nri.Ui.Button.V5 as Button
import Nri.Ui.Button.V10 as Button
import Nri.Ui.Colors.V1 as Colors
import Nri.Ui.Heading.V2 as Heading
import Nri.Ui.Table.V5 as Table
@ -68,18 +68,7 @@ example =
{ header =
Html.text "Actions"
, width = px 250
, view =
\_ ->
Button.button
{ size = Button.Small
, style = Button.Primary
, onClick = ()
, width = Button.WidthUnbounded
}
{ label = "Action"
, state = Button.Enabled
, icon = Nothing
}
, view = \_ -> Button.button "Action" [ Button.small, Button.onClick () ]
, cellStyles = always []
}
]

View File

@ -1,36 +0,0 @@
module Spec.Nri.Ui.Tabs.V4 exposing (all)
import Accessibility.Styled as Html
import Expect
import List.Zipper.Extra
import Nri.Ui.Tabs.V4 as Tabs
import ProgramTest
import Test exposing (..)
all : Test
all =
describe "Nri.Ui.Tabs.V4"
[ test "works with ProgramTest.clickButton" <|
\() ->
ProgramTest.createSandbox
{ init = Err "No msg"
, update = \newResult _ -> newResult
, view =
\_ ->
Tabs.view
{ title = Nothing
, onSelect = Ok
, tabs =
List.Zipper.Extra.from []
(Tabs.Tab "First tab" "ID_FIRST")
[ Tabs.Tab "Second tab" "ID_SECOND" ]
, content = \_ -> Html.text ""
, alignment = Tabs.Center
}
|> Html.toUnstyled
}
|> ProgramTest.start ()
|> ProgramTest.clickButton "Second tab"
|> ProgramTest.expectModel (Expect.equal (Ok "ID_SECOND"))
]

View File

@ -4,19 +4,15 @@
"Nri.Ui",
"Nri.Ui.Accordion.V1",
"Nri.Ui.AssetPath",
"Nri.Ui.AssignmentIcon.V1",
"Nri.Ui.AssignmentIcon.V2",
"Nri.Ui.Button.V10",
"Nri.Ui.Button.V5",
"Nri.Ui.Button.V8",
"Nri.Ui.Callout.V1",
"Nri.Ui.Checkbox.V3",
"Nri.Ui.Checkbox.V5",
"Nri.Ui.ClickableSvg.V1",
"Nri.Ui.ClickableText.V3",
"Nri.Ui.Colors.Extra",
"Nri.Ui.Colors.V1",
"Nri.Ui.Confetti.V1",
"Nri.Ui.Confetti.V2",
"Nri.Ui.CssVendorPrefix.V1",
"Nri.Ui.DisclosureIndicator.V2",
@ -55,8 +51,6 @@
"Nri.Ui.Svg.V1",
"Nri.Ui.Table.V4",
"Nri.Ui.Table.V5",
"Nri.Ui.Tabs.V3",
"Nri.Ui.Tabs.V4",
"Nri.Ui.Tabs.V5",
"Nri.Ui.Text.V2",
"Nri.Ui.Text.V4",