Add specific font for persian and arabic locales

And remove deprecated and not used font files, simplifying
the font-face mixin.
This commit is contained in:
Andrey Antukh 2022-07-14 09:28:44 +02:00 committed by Alonso Torres
parent 2e2b05a7a4
commit 54d9b02b4d
91 changed files with 90 additions and 433746 deletions

View file

@ -387,6 +387,11 @@
(.setProperty (.-style ^js node) property value))
node)
(defn unset-css-property! [^js node property]
(when (some? node)
(.removeProperty (.-style ^js node) property))
node)
(defn capture-pointer [^js event]
(when (some? event)
(-> event get-target (.setPointerCapture (.-pointerId event)))))
@ -395,6 +400,9 @@
(when (and (some? event) (.-pointerId event))
(-> event get-target (.releasePointerCapture (.-pointerId event)))))
(defn get-body []
(.-body globals/document))
(defn get-root []
(query globals/document "#app"))

View file

@ -7,7 +7,9 @@
(ns app.util.i18n
"A i18n foundation."
(:require
[app.common.logging :as log]
[app.config :as cfg]
[app.util.dom :as dom]
[app.util.globals :as globals]
[app.util.object :as obj]
[app.util.storage :refer [storage]]
@ -16,6 +18,8 @@
[okulary.core :as l]
[rumext.alpha :as mf]))
(log/set-level! :info)
(def supported-locales
[{:label "English" :value "en"}
{:label "Español" :value "es"}
@ -83,11 +87,12 @@
locale
(recur (rest locales)))
cfg/default-language))]
(swap! storage assoc ::locale lname)
(reset! locale lname))
(do
(let [locale (autodetect)]
(swap! storage dissoc ::locale)
(reset! locale (autodetect)))))
(reset! locale locale))))
(defn reset-locale
"Set the current locale to the browser detected one if it is
@ -96,6 +101,15 @@
(swap! storage dissoc ::locale)
(reset! locale (autodetect)))
(add-watch locale ::browser-font
(fn [_ _ _ locale]
(log/info :hint "locale changed" :locale locale)
(let [node (dom/get-body)]
(if (or (= locale "fa")
(= locale "ar"))
(dom/set-css-property! node "--font-family" "'vazirmatn', 'worksans', sans-serif")
(dom/unset-css-property! node "--font-family")))))
(deftype C [val]
IDeref
(-deref [_] val))

View file

@ -13,6 +13,7 @@
["date-fns/locale/el" :default dateFnsLocalesEl]
["date-fns/locale/en-US" :default dateFnsLocalesEnUs]
["date-fns/locale/es" :default dateFnsLocalesEs]
["date-fns/locale/fa-IR" :default dateFnsLocalesFa]
["date-fns/locale/fr" :default dateFnsLocalesFr]
["date-fns/locale/he" :default dateFnsLocalesHe]
["date-fns/locale/pt-BR" :default dateFnsLocalesPtBr]
@ -218,6 +219,7 @@
:ru dateFnsLocalesRu
:ro dateFnsLocalesRo
:de dateFnsLocalesDe
:fa dateFnsLocalesFa
:pt_br dateFnsLocalesPtBr
:zh_cn dateFnsLocalesZhCn})