From d33a5e6df1b3f88d454da8626462145b72de8ebb Mon Sep 17 00:00:00 2001 From: Andrey Antukh Date: Wed, 14 May 2025 17:34:47 +0200 Subject: [PATCH] :sparkles: Backport from develop partial improvements to sm/register! helper --- common/src/app/common/schema.cljc | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/common/src/app/common/schema.cljc b/common/src/app/common/schema.cljc index 28a4ab0f2d..241f484a0c 100644 --- a/common/src/app/common/schema.cljc +++ b/common/src/app/common/schema.cljc @@ -317,11 +317,14 @@ ([params] (cond (map? params) - (let [type (get params :type)] + (let [mdata (meta params) + type (or (get mdata ::id) + (get mdata ::type) + (get params :type))] (assert (qualified-keyword? type) "expected qualified keyword for `type`") (let [s (m/-simple-schema params)] (swap! sr/registry assoc type s) - nil)) + s)) (vector? params) (let [mdata (meta params) @@ -329,11 +332,12 @@ (get mdata ::type))] (assert (qualified-keyword? type) "expected qualified keyword to be on metadata") (swap! sr/registry assoc type params) - nil) + params) (m/into-schema? params) (let [type (m/-type params)] - (swap! sr/registry assoc type params)) + (swap! sr/registry assoc type params) + params) :else (throw (ex-info "Invalid Arguments" {}))))