UNPKG

@leosprograms/vf-graphql-holochain

Version:

GraphQL schema bindings for the Holochain implementation of ValueFlows

27 lines 3.87 kB
import { getPaginatedCollection, pluralize, formatResItem, } from "../util.js"; import { addEntryToStore, updateLatestRevision, getLatestRevisionId } from "../store.js"; export async function getOne(cell, type, args) { if (!args.id) { return null; } const cachedRevision = getLatestRevisionId(args.id, 10); if (cachedRevision) { return cachedRevision; } // const cached const res = await cell.callZome({ zome_name: "hrea", fn_name: "get_latest_rea_" + type, payload: args.id, }); const formatted = formatResItem(res, args.id); if (formatted?.revisionId) { addEntryToStore(formatted.revisionId, formatted); updateLatestRevision(formatted.id, formatted); } return formatted; } export async function getAll(cell, type, args) { return await getPaginatedCollection(cell, "get_all_" + pluralize(type), "get_latest_rea_" + type, args); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9xdWVyaWVzL2hlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFNBQVMsRUFBRSxhQUFhLEdBQUcsTUFBTSxZQUFZLENBQUM7QUFDL0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxvQkFBb0IsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUV6RixNQUFNLENBQUMsS0FBSyxVQUFVLE1BQU0sQ0FBQyxJQUFTLEVBQUUsSUFBWSxFQUFFLElBQVM7SUFDM0QsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUNYLE9BQU8sSUFBSSxDQUFBO0lBQ2YsQ0FBQztJQUNELE1BQU0sY0FBYyxHQUFHLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFDdkQsSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUNqQixPQUFPLGNBQWMsQ0FBQTtJQUN6QixDQUFDO0lBQ0QsZUFBZTtJQUNmLE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUM1QixTQUFTLEVBQUUsTUFBTTtRQUNqQixPQUFPLEVBQUUsaUJBQWlCLEdBQUcsSUFBSTtRQUNqQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUU7S0FDbkIsQ0FBQyxDQUFBO0lBQ0YsTUFBTSxTQUFTLEdBQUcsYUFBYSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDN0MsSUFBSSxTQUFTLEVBQUUsVUFBVSxFQUFFLENBQUM7UUFDeEIsZUFBZSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUE7UUFDaEQsb0JBQW9CLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFBRSxTQUFTLENBQUMsQ0FBQTtJQUNqRCxDQUFDO0lBQ0QsT0FBTyxTQUFTLENBQUE7QUFDcEIsQ0FBQztBQUVELE1BQU0sQ0FBQyxLQUFLLFVBQVUsTUFBTSxDQUFDLElBQVMsRUFBRSxJQUFZLEVBQUUsSUFBUztJQUMzRCxPQUFPLE1BQU0sc0JBQXNCLENBQy9CLElBQUksRUFDSixVQUFVLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUM1QixpQkFBaUIsR0FBRyxJQUFJLEVBQ3hCLElBQUksQ0FDUCxDQUFBO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldFBhZ2luYXRlZENvbGxlY3Rpb24sIHBsdXJhbGl6ZSwgZm9ybWF0UmVzSXRlbSwgfSBmcm9tIFwiLi4vdXRpbC5qc1wiO1xuaW1wb3J0IHsgYWRkRW50cnlUb1N0b3JlLCB1cGRhdGVMYXRlc3RSZXZpc2lvbiwgZ2V0TGF0ZXN0UmV2aXNpb25JZCB9IGZyb20gXCIuLi9zdG9yZS5qc1wiO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0T25lKGNlbGw6IGFueSwgdHlwZTogc3RyaW5nLCBhcmdzOiBhbnkpIHtcbiAgICBpZiAoIWFyZ3MuaWQpIHtcbiAgICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gICAgY29uc3QgY2FjaGVkUmV2aXNpb24gPSBnZXRMYXRlc3RSZXZpc2lvbklkKGFyZ3MuaWQsIDEwKVxuICAgIGlmIChjYWNoZWRSZXZpc2lvbikge1xuICAgICAgICByZXR1cm4gY2FjaGVkUmV2aXNpb25cbiAgICB9XG4gICAgLy8gY29uc3QgY2FjaGVkXG4gICAgY29uc3QgcmVzID0gYXdhaXQgY2VsbC5jYWxsWm9tZSh7XG4gICAgICAgIHpvbWVfbmFtZTogXCJocmVhXCIsXG4gICAgICAgIGZuX25hbWU6IFwiZ2V0X2xhdGVzdF9yZWFfXCIgKyB0eXBlLFxuICAgICAgICBwYXlsb2FkOiBhcmdzLmlkLFxuICAgIH0pXG4gICAgY29uc3QgZm9ybWF0dGVkID0gZm9ybWF0UmVzSXRlbShyZXMsIGFyZ3MuaWQpXG4gICAgaWYgKGZvcm1hdHRlZD8ucmV2aXNpb25JZCkge1xuICAgICAgICBhZGRFbnRyeVRvU3RvcmUoZm9ybWF0dGVkLnJldmlzaW9uSWQsIGZvcm1hdHRlZClcbiAgICAgICAgdXBkYXRlTGF0ZXN0UmV2aXNpb24oZm9ybWF0dGVkLmlkLCBmb3JtYXR0ZWQpXG4gICAgfVxuICAgIHJldHVybiBmb3JtYXR0ZWRcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEFsbChjZWxsOiBhbnksIHR5cGU6IHN0cmluZywgYXJnczogYW55KSB7XG4gICAgcmV0dXJuIGF3YWl0IGdldFBhZ2luYXRlZENvbGxlY3Rpb24oXG4gICAgICAgIGNlbGwsIFxuICAgICAgICBcImdldF9hbGxfXCIgKyBwbHVyYWxpemUodHlwZSksIFxuICAgICAgICBcImdldF9sYXRlc3RfcmVhX1wiICsgdHlwZSxcbiAgICAgICAgYXJnc1xuICAgIClcbn0iXX0=