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

     1  module Build.Models exposing
     2      ( Model
     3      , ShortcutsModel
     4      , StepHeaderType(..)
     5      , toMaybe
     6      )
     7  
     8  import Build.Header.Models exposing (BuildPageType(..), CurrentOutput(..), HistoryItem)
     9  import Build.Output.Models exposing (OutputModel)
    10  import Concourse
    11  import Concourse.BuildStatus as BuildStatus
    12  import Keyboard
    13  import Login.Login as Login
    14  import Routes exposing (Highlight)
    15  import Time
    16  
    17  
    18  
    19  -- Top level build
    20  
    21  
    22  type alias Model =
    23      Login.Model
    24          (Build.Header.Models.Model
    25              (ShortcutsModel
    26                  { shiftDown : Bool
    27                  , highlight : Highlight
    28                  , isScrollToIdInProgress : Bool
    29                  , authorized : Bool
    30                  , output : CurrentOutput
    31                  , prep : Maybe Concourse.BuildPrep
    32                  , page : BuildPageType
    33                  , hasLoadedYet : Bool
    34                  , notFound : Bool
    35                  , reapTime : Maybe Time.Posix
    36                  }
    37              )
    38          )
    39  
    40  
    41  type alias ShortcutsModel r =
    42      { r
    43          | previousKeyPress : Maybe Keyboard.KeyEvent
    44          , autoScroll : Bool
    45          , showHelp : Bool
    46          , id : Int
    47          , history : List HistoryItem
    48          , name : String
    49          , job : Maybe Concourse.JobIdentifier
    50          , status : BuildStatus.BuildStatus
    51          , isTriggerBuildKeyDown : Bool
    52          , duration : Concourse.BuildDuration
    53      }
    54  
    55  
    56  toMaybe : CurrentOutput -> Maybe OutputModel
    57  toMaybe currentOutput =
    58      case currentOutput of
    59          Empty ->
    60              Nothing
    61  
    62          Cancelled ->
    63              Nothing
    64  
    65          Output outputModel ->
    66              Just outputModel
    67  
    68  
    69  type StepHeaderType
    70      = StepHeaderPut
    71      | StepHeaderCheck
    72      | StepHeaderGet
    73      | StepHeaderTask
    74      | StepHeaderSetPipeline
    75      | StepHeaderLoadVar
    76      | StepHeaderAcross