Merge branch 'feature/#123' into feature/command-suggestions-animation
This commit is contained in:
commit
fa90b9efd3
|
@ -84,6 +84,10 @@ public class GethService extends Service {
|
|||
}).start();
|
||||
}
|
||||
|
||||
public void signalEvent(String jsonEvent) {
|
||||
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public IBinder onBind(Intent intent) {
|
||||
|
|
|
@ -48,6 +48,7 @@
|
|||
(.addOrientationListener
|
||||
orientation
|
||||
#(dispatch [:set :orientation (orientation->keyword %)]))
|
||||
(.lockToPortrait orientation)
|
||||
(.addListener device-event-emitter
|
||||
"keyboardDidShow"
|
||||
(fn [e]
|
||||
|
|
|
@ -27,13 +27,12 @@
|
|||
(assoc db :show-actions show-actions)))
|
||||
|
||||
(register-handler :load-more-messages
|
||||
(fn [db _]
|
||||
db
|
||||
;; TODO implement
|
||||
#_(let [chat-id (get-in db [:chat :current-chat-id])
|
||||
messages [:chats chat-id :messages]
|
||||
new-messages (gen-messages 10)]
|
||||
(update-in db messages concat new-messages))))
|
||||
debug
|
||||
(fn [{:keys [current-chat-id] :as db} _]
|
||||
(let [messages-path [:chats current-chat-id :messages]
|
||||
messages (get-in db messages-path)
|
||||
new-messages (messages/get-messages current-chat-id (count messages))]
|
||||
(update-in db messages-path concat new-messages))))
|
||||
|
||||
(defn safe-trim [s]
|
||||
(when (string? s)
|
||||
|
@ -47,10 +46,10 @@
|
|||
|
||||
(defn invoke-suggestions-handler!
|
||||
[{:keys [current-chat-id] :as db} _]
|
||||
(let [commands (get-in db [:chats current-chat-id :commands])
|
||||
{:keys [command content]} (get-in db [:chats current-chat-id :command-input])
|
||||
path [(if (commands command) :commands :responses)
|
||||
(:name command)
|
||||
(let [{:keys [command content]} (get-in db [:chats current-chat-id :command-input])
|
||||
{:keys [name type]} command
|
||||
path [(if (= :command type) :commands :responses)
|
||||
name
|
||||
:params
|
||||
0
|
||||
:suggestions]
|
||||
|
@ -79,11 +78,11 @@
|
|||
(assoc-in db [:chats current-chat-id :input-text] text))
|
||||
|
||||
(defn invoke-command-preview!
|
||||
[{:keys [current-chat-id staged-command] :as db} _]
|
||||
(let [commands (get-in db [:chats current-chat-id :commands])
|
||||
{:keys [command content]} staged-command
|
||||
path [(if (commands command) :commands :responses)
|
||||
(:name command)
|
||||
[{:keys [current-chat-id staged-command]} _]
|
||||
(let [{:keys [command content]} staged-command
|
||||
{:keys [name type]} command
|
||||
path [(if (= :command type) :commands :responses)
|
||||
name
|
||||
:preview]
|
||||
params {:value content}]
|
||||
(j/call current-chat-id
|
||||
|
@ -272,18 +271,18 @@
|
|||
(dissoc new-command :rendered-preview))))
|
||||
|
||||
(defn invoke-commands-handlers!
|
||||
[{:keys [new-commands current-chat-id] :as db}]
|
||||
(let [commands (get-in db [:chats current-chat-id :commands])]
|
||||
(doseq [{:keys [content] :as com} new-commands]
|
||||
(let [{:keys [command content]} content
|
||||
path [(if (commands command) :commands :responses)
|
||||
command
|
||||
:handler]
|
||||
params {:value content}]
|
||||
(j/call current-chat-id
|
||||
path
|
||||
params
|
||||
#(dispatch [:command-handler! com %]))))))
|
||||
[{:keys [new-commands current-chat-id]}]
|
||||
(doseq [{:keys [content] :as com} new-commands]
|
||||
(let [{:keys [command content]} content
|
||||
type (:type command)
|
||||
path [(if (= :command type) :commands :responses)
|
||||
command
|
||||
:handler]
|
||||
params {:value content}]
|
||||
(j/call current-chat-id
|
||||
path
|
||||
params
|
||||
#(dispatch [:command-handler! com %])))))
|
||||
|
||||
(defn handle-commands
|
||||
[{:keys [new-commands]}]
|
||||
|
@ -349,10 +348,8 @@
|
|||
|
||||
(defn load-messages!
|
||||
([db] (load-messages! db nil))
|
||||
([db _]
|
||||
(->> (:current-chat-id db)
|
||||
messages/get-messages
|
||||
(assoc db :messages))))
|
||||
([{:keys [current-chat-id] :as db} _]
|
||||
(assoc db :messages (messages/get-messages current-chat-id))))
|
||||
|
||||
(defn init-chat
|
||||
([db] (init-chat db nil))
|
||||
|
@ -374,7 +371,7 @@
|
|||
(map (fn [{:keys [chat-id] :as chat}]
|
||||
[chat-id chat]))
|
||||
(into {}))
|
||||
ids (set (keys chats))]
|
||||
ids (set (keys chats))]
|
||||
(-> db
|
||||
(assoc :chats chats)
|
||||
(assoc :chats-ids ids)
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
(def ethereum-rpc-url "http://localhost:8545")
|
||||
|
||||
(def server-address "http://rpc0.status.im:20000/")
|
||||
(def server-address "http://api.status.im/")
|
||||
;; (def server-address "http://10.0.3.2:3000/")
|
||||
;; (def server-address "http://localhost:3000/")
|
||||
|
||||
|
@ -15,3 +15,5 @@
|
|||
|
||||
(def response-input-hiding-duration 100)
|
||||
(def response-suggesstion-resize-duration 100)
|
||||
|
||||
(def default-number-of-messages 10)
|
||||
|
|
|
@ -47,6 +47,7 @@
|
|||
#{c/content-type-command c/content-type-command-request}
|
||||
type))
|
||||
|
||||
<<<<<<< HEAD
|
||||
(defn get-messages [chat-id]
|
||||
(->> (-> (r/get-by-field :msgs :chat-id chat-id)
|
||||
(r/sorted :timestamp :desc)
|
||||
|
@ -63,6 +64,21 @@
|
|||
(read-string preview))))
|
||||
(dissoc :preview))
|
||||
message)))))
|
||||
=======
|
||||
(defn get-messages
|
||||
([chat-id] (get-messages chat-id 0))
|
||||
([chat-id from]
|
||||
(->> (-> (r/get-by-field :msgs :chat-id chat-id)
|
||||
(r/sorted :timestamp :desc)
|
||||
(r/page from (+ from c/default-number-of-messages))
|
||||
(r/collection->map))
|
||||
(into '())
|
||||
reverse
|
||||
(map (fn [{:keys [content-type] :as message}]
|
||||
(if (command-type? content-type)
|
||||
(update message :content str-to-map)
|
||||
message))))))
|
||||
>>>>>>> develop
|
||||
|
||||
(defn update-message! [{:keys [msg-id] :as msg}]
|
||||
(log/debug "update-message!" msg)
|
||||
|
|
Loading…
Reference in New Issue