Skip to content

Instantly share code, notes, and snippets.

@tzafrirben
Created September 1, 2020 12:12
Show Gist options
  • Save tzafrirben/2bab69cb690c364f5b61f78b8b669c63 to your computer and use it in GitHub Desktop.
Save tzafrirben/2bab69cb690c364f5b61f78b8b669c63 to your computer and use it in GitHub Desktop.
(defn letter-case-request
[handler & [{:as options}]]
(fn [{:keys [body-params query-params] :as request}]
(let [from-letter-case (or (:from options) (:from default-options))
to-letter-case (or (:to options) (:to default-options))]
(handler
(cond-> request
(coll? body-params) (assoc :body-params
(transform-keys-letter-case
(filter-letter-case-keys body-params from-letter-case)
to-letter-case))
(coll? query-params) (assoc :query-params
(transform-keys-letter-case
(filter-letter-case-keys query-params from-letter-case)
to-letter-case)))))))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment