insomnia/app/components/ResponsePaneHeader.elm
Gregory Schier 9e84bc4387 Workspaces, Cookies, and More! (#31)
* Start on workspace dropdown and upgrade fontawesome

* WorkspaceDropdown start and Elm components!

* Lots of CSS shit

* Refactor some db stuff and move filter out of sidebar

* Adjust dropdown css

* Handle duplicate header names, and stuff

* Shitty cookies tab

* fixed cookie table a bit

* Modal refactor

* Starteed cookie modal design

* Better cookie storage and filter cookie modal

* Cookie editor round 1

* Fix kve cursor jumping and form encoding templating

* New cookies now show up in filter

* Checkpoint

* Stuff and fix environments css

* Added manage cookies button to cookie pane

* Fix accidental sidebar item drag on sidebar resize

* Environments modal is looking pretty good now

* Pretty much done environments nad cookies

* Some changes

* Fixed codemirror in modals

* Fixed some things

* Add basic proxy support

* Updated shortcuts

* Code snippet generation

* Some style

* bug fix

* Code export now gets cookies for correct domain
2016-08-15 10:04:36 -07:00

75 lines
1.3 KiB
Elm

port module ResponsePaneHeader exposing (..)
import Html exposing (..)
import Html.Attributes exposing (..)
import Html.App as App
import TimeTag exposing (..)
import SizeTag exposing (..)
import StatusTag exposing (..)
-- APP
main : Program Model
main =
App.programWithFlags
{ init = init
, view = view
, update = update
, subscriptions = subscriptions
}
-- MODEL
type alias Model =
{ statusCode : Int
, statusMessage : String
, statusDescription : String
, elapsedTime : Int
, bytesRead : Int
}
init : Model -> (Model, Cmd Msg)
init flags =
flags ! [ready True]
-- UPDATE
type Msg = NewModel Model
port ready : Bool -> Cmd msg
update : Msg -> Model -> (Model, Cmd Msg)
update msg model =
case msg of
NewModel newModel ->
newModel ! []
-- SUBSCRIPTIONS
port replaceModel : (Model -> msg) -> Sub msg
subscriptions : Model -> Sub Msg
subscriptions model =
replaceModel NewModel
-- VIEW
view : Model -> Html Msg
view model =
div [ ]
[ StatusTag.view
{ code = model.statusCode
, message = model.statusMessage
, description = model.statusDescription
}
, TimeTag.view model.elapsedTime
, SizeTag.view model.bytesRead
]