Size: a a a

Clojure — русскоговорящее сообщество

2021 August 24

IS

Ilshat Sultanov in Clojure — русскоговорящее сообщество
там есть инструкция как сгенерировать локально через докер контейнер
источник

IS

Ilshat Sultanov in Clojure — русскоговорящее сообщество
как превью
источник

LL

Lämppi Lütti in Clojure — русскоговорящее сообщество
Ну это про то как поднять хостинг локально
источник

Г

Григорий in Clojure — русскоговорящее сообщество
к чему относятся файлы npm.cljs.edn и dev.cljs.edn в clojurescript-проекте?
к shadow-cljs?
источник

Г

Григорий in Clojure — русскоговорящее сообщество
К figwheel'у.
источник

MB

Mike Bohdan in Clojure — русскоговорящее сообщество
А Sphinx не умеет в кложу?

Я нашёл только такую, если поможет
https://github.com/SnootyMonkey/lein-sphinx
источник

SP

Stas P in Clojure — русскоговорящее сообщество
а можно в одну строчку и с одним update-in сделать один ассок и один диссок ?
источник

PP

Pavel Peganov in Clojure — русскоговорящее сообщество
Почему ж нет, можно. Скажем, скормить update-in композицию типа:
#(-> % (assoc :k1 v1) (dissoc :k2 v2))
источник

SP

Stas P in Clojure — русскоговорящее сообщество
ключ находится по пути [:a :b :c]
источник

PP

Pavel Peganov in Clojure — русскоговорящее сообщество
Ключ чего? Мапы, на которой делаются ассок и диссок? Ассока? Диссока?
источник

SP

Stas P in Clojure — русскоговорящее сообщество
вот так сделал. совсем дерьмово:
источник

SP

Stas P in Clojure — русскоговорящее сообщество
(defn- maybe-set-unknown-email-endpoint [payload]
 (let [endpoint-path [:data :accountingCustomerParty :endpoint]
       send-to-path [:processingPreference :sendTo]]
   (if (= scheme-email (get-in payload (conj endpoint-path :schemeId)))
     (-> payload
         (assoc-in (conj endpoint-path :id) fallback-customer-identifier)
         (assoc-in (conj send-to-path :id) fallback-customer-identifier))
         (update-in endpoint-path dissoc :schemeId)
         (update-in send-to-path dissoc :schemeId))
     payload)))
источник

SP

Stas P in Clojure — русскоговорящее сообщество
два ключа обновил два других ключа в той же под-мапе удалил
источник

PP

Pavel Peganov in Clojure — русскоговорящее сообщество
Ну, получается парочка
  (update-in endpoint-path
   #(-> % (assoc :id fallback-customer-identifier) (dissoc :schemeId)))
источник

SP

Stas P in Clojure — русскоговорящее сообщество
я не уверен что можно лучше
источник

PP

Pavel Peganov in Clojure — русскоговорящее сообщество
...и я не могу сказать, что мой вариант намного лучше. В одну строчку, во всяком случае.
А вот если выровнять формы с assoc и dissoc в столбик, получается неплохо: видно, какие действия выполнены под endpoint-path, а какие под send-to-path. Структура обновлений повторяет структуру кода.
источник

SP

Stas P in Clojure — русскоговорящее сообщество
круто. вот так сделал
источник

SP

Stas P in Clojure — русскоговорящее сообщество
(def set-email-unknown
 #(-> % (assoc :id fallback-customer-identifier) (dissoc :schemeId)))

(defn- maybe-set-unknown-email-endpoint [payload]
 (let [endpoint-path [:data :accountingCustomerParty :endpoint]
       send-to-path [:processingPreference :sendTo]]
   (if (= scheme-email (get-in payload (conj endpoint-path :schemeId)))
     (-> payload
         (update-in endpoint-path set-email-unknown)
         (update-in send-to-path set-email-unknown))
     payload)))
источник

AB

Alex Bubnov in Clojure — русскоговорящее сообщество
set-email-unknown можно сделать локальным в let
источник

SP

Stas P in Clojure — русскоговорящее сообщество
ну вот говорят что в трединге леты лишнее
источник