2016-05-25 01:27:03 +00:00
|
|
|
(ns status-im.i18n
|
|
|
|
(:require
|
2016-05-29 18:14:34 +00:00
|
|
|
[status-im.translations.en :as en]
|
|
|
|
[status-im.utils.utils :as u]))
|
2016-05-25 01:27:03 +00:00
|
|
|
|
2016-10-24 20:46:06 +00:00
|
|
|
(def i18n (js/require "react-native-i18n"))
|
2016-05-27 16:44:06 +00:00
|
|
|
(set! (.-fallbacks i18n) true)
|
|
|
|
(set! (.-defaultSeparator i18n) "/")
|
2016-05-25 01:27:03 +00:00
|
|
|
|
2016-05-27 16:44:06 +00:00
|
|
|
(set! (.-translations i18n) (clj->js {:en en/translations}))
|
2016-05-25 01:27:03 +00:00
|
|
|
|
2016-06-02 12:48:57 +00:00
|
|
|
(defn label
|
|
|
|
([path] (label path {}))
|
|
|
|
([path options]
|
2016-06-10 00:21:48 +00:00
|
|
|
(if (exists? i18n.t)
|
|
|
|
(.t i18n (name path) (clj->js options))
|
|
|
|
(name path))))
|
2016-06-01 11:35:22 +00:00
|
|
|
|
2016-06-01 11:44:04 +00:00
|
|
|
(defn label-pluralize [count path & options]
|
2016-06-01 16:11:51 +00:00
|
|
|
(if (exists? i18n.t)
|
|
|
|
(.p i18n count (name path) (clj->js options))
|
2016-08-24 07:29:40 +00:00
|
|
|
(name path)))
|
|
|
|
|
|
|
|
(defn message-status-label [status]
|
|
|
|
(->> status
|
|
|
|
(name)
|
|
|
|
(str "t/status-")
|
|
|
|
(keyword)
|
2016-10-24 20:46:06 +00:00
|
|
|
(label)))
|