Merge branch 'feature/#123' into feature/command-suggestions-animation

This commit is contained in:
Roman Volosovskyi 2016-06-27 12:38:31 +03:00
commit 463c824e57
3 changed files with 41 additions and 41 deletions

View File

@ -159,7 +159,6 @@
:right 0 :right 0
:width 24 :width 24
:height 24 :height 24
:borderRadius 50
:alignItems :center}) :alignItems :center})
(def command-request-image (def command-request-image
@ -197,7 +196,7 @@
{:margin-top 5 {:margin-top 5
:width 12 :width 12
:height 13 :height 13
:tintColor :#a9a9a9cc}) :tint-color :#a9a9a9cc})
(def command-text (def command-text
(merge style-message-text (merge style-message-text

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]]