(ns pathom3.demos.wrap-resolver-options
(:require [com.wsscode.pathom3.connect.indexes :as pci]
[com.wsscode.pathom3.connect.operation :as pco]
[com.wsscode.pathom3.interface.eql :as p.eql]
[com.wsscode.pathom3.plugin :as p.plugin]))
(pco/defresolver my-resolver []
{:my/custom-config "something"}
{:ran true})
(p.plugin/defplugin my-plugin
{:com.wsscode.pathom3.connect.runner/wrap-resolve
(fn [resolve]
(fn [env input]
(let [op-name (-> env :com.wsscode.pathom3.connect.planner/node ::pco/op-name)
resolver-config (pci/resolver-config env op-name)]
(println "RESOLVER CUSTOM CONFIG" (:my/custom-config resolver-config))
(resolve env input))))})
(def env
(-> {}
(pci/register my-resolver)
(p.plugin/register my-plugin)))
(comment
(p.eql/process env [:ran]))