def pick_fields
import cswap-bend-cli@0.1.0.0/swcreds.bend as Swcredsimport Base
import cswap-bend-cli@0.1.0.0/json.bend as Json
import cswap-bend-cli@0.1.0.0/store/base.bend as SBase
35# The fields of an object chain that are (or are not) shared across accounts.
36def pick_fields(+fields: Json.Json, +shared: Bool) -> Json.Json:
37 match fields:
38 case Json.JField{k, v, t}:
39 keep_field(Bool.not(SBase.sel.b(shared, is_shared_key(k), Bool.not(is_shared_key(k)))), k, v, pick_fields(t, shared))
40 case _:
41 Json.JNil{}