UNPKG

@leosprograms/vf-graphql-holochain

Version:

GraphQL schema bindings for the Holochain implementation of ValueFlows

32 lines 4.88 kB
/** * Agreement CRUD operations * * @package: hREA * @since: 2020-06-19 */ import { mapZomeFn } from '../connection.js'; export default (dnaConfig, conductorUri) => { const runCreate = mapZomeFn(dnaConfig, conductorUri, 'combined', 'agreement', 'create_agreement'); const runUpdate = mapZomeFn(dnaConfig, conductorUri, 'combined', 'agreement', 'update_agreement'); const runDelete = mapZomeFn(dnaConfig, conductorUri, 'combined', 'agreement', 'delete_agreement'); const createAgreement = async (root, args) => { // :SHONK: Inject current time as `created` if not present. // Not to spec, but needed for entropy to avoid hash collisions (for now). if (!args.agreement.created) { args.agreement.created = new Date(); } return runCreate(args); }; const updateAgreement = async (root, args) => { return runUpdate(args); }; const deleteAgreement = async (root, args) => { return runDelete(args); }; return { createAgreement, updateAgreement, deleteAgreement, }; }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdyZWVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vbXV0YXRpb25zL2FncmVlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7R0FLRztBQUdILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQW1CNUMsZUFBZSxDQUFDLFNBQXdCLEVBQUUsWUFBb0IsRUFBRSxFQUFFO0lBQ2hFLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBZ0MsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixDQUFDLENBQUE7SUFDaEksTUFBTSxTQUFTLEdBQUcsU0FBUyxDQUFnQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsa0JBQWtCLENBQUMsQ0FBQTtJQUNoSSxNQUFNLFNBQVMsR0FBRyxTQUFTLENBQXNCLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxrQkFBa0IsQ0FBQyxDQUFBO0lBRXRILE1BQU0sZUFBZSxHQUFrQixLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFO1FBQzFELDJEQUEyRDtRQUMzRCxrRkFBa0Y7UUFDbEYsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFO1lBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUE7U0FDcEM7UUFDRCxPQUFPLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUN4QixDQUFDLENBQUE7SUFFRCxNQUFNLGVBQWUsR0FBa0IsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRTtRQUMxRCxPQUFPLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUN4QixDQUFDLENBQUE7SUFFRCxNQUFNLGVBQWUsR0FBa0IsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRTtRQUMxRCxPQUFPLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUN4QixDQUFDLENBQUE7SUFFRCxPQUFPO1FBQ0wsZUFBZTtRQUNmLGVBQWU7UUFDZixlQUFlO0tBQ2hCLENBQUE7QUFDSCxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEFncmVlbWVudCBDUlVEIG9wZXJhdGlvbnNcbiAqXG4gKiBAcGFja2FnZTogaFJFQVxuICogQHNpbmNlOiAgIDIwMjAtMDYtMTlcbiAqL1xuXG5pbXBvcnQgeyBCeVJldmlzaW9uLCBETkFJZE1hcHBpbmdzIH0gZnJvbSAnLi4vdHlwZXMuanMnXG5pbXBvcnQgeyBtYXBab21lRm4gfSBmcm9tICcuLi9jb25uZWN0aW9uLmpzJ1xuaW1wb3J0IHsgZGVsZXRlSGFuZGxlciB9IGZyb20gJy4vJ1xuXG5pbXBvcnQge1xuICBBZ3JlZW1lbnRDcmVhdGVQYXJhbXMsXG4gIEFncmVlbWVudFVwZGF0ZVBhcmFtcyxcbiAgQWdyZWVtZW50UmVzcG9uc2UsXG59IGZyb20gJ0BsZW9zcHJvZ3JhbXMvdmYtZ3JhcGhxbCdcblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVBcmdzIHtcbiAgYWdyZWVtZW50OiBBZ3JlZW1lbnRDcmVhdGVQYXJhbXMsXG59XG5leHBvcnQgdHlwZSBjcmVhdGVIYW5kbGVyID0gKHJvb3Q6IGFueSwgYXJnczogQ3JlYXRlQXJncykgPT4gUHJvbWlzZTxBZ3JlZW1lbnRSZXNwb25zZT5cblxuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVBcmdzIHtcbiAgYWdyZWVtZW50OiBBZ3JlZW1lbnRVcGRhdGVQYXJhbXMsXG59XG5leHBvcnQgdHlwZSB1cGRhdGVIYW5kbGVyID0gKHJvb3Q6IGFueSwgYXJnczogVXBkYXRlQXJncykgPT4gUHJvbWlzZTxBZ3JlZW1lbnRSZXNwb25zZT5cblxuZXhwb3J0IGRlZmF1bHQgKGRuYUNvbmZpZzogRE5BSWRNYXBwaW5ncywgY29uZHVjdG9yVXJpOiBzdHJpbmcpID0+IHtcbiAgY29uc3QgcnVuQ3JlYXRlID0gbWFwWm9tZUZuPENyZWF0ZUFyZ3MsIEFncmVlbWVudFJlc3BvbnNlPihkbmFDb25maWcsIGNvbmR1Y3RvclVyaSwgJ2NvbWJpbmVkJywgJ2FncmVlbWVudCcsICdjcmVhdGVfYWdyZWVtZW50JylcbiAgY29uc3QgcnVuVXBkYXRlID0gbWFwWm9tZUZuPFVwZGF0ZUFyZ3MsIEFncmVlbWVudFJlc3BvbnNlPihkbmFDb25maWcsIGNvbmR1Y3RvclVyaSwgJ2NvbWJpbmVkJywgJ2FncmVlbWVudCcsICd1cGRhdGVfYWdyZWVtZW50JylcbiAgY29uc3QgcnVuRGVsZXRlID0gbWFwWm9tZUZuPEJ5UmV2aXNpb24sIGJvb2xlYW4+KGRuYUNvbmZpZywgY29uZHVjdG9yVXJpLCAnY29tYmluZWQnLCAnYWdyZWVtZW50JywgJ2RlbGV0ZV9hZ3JlZW1lbnQnKVxuXG4gIGNvbnN0IGNyZWF0ZUFncmVlbWVudDogY3JlYXRlSGFuZGxlciA9IGFzeW5jIChyb290LCBhcmdzKSA9PiB7XG4gICAgLy8gOlNIT05LOiBJbmplY3QgY3VycmVudCB0aW1lIGFzIGBjcmVhdGVkYCBpZiBub3QgcHJlc2VudC5cbiAgICAvLyAgICAgICAgIE5vdCB0byBzcGVjLCBidXQgbmVlZGVkIGZvciBlbnRyb3B5IHRvIGF2b2lkIGhhc2ggY29sbGlzaW9ucyAoZm9yIG5vdykuXG4gICAgaWYgKCFhcmdzLmFncmVlbWVudC5jcmVhdGVkKSB7XG4gICAgICBhcmdzLmFncmVlbWVudC5jcmVhdGVkID0gbmV3IERhdGUoKVxuICAgIH1cbiAgICByZXR1cm4gcnVuQ3JlYXRlKGFyZ3MpXG4gIH1cblxuICBjb25zdCB1cGRhdGVBZ3JlZW1lbnQ6IHVwZGF0ZUhhbmRsZXIgPSBhc3luYyAocm9vdCwgYXJncykgPT4ge1xuICAgIHJldHVybiBydW5VcGRhdGUoYXJncylcbiAgfVxuXG4gIGNvbnN0IGRlbGV0ZUFncmVlbWVudDogZGVsZXRlSGFuZGxlciA9IGFzeW5jIChyb290LCBhcmdzKSA9PiB7XG4gICAgcmV0dXJuIHJ1bkRlbGV0ZShhcmdzKVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBjcmVhdGVBZ3JlZW1lbnQsXG4gICAgdXBkYXRlQWdyZWVtZW50LFxuICAgIGRlbGV0ZUFncmVlbWVudCxcbiAgfVxufVxuIl19