     [:div.modal-bottom-050c3
       [:span.bottom-link-7d8d7 {:on-click close-add-project-modal}
         "cancel"]]])
-
-;; if dir is "C:\" on Windows, we don't need the extra path separator
-(defn- print-dir [dir]
-  (str dir
-       (when (not= (last dir) path-separator)
-          path-separator)))
 
 (sablono/defhtml new-project-form [app-state]
   [:div.modal-body-fe4db

      [:span.bottom-link-7d8d7 {:on-click click-go-back-btn}
        "go back"]]])

(sablono/defhtml new-project-step-3 [app-state]
  [:div.modal-body-fe4db
    [:div.modal-chunk-2041a.creating-6d31a
      [:i.fa.fa-gear.fa-spin.icon-e70fb]
      "Creating project " [:strong (:new-project-name app-state)]]])

;; TODO: implement this, GitHub Issue #46
; (sablono/defhtml new-project-step-4 []

                                     :prj-key prj-key))))
            (:builds-order prj))]])))

(quiescent/defcomponent NewProjectForm [modal-state]
  (quiescent/on-mount
    (new-project-form modal-state)
    on-mount-new-project-form))

(quiescent/defcomponent AddProjectModal [modal-state]
  (let [current-step (:new-project-step modal-state)]
    (case current-step
      1 (new-or-existing-project)
      2 (NewProjectForm modal-state)
      3 (creating-new-project modal-state)
      nil)))

(quiescent/defcomponent SettingsModal [app-state]
  (sablono/html
    [:div.modal-body-fe4db "Settings menu!"]))

(def new-project-modal-keys
  "These are all the keys we need in order to build the Add Project modal."
  #{:new-project-dir
    :new-project-error
    :new-project-name
    :new-project-step })

(quiescent/defcomponent AppRoot [app-state]
  (sablono/html
    [:div
      (when (:add-project-modal-showing? app-state)
        (list (modal-overlay click-add-project-modal-overlay)
              (AddProjectModal (select-keys app-state new-project-modal-keys))))
      (when (:settings-modal-showing? app-state)
        (list (modal-overlay click-settings-modal-overlay)
              (SettingsModal app-state)))
