fix exclamation mark for response messages

This commit is contained in:
Roman Volosovskyi 2016-06-27 12:33:46 +03:00
parent 3289053ff8
commit 2894baa0e1
2 changed files with 23 additions and 22 deletions

View File

@ -56,26 +56,22 @@
[view st/track-mark] [view st/track-mark]
[text {:style st/track-duration-text} "03:39"]]]) [text {:style st/track-duration-text} "03:39"]]])
(defn message-content-command [content preview] (defview message-content-command [content preview]
(let [commands-atom (subscribe [:get-commands-and-responses])] [commands [:get-commands-and-responses]]
(fn [content preview] (let [{:keys [command content]} (parse-command-msg-content commands content)
(let [commands @commands-atom {:keys [name icon type]} command]
{:keys [command content]}
(parse-command-msg-content commands content)]
[view st/content-command-view [view st/content-command-view
[view st/command-container [view st/command-container
[view (st/command-view command) [view (st/command-view command)
[text {:style st/command-name} [text {:style st/command-name}
(str "!" (:name command))]]] (str (if (= :command type) "!" "") name)]]]
;; todo doesn't reflect design (when icon
(when-let [icon (:icon command)]
[view st/command-image-view [view st/command-image-view
[image {:source {:uri icon} [image {:source {:uri icon}
:style st/command-image}]]) :style st/command-image}]])
(if preview (if preview
preview preview
[text {:style st/command-text} [text {:style st/command-text} content])]))
content])]))))
(defn set-chat-command [msg-id command] (defn set-chat-command [msg-id command]
(dispatch [:set-response-chat-command msg-id (keyword (:name command))])) (dispatch [:set-response-chat-command msg-id (keyword (:name command))]))

View File

@ -61,11 +61,16 @@
(get-hash-by-file file))] (get-hash-by-file file))]
(assoc db ::valid-hash valid?))) (assoc db ::valid-hash valid?)))
(defn mark-as [as coll]
(->> coll
(map (fn [[k v]] [k (assoc v :type as)]))
(into {})))
(defn add-commands (defn add-commands
[db [id _ {:keys [commands responses]}]] [db [id _ {:keys [commands responses]}]]
(-> db (-> db
(update-in [:chats id :commands] merge commands) (update-in [:chats id :commands] merge (mark-as :command commands))
(update-in [:chats id :responses] merge responses))) (update-in [:chats id :responses] merge (mark-as :response responses))))
(defn save-commands-js! (defn save-commands-js!
[_ [id file]] [_ [id file]]