summaryrefslogtreecommitdiff
path: root/src/dompa
diff options
context:
space:
mode:
Diffstat (limited to 'src/dompa')
-rw-r--r--src/dompa/coordinates.cljc15
1 files changed, 6 insertions, 9 deletions
diff --git a/src/dompa/coordinates.cljc b/src/dompa/coordinates.cljc
index 4f9a436..2d7e29d 100644
--- a/src/dompa/coordinates.cljc
+++ b/src/dompa/coordinates.cljc
@@ -257,15 +257,12 @@
(defn- construct-node
[node-html node-children]
- (let [node-name (html-str->node-name node-html)]
- (merge
- {:node/name node-name}
- (when (= node-name :dompa/text)
- {:node/value node-html})
- (when-let [attrs (html-str->node-attrs node-html)]
- {:node/attrs attrs})
- (when node-children
- {:node/children node-children}))))
+ (let [node-name (html-str->node-name node-html)
+ node-attrs (html-str->node-attrs node-html)]
+ (cond-> {:node/name node-name}
+ (= node-name :dompa/text) (assoc :node/value node-html)
+ (not (nil? node-attrs)) (assoc :node/attrs node-attrs)
+ (not (nil? node-children)) (assoc :node/children node-children))))
(defn ->nodes
"Transform given `html` according to given `coordinates` into