summaryrefslogtreecommitdiff
path: root/src/mf2clj/core.clj
diff options
context:
space:
mode:
Diffstat (limited to 'src/mf2clj/core.clj')
-rw-r--r--src/mf2clj/core.clj9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/mf2clj/core.clj b/src/mf2clj/core.clj
index 8d655b1..fd26203 100644
--- a/src/mf2clj/core.clj
+++ b/src/mf2clj/core.clj
@@ -1,5 +1,7 @@
(ns mf2clj.core
- (:require [clojure.java.io :as io])
+ (:require [clojure.java.io :as io]
+ [clojure.walk :refer [keywordize-keys]]
+ [cheshire.core :as json])
(:import [org.extism.sdk.chicory Manifest ManifestWasm Plugin]
[java.nio.charset StandardCharsets]))
@@ -15,5 +17,8 @@
(defn parse [html-string]
(let [charset StandardCharsets/UTF_8
html-bytes (.getBytes html-string charset)]
- (String. (.call plugin "parse" html-bytes) charset)))
+ (-> (.call plugin "parse" html-bytes)
+ (String. charset)
+ json/parse-string
+ keywordize-keys)))