github.com/pf-qiu/concourse/v6@v6.7.3-0.20201207032516-1f455d73275f/web/elm/src/SideBar/State.elm (about)

     1  module SideBar.State exposing (SideBarState, decodeSideBarState, encodeSideBarState)
     2  
     3  import Json.Decode
     4  import Json.Decode.Extra exposing (andMap)
     5  import Json.Encode
     6  
     7  
     8  type alias SideBarState =
     9      { isOpen : Bool
    10      , width : Float
    11      }
    12  
    13  
    14  encodeSideBarState : SideBarState -> Json.Encode.Value
    15  encodeSideBarState state =
    16      Json.Encode.object
    17          [ ( "is_open", state.isOpen |> Json.Encode.bool )
    18          , ( "width", state.width |> Json.Encode.float )
    19          ]
    20  
    21  
    22  decodeSideBarState : Json.Decode.Decoder SideBarState
    23  decodeSideBarState =
    24      Json.Decode.succeed SideBarState
    25          |> andMap (Json.Decode.field "is_open" Json.Decode.bool)
    26          |> andMap (Json.Decode.field "width" Json.Decode.float)