@valueflows/vf-graphql-holochain
Version:
GraphQL schema bindings for the Holochain implementation of ValueFlows
23 lines • 3.93 kB
JavaScript
/**
* Resolvers for Proposal fields
*
* @package: HoloREA
* @since: 2019-08-27
*/
import { DEFAULT_VF_MODULES, VfModule } from '../types.js';
import { mapZomeFn } from '../connection.js';
export default (enabledVFModules = DEFAULT_VF_MODULES, dnaConfig, conductorUri) => {
const hasIntent = -1 !== enabledVFModules.indexOf(VfModule.Intent);
const readProposal = mapZomeFn(dnaConfig, conductorUri, 'proposal', 'proposal', 'get_proposal');
const readIntent = mapZomeFn(dnaConfig, conductorUri, 'planning', 'intent', 'get_intent');
return Object.assign({
publishedIn: async (record) => {
return (await readProposal({ address: record.publishedIn })).proposal;
},
}, (hasIntent ? {
publishes: async (record) => {
return (await readIntent({ address: record.publishes })).intent;
},
} : {}));
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcG9zZWRJbnRlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9yZXNvbHZlcnMvcHJvcG9zZWRJbnRlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFFSCxPQUFPLEVBQWlCLGtCQUFrQixFQUFFLFFBQVEsRUFBOEMsTUFBTSxhQUFhLENBQUE7QUFDckgsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBVTVDLGVBQWUsQ0FBQyxtQkFBK0Isa0JBQWtCLEVBQUUsU0FBd0IsRUFBRSxZQUFvQixFQUFFLEVBQUU7SUFDbkgsTUFBTSxTQUFTLEdBQUcsQ0FBQyxDQUFDLEtBQUssZ0JBQWdCLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUVsRSxNQUFNLFlBQVksR0FBRyxTQUFTLENBQStCLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxjQUFjLENBQUMsQ0FBQTtJQUM3SCxNQUFNLFVBQVUsR0FBRyxTQUFTLENBQTZCLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxZQUFZLENBQUMsQ0FBQTtJQUVySCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQ2xCO1FBQ0UsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUF3QyxFQUFxQixFQUFFO1lBQ2pGLE9BQU8sQ0FBQyxNQUFNLFlBQVksQ0FBQyxFQUFDLE9BQU8sRUFBQyxNQUFNLENBQUMsV0FBVyxFQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQTtRQUNwRSxDQUFDO0tBQ0YsRUFDRCxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFDWCxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQW9DLEVBQW1CLEVBQUU7WUFDekUsT0FBTyxDQUFDLE1BQU0sVUFBVSxDQUFDLEVBQUMsT0FBTyxFQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFBO1FBQzlELENBQUM7S0FDRixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FDUixDQUFBO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBSZXNvbHZlcnMgZm9yIFByb3Bvc2FsIGZpZWxkc1xuICpcbiAqIEBwYWNrYWdlOiBIb2xvUkVBXG4gKiBAc2luY2U6ICAgMjAxOS0wOC0yN1xuICovXG5cbmltcG9ydCB7IEROQUlkTWFwcGluZ3MsIERFRkFVTFRfVkZfTU9EVUxFUywgVmZNb2R1bGUsIFJlYWRQYXJhbXMsIFByb3Bvc2FsQWRkcmVzcywgSW50ZW50QWRkcmVzcyB9IGZyb20gJy4uL3R5cGVzLmpzJ1xuaW1wb3J0IHsgbWFwWm9tZUZuIH0gZnJvbSAnLi4vY29ubmVjdGlvbi5qcydcblxuaW1wb3J0IHtcbiAgUHJvcG9zYWwsXG4gIEludGVudCxcbiAgUHJvcG9zZWRJbnRlbnQsXG4gIFByb3Bvc2FsUmVzcG9uc2UsXG4gIEludGVudFJlc3BvbnNlLFxufSBmcm9tICdAdmFsdWVmbG93cy92Zi1ncmFwaHFsJ1xuXG5leHBvcnQgZGVmYXVsdCAoZW5hYmxlZFZGTW9kdWxlczogVmZNb2R1bGVbXSA9IERFRkFVTFRfVkZfTU9EVUxFUywgZG5hQ29uZmlnOiBETkFJZE1hcHBpbmdzLCBjb25kdWN0b3JVcmk6IHN0cmluZykgPT4ge1xuICBjb25zdCBoYXNJbnRlbnQgPSAtMSAhPT0gZW5hYmxlZFZGTW9kdWxlcy5pbmRleE9mKFZmTW9kdWxlLkludGVudClcblxuICBjb25zdCByZWFkUHJvcG9zYWwgPSBtYXBab21lRm48UmVhZFBhcmFtcywgUHJvcG9zYWxSZXNwb25zZT4oZG5hQ29uZmlnLCBjb25kdWN0b3JVcmksICdwcm9wb3NhbCcsICdwcm9wb3NhbCcsICdnZXRfcHJvcG9zYWwnKVxuICBjb25zdCByZWFkSW50ZW50ID0gbWFwWm9tZUZuPFJlYWRQYXJhbXMsIEludGVudFJlc3BvbnNlPihkbmFDb25maWcsIGNvbmR1Y3RvclVyaSwgJ3BsYW5uaW5nJywgJ2ludGVudCcsICdnZXRfaW50ZW50JylcblxuICByZXR1cm4gT2JqZWN0LmFzc2lnbihcbiAgICB7XG4gICAgICBwdWJsaXNoZWRJbjogYXN5bmMgKHJlY29yZDogeyBwdWJsaXNoZWRJbjogUHJvcG9zYWxBZGRyZXNzIH0pOiBQcm9taXNlPFByb3Bvc2FsPiA9PiB7XG4gICAgICAgIHJldHVybiAoYXdhaXQgcmVhZFByb3Bvc2FsKHthZGRyZXNzOnJlY29yZC5wdWJsaXNoZWRJbn0pKS5wcm9wb3NhbFxuICAgICAgfSxcbiAgICB9LFxuICAgIChoYXNJbnRlbnQgPyB7XG4gICAgICBwdWJsaXNoZXM6IGFzeW5jIChyZWNvcmQ6IHsgcHVibGlzaGVzOiBJbnRlbnRBZGRyZXNzIH0pOiBQcm9taXNlPEludGVudD4gPT4ge1xuICAgICAgICByZXR1cm4gKGF3YWl0IHJlYWRJbnRlbnQoe2FkZHJlc3M6cmVjb3JkLnB1Ymxpc2hlc30pKS5pbnRlbnRcbiAgICAgIH0sXG4gICAgfSA6IHt9KSxcbiAgKVxufVxuIl19