2017-09-05 14:14:45 +00:00
|
|
|
(ns status-im.native-module.core
|
2018-07-30 03:47:08 +00:00
|
|
|
(:require [status-im.native-module.impl.module :as native-module]))
|
2017-09-05 14:14:45 +00:00
|
|
|
|
|
|
|
(def adjust-resize 16)
|
|
|
|
|
2018-09-07 09:53:43 +00:00
|
|
|
(defn start-node [config]
|
|
|
|
(native-module/start-node config))
|
2017-08-21 14:49:31 +00:00
|
|
|
|
2018-12-19 12:20:03 +00:00
|
|
|
(def node-started (atom false))
|
|
|
|
|
2018-11-26 15:52:29 +00:00
|
|
|
(defn node-ready []
|
2018-12-19 12:20:03 +00:00
|
|
|
(reset! node-started true)
|
2018-11-26 15:52:29 +00:00
|
|
|
(native-module/node-ready))
|
|
|
|
|
2017-08-21 14:49:31 +00:00
|
|
|
(defn stop-node []
|
2018-12-19 12:20:03 +00:00
|
|
|
(reset! node-started false)
|
2018-07-30 03:47:08 +00:00
|
|
|
(native-module/stop-node))
|
2017-09-05 14:14:45 +00:00
|
|
|
|
|
|
|
(defn create-account [password callback]
|
2018-07-30 03:47:08 +00:00
|
|
|
(native-module/create-account password callback))
|
2017-09-05 14:14:45 +00:00
|
|
|
|
|
|
|
(defn recover-account [passphrase password callback]
|
2018-07-30 03:47:08 +00:00
|
|
|
(native-module/recover-account passphrase password callback))
|
2017-09-05 14:14:45 +00:00
|
|
|
|
|
|
|
(defn login [address password callback]
|
2018-07-30 03:47:08 +00:00
|
|
|
(native-module/login address password callback))
|
2017-09-05 14:14:45 +00:00
|
|
|
|
2018-11-26 15:52:29 +00:00
|
|
|
(defn verify [address password callback]
|
|
|
|
(native-module/verify address password callback))
|
|
|
|
|
2017-09-05 14:14:45 +00:00
|
|
|
(defn set-soft-input-mode [mode]
|
2018-07-30 03:47:08 +00:00
|
|
|
(native-module/set-soft-input-mode mode))
|
2017-09-05 14:14:45 +00:00
|
|
|
|
|
|
|
(defn clear-web-data []
|
2018-07-30 03:47:08 +00:00
|
|
|
(native-module/clear-web-data))
|
2017-09-05 14:14:45 +00:00
|
|
|
|
2018-08-10 17:15:16 +00:00
|
|
|
(defn call-rpc [payload callback]
|
2018-12-19 12:20:03 +00:00
|
|
|
(when @node-started
|
|
|
|
(native-module/call-rpc payload callback)))
|
2017-09-05 14:14:45 +00:00
|
|
|
|
2018-08-10 17:15:16 +00:00
|
|
|
(defn call-private-rpc [payload callback]
|
2018-12-19 12:20:03 +00:00
|
|
|
(when @node-started
|
|
|
|
(native-module/call-private-rpc payload callback)))
|
2018-08-10 17:15:16 +00:00
|
|
|
|
|
|
|
(defn sign-message [rpcParams callback]
|
|
|
|
(native-module/sign-message rpcParams callback))
|
|
|
|
|
|
|
|
(defn send-transaction [rpcParams password callback]
|
|
|
|
(native-module/send-transaction rpcParams password callback))
|
2018-04-18 08:49:15 +00:00
|
|
|
|
2017-09-05 14:14:45 +00:00
|
|
|
(defn module-initialized! []
|
2018-07-30 03:47:08 +00:00
|
|
|
(native-module/module-initialized!))
|
2017-09-05 14:14:45 +00:00
|
|
|
|
2018-07-30 03:47:08 +00:00
|
|
|
(defn notify-users [m callback]
|
|
|
|
(native-module/notify-users m callback))
|
2017-10-05 11:23:25 +00:00
|
|
|
|
2017-12-05 10:18:30 +00:00
|
|
|
(defn add-peer [enode callback]
|
2018-07-30 03:47:08 +00:00
|
|
|
(native-module/add-peer enode callback))
|
2017-12-05 10:18:30 +00:00
|
|
|
|
2017-10-05 11:23:25 +00:00
|
|
|
(defn close-application []
|
2018-07-30 03:47:08 +00:00
|
|
|
(native-module/close-application))
|
2018-02-26 02:27:29 +00:00
|
|
|
|
|
|
|
(defn connection-change [data]
|
2018-07-30 03:47:08 +00:00
|
|
|
(native-module/connection-change data))
|
2018-03-16 12:01:10 +00:00
|
|
|
|
|
|
|
(defn app-state-change [state]
|
2018-07-30 03:47:08 +00:00
|
|
|
(native-module/app-state-change state))
|
2018-05-01 10:27:04 +00:00
|
|
|
|
|
|
|
(defn get-device-UUID [callback]
|
2018-07-30 03:47:08 +00:00
|
|
|
(native-module/get-device-UUID callback))
|
2018-08-03 16:43:37 +00:00
|
|
|
|
|
|
|
(defn is24Hour []
|
|
|
|
(native-module/is24Hour))
|
2018-07-19 15:51:06 +00:00
|
|
|
|
2018-10-01 08:47:20 +00:00
|
|
|
(def extract-group-membership-signatures native-module/extract-group-membership-signatures)
|
2018-07-19 15:51:06 +00:00
|
|
|
|
|
|
|
(def sign-group-membership native-module/sign-group-membership)
|
2018-11-02 13:48:45 +00:00
|
|
|
|
|
|
|
(def enable-installation native-module/enable-installation)
|
|
|
|
|
|
|
|
(def disable-installation native-module/disable-installation)
|
Add mailservers confirmations & use peer count for online status
We now check that we are only connected to some `peers` instead of using `NetInfo` from `react-native`.
This is because it has been reported to be quite flaky at times, not reporting online status after sleeping, and for privacy concerns (on ios it pings `apple.com`, on desktop `google.com`).
Adds a new banner `Wallet Offline` and change `Connecting to peers` to `Chat offline`.
A message will be marked as `Sent` only if it made it to the mailserver you are connected to, which will increase the guarantees that we can make about a message (if you see it as sent, it has reached at least a mailserver), this has the consequence that:
- If you are not connected to any mailserver or the mailserver is non responsive/down, and you send a message, it will be marked as `Not sent`, although it might have been actually made it in the network.
Probably this is something that we would like to communicate to the user through UX (i.e. tick if made it to at least a peer, double tick if it made to a mailserver )
Currently I have only enabled this feature in nightlies & devs, I would give it a run and see how we feel about it.
2018-12-06 10:53:45 +00:00
|
|
|
|
|
|
|
(def update-mailservers native-module/update-mailservers)
|