2016-03-23 16:48:26 +02:00
|
|
|
(ns syng-im.db
|
|
|
|
(:require [schema.core :as s :include-macros true]))
|
|
|
|
|
|
|
|
;; schema of app-db
|
|
|
|
(def schema {:greeting s/Str})
|
|
|
|
|
|
|
|
;; initial state of app-db
|
2016-03-29 23:45:31 +03:00
|
|
|
(def app-db {:greeting "Hello Clojure in iOS and Android!"
|
|
|
|
:identity-password "replace-me-with-user-entered-password"
|
2016-03-30 15:23:37 +03:00
|
|
|
:contacts []
|
|
|
|
:chat {:current-chat-id "0x0479a5ed1f38cadfad1db6cd56c4b659b0ebe052bbe9efa950f6660058519fa4ca6be2dda66afa80de96ab00eb97a2605d5267a1e8f4c2a166ab551f6826608cdd"
|
2016-04-07 14:21:02 +03:00
|
|
|
:command nil}
|
2016-03-29 23:45:31 +03:00
|
|
|
:chats {}
|
2016-04-01 18:05:55 +03:00
|
|
|
:chats-updated-signal 0
|
2016-04-28 01:03:24 +03:00
|
|
|
:name "My Name"
|
2016-04-07 14:21:02 +03:00
|
|
|
:new-group #{}
|
|
|
|
:new-participants #{}})
|
2016-03-23 21:05:42 +02:00
|
|
|
|
|
|
|
|
|
|
|
(def protocol-initialized-path [:protocol-initialized])
|
|
|
|
(def identity-password-path [:identity-password])
|
|
|
|
(def current-chat-id-path [:chat :current-chat-id])
|
2016-03-29 23:45:31 +03:00
|
|
|
(def updated-chats-signal-path [:chats-updated-signal])
|
|
|
|
(defn updated-chat-signal-path [chat-id]
|
|
|
|
[:chats chat-id :chat-updated-signal])
|
2016-04-05 17:00:49 +03:00
|
|
|
(defn chat-input-text-path [chat-id]
|
|
|
|
[:chats chat-id :input-text])
|
|
|
|
(defn chat-command-path [chat-id]
|
|
|
|
[:chats chat-id :command-input :command])
|
|
|
|
(defn chat-command-content-path [chat-id]
|
|
|
|
[:chats chat-id :command-input :content])
|
2016-04-01 18:05:55 +03:00
|
|
|
(def new-group-path [:new-group])
|
2016-04-07 14:21:02 +03:00
|
|
|
(def new-participants-path [:new-participants])
|
2016-04-17 16:49:35 +03:00
|
|
|
(def updated-discoveries-signal-path [:discovery-updated-signal])
|
|
|
|
(defn updated-discovery-signal-path [whisper-id]
|
|
|
|
[:discoveries whisper-id :discovery-updated-signal])
|