From ea2079f36fc796e19c7029cc5c137a3a19b6f0d4 Mon Sep 17 00:00:00 2001 From: Andrey Antukh Date: Fri, 11 Dec 2020 11:37:01 +0100 Subject: [PATCH] :sparkles: Only print version on browser execution context. --- common/app/common/version.cljc | 9 +++++++-- frontend/src/app/config.cljs | 30 +++++++++++++++++++++--------- 2 files changed, 28 insertions(+), 11 deletions(-) diff --git a/common/app/common/version.cljc b/common/app/common/version.cljc index d02fe513e..a2508d685 100644 --- a/common/app/common/version.cljc +++ b/common/app/common/version.cljc @@ -15,13 +15,18 @@ (defn parse [version] - (if (= version "%version%") + (cond + (= version "%version%") {:full "develop" :base "develop" :build 0 :commit nil} + + (string? version) (let [[base build commit] (str/split version #"-" 3)] {:full version :base base :build (d/parse-integer build) - :commit commit}))) + :commit commit}) + + :else nil)) diff --git a/frontend/src/app/config.cljs b/frontend/src/app/config.cljs index 2ea07e322..10ca2a116 100644 --- a/frontend/src/app/config.cljs +++ b/frontend/src/app/config.cljs @@ -48,6 +48,17 @@ (check-macos?) :macos :else :other))) +(defn- parse-target + [global] + (if (some? (obj/get global "document")) + :browser + :webworker)) + +(defn- parse-version + [global] + (-> (obj/get global "appVersion") + (v/parse))) + ;; --- Globar Config Vars (def default-theme "default") @@ -61,26 +72,27 @@ (def worker-uri (obj/get global "appWorkerURI" "/js/worker.js")) (def public-uri (or (obj/get global "appPublicURI") (.-origin ^js js/location))) - (def version (v/parse (obj/get global "appVersion")))) + (def media-uri (str public-uri "/media")) + (def version (delay (parse-version global))) + (def target (delay (parse-target global))) + (def browser (delay (parse-browser))) + (def platform (delay (parse-platform)))) -(def media-uri (str public-uri "/media")) -(def browser (parse-browser)) -(def platform (parse-platform)) - -(js/console.log - (str/format "Welcome to penpot! Version: '%s'" (:full version))) +(when (= :browser @target) + (js/console.log + (str/format "Welcome to penpot! Version: '%s'." (:full @version)))) ;; --- Helper Functions (defn ^boolean check-browser? [candidate] (us/verify ::browser candidate) - (= candidate browser)) + (= candidate @browser)) (defn ^boolean check-platform? [candidate] (us/verify ::platform candidate) - (= candidate platform)) + (= candidate @platform)) (defn resolve-media-path [path]