This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2021-12-07
Channels
- # adventofcode (114)
- # announcements (3)
- # aws (5)
- # babashka (62)
- # beginners (111)
- # calva (4)
- # cider (20)
- # clara (5)
- # clj-kondo (1)
- # cljs-dev (9)
- # clojure (255)
- # clojure-europe (75)
- # clojure-italy (10)
- # clojure-nl (3)
- # clojure-norway (5)
- # clojure-uk (6)
- # clojuredesign-podcast (5)
- # clojurescript (34)
- # community-development (28)
- # conjure (1)
- # cursive (3)
- # data-science (1)
- # datavis (1)
- # datomic (4)
- # figwheel-main (1)
- # fulcro (14)
- # graalvm (1)
- # graphql (8)
- # integrant (4)
- # introduce-yourself (2)
- # jobs (2)
- # juxt (4)
- # kaocha (2)
- # malli (6)
- # membrane-term (53)
- # mount (2)
- # nextjournal (2)
- # off-topic (27)
- # pathom (11)
- # polylith (3)
- # portal (11)
- # reagent (4)
- # reitit (4)
- # remote-jobs (1)
- # reveal (14)
- # shadow-cljs (22)
- # tools-deps (24)
- # vim (6)
- # xtdb (19)
Thanks. The project does not seems to be maintained. 🥲 https://github.com/kakao/duct-lacinia/issues/1
I know that Lacinia pedestal isn't so much code, so perhaps it isn't as hard as you think it is to bridge lacinia <=> duct
One thing I’d like to do is annotate types, fields and values returned by resolvers and in addition to the graphql data
provide an extension in extensions which provides additional metadata mapping fields and some values in the response to additional metadata…
I’m assuming the right way to do this is to use directives (or in some cases just additional metadata on the values a resolver returns (e.g. added via clojure metadata or by wrapping values with records/protocols etc); and then provide an interceptor that builds the extension data by walking the final graphql response; and potentially the compiled schema (looking for directives in the subset of TypeSystemDirectiveLocation
’s I’ll need).
I’m assuming others have done this; does the above sound reasonable and are there any good examples of this kind of thing?
IIRC, lacinia already wraps the values with a record. Maybe you can start from here? https://walmartlabs.github.io/apidocs/lacinia/com.walmartlabs.lacinia.resolve.html#var-with-extensions