   (will-mount
     (store/register-changes
       (fn []
-        (show/assoc! component :todos (store/all-todos))
+        (show/assoc! component :todos        (store/all-todos))
         (show/assoc! component :all-complete (store/all-complete?)))))
 
   (render [props state]

;;
(defn item-wire-tap [component]
  (w/taps (w/wire)
    {:key :toggle-complete :action :click}
      (fn [evt] (store/toggle-complete (:id evt)))
    {:key :destroy :action :click}
      (fn [evt] (store/destroy-todo (:id evt)))
    {:key :label :action :double-click}
      (fn [evt]
        (show/assoc! component :text (show/get-props component :text))
        (show/assoc! component :editing true))
    {:key :edit :action :change}
      (fn [evt] (show/assoc! component :text (:value evt)))
    {:key :edit :action :up :keypress :enter}
      (fn [evt]
        (if (not= (:value evt) "")
          (store/update-todo (:value evt) (:id evt)))

    {:editing false
     :text (or (show/get-props component :text) "")})
  (render [props state]
    (let [wire (w/lay (item-wire-tap component) nil {:id (:id props)})]
      (dom/li {:className (show/class-map {"completed" (:complete props)
                                           "editing"   (:editing state)})}
        (dom/div {:className "view"}
          (wired/input wire {:className "toggle"
                             :type "checkbox"
                             :checked (:complete props)})
          (wired/label wire (:text props))
          (wired/button wire {:className "destroy"}))
        (wired/input wire {:className "edit"
                           :autoFocus true
                           :value (:text state)})))))

;; List
;;
