balance sheet fast
This commit is contained in:
@@ -319,7 +319,7 @@
|
||||
(when (:coerce? (m/properties schema))
|
||||
(fn [data]
|
||||
(cond
|
||||
(vector? data)
|
||||
(vector? data)
|
||||
data
|
||||
(sequential? data)
|
||||
data
|
||||
@@ -363,20 +363,22 @@
|
||||
(mt2/transformer
|
||||
{:decoders {:map {:compile (fn [x g]
|
||||
(fn [value]
|
||||
(let [specified-keys (set (keys value))]
|
||||
(reduce
|
||||
(fn [value [k params]]
|
||||
(cond (and (:unspecified/fn params)
|
||||
(not (get specified-keys k)))
|
||||
(assoc value k ((:unspecified/fn params)))
|
||||
(and (:unspecified/value params)
|
||||
(not (get specified-keys k)))
|
||||
(assoc value k (:unspecified/value params))
|
||||
:else
|
||||
value
|
||||
))
|
||||
value
|
||||
(m/children x)))))}}}))
|
||||
(if (map? value)
|
||||
(let [ specified-keys (set (keys value))]
|
||||
(reduce
|
||||
(fn [value [k params]]
|
||||
(cond (and (:unspecified/fn params)
|
||||
(not (get specified-keys k)))
|
||||
(assoc value k ((:unspecified/fn params)))
|
||||
(and (:unspecified/value params)
|
||||
(not (get specified-keys k)))
|
||||
(assoc value k (:unspecified/value params))
|
||||
:else
|
||||
value
|
||||
))
|
||||
value
|
||||
(m/children x)))
|
||||
value)))}}}))
|
||||
|
||||
(def main-transformer
|
||||
(mt2/transformer
|
||||
|
||||
Reference in New Issue
Block a user