diff --git a/frontend/src/app/util/object.cljc b/frontend/src/app/util/object.cljc index bb5ae6c5a4..090effd710 100644 --- a/frontend/src/app/util/object.cljc +++ b/frontend/src/app/util/object.cljc @@ -464,6 +464,13 @@ (let [o (get o type-symbol)] (= o t)))) +#?(:cljs + (def Proxy + (app.util.object/class + :name "Proxy" + :extends js/Object + :constructor (constantly nil)))) + (defmacro reify "A domain specific variation of reify that creates anonymous objects on demand with the ability to assign protocol implementations and @@ -481,7 +488,7 @@ obj-sym (gensym "obj-")] - `(let [~obj-sym (cljs.core/js-obj) + `(let [~obj-sym (new Proxy) ~f-sym (fn [] ~type-name)] (add-properties! ~obj-sym {:name ~'js/Symbol.toStringTag